text: (window["webpackJsonp"] = window["webpackJsonp"] || []).push([["main"],{
  
  /***/ "./node_modules/@ionic/core/dist/esm-es5 lazy recursive ^\\.\\/.*\\.entry\\.js$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$":
  /*!*********************************************************************************************************************************************!*\
    !*** ./node_modules/@ionic/core/dist/esm-es5 lazy ^\.\/.*\.entry\.js$ include: \.entry\.js$ exclude: \.system\.entry\.js$ namespace object ***!
    \*********************************************************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  var map = {
  	"./ion-action-sheet-controller_8.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-controller_8.entry.js",
  		"common",
  		3
  	],
  	"./ion-action-sheet-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-ios.entry.js",
  		"common",
  		4
  	],
  	"./ion-action-sheet-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-action-sheet-md.entry.js",
  		"common",
  		5
  	],
  	"./ion-alert-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-alert-ios.entry.js",
  		"common",
  		6
  	],
  	"./ion-alert-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-alert-md.entry.js",
  		"common",
  		7
  	],
  	"./ion-app_8-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-app_8-ios.entry.js",
  		0,
  		"common",
  		8
  	],
  	"./ion-app_8-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-app_8-md.entry.js",
  		0,
  		"common",
  		9
  	],
  	"./ion-avatar_3-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-avatar_3-ios.entry.js",
  		"common",
  		10
  	],
  	"./ion-avatar_3-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-avatar_3-md.entry.js",
  		"common",
  		11
  	],
  	"./ion-back-button-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-back-button-ios.entry.js",
  		"common",
  		12
  	],
  	"./ion-back-button-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-back-button-md.entry.js",
  		"common",
  		13
  	],
  	"./ion-backdrop-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-backdrop-ios.entry.js",
  		1,
  		"common",
  		14
  	],
  	"./ion-backdrop-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-backdrop-md.entry.js",
  		1,
  		"common",
  		15
  	],
  	"./ion-button_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-button_2-ios.entry.js",
  		"common",
  		16
  	],
  	"./ion-button_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-button_2-md.entry.js",
  		"common",
  		17
  	],
  	"./ion-card_5-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-card_5-ios.entry.js",
  		"common",
  		18
  	],
  	"./ion-card_5-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-card_5-md.entry.js",
  		"common",
  		19
  	],
  	"./ion-checkbox-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-checkbox-ios.entry.js",
  		"common",
  		20
  	],
  	"./ion-checkbox-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-checkbox-md.entry.js",
  		"common",
  		21
  	],
  	"./ion-chip-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-chip-ios.entry.js",
  		"common",
  		22
  	],
  	"./ion-chip-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-chip-md.entry.js",
  		"common",
  		23
  	],
  	"./ion-col_3.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-col_3.entry.js",
  		24
  	],
  	"./ion-datetime_3-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-datetime_3-ios.entry.js",
  		"common",
  		25
  	],
  	"./ion-datetime_3-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-datetime_3-md.entry.js",
  		"common",
  		26
  	],
  	"./ion-fab_3-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-fab_3-ios.entry.js",
  		"common",
  		27
  	],
  	"./ion-fab_3-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-fab_3-md.entry.js",
  		"common",
  		28
  	],
  	"./ion-img.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-img.entry.js",
  		29
  	],
  	"./ion-infinite-scroll_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-infinite-scroll_2-ios.entry.js",
  		"common",
  		30
  	],
  	"./ion-infinite-scroll_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-infinite-scroll_2-md.entry.js",
  		"common",
  		31
  	],
  	"./ion-input-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-input-ios.entry.js",
  		"common",
  		32
  	],
  	"./ion-input-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-input-md.entry.js",
  		"common",
  		33
  	],
  	"./ion-item-option_3-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-item-option_3-ios.entry.js",
  		"common",
  		34
  	],
  	"./ion-item-option_3-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-item-option_3-md.entry.js",
  		"common",
  		35
  	],
  	"./ion-item_8-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-item_8-ios.entry.js",
  		"common",
  		36
  	],
  	"./ion-item_8-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-item_8-md.entry.js",
  		"common",
  		37
  	],
  	"./ion-loading-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-loading-ios.entry.js",
  		"common",
  		38
  	],
  	"./ion-loading-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-loading-md.entry.js",
  		"common",
  		39
  	],
  	"./ion-menu_4-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-menu_4-ios.entry.js",
  		1,
  		"common",
  		40
  	],
  	"./ion-menu_4-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-menu_4-md.entry.js",
  		1,
  		"common",
  		41
  	],
  	"./ion-modal-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-modal-ios.entry.js",
  		0,
  		"common",
  		42
  	],
  	"./ion-modal-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-modal-md.entry.js",
  		0,
  		"common",
  		43
  	],
  	"./ion-nav_4.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-nav_4.entry.js",
  		0,
  		"common",
  		44
  	],
  	"./ion-popover-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-popover-ios.entry.js",
  		0,
  		"common",
  		45
  	],
  	"./ion-popover-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-popover-md.entry.js",
  		0,
  		"common",
  		46
  	],
  	"./ion-progress-bar-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-progress-bar-ios.entry.js",
  		"common",
  		47
  	],
  	"./ion-progress-bar-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-progress-bar-md.entry.js",
  		"common",
  		48
  	],
  	"./ion-radio_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-radio_2-ios.entry.js",
  		"common",
  		49
  	],
  	"./ion-radio_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-radio_2-md.entry.js",
  		"common",
  		50
  	],
  	"./ion-range-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-range-ios.entry.js",
  		"common",
  		51
  	],
  	"./ion-range-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-range-md.entry.js",
  		"common",
  		52
  	],
  	"./ion-refresher_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-refresher_2-ios.entry.js",
  		"common",
  		53
  	],
  	"./ion-refresher_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-refresher_2-md.entry.js",
  		"common",
  		54
  	],
  	"./ion-reorder_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-reorder_2-ios.entry.js",
  		"common",
  		55
  	],
  	"./ion-reorder_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-reorder_2-md.entry.js",
  		"common",
  		56
  	],
  	"./ion-ripple-effect.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-ripple-effect.entry.js",
  		57
  	],
  	"./ion-route_4.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-route_4.entry.js",
  		"common",
  		58
  	],
  	"./ion-searchbar-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-searchbar-ios.entry.js",
  		"common",
  		59
  	],
  	"./ion-searchbar-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-searchbar-md.entry.js",
  		"common",
  		60
  	],
  	"./ion-segment_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-segment_2-ios.entry.js",
  		"common",
  		61
  	],
  	"./ion-segment_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-segment_2-md.entry.js",
  		"common",
  		62
  	],
  	"./ion-select_3-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-select_3-ios.entry.js",
  		"common",
  		63
  	],
  	"./ion-select_3-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-select_3-md.entry.js",
  		"common",
  		64
  	],
  	"./ion-slide_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-slide_2-ios.entry.js",
  		"common",
  		65
  	],
  	"./ion-slide_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-slide_2-md.entry.js",
  		"common",
  		66
  	],
  	"./ion-spinner.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-spinner.entry.js",
  		"common",
  		67
  	],
  	"./ion-split-pane-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-split-pane-ios.entry.js",
  		68
  	],
  	"./ion-split-pane-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-split-pane-md.entry.js",
  		69
  	],
  	"./ion-tab-bar_2-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-tab-bar_2-ios.entry.js",
  		"common",
  		70
  	],
  	"./ion-tab-bar_2-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-tab-bar_2-md.entry.js",
  		"common",
  		71
  	],
  	"./ion-tab_2.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-tab_2.entry.js",
  		2
  	],
  	"./ion-text.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-text.entry.js",
  		"common",
  		72
  	],
  	"./ion-textarea-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-textarea-ios.entry.js",
  		"common",
  		73
  	],
  	"./ion-textarea-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-textarea-md.entry.js",
  		"common",
  		74
  	],
  	"./ion-toast-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-toast-ios.entry.js",
  		"common",
  		75
  	],
  	"./ion-toast-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-toast-md.entry.js",
  		"common",
  		76
  	],
  	"./ion-toggle-ios.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-toggle-ios.entry.js",
  		"common",
  		77
  	],
  	"./ion-toggle-md.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-toggle-md.entry.js",
  		"common",
  		78
  	],
  	"./ion-virtual-scroll.entry.js": [
  		"./node_modules/@ionic/core/dist/esm-es5/ion-virtual-scroll.entry.js",
  		79
  	]
  };
  function webpackAsyncContext(req) {
  	if(!__webpack_require__.o(map, req)) {
  		return Promise.resolve().then(function() {
  			var e = new Error("Cannot find module '" + req + "'");
  			e.code = 'MODULE_NOT_FOUND';
  			throw e;
  		});
  	}
  
  	var ids = map[req], id = ids[0];
  	return Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {
  		return __webpack_require__(id);
  	});
  }
  webpackAsyncContext.keys = function webpackAsyncContextKeys() {
  	return Object.keys(map);
  };
  webpackAsyncContext.id = "./node_modules/@ionic/core/dist/esm-es5 lazy recursive ^\\.\\/.*\\.entry\\.js$ include: \\.entry\\.js$ exclude: \\.system\\.entry\\.js$";
  module.exports = webpackAsyncContext;
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/alerts/form/form.page.html":
  /*!**********************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/alerts/form/form.page.html ***!
    \**********************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-content></ion-content>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/app.component.html":
  /*!**************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/app.component.html ***!
    \**************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-app dir=\"{{ textDir }}\">\n  <ion-split-pane>\n    <ion-menu style=\"border-color: var(--ion-color-theme)\" id=\"menu\" swipeGesture=\"true\" type=\"push\" side=\"start\"\n      class=\"app-sidemenu\">\n      <ion-header no-border>\n        <ion-toolbar>\n          <ion-row (click)=\"onCloseMenu()\" [routerLink]=\"['/']\" style=\"padding: 8px; cursor: pointer;\"\n            class=\"user-details-wrapper\">\n            <!-- <ion-col size=\"2\"> -->\n            <app-aspect-ratio [ratio]=\"{ w: 18, h: 7 }\">\n              <!-- logo size: 300 * 87 -->\n              <app-image-shell style=\"background: transparent; padding: 8px;\" animation=\"spinner\"\n                src=\"../assets/images/home_categories/ionInvoice.svg\">\n              </app-image-shell>\n            </app-aspect-ratio>\n            <!-- </ion-col> -->\n          </ion-row>\n          <!-- <ion-row class=\"user-stats-wrapper user-details-wrapper\">\n            <ion-col>\n              <span class=\"user-stat-value\">1553</span>\n              <span class=\"user-stat-name\">Following</span>\n            </ion-col>\n            <ion-col>\n              <span class=\"user-stat-value\">537</span>\n              <span class=\"user-stat-name\">Followers</span>\n            </ion-col>\n          </ion-row> -->\n        </ion-toolbar>\n      </ion-header>\n\n      <div class=\"scrollbar\" id=\"style-1\">\n        <ion-list class=\"force-overflow\" lines=\"none\">\n          <!-- dashboard -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onDashboardPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/dashboard_icon.svg\">\n            </ion-icon>\n            <ion-label>\n              Dashboard\n            </ion-label>\n            <ion-icon slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- customers -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onContactPage()\">\n            <!-- [routerLink]=\"['/firebase/contacts']\" -->\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/customer_icon.svg\">\n            </ion-icon>\n            <ion-label>\n              Customer\n            </ion-label>\n            <ion-icon slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- items -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onItemPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/items_icon.svg\"></ion-icon>\n            <ion-label>\n              Items\n            </ion-label>\n            <ion-icon slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <br>\n          <br>\n          <!-- estimates -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onEstimatesPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/estimates.svg\">\n            </ion-icon>\n            <ion-label>\n              Estimates\n            </ion-label>\n            <ion-icon class=\"\" slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- invoices -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onInvoicesPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/invoices.svg\">\n            </ion-icon>\n            <ion-label>\n              Invoices\n            </ion-label>\n            <ion-icon class=\"\" slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- Payments Received -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onPaymentsReceivedPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/payments_icon.svg\">\n            </ion-icon>\n            <ion-label>\n              Payments Received\n            </ion-label>\n            <ion-icon class=\"\" slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- Credit Notes -->\n          <!-- <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onCreditNotesPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/credit_notes_icon.svg\">\n            </ion-icon>\n            <ion-label style=\"font-size:small; color: white;\">\n              Credit Notes\n            </ion-label>\n            <ion-icon class=\"\" slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item> -->\n          <!-- Expenses  -->\n          <ion-item class=\"footer-item\" style=\"--background: var(--ion-color-dark)\" (click)=\"onExpensesPage()\">\n            <ion-icon style=\"margin-left: 0px; margin-right: 5px;\" slot=\"start\"\n              src=\"../assets/images/home_categories/credit_notes_icon.svg\">\n            </ion-icon>\n            <ion-label>\n              Expenses\n            </ion-label>\n            <ion-icon class=\"\" slot=\"end\" src=\"../assets/images/home_categories/add.svg\"></ion-icon>\n          </ion-item>\n          <!-- <ion-list *ngFor=\"let cate of ionInvoice | keyvalue; let i = index;\">\n            <ion-list-header tappable (click)=\"i = !i\">\n              <ion-item style=\"width: 100%;\" (click)=\"onPage(cate);\">\n                <ion-icon style=\"font-size: initial; color: lightgray; \" slot=\"end\"\n                  src=\"./assets/sample-icons/side-menu/arrow-down.svg\"></ion-icon>\n                <ion-icon style=\"color: lightgray; height: 12px; \" slot=\"end\"\n                  src=\"./assets/sample-icons/side-menu/arrow-up.svg\">\n                </ion-icon>\n\n                <ion-label style=\"size: small;\">\n                  {{cate.key}}\n                </ion-label>\n\n                <ion-icon class=\"\" style=\"color: lightgray; \" slot=\"end\" name=\"add-outline\"></ion-icon>\n\n              </ion-item>\n            </ion-list-header>\n          </ion-list> -->\n\n        </ion-list>\n      </div>\n\n      <ion-content> </ion-content>\n\n      <!-- <ion-footer style=\"--background: var(--ion-color-theme);background: var(--ion-color-theme)\">\n        <ion-list class=\"footer-list\" style=\"padding-top: 0px; padding-bottom: 0px;\" lines=\"full\">\n          <ion-item *ngIf=\"signin == 'Sign out'\" style=\"--background: var(--ion-color-theme)\">\n            <ion-label slot=\"start\" color=\"primary\"\n              style=\"text-transform:capitalize; font-size: small; font-weight: bold;\"> 試用版\n            </ion-label>\n            <ion-button color=\"none\" style=\"--box-shadow: none;\">\n              <ion-label slot=\"start\" color=\"primary\"\n                style=\"text-transform:capitalize; font-size: small; font-weight: bold;\">\n                升級 </ion-label>\n            </ion-button>\n          </ion-item>\n\n          <ion-item class=\"footer-item\" *ngIf=\"this.email == 'dannyshf1993@gmail.com'\"\n            style=\"--background: var(--ion-color-theme)\" [routerLink]=\"['/firebase/listing']\">\n            <ion-icon slot=\"start\" name=\"person\"></ion-icon>\n            <ion-label style=\"font-size:small;\">\n              管理員\n            </ion-label>\n          </ion-item>\n\n          <ion-item class=\"footer-item\" *ngIf=\"signin == 'Sign in'\"\n            style=\"cursor: pointer; --background: var(--ion-color-theme-shade)\" [routerLink]=\"['/app/auth/signup']\">\n            <ion-icon slot=\"start\" src=\"./assets/sample-icons/side-menu/login.svg\"></ion-icon>\n            <ion-label style=\"font-size:small;\">\n              登入\n            </ion-label>\n          </ion-item>\n\n          <ion-item class=\"footer-item\" *ngIf=\"signin == 'Sign out'\" style=\"cursor: pointer; --background:\n            var(--ion-color-theme-shade)\" (click)=\"onSignOut()\" [routerLink]=\"['/']\">\n            <ion-icon slot=\"start\" src=\"./assets/sample-icons/side-menu/login.svg\"></ion-icon>\n            <ion-label style=\"font-size:small;\">\n              登出\n            </ion-label>\n          </ion-item>\n\n\n        </ion-list>\n      </ion-footer> -->\n    </ion-menu>\n\n    <!-- Main app content gets rendered in this router-outlet -->\n    <ion-router-outlet main></ion-router-outlet>\n  </ion-split-pane>\n</ion-app>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/checkbox-wrapper/checkbox-wrapper.component.html":
  /*!*******************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/checkbox-wrapper/checkbox-wrapper.component.html ***!
    \*******************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ng-content></ng-content>\n"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/countdown-timer/countdown-timer.component.html":
  /*!*****************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/countdown-timer/countdown-timer.component.html ***!
    \*****************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-row class=\"countdown\">\n  <ion-col class=\"time\" *ngIf=\"_initialUnit === 'day' && _daysLeft > 1\">\n    <span class=\"time-unit\"></span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\">\n        {{ _daysLeft }} 天內到期\n      </span>\n    </div>\n  </ion-col>\n\n  <ion-col class=\"time\" *ngIf=\"_initialUnit === 'day' && _daysLeft == 1\">\n    <span class=\"time-unit\" style=\"color: var(--ion-color-premium);\"></span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\" style=\"color: var(--ion-color-premium);\">\n        <!-- {{ abs(_daysLeft) }} 天內到期 -->\n        今天逾期\n      </span>\n    </div>\n  </ion-col>\n\n  <ion-col class=\"time\" *ngIf=\"_initialUnit === 'day' && _daysLeft == 0\">\n    <span class=\"time-unit\" style=\"color: var(--ion-color-premium);\"></span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\" style=\"color: var(--ion-color-premium);\">\n        <!-- {{ abs(_daysLeft) }} 天內到期 -->\n        已逾期\n      </span>\n    </div>\n  </ion-col>\n\n  <ion-col class=\"time\" *ngIf=\"_initialUnit === 'day' && _daysLeft < 0\">\n    <span class=\"time-unit\" style=\"color: var(--ion-color-secondary);\">天</span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\" style=\"color: var(--ion-color-secondary);\">\n        逾期 {{ abs(_daysLeft) }}\n      </span>\n    </div>\n  </ion-col>\n\n\n\n\n  <ion-col class=\"time\"\n    *ngIf=\"(_initialUnit === 'day' && _endingUnit !== 'day') || _initialUnit === 'hour' || _endingUnit === 'hour'\">\n    <span class=\"time-unit\">H</span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\">{{ _hoursLeft }}</span>\n    </div>\n  </ion-col>\n  <ion-col class=\"time\"\n    *ngIf=\"(_initialUnit === 'day' && (_endingUnit !== 'day' && _endingUnit !== 'hour')) || (_initialUnit === 'hour' && _endingUnit !== 'hour') || _initialUnit === 'minute'\">\n    <span class=\"time-unit\">M</span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\">{{ _minutesLeft }}</span>\n    </div>\n  </ion-col>\n  <ion-col class=\"time\" *ngIf=\"_endingUnit === 'second'\">\n    <span class=\"time-unit\">S</span>\n    <div class=\"inner-time\">\n      <span class=\"time-value\">{{ _secondsLeft }}</span>\n    </div>\n  </ion-col>\n</ion-row>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/counter-input/counter-input.component.html":
  /*!*************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/counter-input/counter-input.component.html ***!
    \*************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div class=\"button-outer\">\n  <div class=\"button-wrapper\">\n    <ion-button class=\"counter-icon\" (click)=\"decrease()\">\n      <ion-icon slot=\"icon-only\" name=\"remove\"></ion-icon>\n    </ion-button>\n  </div>\n</div>\n<span class=\"counter-value\">{{ _counterValue }}</span>\n<div class=\"button-outer\">\n  <div class=\"button-wrapper\">\n    <ion-button class=\"counter-icon\" (click)=\"increase()\">\n      <ion-icon slot=\"icon-only\" name=\"add\"></ion-icon>\n    </ion-button>\n  </div>\n</div>\n"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/fab-button/fab-button.component.html":
  /*!*******************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/fab-button/fab-button.component.html ***!
    \*******************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-footer>\n\n\n  <ion-fab vertical=\"center\" horizontal=\"end\" activated=\"true\" slot=\"fixed\">\n    <ion-fab-button color=\"\">\n      <ion-icon name=\"arrow-up-circle-outline\"></ion-icon>\n    </ion-fab-button>\n    <ion-fab-list side=\"top\">\n      <ion-fab-button (click)=\"onFilterForm()\" color=\"theme\" data-desc=\"Get A Quote\">\n        <!-- <ion-icon color=\"primary\" slot=\"start\" src=\"./../assets/images/getaquote.svg\"></ion-icon> -->\n        <ion-icon name=\"play\"></ion-icon>\n      </ion-fab-button>\n\n      <ion-fab-button color=\"primary\" href=\"https://wa.me/85296769157\" target=_blank>\n        <!-- <a href=\"https://wa.me/85296769157\" target=_blank></a> -->\n        <ion-icon name=\"logo-whatsapp\" style=\"color: #128c7e\"></ion-icon>\n      </ion-fab-button>\n\n    </ion-fab-list>\n  </ion-fab>\n\n\n  <!-- <iframe allow=\"microphone;\" width=\"350\" height=\"430\"\n      src=\"https://console.dialogflow.com/api-client/demo/embedded/f61be2c2-14a8-48b1-b294-73610d4bdd98\">\n    </iframe> -->\n\n  <!-- <ion-fab vertical=\"bottom\" horizontal=\"end\" activated=\"true\" slot=\"fixed\">\n    <ion-fab-button>\n      <ion-icon name=\"list-box\"></ion-icon>\n    </ion-fab-button>\n\n    <ion-fab-list side=\"top\">\n      <ion-fab-button color=\"warning\">\n        <ion-icon name=\"quote\"></ion-icon>\n      </ion-fab-button>\n      <ion-fab-button color=\"secondary\">\n        <ion-label>得到報價</ion-label>\n        <ion-icon name=\"quote\"></ion-icon>\n      </ion-fab-button>\n    </ion-fab-list>\n\n    <ion-fab-list side=\"start\">\n      <ion-fab-button>Vimeo</ion-fab-button>\n    </ion-fab-list>\n  </ion-fab> -->\n\n  <!-- <ion-fab vertical=\"top\" horizontal=\"end\" activated=\"true\" slot=\"fixed\">\n    <ion-fab-button>\n      <ion-icon name=\"arrow-dropup\"></ion-icon>\n    </ion-fab-button>\n    <ion-fab-list side=\"top\">\n      <ion-fab-button (click)=\"delete()\" color=\"danger\">\n        <ion-icon name=\"trash\"></ion-icon>\n      </ion-fab-button>\n      <ion-fab-button (click)=\"cancel()\" color=\"warning\">\n        <ion-icon name=\"close\"></ion-icon>\n      </ion-fab-button>\n      <ion-fab-button (click)=\"save()\" color=\"success\">\n        <ion-icon name=\"checkmark\"></ion-icon>\n      </ion-fab-button>\n    </ion-fab-list>\n  </ion-fab> -->\n\n</ion-footer>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/global-banner/global-banner.component.html":
  /*!*************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/global-banner/global-banner.component.html ***!
    \*************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-item>\n  <div style=\"background: var(--ion-color-dark); width: 100%; text-align: center; margin-bottom: 20px;\">\n    <ion-img style=\"display: block; width: 300px; margin-left: auto; margin-right: auto;\" src=\"assets/icon/invoice.svg\">\n    </ion-img>\n    <ion-badge color=\"theme\">Invoicing on the go!</ion-badge>\n  </div>\n</ion-item>\n\n\n\n\n<ion-item>\n  <ion-icon slot=\"start\" src=\"./../../../assets/images/global-footer/phone.svg\"></ion-icon>\n  <ion-label>\n    Call us anytime between Monday - Friday (852 - 5702 6605)\n  </ion-label>\n</ion-item>\n\n<ion-item>\n  <div style=\"font-weight: lighter; font-size: small; color: white;\">\n    © 2020 by i-Maker IT limited. All Right Reserved.\n  </div>\n</ion-item>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/global-footer/global-footer.component.html":
  /*!*************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/global-footer/global-footer.component.html ***!
    \*************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ""
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/header/header.component.html":
  /*!***********************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/header/header.component.html ***!
    \***********************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<nav class=\"dropdownmenu\">\n   <ion-buttons slot=\"start\">\n      <ion-menu-button color=\"theme\"></ion-menu-button>\n   </ion-buttons>\n   <!-- Searchbar with a cancel button and custom cancel button text -->\n   <!-- <ion-searchbar class=\"searchbar\" mode=\"ios\"></ion-searchbar> -->\n\n   <!-- <app-image-shell style=\"\" class=\"header-logo\" animation=\"spinner\"\n      src=\"./assets/images/home_categories/logo-header.svg\"> </app-image-shell> -->\n\n   <!-- <ul class=\"menulist_top\">\n      <a href=\"{{url}}\" target=\"_blank\">\n        導師登記\n      </a>\n      </ul> -->\n   <ul class=\"menulist_\" style=\"position: absolute; top: 0; right: 0;\">\n      <li><a *ngIf=\"signin == 'Sign in'\" class=\"loginbutton\" (click)=\"onSignIn()\"> 登入</a></li>\n      <!-- <li><a *ngIf=\"signin == 'Sign out'\" class=\"loginbutton\" (click)=\"onSignOut()\"> 登出</a></li> -->\n      <li *ngIf=\"signin == 'Sign out'\" (click)=\"showProfileToggle = !showProfileToggle\">\n\n         <div *ngIf=\"photoURL\">\n            <app-image-shell class=\"user-avatar\" animation=\"spinner\" [src]=\"photoURL\"> </app-image-shell>\n         </div>\n         <div *ngIf=\"!photoURL\">\n            <app-image-shell class=\"user-avatar\" animation=\"spinner\"\n               [src]=\"'https://thumbs.dreamstime.com/b/young-executive-woman-profile-icon-beautiful-vector-illustration-design-81933333.jpg'\">\n            </app-image-shell>\n         </div>\n\n         <div class=\"menu_toggle\" *ngIf=\"showProfileToggle\" style=\"overflow-y: scroll; height: 600px;\">\n            <ul>\n               <li>\n                  <ion-item-divider style=\"background-color: #f3f8fe!important;\" sticky>\n\n                     <ion-avatar>\n                        <div *ngIf=\"photoURL\">\n                           <app-image-shell animation=\"spinner\" [src]=\"photoURL\">\n                           </app-image-shell>\n                        </div>\n                        <div *ngIf=\"!photoURL\">\n                           <app-image-shell animation=\"spinner\"\n                              [src]=\"'https://thumbs.dreamstime.com/b/young-executive-woman-profile-icon-beautiful-vector-illustration-design-81933333.jpg'\">\n                           </app-image-shell>\n                        </div>\n                     </ion-avatar>\n\n                     <ion-button color=\"secondary\" fill=\"clear\" expand=\"block\" *ngIf=\"signin == 'Sign out'\"\n                        class=\"loginbutton\" (click)=\"onSignOut()\"> 登出</ion-button>\n\n                     <ion-button color=\"theme\" fill=\"clear\" class=\"dismissbutton\" (click)=\"onDismiss()\">\n                        <ion-icon name=\"close-outline\"></ion-icon>\n                     </ion-button>\n                  </ion-item-divider>\n                  <ion-card class=\"card\">\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/tutorial.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n\n                        <ion-label>\n                           {{displayName}}\n                        </ion-label>\n\n                     </ion-item>\n\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/email.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n                        <ion-label>\n                           {{email}}\n                        </ion-label>\n                     </ion-item>\n\n                     <ion-item>\n                        <ion-badge color=\"theme\" style=\"padding: 5px;\">\n                           Created At: {{creationTime.substring(0, 16)}}\n                        </ion-badge>\n                     </ion-item>\n\n                     <ion-item>\n                        <ion-badge style=\"background: lightblue; color: var(--ion-color-theme); padding: 5px;\">\n                           Last Sign In: {{lastSignInTime.substring(0, 16)}}\n                        </ion-badge>\n                     </ion-item>\n                  </ion-card>\n               </li>\n\n            </ul>\n         </div>\n\n      </li>\n      <!-- Help and Support -->\n      <li>\n         <ion-button class=\"notification\" color=\"premium\" fill=\"clear\" slot=\"end\"\n            (click)=\"showCreditNotesToggle = !showCreditNotesToggle\">\n            <ion-icon name=\"help-circle-outline\"></ion-icon>\n         </ion-button>\n         <div class=\"menu_toggle\" *ngIf=\"showCreditNotesToggle\" style=\"overflow-y: scroll; height: 700px;\">\n            <ul>\n               <li>\n                  <ion-item-divider sticky>\n                     <ion-title>Help & Support</ion-title>\n                  </ion-item-divider>\n                  <ion-card class=\"card\">\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/tutorial.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n                        <ion-label>Educational guides for your business</ion-label>\n                     </ion-item>\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/tutorial.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n                        <ion-label>\n                           Call us anytime between Monday - Friday (Toll Free)\n                        </ion-label>\n                     </ion-item>\n                  </ion-card>\n                  <ion-card class=\"card\">\n                     <ion-slides pager=\"false\" [options]=\"slideOptsTut\">\n                        <ion-slide>\n                           <a href=\"\">\n\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n\n                           </a>\n                        </ion-slide>\n                        <ion-slide>\n                           <a href=\"\">\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n                           </a>\n                        </ion-slide>\n                        <ion-slide>\n                           <a href=\"\">\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n                           </a>\n                        </ion-slide>\n                     </ion-slides>\n                  </ion-card>\n                  <ion-card class=\"card\">\n                     <ion-slides pager=\"false\" [options]=\"slideOptsTut\">\n                        <ion-slide>\n                           <a href=\"\">\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n                           </a>\n                        </ion-slide>\n                        <ion-slide>\n                           <a href=\"\">\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n                           </a>\n                        </ion-slide>\n                        <ion-slide>\n                           <a href=\"\">\n                              <img\n                                 src=\"https://d12h6dzwzn4m10.cloudfront.net/zbooks/assets/images/invoice-overview-thumbnail-bf0be58b350c00e5fcaaecdcb363416e.png\"\n                                 alt=\"\">\n                           </a>\n                        </ion-slide>\n                     </ion-slides>\n                  </ion-card>\n                  <ion-card class=\"card\">\n                     <ion-card-header>\n                        <ion-card-subtitle>Card Subtitle</ion-card-subtitle>\n                        <ion-card-title>Card Title</ion-card-title>\n                     </ion-card-header>\n                     <ion-card-content>\n                        Keep close to Nature's heart... and break clear away, once in awhile,\n                        and climb a mountain or spend a week in the woods. Wash your spirit clean.\n                     </ion-card-content>\n                  </ion-card>\n                  <ion-card class=\"card\">\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/tutorial.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n                        <ion-label>Educational guides for your business</ion-label>\n                     </ion-item>\n                     <ion-item>\n                        <ion-thumbnail slot=\"start\">\n                           <ion-img src=\"assets/icon/tutorial.svg\" alt=\"\"></ion-img>\n                        </ion-thumbnail>\n                        <ion-label>\n                           Call us anytime between Monday - Friday (Toll Free)\n                        </ion-label>\n                     </ion-item>\n                  </ion-card>\n               </li>\n            </ul>\n         </div>\n      </li>\n\n      <!-- <li>\n         <ion-button class=\"notification\" slot=\"icon-only\" color=\"theme\" fill=\"clear\"\n            (click)=\"presentPopoverNotification()\">\n            <ion-icon name=\"notifications-outline\"></ion-icon>\n         </ion-button>\n      </li> -->\n\n      <!-- <li>\n         <ion-button class=\"notification\" color=\"premium\" fill=\"clear\" slot=\"end\"\n            (click)=\"showCreditNotesToggle2 = !showCreditNotesToggle2\">\n            <ion-icon name=\"settings-outline\"></ion-icon>\n         </ion-button>\n         <div class=\"menu_toggle\" *ngIf=\"showCreditNotesToggle2\">\n            <ul>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"show = !show\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-upload-sharp\"></ion-icon>\n                     <span>\n                        Upload contact import\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"getTestCsv()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"\"></ion-icon>\n                     <span>\n                        Get CSV\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"loadCSV()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-upload-sharp\"></ion-icon>\n                     <span>\n                        Bulk import\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"exportCSV()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-download-sharp\"></ion-icon>\n                     <span>\n                        Bulk export\n                     </span>\n                  </ion-button>\n               </li>\n            </ul>\n         </div>\n      </li> -->\n\n      <!-- <li>\n         <ion-button class=\"notification\" color=\"premium\" fill=\"clear\" slot=\"end\"\n            (click)=\"showCreditNotesToggle3 = !showCreditNotesToggle3\">\n            <ion-icon name=\"people-outline\"></ion-icon>\n         </ion-button>\n         <div class=\"menu_toggle\" *ngIf=\"showCreditNotesToggle3\">\n            <ul>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"show = !show\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-upload-sharp\"></ion-icon>\n                     <span>\n                        Upload contact import\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"getTestCsv()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"\"></ion-icon>\n                     <span>\n                        Get CSV\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"loadCSV()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-upload-sharp\"></ion-icon>\n                     <span>\n                        Bulk import\n                     </span>\n                  </ion-button>\n               </li>\n               <li>\n                  <ion-button class=\"listbutton\" expand=\"full\" fill=\"clear\" (click)=\"exportCSV()\">\n                     <ion-icon slot=\"start\" size=\"medium\" icon-only name=\"cloud-download-sharp\"></ion-icon>\n                     <span>\n                        Bulk export\n                     </span>\n                  </ion-button>\n               </li>\n            </ul>\n         </div>\n      </li> -->\n\n      <li>\n         <ion-item lines=\"none\" style=\"--background: transparent; color: lightgray; font-weight: bold;\">\n            {{displayName}}\n            <!-- | {{uid}} -->\n         </ion-item>\n      </li>\n   </ul>\n\n\n</nav>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/nodata/nodata.component.html":
  /*!***********************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/nodata/nodata.component.html ***!
    \***********************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div class=\"nodata\">\n        <img src=\"assets/icon/nodata.jpg\">\n        <ion-title>Oops! It seems like you dont have any data yet</ion-title>\n</div>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/rating-input/rating-input.component.html":
  /*!***********************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/rating-input/rating-input.component.html ***!
    \***********************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "    <ion-card class=\"loadingsection\">\n    \t<div class=\"loader\">\n    \t\t<div class=\"line\"></div>\n    \t\t<div class=\"line\"></div>\n    \t\t<div class=\"line\"></div>\n    \t\t<div class=\"line\"></div>\n    \t\t<div class=\"line\"></div>\n    \t</div>\n    </ion-card>\n\n\n\n    <!-- <ion-button class=\"rating-icon\" fill=\"clear\" shape=\"round\" *ngFor=\"let r of range; let i = index\" (click)=\"rate(i + 1)\">\n\t<ion-icon slot=\"icon-only\" [name]=\"value === undefined ? (r === 1 ? 'star' : (r === 2 ? 'star-half' : 'star-outline')) : (value > i ? (value < i+1 ? 'star-half' : 'star') : 'star-outline')\"></ion-icon>\n</ion-button> -->"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/search-form/search-form.component.html":
  /*!*********************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/search-form/search-form.component.html ***!
    \*********************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<p>works</p>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/show-hide-password/show-hide-password.component.html":
  /*!***********************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/show-hide-password/show-hide-password.component.html ***!
    \***********************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ng-content></ng-content>\n<a class=\"type-toggle\" (click)=\"toggleShow()\">\n\t<ion-icon class=\"show-option\" [hidden]=\"show\" src=\"./assets/sample-icons/auth/eye-show.svg\"></ion-icon>\n\t<ion-icon class=\"hide-option\" [hidden]=\"!show\" src=\"./assets/sample-icons/auth/eye-hide.svg\"></ion-icon>\n  <!-- In case you want to use text instead of icons -->\n\t<!--\n  <span class=\"show-option\" [hidden]=\"show\">show</span>\n\t<span class=\"hide-option\" [hidden]=\"!show\">hide</span>\n  -->\n</a>\n"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.html":
  /*!*********************************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.html ***!
    \*********************************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-progress-bar value=\"pct\" buffer=\"0.5\"></ion-progress-bar>\n\n<div *ngIf=\"percentage | async as pct\" class=\"progress-section\">\n  <progress class=\"progress-bar\" [value]=\"pct\" max=\"100\"></progress>\n  {{ pct | number }}%\n</div>\n\n<div *ngIf=\"snapshot | async as snap\">\n\n  <!-- {{ snap.bytesTransferred }} of {{ snap.totalBytes }} -->\n\n  <div *ngIf=\"downloadURL as url\">\n    <!-- <h2>結果</h2> -->\n    <!-- <img [src]=\"url\"><br> -->\n    <a [href]=\"url\" target=\"_blank\" rel=\"noopener\">下載\n    </a>\n  </div>\n\n  <!-- <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.pause()\" [disabled]=\"!isActive(snap)\">暫停\n    </ion-button>\n  </ion-col>\n  <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.cancel()\" [disabled]=\"!isActive(snap)\">取消\n    </ion-button>\n  </ion-col>\n  <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.resume()\" [disabled]=\"!(snap?.state === 'paused')\">恢復\n    </ion-button>\n  </ion-col> -->\n\n</div>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/upload-task-sq/upload-task-sq.component.html":
  /*!***************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/upload-task-sq/upload-task-sq.component.html ***!
    \***************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-card style=\"width: 100%\">\n  <ion-card-header>\n    <div *ngIf=\"percentage | async as pct\">\n      <progress [value]=\"pct\" max=\"100\"></progress>\n      {{ pct | number }}%\n    </div>\n  </ion-card-header>\n  <ion-card-content>\n\n    <!-- <ion-button (click)=\"presentToastWithOptions()\">Send</ion-button> -->\n\n    <div *ngIf=\"snapshot | async as snap\">\n\n      {{ snap.bytesTransferred }} of {{ snap.totalBytes }}\n\n      <div *ngIf=\"downloadURL as url\">\n        <h2>結果</h2>\n        <!-- <img [src]=\"url\"><br> -->\n        <a style=\"color: var(--ion-color-theme)\" [href]=\"url\" target=\"_blank\" rel=\"noopener\">下載\n        </a>\n      </div>\n\n      <ion-row>\n        <ion-col size=\"4\">\n          <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.pause()\" [disabled]=\"!isActive(snap)\">暫停\n          </ion-button>\n        </ion-col>\n        <ion-col size=\"4\">\n          <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.cancel()\" [disabled]=\"!isActive(snap)\">取消\n          </ion-button>\n        </ion-col>\n        <ion-col size=\"4\">\n          <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.resume()\" [disabled]=\"!(snap?.state === 'paused')\">恢復\n          </ion-button>\n        </ion-col>\n      </ion-row>\n\n    </div>\n  </ion-card-content>\n</ion-card>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/upload-task/upload-task.component.html":
  /*!*********************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/upload-task/upload-task.component.html ***!
    \*********************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div *ngIf=\"percentage | async as pct\">\n  <progress [value]=\"pct\" max=\"100\"></progress>\n  {{ pct | number }}%\n</div>\n\n<div *ngIf=\"snapshot | async as snap\">\n\n  {{ snap.bytesTransferred }} of {{ snap.totalBytes }}\n\n  <div *ngIf=\"downloadURL as url\">\n    <h2>結果</h2>\n    <img [src]=\"url\"><br>\n    <a [href]=\"url\" target=\"_blank\" rel=\"noopener\">下載\n    </a>\n  </div>\n\n  <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.pause()\" [disabled]=\"!isActive(snap)\">暫停\n    </ion-button>\n  </ion-col>\n  <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.cancel()\" [disabled]=\"!isActive(snap)\">取消\n    </ion-button>\n  </ion-col>\n  <ion-col size=\"4\">\n    <ion-button color=\"theme\" fill=\"outline\" (click)=\"task.resume()\" [disabled]=\"!(snap?.state === 'paused')\">恢復\n    </ion-button>\n  </ion-col>\n\n</div>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/uploader-bulk-import/uploader-bulk-import.component.html":
  /*!***************************************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/uploader-bulk-import/uploader-bulk-import.component.html ***!
    \***************************************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div class=\"dropzone\" dropzone (hovered)=\"toggleHover($event)\" (dropped)=\"onDrop($event)\" [class.hovering]=\"isHovering\">\n\n  <img class=\"icon\" src=\"./../../../assets/images/home_categories/ionInvoice.svg\" alt=\"\">\n  <!-- Drag and Drop a File -->\n  <br>\n  <!-- Upload File {{id}} -->\n  <h1>Step 2. Drag a file here</h1>\n  <h1 style=\"color: var(--ion-color-theme)\">.csv file only</h1>\n</div>\n\n<div *ngIf=\"files.length > 0\">\n  <!-- <ion-label>上載</ion-label> -->\n</div>\n<!-- {{files | json}} -->\n<ion-list *ngFor=\"let file of files\">\n  <ion-item>\n    <app-upload-task-bulk-import [file]=\"file\" [id]=\"id\"></app-upload-task-bulk-import>\n  </ion-item>\n</ion-list>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/uploader-sq/uploader-sq.component.html":
  /*!*********************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/uploader-sq/uploader-sq.component.html ***!
    \*********************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<!-- <div>{{enquirydetail | json}}</div> -->\n<ion-card style=\"box-shadow: none;\"\n  *ngIf=\"enquirydetail.timestamp + enquirydetail.sq_timelimit * 1000 * 60 * 60 * 24 <= NOW\">報價單查詢已逾期</ion-card>\n<ion-card *ngIf=\"enquirydetail.timestamp + enquirydetail.sq_timelimit * 1000 * 60 *60 * 24 > NOW\"\n  style=\"box-shadow: none;\">\n  <ion-card-header>\n    將報價單 ( 編號: {{enquirydetail?.timestamp}}) 發送至: {{enquirydetail.organization_name || \"\"}},\n    {{enquirydetail.enquiry_name || ''}}\n    <app-countdown-timer fill=\"time\" [units]=\"{from: 'day', to: 'day'}\"\n      [end]=\"number(enquirydetail.timestamp, enquirydetail.sq_timelimit)\">\n    </app-countdown-timer>\n    <br>\n    <!-- <strong>\n      請在到期日 {{atend.toString().substr(0, 15)}} 之前發送報價單\n    </strong> -->\n\n    <!-- End at: {{number(enquirydetail.timestamp, enquirydetail.sq_timelimit)}} -->\n  </ion-card-header>\n  <ion-card-content>\n    <div class=\"dropzone\" dropzone (hovered)=\"toggleHover($event)\" (dropped)=\"onDrop($event)\"\n      [class.hovering]=\"isHovering\">\n\n      <h1>\n        <strong>\n        ionInvoice | iMaker IT limited \n        </strong>\n      </h1>\n      <p>\n        <img src=\"../../../assets/images/home_categories/ionInvoice.svg\" style=\"margin-top: 10px; margin-bottom: 10px; width: 175px !important;\" alt=\"\">\n        <!-- Drag and Drop a File\n        請在此處上傳\n        <br>\n        報價單文件\n        <br>\n        (i.e. PDF format) -->\n      </p>\n    </div>\n\n    <ion-list *ngFor=\"let file of files\">\n      <ion-item>\n        <app-upload-task-sq style=\"width: 100%;\" [file]=\"file\" [id]=\"enquirydetail\" [supplieruid]=\"supplieruid\">\n        </app-upload-task-sq>\n      </ion-item>\n    </ion-list>\n\n    <!-- <div *ngIf=\"files.length > 0\">\n      <ion-label>上載</ion-label>\n    </div> -->\n\n  </ion-card-content>\n</ion-card>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/components/uploader/uploader.component.html":
  /*!***************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/components/uploader/uploader.component.html ***!
    \***************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div class=\"dropzone\" dropzone (hovered)=\"toggleHover($event)\" (dropped)=\"onDrop($event)\" [class.hovering]=\"isHovering\">\n\n  <!-- <img class=\"icon\" src=\"./../../../assets/images/home_categories/ionInvoice.svg\" alt=\"\">  -->\n  <!-- Drag and Drop a File -->\n  <p style=\"color: gray\">Drag your company logo here\n  </p>\n  <!-- {{id}} -->\n\n</div>\n\n<div *ngIf=\"files.length > 0\">\n  <!-- <ion-label>上載</ion-label> -->\n</div>\n\n<ion-list *ngFor=\"let file of files\">\n  <ion-item>\n    <app-upload-task [file]=\"file\" [id]=\"id\"></app-upload-task>\n  </ion-item>\n</ion-list>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/pop-over/pop-over.component.html":
  /*!****************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/pop-over/pop-over.component.html ***!
    \****************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ""
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/shell/aspect-ratio/aspect-ratio.component.html":
  /*!******************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/shell/aspect-ratio/aspect-ratio.component.html ***!
    \******************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<div class=\"content-wrapper\">\n  <ng-content></ng-content>\n</div>\n"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/shell/image-shell/image-shell.component.html":
  /*!****************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/shell/image-shell/image-shell.component.html ***!
    \****************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ion-spinner class=\"spinner\"></ion-spinner>\n<img class=\"inner-img\" [src]=\"_src\" [alt]=\"_alt\" (load)=\"_imageLoaded()\" />\n<ng-content *ngIf=\"_mode === 'cover'\"></ng-content>"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/shell/text-shell/text-shell.component.html":
  /*!**************************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/shell/text-shell/text-shell.component.html ***!
    \**************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<ng-container>{{ _data }}</ng-container>\n"
  
  /***/ }),
  
  /***/ "./node_modules/raw-loader/index.js!./src/app/user/friends/user-friends.page.html":
  /*!*******************************************************************************!*\
    !*** ./node_modules/raw-loader!./src/app/user/friends/user-friends.page.html ***!
    \*******************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "<!-- <ion-header no-border>\n  <ion-toolbar>\n    <ion-buttons slot=\"start\">\n      <ion-back-button defaultHref=\"app/user\"></ion-back-button>\n    </ion-buttons>\n  </ion-toolbar>\n</ion-header> -->\n<!-- <app-header></app-header> -->\n\n\n<ion-content class=\"user-friends-content\">\n\n  <ion-fab vertical=\"top\" horizontal=\"end\" slot=\"fixed\" color=\"none\">\n    <ion-fab-button (click)=\"onDismiss()\" size=\"small\">\n      <ion-icon name=\"close-outline\"></ion-icon>\n    </ion-fab-button>\n  </ion-fab>\n\n  <ion-segment class=\"user-friends-segment\" mode=\"md\" (ionChange)=\"segmentChanged($event)\">\n\n    <ion-segment-button mode=\"md\" checked=\"true\" value=\"aboutme\">\n      <ion-label>關於我</ion-label>\n    </ion-segment-button>\n\n    <!-- <ion-segment-button mode=\"md\" value=\"friends\">\n      <ion-label>Friends</ion-label>\n    </ion-segment-button>\n\n    <ion-segment-button mode=\"md\" value=\"followers\">\n      <ion-label>Followers</ion-label>\n    </ion-segment-button>\n\n    <ion-segment-button mode=\"md\" value=\"following\">\n      <ion-label>Following</ion-label>\n    </ion-segment-button> -->\n  </ion-segment>\n\n  <!-- <ion-searchbar class=\"friends-searchbar\" animated mode=\"ios\" [(ngModel)]=\"searchQuery\" (ionChange)=\"searchList()\">\n  </ion-searchbar> -->\n\n  <ng-template #friendItem let-friend=\"friend\">\n    <ion-row class=\"user-details-section\">\n      <ion-col class=\"user-image-wrapper\" size=\"2\">\n        <app-aspect-ratio [ratio]=\"{w:1, h:1}\">\n          <app-image-shell class=\"user-image\" animation=\"spinner\" [src]=\"friend.image\" [alt]=\"'friend'\">\n          </app-image-shell>\n        </app-aspect-ratio>\n      </ion-col>\n      <ion-col class=\"user-data-wrapper\">\n        <div class=\"user-info\">\n          <h3 class=\"user-name\">\n            <app-text-shell [data]=\"friend.name\"></app-text-shell>\n          </h3>\n          <h5 class=\"user-job\">\n            <app-text-shell [data]=\"friend.job\"></app-text-shell>\n          </h5>\n        </div>\n      </ion-col>\n      <ion-col class=\"user-actions-wrapper\">\n        <ion-button *ngIf=\"!friend.following\" class=\"user-action\" expand=\"block\" size=\"small\" color=\"primary\">Follow\n        </ion-button>\n        <ion-button *ngIf=\"friend.following\" class=\"user-action\" expand=\"block\" size=\"small\" color=\"light\">Following\n        </ion-button>\n      </ion-col>\n    </ion-row>\n  </ng-template>\n\n  <section [hidden]=\"segmentValue !== 'aboutme'\">\n\n    <ion-card>\n      <ion-card-header style=\"background-color: lightgray;\">\n        <ion-avatar class=\"logo_\">\n          <img src=\"{{photoURL}}\" alt=\"\">\n        </ion-avatar>\n\n      </ion-card-header>\n\n      <ion-card-content>\n\n        <ion-item>\n          <ion-avatar slot=\"start\">\n            <ion-icon class=\"icon\" name=\"person-circle-outline\"></ion-icon>\n          </ion-avatar>\n          <ion-label>{{roleDetail.user_name}}</ion-label>\n          <ion-chip color=\"secondary\">\n            <ion-label>\n              <span *ngIf=\"role == 'teacher'\">老師</span>\n              <span *ngIf=\"role == 'supplier'\">供應商</span>\n            </ion-label>\n          </ion-chip>\n\n        </ion-item>\n\n        <ion-item>\n          <ion-avatar slot=\"start\">\n            <img src=\"{{photoURL}}\">\n          </ion-avatar>\n          <ion-label>{{roleDetail.organization_name}}</ion-label>\n        </ion-item>\n\n        <ion-item>\n          <ion-avatar slot=\"start\">\n            <ion-icon class=\"icon\" name=\"mail-outline\"></ion-icon>\n          </ion-avatar>\n          <ion-label>{{roleDetail.user_email}}</ion-label>\n        </ion-item>\n\n        <ion-item>\n          <ion-avatar slot=\"start\">\n            <ion-icon class=\"icon\" name=\"call-outline\"></ion-icon>\n          </ion-avatar>\n          <ion-label>{{roleDetail.user_phone}}</ion-label>\n        </ion-item>\n\n        <ion-item>\n          <ion-avatar slot=\"start\">\n            <ion-icon *ngIf=\"roleDetail.isVerified == true\" class=\"icon\" style=\"color: var(--ion-color-theme);\"\n              name=\"checkmark-circle-outline\"></ion-icon>\n            <ion-icon *ngIf=\"roleDetail.isVerified == false\" class=\"icon\" style=\"color: var(--ion-color-secondary);\"\n              name=\"ellipse-outline\"></ion-icon>\n          </ion-avatar>\n          <ion-label>\n            <span *ngIf=\"roleDetail.isVerified == false\" style=\"color: var(--ion-color-secondary);\">未驗證</span>\n            <span *ngIf=\"roleDetail.isVerified == true\" style=\"color: var(--ion-color-theme);\">已驗證</span>\n          </ion-label>\n        </ion-item>\n\n\n\n      </ion-card-content>\n    </ion-card>\n\n    <!-- <ion-list class=\"friends-list\" *ngIf=\"friendsList.length > 0\">\n      <ion-item class=\"friend-item\" *ngFor=\"let friend of friendsList\">\n        <ng-container *ngTemplateOutlet=\"friendItem; context: { friend: friend }\"></ng-container>\n      </ion-item>\n    </ion-list> -->\n    <!-- <ng-container *ngIf=\"friendsList.length <= 0\">\n      <h3 class=\"empty-list-message\">No Friends</h3>\n    </ng-container> -->\n  </section>\n\n  <!-- <section [hidden]=\"segmentValue !== 'friends'\">\n    <ion-list class=\"friends-list\" *ngIf=\"friendsList.length > 0\">\n      <ion-item class=\"friend-item\" *ngFor=\"let friend of friendsList\">\n        <ng-container *ngTemplateOutlet=\"friendItem; context: { friend: friend }\"></ng-container>\n      </ion-item>\n    </ion-list>\n    <ng-container *ngIf=\"friendsList.length <= 0\">\n      <h3 class=\"empty-list-message\">No Friends</h3>\n    </ng-container>\n  </section> -->\n\n  <!-- <section [hidden]=\"segmentValue !== 'followers'\">\n    <ion-list class=\"friends-list\" *ngIf=\"followersList.length > 0\">\n      <ion-item class=\"friend-item\" *ngFor=\"let friend of followersList\">\n        <ng-container *ngTemplateOutlet=\"friendItem; context: { friend: friend }\"></ng-container>\n      </ion-item>\n    </ion-list>\n    <ng-container *ngIf=\"followersList.length <= 0\">\n      <h3 class=\"empty-list-message\">No Followers</h3>\n    </ng-container>\n  </section> -->\n\n  <!-- <section [hidden]=\"segmentValue !== 'following'\">\n    <ion-list class=\"friends-list\" *ngIf=\"followingList.length > 0\">\n      <ion-item class=\"friend-item\" *ngFor=\"let friend of followingList\">\n        <ng-container *ngTemplateOutlet=\"friendItem; context: { friend: friend }\"></ng-container>\n      </ion-item>\n    </ion-list>\n    <ng-container *ngIf=\"followingList.length <= 0\">\n      <h3 class=\"empty-list-message\">No Following</h3>\n    </ng-container>\n  </section> -->\n\n  <!-- <ion-card class=\"update-user-content\">\n    <ion-row class=\"select-user-image-row\">\n      <ion-col class=\"user-image-col\" size=\"5\">\n        <app-aspect-ratio [ratio]=\"{w: 1, h: 1}\">\n          <app-image-shell [mode]=\"'cover'\" class=\"user-image\" animation=\"spinner\" [src]=\"selectedAvatar\"\n            [alt]=\"'user image'\"></app-image-shell>\n        </app-aspect-ratio>\n        <ion-button class=\"change-image-btn\" color=\"secondary\" (click)=\"changeUserImage()\">\n          <ion-icon class=\"btn-icon\" slot=\"icon-only\" name=\"camera\"></ion-icon>\n        </ion-button>\n      </ion-col>\n    </ion-row>\n\n    <section class=\"user-details-fields fields-section\">\n      <ion-list class=\"inputs-list\" lines=\"full\">\n        <ion-item class=\"input-item\">\n          <ion-label color=\"secondary\" position=\"floating\">Name</ion-label>\n          <ion-input type=\"text\" formControlName=\"name\" required></ion-input>\n        </ion-item>\n        <ion-item class=\"input-item\">\n          <ion-label color=\"secondary\" position=\"floating\">Last name</ion-label>\n          <ion-input type=\"text\" formControlName=\"lastname\" required></ion-input>\n        </ion-item>\n        <ion-item class=\"input-item\">\n          <ion-label color=\"secondary\" position=\"floating\">Date of Birth</ion-label>\n          <ion-datetime display-format=\"DD/MM/YYYY\" picker-format=\"DD MMMM YYYY\" formControlName=\"birthdate\" required>\n          </ion-datetime>\n        </ion-item>\n        <ion-item class=\"input-item\">\n          <ion-label color=\"secondary\" position=\"floating\">Phone number</ion-label>\n          <ion-input type=\"tel\" formControlName=\"phone\" required></ion-input>\n        </ion-item>\n        <ion-item class=\"input-item\">\n          <ion-label color=\"secondary\" position=\"floating\">Email</ion-label>\n          <ion-input type=\"email\" formControlName=\"email\" required></ion-input>\n        </ion-item>\n      </ion-list>\n    </section>\n\n    <section class=\"user-experience-fields fields-section\">\n      <h5 class=\"section-header\">Experience in</h5>\n      <ion-row class=\"checkbox-tags rounded-checkbox-tags\">\n        <ion-item formArrayName=\"skills\" lines=\"none\" class=\"checkbox-tag rounded-tag\"\n          *ngFor=\"let skill of skillsFormArray.controls; let i = index;\">\n          <ion-label class=\"tag-label\">{{skills[i].name}}</ion-label>\n          <ion-checkbox [formControlName]=\"i\"></ion-checkbox>\n        </ion-item>\n      </ion-row>\n    </section>\n\n    <section class=\"user-languages-fields fields-section\">\n      <h5 class=\"section-header\">Languages</h5>\n      <ion-row class=\"range-item-row\">\n        <ion-col size=\"12\">\n          <div class=\"range-header\">\n            <span class=\"range-label\">English</span>\n            <span class=\"range-value\">{{ changeLangValue(updateUserForm.controls.english.value) }}</span>\n          </div>\n        </ion-col>\n        <ion-col size=\"12\">\n          <ion-range class=\"range-control\" formControlName=\"english\" color=\"secondary\" min=\"1\" max=\"10\" step=\"1\">\n          </ion-range>\n        </ion-col>\n      </ion-row>\n      <ion-row class=\"range-item-row\">\n        <ion-col size=\"12\">\n          <div class=\"range-header\">\n            <span class=\"range-label\">Spanish</span>\n            <span class=\"range-value\">{{ changeLangValue(updateUserForm.controls.spanish.value) }}</span>\n          </div>\n        </ion-col>\n        <ion-col size=\"12\">\n          <ion-range class=\"range-control\" formControlName=\"spanish\" color=\"secondary\" min=\"1\" max=\"10\" step=\"1\">\n          </ion-range>\n        </ion-col>\n      </ion-row>\n      <ion-row class=\"range-item-row\">\n        <ion-col size=\"12\">\n          <div class=\"range-header\">\n            <span class=\"range-label\">French</span>\n            <span class=\"range-value\">{{ changeLangValue(updateUserForm.controls.french.value) }}</span>\n          </div>\n        </ion-col>\n        <ion-col size=\"12\">\n          <ion-range class=\"range-control\" formControlName=\"french\" color=\"secondary\" min=\"1\" max=\"10\" step=\"1\">\n          </ion-range>\n        </ion-col>\n      </ion-row>\n    </section>\n  </ion-card> -->\n\n\n</ion-content>\n\n<!-- <ion-footer>\n  <ion-row class=\"form-actions-wrapper\">\n    <ion-col>\n      <ion-button class=\"delete-btn\" expand=\"block\" color=\"primary\" fill=\"outline\" (click)=\"deleteUser()\">DELETE\n      </ion-button>\n    </ion-col>\n    <ion-col>\n      <ion-button class=\"submit-btn\" expand=\"block\" color=\"secondary\" type=\"submit\" fill=\"solid\"\n        [disabled]=\"!updateUserForm.valid\">UPDATE</ion-button>\n    </ion-col>\n  </ion-row>\n</ion-footer> -->"
  
  /***/ }),
  
  /***/ "./src/$$_lazy_route_resource lazy recursive":
  /*!**********************************************************!*\
    !*** ./src/$$_lazy_route_resource lazy namespace object ***!
    \**********************************************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  var map = {
  	"./alerts/form/form.module": [
  		"./src/app/alerts/form/form.module.ts"
  	],
  	"./pages/about-us-submenu1/about-us-submenu1.module": [
  		"./src/app/pages/about-us-submenu1/about-us-submenu1.module.ts",
  		"pages-about-us-submenu1-about-us-submenu1-module"
  	],
  	"./pages/about-us-submenu2/about-us-submenu2.module": [
  		"./src/app/pages/about-us-submenu2/about-us-submenu2.module.ts",
  		"pages-about-us-submenu2-about-us-submenu2-module"
  	],
  	"./pages/about-us-submenu3/about-us-submenu3.module": [
  		"./src/app/pages/about-us-submenu3/about-us-submenu3.module.ts",
  		"pages-about-us-submenu3-about-us-submenu3-module"
  	],
  	"./pages/about-us/about-us.module": [
  		"./src/app/pages/about-us/about-us.module.ts",
  		"pages-about-us-about-us-module"
  	],
  	"./pages/contact-us-submenu1/contact-us-submenu1.module": [
  		"./src/app/pages/contact-us-submenu1/contact-us-submenu1.module.ts",
  		"pages-contact-us-submenu1-contact-us-submenu1-module"
  	],
  	"./pages/contact-us-submenu2/contact-us-submenu2.module": [
  		"./src/app/pages/contact-us-submenu2/contact-us-submenu2.module.ts",
  		"pages-contact-us-submenu2-contact-us-submenu2-module"
  	],
  	"./pages/contact-us-submenu3/contact-us-submenu3.module": [
  		"./src/app/pages/contact-us-submenu3/contact-us-submenu3.module.ts",
  		"pages-contact-us-submenu3-contact-us-submenu3-module"
  	],
  	"./pages/contact-us/contact-us.module": [
  		"./src/app/pages/contact-us/contact-us.module.ts",
  		"pages-contact-us-contact-us-module"
  	],
  	"./pages/join-us-submenu1/join-us-submenu1.module": [
  		"./src/app/pages/join-us-submenu1/join-us-submenu1.module.ts",
  		"pages-join-us-submenu1-join-us-submenu1-module"
  	],
  	"./pages/join-us-submenu2/join-us-submenu2.module": [
  		"./src/app/pages/join-us-submenu2/join-us-submenu2.module.ts",
  		"pages-join-us-submenu2-join-us-submenu2-module"
  	],
  	"./pages/join-us/join-us.module": [
  		"./src/app/pages/join-us/join-us.module.ts",
  		"pages-join-us-join-us-module"
  	],
  	"./pages/submenu2/submenu2.module": [
  		"./src/app/pages/submenu2/submenu2.module.ts",
  		"pages-submenu2-submenu2-module"
  	],
  	"./pages/submenu3/submenu3.module": [
  		"./src/app/pages/submenu3/submenu3.module.ts",
  		"pages-submenu3-submenu3-module"
  	]
  };
  function webpackAsyncContext(req) {
  	if(!__webpack_require__.o(map, req)) {
  		return Promise.resolve().then(function() {
  			var e = new Error("Cannot find module '" + req + "'");
  			e.code = 'MODULE_NOT_FOUND';
  			throw e;
  		});
  	}
  
  	var ids = map[req], id = ids[0];
  	return Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {
  		return __webpack_require__(id);
  	});
  }
  webpackAsyncContext.keys = function webpackAsyncContextKeys() {
  	return Object.keys(map);
  };
  webpackAsyncContext.id = "./src/$$_lazy_route_resource lazy recursive";
  module.exports = webpackAsyncContext;
  
  /***/ }),
  
  /***/ "./src/app/alerts/form/form.module.ts":
  /*!********************************************!*\
    !*** ./src/app/alerts/form/form.module.ts ***!
    \********************************************/
  /*! exports provided: FormPageModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FormPageModule", function() { return FormPageModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/fesm5/common.js");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var _form_page__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./form.page */ "./src/app/alerts/form/form.page.ts");
  /* harmony import */ var _components_components_module__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../components/components.module */ "./src/app/components/components.module.ts");
  /* harmony import */ var _app_services_auth_service__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../app/services/auth.service */ "./src/app/services/auth.service.ts");
  /* harmony import */ var _app_firebase_firebase_integration_service__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../app/firebase/firebase-integration.service */ "./src/app/firebase/firebase-integration.service.ts");
  
  
  
  
  
  
  
  
  
  
  var routes = [
      {
          path: "",
          component: _form_page__WEBPACK_IMPORTED_MODULE_6__["FormPage"]
      }
  ];
  var FormPageModule = /** @class */ (function () {
      function FormPageModule() {
      }
      FormPageModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["NgModule"])({
              imports: [
                  _angular_common__WEBPACK_IMPORTED_MODULE_2__["CommonModule"],
                  _angular_forms__WEBPACK_IMPORTED_MODULE_3__["FormsModule"],
                  _ionic_angular__WEBPACK_IMPORTED_MODULE_5__["IonicModule"],
                  _angular_forms__WEBPACK_IMPORTED_MODULE_3__["ReactiveFormsModule"],
                  _angular_router__WEBPACK_IMPORTED_MODULE_4__["RouterModule"].forChild(routes),
                  _components_components_module__WEBPACK_IMPORTED_MODULE_7__["ComponentsModule"]
              ],
              declarations: [_form_page__WEBPACK_IMPORTED_MODULE_6__["FormPage"]],
              providers: [_app_services_auth_service__WEBPACK_IMPORTED_MODULE_8__["AuthService"], _app_firebase_firebase_integration_service__WEBPACK_IMPORTED_MODULE_9__["FirebaseService"]]
          })
      ], FormPageModule);
      return FormPageModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/alerts/form/form.page.scss":
  /*!********************************************!*\
    !*** ./src/app/alerts/form/form.page.scss ***!
    \********************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FsZXJ0cy9mb3JtL2Zvcm0ucGFnZS5zY3NzIn0= */"
  
  /***/ }),
  
  /***/ "./src/app/alerts/form/form.page.ts":
  /*!******************************************!*\
    !*** ./src/app/alerts/form/form.page.ts ***!
    \******************************************/
  /*! exports provided: FormPage */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FormPage", function() { return FormPage; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var FormPage = /** @class */ (function () {
      function FormPage() {
      }
      FormPage.prototype.ngOnInit = function () { };
      FormPage = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-form",
              template: __webpack_require__(/*! raw-loader!./form.page.html */ "./node_modules/raw-loader/index.js!./src/app/alerts/form/form.page.html"),
              styles: [__webpack_require__(/*! ./form.page.scss */ "./src/app/alerts/form/form.page.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], FormPage);
      return FormPage;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/app-routing.module.ts":
  /*!***************************************!*\
    !*** ./src/app/app-routing.module.ts ***!
    \***************************************/
  /*! exports provided: AppRoutingModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppRoutingModule", function() { return AppRoutingModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  
  
  
  var routes = [
      // {
      //   path: "firebase/home",
      //   loadChildren: "./categories/categories.module#CategoriesPageModule"
      // },
      // { path: "", redirectTo: "/firebase/user-profile", pathMatch: "full" },
      { path: "", redirectTo: "/app/auth/signup", pathMatch: "full" },
      {
          path: "contact-us",
          loadChildren: "./pages/contact-us/contact-us.module#ContactUsPageModule"
      },
      {
          path: "about-us",
          loadChildren: "./pages/about-us/about-us.module#AboutUsPageModule"
      },
      {
          path: "join-us",
          loadChildren: "./pages/join-us/join-us.module#JoinUsPageModule"
      },
      {
          path: "about-us-submenu1",
          loadChildren: "./pages/about-us-submenu1/about-us-submenu1.module#AboutUsSubmenu1PageModule"
      },
      {
          path: "about-us-submenu2",
          loadChildren: "./pages/about-us-submenu2/about-us-submenu2.module#AboutUsSubmenu2PageModule"
      },
      {
          path: "about-us-submenu3",
          loadChildren: "./pages/about-us-submenu3/about-us-submenu3.module#AboutUsSubmenu3PageModule"
      },
      {
          path: "contact-us-submenu1",
          loadChildren: "./pages/contact-us-submenu1/contact-us-submenu1.module#ContactUsSubmenu1PageModule"
      },
      {
          path: "submenu2",
          loadChildren: "./pages/submenu2/submenu2.module#Submenu2PageModule"
      },
      {
          path: "contact-us-submenu2",
          loadChildren: "./pages/contact-us-submenu2/contact-us-submenu2.module#ContactUsSubmenu2PageModule"
      },
      {
          path: "contact-us-submenu3",
          loadChildren: "./pages/contact-us-submenu3/contact-us-submenu3.module#ContactUsSubmenu3PageModule"
      },
      {
          path: "walkthrough",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | walkthrough-walkthrough-module */ "walkthrough-walkthrough-module").then(__webpack_require__.bind(null, /*! ./walkthrough/walkthrough.module */ "./src/app/walkthrough/walkthrough.module.ts")).then(function (m) { return m.WalkthroughPageModule; });
          }
      },
      // {
      //   path: "getting-started",
      //   loadChildren: () =>
      //     import("./getting-started/getting-started.module").then(
      //       m => m.GettingStartedPageModule
      //     )
      // },
      {
          path: "auth/login",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | login-login-module */ "login-login-module").then(__webpack_require__.bind(null, /*! ./login/login.module */ "./src/app/login/login.module.ts")).then(function (m) { return m.LoginPageModule; });
          }
      },
      {
          path: "auth/signup",
          loadChildren: function () {
              return Promise.all(/*! import() | signup-signup-module */[__webpack_require__.e("default~firebase-firebase-integration-module~signup-signup-module"), __webpack_require__.e("common"), __webpack_require__.e("signup-signup-module")]).then(__webpack_require__.bind(null, /*! ./signup/signup.module */ "./src/app/signup/signup.module.ts")).then(function (m) { return m.SignupPageModule; });
          }
      },
      {
          path: "auth/forgot-password",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | forgot-password-forgot-password-module */ "forgot-password-forgot-password-module").then(__webpack_require__.bind(null, /*! ./forgot-password/forgot-password.module */ "./src/app/forgot-password/forgot-password.module.ts")).then(function (m) { return m.ForgotPasswordPageModule; });
          }
      },
      {
          path: "app",
          loadChildren: function () { return __webpack_require__.e(/*! import() | tabs-tabs-module */ "tabs-tabs-module").then(__webpack_require__.bind(null, /*! ./tabs/tabs.module */ "./src/app/tabs/tabs.module.ts")).then(function (m) { return m.TabsPageModule; }); }
      },
      {
          path: "contact-card",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | contact-card-contact-card-module */ "contact-card-contact-card-module").then(__webpack_require__.bind(null, /*! ./contact-card/contact-card.module */ "./src/app/contact-card/contact-card.module.ts")).then(function (m) { return m.ContactCardPageModule; });
          }
      },
      // tslint:disable-next-line:max-line-length
      {
          path: "forms-and-validations",
          loadChildren: function () {
              return Promise.all(/*! import() | forms-validations-forms-validations-module */[__webpack_require__.e("common"), __webpack_require__.e("forms-validations-forms-validations-module")]).then(__webpack_require__.bind(null, /*! ./forms/validations/forms-validations.module */ "./src/app/forms/validations/forms-validations.module.ts")).then(function (m) { return m.FormsValidationsPageModule; });
          }
      },
      {
          path: "forms-filters",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | forms-filters-forms-filters-module */ "forms-filters-forms-filters-module").then(__webpack_require__.bind(null, /*! ./forms/filters/forms-filters.module */ "./src/app/forms/filters/forms-filters.module.ts")).then(function (m) { return m.FormsFiltersPageModule; });
          }
      },
      {
          path: "page-not-found",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | page-not-found-page-not-found-module */ "page-not-found-page-not-found-module").then(__webpack_require__.bind(null, /*! ./page-not-found/page-not-found.module */ "./src/app/page-not-found/page-not-found.module.ts")).then(function (m) { return m.PageNotFoundModule; });
          }
      },
      {
          path: "showcase",
          loadChildren: function () {
              return __webpack_require__.e(/*! import() | showcase-showcase-module */ "showcase-showcase-module").then(__webpack_require__.bind(null, /*! ./showcase/showcase.module */ "./src/app/showcase/showcase.module.ts")).then(function (m) { return m.ShowcasePageModule; });
          }
      },
      {
          // "firebase"
          path: "firebase",
          loadChildren: function () {
              return Promise.all(/*! import() | firebase-firebase-integration-module */[__webpack_require__.e("default~firebase-firebase-integration-module~signup-signup-module"), __webpack_require__.e("default~firebase-firebase-integration-module~notifications-notifications-module"), __webpack_require__.e("firebase-firebase-integration-module")]).then(__webpack_require__.bind(null, /*! ./firebase/firebase-integration.module */ "./src/app/firebase/firebase-integration.module.ts")).then(function (m) { return m.FirebaseIntegrationModule; });
          }
      },
      {
          path: "maps",
          loadChildren: function () { return __webpack_require__.e(/*! import() | maps-maps-module */ "maps-maps-module").then(__webpack_require__.bind(null, /*! ./maps/maps.module */ "./src/app/maps/maps.module.ts")).then(function (m) { return m.MapsPageModule; }); }
      },
      { path: "**", redirectTo: "page-not-found" },
      { path: "form", loadChildren: "./alerts/form/form.module#FormPageModule" },
      {
          path: "join-us-submenu1",
          loadChildren: "./pages/join-us-submenu1/join-us-submenu1.module#JoinUsSubmenu1PageModule"
      },
      {
          path: "join-us-submenu2",
          loadChildren: "./pages/join-us-submenu2/join-us-submenu2.module#JoinUsSubmenu2PageModule"
      },
      {
          path: "submenu3",
          loadChildren: "./pages/submenu3/submenu3.module#Submenu3PageModule"
      },
  ];
  var AppRoutingModule = /** @class */ (function () {
      function AppRoutingModule() {
      }
      AppRoutingModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["NgModule"])({
              imports: [_angular_router__WEBPACK_IMPORTED_MODULE_2__["RouterModule"].forRoot(routes)],
              exports: [_angular_router__WEBPACK_IMPORTED_MODULE_2__["RouterModule"]]
          })
      ], AppRoutingModule);
      return AppRoutingModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/app.component.ts":
  /*!**********************************!*\
    !*** ./src/app/app.component.ts ***!
    \**********************************/
  /*! exports provided: AppComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppComponent", function() { return AppComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _capacitor_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @capacitor/core */ "./node_modules/@capacitor/core/dist/esm/index.js");
  /* harmony import */ var _ngx_translate_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ngx-translate/core */ "./node_modules/@ngx-translate/core/fesm5/ngx-translate-core.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! firebase */ "./node_modules/firebase/dist/index.cjs.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(firebase__WEBPACK_IMPORTED_MODULE_5__);
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _services_auth_service__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./services/auth.service */ "./src/app/services/auth.service.ts");
  /* harmony import */ var _ionic_storage__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @ionic/storage */ "./node_modules/@ionic/storage/fesm5/ionic-storage.js");
  /* harmony import */ var _assets_ionInvoiceList_json__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../assets/ionInvoiceList.json */ "./src/assets/ionInvoiceList.json");
  var _assets_ionInvoiceList_json__WEBPACK_IMPORTED_MODULE_9___namespace = /*#__PURE__*/__webpack_require__.t(/*! ../assets/ionInvoiceList.json */ "./src/assets/ionInvoiceList.json", 1);
  /* harmony import */ var _assets_categories_json__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../assets/categories.json */ "./src/assets/categories.json");
  var _assets_categories_json__WEBPACK_IMPORTED_MODULE_10___namespace = /*#__PURE__*/__webpack_require__.t(/*! ../assets/categories.json */ "./src/assets/categories.json", 1);
  
  
  
  var SplashScreen = _capacitor_core__WEBPACK_IMPORTED_MODULE_2__["Plugins"].SplashScreen;
  
  
  
  
  
  
  
  
  // import { FirebaseService } from "./firebase/firebase-integration.service";
  var AppComponent = /** @class */ (function () {
      // contactsList: any;
      // companyProfile: any;
      // itemsList: any;
      function AppComponent(
      // private firebaseService: FirebaseService,
      authService, platform, translate, menu, router, navCtrl, storage) {
          this.authService = authService;
          this.platform = platform;
          this.translate = translate;
          this.menu = menu;
          this.router = router;
          this.navCtrl = navCtrl;
          this.storage = storage;
          this.ionInvoice = _assets_ionInvoiceList_json__WEBPACK_IMPORTED_MODULE_9__;
          this.categories = _assets_categories_json__WEBPACK_IMPORTED_MODULE_10__;
          // accountPages = [
          //   {
          //     title: "Log In",
          //     url: "/auth/login",
          //     icon: "./assets/sample-icons/side-menu/login.svg"
          //   },
          //   {
          //     title: "Sign Up",
          //     url: "/auth/signup",
          //     icon: "./assets/sample-icons/side-menu/signup.svg"
          //   },
          //   {
          //     title: "About Us",
          //     url: "/pages/about-us",
          //     icon: "./assets/sample-icons/side-menu/tutorial.svg"
          //   },
          //   {
          //     title: "Join Us",
          //     url: "/pages/join-us",
          //     icon: "./assets/sample-icons/side-menu/getting-started.svg"
          //   },
          //   {
          //     title: "Contact Us",
          //     url: "/pages/contact-us",
          //     icon: "./assets/sample-icons/side-menu/warning.svg"
          //   },
          //   {
          //     title: "Tutorial",
          //     url: "/walkthrough",
          //     icon: "./assets/sample-icons/side-menu/tutorial.svg"
          //   },
          //   {
          //     title: "Getting Started",
          //     url: "/getting-started",
          //     icon: "./assets/sample-icons/side-menu/getting-started.svg"
          //   },
          //   {
          //     title: "404 page",
          //     url: "/page-not-found",
          //     icon: "./assets/sample-icons/side-menu/warning.svg"
          //   }
          // ];
          this.textDir = "ltr";
          this.ionInvoice = _assets_ionInvoiceList_json__WEBPACK_IMPORTED_MODULE_9__;
          this.categories = _assets_categories_json__WEBPACK_IMPORTED_MODULE_10__;
          console.log(this.categories, this.ionInvoice);
          // Initialize the FirebaseUI Widget using Firebase.
          // this.ui =
          //   firebaseui.auth.AuthUI.getInstance() ||
          //   new firebaseui.auth.AuthUI(firebase.auth());
          //    this.ui = new firebaseui.auth.AuthUI(firebase.auth());
          this.initializeApp();
          this.checkUserStatus();
          this.setLanguage();
      }
      AppComponent.prototype.initializeApp = function () {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () {
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
                  // try {
                  //   await SplashScreen.hide();
                  // } catch (err) {
                  //   console.log("This is normal in a browser", err);
                  // }
                  this.platform.ready().then(function () {
                      // this.statusBar.styleDefault();
                      SplashScreen.hide();
                  });
                  return [2 /*return*/];
              });
          });
      };
      AppComponent.prototype.setLanguage = function () {
          // this language will be used as a fallback when a translation isn't found in the current language
          this.translate.setDefaultLang("en");
          // the lang to use, if the lang isn't available, it will use the current loader to get them
          this.translate.use("en");
          // this is to determine the text direction depending on the selected language
          // for the purpose of this example we determine that only arabic and hebrew are RTL.
          // this.translate.onLangChange.subscribe((event: LangChangeEvent) => {
          //   this.textDir = (event.lang === 'ar' || event.lang === 'iw') ? 'rtl' : 'ltr';
          // });
      };
      AppComponent.prototype.ionViewOnEnter = function () {
          console.log("app on enter");
          var userDetails = this.authService.userDetails();
          console.log(userDetails);
          this.checkUserStatus();
      };
      AppComponent.prototype.onUserPage = function () {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () { return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
              return [2 /*return*/];
          }); });
      };
      // async presentPopover(ev: any) {
      //   const popover = await this.popoverController.create({
      //    component: PopOverComponent,
      //     event: ev,
      //     translucent: true
      //   });
      //   return await popover.present();
      // }
      AppComponent.prototype.ionViewDidLoad = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_5__["auth"]().onAuthStateChanged(function (user) {
              if (user) {
                  console.log(user);
                  _this.uid = user.uid;
              }
              else {
                  console.log("Not authenticated");
                  // No user is signed in.
              }
          });
      };
      AppComponent.prototype.checkUserStatus = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_5__["auth"]().onAuthStateChanged(function (user) {
              if (user) {
                  // User is signed in.
                  var isAnonymous_1 = user.isAnonymous;
                  _this.uid = user.uid;
                  _this.displayName = user.displayName;
                  _this.photoURL = user.photoURL;
                  console.log(user, _this.photoURL, _this.displayName);
                  var displayName_1 = user.displayName;
                  var email_1 = user.email;
                  var emailVerified = user.emailVerified;
                  var photoURL_1 = user.photoURL;
                  var uid_1 = user.uid;
                  var phoneNumber = user.phoneNumber;
                  var providerData = user.providerData;
                  user.getIdToken().then(function (accessToken) {
                      console.log("accessToken: ", accessToken);
                      // document.getElementById("sign-in-status").textContent = "Signed in";
                      // document.getElementById("sign-in").textContent = "Sign out";
                      _this.signin = "Sign out";
                      _this.isAnonymous = isAnonymous_1;
                      _this.displayName = displayName_1;
                      _this.uid = uid_1;
                      _this.email = email_1;
                      _this.photoURL = photoURL_1;
                  });
                  // this.navCtrl.navigateForward("/firebase/categories");
                  // this.navCtrl.navigateForward("/firebase/categories");
                  _this.navCtrl.navigateForward("/firebase/user-profile");
              }
              else {
                  // User is signed out.
                  // document.getElementById("sign-in-status").textContent = "Signed out";
                  // document.getElementById("sign-in").textContent = "Sign in";
                  _this.signin = "Sign in";
                  // document.getElementById("account-details").textContent = "null";
                  //    this.navCtrl.navigateForward("/auth/signup");
              }
          }, function (error) {
              console.log(error);
          });
      };
      AppComponent.prototype.ngOnInit = function () {
          // Called after the constructor, initializing input properties, and the first call to ngOnChanges.
          // Add 'implements OnInit' to the class.
      };
      AppComponent.prototype.onDismiss = function () {
          this.menu.close();
          console.log("menu clicked");
      };
      AppComponent.prototype.onSignOut = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_5__["auth"]().onAuthStateChanged(function (user) {
              if (user) {
                  // User is signed in.
                  var isAnonymous_2 = user.isAnonymous;
                  _this.uid = user.uid;
                  _this.displayName = user.displayName;
                  _this.photoURL = user.photoURL;
                  console.log(user, isAnonymous_2);
                  var displayName_2 = user.displayName;
                  var email_2 = user.email;
                  var emailVerified = user.emailVerified;
                  var photoURL_2 = user.photoURL;
                  var uid_2 = user.uid;
                  var phoneNumber = user.phoneNumber;
                  var providerData = user.providerData;
                  user.getIdToken().then(function (accessToken) {
                      console.log("accessToken: ", accessToken);
                      // document.getElementById("sign-in-status").textContent = "Signed in";
                      // document.getElementById("sign-in").textContent = "Sign out";
                      _this.signin = "Sign out";
                      _this.isAnonymous = isAnonymous_2;
                      _this.displayName = displayName_2;
                      _this.uid = uid_2;
                      _this.email = email_2;
                      _this.photoURL = photoURL_2;
                  });
                  firebase__WEBPACK_IMPORTED_MODULE_5__["auth"]()
                      .signOut()
                      .then(function () {
                      _this.storage.remove("firebaseui::rememberedAccounts");
                      console.log("signed out");
                      // User is signed out.
                      // document.getElementById("sign-in-status").textContent =
                      // "Signed out";
                      // document.getElementById("sign-in").textContent = "Sign in";
                      _this.signin = "Sign in";
                      // document.getElementById("account-details").textContent = "null";
                      //      this.navCtrl.navigateForward("/app/auth/signup");
                  })
                      .catch(function (error) { });
              }
              else {
                  // User is signed out.
                  // document.getElementById("sign-in-status").textContent = "Signed out";
                  // document.getElementById("sign-in").textContent = "Sign in";
                  _this.signin = "Sign in";
                  // document.getElementById("account-details").textContent = "null";
                  //    this.navCtrl.navigateForward("/auth/signup");
              }
          }, function (error) {
              console.log(error);
          });
      };
      // hideTooltipbar() {
      //   console.log("hi");
      //   document.getElementById("tooltipbar").style.display = "none";
      // }
      AppComponent.prototype.onCloseMenu = function () {
          this.menu.close();
      };
      // onSubCatePage(key, keyvalue) {
      //   console.log(key, keyvalue);
      //   this.FilterForm = new FormGroup({
      //     cate: new FormControl(key),
      //     subcate: new FormControl(keyvalue),
      //     class_size: new FormControl({ lower: "", upper: "" }),
      //     target_user_age: new FormControl({ lower: "", upper: "" }),
      //     class_length: new FormControl({ lower: "", upper: "" }),
      //     teaching_materials: new FormControl(""),
      //     message_teaching_materials: new FormControl(""),
      //     sq_timelimit: new FormControl(""),
      //     message: new FormControl("")
      //   });
      //   const value = this.FilterForm.value;
      //   const data = JSON.stringify(value);
      //   const navigationExtras: NavigationExtras = {
      //     queryParams: {
      //       data: data
      //     }
      //   }
      //   console.log('subcate', value);
      //   this.navCtrl.navigateForward(['/firebase/real-estate'], navigationExtras);
      // }
      AppComponent.prototype.onDashboardPage = function () {
          this.navCtrl.navigateRoot(["/firebase/user-profile"]);
      };
      AppComponent.prototype.onContactPage = function () {
          this.navCtrl.navigateRoot(["/firebase/contacts"]);
      };
      AppComponent.prototype.onItemPage = function () {
          this.navCtrl.navigateRoot(["/firebase/inventory/items"]);
      };
      AppComponent.prototype.onEstimatesPage = function () {
          this.navCtrl.navigateRoot(["/firebase/quotes"]);
      };
      AppComponent.prototype.onInvoicesPage = function () {
          this.navCtrl.navigateRoot(["/firebase/invoices"]);
      };
      AppComponent.prototype.onPaymentsReceivedPage = function () {
          this.navCtrl.navigateRoot(["/firebase/paymentsrec"]);
      };
      AppComponent.prototype.onExpensesPage = function () {
          this.navCtrl.navigateRoot(["/firebase/expenses"]);
      };
      AppComponent.prototype.onCreditNotesPage = function () {
          this.navCtrl.navigateRoot(["/firebase/creditnotes"]);
      };
      AppComponent.ctorParameters = function () { return [
          { type: _services_auth_service__WEBPACK_IMPORTED_MODULE_7__["AuthService"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["Platform"] },
          { type: _ngx_translate_core__WEBPACK_IMPORTED_MODULE_3__["TranslateService"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["MenuController"] },
          { type: _angular_router__WEBPACK_IMPORTED_MODULE_6__["Router"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["NavController"] },
          { type: _ionic_storage__WEBPACK_IMPORTED_MODULE_8__["Storage"] }
      ]; };
      AppComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-root",
              template: __webpack_require__(/*! raw-loader!./app.component.html */ "./node_modules/raw-loader/index.js!./src/app/app.component.html"),
              styles: [__webpack_require__(/*! ./side-menu/styles/side-menu.scss */ "./src/app/side-menu/styles/side-menu.scss"), __webpack_require__(/*! ./side-menu/styles/side-menu.shell.scss */ "./src/app/side-menu/styles/side-menu.shell.scss"), __webpack_require__(/*! ./side-menu/styles/side-menu.responsive.scss */ "./src/app/side-menu/styles/side-menu.responsive.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_services_auth_service__WEBPACK_IMPORTED_MODULE_7__["AuthService"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["Platform"],
              _ngx_translate_core__WEBPACK_IMPORTED_MODULE_3__["TranslateService"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["MenuController"],
              _angular_router__WEBPACK_IMPORTED_MODULE_6__["Router"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["NavController"],
              _ionic_storage__WEBPACK_IMPORTED_MODULE_8__["Storage"]])
      ], AppComponent);
      return AppComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/app.module.ts":
  /*!*******************************!*\
    !*** ./src/app/app.module.ts ***!
    \*******************************/
  /*! exports provided: createTranslateLoader, AppModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createTranslateLoader", function() { return createTranslateLoader; });
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppModule", function() { return AppModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/platform-browser */ "./node_modules/@angular/platform-browser/fesm5/platform-browser.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var _app_routing_module__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./app-routing.module */ "./src/app/app-routing.module.ts");
  /* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./app.component */ "./src/app/app.component.ts");
  /* harmony import */ var _components_components_module__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/components.module */ "./src/app/components/components.module.ts");
  /* harmony import */ var _angular_service_worker__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @angular/service-worker */ "./node_modules/@angular/service-worker/fesm5/service-worker.js");
  /* harmony import */ var _ionic_storage__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @ionic/storage */ "./node_modules/@ionic/storage/fesm5/ionic-storage.js");
  /* harmony import */ var _environments_environment__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../environments/environment */ "./src/environments/environment.ts");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  /* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/fesm5/http.js");
  /* harmony import */ var _ngx_translate_core__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @ngx-translate/core */ "./node_modules/@ngx-translate/core/fesm5/ngx-translate-core.js");
  /* harmony import */ var _ngx_translate_http_loader__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @ngx-translate/http-loader */ "./node_modules/@ngx-translate/http-loader/fesm5/ngx-translate-http-loader.js");
  /* harmony import */ var _alerts_form_form_module__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./alerts/form/form.module */ "./src/app/alerts/form/form.module.ts");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! firebase */ "./node_modules/firebase/dist/index.cjs.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(firebase__WEBPACK_IMPORTED_MODULE_16__);
  /* harmony import */ var _pop_over_pop_over_component__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./pop-over/pop-over.component */ "./src/app/pop-over/pop-over.component.ts");
  /* harmony import */ var _services_auth_service__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./services/auth.service */ "./src/app/services/auth.service.ts");
  /* harmony import */ var _user_friends_user_friends_module__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./user/friends/user-friends.module */ "./src/app/user/friends/user-friends.module.ts");
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  // import { FormAlertPageModule } from "./alerts/form-alert/form-alert.module";
  // import { BypasssanitizeDirective } from "./directives/bypasssanitize.directive";
  // import { DropzoneDirective } from './directives/dropzone.directive';
  function createTranslateLoader(http) {
      return new _ngx_translate_http_loader__WEBPACK_IMPORTED_MODULE_14__["TranslateHttpLoader"](http, "./assets/i18n/", ".json");
  }
  firebase__WEBPACK_IMPORTED_MODULE_16__["initializeApp"](_environments_environment__WEBPACK_IMPORTED_MODULE_10__["environment"].firebase);
  var AppModule = /** @class */ (function () {
      function AppModule() {
      }
      AppModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["NgModule"])({
              declarations: [_app_component__WEBPACK_IMPORTED_MODULE_6__["AppComponent"], _pop_over_pop_over_component__WEBPACK_IMPORTED_MODULE_17__["PopOverComponent"]],
              imports: [
                  _angular_platform_browser__WEBPACK_IMPORTED_MODULE_2__["BrowserModule"],
                  _ionic_storage__WEBPACK_IMPORTED_MODULE_9__["IonicStorageModule"].forRoot(),
                  _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["IonicModule"].forRoot(),
                  _angular_forms__WEBPACK_IMPORTED_MODULE_11__["ReactiveFormsModule"],
                  _app_routing_module__WEBPACK_IMPORTED_MODULE_5__["AppRoutingModule"],
                  _components_components_module__WEBPACK_IMPORTED_MODULE_7__["ComponentsModule"],
                  _alerts_form_form_module__WEBPACK_IMPORTED_MODULE_15__["FormPageModule"],
                  _user_friends_user_friends_module__WEBPACK_IMPORTED_MODULE_19__["UserFriendsPageModule"],
                  // FormsValidationsPageModule,
                  _angular_service_worker__WEBPACK_IMPORTED_MODULE_8__["ServiceWorkerModule"].register("/ngsw-worker.js", {
                      enabled: _environments_environment__WEBPACK_IMPORTED_MODULE_10__["environment"].production
                  }),
                  _angular_common_http__WEBPACK_IMPORTED_MODULE_12__["HttpClientModule"],
                  _ngx_translate_core__WEBPACK_IMPORTED_MODULE_13__["TranslateModule"].forRoot({
                      loader: {
                          provide: _ngx_translate_core__WEBPACK_IMPORTED_MODULE_13__["TranslateLoader"],
                          useFactory: createTranslateLoader,
                          deps: [_angular_common_http__WEBPACK_IMPORTED_MODULE_12__["HttpClient"]]
                      }
                  })
              ],
              entryComponents: [_pop_over_pop_over_component__WEBPACK_IMPORTED_MODULE_17__["PopOverComponent"]],
              providers: [
                  _services_auth_service__WEBPACK_IMPORTED_MODULE_18__["AuthService"],
                  {
                      provide: _angular_router__WEBPACK_IMPORTED_MODULE_3__["RouteReuseStrategy"],
                      useClass: _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["IonicRouteStrategy"]
                  }
              ],
              bootstrap: [_app_component__WEBPACK_IMPORTED_MODULE_6__["AppComponent"]]
          })
      ], AppModule);
      return AppModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/checkbox-wrapper/checkbox-wrapper.component.scss":
  /*!*****************************************************************************!*\
    !*** ./src/app/components/checkbox-wrapper/checkbox-wrapper.component.scss ***!
    \*****************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  display: block;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2NoZWNrYm94LXdyYXBwZXIvY2hlY2tib3gtd3JhcHBlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jaGVja2JveC13cmFwcGVyL2NoZWNrYm94LXdyYXBwZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxjQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NoZWNrYm94LXdyYXBwZXIvY2hlY2tib3gtd3JhcHBlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCI6aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/checkbox-wrapper/checkbox-wrapper.component.ts":
  /*!***************************************************************************!*\
    !*** ./src/app/components/checkbox-wrapper/checkbox-wrapper.component.ts ***!
    \***************************************************************************/
  /*! exports provided: CheckboxWrapperComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CheckboxWrapperComponent", function() { return CheckboxWrapperComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  
  // Reference to the @ionic/angular Components List:
  // https://github.com/ionic-team/ionic/blob/master/angular/src/directives/proxies.ts
  
  var CheckboxWrapperComponent = /** @class */ (function () {
      function CheckboxWrapperComponent() {
      }
      CheckboxWrapperComponent.prototype.ngAfterContentInit = function () {
          var _this = this;
          // ContentChild is set
          this.isChecked = this.checkbox.checked;
          // Subscribe to changes
          this.checkbox.ionChange.subscribe(function (changes) {
              _this.isChecked = changes.detail.checked;
          });
      };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["ContentChild"])(_ionic_angular__WEBPACK_IMPORTED_MODULE_2__["IonCheckbox"], { static: false }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["IonCheckbox"])
      ], CheckboxWrapperComponent.prototype, "checkbox", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])('class.checkbox-checked'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Boolean)
      ], CheckboxWrapperComponent.prototype, "isChecked", void 0);
      CheckboxWrapperComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-checkbox-wrapper',
              template: __webpack_require__(/*! raw-loader!./checkbox-wrapper.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/checkbox-wrapper/checkbox-wrapper.component.html"),
              styles: [__webpack_require__(/*! ./checkbox-wrapper.component.scss */ "./src/app/components/checkbox-wrapper/checkbox-wrapper.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], CheckboxWrapperComponent);
      return CheckboxWrapperComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/components.module.ts":
  /*!*************************************************!*\
    !*** ./src/app/components/components.module.ts ***!
    \*************************************************/
  /*! exports provided: ComponentsModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ComponentsModule", function() { return ComponentsModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/fesm5/common.js");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var _shell_shell_module__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shell/shell.module */ "./src/app/shell/shell.module.ts");
  /* harmony import */ var _checkbox_wrapper_checkbox_wrapper_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./checkbox-wrapper/checkbox-wrapper.component */ "./src/app/components/checkbox-wrapper/checkbox-wrapper.component.ts");
  /* harmony import */ var _show_hide_password_show_hide_password_component__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./show-hide-password/show-hide-password.component */ "./src/app/components/show-hide-password/show-hide-password.component.ts");
  /* harmony import */ var _countdown_timer_countdown_timer_component__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./countdown-timer/countdown-timer.component */ "./src/app/components/countdown-timer/countdown-timer.component.ts");
  /* harmony import */ var _counter_input_counter_input_component__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./counter-input/counter-input.component */ "./src/app/components/counter-input/counter-input.component.ts");
  /* harmony import */ var _rating_input_rating_input_component__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./rating-input/rating-input.component */ "./src/app/components/rating-input/rating-input.component.ts");
  /* harmony import */ var _google_map_google_map_component__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./google-map/google-map.component */ "./src/app/components/google-map/google-map.component.ts");
  /* harmony import */ var _header_header_component__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./header/header.component */ "./src/app/components/header/header.component.ts");
  /* harmony import */ var _global_banner_global_banner_component__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./global-banner/global-banner.component */ "./src/app/components/global-banner/global-banner.component.ts");
  /* harmony import */ var _fab_button_fab_button_component__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./fab-button/fab-button.component */ "./src/app/components/fab-button/fab-button.component.ts");
  /* harmony import */ var _global_footer_global_footer_component__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./global-footer/global-footer.component */ "./src/app/components/global-footer/global-footer.component.ts");
  /* harmony import */ var _search_form_search_form_component__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./search-form/search-form.component */ "./src/app/components/search-form/search-form.component.ts");
  /* harmony import */ var _uploader_uploader_component__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./uploader/uploader.component */ "./src/app/components/uploader/uploader.component.ts");
  /* harmony import */ var _upload_task_upload_task_component__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./upload-task/upload-task.component */ "./src/app/components/upload-task/upload-task.component.ts");
  /* harmony import */ var _directives_dropzone_directive__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../directives/dropzone.directive */ "./src/app/directives/dropzone.directive.ts");
  /* harmony import */ var _upload_task_sq_upload_task_sq_component__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./upload-task-sq/upload-task-sq.component */ "./src/app/components/upload-task-sq/upload-task-sq.component.ts");
  /* harmony import */ var _uploader_sq_uploader_sq_component__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./uploader-sq/uploader-sq.component */ "./src/app/components/uploader-sq/uploader-sq.component.ts");
  /* harmony import */ var _upload_task_bulk_import_upload_task_bulk_import_component__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./upload-task-bulk-import/upload-task-bulk-import.component */ "./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.ts");
  /* harmony import */ var _uploader_bulk_import_uploader_bulk_import_component__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./uploader-bulk-import/uploader-bulk-import.component */ "./src/app/components/uploader-bulk-import/uploader-bulk-import.component.ts");
  /* harmony import */ var _nodata_nodata_component__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./nodata/nodata.component */ "./src/app/components/nodata/nodata.component.ts");
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  var ComponentsModule = /** @class */ (function () {
      function ComponentsModule() {
      }
      ComponentsModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["NgModule"])({
              imports: [_angular_common__WEBPACK_IMPORTED_MODULE_2__["CommonModule"], _angular_forms__WEBPACK_IMPORTED_MODULE_3__["FormsModule"], _shell_shell_module__WEBPACK_IMPORTED_MODULE_5__["ShellModule"], _ionic_angular__WEBPACK_IMPORTED_MODULE_4__["IonicModule"].forRoot()],
              declarations: [
                  _checkbox_wrapper_checkbox_wrapper_component__WEBPACK_IMPORTED_MODULE_6__["CheckboxWrapperComponent"],
                  _show_hide_password_show_hide_password_component__WEBPACK_IMPORTED_MODULE_7__["ShowHidePasswordComponent"],
                  _countdown_timer_countdown_timer_component__WEBPACK_IMPORTED_MODULE_8__["CountdownTimerComponent"],
                  _counter_input_counter_input_component__WEBPACK_IMPORTED_MODULE_9__["CounterInputComponent"],
                  _rating_input_rating_input_component__WEBPACK_IMPORTED_MODULE_10__["RatingInputComponent"],
                  _google_map_google_map_component__WEBPACK_IMPORTED_MODULE_11__["GoogleMapComponent"],
                  _header_header_component__WEBPACK_IMPORTED_MODULE_12__["HeaderComponent"],
                  _fab_button_fab_button_component__WEBPACK_IMPORTED_MODULE_14__["FabButtonComponent"],
                  _global_banner_global_banner_component__WEBPACK_IMPORTED_MODULE_13__["GlobalBannerComponent"],
                  _global_footer_global_footer_component__WEBPACK_IMPORTED_MODULE_15__["GlobalFooterComponent"],
                  _search_form_search_form_component__WEBPACK_IMPORTED_MODULE_16__["SearchFormComponent"],
                  _uploader_uploader_component__WEBPACK_IMPORTED_MODULE_17__["UploaderComponent"],
                  _upload_task_upload_task_component__WEBPACK_IMPORTED_MODULE_18__["UploadTaskComponent"],
                  _uploader_sq_uploader_sq_component__WEBPACK_IMPORTED_MODULE_21__["UploaderSqComponent"],
                  _upload_task_sq_upload_task_sq_component__WEBPACK_IMPORTED_MODULE_20__["UploadTaskSqComponent"],
                  _directives_dropzone_directive__WEBPACK_IMPORTED_MODULE_19__["DropzoneDirective"],
                  _uploader_bulk_import_uploader_bulk_import_component__WEBPACK_IMPORTED_MODULE_23__["UploaderBulkImportComponent"],
                  _upload_task_bulk_import_upload_task_bulk_import_component__WEBPACK_IMPORTED_MODULE_22__["UploadTaskBulkImportComponent"],
                  _nodata_nodata_component__WEBPACK_IMPORTED_MODULE_24__["NodataComponent"]
              ],
              exports: [
                  _shell_shell_module__WEBPACK_IMPORTED_MODULE_5__["ShellModule"],
                  _checkbox_wrapper_checkbox_wrapper_component__WEBPACK_IMPORTED_MODULE_6__["CheckboxWrapperComponent"],
                  _show_hide_password_show_hide_password_component__WEBPACK_IMPORTED_MODULE_7__["ShowHidePasswordComponent"],
                  _countdown_timer_countdown_timer_component__WEBPACK_IMPORTED_MODULE_8__["CountdownTimerComponent"],
                  _counter_input_counter_input_component__WEBPACK_IMPORTED_MODULE_9__["CounterInputComponent"],
                  _rating_input_rating_input_component__WEBPACK_IMPORTED_MODULE_10__["RatingInputComponent"],
                  _google_map_google_map_component__WEBPACK_IMPORTED_MODULE_11__["GoogleMapComponent"],
                  _header_header_component__WEBPACK_IMPORTED_MODULE_12__["HeaderComponent"],
                  _fab_button_fab_button_component__WEBPACK_IMPORTED_MODULE_14__["FabButtonComponent"],
                  _global_banner_global_banner_component__WEBPACK_IMPORTED_MODULE_13__["GlobalBannerComponent"],
                  _global_footer_global_footer_component__WEBPACK_IMPORTED_MODULE_15__["GlobalFooterComponent"],
                  _search_form_search_form_component__WEBPACK_IMPORTED_MODULE_16__["SearchFormComponent"],
                  _uploader_uploader_component__WEBPACK_IMPORTED_MODULE_17__["UploaderComponent"],
                  _upload_task_upload_task_component__WEBPACK_IMPORTED_MODULE_18__["UploadTaskComponent"],
                  _uploader_sq_uploader_sq_component__WEBPACK_IMPORTED_MODULE_21__["UploaderSqComponent"],
                  _upload_task_sq_upload_task_sq_component__WEBPACK_IMPORTED_MODULE_20__["UploadTaskSqComponent"],
                  _uploader_bulk_import_uploader_bulk_import_component__WEBPACK_IMPORTED_MODULE_23__["UploaderBulkImportComponent"],
                  _upload_task_bulk_import_upload_task_bulk_import_component__WEBPACK_IMPORTED_MODULE_22__["UploadTaskBulkImportComponent"],
                  _nodata_nodata_component__WEBPACK_IMPORTED_MODULE_24__["NodataComponent"]
              ]
          })
      ], ComponentsModule);
      return ComponentsModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/countdown-timer/countdown-timer.component.scss":
  /*!***************************************************************************!*\
    !*** ./src/app/components/countdown-timer/countdown-timer.component.scss ***!
    \***************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  --countdown-margin: 0px;\n  --countdown-padding: 0px;\n  --countdown-time-margin: 4px;\n  --countdown-time-padding: 3px;\n  --countdown-inner-time-margin: 2px;\n  --countdown-inner-time-padding: 0px;\n  --countdown-fill-border: none;\n  --countdown-fill-border-radius: 7px;\n  --countdown-fill-background: white;\n  --countdown-fill-shadow: 0px 4px 17px -2px rgba(17, 15, 146, 0.75);\n  --countdown-value-color: var(--ion-color-theme);\n  --countdown-unit-color: var(--ion-color-theme);\n  --countdown-time-flex-direction: row-reverse;\n  display: block;\n}\n:host .countdown {\n  margin: var(--countdown-margin);\n  padding: var(--countdown-padding);\n  justify-content: center;\n  flex-wrap: nowrap;\n}\n:host .time {\n  padding: var(--countdown-time-padding);\n  margin: var(--countdown-time-margin);\n  display: flex;\n  flex-direction: var(--countdown-time-flex-direction);\n  align-items: center;\n  justify-content: center;\n}\n:host .time .time-unit {\n  display: block;\n  color: var(--countdown-unit-color);\n  font-size: 1.4em;\n  text-align: center;\n  text-transform: uppercase;\n  width: 2ex;\n  font-weight: bold;\n}\n:host .time .time-value {\n  display: block;\n  color: var(--countdown-value-color);\n  text-align: center;\n  font-size: 1.7em;\n  line-height: 1em;\n  min-height: 1em;\n  font-weight: bold;\n  min-width: 2.2ex;\n  min-width: 2.1ch;\n}\n:host .inner-time {\n  margin: var(--countdown-inner-time-margin);\n  padding: var(--countdown-inner-time-padding);\n}\n:host([fill=countdown]) .countdown {\n  border: var(--countdown-fill-border);\n  border-radius: var(--countdown-fill-border-radius);\n  background-color: var(--countdown-fill-background);\n  box-shadow: var(--countdown-fill-shadow);\n}\n:host([fill=time]) .time {\n  border: var(--countdown-fill-border);\n  border-radius: var(--countdown-fill-border-radius);\n  background-color: var(--countdown-fill-background);\n  box-shadow: var(--countdown-fill-shadow);\n}\n:host([fill=inner-time]) .inner-time {\n  border: var(--countdown-fill-border);\n  border-radius: var(--countdown-fill-border-radius);\n  background-color: var(--countdown-fill-background);\n  box-shadow: var(--countdown-fill-shadow);\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2NvdW50ZG93bi10aW1lci9jb3VudGRvd24tdGltZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY291bnRkb3duLXRpbWVyL2NvdW50ZG93bi10aW1lci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQTtFQUNFLHVCQUFBO0VBQ0Esd0JBQUE7RUFDQSw0QkFBQTtFQUNBLDZCQUFBO0VBQ0Esa0NBQUE7RUFDQSxtQ0FBQTtFQUNBLDZCQUFBO0VBQ0EsbUNBQUE7RUFDQSxrQ0FBQTtFQUVBLGtFQUFBO0VBQ0EsK0NBQUE7RUFDQSw4Q0FBQTtFQUNBLDRDQUFBO0VBQ0EsY0FBQTtBQ1BGO0FEa0JFO0VBQ0UsK0JBQUE7RUFDQSxpQ0FBQTtFQUVBLHVCQUFBO0VBQ0EsaUJBQUE7QUNqQko7QURvQkU7RUFFRSxzQ0FBQTtFQUNBLG9DQUFBO0VBRUEsYUFBQTtFQUNBLG9EQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtBQ3BCSjtBRHNCSTtFQUNFLGNBQUE7RUFDQSxrQ0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFDQSxpQkFBQTtBQ3BCTjtBRHVCSTtFQUNFLGNBQUE7RUFDQSxtQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUlBLGdCQUFBO0VBQ0EsZ0JBQUE7QUN4Qk47QUQ0QkU7RUFDRSwwQ0FBQTtFQUNBLDRDQUFBO0FDMUJKO0FEK0JFO0VBbkZBLG9DQUFBO0VBQ0Esa0RBQUE7RUFDQSxrREFBQTtFQUNBLHdDQUFBO0FDd0RGO0FEOEJFO0VBekZBLG9DQUFBO0VBQ0Esa0RBQUE7RUFDQSxrREFBQTtFQUNBLHdDQUFBO0FDK0RGO0FENkJFO0VBL0ZBLG9DQUFBO0VBQ0Esa0RBQUE7RUFDQSxrREFBQTtFQUNBLHdDQUFBO0FDc0VGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb3VudGRvd24tdGltZXIvY291bnRkb3duLXRpbWVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQG1peGluIGZpbGwtY29udGFpbmVyKCkge1xuICBib3JkZXI6IHZhcigtLWNvdW50ZG93bi1maWxsLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNvdW50ZG93bi1maWxsLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VudGRvd24tZmlsbC1iYWNrZ3JvdW5kKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tY291bnRkb3duLWZpbGwtc2hhZG93KTtcbn1cblxuOmhvc3Qge1xuICAtLWNvdW50ZG93bi1tYXJnaW46IDBweDtcbiAgLS1jb3VudGRvd24tcGFkZGluZzogMHB4O1xuICAtLWNvdW50ZG93bi10aW1lLW1hcmdpbjogNHB4O1xuICAtLWNvdW50ZG93bi10aW1lLXBhZGRpbmc6IDNweDtcbiAgLS1jb3VudGRvd24taW5uZXItdGltZS1tYXJnaW46IDJweDtcbiAgLS1jb3VudGRvd24taW5uZXItdGltZS1wYWRkaW5nOiAwcHg7XG4gIC0tY291bnRkb3duLWZpbGwtYm9yZGVyOiBub25lO1xuICAtLWNvdW50ZG93bi1maWxsLWJvcmRlci1yYWRpdXM6IDdweDtcbiAgLS1jb3VudGRvd24tZmlsbC1iYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgLy8gLS1jb3VudGRvd24tZmlsbC1zaGFkb3c6IDBweCAwcHggNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC0tY291bnRkb3duLWZpbGwtc2hhZG93OiAwcHggNHB4IDE3cHggLTJweCByZ2JhKDE3LCAxNSwgMTQ2LCAwLjc1KTtcbiAgLS1jb3VudGRvd24tdmFsdWUtY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIC0tY291bnRkb3duLXVuaXQtY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIC0tY291bnRkb3duLXRpbWUtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyAtLWNvdW50ZG93bi1maWxsLWJvcmRlcjogbm9uZTtcbiAgLy8gLS1jb3VudGRvd24tZmlsbC1ib3JkZXItcmFkaXVzOiAwcHg7XG4gIC8vIC0tY291bnRkb3duLWZpbGwtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIC8vIC0tY291bnRkb3duLWZpbGwtc2hhZG93OiBub25lO1xuXG4gIC8vIC0tY291bnRkb3duLWZpbGwtYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXNlY29uZGFyeSk7XG4gIC8vIC0tY291bnRkb3duLXZhbHVlLWNvbG9yOiAjRkZGRkZGO1xuICAvLyAtLWNvdW50ZG93bi11bml0LWNvbG9yOiAjRjJGMkYyO1xuXG4gIC5jb3VudGRvd24ge1xuICAgIG1hcmdpbjogdmFyKC0tY291bnRkb3duLW1hcmdpbik7XG4gICAgcGFkZGluZzogdmFyKC0tY291bnRkb3duLXBhZGRpbmcpO1xuXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICAudGltZSB7XG5cbiAgICBwYWRkaW5nOiB2YXIoLS1jb3VudGRvd24tdGltZS1wYWRkaW5nKTtcbiAgICBtYXJnaW46IHZhcigtLWNvdW50ZG93bi10aW1lLW1hcmdpbik7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiB2YXIoLS1jb3VudGRvd24tdGltZS1mbGV4LWRpcmVjdGlvbik7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC50aW1lLXVuaXQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogdmFyKC0tY291bnRkb3duLXVuaXQtY29sb3IpO1xuICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB3aWR0aDogMmV4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLnRpbWUtdmFsdWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogdmFyKC0tY291bnRkb3duLXZhbHVlLWNvbG9yKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgbWluLWhlaWdodDogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAvLyBNYWtlIHN1cmUgd2UgYWx3YXlzIGhhdmUgc3BhY2UgZm9yIHR3byBjaGFyYWN0ZXJzXG4gICAgICAvLyBBcyBjaCAod2lkdGggb2YgdGhlIGNoYXJhY3RlciAnMCcpIHVuaXQgaXMgbm90IDEwMCUgc3VwcG9ydGVkLCB3ZSB3aWxsIHVzZSBleCAoaGVpZ2h0IG9mIHRoZSAneCcgY2hhcmFjdGVyKSBhcyBhIGZhbGxiYWNrXG4gICAgICAvLyBTZWU6IGh0dHBzOi8vd3d3LnF1aXJrc21vZGUub3JnL2Nzcy91bml0cy12YWx1ZXMvXG4gICAgICBtaW4td2lkdGg6IDIuMmV4OyAvLyBUaGUgJ3gnIGNoYXJhY3RlciBpcyBzZW1pLXNxdWFyZSBjaGFyLCB0aGF0J3Mgd2h5IHdlIHNldCAyLjJleFxuICAgICAgbWluLXdpZHRoOiAyLjFjaDsgLy8gY2ggaXMgdGhlIG9ubHkgZm9udCB1bml0IGJhc2VkIG9uIHRoZSB3aWR0aCBvZiBjaGFyYWN0ZXJzXG4gICAgfVxuICB9XG5cbiAgLmlubmVyLXRpbWUge1xuICAgIG1hcmdpbjogdmFyKC0tY291bnRkb3duLWlubmVyLXRpbWUtbWFyZ2luKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1jb3VudGRvd24taW5uZXItdGltZS1wYWRkaW5nKTtcbiAgfVxufVxuXG46aG9zdChbZmlsbD1cImNvdW50ZG93blwiXSkge1xuICAuY291bnRkb3duIHtcbiAgICBAaW5jbHVkZSBmaWxsLWNvbnRhaW5lcigpO1xuICB9XG59XG5cbjpob3N0KFtmaWxsPVwidGltZVwiXSkge1xuICAudGltZSB7XG4gICAgQGluY2x1ZGUgZmlsbC1jb250YWluZXIoKTtcbiAgfVxufVxuXG46aG9zdChbZmlsbD1cImlubmVyLXRpbWVcIl0pIHtcbiAgLmlubmVyLXRpbWUge1xuICAgIEBpbmNsdWRlIGZpbGwtY29udGFpbmVyKCk7XG4gIH1cbn0iLCI6aG9zdCB7XG4gIC0tY291bnRkb3duLW1hcmdpbjogMHB4O1xuICAtLWNvdW50ZG93bi1wYWRkaW5nOiAwcHg7XG4gIC0tY291bnRkb3duLXRpbWUtbWFyZ2luOiA0cHg7XG4gIC0tY291bnRkb3duLXRpbWUtcGFkZGluZzogM3B4O1xuICAtLWNvdW50ZG93bi1pbm5lci10aW1lLW1hcmdpbjogMnB4O1xuICAtLWNvdW50ZG93bi1pbm5lci10aW1lLXBhZGRpbmc6IDBweDtcbiAgLS1jb3VudGRvd24tZmlsbC1ib3JkZXI6IG5vbmU7XG4gIC0tY291bnRkb3duLWZpbGwtYm9yZGVyLXJhZGl1czogN3B4O1xuICAtLWNvdW50ZG93bi1maWxsLWJhY2tncm91bmQ6IHdoaXRlO1xuICAtLWNvdW50ZG93bi1maWxsLXNoYWRvdzogMHB4IDRweCAxN3B4IC0ycHggcmdiYSgxNywgMTUsIDE0NiwgMC43NSk7XG4gIC0tY291bnRkb3duLXZhbHVlLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICAtLWNvdW50ZG93bi11bml0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICAtLWNvdW50ZG93bi10aW1lLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG46aG9zdCAuY291bnRkb3duIHtcbiAgbWFyZ2luOiB2YXIoLS1jb3VudGRvd24tbWFyZ2luKTtcbiAgcGFkZGluZzogdmFyKC0tY291bnRkb3duLXBhZGRpbmcpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG46aG9zdCAudGltZSB7XG4gIHBhZGRpbmc6IHZhcigtLWNvdW50ZG93bi10aW1lLXBhZGRpbmcpO1xuICBtYXJnaW46IHZhcigtLWNvdW50ZG93bi10aW1lLW1hcmdpbik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiB2YXIoLS1jb3VudGRvd24tdGltZS1mbGV4LWRpcmVjdGlvbik7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuOmhvc3QgLnRpbWUgLnRpbWUtdW5pdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY291bnRkb3duLXVuaXQtY29sb3IpO1xuICBmb250LXNpemU6IDEuNGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAyZXg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuOmhvc3QgLnRpbWUgLnRpbWUtdmFsdWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvdW50ZG93bi12YWx1ZS1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjdlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbWluLWhlaWdodDogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWluLXdpZHRoOiAyLjJleDtcbiAgbWluLXdpZHRoOiAyLjFjaDtcbn1cbjpob3N0IC5pbm5lci10aW1lIHtcbiAgbWFyZ2luOiB2YXIoLS1jb3VudGRvd24taW5uZXItdGltZS1tYXJnaW4pO1xuICBwYWRkaW5nOiB2YXIoLS1jb3VudGRvd24taW5uZXItdGltZS1wYWRkaW5nKTtcbn1cblxuOmhvc3QoW2ZpbGw9Y291bnRkb3duXSkgLmNvdW50ZG93biB7XG4gIGJvcmRlcjogdmFyKC0tY291bnRkb3duLWZpbGwtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY291bnRkb3duLWZpbGwtYm9yZGVyLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvdW50ZG93bi1maWxsLWJhY2tncm91bmQpO1xuICBib3gtc2hhZG93OiB2YXIoLS1jb3VudGRvd24tZmlsbC1zaGFkb3cpO1xufVxuXG46aG9zdChbZmlsbD10aW1lXSkgLnRpbWUge1xuICBib3JkZXI6IHZhcigtLWNvdW50ZG93bi1maWxsLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNvdW50ZG93bi1maWxsLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VudGRvd24tZmlsbC1iYWNrZ3JvdW5kKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tY291bnRkb3duLWZpbGwtc2hhZG93KTtcbn1cblxuOmhvc3QoW2ZpbGw9aW5uZXItdGltZV0pIC5pbm5lci10aW1lIHtcbiAgYm9yZGVyOiB2YXIoLS1jb3VudGRvd24tZmlsbC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jb3VudGRvd24tZmlsbC1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY291bnRkb3duLWZpbGwtYmFja2dyb3VuZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWNvdW50ZG93bi1maWxsLXNoYWRvdyk7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/countdown-timer/countdown-timer.component.ts":
  /*!*************************************************************************!*\
    !*** ./src/app/components/countdown-timer/countdown-timer.component.ts ***!
    \*************************************************************************/
  /*! exports provided: CountdownTimerComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CountdownTimerComponent", function() { return CountdownTimerComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  /* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! dayjs */ "./node_modules/dayjs/dayjs.min.js");
  /* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(dayjs__WEBPACK_IMPORTED_MODULE_4__);
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  
  
  
  
  // TODO:  dayjs is throwing this ERROR:
  //        error TS2339: Property 'to' does not exist on type 'Dayjs'.
  // Luckily there's a PR that apparently fixes this (https://github.com/iamkun/dayjs/issues/297#issuecomment-442748858)
  // When fixed, uncomment this
  // import * as dayjs from 'dayjs';
  // When fixed, remove this
  
  
  var dayjs = dayjs__WEBPACK_IMPORTED_MODULE_4__;
  var CountdownTimerComponent = /** @class */ (function () {
      function CountdownTimerComponent(db) {
          var _this = this;
          this.db = db;
          this._initialUnit = "hour";
          this._endingUnit = "second";
          this._updateInterval = Object(rxjs__WEBPACK_IMPORTED_MODULE_2__["interval"])(1000);
          this._unsubscribeSubject = new rxjs__WEBPACK_IMPORTED_MODULE_2__["Subject"]();
          // DIVISORS
          // 60 seconds * 60 (minutes) * 24 (hours) = 86400 seconds = 1 day
          this._dayDivisor = 60 * 60 * 24;
          // 60 seconds * 60 (minutes) = 3600 seconds = 1 hour
          this._hourDivisor = 60 * 60;
          // 60 seconds = 1 minute
          this._minuteDivisor = 60;
          this._secondDivisor = 1;
          // MODULUS
          // Neutral modulus
          this._dayModulus = function (secondsLeft) { return secondsLeft; };
          // The modulus operator (%) returns the division remainder.
          // To figure out how many hours are left after taking in consideration the days, we should do:
          //    (secondsLeft % hourModulus) / hourDivisor
          // In 1 day there are 86400 seconds, and in 1 hour 3600 seconds. 1 day + 1 hour = 90000 seconds
          //    (90000s % 86400s) / 3600s = 1h
          this._hourModulus = function (secondsLeft) { return secondsLeft % _this._dayDivisor; };
          this._minuteModulus = function (secondsLeft) { return secondsLeft % _this._hourDivisor; };
          this._secondModulus = function (secondsLeft) { return secondsLeft % _this._minuteDivisor; };
      }
      Object.defineProperty(CountdownTimerComponent.prototype, "end", {
          set: function (endingTime) {
              this._endingTime =
                  endingTime !== undefined && endingTime !== null
                      ? dayjs(endingTime)
                      : dayjs();
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(CountdownTimerComponent.prototype, "units", {
          set: function (units) {
              // 'day', 'hour, 'minute', 'second'
              this._initialUnit =
                  units !== undefined && units.from !== undefined && units.from !== null
                      ? units.from
                      : "hour";
              this._endingUnit =
                  units !== undefined && units.to !== undefined && units.to !== null
                      ? units.to
                      : "second";
              // For 'day' unit, use the default modulus
              // Adjust modulus depending on the unit
              if (this._initialUnit === "hour") {
                  // Cancelation modulus
                  this._dayModulus = function (secondsLeft) { return 1; };
                  // Neutral modulus
                  this._hourModulus = function (secondsLeft) { return secondsLeft; };
              }
              if (this._initialUnit === "minute") {
                  // Cancelation modulus
                  this._dayModulus = function (secondsLeft) { return 1; };
                  this._hourModulus = function (secondsLeft) { return 1; };
                  // Neutral modulus
                  this._minuteModulus = function (secondsLeft) { return secondsLeft; };
              }
              if (this._initialUnit === "second") {
                  // Cancelation modulus
                  this._dayModulus = function (secondsLeft) { return 1; };
                  this._hourModulus = function (secondsLeft) { return 1; };
                  this._minuteModulus = function (secondsLeft) { return 1; };
                  // Neutral modulus
                  this._secondModulus = function (secondsLeft) { return secondsLeft; };
              }
          },
          enumerable: true,
          configurable: true
      });
      CountdownTimerComponent.prototype.ngOnInit = function () {
          var _this = this;
          this._updateInterval.pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["takeUntil"])(this._unsubscribeSubject)).subscribe(function (val) {
              var secondsLeft = _this._endingTime.diff(dayjs(), "second");
              _this._daysLeft = Math.floor(_this._dayModulus(secondsLeft) / _this._dayDivisor);
              _this._hoursLeft = Math.floor(_this._hourModulus(secondsLeft) / _this._hourDivisor);
              _this._minutesLeft = Math.floor(_this._minuteModulus(secondsLeft) / _this._minuteDivisor);
              _this._secondsLeft = Math.floor(_this._secondModulus(secondsLeft) / _this._secondDivisor);
              // *important
              // console.log(
              //   this._daysLeft,
              //   this._hoursLeft,
              //   this._minutesLeft,
              //   this._secondsLeft,
              //   this._timestamp,
              //   this.timestampOnEnd
              // );
              // does not trigger when the website is closeds
              // if (
              //   this._daysLeft === 0 &&
              //   this._hoursLeft === 9 &&
              //   this._minutesLeft === 53 &&
              //   this._secondsLeft === 0
              // ) {
              //   this.db
              //     .collection("QuotationEnquiry")
              //     .doc(this.timestampOnEnd)
              //     .update({ isEnd: true });
              // }
          }, function (error) { return console.error(error); });
      };
      CountdownTimerComponent.prototype.ngOnDestroy = function () {
          this._unsubscribeSubject.next();
          this._unsubscribeSubject.complete();
      };
      CountdownTimerComponent.prototype.abs = function (number) {
          return Math.abs(number);
      };
      CountdownTimerComponent.ctorParameters = function () { return [
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_5__["AngularFirestore"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [String])
      ], CountdownTimerComponent.prototype, "end", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object])
      ], CountdownTimerComponent.prototype, "units", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], CountdownTimerComponent.prototype, "timestampOnEnd", void 0);
      CountdownTimerComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-countdown-timer",
              template: __webpack_require__(/*! raw-loader!./countdown-timer.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/countdown-timer/countdown-timer.component.html"),
              styles: [__webpack_require__(/*! ./countdown-timer.component.scss */ "./src/app/components/countdown-timer/countdown-timer.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_fire_firestore__WEBPACK_IMPORTED_MODULE_5__["AngularFirestore"]])
      ], CountdownTimerComponent);
      return CountdownTimerComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/counter-input/counter-input.component.scss":
  /*!***********************************************************************!*\
    !*** ./src/app/components/counter-input/counter-input.component.scss ***!
    \***********************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "app-counter-input {\n  --counter-background: #000;\n  --counter-color: #FFF;\n  --counter-border-color: #000;\n  --counter-border-radius-outer: 50%;\n  --counter-border-radius-inner: 50%;\n  --counter-size: 30px;\n  display: flex;\n  align-items: center;\n  justify-content: flex-end;\n}\napp-counter-input ion-button.counter-icon {\n  --background: var(--counter-background);\n  --color: var(--counter-color);\n  --color-activated: var(--counter-color);\n  --border-width: 1px;\n  --border-style: solid;\n  --border-color: var(--counter-border-color);\n  --box-shadow: none;\n  --border-radius: var(--counter-border-radius-outer) var(--counter-border-radius-inner) var(--counter-border-radius-inner) var(--counter-border-radius-outer);\n  --padding-bottom: 3px;\n  --padding-end: 3px;\n  --padding-start: 3px;\n  --padding-top: 3px;\n  margin: 0px;\n}\napp-counter-input .counter-value {\n  color: var(--counter-color);\n  margin: 0px 10px;\n}\napp-counter-input:not([basic]) .button-outer {\n  width: var(--counter-size);\n}\napp-counter-input:not([basic]) .button-outer .button-wrapper {\n  display: block;\n  overflow: hidden;\n  position: relative;\n  width: 100%;\n  padding-bottom: 100%;\n}\napp-counter-input:not([basic]) .button-outer .button-wrapper .counter-icon {\n  position: absolute;\n  top: 0px;\n  bottom: 0px;\n  left: 0px;\n  right: 0px;\n  height: auto;\n  width: 100%;\n}\napp-counter-input[basic] {\n  --counter-border-radius-outer: 12px;\n  --counter-border-radius-inner: 0px;\n}\napp-counter-input[basic] .counter-value {\n  display: none;\n}\napp-counter-input[basic] .button-outer:first-child ion-button.counter-icon {\n  --border-radius: var(--counter-border-radius-outer) var(--counter-border-radius-inner) var(--counter-border-radius-inner) var(--counter-border-radius-outer);\n}\napp-counter-input[basic] .button-outer:last-child {\n  margin-left: -1px;\n}\napp-counter-input[basic] .button-outer:last-child ion-button.counter-icon {\n  --border-radius: var(--counter-border-radius-inner) var(--counter-border-radius-outer) var(--counter-border-radius-outer) var(--counter-border-radius-inner);\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2NvdW50ZXItaW5wdXQvY291bnRlci1pbnB1dC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb3VudGVyLWlucHV0L2NvdW50ZXItaW5wdXQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSwwQkFBQTtFQUNBLHFCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esb0JBQUE7RUFFQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtBQ0FGO0FERUU7RUFDRSx1Q0FBQTtFQUNBLDZCQUFBO0VBQ0EsdUNBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQUFBO0VBQ0EsMkNBQUE7RUFDQSxrQkFBQTtFQUNBLDRKQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7RUFFQSxXQUFBO0FDREo7QURJRTtFQUNFLDJCQUFBO0VBQ0EsZ0JBQUE7QUNGSjtBRE9JO0VBQ0UsMEJBQUE7QUNMTjtBRE9NO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7QUNMUjtBRE9RO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7QUNMVjtBRFdFO0VBQ0UsbUNBQUE7RUFDQSxrQ0FBQTtBQ1RKO0FEV0k7RUFDRSxhQUFBO0FDVE47QURjUTtFQUNFLDRKQUFBO0FDWlY7QURnQk07RUFFRSxpQkFBQTtBQ2ZSO0FEaUJRO0VBQ0UsNEpBQUE7QUNmViIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY291bnRlci1pbnB1dC9jb3VudGVyLWlucHV0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiYXBwLWNvdW50ZXItaW5wdXQge1xuICAtLWNvdW50ZXItYmFja2dyb3VuZDogIzAwMDtcbiAgLS1jb3VudGVyLWNvbG9yOiAjRkZGO1xuICAtLWNvdW50ZXItYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1vdXRlcjogNTAlO1xuICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcjogNTAlO1xuICAtLWNvdW50ZXItc2l6ZTogMzBweDtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gIGlvbi1idXR0b24uY291bnRlci1pY29uIHtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLWNvdW50ZXItYmFja2dyb3VuZCk7XG4gICAgLS1jb2xvcjogdmFyKC0tY291bnRlci1jb2xvcik7XG4gICAgLS1jb2xvci1hY3RpdmF0ZWQ6IHZhcigtLWNvdW50ZXItY29sb3IpO1xuICAgIC0tYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLS1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb3VudGVyLWJvcmRlci1jb2xvcik7XG4gICAgLS1ib3gtc2hhZG93OiBub25lO1xuICAgIC0tYm9yZGVyLXJhZGl1czogdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLW91dGVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtaW5uZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLW91dGVyKTtcbiAgICAtLXBhZGRpbmctYm90dG9tOiAzcHg7XG4gICAgLS1wYWRkaW5nLWVuZDogM3B4O1xuICAgIC0tcGFkZGluZy1zdGFydDogM3B4O1xuICAgIC0tcGFkZGluZy10b3A6IDNweDtcblxuICAgIG1hcmdpbjogMHB4O1xuICB9XG5cbiAgLmNvdW50ZXItdmFsdWUge1xuICAgIGNvbG9yOiB2YXIoLS1jb3VudGVyLWNvbG9yKTtcbiAgICBtYXJnaW46IDBweCAxMHB4O1xuICB9XG5cbiAgJjpub3QoW2Jhc2ljXSkge1xuICAgIC8vIEZvcmNlIGVhY2ggY291bnRlciBidXR0b24gdG8gaGF2ZSBhIDE6MSBhc3BlY3QgcmF0aW9cbiAgICAuYnV0dG9uLW91dGVyIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1jb3VudGVyLXNpemUpO1xuXG4gICAgICAuYnV0dG9uLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG5cbiAgICAgICAgLmNvdW50ZXItaWNvbiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbYmFzaWNdIHtcbiAgICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1vdXRlcjogMTJweDtcbiAgICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcjogMHB4O1xuXG4gICAgLmNvdW50ZXItdmFsdWUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYnV0dG9uLW91dGVyIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBpb24tYnV0dG9uLmNvdW50ZXItaWNvbiB7XG4gICAgICAgICAgLS1ib3JkZXItcmFkaXVzOiB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLWlubmVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIC8vIFRvIGF2b2lkIGRvdWJsZSBib3JkZXJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG5cbiAgICAgICAgaW9uLWJ1dHRvbi5jb3VudGVyLWljb24ge1xuICAgICAgICAgIC0tYm9yZGVyLXJhZGl1czogdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLWlubmVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1vdXRlcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLWlubmVyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiYXBwLWNvdW50ZXItaW5wdXQge1xuICAtLWNvdW50ZXItYmFja2dyb3VuZDogIzAwMDtcbiAgLS1jb3VudGVyLWNvbG9yOiAjRkZGO1xuICAtLWNvdW50ZXItYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1vdXRlcjogNTAlO1xuICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcjogNTAlO1xuICAtLWNvdW50ZXItc2l6ZTogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbmFwcC1jb3VudGVyLWlucHV0IGlvbi1idXR0b24uY291bnRlci1pY29uIHtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1jb3VudGVyLWJhY2tncm91bmQpO1xuICAtLWNvbG9yOiB2YXIoLS1jb3VudGVyLWNvbG9yKTtcbiAgLS1jb2xvci1hY3RpdmF0ZWQ6IHZhcigtLWNvdW50ZXItY29sb3IpO1xuICAtLWJvcmRlci13aWR0aDogMXB4O1xuICAtLWJvcmRlci1zdHlsZTogc29saWQ7XG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1jb3VudGVyLWJvcmRlci1jb2xvcik7XG4gIC0tYm94LXNoYWRvdzogbm9uZTtcbiAgLS1ib3JkZXItcmFkaXVzOiB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLWlubmVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpO1xuICAtLXBhZGRpbmctYm90dG9tOiAzcHg7XG4gIC0tcGFkZGluZy1lbmQ6IDNweDtcbiAgLS1wYWRkaW5nLXN0YXJ0OiAzcHg7XG4gIC0tcGFkZGluZy10b3A6IDNweDtcbiAgbWFyZ2luOiAwcHg7XG59XG5hcHAtY291bnRlci1pbnB1dCAuY291bnRlci12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb3VudGVyLWNvbG9yKTtcbiAgbWFyZ2luOiAwcHggMTBweDtcbn1cbmFwcC1jb3VudGVyLWlucHV0Om5vdChbYmFzaWNdKSAuYnV0dG9uLW91dGVyIHtcbiAgd2lkdGg6IHZhcigtLWNvdW50ZXItc2l6ZSk7XG59XG5hcHAtY291bnRlci1pbnB1dDpub3QoW2Jhc2ljXSkgLmJ1dHRvbi1vdXRlciAuYnV0dG9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5hcHAtY291bnRlci1pbnB1dDpub3QoW2Jhc2ljXSkgLmJ1dHRvbi1vdXRlciAuYnV0dG9uLXdyYXBwZXIgLmNvdW50ZXItaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5hcHAtY291bnRlci1pbnB1dFtiYXNpY10ge1xuICAtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1vdXRlcjogMTJweDtcbiAgLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtaW5uZXI6IDBweDtcbn1cbmFwcC1jb3VudGVyLWlucHV0W2Jhc2ljXSAuY291bnRlci12YWx1ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5hcHAtY291bnRlci1pbnB1dFtiYXNpY10gLmJ1dHRvbi1vdXRlcjpmaXJzdC1jaGlsZCBpb24tYnV0dG9uLmNvdW50ZXItaWNvbiB7XG4gIC0tYm9yZGVyLXJhZGl1czogdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLW91dGVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtaW5uZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLW91dGVyKTtcbn1cbmFwcC1jb3VudGVyLWlucHV0W2Jhc2ljXSAuYnV0dG9uLW91dGVyOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbmFwcC1jb3VudGVyLWlucHV0W2Jhc2ljXSAuYnV0dG9uLW91dGVyOmxhc3QtY2hpbGQgaW9uLWJ1dHRvbi5jb3VudGVyLWljb24ge1xuICAtLWJvcmRlci1yYWRpdXM6IHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcikgdmFyKC0tY291bnRlci1ib3JkZXItcmFkaXVzLW91dGVyKSB2YXIoLS1jb3VudGVyLWJvcmRlci1yYWRpdXMtb3V0ZXIpIHZhcigtLWNvdW50ZXItYm9yZGVyLXJhZGl1cy1pbm5lcik7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/counter-input/counter-input.component.ts":
  /*!*********************************************************************!*\
    !*** ./src/app/components/counter-input/counter-input.component.ts ***!
    \*********************************************************************/
  /*! exports provided: counterRangeValidator, CounterInputComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "counterRangeValidator", function() { return counterRangeValidator; });
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CounterInputComponent", function() { return CounterInputComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  
  
  
  function counterRangeValidator(minValue, maxValue) {
      return function (c) {
          var err = {
              rangeError: {
                  given: c.value,
                  min: minValue || 0,
                  max: maxValue || 10
              }
          };
          return (c.value > +maxValue || c.value < +minValue) ? err : null;
      };
  }
  var CounterInputComponent = /** @class */ (function () {
      function CounterInputComponent() {
          // tslint:disable-next-line:no-input-rename
          this._counterValue = 0;
          this.propagateChange = function () { }; // Noop function
          this.validateFn = function () { }; // Noop function
      }
      CounterInputComponent_1 = CounterInputComponent;
      Object.defineProperty(CounterInputComponent.prototype, "counterValue", {
          get: function () {
              return this._counterValue;
          },
          set: function (val) {
              this._counterValue = val;
              this.propagateChange(val);
          },
          enumerable: true,
          configurable: true
      });
      CounterInputComponent.prototype.ngOnChanges = function (inputs) {
          if (inputs.counterRangeMax || inputs.counterRangeMin) {
              this.validateFn = counterRangeValidator(this.counterRangeMin, this.counterRangeMax);
          }
      };
      CounterInputComponent.prototype.writeValue = function (value) {
          if (value) {
              this.counterValue = value;
          }
      };
      CounterInputComponent.prototype.registerOnChange = function (fn) {
          this.propagateChange = fn;
      };
      CounterInputComponent.prototype.registerOnTouched = function () { };
      CounterInputComponent.prototype.increase = function () {
          this.counterValue++;
      };
      CounterInputComponent.prototype.decrease = function () {
          this.counterValue--;
      };
      CounterInputComponent.prototype.validate = function (c) {
          return this.validateFn(c);
      };
      var CounterInputComponent_1;
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])('counterValue'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], CounterInputComponent.prototype, "_counterValue", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])('max'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], CounterInputComponent.prototype, "counterRangeMax", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])('min'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], CounterInputComponent.prototype, "counterRangeMin", void 0);
      CounterInputComponent = CounterInputComponent_1 = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-counter-input',
              template: __webpack_require__(/*! raw-loader!./counter-input.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/counter-input/counter-input.component.html"),
              providers: [
                  { provide: _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NG_VALUE_ACCESSOR"], useExisting: Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["forwardRef"])(function () { return CounterInputComponent_1; }), multi: true },
                  { provide: _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NG_VALIDATORS"], useExisting: Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["forwardRef"])(function () { return CounterInputComponent_1; }), multi: true }
              ],
              encapsulation: _angular_core__WEBPACK_IMPORTED_MODULE_1__["ViewEncapsulation"].None,
              styles: [__webpack_require__(/*! ./counter-input.component.scss */ "./src/app/components/counter-input/counter-input.component.scss")]
          })
      ], CounterInputComponent);
      return CounterInputComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/fab-button/fab-button.component.scss":
  /*!*****************************************************************!*\
    !*** ./src/app/components/fab-button/fab-button.component.scss ***!
    \*****************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "ion-fab-button[data-desc] {\n  position: relative;\n  font-weight: bold;\n}\n\nion-fab-button[data-desc]::after {\n  position: absolute;\n  content: attr(data-desc);\n  cursor: pointer;\n  z-index: 1;\n  right: 55px;\n  bottom: 4px;\n  background-color: var(--ion-color-primary);\n  padding: 9px;\n  border-radius: 15px;\n  color: var(--ion-color-theme);\n  transition: ease-in-out 3s;\n  box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);\n}\n\n.getaquote {\n  position: absolute;\n  cursor: pointer;\n  z-index: 1;\n  right: 55px;\n  width: 100px;\n  bottom: 4px;\n  background-color: var(--ion-color-primary);\n  border-radius: 15px;\n  color: var(--ion-color-theme);\n  box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2ZhYi1idXR0b24vZmFiLWJ1dHRvbi5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9mYWItYnV0dG9uL2ZhYi1idXR0b24uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxrQkFBQTtFQUNBLGlCQUFBO0FDQ0o7O0FER0E7RUFDSSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EsZUFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLDBDQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0VBQ0EsNkJBQUE7RUFDQSwwQkFBQTtFQUNBLGlIQUFBO0FDQUo7O0FER0E7RUFDSSxrQkFBQTtFQUVBLGVBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsMENBQUE7RUFFQSxtQkFBQTtFQUNBLDZCQUFBO0VBRUEsaUhBQUE7QUNISiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZmFiLWJ1dHRvbi9mYWItYnV0dG9uLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiaW9uLWZhYi1idXR0b25bZGF0YS1kZXNjXSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIC8vICAgIGZvbnQtc2l6ZTogMi4wcmVtO1xyXG59XHJcblxyXG5pb24tZmFiLWJ1dHRvbltkYXRhLWRlc2NdOjphZnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVzYyk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcmlnaHQ6IDU1cHg7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcclxuICAgIHBhZGRpbmc6IDlweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcclxuICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDNzO1xyXG4gICAgYm94LXNoYWRvdzogMCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcbn1cclxuXHJcbi5nZXRhcXVvdGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVzYyk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcmlnaHQ6IDU1cHg7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcclxuLy8gICBwYWRkaW5nOiA5cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xyXG4gICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbi8vICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDNzO1xyXG4gICAgYm94LXNoYWRvdzogMCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcbn1cclxuIiwiaW9uLWZhYi1idXR0b25bZGF0YS1kZXNjXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmlvbi1mYWItYnV0dG9uW2RhdGEtZGVzY106OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBhdHRyKGRhdGEtZGVzYyk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTtcbiAgcmlnaHQ6IDU1cHg7XG4gIGJvdHRvbTogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gIHBhZGRpbmc6IDlweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDNzO1xuICBib3gtc2hhZG93OiAwIDNweCA1cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLmdldGFxdW90ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICByaWdodDogNTVweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBib3R0b206IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgYm94LXNoYWRvdzogMCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggMThweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/fab-button/fab-button.component.ts":
  /*!***************************************************************!*\
    !*** ./src/app/components/fab-button/fab-button.component.ts ***!
    \***************************************************************/
  /*! exports provided: FabButtonComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FabButtonComponent", function() { return FabButtonComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  
  
  var FabButtonComponent = /** @class */ (function () {
      function FabButtonComponent(navCtrl, modalCtrl) {
          this.navCtrl = navCtrl;
          this.modalCtrl = modalCtrl;
      }
      FabButtonComponent.prototype.ngOnInit = function () { };
      FabButtonComponent.prototype.onFilterForm = function () {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () {
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
                  this.navCtrl.navigateForward("/firebase/form");
                  return [2 /*return*/];
              });
          });
      };
      FabButtonComponent.ctorParameters = function () { return [
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["NavController"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["ModalController"] }
      ]; };
      FabButtonComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-fab-button",
              template: __webpack_require__(/*! raw-loader!./fab-button.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/fab-button/fab-button.component.html"),
              styles: [__webpack_require__(/*! ./fab-button.component.scss */ "./src/app/components/fab-button/fab-button.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_ionic_angular__WEBPACK_IMPORTED_MODULE_2__["NavController"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["ModalController"]])
      ], FabButtonComponent);
      return FabButtonComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/global-banner/global-banner.component.scss":
  /*!***********************************************************************!*\
    !*** ./src/app/components/global-banner/global-banner.component.scss ***!
    \***********************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "ion-item {\n  --background: var(--ion-color-dark);\n}\n\nion-label {\n  color: white !important;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2dsb2JhbC1iYW5uZXIvZ2xvYmFsLWJhbm5lci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9nbG9iYWwtYmFubmVyL2dsb2JhbC1iYW5uZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxtQ0FBQTtBQ0NKOztBREVBO0VBQ0ksdUJBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZ2xvYmFsLWJhbm5lci9nbG9iYWwtYmFubmVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiaW9uLWl0ZW0ge1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xufVxuXG5pb24tbGFiZWwge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufSIsImlvbi1pdGVtIHtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG59XG5cbmlvbi1sYWJlbCB7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/global-banner/global-banner.component.ts":
  /*!*********************************************************************!*\
    !*** ./src/app/components/global-banner/global-banner.component.ts ***!
    \*********************************************************************/
  /*! exports provided: GlobalBannerComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GlobalBannerComponent", function() { return GlobalBannerComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var GlobalBannerComponent = /** @class */ (function () {
      function GlobalBannerComponent() {
      }
      GlobalBannerComponent.prototype.ngOnInit = function () { };
      GlobalBannerComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-global-banner',
              template: __webpack_require__(/*! raw-loader!./global-banner.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/global-banner/global-banner.component.html"),
              styles: [__webpack_require__(/*! ./global-banner.component.scss */ "./src/app/components/global-banner/global-banner.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], GlobalBannerComponent);
      return GlobalBannerComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/global-footer/global-footer.component.scss":
  /*!***********************************************************************!*\
    !*** ./src/app/components/global-footer/global-footer.component.scss ***!
    \***********************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZ2xvYmFsLWZvb3Rlci9nbG9iYWwtZm9vdGVyLmNvbXBvbmVudC5zY3NzIn0= */"
  
  /***/ }),
  
  /***/ "./src/app/components/global-footer/global-footer.component.ts":
  /*!*********************************************************************!*\
    !*** ./src/app/components/global-footer/global-footer.component.ts ***!
    \*********************************************************************/
  /*! exports provided: GlobalFooterComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GlobalFooterComponent", function() { return GlobalFooterComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  
  
  var GlobalFooterComponent = /** @class */ (function () {
      function GlobalFooterComponent(modalController) {
          this.modalController = modalController;
      }
      GlobalFooterComponent.prototype.ngOnInit = function () { };
      GlobalFooterComponent.ctorParameters = function () { return [
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["ModalController"] }
      ]; };
      GlobalFooterComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-global-footer",
              template: __webpack_require__(/*! raw-loader!./global-footer.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/global-footer/global-footer.component.html"),
              styles: [__webpack_require__(/*! ./global-footer.component.scss */ "./src/app/components/global-footer/global-footer.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_ionic_angular__WEBPACK_IMPORTED_MODULE_2__["ModalController"]])
      ], GlobalFooterComponent);
      return GlobalFooterComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/google-map/google-map.component.ts":
  /*!***************************************************************!*\
    !*** ./src/app/components/google-map/google-map.component.ts ***!
    \***************************************************************/
  /*! exports provided: GoogleMapComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "GoogleMapComponent", function() { return GoogleMapComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var GoogleMapComponent = /** @class */ (function () {
      function GoogleMapComponent(_elementRef) {
          this._elementRef = _elementRef;
          this.$mapReady = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
          this._mapIdledOnce = false;
      }
      GoogleMapComponent.prototype.ngOnInit = function () {
          this.initMap();
      };
      GoogleMapComponent.prototype.initMap = function () {
          var _this = this;
          this._el = this._elementRef.nativeElement;
          this._map = new google.maps.Map(this._el, this.mapOptions);
          // Workarround for init method: try to catch the first idle event after the map creation
          // (this._mapIdledOnce). The following idle events don't matter.
          var _ready_listener = this._map.addListener('idle', function () {
              console.log('mapReady - IDLE');
              if (!_this._mapIdledOnce) {
                  _this.$mapReady.emit(_this._map);
                  _this._mapIdledOnce = true;
                  // Stop listening to event, the map is ready
                  google.maps.event.removeListener(_ready_listener);
              }
          });
      };
      GoogleMapComponent.ctorParameters = function () { return [
          { type: _angular_core__WEBPACK_IMPORTED_MODULE_1__["ElementRef"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], GoogleMapComponent.prototype, "mapOptions", void 0);
      GoogleMapComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'google-map',
              template: ''
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_core__WEBPACK_IMPORTED_MODULE_1__["ElementRef"]])
      ], GoogleMapComponent);
      return GoogleMapComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/header/header.component.scss":
  /*!*********************************************************!*\
    !*** ./src/app/components/header/header.component.scss ***!
    \*********************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "@import \"https://fonts.googleapis.com/css?family=Montserrat:300,400,700\";\n@media screen and (min-width: 600px) {\n  .header-logo {\n    display: none;\n  }\n\n  .dropdownmenu {\n    height: 50px !important;\n    background: var(--ion-color-dark);\n    box-shadow: 0 2px 18px 2px #ddd;\n  }\n\n  .menulist {\n    float: left;\n  }\n\n  .menulist_ {\n    float: right;\n  }\n}\n@media screen and (max-width: 600px) {\n  .header-logo {\n    display: none;\n  }\n\n  .dropdownmenu {\n    height: 50px !important;\n    background: var(--ion-color-dark);\n    box-shadow: 0 2px 18px 2px #ddd;\n  }\n\n  .menulist {\n    display: none;\n  }\n\n  .menulist_ {\n    display: none;\n  }\n\n  .header-logo {\n    position: absolute;\n    top: 0;\n    height: 50px;\n    z-index: -99;\n  }\n}\n.dropdownmenu ul,\n.dropdownmenu li {\n  margin: 0;\n  padding: 0;\n}\n.dropdownmenu ul {\n  background: transparent;\n  list-style: none;\n}\n.dropdownmenu li {\n  float: right;\n  position: relative;\n  width: auto;\n}\n.loginbutton {\n  position: absolute;\n  bottom: 0px;\n  right: 0px;\n}\n.dismissbutton {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n}\n.notification {\n  height: 50px;\n  margin: 0px;\n}\n.dropdownmenu a {\n  background: white;\n  color: var(--ion-color-theme);\n  display: block;\n  font-size: smaller;\n  cursor: pointer;\n  padding: 16px 14px;\n  text-align: center;\n  text-decoration: none;\n  transition: all 0.45s ease;\n  min-width: 150px;\n}\n.dropdownmenu li:hover a {\n  background: white;\n}\n.menulist_top a {\n  background-color: #f0f0f0;\n  color: gray;\n  /* display: block; */\n  font-size: smaller;\n  cursor: pointer;\n  padding: 5px 25px;\n  text-align: right;\n  text-decoration: none;\n  transition: all 0.45s ease;\n}\n#submenu {\n  left: 0;\n  opacity: 0;\n  position: absolute;\n  visibility: hidden;\n  z-index: 999;\n}\nli:hover ul#submenu {\n  opacity: 1;\n  top: 56px;\n  /* adjust this as per top nav padding top & bottom comes */\n  visibility: visible;\n}\n#submenu li {\n  float: none;\n  width: 100%;\n}\n#submenu a:hover {\n  background: lightgray;\n}\n#submenu a {\n  z-index: 999;\n  background-color: white;\n}\n.user-avatar {\n  width: 32px;\n  height: 32px;\n  border-radius: 50%;\n  margin-top: 10px;\n  margin-left: 10px;\n  margin-right: 35px;\n  background: white;\n  color: var(--ion-color-theme);\n  display: block;\n  font-size: smaller;\n  cursor: pointer;\n  text-align: center;\n  text-decoration: none;\n  transition: all 0.45s ease;\n  border: green;\n}\n.description {\n  overflow: hidden;\n  white-space: break-spaces !important;\n  text-overflow: ellipsis;\n}\n.button {\n  color: var(--ion-color-theme);\n  font-weight: bold;\n}\n.button:hover {\n  cursor: pointer;\n  color: var(--ion-color-theme);\n  font-weight: bold;\n}\n.rwd-table {\n  margin: 1em 0;\n  min-width: 900px;\n  margin-left: auto;\n  margin-right: auto;\n}\n.rwd-table tr {\n  border-top: 1px solid #ddd;\n  border-bottom: 1px solid #ddd;\n}\n.rwd-table th {\n  display: none;\n}\n.rwd-table td {\n  display: block;\n  font-size: 0.8rem;\n}\n.rwd-table td:first-child {\n  padding-top: 0.5em;\n}\n.rwd-table td:last-child {\n  padding-bottom: 0.5em;\n}\n.rwd-table td:before {\n  content: attr(data-th) \": \";\n  font-weight: bold;\n  width: 9.5em;\n  display: inline-block;\n}\n@media (min-width: 480px) {\n  .rwd-table td:before {\n    display: none;\n  }\n}\n.rwd-table th,\n.rwd-table td {\n  text-align: left;\n}\n@media (min-width: 480px) {\n  .rwd-table th,\n.rwd-table td {\n    display: table-cell;\n    padding: 0.25em 0.5em;\n  }\n\n  .rwd-table th:first-child,\n.rwd-table td:first-child {\n    padding-left: 0;\n  }\n\n  .rwd-table th:last-child,\n.rwd-table td:last-child {\n    padding-right: 0;\n  }\n}\nh1 {\n  font-weight: normal;\n  letter-spacing: -1px;\n  color: #34495E;\n}\n.rwd-table {\n  margin-top: 0px;\n  background: white;\n  color: var(--ion-color-theme);\n  border-radius: 0.4em;\n  overflow: hidden;\n  width: 100%;\n}\n.rwd-table .header_ {\n  background: white;\n  color: black;\n}\n.rwd-table tr {\n  border-color: lightgray;\n}\n.rwd-table tr:hover:not(.header_) {\n  cursor: pointer;\n  background-color: #f2f2f2;\n}\n.rwd-table th,\n.rwd-table td {\n  margin: 0.5em 1em;\n}\n@media (min-width: 480px) {\n  .rwd-table th,\n.rwd-table td {\n    padding: 1em !important;\n  }\n}\n.rwd-table th,\n.rwd-table td:before {\n  color: #dd5;\n}\n/* Important styles */\n#toggle {\n  display: block;\n  width: 30px;\n  height: 20px;\n  margin: 15px auto 5px;\n}\n#toggle span:after,\n#toggle span:before {\n  content: \"\";\n  position: absolute;\n  left: 0;\n  top: -6px;\n}\n#toggle span:after {\n  top: 6px;\n}\n#toggle span {\n  position: relative;\n  display: block;\n}\n#toggle span,\n#toggle span:after,\n#toggle span:before {\n  width: 20px;\n  height: 3px;\n  right: 15px;\n  background-color: #888;\n  transition: all 0.3s;\n  -webkit-backface-visibility: hidden;\n          backface-visibility: hidden;\n  border-radius: 2px;\n}\n/* on activation */\n#toggle.on span {\n  background-color: transparent;\n}\n#toggle.on span:before {\n  transform: rotate(45deg) translate(5px, 5px);\n}\n#toggle.on span:after {\n  transform: rotate(-45deg) translate(7px, -8px);\n}\n#toggle.on + #menu {\n  opacity: 1;\n  visibility: visible;\n}\n/* menu appearance*/\n#menu {\n  position: fixed;\n  top: 100px;\n  right: 3px;\n  color: #999;\n  margin: auto;\n  text-align: center;\n  background: white;\n  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.05);\n  /* just for this demo */\n  opacity: 0;\n  visibility: hidden;\n  transition: opacity 0.4s;\n  border: 1px solid rgba(0, 0, 0, 0.15);\n  border-radius: 0.25rem;\n}\n#menu:before {\n  position: absolute;\n  top: -20px;\n  left: 210px;\n  content: \"\";\n  display: block;\n  border-left: 15px solid transparent;\n  border-right: 15px solid transparent;\n  border-bottom: 20px solid white;\n}\nul,\nli,\nli a {\n  list-style: none;\n  display: block;\n  margin: 0;\n  padding: 0;\n}\nli a {\n  padding: 10px 20px;\n  color: #888;\n  text-decoration: none;\n  text-align: left;\n  transition: all 0.2s;\n  width: 250px;\n}\nli a:hover,\nli a:focus {\n  background: #2485e8;\n  color: #fff;\n  cursor: pointer;\n  width: 100%;\n}\n.new_button {\n  padding-right: 38px;\n  padding-bottom: 4px;\n}\n.listbutton {\n  padding-left: 10px;\n  width: 100%;\n  top: 5px;\n  margin-left: 0px;\n}\n.listbutton span {\n  color: #212529;\n  padding: 8px 20px;\n  text-align: left;\n  width: 100%;\n  text-transform: capitalize;\n}\n.listbutton:hover {\n  padding-left: 10px;\n  color: white;\n  background: #2485e8;\n  margin-left: 0px;\n}\n.listbutton:hover span {\n  color: white;\n  text-transform: capitalize;\n  padding: 8px 20px;\n  text-align: left;\n  width: 100%;\n}\n/* demo styles */\np,\np a {\n  font-size: 12px;\n  text-align: center;\n  color: #888;\n}\n.menu_toggle {\n  position: absolute;\n  z-index: 99999999;\n  right: 0px;\n  top: 50px;\n  background: white;\n  border-radius: 2px;\n  border: 1px solid rgba(0, 0, 0, 0.15);\n}\n.card {\n  box-shadow: none;\n  max-width: 450px;\n}\n.searchbar {\n  max-height: 30px;\n  margin-left: 30px;\n  margin-top: 10px;\n  max-width: 250px;\n  float: left;\n  border-radius: 20px;\n  background: white;\n  --background: white;\n}\n.searchbar:hover {\n  border-style: solid;\n  border-width: 1px;\n  border-color: var(--ion-color-theme);\n}\nimg {\n  box-shadow: 0 2px 18px 2px #ddd;\n  border-radius: 12px;\n}\nimg:hover {\n  box-shadow: none;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwTFEsd0VBQUE7QUExTFI7RUFDQztJQUNDLGFBQUE7RUNFQTs7RURBRDtJQUNDLHVCQUFBO0lBQ0csaUNBQUE7SUFDRCwrQkFBQTtFQ0dGOztFREREO0lBQ0MsV0FBQTtFQ0lBOztFREZEO0lBQ0MsWUFBQTtFQ0tBO0FBQ0Y7QURGQTtFQUNDO0lBQ0MsYUFBQTtFQ0lBOztFREZEO0lBQ0MsdUJBQUE7SUFDRSxpQ0FBQTtJQUNBLCtCQUFBO0VDS0Y7O0VESEQ7SUFDQyxhQUFBO0VDTUE7O0VESkQ7SUFDQyxhQUFBO0VDT0E7O0VETEQ7SUFDQyxrQkFBQTtJQUNBLE1BQUE7SUFDQSxZQUFBO0lBRUEsWUFBQTtFQ09BO0FBQ0Y7QURKQTs7RUFFQyxTQUFBO0VBQ0EsVUFBQTtBQ01EO0FESEE7RUFDQyx1QkFBQTtFQUNBLGdCQUFBO0FDTUQ7QURDQTtFQUNDLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QUNFRDtBRENBO0VBSUUsa0JBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtBQ0RGO0FESUE7RUFDRSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0FDREY7QURJQTtFQUNDLFlBQUE7RUFDQSxXQUFBO0FDREQ7QURJQTtFQUNDLGlCQUFBO0VBQ0EsNkJBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBRUEsa0JBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBS0EsMEJBQUE7RUFDQSxnQkFBQTtBQ0ZEO0FES0E7RUFDQyxpQkFBQTtBQ0ZEO0FES0E7RUFFQyx5QkFBQTtFQUNBLFdBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLDBCQUFBO0FDSEQ7QURNQTtFQUNDLE9BQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLFlBQUE7QUNIRDtBRE1BO0VBQ0MsVUFBQTtFQUNBLFNBQUE7RUFDQSwwREFBQTtFQUNBLG1CQUFBO0FDSEQ7QURNQTtFQUNDLFdBQUE7RUFDQSxXQUFBO0FDSEQ7QURNQTtFQUVDLHFCQUFBO0FDSkQ7QURPQTtFQUNDLFlBQUE7RUFFQSx1QkFBQTtBQ0xEO0FEUUE7RUFDQyxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBRUEsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGVBQUE7RUFFQSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsMEJBQUE7RUFDQSxhQUFBO0FDUEQ7QURXQTtFQUNDLGdCQUFBO0VBQ0Esb0NBQUE7RUFDQSx1QkFBQTtBQ1JEO0FEV0E7RUFDQyw2QkFBQTtFQUNBLGlCQUFBO0FDUkQ7QURXQTtFQUNDLGVBQUE7RUFDQSw2QkFBQTtFQUNBLGlCQUFBO0FDUkQ7QURZQTtFQUNDLGFBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7QUNURDtBRFlBO0VBQ0MsMEJBQUE7RUFDQSw2QkFBQTtBQ1REO0FEWUE7RUFDQyxhQUFBO0FDVEQ7QURZQTtFQUNDLGNBQUE7RUFDQSxpQkFBQTtBQ1REO0FEWUE7RUFDQyxrQkFBQTtBQ1REO0FEWUE7RUFDQyxxQkFBQTtBQ1REO0FEWUE7RUFDQywyQkFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0FDVEQ7QURZQTtFQUNDO0lBQ0MsYUFBQTtFQ1RBO0FBQ0Y7QURZQTs7RUFFQyxnQkFBQTtBQ1ZEO0FEYUE7RUFDQzs7SUFFQyxtQkFBQTtJQUNBLHFCQUFBO0VDVkE7O0VEWUQ7O0lBRUMsZUFBQTtFQ1RBOztFRFdEOztJQUVDLGdCQUFBO0VDUkE7QUFDRjtBRG1CQTtFQUNDLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0FDakJEO0FEb0JBO0VBQ0MsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsNkJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtBQ2pCRDtBRG9CQTtFQUNDLGlCQUFBO0VBQ0EsWUFBQTtBQ2pCRDtBRG9CQTtFQUNDLHVCQUFBO0FDakJEO0FEcUJBO0VBQ0MsZUFBQTtFQUNBLHlCQUFBO0FDbEJEO0FEcUJBOztFQUVDLGlCQUFBO0FDbEJEO0FEcUJBO0VBQ0M7O0lBRUMsdUJBQUE7RUNsQkE7QUFDRjtBRHFCQTs7RUFFQyxXQUFBO0FDbkJEO0FEdUJBLHFCQUFBO0FBRUE7RUFDQyxjQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtBQ3JCRDtBRHdCQTs7RUFFQyxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtBQ3JCRDtBRHdCQTtFQUNDLFFBQUE7QUNyQkQ7QUR3QkE7RUFDQyxrQkFBQTtFQUNBLGNBQUE7QUNyQkQ7QUR3QkE7OztFQUdDLFdBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQ0FBQTtVQUFBLDJCQUFBO0VBQ0Esa0JBQUE7QUNyQkQ7QUR5QkEsa0JBQUE7QUFFQTtFQUNDLDZCQUFBO0FDdkJEO0FEMEJBO0VBQ0MsNENBQUE7QUN2QkQ7QUQwQkE7RUFDQyw4Q0FBQTtBQ3ZCRDtBRDBCQTtFQUNDLFVBQUE7RUFDQSxtQkFBQTtBQ3ZCRDtBRDJCQSxtQkFBQTtBQUVBO0VBQ0MsZUFBQTtFQUNBLFVBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUdBLFlBQUE7RUFFQSxrQkFBQTtFQUVBLGlCQUFBO0VBQ0EseUNBQUE7RUFDQSx1QkFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EscUNBQUE7RUFDQSxzQkFBQTtBQzdCRDtBRGdDQTtFQUNDLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLG1DQUFBO0VBQ0Esb0NBQUE7RUFDQSwrQkFBQTtBQzdCRDtBRGdDQTs7O0VBR0MsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7QUM3QkQ7QURnQ0E7RUFDQyxrQkFBQTtFQUNBLFdBQUE7RUFFQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7RUFDQSxZQUFBO0FDOUJEO0FEaUNBOztFQUVDLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxXQUFBO0FDOUJEO0FEaUNBO0VBQ0MsbUJBQUE7RUFDQSxtQkFBQTtBQzlCRDtBRGlDQTtFQUVDLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFFBQUE7RUFDQSxnQkFBQTtBQy9CRDtBRGdDQztFQUNDLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLDBCQUFBO0FDOUJGO0FEa0NBO0VBQ0Msa0JBQUE7RUFDQSxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtBQy9CRDtBRGdDQztFQUNDLFlBQUE7RUFDQSwwQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0FDOUJGO0FEbUNBLGdCQUFBO0FBQ0E7O0VBRUMsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBQ2hDRDtBRG1DQTtFQUNDLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQyxxQ0FBQTtBQ2hDRjtBRG1DQTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7QUNoQ0Y7QURrQ0E7RUFDQyxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7QUMvQkQ7QURrQ0E7RUFDQyxtQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0NBQUE7QUMvQkQ7QURrQ0E7RUFDSSwrQkFBQTtFQUNBLG1CQUFBO0FDL0JKO0FEa0NBO0VBRUksZ0JBQUE7QUNoQ0oiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xyXG5cdC5oZWFkZXItbG9nbyB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHQuZHJvcGRvd25tZW51IHtcclxuXHRcdGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYXJrKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMnB4ICNkZGQ7XHJcblx0fVxyXG5cdC5tZW51bGlzdCB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHR9XHJcblx0Lm1lbnVsaXN0XyB7XHJcblx0XHRmbG9hdDogcmlnaHQ7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xyXG5cdC5oZWFkZXItbG9nbyB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHQuZHJvcGRvd25tZW51IHtcclxuXHRcdGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xyXG4gICAgYm94LXNoYWRvdzogMCAycHggMThweCAycHggI2RkZDsgICAgXHJcblx0fVxyXG5cdC5tZW51bGlzdCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHQubWVudWxpc3RfIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cdC5oZWFkZXItbG9nbyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHQvLyBtYXJnaW4tbGVmdDogNTBweDtcclxuXHRcdHotaW5kZXg6IC05OTtcclxuXHR9XHJcbn1cclxuXHJcbi5kcm9wZG93bm1lbnUgdWwsXHJcbi5kcm9wZG93bm1lbnUgbGkge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uZHJvcGRvd25tZW51IHVsIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdC8vICB3aWR0aDogMTAwJTtcclxuXHQvLyBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ly8gdG9wOiAwcHg7XHJcblx0Ly8gcmlnaHQ6IDBweDtcclxufVxyXG5cclxuLmRyb3Bkb3dubWVudSBsaSB7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogYXV0bztcclxufVxyXG5cclxuLmxvZ2luYnV0dG9uIHtcclxuXHQvLyAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG4vL1x0YmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXRoZW1lKSAhaW1wb3J0YW50O1xyXG4vLyAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMHB4O1xyXG4gIHJpZ2h0OiAwcHg7XHJcbn1cclxuXHJcbi5kaXNtaXNzYnV0dG9uIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwcHg7XHJcbiAgcmlnaHQ6IDBweDtcclxufVxyXG5cclxuLm5vdGlmaWNhdGlvbiB7XHJcblx0aGVpZ2h0OiA1MHB4O1xyXG5cdG1hcmdpbjogMHB4O1xyXG59XHJcblxyXG4uZHJvcGRvd25tZW51IGEge1xyXG5cdGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cdGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZvbnQtc2l6ZTogc21hbGxlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ly8gZm9udDogYm9sZCAxMnB4LzIwcHggc2Fucy1zZXJpZjtcclxuXHRwYWRkaW5nOiAxNnB4IDE0cHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuNDVzIGVhc2U7XHJcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgLjQ1cyBlYXNlO1xyXG5cdC1tcy10cmFuc2l0aW9uOiBhbGwgLjQ1cyBlYXNlO1xyXG5cdC1vLXRyYW5zaXRpb246IGFsbCAuNDVzIGVhc2U7XHJcblx0dHJhbnNpdGlvbjogYWxsIC40NXMgZWFzZTtcclxuXHRtaW4td2lkdGg6IDE1MHB4O1xyXG59XHJcblxyXG4uZHJvcGRvd25tZW51IGxpOmhvdmVyIGEge1xyXG5cdGJhY2tncm91bmQ6IHdoaXRlO1xyXG59XHJcblxyXG4ubWVudWxpc3RfdG9wIGEge1xyXG5cdC8vICBmbG9hdDogcmlnaHQ7ICAgICAgICAgICAgICBcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQwLCAyNDAsIDI0MCk7XHJcblx0Y29sb3I6IGdyYXk7XHJcblx0LyogZGlzcGxheTogYmxvY2s7ICovXHJcblx0Zm9udC1zaXplOiBzbWFsbGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiA1cHggMjVweDtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuNDVzIGVhc2U7XHJcbn1cclxuXHJcbiNzdWJtZW51IHtcclxuXHRsZWZ0OiAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR6LWluZGV4OiA5OTk7XHJcbn1cclxuXHJcbmxpOmhvdmVyIHVsI3N1Ym1lbnUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dG9wOiA1NnB4O1xyXG5cdC8qIGFkanVzdCB0aGlzIGFzIHBlciB0b3AgbmF2IHBhZGRpbmcgdG9wICYgYm90dG9tIGNvbWVzICovXHJcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcclxufVxyXG5cclxuI3N1Ym1lbnUgbGkge1xyXG5cdGZsb2F0OiBub25lO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4jc3VibWVudSBhOmhvdmVyIHtcclxuXHQvLyAgICBiYWNrZ3JvdW5kOiAjREY0QjA1O1xyXG5cdGJhY2tncm91bmQ6IGxpZ2h0Z3JheTtcclxufVxyXG5cclxuI3N1Ym1lbnUgYSB7XHJcblx0ei1pbmRleDogOTk5O1xyXG5cdC8vIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi51c2VyLWF2YXRhciB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHQvLyBoZWlnaHQgb2YgdGhlIGJhciBpcyA1N3B4LCA1NyAtIDMyID0gMjVweCBtYXJnaW4tdG9wIDEycHg7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDM1cHg7XHJcblx0YmFja2dyb3VuZDogd2hpdGU7XHJcblx0Y29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1zaXplOiBzbWFsbGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHQvLyAgIHBhZGRpbmc6IDE5cHggMzVweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjQ1cyBlYXNlO1xyXG5cdGJvcmRlcjogZ3JlZW47XHJcbn1cclxuXHJcbi8vLy8vLy8vLy8vL0BhdC1yb290XHJcbi5kZXNjcmlwdGlvbiB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzICFpbXBvcnRhbnQ7XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uYnV0dG9uOmhvdmVyIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbkBpbXBvcnQgXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TW9udHNlcnJhdDozMDAsNDAwLDcwMFwiO1xyXG4ucndkLXRhYmxlIHtcclxuXHRtYXJnaW46IDFlbSAwO1xyXG5cdG1pbi13aWR0aDogOTAwcHg7XHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4ucndkLXRhYmxlIHRyIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcclxufVxyXG5cclxuLnJ3ZC10YWJsZSB0aCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnJ3ZC10YWJsZSB0ZCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1zaXplOiAwLjhyZW07XHJcbn1cclxuXHJcbi5yd2QtdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctdG9wOiAuNWVtO1xyXG59XHJcblxyXG4ucndkLXRhYmxlIHRkOmxhc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctYm90dG9tOiAuNWVtO1xyXG59XHJcblxyXG4ucndkLXRhYmxlIHRkOmJlZm9yZSB7XHJcblx0Y29udGVudDogYXR0cihkYXRhLXRoKSBcIjogXCI7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0d2lkdGg6IDkuNWVtO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XHJcblx0LnJ3ZC10YWJsZSB0ZDpiZWZvcmUge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5yd2QtdGFibGUgdGgsXHJcbi5yd2QtdGFibGUgdGQge1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xyXG5cdC5yd2QtdGFibGUgdGgsXHJcblx0LnJ3ZC10YWJsZSB0ZCB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cdFx0cGFkZGluZzogLjI1ZW0gLjVlbTtcclxuXHR9XHJcblx0LnJ3ZC10YWJsZSB0aDpmaXJzdC1jaGlsZCxcclxuXHQucndkLXRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHR9XHJcblx0LnJ3ZC10YWJsZSB0aDpsYXN0LWNoaWxkLFxyXG5cdC5yd2QtdGFibGUgdGQ6bGFzdC1jaGlsZCB7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cdH1cclxufVxyXG5cclxuLy8gYm9keSB7XHJcbi8vICAgcGFkZGluZzogMCAyZW07XHJcbi8vICAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsIHNhbnMtc2VyaWY7XHJcbi8vICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbi8vICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuLy8gICBjb2xvcjogIzQ0NDtcclxuLy8gICBiYWNrZ3JvdW5kOiAjZWVlO1xyXG4vLyB9XHJcbmgxIHtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdGxldHRlci1zcGFjaW5nOiAtMXB4O1xyXG5cdGNvbG9yOiAjMzQ0OTVFO1xyXG59XHJcblxyXG4ucndkLXRhYmxlIHtcclxuXHRtYXJnaW4tdG9wOiAwcHg7XHJcblx0YmFja2dyb3VuZDogd2hpdGU7XHJcblx0Y29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcblx0Ym9yZGVyLXJhZGl1czogLjRlbTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucndkLXRhYmxlIC5oZWFkZXJfIHtcclxuXHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRjb2xvcjogYmxhY2s7XHJcbn1cclxuXHJcbi5yd2QtdGFibGUgdHIge1xyXG5cdGJvcmRlci1jb2xvcjogbGlnaHRncmF5O1xyXG59XHJcblxyXG4vLyAucndkLXRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB7YmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjt9XHJcbi5yd2QtdGFibGUgdHI6aG92ZXI6bm90KC5oZWFkZXJfKSB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XHJcbn1cclxuXHJcbi5yd2QtdGFibGUgdGgsXHJcbi5yd2QtdGFibGUgdGQge1xyXG5cdG1hcmdpbjogLjVlbSAxZW07XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xyXG5cdC5yd2QtdGFibGUgdGgsXHJcblx0LnJ3ZC10YWJsZSB0ZCB7XHJcblx0XHRwYWRkaW5nOiAxZW0gIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbi5yd2QtdGFibGUgdGgsXHJcbi5yd2QtdGFibGUgdGQ6YmVmb3JlIHtcclxuXHRjb2xvcjogI2RkNTtcclxufVxyXG5cclxuXHJcbi8qIEltcG9ydGFudCBzdHlsZXMgKi9cclxuXHJcbiN0b2dnbGUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHdpZHRoOiAzMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRtYXJnaW46IDE1cHggYXV0byA1cHg7XHJcbn1cclxuXHJcbiN0b2dnbGUgc3BhbjphZnRlcixcclxuI3RvZ2dsZSBzcGFuOmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IC02cHg7XHJcbn1cclxuXHJcbiN0b2dnbGUgc3BhbjphZnRlciB7XHJcblx0dG9wOiA2cHg7XHJcbn1cclxuXHJcbiN0b2dnbGUgc3BhbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4jdG9nZ2xlIHNwYW4sXHJcbiN0b2dnbGUgc3BhbjphZnRlcixcclxuI3RvZ2dsZSBzcGFuOmJlZm9yZSB7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0cmlnaHQ6IDE1cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogIzg4ODtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuXHRiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG59XHJcblxyXG5cclxuLyogb24gYWN0aXZhdGlvbiAqL1xyXG5cclxuI3RvZ2dsZS5vbiBzcGFuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuI3RvZ2dsZS5vbiBzcGFuOmJlZm9yZSB7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg1cHgsIDVweCk7XHJcbn1cclxuXHJcbiN0b2dnbGUub24gc3BhbjphZnRlciB7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoN3B4LCAtOHB4KTtcclxufVxyXG5cclxuI3RvZ2dsZS5vbisjbWVudSB7XHJcblx0b3BhY2l0eTogMTtcclxuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG59XHJcblxyXG5cclxuLyogbWVudSBhcHBlYXJhbmNlKi9cclxuXHJcbiNtZW51IHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAxMDBweDtcclxuXHRyaWdodDogM3B4O1xyXG5cdGNvbG9yOiAjOTk5O1xyXG5cdC8vIHdpZHRoOiAyMDBweDtcclxuXHQvLyAgcGFkZGluZzogNXB4IDIwcHg7XHJcblx0bWFyZ2luOiBhdXRvO1xyXG5cdC8vIGZvbnQtZmFtaWx5OiBcIlNlZ29lIFVJXCIsIENhbmRhcmEsIFwiQml0c3RyZWFtIFZlcmEgU2Fuc1wiLCBcIkRlamFWdSBTYW5zXCIsIFwiQml0c3RyZWFtIFZlcmEgU2Fuc1wiLCBcIlRyZWJ1Y2hldCBNU1wiLCBWZXJkYW5hLCBcIlZlcmRhbmEgUmVmXCIsIHNhbnMtc2VyaWY7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdC8vIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHRib3gtc2hhZG93OiAwIDFweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHQvKiBqdXN0IGZvciB0aGlzIGRlbW8gKi9cclxuXHRvcGFjaXR5OiAwO1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IC40cztcclxuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIC4xNSk7XHJcblx0Ym9yZGVyLXJhZGl1czogLjI1cmVtO1xyXG59XHJcblxyXG4jbWVudTpiZWZvcmUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IC0yMHB4O1xyXG5cdGxlZnQ6IDIxMHB4O1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Ym9yZGVyLWxlZnQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlci1ib3R0b206IDIwcHggc29saWQgd2hpdGU7XHJcbn1cclxuXHJcbnVsLFxyXG5saSxcclxubGkgYSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxubGkgYSB7XHJcblx0cGFkZGluZzogMTBweCAyMHB4O1xyXG5cdGNvbG9yOiAjODg4O1xyXG5cdC8vIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdHRyYW5zaXRpb246IGFsbCAuMnM7XHJcblx0d2lkdGg6IDI1MHB4O1xyXG59XHJcblxyXG5saSBhOmhvdmVyLFxyXG5saSBhOmZvY3VzIHtcclxuXHRiYWNrZ3JvdW5kOiAjMjQ4NWU4O1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR3aWR0aDogMTAwJVxyXG59XHJcblxyXG4ubmV3X2J1dHRvbiB7XHJcblx0cGFkZGluZy1yaWdodDogMzhweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4ubGlzdGJ1dHRvbiB7XHJcblx0Ly8gY29sb3I6ICMyNDg1ZTg7XHJcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRvcDogNXB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAwcHg7XHJcblx0c3BhbiB7XHJcblx0XHRjb2xvcjogIzIxMjUyOTtcclxuXHRcdHBhZGRpbmc6IDhweCAyMHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcblx0fVxyXG59XHJcblxyXG4ubGlzdGJ1dHRvbjpob3ZlciB7XHJcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRiYWNrZ3JvdW5kOiAjMjQ4NWU4O1xyXG5cdG1hcmdpbi1sZWZ0OiAwcHg7XHJcblx0c3BhbiB7XHJcblx0XHRjb2xvcjogd2hpdGU7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuXHRcdHBhZGRpbmc6IDhweCAyMHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qIGRlbW8gc3R5bGVzICovXHJcbnAsXHJcbnAgYSB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogIzg4ODtcclxufVxyXG5cclxuLm1lbnVfdG9nZ2xlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ei1pbmRleDogOTk5OTk5OTk7XHJcblx0cmlnaHQ6IDBweDtcclxuXHR0b3A6IDUwcHg7XHJcblx0YmFja2dyb3VuZDogd2hpdGU7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuXHJcbi5jYXJkIHtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIG1heC13aWR0aDogNDUwcHg7XHJcbn1cclxuLnNlYXJjaGJhciB7XHJcblx0bWF4LWhlaWdodDogMzBweDtcclxuXHRtYXJnaW4tbGVmdDogMzBweDtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdG1heC13aWR0aDogMjUwcHg7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxuXHRiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHQtLWJhY2tncm91bmQ6IHdoaXRlO1xyXG59XHJcblxyXG4uc2VhcmNoYmFyOmhvdmVyIHtcclxuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdGJvcmRlci13aWR0aDogMXB4O1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcclxufVxyXG5cclxuaW1nIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDE4cHggMnB4ICNkZGQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG59XHJcblxyXG5pbWc6aG92ZXIge1xyXG4gICAgLy8gYm94LXNoYWRvdzogMCAycHggMThweCAycHggI2RkZDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuIiwiQGltcG9ydCBcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Nb250c2VycmF0OjMwMCw0MDAsNzAwXCI7XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAuaGVhZGVyLWxvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZHJvcGRvd25tZW51IHtcbiAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG4gICAgYm94LXNoYWRvdzogMCAycHggMThweCAycHggI2RkZDtcbiAgfVxuXG4gIC5tZW51bGlzdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAubWVudWxpc3RfIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5oZWFkZXItbG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5kcm9wZG93bm1lbnUge1xuICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYXJrKTtcbiAgICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDJweCAjZGRkO1xuICB9XG5cbiAgLm1lbnVsaXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1lbnVsaXN0XyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbG9nbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgei1pbmRleDogLTk5O1xuICB9XG59XG4uZHJvcGRvd25tZW51IHVsLFxuLmRyb3Bkb3dubWVudSBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmRyb3Bkb3dubWVudSB1bCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZHJvcGRvd25tZW51IGxpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ubG9naW5idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICByaWdodDogMHB4O1xufVxuXG4uZGlzbWlzc2J1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG59XG5cbi5ub3RpZmljYXRpb24ge1xuICBoZWlnaHQ6IDUwcHg7XG4gIG1hcmdpbjogMHB4O1xufVxuXG4uZHJvcGRvd25tZW51IGEge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IHNtYWxsZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMTZweCAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC40NXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40NXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjQ1cyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC40NXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNDVzIGVhc2U7XG4gIG1pbi13aWR0aDogMTUwcHg7XG59XG5cbi5kcm9wZG93bm1lbnUgbGk6aG92ZXIgYSB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4ubWVudWxpc3RfdG9wIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICBjb2xvcjogZ3JheTtcbiAgLyogZGlzcGxheTogYmxvY2s7ICovXG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA1cHggMjVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNDVzIGVhc2U7XG59XG5cbiNzdWJtZW51IHtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDk5OTtcbn1cblxubGk6aG92ZXIgdWwjc3VibWVudSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRvcDogNTZweDtcbiAgLyogYWRqdXN0IHRoaXMgYXMgcGVyIHRvcCBuYXYgcGFkZGluZyB0b3AgJiBib3R0b20gY29tZXMgKi9cbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuI3N1Ym1lbnUgbGkge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNzdWJtZW51IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBsaWdodGdyYXk7XG59XG5cbiNzdWJtZW51IGEge1xuICB6LWluZGV4OiA5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4udXNlci1hdmF0YXIge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNDVzIGVhc2U7XG4gIGJvcmRlcjogZ3JlZW47XG59XG5cbi5kZXNjcmlwdGlvbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXMgIWltcG9ydGFudDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5idXR0b24ge1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5idXR0b246aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnJ3ZC10YWJsZSB7XG4gIG1hcmdpbjogMWVtIDA7XG4gIG1pbi13aWR0aDogOTAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5yd2QtdGFibGUgdHIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5yd2QtdGFibGUgdGgge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucndkLXRhYmxlIHRkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG4ucndkLXRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDAuNWVtO1xufVxuXG4ucndkLXRhYmxlIHRkOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG59XG5cbi5yd2QtdGFibGUgdGQ6YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXRoKSBcIjogXCI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aWR0aDogOS41ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5yd2QtdGFibGUgdGQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ucndkLXRhYmxlIHRoLFxuLnJ3ZC10YWJsZSB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucndkLXRhYmxlIHRoLFxuLnJ3ZC10YWJsZSB0ZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gIH1cblxuICAucndkLXRhYmxlIHRoOmZpcnN0LWNoaWxkLFxuLnJ3ZC10YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLnJ3ZC10YWJsZSB0aDpsYXN0LWNoaWxkLFxuLnJ3ZC10YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5oMSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICBjb2xvcjogIzM0NDk1RTtcbn1cblxuLnJ3ZC10YWJsZSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICBib3JkZXItcmFkaXVzOiAwLjRlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yd2QtdGFibGUgLmhlYWRlcl8ge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4ucndkLXRhYmxlIHRyIHtcbiAgYm9yZGVyLWNvbG9yOiBsaWdodGdyYXk7XG59XG5cbi5yd2QtdGFibGUgdHI6aG92ZXI6bm90KC5oZWFkZXJfKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cblxuLnJ3ZC10YWJsZSB0aCxcbi5yd2QtdGFibGUgdGQge1xuICBtYXJnaW46IDAuNWVtIDFlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5yd2QtdGFibGUgdGgsXG4ucndkLXRhYmxlIHRkIHtcbiAgICBwYWRkaW5nOiAxZW0gIWltcG9ydGFudDtcbiAgfVxufVxuLnJ3ZC10YWJsZSB0aCxcbi5yd2QtdGFibGUgdGQ6YmVmb3JlIHtcbiAgY29sb3I6ICNkZDU7XG59XG5cbi8qIEltcG9ydGFudCBzdHlsZXMgKi9cbiN0b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAxNXB4IGF1dG8gNXB4O1xufVxuXG4jdG9nZ2xlIHNwYW46YWZ0ZXIsXG4jdG9nZ2xlIHNwYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IC02cHg7XG59XG5cbiN0b2dnbGUgc3BhbjphZnRlciB7XG4gIHRvcDogNnB4O1xufVxuXG4jdG9nZ2xlIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jdG9nZ2xlIHNwYW4sXG4jdG9nZ2xlIHNwYW46YWZ0ZXIsXG4jdG9nZ2xlIHNwYW46YmVmb3JlIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogM3B4O1xuICByaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4vKiBvbiBhY3RpdmF0aW9uICovXG4jdG9nZ2xlLm9uIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuI3RvZ2dsZS5vbiBzcGFuOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNXB4LCA1cHgpO1xufVxuXG4jdG9nZ2xlLm9uIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSg3cHgsIC04cHgpO1xufVxuXG4jdG9nZ2xlLm9uICsgI21lbnUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4vKiBtZW51IGFwcGVhcmFuY2UqL1xuI21lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMTAwcHg7XG4gIHJpZ2h0OiAzcHg7XG4gIGNvbG9yOiAjOTk5O1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAvKiBqdXN0IGZvciB0aGlzIGRlbW8gKi9cbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHM7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbiNtZW51OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMjBweDtcbiAgbGVmdDogMjEwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItbGVmdDogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAyMHB4IHNvbGlkIHdoaXRlO1xufVxuXG51bCxcbmxpLFxubGkgYSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmxpIGEge1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGNvbG9yOiAjODg4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICB3aWR0aDogMjUwcHg7XG59XG5cbmxpIGE6aG92ZXIsXG5saSBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzI0ODVlODtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5uZXdfYnV0dG9uIHtcbiAgcGFkZGluZy1yaWdodDogMzhweDtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cblxuLmxpc3RidXR0b24ge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDVweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cbi5saXN0YnV0dG9uIHNwYW4ge1xuICBjb2xvcjogIzIxMjUyOTtcbiAgcGFkZGluZzogOHB4IDIwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLmxpc3RidXR0b246aG92ZXIge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzI0ODVlODtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cbi5saXN0YnV0dG9uOmhvdmVyIHNwYW4ge1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBwYWRkaW5nOiA4cHggMjBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIGRlbW8gc3R5bGVzICovXG5wLFxucCBhIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjODg4O1xufVxuXG4ubWVudV90b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTk5OTk5O1xuICByaWdodDogMHB4O1xuICB0b3A6IDUwcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5jYXJkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbn1cblxuLnNlYXJjaGJhciB7XG4gIG1heC1oZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXgtd2lkdGg6IDI1MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC0tYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi5zZWFyY2hiYXI6aG92ZXIge1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xufVxuXG5pbWcge1xuICBib3gtc2hhZG93OiAwIDJweCAxOHB4IDJweCAjZGRkO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG5pbWc6aG92ZXIge1xuICBib3gtc2hhZG93OiBub25lO1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/header/header.component.ts":
  /*!*******************************************************!*\
    !*** ./src/app/components/header/header.component.ts ***!
    \*******************************************************/
  /*! exports provided: HeaderComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HeaderComponent", function() { return HeaderComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! firebase */ "./node_modules/firebase/dist/index.cjs.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(firebase__WEBPACK_IMPORTED_MODULE_4__);
  /* harmony import */ var _ionic_storage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ionic/storage */ "./node_modules/@ionic/storage/fesm5/ionic-storage.js");
  /* harmony import */ var _app_pop_over_pop_over_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../app/pop-over/pop-over.component */ "./src/app/pop-over/pop-over.component.ts");
  
  
  
  
  
  
  
  var HeaderComponent = /** @class */ (function () {
      function HeaderComponent(router, storage, popoverController, navCtrl) {
          this.router = router;
          this.storage = storage;
          this.popoverController = popoverController;
          this.navCtrl = navCtrl;
          this.color = "primary";
          this.isModal = false;
          this.slideOptsTut = {
              slidesPerView: 2.5,
          };
          this.slideOpts = {
              slidesPerView: 2.5,
          };
          this.url = 'https://docs.google.com/forms/d/e/1FAIpQLScV-zQUczmjcsFmNRn9Z7k0sr51BlOm2qaICgs-tq3P6OfG3g/viewform?usp=sf_link';
          this.checkUserStatus();
          console.log('enter header', this.url);
      }
      HeaderComponent.prototype.ngOnInit = function () {
          this.checkUserStatus();
          console.log('enter header oninit');
      };
      HeaderComponent.prototype.onaboutus = function () {
          this.navCtrl.navigateRoot("/about-us");
      };
      HeaderComponent.prototype.onaboutussubmenu1 = function () {
          this.navCtrl.navigateRoot("/about-us-submenu1");
      };
      HeaderComponent.prototype.onaboutussubmenu2 = function () {
          this.navCtrl.navigateRoot("/about-us-submenu2");
      };
      HeaderComponent.prototype.onaboutussubmenu3 = function () {
          this.navCtrl.navigateRoot("/about-us-submenu3");
      };
      HeaderComponent.prototype.onjoinussubmenu1 = function () {
          this.navCtrl.navigateRoot("/contact-us-submenu1");
      };
      HeaderComponent.prototype.onjoinussubmenu2 = function () {
          this.navCtrl.navigateRoot("/contact-us-submenu2");
      };
      HeaderComponent.prototype.onjoinussubmenu3 = function () {
          this.navCtrl.navigateRoot("/contact-us-submenu3");
      };
      HeaderComponent.prototype.onjoinus = function () {
          this.navCtrl.navigateRoot("/join-us");
      };
      HeaderComponent.prototype.oncontactus = function () {
          this.navCtrl.navigateRoot("contact-us");
      };
      HeaderComponent.prototype.oncategoriespage = function () {
          this.navCtrl.navigateRoot("/");
      };
      HeaderComponent.prototype.checkUserStatus = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_4__["auth"]().onAuthStateChanged(function (user) {
              console.log('header user is: ', user, user.metadata.creationTime);
              if (user) {
                  _this.creationTime = user.metadata.creationTime;
                  _this.lastSignInTime = user.metadata.lastSignInTime;
                  // User is signed in.
                  var isAnonymous_1 = user.isAnonymous;
                  _this.uid = user.uid;
                  _this.displayName = user.displayName;
                  _this.photoURL = user.photoURL;
                  console.log(user, _this.photoURL, _this.displayName);
                  var displayName_1 = user.displayName;
                  var email_1 = user.email;
                  _this.email = email_1;
                  var emailVerified = user.emailVerified;
                  var photoURL_1 = user.photoURL;
                  var uid_1 = user.uid;
                  var phoneNumber = user.phoneNumber;
                  var providerData = user.providerData;
                  user.getIdToken().then(function (accessToken) {
                      console.log("accessToken: ", accessToken);
                      // document.getElementById("sign-in-status").textContent = "Signed in";
                      // document.getElementById("sign-in").textContent = "Sign out";
                      _this.signin = "Sign out";
                      _this.isAnonymous = isAnonymous_1;
                      _this.displayName = displayName_1;
                      _this.uid = uid_1;
                      _this.email = email_1;
                      _this.photoURL = photoURL_1;
                  });
                  // this.navCtrl.navigateForward("/firebase/categories");
                  //   this.navCtrl.navigateForward("/firebase/categories");
              }
              else {
                  // User is signed out.
                  // document.getElementById("sign-in-status").textContent = "Signed out";
                  // document.getElementById("sign-in").textContent = "Sign in";
                  _this.signin = "Sign in";
                  // document.getElementById("account-details").textContent = "null";
                  //    this.navCtrl.navigateForward("/auth/signup");
              }
          }, function (error) {
              console.log(error);
          });
      };
      HeaderComponent.prototype.onSignIn = function () {
          // app/auth/signup
          this.navCtrl.navigateForward('app/auth/signup');
      };
      HeaderComponent.prototype.onSignOut = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_4__["auth"]().onAuthStateChanged(function (user) {
              if (user) {
                  // User is signed in.
                  var isAnonymous_2 = user.isAnonymous;
                  _this.uid = user.uid;
                  _this.displayName = user.displayName;
                  _this.photoURL = user.photoURL;
                  console.log(user, isAnonymous_2);
                  var displayName_2 = user.displayName;
                  var email_2 = user.email;
                  var emailVerified = user.emailVerified;
                  var photoURL_2 = user.photoURL;
                  var uid_2 = user.uid;
                  var phoneNumber = user.phoneNumber;
                  var providerData = user.providerData;
                  user.getIdToken().then(function (accessToken) {
                      console.log("accessToken: ", accessToken);
                      // document.getElementById("sign-in-status").textContent = "Signed in";
                      // document.getElementById("sign-in").textContent = "Sign out";
                      _this.signin = "Sign out";
                      _this.isAnonymous = isAnonymous_2;
                      _this.displayName = displayName_2;
                      _this.uid = uid_2;
                      _this.email = email_2;
                      _this.photoURL = photoURL_2;
                  });
                  firebase__WEBPACK_IMPORTED_MODULE_4__["auth"]()
                      .signOut()
                      .then(function () {
                      _this.storage.remove("firebaseui::rememberedAccounts");
                      console.log("signed out");
                      // User is signed out.
                      // document.getElementById("sign-in-status").textContent =
                      // "Signed out";
                      // document.getElementById("sign-in").textContent = "Sign in";
                      _this.signin = "Sign in";
                      // document.getElementById("account-details").textContent = "null";
                      _this.navCtrl.navigateForward("/app/auth/signup");
                  })
                      .catch(function (error) { });
              }
              else {
                  // User is signed out.
                  // document.getElementById("sign-in-status").textContent = "Signed out";
                  // document.getElementById("sign-in").textContent = "Sign in";
                  _this.signin = "Sign in";
                  // document.getElementById("account-details").textContent = "null";
                  //    this.navCtrl.navigateForward("/auth/signup");
              }
          }, function (error) {
              console.log(error);
          });
      };
      HeaderComponent.prototype.onProfilePage = function () {
          this.navCtrl.navigateForward('firebase/user-profile');
      };
      HeaderComponent.prototype.presentPopover = function (ev) {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () {
              var popover;
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
                  switch (_a.label) {
                      case 0: return [4 /*yield*/, this.popoverController.create({
                              component: _app_pop_over_pop_over_component__WEBPACK_IMPORTED_MODULE_6__["PopOverComponent"],
                              event: ev,
                              translucent: false,
                              cssClass: 'popover-profile',
                              backdropDismiss: true,
                              mode: 'ios'
                          })];
                      case 1:
                          popover = _a.sent();
                          return [4 /*yield*/, popover.present()];
                      case 2: return [2 /*return*/, _a.sent()];
                  }
              });
          });
      };
      HeaderComponent.prototype.presentPopoverNotification = function (ev) {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () {
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
                  return [2 /*return*/];
              });
          });
      };
      HeaderComponent.prototype.onblogpage = function () {
          console.log('Blog page');
          //   this.navCtrl.navigateForward('firebase/notifications');
      };
      HeaderComponent.ctorParameters = function () { return [
          { type: _angular_router__WEBPACK_IMPORTED_MODULE_2__["Router"] },
          { type: _ionic_storage__WEBPACK_IMPORTED_MODULE_5__["Storage"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_3__["PopoverController"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_3__["NavController"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String)
      ], HeaderComponent.prototype, "title", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], HeaderComponent.prototype, "color", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], HeaderComponent.prototype, "isModal", void 0);
      HeaderComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-header",
              template: __webpack_require__(/*! raw-loader!./header.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/header/header.component.html"),
              styles: [__webpack_require__(/*! ./header.component.scss */ "./src/app/components/header/header.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_router__WEBPACK_IMPORTED_MODULE_2__["Router"],
              _ionic_storage__WEBPACK_IMPORTED_MODULE_5__["Storage"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_3__["PopoverController"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_3__["NavController"]])
      ], HeaderComponent);
      return HeaderComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/nodata/nodata.component.scss":
  /*!*********************************************************!*\
    !*** ./src/app/components/nodata/nodata.component.scss ***!
    \*********************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbm9kYXRhL25vZGF0YS5jb21wb25lbnQuc2NzcyJ9 */"
  
  /***/ }),
  
  /***/ "./src/app/components/nodata/nodata.component.ts":
  /*!*******************************************************!*\
    !*** ./src/app/components/nodata/nodata.component.ts ***!
    \*******************************************************/
  /*! exports provided: NodataComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "NodataComponent", function() { return NodataComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var NodataComponent = /** @class */ (function () {
      function NodataComponent() {
      }
      NodataComponent.prototype.ngOnInit = function () { };
      NodataComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-nodata',
              template: __webpack_require__(/*! raw-loader!./nodata.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/nodata/nodata.component.html"),
              styles: [__webpack_require__(/*! ./nodata.component.scss */ "./src/app/components/nodata/nodata.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], NodataComponent);
      return NodataComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/rating-input/rating-input.component.scss":
  /*!*********************************************************************!*\
    !*** ./src/app/components/rating-input/rating-input.component.scss ***!
    \*********************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ".loadingsection {\n  background: var(--ion-color-dark);\n  margin: 0;\n  height: 100%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.loader {\n  display: flex;\n  flex-direction: row;\n  align-items: center;\n}\n\n.line {\n  width: 10px;\n  height: 5px;\n  background: white;\n  margin: 2px;\n  -webkit-animation: line 1s infinite linear;\n          animation: line 1s infinite linear;\n}\n\n.line:nth-child(1) {\n  -webkit-animation-delay: 0s;\n          animation-delay: 0s;\n}\n\n.line:nth-child(2) {\n  -webkit-animation-delay: 0.3s;\n          animation-delay: 0.3s;\n}\n\n.line:nth-child(3) {\n  -webkit-animation-delay: 0.55s;\n          animation-delay: 0.55s;\n}\n\n.line:nth-child(4) {\n  -webkit-animation-delay: 0.8s;\n          animation-delay: 0.8s;\n}\n\n.line:nth-child(5) {\n  -webkit-animation-delay: 1.1s;\n          animation-delay: 1.1s;\n}\n\n@-webkit-keyframes line {\n  0% {\n    transform: scaleY(1) scaleX(0.5);\n  }\n  50% {\n    transform: scaleY(10) scaleX(1);\n  }\n  100% {\n    transform: scaleY(1) scaleX(0.5);\n  }\n}\n\n@keyframes line {\n  0% {\n    transform: scaleY(1) scaleX(0.5);\n  }\n  50% {\n    transform: scaleY(10) scaleX(1);\n  }\n  100% {\n    transform: scaleY(1) scaleX(0.5);\n  }\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3JhdGluZy1pbnB1dC9yYXRpbmctaW5wdXQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcmF0aW5nLWlucHV0L3JhdGluZy1pbnB1dC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNDLGlDQUFBO0VBRUQsU0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtBQ0RBOztBRElBO0VBQ0MsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7QUNERDs7QURJQTtFQUNDLFdBQUE7RUFDQSxXQUFBO0VBRUQsaUJBQUE7RUFDQyxXQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtBQ0ZEOztBREtBO0VBQ0MsMkJBQUE7VUFBQSxtQkFBQTtBQ0ZEOztBREtBO0VBQ0MsNkJBQUE7VUFBQSxxQkFBQTtBQ0ZEOztBREtBO0VBQ0MsOEJBQUE7VUFBQSxzQkFBQTtBQ0ZEOztBREtBO0VBQ0MsNkJBQUE7VUFBQSxxQkFBQTtBQ0ZEOztBRElBO0VBQ0MsNkJBQUE7VUFBQSxxQkFBQTtBQ0REOztBREdBO0VBQ0M7SUFDQyxnQ0FBQTtFQ0FBO0VER0Q7SUFDQywrQkFBQTtFQ0RBO0VESUQ7SUFDQyxnQ0FBQTtFQ0ZBO0FBQ0Y7O0FEVEE7RUFDQztJQUNDLGdDQUFBO0VDQUE7RURHRDtJQUNDLCtCQUFBO0VDREE7RURJRDtJQUNDLGdDQUFBO0VDRkE7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcmF0aW5nLWlucHV0L3JhdGluZy1pbnB1dC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxuLmxvYWRpbmdzZWN0aW9uIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuLy9iYWNrZ3JvdW5kOiAjMDAwNjIwO1xubWFyZ2luOiAwO1xuaGVpZ2h0OiAxMDAlO1xuZGlzcGxheTogZmxleDtcbmFsaWduLWl0ZW1zOiBjZW50ZXI7XG5qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmxvYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5saW5lIHtcblx0d2lkdGg6IDEwcHg7XG5cdGhlaWdodDogNXB4O1xuLy9cdGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG5iYWNrZ3JvdW5kOiB3aGl0ZTtcblx0bWFyZ2luOiAycHg7XG5cdGFuaW1hdGlvbjogbGluZSAxcyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi5saW5lOm50aC1jaGlsZCgxKSB7XG5cdGFuaW1hdGlvbi1kZWxheTogMHM7XG59XG5cbi5saW5lOm50aC1jaGlsZCgyKSB7XG5cdGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuLmxpbmU6bnRoLWNoaWxkKDMpIHtcblx0YW5pbWF0aW9uLWRlbGF5OiAwLjU1cztcbn1cblxuLmxpbmU6bnRoLWNoaWxkKDQpIHtcblx0YW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xufVxuLmxpbmU6bnRoLWNoaWxkKDUpIHtcblx0YW5pbWF0aW9uLWRlbGF5OiAxLjFzO1xufVxuQGtleWZyYW1lcyBsaW5lIHtcblx0MCUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGVZKDEpIHNjYWxlWCgwLjUpO1xuXHR9XG5cblx0NTAlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlWSgxMCkgc2NhbGVYKDEpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZVkoMSkgc2NhbGVYKDAuNSk7XG5cdH1cbn1cblxuXG5cblxuLy8gYXBwLXJhdGluZy1pbnB1dCB7XG4vLyAgIC0tcmF0aW5nLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuLy8gICAtLXJhdGluZy1jb2xvcjogIzAwMDtcbi8vICAgLS1yYXRpbmctc2l6ZTogMzJweDtcblxuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gICBhbGlnbi1pdGVtczogY2VudGVyO1xuLy8gICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4vLyBcdGlvbi1idXR0b24ucmF0aW5nLWljb24ge1xuLy8gICAgIC0tYmFja2dyb3VuZDogdmFyKC0tcmF0aW5nLWJhY2tncm91bmQpO1xuLy8gICAgIC0tY29sb3I6IHZhcigtLXJhdGluZy1jb2xvcik7XG4vLyAgICAgLS1jb2xvci1hY3RpdmF0ZWQ6IHZhcigtLXJhdGluZy1jb2xvcik7XG4vLyAgICAgLS1ib3gtc2hhZG93OiBub25lO1xuLy8gICAgIC0tcGFkZGluZy1ib3R0b206IDBweDtcbi8vICAgICAtLXBhZGRpbmctZW5kOiA0cHg7XG4vLyAgICAgLS1wYWRkaW5nLXN0YXJ0OiA0cHg7XG4vLyAgICAgLS1wYWRkaW5nLXRvcDogMHB4O1xuXG4vLyAgICAgbWFyZ2luOiAwcHg7XG4vLyBcdFx0ZmxleDogMTtcbi8vIFx0ICB3aWR0aDogdmFyKC0tcmF0aW5nLXNpemUpO1xuLy8gXHR9XG4vLyB9XG4iLCIubG9hZGluZ3NlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmxvYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5saW5lIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgbWFyZ2luOiAycHg7XG4gIGFuaW1hdGlvbjogbGluZSAxcyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi5saW5lOm50aC1jaGlsZCgxKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG59XG5cbi5saW5lOm50aC1jaGlsZCgyKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuLmxpbmU6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjU1cztcbn1cblxuLmxpbmU6bnRoLWNoaWxkKDQpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xufVxuXG4ubGluZTpudGgtY2hpbGQoNSkge1xuICBhbmltYXRpb24tZGVsYXk6IDEuMXM7XG59XG5cbkBrZXlmcmFtZXMgbGluZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgxKSBzY2FsZVgoMC41KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKDEwKSBzY2FsZVgoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMSkgc2NhbGVYKDAuNSk7XG4gIH1cbn0iXX0= */"
  
  /***/ }),
  
  /***/ "./src/app/components/rating-input/rating-input.component.ts":
  /*!*******************************************************************!*\
    !*** ./src/app/components/rating-input/rating-input.component.ts ***!
    \*******************************************************************/
  /*! exports provided: RatingInputComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RatingInputComponent", function() { return RatingInputComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  
  
  
  var RatingInputComponent = /** @class */ (function () {
      function RatingInputComponent() {
          this.max = 5;
          this.readOnly = false;
          this.propagateChange = function () { }; // Noop function
      }
      RatingInputComponent_1 = RatingInputComponent;
      RatingInputComponent.prototype.ngOnInit = function () {
          var states = [];
          for (var i = 0; i < this.max; i++) {
              if (this.innerValue > i && this.innerValue < i + 1) {
                  states[i] = 2;
              }
              else if (this.innerValue > i) {
                  states[i] = 1;
              }
              else {
                  states[i] = 0;
              }
          }
          this.range = states;
      };
      Object.defineProperty(RatingInputComponent.prototype, "value", {
          get: function () {
              return this.innerValue;
          },
          set: function (val) {
              if (val !== this.innerValue) {
                  this.innerValue = val;
                  this.propagateChange(val);
              }
          },
          enumerable: true,
          configurable: true
      });
      RatingInputComponent.prototype.writeValue = function (value) {
          if (value !== this.innerValue) {
              this.innerValue = value;
          }
      };
      RatingInputComponent.prototype.registerOnChange = function (fn) {
          this.propagateChange = fn;
      };
      RatingInputComponent.prototype.registerOnTouched = function () { };
      RatingInputComponent.prototype.rate = function (amount) {
          if (!this.readOnly && amount >= 0 && amount <= this.range.length) {
              this.value = amount;
          }
      };
      var RatingInputComponent_1;
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], RatingInputComponent.prototype, "max", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], RatingInputComponent.prototype, "readOnly", void 0);
      RatingInputComponent = RatingInputComponent_1 = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-rating-input',
              template: __webpack_require__(/*! raw-loader!./rating-input.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/rating-input/rating-input.component.html"),
              providers: [
                  { provide: _angular_forms__WEBPACK_IMPORTED_MODULE_2__["NG_VALUE_ACCESSOR"], useExisting: Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["forwardRef"])(function () { return RatingInputComponent_1; }), multi: true }
              ],
              encapsulation: _angular_core__WEBPACK_IMPORTED_MODULE_1__["ViewEncapsulation"].None,
              styles: [__webpack_require__(/*! ./rating-input.component.scss */ "./src/app/components/rating-input/rating-input.component.scss")]
          })
      ], RatingInputComponent);
      return RatingInputComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/search-form/search-form.component.scss":
  /*!*******************************************************************!*\
    !*** ./src/app/components/search-form/search-form.component.scss ***!
    \*******************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvc2VhcmNoLWZvcm0vc2VhcmNoLWZvcm0uY29tcG9uZW50LnNjc3MifQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/search-form/search-form.component.ts":
  /*!*****************************************************************!*\
    !*** ./src/app/components/search-form/search-form.component.ts ***!
    \*****************************************************************/
  /*! exports provided: SearchFormComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SearchFormComponent", function() { return SearchFormComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var SearchFormComponent = /** @class */ (function () {
      function SearchFormComponent() {
      }
      SearchFormComponent.prototype.ngOnInit = function () { };
      SearchFormComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-search-form",
              template: __webpack_require__(/*! raw-loader!./search-form.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/search-form/search-form.component.html"),
              styles: [__webpack_require__(/*! ./search-form.component.scss */ "./src/app/components/search-form/search-form.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], SearchFormComponent);
      return SearchFormComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/show-hide-password/show-hide-password.component.scss":
  /*!*********************************************************************************!*\
    !*** ./src/app/components/show-hide-password/show-hide-password.component.scss ***!
    \*********************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  display: flex;\n  width: 100%;\n  align-items: center;\n}\n:host .type-toggle {\n  -webkit-padding-start: 0.5rem;\n          padding-inline-start: 0.5rem;\n}\n:host .type-toggle .show-option,\n:host .type-toggle .hide-option {\n  font-size: 1.4rem;\n  display: block;\n}\n:host .type-toggle .show-option:not(ion-icon),\n:host .type-toggle .hide-option:not(ion-icon) {\n  text-transform: uppercase;\n  font-size: 1rem;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3Nob3ctaGlkZS1wYXNzd29yZC9zaG93LWhpZGUtcGFzc3dvcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvc2hvdy1oaWRlLXBhc3N3b3JkL3Nob3ctaGlkZS1wYXNzd29yZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGFBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7QUNDRjtBRENFO0VBQ0UsNkJBQUE7VUFBQSw0QkFBQTtBQ0NKO0FEQ0k7O0VBRUUsaUJBQUE7RUFDQSxjQUFBO0FDQ047QURFTTs7RUFDRSx5QkFBQTtFQUNBLGVBQUE7QUNDUiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvc2hvdy1oaWRlLXBhc3N3b3JkL3Nob3ctaGlkZS1wYXNzd29yZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLnR5cGUtdG9nZ2xlIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMC41cmVtO1xuXG4gICAgLnNob3ctb3B0aW9uLFxuICAgIC5oaWRlLW9wdGlvbiB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAvLyBJbiBjYXNlIHlvdSB3YW50IHRvIHVzZSB0ZXh0IGluc3RlYWQgb2YgaWNvbnNcbiAgICAgICY6bm90KGlvbi1pY29uKSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjpob3N0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG46aG9zdCAudHlwZS10b2dnbGUge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMC41cmVtO1xufVxuOmhvc3QgLnR5cGUtdG9nZ2xlIC5zaG93LW9wdGlvbixcbjpob3N0IC50eXBlLXRvZ2dsZSAuaGlkZS1vcHRpb24ge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG46aG9zdCAudHlwZS10b2dnbGUgLnNob3ctb3B0aW9uOm5vdChpb24taWNvbiksXG46aG9zdCAudHlwZS10b2dnbGUgLmhpZGUtb3B0aW9uOm5vdChpb24taWNvbikge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDFyZW07XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/show-hide-password/show-hide-password.component.ts":
  /*!*******************************************************************************!*\
    !*** ./src/app/components/show-hide-password/show-hide-password.component.ts ***!
    \*******************************************************************************/
  /*! exports provided: ShowHidePasswordComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShowHidePasswordComponent", function() { return ShowHidePasswordComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  
  
  var ShowHidePasswordComponent = /** @class */ (function () {
      function ShowHidePasswordComponent() {
          this.show = false;
      }
      ShowHidePasswordComponent.prototype.toggleShow = function () {
          this.show = !this.show;
          if (this.show) {
              this.input.type = 'text';
          }
          else {
              this.input.type = 'password';
          }
      };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["ContentChild"])(_ionic_angular__WEBPACK_IMPORTED_MODULE_2__["IonInput"], { static: false }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", _ionic_angular__WEBPACK_IMPORTED_MODULE_2__["IonInput"])
      ], ShowHidePasswordComponent.prototype, "input", void 0);
      ShowHidePasswordComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-show-hide-password',
              template: __webpack_require__(/*! raw-loader!./show-hide-password.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/show-hide-password/show-hide-password.component.html"),
              styles: [__webpack_require__(/*! ./show-hide-password.component.scss */ "./src/app/components/show-hide-password/show-hide-password.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], ShowHidePasswordComponent);
      return ShowHidePasswordComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.scss":
  /*!*******************************************************************************************!*\
    !*** ./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.scss ***!
    \*******************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ".progress-section .progress-bar {\n  width: 800px !important;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZC10YXNrLWJ1bGstaW1wb3J0L3VwbG9hZC10YXNrLWJ1bGstaW1wb3J0LmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZC10YXNrLWJ1bGstaW1wb3J0L3VwbG9hZC10YXNrLWJ1bGstaW1wb3J0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdJO0VBRUosdUJBQUE7QUNIQSIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBsb2FkLXRhc2stYnVsay1pbXBvcnQvdXBsb2FkLXRhc2stYnVsay1pbXBvcnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucHJvZ3Jlc3Mtc2VjdGlvbiB7XG5cbi8vIGJhY2tncm91bmQ6IHJlZDtcbiAgICAucHJvZ3Jlc3MtYmFyIHtcbi8vYmFja2dyb3VuZDogYmx1ZTtcbndpZHRoOiA4MDBweCAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuXG5cblxuLy8gLnByb2dyZXNzLXNlY3Rpb24ge1xuLy8gICAgIGRpc3BsYXk6IGZsZXg7XG4vLyAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbi8vICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuLy8gICAgIG1pbi13aWR0aDogMTAwJTtcbi8vICAgICBmb250LXdlaWdodDogMjAwO1xuLy8gICAgIGhlaWdodDogMzAwcHg7XG4vLyAgICAgYm9yZGVyOiA0cHggZGFzaGVkICNkYWRhZGE7XG4vLyAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuLy8gICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuLy8gICAgIG1hcmdpbjogMTBweCAwO1xuXG4vLyAgICAgJi5ob3ZlcmluZyB7XG4vLyAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4vLyAgICAgICAgIGNvbG9yOiAjZGFkYWRhICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuXG4vLyAgICAgLmZpbGUtbGFiZWwge1xuLy8gICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuLy8gICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbi8vICAgICB9XG5cbi8vICAgICBoMSB7XG4vLyAgICAgICAgIGNvbG9yOiAjZGFkYWRhO1xuLy8gICAgIH1cbi8vICAgICBoMyB7XG4vLyAgICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuLy8gICAgIH1cblxuLy8gICAgIHAge1xuLy8gICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbi8vICAgICB9XG4vLyB9XG5cbi8vIHByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbi8vICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2U7XG4vLyB9XG5cbi8vIC5pY29uIHtcbi8vICAgICB3aWR0aDogMjAwcHg7XG4vLyB9IiwiLnByb2dyZXNzLXNlY3Rpb24gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiA4MDBweCAhaW1wb3J0YW50O1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.ts":
  /*!*****************************************************************************************!*\
    !*** ./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.ts ***!
    \*****************************************************************************************/
  /*! exports provided: UploadTaskBulkImportComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadTaskBulkImportComponent", function() { return UploadTaskBulkImportComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/fire/storage */ "./node_modules/@angular/fire/storage/index.js");
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  
  // import { Component, OnInit } from '@angular/core';
  
  
  
  
  var UploadTaskBulkImportComponent = /** @class */ (function () {
      function UploadTaskBulkImportComponent(storage, 
      //    private firebaseService: FirebaseService
      db) {
          this.storage = storage;
          this.db = db;
      }
      UploadTaskBulkImportComponent.prototype.ngOnInit = function () {
          console.log('id is ', this.id);
          this.startUpload();
      };
      UploadTaskBulkImportComponent.prototype.startUpload = function () {
          var _this = this;
          // The storage path
          console.log(this.id);
          var path = "Invoice/" + Date.now() + "_" + this.file.name;
          // Reference to storage bucket
          var ref = this.storage.ref(path);
          // var metadata = {
          //   contentType: 'text/csv',
          // };
          // The main task
          // this.task = this.storage.upload(path, this.file, metadata);
          this.task = this.storage.upload(path, this.file);
          // Progress monitoring
          this.percentage = this.task.percentageChanges();
          this.snapshot = this.task.snapshotChanges().pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["tap"])(console.log), 
          // The file's download URL
          Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["finalize"])(function () { return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](_this, void 0, void 0, function () {
              var _a;
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_b) {
                  switch (_b.label) {
                      case 0:
                          _a = this;
                          return [4 /*yield*/, ref.getDownloadURL().toPromise()];
                      case 1:
                          _a.downloadURL = _b.sent();
                          this.db
                              .collection(this.id)
                              .doc("Contacts")
                              // .collection("Contacts")
                              //     .update({ downloadURL: this.downloadURL, path });
                              .set({ downloadURL: this.downloadURL, path: path });
                          return [2 /*return*/];
                  }
              });
          }); }));
      };
      UploadTaskBulkImportComponent.prototype.isActive = function (snapshot) {
          return (snapshot.state === "running" &&
              snapshot.bytesTransferred < snapshot.totalBytes);
      };
      UploadTaskBulkImportComponent.ctorParameters = function () { return [
          { type: _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"] },
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", File)
      ], UploadTaskBulkImportComponent.prototype, "file", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploadTaskBulkImportComponent.prototype, "id", void 0);
      UploadTaskBulkImportComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-upload-task-bulk-import',
              template: __webpack_require__(/*! raw-loader!./upload-task-bulk-import.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.html"),
              styles: [__webpack_require__(/*! ./upload-task-bulk-import.component.scss */ "./src/app/components/upload-task-bulk-import/upload-task-bulk-import.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"],
              _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"]])
      ], UploadTaskBulkImportComponent);
      return UploadTaskBulkImportComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task-sq/upload-task-sq.component.scss":
  /*!*************************************************************************!*\
    !*** ./src/app/components/upload-task-sq/upload-task-sq.component.scss ***!
    \*************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBsb2FkLXRhc2stc3EvdXBsb2FkLXRhc2stc3EuY29tcG9uZW50LnNjc3MifQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task-sq/upload-task-sq.component.ts":
  /*!***********************************************************************!*\
    !*** ./src/app/components/upload-task-sq/upload-task-sq.component.ts ***!
    \***********************************************************************/
  /*! exports provided: UploadTaskSqComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadTaskSqComponent", function() { return UploadTaskSqComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/fire/storage */ "./node_modules/@angular/fire/storage/index.js");
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  // import { Component, OnInit } from '@angular/core';
  
  
  
  
  
  var UploadTaskSqComponent = /** @class */ (function () {
      function UploadTaskSqComponent(toastCtrl, storage, db) {
          this.toastCtrl = toastCtrl;
          this.storage = storage;
          this.db = db;
      }
      UploadTaskSqComponent.prototype.ngOnInit = function () {
          this.startUpload();
      };
      UploadTaskSqComponent.prototype.startUpload = function () {
          var _this = this;
          // The storage path
          console.log(this.id, this.supplieruid);
          var sendee = this.id;
          var sendeeId = sendee.id;
          var supplieruid = this.supplieruid;
          var potential_supplier = sendee.potential_supplier;
          var path = "SQ/" + Date.now() + "_" + this.file.name;
          var timestamp = new Date().getTime();
          // calculate the time difference between sending quotation
          // enquiry by teacher and sending sale quotation by potential supplier
          // by min (ie / 1000 / 60) by hour (1000 / 60 / 60) by day (1000 / 60 / 60 / 24)
          var speed = (timestamp - sendee.timestamp) / 1000 / 60 / 60 / 24;
          //
          //  const speed_userId = speed.toString().concat(potential_supplier.toString());
          // Reference to storage bucket
          var ref = this.storage.ref(path);
          // The main task
          this.task = this.storage.upload(path, this.file);
          // Progress monitoring
          this.percentage = this.task.percentageChanges();
          this.snapshot = this.task.snapshotChanges().pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["tap"])(console.log), 
          // The file's download URL
          Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["finalize"])(function () { return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](_this, void 0, void 0, function () {
              var _a, sendeetimestamp;
              var _this = this;
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_b) {
                  switch (_b.label) {
                      case 0:
                          _a = this;
                          return [4 /*yield*/, ref.getDownloadURL().toPromise()];
                      case 1:
                          _a.downloadURL = _b.sent();
                          // this.db
                          //   .collection("SalesQuotation")
                          //   .add({ timestamp, downloadURL: this.downloadURL, path });
                          this.db.collection("SalesQuotation").add({
                              supplier_uid: supplieruid,
                              speed: speed,
                              sendeeId: sendeeId,
                              potential_supplier: potential_supplier,
                              timestamp: timestamp,
                              sendee: sendee,
                              sendee_id: sendee.id,
                              sendee_cate_1: sendee.cate_1,
                              sendee_class_length_lower: sendee.class_length_lower,
                              sendee_class_length_upper: sendee.class_length_upper,
                              sendee_class_size_lower: sendee.class_size_lower,
                              sendee_class_size_upper: sendee.class_size_upper,
                              sendee_target_user_age_lower: sendee.target_user_age_lower,
                              sendee_target_user_age_upper: sendee.target_user_age_upper,
                              sendee_potential_supplier: sendee.potential_supplier,
                              sendee_teaching_materials: sendee.teaching_materials,
                              sendee_timestamp: sendee.timestamp,
                              downloadURL: this.downloadURL,
                              path: path
                          });
                          sendeetimestamp = sendee.timestamp.toString();
                          this.db
                              .collection("QuotationEnquiry")
                              .doc(sendeetimestamp)
                              .update({ sq_sent: true })
                              .then(function () {
                              _this.presentToastWithOptions();
                          });
                          return [2 /*return*/];
                  }
              });
          }); }));
      };
      UploadTaskSqComponent.prototype.isActive = function (snapshot) {
          return (snapshot.state === "running" &&
              snapshot.bytesTransferred < snapshot.totalBytes);
      };
      UploadTaskSqComponent.prototype.presentToastWithOptions = function () {
          return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](this, void 0, void 0, function () {
              var toast;
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_a) {
                  switch (_a.label) {
                      case 0: return [4 /*yield*/, this.toastCtrl.create({
                              // header: 'Toast header',
                              message: "報價單提交成功!",
                              position: "bottom",
                              animated: true,
                              mode: "ios",
                              duration: 3000,
                              cssClass: "profile-toast",
                              translucent: false
                              // buttons: [
                              //   {
                              //     side: "end",
                              //     // icon: "star",
                              //     text: "我明白",
                              //     handler: () => {
                              //       console.log("Favorite clicked");
                              //       // this.navCtrl.navigateForward("firebase/user-profile");
                              //     }
                              //   }
                              //   // {
                              //   //   text: "我明白",
                              //   //   role: "cancel",
                              //   //   handler: () => {
                              //   //     console.log("Cancel clicked");
                              //   //     this.navCtrl.navigateForward("firebase/user-profile");
                              //   //   }
                              //   // }
                              // ]
                          })];
                      case 1:
                          toast = _a.sent();
                          toast.present();
                          return [2 /*return*/];
                  }
              });
          });
      };
      UploadTaskSqComponent.ctorParameters = function () { return [
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_5__["ToastController"] },
          { type: _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"] },
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", File)
      ], UploadTaskSqComponent.prototype, "file", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploadTaskSqComponent.prototype, "id", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String)
      ], UploadTaskSqComponent.prototype, "supplieruid", void 0);
      UploadTaskSqComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-upload-task-sq",
              template: __webpack_require__(/*! raw-loader!./upload-task-sq.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/upload-task-sq/upload-task-sq.component.html"),
              styles: [__webpack_require__(/*! ./upload-task-sq.component.scss */ "./src/app/components/upload-task-sq/upload-task-sq.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_ionic_angular__WEBPACK_IMPORTED_MODULE_5__["ToastController"],
              _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"],
              _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"]])
      ], UploadTaskSqComponent);
      return UploadTaskSqComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task/upload-task.component.scss":
  /*!*******************************************************************!*\
    !*** ./src/app/components/upload-task/upload-task.component.scss ***!
    \*******************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBsb2FkLXRhc2svdXBsb2FkLXRhc2suY29tcG9uZW50LnNjc3MifQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/upload-task/upload-task.component.ts":
  /*!*****************************************************************!*\
    !*** ./src/app/components/upload-task/upload-task.component.ts ***!
    \*****************************************************************/
  /*! exports provided: UploadTaskComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploadTaskComponent", function() { return UploadTaskComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/fire/storage */ "./node_modules/@angular/fire/storage/index.js");
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  
  // import { Component, OnInit } from '@angular/core';
  
  
  
  
  var UploadTaskComponent = /** @class */ (function () {
      function UploadTaskComponent(storage, db) {
          this.storage = storage;
          this.db = db;
      }
      UploadTaskComponent.prototype.ngOnInit = function () {
          this.startUpload();
      };
      UploadTaskComponent.prototype.startUpload = function () {
          var _this = this;
          // The storage path
          console.log(this.id);
          var path = "company_logo/" + Date.now() + "_" + this.file.name;
          // Reference to storage bucket
          var ref = this.storage.ref(path);
          // The main task
          this.task = this.storage.upload(path, this.file);
          // Progress monitoring
          this.percentage = this.task.percentageChanges();
          this.snapshot = this.task.snapshotChanges().pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["tap"])(console.log), 
          // The file's download URL
          Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_4__["finalize"])(function () { return tslib__WEBPACK_IMPORTED_MODULE_0__["__awaiter"](_this, void 0, void 0, function () {
              var _a;
              return tslib__WEBPACK_IMPORTED_MODULE_0__["__generator"](this, function (_b) {
                  switch (_b.label) {
                      case 0:
                          _a = this;
                          return [4 /*yield*/, ref.getDownloadURL().toPromise()];
                      case 1:
                          _a.downloadURL = _b.sent();
                          this.db
                              .collection(this.id)
                              .doc('Company_logo')
                              .set({ downloadURL: this.downloadURL, path: path });
                          return [2 /*return*/];
                  }
              });
          }); }));
      };
      UploadTaskComponent.prototype.isActive = function (snapshot) {
          return (snapshot.state === "running" &&
              snapshot.bytesTransferred < snapshot.totalBytes);
      };
      UploadTaskComponent.ctorParameters = function () { return [
          { type: _angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"] },
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", File)
      ], UploadTaskComponent.prototype, "file", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploadTaskComponent.prototype, "id", void 0);
      UploadTaskComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-upload-task",
              template: __webpack_require__(/*! raw-loader!./upload-task.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/upload-task/upload-task.component.html"),
              styles: [__webpack_require__(/*! ./upload-task.component.scss */ "./src/app/components/upload-task/upload-task.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_fire_storage__WEBPACK_IMPORTED_MODULE_2__["AngularFireStorage"],
              _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_3__["AngularFirestore"]])
      ], UploadTaskComponent);
      return UploadTaskComponent;
  }());
  
  // import { Component, OnInit, Input, ChangeDetectorRef } from "@angular/core";
  // import {
  //   AngularFireStorage,
  //   AngularFireUploadTask
  // } from "@angular/fire/storage";
  // import { AngularFirestore } from "@angular/fire/firestore";
  // import { Observable } from "rxjs";
  // import { finalize, tap } from "rxjs/operators";
  // @Component({
  //   selector: 'upload-task',
  //   templateUrl: "./upload-task.component.html",
  //   styleUrls: ["./upload-task.component.scss"]
  // })
  // export class UploadTaskComponent implements OnInit {
  //   @Input() file: File;
  //   task: AngularFireUploadTask;
  //   percentage: Observable<number>;
  //   snapshot: Observable<any>;
  //   downloadURL: string;
  //   constructor(
  //     private storage: AngularFireStorage,
  //     private db: AngularFirestore
  //   ) {}
  //   ngOnInit() {
  //     this.startUpload();
  //   }
  //   startUpload() {
  //     // The storage path
  //     const path = `test/${Date.now()}_${this.file.name}`;
  //     // Reference to storage bucket
  //     const ref = this.storage.ref(path);
  //     // The main task
  //     this.task = this.storage.upload(path, this.file);
  //     // Progress monitoring
  //     this.percentage = this.task.percentageChanges();
  //     this.snapshot = this.task.snapshotChanges().pipe(
  //       tap(console.log),
  //       // The file's download URL
  //       finalize(async () => {
  //         this.downloadURL = await ref.getDownloadURL().toPromise();
  //         this.db
  //           .collection("files")
  //           .add({ downloadURL: this.downloadURL, path });
  //       })
  //     );
  //   }
  //   isActive(snapshot) {
  //     return (
  //       snapshot.state === "running" &&
  //       snapshot.bytesTransferred < snapshot.totalBytes
  //     );
  //   }
  // }
  
  
  /***/ }),
  
  /***/ "./src/app/components/uploader-bulk-import/uploader-bulk-import.component.scss":
  /*!*************************************************************************************!*\
    !*** ./src/app/components/uploader-bulk-import/uploader-bulk-import.component.scss ***!
    \*************************************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ".dropzone {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n  /* width: 800px; */\n  /* min-width: 100%; */\n  /* font-weight: 200; */\n  /* height: 300px; */\n  border: 4px dashed #dadada;\n  border-radius: 20px;\n  background: var(--ion-color-dark-tint);\n  margin: 10px 0;\n  padding: 10px;\n}\n.dropzone.hovering {\n  border: 4px solid var(--ion-color-theme);\n  color: #dadada !important;\n}\n.dropzone .file-label {\n  font-size: 1.2em;\n  color: var(--ion-color-theme);\n}\n.dropzone h1 {\n  color: #dadada;\n}\n.dropzone h3 {\n  color: var(--ion-color-theme);\n}\n.dropzone p {\n  color: var(--ion-color-theme);\n}\nprogress::-webkit-progress-value {\n  transition: width 0.1s ease;\n}\n.icon {\n  width: 200px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyLWJ1bGstaW1wb3J0L3VwbG9hZGVyLWJ1bGstaW1wb3J0LmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyLWJ1bGstaW1wb3J0L3VwbG9hZGVyLWJ1bGstaW1wb3J0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksYUFBQTtFQUNFLG1CQUFBO0VBQ0YsdUJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsMEJBQUE7RUFDQSxtQkFBQTtFQUNBLHNDQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7QUNDSjtBRENJO0VBQ0ksd0NBQUE7RUFDQSx5QkFBQTtBQ0NSO0FERUk7RUFDSSxnQkFBQTtFQUNBLDZCQUFBO0FDQVI7QURHSTtFQUNJLGNBQUE7QUNEUjtBREdJO0VBQ0ksNkJBQUE7QUNEUjtBRElJO0VBQ0ksNkJBQUE7QUNGUjtBRE1BO0VBQ0ksMkJBQUE7QUNISjtBRE1BO0VBQ0ksWUFBQTtBQ0hKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91cGxvYWRlci1idWxrLWltcG9ydC91cGxvYWRlci1idWxrLWltcG9ydC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5kcm9wem9uZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvKiB3aWR0aDogODAwcHg7ICovXG4gICAgLyogbWluLXdpZHRoOiAxMDAlOyAqL1xuICAgIC8qIGZvbnQtd2VpZ2h0OiAyMDA7ICovXG4gICAgLyogaGVpZ2h0OiAzMDBweDsgKi9cbiAgICBib3JkZXI6IDRweCBkYXNoZWQgI2RhZGFkYTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYXJrLXRpbnQpO1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAmLmhvdmVyaW5nIHtcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgICAgICAgY29sb3I6ICNkYWRhZGEgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZmlsZS1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgY29sb3I6ICNkYWRhZGE7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICAgIH1cbn1cblxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZTtcbn1cblxuLmljb24ge1xuICAgIHdpZHRoOiAyMDBweDtcbn0iLCIuZHJvcHpvbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyogd2lkdGg6IDgwMHB4OyAqL1xuICAvKiBtaW4td2lkdGg6IDEwMCU7ICovXG4gIC8qIGZvbnQtd2VpZ2h0OiAyMDA7ICovXG4gIC8qIGhlaWdodDogMzAwcHg7ICovXG4gIGJvcmRlcjogNHB4IGRhc2hlZCAjZGFkYWRhO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyay10aW50KTtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4uZHJvcHpvbmUuaG92ZXJpbmcge1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICBjb2xvcjogI2RhZGFkYSAhaW1wb3J0YW50O1xufVxuLmRyb3B6b25lIC5maWxlLWxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG59XG4uZHJvcHpvbmUgaDEge1xuICBjb2xvcjogI2RhZGFkYTtcbn1cbi5kcm9wem9uZSBoMyB7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xufVxuLmRyb3B6b25lIHAge1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbn1cblxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2U7XG59XG5cbi5pY29uIHtcbiAgd2lkdGg6IDIwMHB4O1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/components/uploader-bulk-import/uploader-bulk-import.component.ts":
  /*!***********************************************************************************!*\
    !*** ./src/app/components/uploader-bulk-import/uploader-bulk-import.component.ts ***!
    \***********************************************************************************/
  /*! exports provided: UploaderBulkImportComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploaderBulkImportComponent", function() { return UploaderBulkImportComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var UploaderBulkImportComponent = /** @class */ (function () {
      function UploaderBulkImportComponent() {
          this.files = [];
      }
      UploaderBulkImportComponent.prototype.toggleHover = function (event) {
          this.isHovering = event;
      };
      UploaderBulkImportComponent.prototype.onDrop = function (files) {
          for (var i = 0; i < files.length; i++) {
              this.files.push(files.item(i));
          }
      };
      UploaderBulkImportComponent.prototype.ngOnInit = function () {
          console.log(this.id);
      };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploaderBulkImportComponent.prototype, "id", void 0);
      UploaderBulkImportComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-uploader-bulk-import',
              template: __webpack_require__(/*! raw-loader!./uploader-bulk-import.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/uploader-bulk-import/uploader-bulk-import.component.html"),
              styles: [__webpack_require__(/*! ./uploader-bulk-import.component.scss */ "./src/app/components/uploader-bulk-import/uploader-bulk-import.component.scss")]
          })
      ], UploaderBulkImportComponent);
      return UploaderBulkImportComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/uploader-sq/uploader-sq.component.scss":
  /*!*******************************************************************!*\
    !*** ./src/app/components/uploader-sq/uploader-sq.component.scss ***!
    \*******************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ".dropzone {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n  min-width: 100%;\n  font-weight: 200;\n  height: 300px;\n  border: 2px dashed var(--ion-color-theme);\n  border-radius: 5px;\n  background: white;\n  margin: 10px 0;\n}\n.dropzone.hovering {\n  border: 2px solid var(--ion-color-theme);\n  color: #dadada !important;\n}\n.dropzone .file-label {\n  font-size: 1.2em;\n  color: var(--ion-color-theme);\n}\n.dropzone h3 {\n  color: var(--ion-color-theme);\n}\n.dropzone p {\n  color: var(--ion-color-theme);\n}\nprogress::-webkit-progress-value {\n  transition: width 0.1s ease;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyLXNxL3VwbG9hZGVyLXNxLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyLXNxL3VwbG9hZGVyLXNxLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSx5Q0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0FDQ0o7QURDSTtFQUNJLHdDQUFBO0VBQ0EseUJBQUE7QUNDUjtBREVJO0VBQ0ksZ0JBQUE7RUFDQSw2QkFBQTtBQ0FSO0FER0k7RUFDSSw2QkFBQTtBQ0RSO0FESUk7RUFDSSw2QkFBQTtBQ0ZSO0FETUE7RUFDSSwyQkFBQTtBQ0hKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91cGxvYWRlci1zcS91cGxvYWRlci1zcS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5kcm9wem9uZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbiAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG5cclxuICAgICYuaG92ZXJpbmcge1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICAgICAgY29sb3I6ICNkYWRhZGEgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuZmlsZS1sYWJlbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbnByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcclxuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZTtcclxufSIsIi5kcm9wem9uZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGhlaWdodDogMzAwcHg7XG4gIGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtYXJnaW46IDEwcHggMDtcbn1cbi5kcm9wem9uZS5ob3ZlcmluZyB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIGNvbG9yOiAjZGFkYWRhICFpbXBvcnRhbnQ7XG59XG4uZHJvcHpvbmUgLmZpbGUtbGFiZWwge1xuICBmb250LXNpemU6IDEuMmVtO1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbn1cbi5kcm9wem9uZSBoMyB7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xufVxuLmRyb3B6b25lIHAge1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbn1cblxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGVhc2U7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/uploader-sq/uploader-sq.component.ts":
  /*!*****************************************************************!*\
    !*** ./src/app/components/uploader-sq/uploader-sq.component.ts ***!
    \*****************************************************************/
  /*! exports provided: UploaderSqComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploaderSqComponent", function() { return UploaderSqComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  
  
  
  var UploaderSqComponent = /** @class */ (function () {
      function UploaderSqComponent(db) {
          this.db = db;
          this.files = [];
      }
      UploaderSqComponent.prototype.toggleHover = function (event) {
          this.isHovering = event;
      };
      UploaderSqComponent.prototype.onDrop = function (files) {
          for (var i = 0; i < files.length; i++) {
              this.files.push(files.item(i));
          }
      };
      UploaderSqComponent.prototype.ngOnInit = function () {
          console.log(this.enquirydetail, this.supplieruid);
          this.NOW = new Date().getTime();
      };
      UploaderSqComponent.prototype.number = function (value, numDay) {
          //   console.log(value, numDay + 1, Number(numDay) + 1);
          this.sendeetimestamp = this.enquirydetail.timestamp;
          var getcountday = Number(numDay) + 1;
          var limit = 1000 * 60 * 60 * 24 * getcountday + Number(value);
          //    const atsent = new Date(Number(value));
          var atend = new Date(limit);
          var w = atend.toString().substr(4, 11);
          var countdownDate = new Date(w.toString()).getTime();
          this.atend = atend;
          var getNow = new Date().toString().substr(4, 11);
          var AT_END = atend.getTime();
          var NOW = new Date().getTime();
          // if (w === getNow) {
          if (AT_END < NOW) {
              this.hide = true;
          }
          else {
              this.hide = false;
          }
          // *important
          // console.log(w, getNow);
          return countdownDate;
      };
      UploaderSqComponent.ctorParameters = function () { return [
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__["AngularFirestore"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploaderSqComponent.prototype, "enquirydetail", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String)
      ], UploaderSqComponent.prototype, "supplieruid", void 0);
      UploaderSqComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-uploader-sq",
              template: __webpack_require__(/*! raw-loader!./uploader-sq.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/uploader-sq/uploader-sq.component.html"),
              styles: [__webpack_require__(/*! ./uploader-sq.component.scss */ "./src/app/components/uploader-sq/uploader-sq.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__["AngularFirestore"]])
      ], UploaderSqComponent);
      return UploaderSqComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/components/uploader/uploader.component.scss":
  /*!*************************************************************!*\
    !*** ./src/app/components/uploader/uploader.component.scss ***!
    \*************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ".dropzone {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  flex-direction: column;\n  max-width: 200px;\n  font-weight: 200;\n  height: 150px;\n  border: 2px dashed gray;\n  border-radius: 5px;\n  background: white;\n  margin: 10px 0;\n}\n.dropzone.hovering {\n  border: 2px solid var(--ion-color-theme);\n  color: #dadada !important;\n}\n.dropzone .file-label {\n  font-size: 1.2em;\n  color: var(--ion-color-theme);\n}\n.dropzone h3 {\n  color: var(--ion-color-theme);\n}\n.dropzone p {\n  color: var(--ion-color-theme);\n}\n.dropzone:hover {\n  border: 2px dashed var(--ion-color-theme);\n  cursor: pointer;\n}\nprogress::-webkit-progress-value {\n  transition: width 0.1s ease;\n}\n.icon {\n  width: 200px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyL3VwbG9hZGVyLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL3VwbG9hZGVyL3VwbG9hZGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUVBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY0FBQTtBQ0FKO0FERUk7RUFDSSx3Q0FBQTtFQUNBLHlCQUFBO0FDQVI7QURHSTtFQUNJLGdCQUFBO0VBQ0EsNkJBQUE7QUNEUjtBRElJO0VBQ0ksNkJBQUE7QUNGUjtBREtJO0VBQ0ksNkJBQUE7QUNIUjtBRE9BO0VBQ0kseUNBQUE7RUFDQSxlQUFBO0FDSko7QURNQTtFQUNJLDJCQUFBO0FDSEo7QURNQTtFQUNJLFlBQUE7QUNISiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBsb2FkZXIvdXBsb2FkZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZHJvcHpvbmUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgLy8gIG1pbi13aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgaGVpZ2h0OiAxNTBweDtcclxuICAgIGJvcmRlcjogMnB4IGRhc2hlZCBncmF5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuXHJcbiAgICAmLmhvdmVyaW5nIHtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG4gICAgICAgIGNvbG9yOiAjZGFkYWRhICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbGUtbGFiZWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZHJvcHpvbmU6aG92ZXIge1xyXG4gICAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWlvbi1jb2xvci10aGVtZSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xyXG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4xcyBlYXNlO1xyXG59XHJcblxyXG4uaWNvbiB7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbn0iLCIuZHJvcHpvbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgYm9yZGVyOiAycHggZGFzaGVkIGdyYXk7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuLmRyb3B6b25lLmhvdmVyaW5nIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgY29sb3I6ICNkYWRhZGEgIWltcG9ydGFudDtcbn1cbi5kcm9wem9uZSAuZmlsZS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xufVxuLmRyb3B6b25lIGgzIHtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG59XG4uZHJvcHpvbmUgcCB7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xufVxuXG4uZHJvcHpvbmU6aG92ZXIge1xuICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMXMgZWFzZTtcbn1cblxuLmljb24ge1xuICB3aWR0aDogMjAwcHg7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/components/uploader/uploader.component.ts":
  /*!***********************************************************!*\
    !*** ./src/app/components/uploader/uploader.component.ts ***!
    \***********************************************************/
  /*! exports provided: UploaderComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UploaderComponent", function() { return UploaderComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var UploaderComponent = /** @class */ (function () {
      function UploaderComponent() {
          this.files = [];
      }
      UploaderComponent.prototype.toggleHover = function (event) {
          this.isHovering = event;
      };
      UploaderComponent.prototype.onDrop = function (files) {
          for (var i = 0; i < files.length; i++) {
              this.files.push(files.item(i));
          }
      };
      UploaderComponent.prototype.ngOnInit = function () {
          console.log(this.id);
      };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UploaderComponent.prototype, "id", void 0);
      UploaderComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-uploader",
              template: __webpack_require__(/*! raw-loader!./uploader.component.html */ "./node_modules/raw-loader/index.js!./src/app/components/uploader/uploader.component.html"),
              styles: [__webpack_require__(/*! ./uploader.component.scss */ "./src/app/components/uploader/uploader.component.scss")]
          })
      ], UploaderComponent);
      return UploaderComponent;
  }());
  
  // import { Component } from "@angular/core";
  // @Component({
  //   selector: 'uploader',
  //   templateUrl: "./uploader.component.html",
  //   styleUrls: ["./uploader.component.scss"]
  // })
  // export class UploaderComponent {
  //   isHovering: boolean;
  //   files: File[] = [];
  //   toggleHover(event: boolean) {
  //     this.isHovering = event;
  //   }
  //   onDrop(files: FileList) {
  //     for (let i = 0; i < files.length; i++) {
  //       this.files.push(files.item(i));
  //     }
  //   }
  // }
  
  
  /***/ }),
  
  /***/ "./src/app/directives/dropzone.directive.ts":
  /*!**************************************************!*\
    !*** ./src/app/directives/dropzone.directive.ts ***!
    \**************************************************/
  /*! exports provided: DropzoneDirective */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DropzoneDirective", function() { return DropzoneDirective; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  // import { Directive } from '@angular/core';
  
  var DropzoneDirective = /** @class */ (function () {
      function DropzoneDirective() {
          this.dropped = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
          this.hovered = new _angular_core__WEBPACK_IMPORTED_MODULE_1__["EventEmitter"]();
      }
      DropzoneDirective.prototype.onDrop = function ($event) {
          $event.preventDefault();
          this.dropped.emit($event.dataTransfer.files);
          this.hovered.emit(false);
      };
      DropzoneDirective.prototype.onDragOver = function ($event) {
          $event.preventDefault();
          this.hovered.emit(true);
      };
      DropzoneDirective.prototype.onDragLeave = function ($event) {
          $event.preventDefault();
          this.hovered.emit(false);
      };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Output"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], DropzoneDirective.prototype, "dropped", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Output"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], DropzoneDirective.prototype, "hovered", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostListener"])("drop", ["$event"]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Function),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:returntype", void 0)
      ], DropzoneDirective.prototype, "onDrop", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostListener"])("dragover", ["$event"]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Function),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:returntype", void 0)
      ], DropzoneDirective.prototype, "onDragOver", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostListener"])("dragleave", ["$event"]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Function),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object]),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:returntype", void 0)
      ], DropzoneDirective.prototype, "onDragLeave", null);
      DropzoneDirective = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Directive"])({
              // tslint:disable-next-line:directive-selector
              selector: "[dropzone]"
          })
      ], DropzoneDirective);
      return DropzoneDirective;
  }());
  
  //   import { Directive, HostListener, Output, EventEmitter } from "@angular/core";
  // @Directive({
  //   selector: "[appDropzone]"
  //   // selector: '[dropzone]'
  // })
  // export class DropzoneDirective {
  //   @Output() dropped = new EventEmitter<FileList>();
  //   @Output() hovered = new EventEmitter<boolean>();
  //   @HostListener("drop", ["$event"])
  //   onDrop($event) {
  //     $event.preventDefault();
  //     this.dropped.emit($event.dataTransfer.files);
  //     this.hovered.emit(false);
  //   }
  //   @HostListener("dragover", ["$event"])
  //   onDragOver($event) {
  //     $event.preventDefault();
  //     this.hovered.emit(true);
  //   }
  //   @HostListener("dragleave", ["$event"])
  //   onDragLeave($event) {
  //     $event.preventDefault();
  //     this.hovered.emit(false);
  //   }
  // }
  
  
  /***/ }),
  
  /***/ "./src/app/firebase/firebase-integration.service.ts":
  /*!**********************************************************!*\
    !*** ./src/app/firebase/firebase-integration.service.ts ***!
    \**********************************************************/
  /*! exports provided: FirebaseService */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FirebaseService", function() { return FirebaseService; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/fire/firestore */ "./node_modules/@angular/fire/firestore/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  
  
  
  // import { DocumentReference } from "@google-cloud/firestore";
  
  var FirebaseService = /** @class */ (function () {
      function FirebaseService(afs) {
          this.afs = afs;
      }
      // id / Contacts / id / email / contactData
      // SHOULD BE FINISHED ON MONDAY
      // Step 1 ==> create flow for contact database
      // Step 2 ==> CRUD contacts/ items/ estimates/ invoices/ payment received/ credit notes
      // Step 3 ==> create ngx datatable for contact (could be done in Step 1)
      FirebaseService.prototype.createStatus = function (AdminId, email, itemData) {
          var update_time = new Date();
          var update_time_num = new Date().getTime();
          itemData['time'] = update_time;
          itemData['time_num'] = update_time_num;
          return this.afs
              .collection(AdminId)
              .doc("Status")
              .collection("Status")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readStatus = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Status")
              .collection("Status");
      };
      FirebaseService.prototype.getCompanyLogo = function (id) {
          return (this.afs
              .collection(id)
              .doc('Company_logo')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.getReceivables = function (id) {
          return (this.afs
              .collection(id)
              .doc('Receivables')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.getProfit = function (id) {
          return (this.afs
              .collection(id)
              .doc('Profit')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.createCompanyProfile = function (AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc("CompanyProfile")
              .set(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readCompanyProfile = function (AdminId) {
          // return this.afs
          //   .collection(AdminId)
          //   .doc("CompanyProfile")
          //   .collection("CompanyProfile")
          return (this.afs
              .collection(AdminId)
              .doc('CompanyProfile')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.createTermsandConditions = function (AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc("TermsandConditions")
              .set(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readTermsandConditions = function (AdminId) {
          // return this.afs
          //   .collection(AdminId)
          //   .doc("TermsandConditions")
          //   .collection<ItemModel>("TermsandConditions")
          return (this.afs
              .collection(AdminId)
              .doc('TermsandConditions')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.createCustomerNotes = function (AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc("CustomerNote")
              .set(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readCustomerNote = function (AdminId) {
          // return this.afs
          //   .collection(AdminId)
          //   .doc("CustomerNote")
          //   .collection("CustomerNote")
          return (this.afs
              .collection(AdminId)
              .doc('CustomerNote')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      /*
      Create/Read/Update/Delete Contact
      */
      FirebaseService.prototype.createContacts = function (AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc("Contacts")
              .collection("Contacts")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readContacts = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Contacts")
              .collection("Contacts");
      };
      FirebaseService.prototype.readContactsinCSV = function (AdminId, email) {
          return (this.afs
              .collection(AdminId)
              .doc('Contacts')
              .snapshotChanges()
              .pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["map"])(function (a) {
              var userData = a.payload.data();
              //   const id = a.payload.id;
              return { userData: userData };
          })));
      };
      FirebaseService.prototype.updateContacts = function (id, AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc('Contacts')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("Contacts")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.deleteContacts = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Contacts")
              .collection("Contacts")
              .doc(id)
              .delete();
      };
      /*
    Create/Read/Update/Delete Item
    */
      FirebaseService.prototype.createItems = function (AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc("Items")
              .collection("Items")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.readItems = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Items")
              .collection("Items");
      };
      FirebaseService.prototype.updateItems = function (id, AdminId, email, itemData) {
          return this.afs
              .collection(AdminId)
              .doc('Items')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("Items")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, itemData));
      };
      FirebaseService.prototype.deleteItems = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Items")
              .collection("Items")
              .doc(id)
              .delete();
      };
      /*
    Create Estimates Modal/ Read/ Update/ Delete
    */
      FirebaseService.prototype.createEstimates = function (AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc("Estimates")
              .collection("Estimates")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.readEstimates = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Estimates")
              .collection("Estimates");
      };
      FirebaseService.prototype.updateEstimates = function (id, AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc('Estimates')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("Estimates")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.deleteEstimates = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Estimates")
              .collection("Estimates")
              .doc(id)
              .delete();
      };
      /*
    Create Invoices Modal/ Read/ Update/ Delete
    */
      FirebaseService.prototype.createInvoices = function (AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc("Invoices")
              .collection("Invoices")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.readInvoices = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Invoices")
              .collection("Invoices");
      };
      FirebaseService.prototype.updateInvoices = function (id, AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc('Invoices')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("Invoices")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.deleteInvoices = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Invoices")
              .collection("Invoices")
              .doc(id)
              .delete();
      };
      //  onPaymentReceived(invoiceDetail)
      /*
    Create Payment Modal/ Read/ Update/ Delete
    */
      FirebaseService.prototype.createPaymentReceived = function (AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc("PaymentReceived")
              .collection("PaymentReceived")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.readPaymentReceived = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("PaymentReceived")
              .collection("PaymentReceived");
      };
      FirebaseService.prototype.updatePaymentReceived = function (id, AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc('PaymentReceived')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("PaymentReceived")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.deletePaymentReceived = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("PaymentReceived")
              .collection("PaymentReceived")
              .doc(id)
              .delete();
      };
      //  onPaymentReceived(invoiceDetail)
      /*
    Create Payment Modal/ Read/ Update/ Delete
    */
      FirebaseService.prototype.createExpense = function (AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc("Expense")
              .collection("Expense")
              .add(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.readExpense = function (AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Expense")
              .collection("Expense");
      };
      FirebaseService.prototype.updateExpense = function (id, AdminId, email, estimateData) {
          return this.afs
              .collection(AdminId)
              .doc('Expense')
              //  .collection<ItemModel>(itemData["Item ID"].toString())
              .collection("Expense")
              .doc(id)
              .update(tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, estimateData));
      };
      FirebaseService.prototype.deleteExpense = function (id, AdminId, email) {
          return this.afs
              .collection(AdminId)
              .doc("Expense")
              .collection("Expense")
              .doc(id)
              .delete();
      };
      FirebaseService.ctorParameters = function () { return [
          { type: _angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__["AngularFirestore"] }
      ]; };
      FirebaseService = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Injectable"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_fire_firestore__WEBPACK_IMPORTED_MODULE_2__["AngularFirestore"]])
      ], FirebaseService);
      return FirebaseService;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/pop-over/pop-over.component.scss":
  /*!**************************************************!*\
    !*** ./src/app/pop-over/pop-over.component.scss ***!
    \**************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BvcC1vdmVyL3BvcC1vdmVyLmNvbXBvbmVudC5zY3NzIn0= */"
  
  /***/ }),
  
  /***/ "./src/app/pop-over/pop-over.component.ts":
  /*!************************************************!*\
    !*** ./src/app/pop-over/pop-over.component.ts ***!
    \************************************************/
  /*! exports provided: PopOverComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PopOverComponent", function() { return PopOverComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var PopOverComponent = /** @class */ (function () {
      function PopOverComponent() {
      }
      PopOverComponent.prototype.ngOnInit = function () { };
      PopOverComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-pop-over",
              template: __webpack_require__(/*! raw-loader!./pop-over.component.html */ "./node_modules/raw-loader/index.js!./src/app/pop-over/pop-over.component.html"),
              styles: [__webpack_require__(/*! ./pop-over.component.scss */ "./src/app/pop-over/pop-over.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], PopOverComponent);
      return PopOverComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/services/auth.service.ts":
  /*!******************************************!*\
    !*** ./src/app/services/auth.service.ts ***!
    \******************************************/
  /*! exports provided: AuthService */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AuthService", function() { return AuthService; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var firebase_app__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! firebase/app */ "./node_modules/firebase/app/dist/index.cjs.js");
  /* harmony import */ var firebase_app__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(firebase_app__WEBPACK_IMPORTED_MODULE_2__);
  
  
  
  var AuthService = /** @class */ (function () {
      function AuthService() {
      }
      AuthService.prototype.checkUserStatus = function () {
          return new Promise(function (resolve, reject) {
              firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().onAuthStateChanged(function (user) {
                  if (user) {
                      console.log(user);
                      // User is signed in.
                      // const displayName = user.displayName;
                      // const email = user.email;
                      // const emailVerified = user.emailVerified;
                      // const photoURL = user.photoURL;
                      // const uid = user.uid;
                      // const phoneNumber = user.phoneNumber;
                      // const providerData = user.providerData;
                      // user.getIdToken().then(accessToken => {
                      //   document.getElementById("sign-in-status").textContent = "Signed in";
                      //   document.getElementById("sign-in").textContent = "Sign out";
                      //   // document.getElementById("displayName").textContent = displayName;
                      //   this.signin = "Sign out";
                      //   this.displayName = displayName;
                      //   this.uid = uid;
                      //   this.email = email;
                      //   this.photoURL = photoURL;
                      //   document.getElementById(
                      //     "account-details"
                      //   ).textContent = JSON.stringify(
                      //     {
                      //       displayName: displayName,
                      //       email: email,
                      //       emailVerified: emailVerified,
                      //       phoneNumber: phoneNumber,
                      //       photoURL: photoURL,
                      //       uid: uid,
                      //       accessToken: accessToken,
                      //       providerData: providerData
                      //     },
                      //     null,
                      //     "  "
                      //   );
                      // });
                  }
                  else {
                      // User is signed out.
                      // document.getElementById("sign-in-status").textContent = "Signed out";
                      // document.getElementById("sign-in").textContent = "Sign in";
                      // this.signin = "Sign in";
                      // document.getElementById("account-details").textContent = "null";
                  }
              }, function (error) {
                  console.log(error);
              });
          });
      };
      AuthService.prototype.registerUser = function (value) {
          console.log(value);
          return new Promise(function (resolve, reject) {
              firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]()
                  .createUserWithEmailAndPassword(value.email, value.password)
                  .then(function (user) {
                  if (user) {
                      user.user.updateProfile({
                          displayName: value.displayName,
                          photoURL: ""
                      });
                  }
              });
              // (user) => {
              //   if (user) {
              //     user.user.updateProfile({
              //       displayName: value.displayName,
              //       photoURL: ''
              //     });
              //   }
              // });
              // res => resolve(res),
              // err => reject(err));
          });
      };
      AuthService.prototype.registerUserAsShiShaBarOwner = function (value) {
          return new Promise(function (resolve, reject) {
              firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]()
                  .createUserWithEmailAndPassword(value.email, value.password)
                  .then(function (user) {
                  if (user) {
                      user.user.updateProfile({
                          displayName: "shishabarowner",
                          photoURL: ""
                      });
                  }
              });
              // res => resolve(res),
              // err => reject(err));
          });
      };
      AuthService.prototype.loginUser = function (value) {
          return new Promise(function (resolve, reject) {
              firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]()
                  .signInWithEmailAndPassword(value.email, value.password)
                  .then(function (res) { return resolve(res); }, function (err) { return reject(err); });
          });
      };
      AuthService.prototype.logoutUser = function () {
          return new Promise(function (resolve, reject) {
              if (firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().currentUser) {
                  firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]()
                      .signOut()
                      .then(function () {
                      console.log("LOG Out");
                      //    resolve();
                  })
                      .catch(function (error) {
                      reject();
                  });
              }
          });
      };
      AuthService.prototype.userDetails = function () {
          return firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().currentUser;
      };
      AuthService.prototype.uid = function () {
          return firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().currentUser.uid;
      };
      AuthService.prototype.email = function () {
          return firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().currentUser.email;
      };
      AuthService.prototype.displayName = function () {
          return firebase_app__WEBPACK_IMPORTED_MODULE_2__["auth"]().currentUser.displayName;
      };
      AuthService = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Injectable"])({
              providedIn: "root"
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], AuthService);
      return AuthService;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/aspect-ratio/aspect-ratio.component.scss":
  /*!****************************************************************!*\
    !*** ./src/app/shell/aspect-ratio/aspect-ratio.component.scss ***!
    \****************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  display: block;\n  overflow: hidden;\n  position: relative;\n  width: 100%;\n}\n:host .content-wrapper {\n  position: absolute;\n  top: 0px;\n  bottom: 0px;\n  left: 0px;\n  right: 0px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaGVsbC9hc3BlY3QtcmF0aW8vYXNwZWN0LXJhdGlvLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9zaGVsbC9hc3BlY3QtcmF0aW8vYXNwZWN0LXJhdGlvLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0FDQ0Y7QURDRTtFQUNFLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvc2hlbGwvYXNwZWN0LXJhdGlvL2FzcGVjdC1yYXRpby5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMHB4O1xuICAgIGJvdHRvbTogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICByaWdodDogMHB4O1xuICB9XG59XG4iLCI6aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuOmhvc3QgLmNvbnRlbnQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGJvdHRvbTogMHB4O1xuICBsZWZ0OiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/shell/aspect-ratio/aspect-ratio.component.ts":
  /*!**************************************************************!*\
    !*** ./src/app/shell/aspect-ratio/aspect-ratio.component.ts ***!
    \**************************************************************/
  /*! exports provided: AspectRatioComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AspectRatioComponent", function() { return AspectRatioComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  
  
  var AspectRatioComponent = /** @class */ (function () {
      function AspectRatioComponent() {
          this.ratioPadding = '0px';
      }
      Object.defineProperty(AspectRatioComponent.prototype, "ratio", {
          set: function (ratio) {
              ratio = (ratio !== undefined && ratio !== null) ? ratio : { w: 1, h: 1 };
              var heightRatio = (ratio.h / ratio.w * 100) + '%';
              // Conserve aspect ratio (see: http://stackoverflow.com/a/10441480/1116959)
              this.ratioPadding = '0px 0px ' + heightRatio + ' 0px';
          },
          enumerable: true,
          configurable: true
      });
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])('style.padding'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], AspectRatioComponent.prototype, "ratioPadding", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object])
      ], AspectRatioComponent.prototype, "ratio", null);
      AspectRatioComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-aspect-ratio',
              template: __webpack_require__(/*! raw-loader!./aspect-ratio.component.html */ "./node_modules/raw-loader/index.js!./src/app/shell/aspect-ratio/aspect-ratio.component.html"),
              styles: [__webpack_require__(/*! ./aspect-ratio.component.scss */ "./src/app/shell/aspect-ratio/aspect-ratio.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], AspectRatioComponent);
      return AspectRatioComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/config/app-shell.config.ts":
  /*!**************************************************!*\
    !*** ./src/app/shell/config/app-shell.config.ts ***!
    \**************************************************/
  /*! exports provided: AppShellConfig */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AppShellConfig", function() { return AppShellConfig; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/fesm5/http.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  // Inspired in: https://devblogs.microsoft.com/premier-developer/angular-how-to-editable-config-files/
  
  
  
  
  var AppShellConfig = /** @class */ (function () {
      function AppShellConfig(http) {
          this.http = http;
      }
      AppShellConfig_1 = AppShellConfig;
      // Simplified version from: https://stackoverflow.com/a/49707898/1116959
      AppShellConfig.prototype.load = function () {
          var configFile = './assets/config/app-shell.config' + ((!Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["isDevMode"])()) ? '.prod' : '') + '.json';
          return this.http.get(configFile).pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_3__["tap"])(function (configSettings) {
              AppShellConfig_1.settings = configSettings;
          }))
              .toPromise()
              .catch(function (error) {
              console.log("Could not load file '" + configFile + "'", error);
          });
      };
      var AppShellConfig_1;
      AppShellConfig.ctorParameters = function () { return [
          { type: _angular_common_http__WEBPACK_IMPORTED_MODULE_2__["HttpClient"] }
      ]; };
      AppShellConfig = AppShellConfig_1 = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Injectable"])({
              providedIn: 'root'
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_common_http__WEBPACK_IMPORTED_MODULE_2__["HttpClient"]])
      ], AppShellConfig);
      return AppShellConfig;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/data-store.ts":
  /*!*************************************!*\
    !*** ./src/app/shell/data-store.ts ***!
    \*************************************/
  /*! exports provided: ShellModel, DataStore */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShellModel", function() { return ShellModel; });
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DataStore", function() { return DataStore; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
  /* harmony import */ var _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./config/app-shell.config */ "./src/app/shell/config/app-shell.config.ts");
  
  
  
  
  var ShellModel = /** @class */ (function () {
      function ShellModel() {
          this.isShell = false;
      }
      return ShellModel;
  }());
  
  var DataStore = /** @class */ (function () {
      function DataStore(shellModel) {
          this.shellModel = shellModel;
          // We wait on purpose 2 secs on local environment when fetching from json to simulate the backend roundtrip.
          // However, in production you should set this delay to 0 in the assets/config/app-shell.config.prod.json file.
          // tslint:disable-next-line:max-line-length
          this.networkDelay = (_config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings && _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings.networkDelay) ? _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings.networkDelay : 0;
          this.timeline = new rxjs__WEBPACK_IMPORTED_MODULE_1__["ReplaySubject"](1);
      }
      // Static function with generics
      // (ref: https://stackoverflow.com/a/24293088/1116959)
      // Append a shell (T & ShellModel) to every value (T) emmited to the timeline
      DataStore.AppendShell = function (dataObservable, shellModel, networkDelay) {
          if (networkDelay === void 0) { networkDelay = 400; }
          var delayObservable = Object(rxjs__WEBPACK_IMPORTED_MODULE_1__["of"])(true).pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_2__["delay"])(networkDelay));
          // Assign shell flag accordingly
          // (ref: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)
          return Object(rxjs__WEBPACK_IMPORTED_MODULE_1__["combineLatest"])([
              delayObservable,
              dataObservable
          ]).pipe(
          // Dismiss unnecessary delayValue
          Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_2__["map"])(function (_a) {
              var _b = tslib__WEBPACK_IMPORTED_MODULE_0__["__read"](_a, 2), delayValue = _b[0], dataValue = _b[1];
              return Object.assign(dataValue, { isShell: false });
          }), 
          // Set the shell model as the initial value
          Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_2__["startWith"])(Object.assign(shellModel, { isShell: true })));
      };
      DataStore.prototype.load = function (dataSourceObservable) {
          var _this = this;
          var dataSourceWithShellObservable = DataStore.AppendShell(dataSourceObservable, this.shellModel, this.networkDelay);
          dataSourceWithShellObservable
              .subscribe(function (dataValue) {
              _this.timeline.next(dataValue);
          });
      };
      Object.defineProperty(DataStore.prototype, "state", {
          get: function () {
              return this.timeline.asObservable();
          },
          enumerable: true,
          configurable: true
      });
      DataStore.ctorParameters = function () { return [
          { type: undefined }
      ]; };
      return DataStore;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/image-shell/image-shell.component.scss":
  /*!**************************************************************!*\
    !*** ./src/app/shell/image-shell/image-shell.component.scss ***!
    \**************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  --image-shell-loading-background: #EEE;\n  --image-shell-border-radius: 0px;\n  display: block;\n  position: relative;\n  height: 100%;\n  border-radius: var(--image-shell-border-radius);\n  transition: all ease-in-out 0.3s;\n  z-index: 2;\n}\n:host > .spinner {\n  display: none;\n}\n:host::before {\n  content: \"\";\n  background: var(--image-shell-loading-background);\n  border-radius: var(--image-shell-border-radius);\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n}\n:host:not([mode=cover]) {\n  width: 100%;\n  overflow: hidden;\n}\n:host:not([mode=cover]) > .inner-img {\n  transition: visibility 0s linear, opacity 0.5s linear;\n  opacity: 0;\n  visibility: hidden;\n  width: 100%;\n  height: 100%;\n  border-radius: var(--image-shell-border-radius);\n}\n:host:not([mode=cover]).img-loaded::before {\n  display: none;\n}\n:host:not([mode=cover]).img-loaded > .inner-img {\n  opacity: 1;\n  visibility: visible;\n}\n:host[mode=cover] {\n  background-size: cover;\n  background-repeat: no-repeat;\n}\n:host[mode=cover]::before, :host[mode=cover] > .spinner {\n  z-index: -1;\n}\n:host[mode=cover] > .inner-img {\n  display: none;\n  visibility: hidden;\n}\n:host[mode=cover].img-loaded::before {\n  display: none;\n}\n:host([animation=gradient]) {\n  --image-shell-loading-background: #EEE;\n  --image-shell-animation-color: #DDD;\n}\n:host([animation=gradient])::before {\n  background: linear-gradient(to right, var(--image-shell-loading-background) 8%, var(--image-shell-animation-color) 18%, var(--image-shell-loading-background) 33%);\n  background-size: 800px 104px;\n  -webkit-animation: animateBackground 2s ease-in-out infinite;\n          animation: animateBackground 2s ease-in-out infinite;\n}\n:host([animation=gradient]).img-loaded::before {\n  background: none;\n  -webkit-animation: 0;\n          animation: 0;\n}\n@-webkit-keyframes animateBackground {\n  0% {\n    background-position: -468px 0;\n  }\n  100% {\n    background-position: 468px 0;\n  }\n}\n@keyframes animateBackground {\n  0% {\n    background-position: -468px 0;\n  }\n  100% {\n    background-position: 468px 0;\n  }\n}\n:host([animation=spinner]) {\n  --image-shell-spinner-size: 28px;\n  --image-shell-spinner-color: #CCC;\n}\n:host([animation=spinner]) > .spinner {\n  display: block;\n  position: absolute;\n  top: calc(50% - calc(var(--image-shell-spinner-size) / 2));\n  left: calc(50% - calc(var(--image-shell-spinner-size) / 2));\n  width: var(--image-shell-spinner-size);\n  height: var(--image-shell-spinner-size);\n  font-size: var(--image-shell-spinner-size);\n  line-height: var(--image-shell-spinner-size);\n  color: var(--image-shell-spinner-color);\n}\n:host([animation=spinner]).img-loaded > .spinner {\n  display: none;\n  visibility: hidden;\n}\n:host(.add-overlay) {\n  --image-shell-overlay-background: rgba(0, 0, 0, .4);\n}\n:host(.add-overlay).img-loaded::before {\n  display: block;\n  background: var(--image-shell-overlay-background);\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaGVsbC9pbWFnZS1zaGVsbC9pbWFnZS1zaGVsbC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hlbGwvaW1hZ2Utc2hlbGwvaW1hZ2Utc2hlbGwuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxzQ0FBQTtFQUNBLGdDQUFBO0VBRUEsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLCtDQUFBO0VBQ0EsZ0NBQUE7RUFDQSxVQUFBO0FDQUY7QURHRTtFQUNFLGFBQUE7QUNESjtBREtFO0VBQ0UsV0FBQTtFQUNBLGlEQUFBO0VBQ0EsK0NBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7QUNISjtBRE1FO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0FDSko7QURNSTtFQUNFLHFEQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSwrQ0FBQTtBQ0pOO0FEU007RUFDRSxhQUFBO0FDUFI7QURVTTtFQUNFLFVBQUE7RUFDQSxtQkFBQTtBQ1JSO0FEY0U7RUFDRSxzQkFBQTtFQUNBLDRCQUFBO0FDWko7QURlSTtFQUVFLFdBQUE7QUNkTjtBRGlCSTtFQUNFLGFBQUE7RUFDQSxrQkFBQTtBQ2ZOO0FEb0JNO0VBQ0UsYUFBQTtBQ2xCUjtBRHdCQTtFQUNFLHNDQUFBO0VBQ0EsbUNBQUE7QUNyQkY7QUR3QkU7RUFDRSxrS0FDRTtFQUNGLDRCQUFBO0VBQ0EsNERBQUE7VUFBQSxvREFBQTtBQ3ZCSjtBRDRCSTtFQUNFLGdCQUFBO0VBQ0Esb0JBQUE7VUFBQSxZQUFBO0FDMUJOO0FEOEJFO0VBQ0U7SUFDRSw2QkFBQTtFQzVCSjtFRCtCRTtJQUNFLDRCQUFBO0VDN0JKO0FBQ0Y7QURzQkU7RUFDRTtJQUNFLDZCQUFBO0VDNUJKO0VEK0JFO0lBQ0UsNEJBQUE7RUM3Qko7QUFDRjtBRGlDQTtFQUNFLGdDQUFBO0VBQ0EsaUNBQUE7QUM5QkY7QURnQ0U7RUFDRSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSwwREFBQTtFQUNBLDJEQUFBO0VBQ0Esc0NBQUE7RUFDQSx1Q0FBQTtFQUNBLDBDQUFBO0VBQ0EsNENBQUE7RUFDQSx1Q0FBQTtBQzlCSjtBRGtDSTtFQUNFLGFBQUE7RUFDQSxrQkFBQTtBQ2hDTjtBRHFDQTtFQUNFLG1EQUFBO0FDbENGO0FEc0NJO0VBQ0UsY0FBQTtFQUNBLGlEQUFBO0FDcENOIiwiZmlsZSI6InNyYy9hcHAvc2hlbGwvaW1hZ2Utc2hlbGwvaW1hZ2Utc2hlbGwuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCB7XG4gIC0taW1hZ2Utc2hlbGwtbG9hZGluZy1iYWNrZ3JvdW5kOiAjRUVFO1xuICAtLWltYWdlLXNoZWxsLWJvcmRlci1yYWRpdXM6IDBweDtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWltYWdlLXNoZWxsLWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjNzO1xuICB6LWluZGV4OiAyO1xuXG4gIC8vIEJ5IGRlZmF1bHQsIGhpZGUgdGhlIHNwaW5uZXJcbiAgJiA+IC5zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gTG9hZGluZyBiYWNrZ3JvdW5kXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogdmFyKC0taW1hZ2Utc2hlbGwtbG9hZGluZy1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbWFnZS1zaGVsbC1ib3JkZXItcmFkaXVzKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG5cbiAgJjpub3QoW21vZGU9XCJjb3ZlclwiXSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmID4gLmlubmVyLWltZyB7XG4gICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciwgb3BhY2l0eSAuNXMgbGluZWFyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0taW1hZ2Utc2hlbGwtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJi5pbWctbG9hZGVkIHtcbiAgICAgIC8vIEhpZGUgbG9hZGluZyBiYWNrZ3JvdW5kIG9uY2UgdGhlIGltYWdlIGhhcyBsb2FkZWRcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYgPiAuaW5uZXItaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiBpdCBpcyBtb2RlOiBjb3ZlclxuICAmW21vZGU9XCJjb3ZlclwiXSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICAgLy8gSW4gY292ZXIgbW9kZSwgd2UgY2FuIGhhdmUgY29udGVudCBpbnNpZGUgdGhlIGVsZW1lbnQsIHRodXMgd2UgbmVlZCB0byBwdXQgdGhlc2UgZWxlbWVudHMgYmVuZWF0aFxuICAgICY6OmJlZm9yZSxcbiAgICAmID4gLnNwaW5uZXIge1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgJiA+IC5pbm5lci1pbWcge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmLmltZy1sb2FkZWQge1xuICAgICAgLy8gSGlkZSBsb2FkaW5nIGJhY2tncm91bmQgb25jZSB0aGUgaW1hZ2UgaGFzIGxvYWRlZFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2FuaW1hdGlvbj1cImdyYWRpZW50XCJdKSB7XG4gIC0taW1hZ2Utc2hlbGwtbG9hZGluZy1iYWNrZ3JvdW5kOiAjRUVFO1xuICAtLWltYWdlLXNoZWxsLWFuaW1hdGlvbi1jb2xvcjogI0RERDtcblxuICAvLyBUaGUgYW5pbWF0aW9uIHRoYXQgZ29lcyBiZW5lYXRoIHRoZSBtYXNrc1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6XG4gICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWltYWdlLXNoZWxsLWxvYWRpbmctYmFja2dyb3VuZCkgOCUsIHZhcigtLWltYWdlLXNoZWxsLWFuaW1hdGlvbi1jb2xvcikgMTglLCB2YXIoLS1pbWFnZS1zaGVsbC1sb2FkaW5nLWJhY2tncm91bmQpIDMzJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4MDBweCAxMDRweDtcbiAgICBhbmltYXRpb246IGFuaW1hdGVCYWNrZ3JvdW5kIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG5cbiAgJi5pbWctbG9hZGVkIHtcbiAgICAvLyBSZXNldCBiYWNrZ3JvdW5kIGFuaW1hdGlvbiBvbmNlIHRoZSBpbWFnZSBoYXMgbG9hZGVkXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBhbmltYXRpb246IDA7XG4gICAgfVxuICB9XG5cbiAgQGtleWZyYW1lcyBhbmltYXRlQmFja2dyb3VuZCB7XG4gICAgMCV7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDY4cHggMFxuICAgIH1cblxuICAgIDEwMCV7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0NjhweCAwXG4gICAgfVxuICB9XG59XG5cbjpob3N0KFthbmltYXRpb249XCJzcGlubmVyXCJdKSB7XG4gIC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1zaXplOiAyOHB4O1xuICAtLWltYWdlLXNoZWxsLXNwaW5uZXItY29sb3I6ICNDQ0M7XG5cbiAgJiA+IC5zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtIGNhbGModmFyKC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1zaXplKSAvIDIpKTtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIGNhbGModmFyKC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1zaXplKSAvIDIpKTtcbiAgICB3aWR0aDogdmFyKC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLWltYWdlLXNoZWxsLXNwaW5uZXItc2l6ZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLXNpemUpO1xuICAgIGNvbG9yOiB2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLWNvbG9yKTtcbiAgfVxuXG4gICYuaW1nLWxvYWRlZCB7XG4gICAgJiA+IC5zcGlubmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICB9XG59XG5cbjpob3N0KC5hZGQtb3ZlcmxheSkge1xuICAtLWltYWdlLXNoZWxsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNCk7XG5cbiAgJi5pbWctbG9hZGVkIHtcbiAgICAvLyBBZGQgYmFja2dyb3VuZCBvdmVybGF5IGFmdGVyIHRoZSBpbWFnZSBoYXMgbG9hZGVkXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taW1hZ2Utc2hlbGwtb3ZlcmxheS1iYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cbn1cbiIsIjpob3N0IHtcbiAgLS1pbWFnZS1zaGVsbC1sb2FkaW5nLWJhY2tncm91bmQ6ICNFRUU7XG4gIC0taW1hZ2Utc2hlbGwtYm9yZGVyLXJhZGl1czogMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWltYWdlLXNoZWxsLWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMC4zcztcbiAgei1pbmRleDogMjtcbn1cbjpob3N0ID4gLnNwaW5uZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuOmhvc3Q6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWltYWdlLXNoZWxsLWxvYWRpbmctYmFja2dyb3VuZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWltYWdlLXNoZWxsLWJvcmRlci1yYWRpdXMpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cbjpob3N0Om5vdChbbW9kZT1jb3Zlcl0pIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG46aG9zdDpub3QoW21vZGU9Y292ZXJdKSA+IC5pbm5lci1pbWcge1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciwgb3BhY2l0eSAwLjVzIGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pbWFnZS1zaGVsbC1ib3JkZXItcmFkaXVzKTtcbn1cbjpob3N0Om5vdChbbW9kZT1jb3Zlcl0pLmltZy1sb2FkZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG46aG9zdDpub3QoW21vZGU9Y292ZXJdKS5pbWctbG9hZGVkID4gLmlubmVyLWltZyB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG46aG9zdFttb2RlPWNvdmVyXSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG46aG9zdFttb2RlPWNvdmVyXTo6YmVmb3JlLCA6aG9zdFttb2RlPWNvdmVyXSA+IC5zcGlubmVyIHtcbiAgei1pbmRleDogLTE7XG59XG46aG9zdFttb2RlPWNvdmVyXSA+IC5pbm5lci1pbWcge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG46aG9zdFttb2RlPWNvdmVyXS5pbWctbG9hZGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSkge1xuICAtLWltYWdlLXNoZWxsLWxvYWRpbmctYmFja2dyb3VuZDogI0VFRTtcbiAgLS1pbWFnZS1zaGVsbC1hbmltYXRpb24tY29sb3I6ICNEREQ7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0taW1hZ2Utc2hlbGwtbG9hZGluZy1iYWNrZ3JvdW5kKSA4JSwgdmFyKC0taW1hZ2Utc2hlbGwtYW5pbWF0aW9uLWNvbG9yKSAxOCUsIHZhcigtLWltYWdlLXNoZWxsLWxvYWRpbmctYmFja2dyb3VuZCkgMzMlKTtcbiAgYmFja2dyb3VuZC1zaXplOiA4MDBweCAxMDRweDtcbiAgYW5pbWF0aW9uOiBhbmltYXRlQmFja2dyb3VuZCAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbjpob3N0KFthbmltYXRpb249Z3JhZGllbnRdKS5pbWctbG9hZGVkOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBhbmltYXRpb246IDA7XG59XG5Aa2V5ZnJhbWVzIGFuaW1hdGVCYWNrZ3JvdW5kIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NjhweCAwO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDQ2OHB4IDA7XG4gIH1cbn1cblxuOmhvc3QoW2FuaW1hdGlvbj1zcGlubmVyXSkge1xuICAtLWltYWdlLXNoZWxsLXNwaW5uZXItc2l6ZTogMjhweDtcbiAgLS1pbWFnZS1zaGVsbC1zcGlubmVyLWNvbG9yOiAjQ0NDO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1zcGlubmVyXSkgPiAuc3Bpbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyg1MCUgLSBjYWxjKHZhcigtLWltYWdlLXNoZWxsLXNwaW5uZXItc2l6ZSkgLyAyKSk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gY2FsYyh2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLXNpemUpIC8gMikpO1xuICB3aWR0aDogdmFyKC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLXNpemUpO1xuICBmb250LXNpemU6IHZhcigtLWltYWdlLXNoZWxsLXNwaW5uZXItc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pbWFnZS1zaGVsbC1zcGlubmVyLXNpemUpO1xuICBjb2xvcjogdmFyKC0taW1hZ2Utc2hlbGwtc3Bpbm5lci1jb2xvcik7XG59XG46aG9zdChbYW5pbWF0aW9uPXNwaW5uZXJdKS5pbWctbG9hZGVkID4gLnNwaW5uZXIge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbjpob3N0KC5hZGQtb3ZlcmxheSkge1xuICAtLWltYWdlLXNoZWxsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNCk7XG59XG46aG9zdCguYWRkLW92ZXJsYXkpLmltZy1sb2FkZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pbWFnZS1zaGVsbC1vdmVybGF5LWJhY2tncm91bmQpO1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/shell/image-shell/image-shell.component.ts":
  /*!************************************************************!*\
    !*** ./src/app/shell/image-shell/image-shell.component.ts ***!
    \************************************************************/
  /*! exports provided: ImageShellComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ImageShellComponent", function() { return ImageShellComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/fesm5/common.js");
  /* harmony import */ var _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../config/app-shell.config */ "./src/app/shell/config/app-shell.config.ts");
  
  
  
  
  var ImageShellComponent = /** @class */ (function () {
      function ImageShellComponent(platformId) {
          this.platformId = platformId;
          // To debug shell styles, change configuration in the assets/app-shell.config.json file
          this.debugMode = _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings && _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings.debug
              ? _config_app_shell_config__WEBPACK_IMPORTED_MODULE_3__["AppShellConfig"].settings.debug
              : false;
          // tslint:disable-next-line:variable-name
          this._src = "";
          // tslint:disable-next-line:variable-name
          this._alt = "";
          // tslint:disable-next-line:variable-name
          this._mode = "";
          this.imageLoaded = false;
      }
      Object.defineProperty(ImageShellComponent.prototype, "mode", {
          get: function () {
              return this._mode;
          },
          set: function (val) {
              this._mode = val !== undefined && val !== null ? val : "";
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(ImageShellComponent.prototype, "src", {
          set: function (val) {
              if (!this.debugMode) {
                  this._src = val !== undefined && val !== null ? val : "";
              }
              if (this._mode === "cover") {
                  // Unset the background-image
                  this.backgroundImage = "unset";
              }
              // Show loading indicator
              // When using SSR (Server Side Rendering), avoid the loading animation while the image resource is being loaded
              if (Object(_angular_common__WEBPACK_IMPORTED_MODULE_2__["isPlatformServer"])(this.platformId)) {
                  this.imageLoaded = true;
              }
              else {
                  this.imageLoaded = false;
              }
          },
          enumerable: true,
          configurable: true
      });
      Object.defineProperty(ImageShellComponent.prototype, "alt", {
          set: function (val) {
              this._alt = val !== undefined && val !== null ? val : "";
          },
          enumerable: true,
          configurable: true
      });
      ImageShellComponent.prototype._imageLoaded = function () {
          this.imageLoaded = true;
          // If it's a cover image then set the background-image property accordingly
          if (this._mode === "cover") {
              this.backgroundImage = "url(" + this._src + ")";
          }
      };
      ImageShellComponent.ctorParameters = function () { return [
          { type: String, decorators: [{ type: _angular_core__WEBPACK_IMPORTED_MODULE_1__["Inject"], args: [_angular_core__WEBPACK_IMPORTED_MODULE_1__["PLATFORM_ID"],] }] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])("class.img-loaded"),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], ImageShellComponent.prototype, "imageLoaded", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])("style.backgroundImage"),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String)
      ], ImageShellComponent.prototype, "backgroundImage", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])("attr.mode"),
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [String])
      ], ImageShellComponent.prototype, "mode", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [String])
      ], ImageShellComponent.prototype, "src", null);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [String])
      ], ImageShellComponent.prototype, "alt", null);
      ImageShellComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: "app-image-shell",
              template: __webpack_require__(/*! raw-loader!./image-shell.component.html */ "./node_modules/raw-loader/index.js!./src/app/shell/image-shell/image-shell.component.html"),
              styles: [__webpack_require__(/*! ./image-shell.component.scss */ "./src/app/shell/image-shell/image-shell.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__param"](0, Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Inject"])(_angular_core__WEBPACK_IMPORTED_MODULE_1__["PLATFORM_ID"])),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [String])
      ], ImageShellComponent);
      return ImageShellComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/shell.module.ts":
  /*!***************************************!*\
    !*** ./src/app/shell/shell.module.ts ***!
    \***************************************/
  /*! exports provided: ShellModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ShellModule", function() { return ShellModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/fesm5/common.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/fesm5/http.js");
  /* harmony import */ var _aspect_ratio_aspect_ratio_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./aspect-ratio/aspect-ratio.component */ "./src/app/shell/aspect-ratio/aspect-ratio.component.ts");
  /* harmony import */ var _image_shell_image_shell_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./image-shell/image-shell.component */ "./src/app/shell/image-shell/image-shell.component.ts");
  /* harmony import */ var _text_shell_text_shell_component__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./text-shell/text-shell.component */ "./src/app/shell/text-shell/text-shell.component.ts");
  /* harmony import */ var _config_app_shell_config__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./config/app-shell.config */ "./src/app/shell/config/app-shell.config.ts");
  
  
  
  
  
  
  
  
  
  var ShellModule = /** @class */ (function () {
      function ShellModule() {
      }
      ShellModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["NgModule"])({
              declarations: [_aspect_ratio_aspect_ratio_component__WEBPACK_IMPORTED_MODULE_5__["AspectRatioComponent"], _image_shell_image_shell_component__WEBPACK_IMPORTED_MODULE_6__["ImageShellComponent"], _text_shell_text_shell_component__WEBPACK_IMPORTED_MODULE_7__["TextShellComponent"]],
              providers: [
                  // Inspired in: https://devblogs.microsoft.com/premier-developer/angular-how-to-editable-config-files/
                  {
                      provide: _angular_core__WEBPACK_IMPORTED_MODULE_1__["APP_INITIALIZER"],
                      useFactory: function (appShellConfig) {
                          return function () { return appShellConfig.load(); };
                      },
                      deps: [_config_app_shell_config__WEBPACK_IMPORTED_MODULE_8__["AppShellConfig"]],
                      multi: true
                  }
              ],
              imports: [_angular_common__WEBPACK_IMPORTED_MODULE_2__["CommonModule"], _angular_common_http__WEBPACK_IMPORTED_MODULE_4__["HttpClientModule"], _ionic_angular__WEBPACK_IMPORTED_MODULE_3__["IonicModule"].forRoot()],
              exports: [_aspect_ratio_aspect_ratio_component__WEBPACK_IMPORTED_MODULE_5__["AspectRatioComponent"], _image_shell_image_shell_component__WEBPACK_IMPORTED_MODULE_6__["ImageShellComponent"], _text_shell_text_shell_component__WEBPACK_IMPORTED_MODULE_7__["TextShellComponent"]]
          })
      ], ShellModule);
      return ShellModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/shell/text-shell/text-shell.component.scss":
  /*!************************************************************!*\
    !*** ./src/app/shell/text-shell/text-shell.component.scss ***!
    \************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  --text-shell-background: transparent;\n  --text-shell-line-color: #EEE;\n  --text-shell-line-height: 16px;\n  --text-shell-line-gutter: 3px;\n  display: block;\n  position: relative;\n  color: transparent;\n  background-color: var(--text-shell-background);\n  transform-style: preserve-3d;\n  background-clip: content-box;\n}\n\n:host(:not([animation])) {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 92% , var(--text-shell-background, #FFF) 92%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host(:not([animation]))[lines=\"1\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 94% , var(--text-shell-background, #FFF) 94%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host(:not([animation]))[lines=\"2\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 89% , var(--text-shell-background, #FFF) 89%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 30% , var(--text-shell-background, #FFF) 30%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 2) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n}\n\n:host(:not([animation]))[lines=\"3\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 93% , var(--text-shell-background, #FFF) 93%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 74% , var(--text-shell-background, #FFF) 74%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 44% , var(--text-shell-background, #FFF) 44%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 3) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n}\n\n:host(:not([animation]))[lines=\"4\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 95% , var(--text-shell-background, #FFF) 95%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 79% , var(--text-shell-background, #FFF) 79%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 70% , var(--text-shell-background, #FFF) 70%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 50% , var(--text-shell-background, #FFF) 50%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 4) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n}\n\n:host(:not([animation]))[lines=\"5\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 86% , var(--text-shell-background, #FFF) 86%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 76% , var(--text-shell-background, #FFF) 76%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 80% , var(--text-shell-background, #FFF) 80%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 71% , var(--text-shell-background, #FFF) 71%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 50% , var(--text-shell-background, #FFF) 50%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 5) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n}\n\n:host(:not([animation]))[lines=\"6\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 87% , var(--text-shell-background, #FFF) 87%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 72% , var(--text-shell-background, #FFF) 72%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 75% , var(--text-shell-background, #FFF) 75%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 71% , var(--text-shell-background, #FFF) 71%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 63% , var(--text-shell-background, #FFF) 63%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 37% , var(--text-shell-background, #FFF) 37%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 6) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n}\n\n:host(:not([animation])).text-loaded {\n  background: none;\n  min-height: inherit;\n  color: inherit;\n}\n\n:host([animation=bouncing]) {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 91% , var(--text-shell-background, #FFF) 91%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  -webkit-animation-direction: alternate;\n          animation-direction: alternate;\n  -webkit-animation-name: animateLine;\n          animation-name: animateLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@-webkit-keyframes animateLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px);\n  }\n}\n\n@keyframes animateLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"1\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 93% , var(--text-shell-background, #FFF) 93%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  -webkit-animation-direction: alternate;\n          animation-direction: alternate;\n  -webkit-animation-name: animateLine;\n          animation-name: animateLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@keyframes animateLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"2\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 91% , var(--text-shell-background, #FFF) 91%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 36% , var(--text-shell-background, #FFF) 36%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  animation-direction: alternate-reverse;\n  -webkit-animation-name: animateMultiLine;\n          animation-name: animateMultiLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 2) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@-webkit-keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n@keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"3\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 85% , var(--text-shell-background, #FFF) 85%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 77% , var(--text-shell-background, #FFF) 77%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 45% , var(--text-shell-background, #FFF) 45%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  animation-direction: alternate-reverse;\n  -webkit-animation-name: animateMultiLine;\n          animation-name: animateMultiLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 3) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"4\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 85% , var(--text-shell-background, #FFF) 85%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 75% , var(--text-shell-background, #FFF) 75%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 74% , var(--text-shell-background, #FFF) 74%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 33% , var(--text-shell-background, #FFF) 33%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  animation-direction: alternate-reverse;\n  -webkit-animation-name: animateMultiLine;\n          animation-name: animateMultiLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 4) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"5\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 91% , var(--text-shell-background, #FFF) 91%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 61% , var(--text-shell-background, #FFF) 61%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 75% , var(--text-shell-background, #FFF) 75%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 79% , var(--text-shell-background, #FFF) 79%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 38% , var(--text-shell-background, #FFF) 38%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  animation-direction: alternate-reverse;\n  -webkit-animation-name: animateMultiLine;\n          animation-name: animateMultiLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 5) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing])[lines=\"6\"] {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 86% , var(--text-shell-background, #FFF) 86%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 75% , var(--text-shell-background, #FFF) 75%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 78% , var(--text-shell-background, #FFF) 78%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 78% , var(--text-shell-background, #FFF) 78%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 77% , var(--text-shell-background, #FFF) 77%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 33% , var(--text-shell-background, #FFF) 33%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  animation-direction: alternate-reverse;\n  -webkit-animation-name: animateMultiLine;\n          animation-name: animateMultiLine;\n  min-height: calc((var(--text-shell-line-height, 16px) * 6) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n  -webkit-animation-fill-mode: forwards;\n          animation-fill-mode: forwards;\n  -webkit-animation-iteration-count: infinite;\n          animation-iteration-count: infinite;\n  -webkit-animation-timing-function: ease-in-out;\n          animation-timing-function: ease-in-out;\n  -webkit-animation-duration: 1s;\n          animation-duration: 1s;\n}\n\n@keyframes animateMultiLine {\n  0% {\n    background-size: 85% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  75% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  55% var(--text-shell-line-height, 16px);\n  }\n  100% {\n    background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  }\n}\n\n:host([animation=bouncing]).text-loaded {\n  background: none;\n  min-height: inherit;\n  color: inherit;\n  -webkit-animation: 0;\n          animation: 0;\n}\n\n:host([animation=gradient]) {\n  --text-shell-background: #FFF;\n  --text-shell-line-color: transparent !important;\n  --text-shell-animation-background: #EEE;\n  --text-shell-animation-color: #DDD;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host([animation=gradient])::before {\n  content: \"\";\n  position: absolute;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  right: 0;\n  background: linear-gradient(to right, var(--text-shell-animation-background) 8%, var(--text-shell-animation-color) 18%, var(--text-shell-animation-background) 33%);\n  background-size: 800px 104px;\n  -webkit-animation: animateBackground 2s ease-in-out infinite;\n          animation: animateBackground 2s ease-in-out infinite;\n}\n\n@-webkit-keyframes animateBackground {\n  0% {\n    background-position: -468px 0;\n  }\n  100% {\n    background-position: 468px 0;\n  }\n}\n\n@keyframes animateBackground {\n  0% {\n    background-position: -468px 0;\n  }\n  100% {\n    background-position: 468px 0;\n  }\n}\n\n:host([animation=gradient])::after {\n  content: \"\";\n  position: absolute;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  right: 0;\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 88% , var(--text-shell-background, #FFF) 88%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host([animation=gradient])[lines=\"1\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host([animation=gradient])[lines=\"1\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 89% , var(--text-shell-background, #FFF) 89%);\n  background-position: 0 0px;\n  background-size: 100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 1) + (var(--text-shell-line-gutter, 3px) * (1 - 1)));\n}\n\n:host([animation=gradient])[lines=\"2\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 2) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n}\n\n:host([animation=gradient])[lines=\"2\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 91% , var(--text-shell-background, #FFF) 91%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 30% , var(--text-shell-background, #FFF) 30%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 2) + (var(--text-shell-line-gutter, 3px) * (2 - 1)));\n}\n\n:host([animation=gradient])[lines=\"3\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 3) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n}\n\n:host([animation=gradient])[lines=\"3\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 95% , var(--text-shell-background, #FFF) 95%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 75% , var(--text-shell-background, #FFF) 75%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 34% , var(--text-shell-background, #FFF) 34%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 3) + (var(--text-shell-line-gutter, 3px) * (3 - 1)));\n}\n\n:host([animation=gradient])[lines=\"4\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 4) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n}\n\n:host([animation=gradient])[lines=\"4\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 87% , var(--text-shell-background, #FFF) 87%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 71% , var(--text-shell-background, #FFF) 71%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 80% , var(--text-shell-background, #FFF) 80%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 37% , var(--text-shell-background, #FFF) 37%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 4) + (var(--text-shell-line-gutter, 3px) * (4 - 1)));\n}\n\n:host([animation=gradient])[lines=\"5\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 5) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n}\n\n:host([animation=gradient])[lines=\"5\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 94% , var(--text-shell-background, #FFF) 94%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 80% , var(--text-shell-background, #FFF) 80%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 62% , var(--text-shell-background, #FFF) 62%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 60% , var(--text-shell-background, #FFF) 60%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 37% , var(--text-shell-background, #FFF) 37%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 5) + (var(--text-shell-line-gutter, 3px) * (5 - 1)));\n}\n\n:host([animation=gradient])[lines=\"6\"] {\n  min-height: calc((var(--text-shell-line-height, 16px) * 6) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n}\n\n:host([animation=gradient])[lines=\"6\"]::after {\n  background-image: linear-gradient(to right, var(--text-shell-line-color, #CCC) 91% , var(--text-shell-background, #FFF) 91%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 80% , var(--text-shell-background, #FFF) 80%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 76% , var(--text-shell-background, #FFF) 76%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 74% , var(--text-shell-background, #FFF) 74%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 60% , var(--text-shell-background, #FFF) 60%),  linear-gradient(to right, var(--text-shell-background, #FFF) 100%, var(--text-shell-background, #FFF) 100%),  linear-gradient(to right, var(--text-shell-line-color, #CCC) 30% , var(--text-shell-background, #FFF) 30%);\n  background-position: 0 0px,  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (2 - 1)) + (var(--text-shell-line-gutter, 3px) * (2 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (3 - 1)) + (var(--text-shell-line-gutter, 3px) * (3 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (4 - 1)) + (var(--text-shell-line-gutter, 3px) * (4 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (5 - 1)) + (var(--text-shell-line-gutter, 3px) * (5 - 1))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 2))),  0 calc((var(--text-shell-line-height, 16px) * (6 - 1)) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n  background-size: 100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px),  100% var(--text-shell-line-gutter, 3px),  100% var(--text-shell-line-height, 16px);\n  background-repeat: no-repeat;\n  min-height: calc((var(--text-shell-line-height, 16px) * 6) + (var(--text-shell-line-gutter, 3px) * (6 - 1)));\n}\n\n:host([animation=gradient]).text-loaded {\n  background: none;\n  min-height: inherit;\n  color: inherit;\n}\n\n:host([animation=gradient]).text-loaded::before, :host([animation=gradient]).text-loaded::after {\n  background: none;\n  -webkit-animation: 0;\n          animation: 0;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaGVsbC90ZXh0LXNoZWxsL3RleHQtc2hlbGwuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3NoZWxsL3RleHQtc2hlbGwvdGV4dC1zaGVsbC5jb21wb25lbnQuc2NzcyIsIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaGVsbC90ZXh0LXNoZWxsL21peGlucy9tYXNrZWQtbGluZXMtYmFja2dyb3VuZC5zY3NzIiwiL1VzZXJzL2ltYWtlci9EZXNrdG9wL0lNQUtFUi9BQUFfaW1ha2VyX3N1YnNjcmlwdGlvbi9pb25Wb2ljZS9zcmMvYXBwL3NoZWxsL3RleHQtc2hlbGwvbWl4aW5zL2JhY2tncm91bmQtaGVpZ2h0LnNjc3MiLCIvVXNlcnMvaW1ha2VyL0Rlc2t0b3AvSU1BS0VSL0FBQV9pbWFrZXJfc3Vic2NyaXB0aW9uL2lvblZvaWNlL3NyYy9hcHAvc2hlbGwvdGV4dC1zaGVsbC9taXhpbnMvYm91bmNpbmctbGluZXMtYmFja2dyb3VuZC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BO0VBQ0Usb0NBQUE7RUFDQSw2QkFBQTtFQUNBLDhCQUFBO0VBQ0EsNkJBQUE7RUFFQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLDhDQUFBO0VBQ0EsNEJBQUE7RUFHQSw0QkFBQTtBQ1JGOztBRFlBO0VFUEksNEhBQUE7RUFDQSwwQkFBQTtFQUNBLHlEQUFBO0VBQ0EsNEJBQUE7RUNmRiw0R0FBQTtBRmVGOztBRFVJO0VFYkEsNEhBQUE7RUFDQSwwQkFBQTtFQUNBLHlEQUFBO0VBQ0EsNEJBQUE7RUNmRiw0R0FBQTtBRnNCRjs7QURHSTtFRWdCQSx1VkFBQTtFQUNBLGdQQUFBO0VBQ0EsOElBQUE7RUFDQSw0QkFBQTtFQzVDRiw0R0FBQTtBRjZCRjs7QURKSTtFRWdCQSxrakJBQUE7RUFDQSxzY0FBQTtFQUNBLG1PQUFBO0VBQ0EsNEJBQUE7RUM1Q0YsNEdBQUE7QUZvQ0Y7O0FEWEk7RUVnQkEsNndCQUFBO0VBQ0EsNHBCQUFBO0VBQ0Esd1RBQUE7RUFDQSw0QkFBQTtFQzVDRiw0R0FBQTtBRjJDRjs7QURsQkk7RUVnQkEsdytCQUFBO0VBQ0EsazNCQUFBO0VBQ0EsNllBQUE7RUFDQSw0QkFBQTtFQzVDRiw0R0FBQTtBRmtERjs7QUR6Qkk7RUVnQkEsbXNDQUFBO0VBQ0Esd2tDQUFBO0VBQ0Esa2VBQUE7RUFDQSw0QkFBQTtFQzVDRiw0R0FBQTtBRnlERjs7QUQzQkU7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBQzZCSjs7QUR4QkE7RUl6QkksNEhBQUE7RUFDQSwwQkFBQTtFQUNBLHlEQUFBO0VBQ0EsNEJBQUE7RUFFQSxzQ0FBQTtVQUFBLDhCQUFBO0VBQ0EsbUNBQUE7VUFBQSwyQkFBQTtFRG5CRiw0R0FBQTtFQ21GQSxxQ0FBQTtVQUFBLDZCQUFBO0VBQ0EsMkNBQUE7VUFBQSxtQ0FBQTtFQUNBLDhDQUFBO1VBQUEsc0NBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0FIVkY7O0FHdkRJO0VBQ0U7SUFDRSx3REFBQTtFSHlETjtFR3RESTtJQUNFLHlEQUFBO0VId0ROO0FBQ0Y7O0FHL0RJO0VBQ0U7SUFDRSx3REFBQTtFSHlETjtFR3RESTtJQUNFLHlEQUFBO0VId0ROO0FBQ0Y7O0FEeENJO0VJL0JBLDRIQUFBO0VBQ0EsMEJBQUE7RUFDQSx5REFBQTtFQUNBLDRCQUFBO0VBRUEsc0NBQUE7VUFBQSw4QkFBQTtFQUNBLG1DQUFBO1VBQUEsMkJBQUE7RURuQkYsNEdBQUE7RUNtRkEscUNBQUE7VUFBQSw2QkFBQTtFQUNBLDJDQUFBO1VBQUEsbUNBQUE7RUFDQSw4Q0FBQTtVQUFBLHNDQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtBSFdGOztBRzVFSTtFQUNFO0lBQ0Usd0RBQUE7RUg4RU47RUczRUk7SUFDRSx5REFBQTtFSDZFTjtBQUNGOztBRDdESTtFSWtCQSx1VkFBQTtFQUNBLGdQQUFBO0VBQ0EsOElBQUE7RUFDQSw0QkFBQTtFQUVBLHNDQUFBO0VBQ0Esd0NBQUE7VUFBQSxnQ0FBQTtFRHBFRiw0R0FBQTtFQ21GQSxxQ0FBQTtVQUFBLDZCQUFBO0VBQ0EsMkNBQUE7VUFBQSxtQ0FBQTtFQUNBLDhDQUFBO1VBQUEsc0NBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0FIZ0NGOztBR2hESTtFQUNFO0lBQ0UsNElBQUE7RUhrRE47RUcvQ0k7SUFDRSw4SUFBQTtFSGlETjtBQUNGOztBR3hESTtFQUNFO0lBQ0UsNElBQUE7RUhrRE47RUcvQ0k7SUFDRSw4SUFBQTtFSGlETjtBQUNGOztBRGxGSTtFSWtCQSxrakJBQUE7RUFDQSxzY0FBQTtFQUNBLG1PQUFBO0VBQ0EsNEJBQUE7RUFFQSxzQ0FBQTtFQUNBLHdDQUFBO1VBQUEsZ0NBQUE7RURwRUYsNEdBQUE7RUNtRkEscUNBQUE7VUFBQSw2QkFBQTtFQUNBLDJDQUFBO1VBQUEsbUNBQUE7RUFDQSw4Q0FBQTtVQUFBLHNDQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtBSHFERjs7QUdyRUk7RUFDRTtJQUNFLGdPQUFBO0VIdUVOO0VHcEVJO0lBQ0UsbU9BQUE7RUhzRU47QUFDRjs7QUR2R0k7RUlrQkEsNndCQUFBO0VBQ0EsNHBCQUFBO0VBQ0Esd1RBQUE7RUFDQSw0QkFBQTtFQUVBLHNDQUFBO0VBQ0Esd0NBQUE7VUFBQSxnQ0FBQTtFRHBFRiw0R0FBQTtFQ21GQSxxQ0FBQTtVQUFBLDZCQUFBO0VBQ0EsMkNBQUE7VUFBQSxtQ0FBQTtFQUNBLDhDQUFBO1VBQUEsc0NBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0FIMEVGOztBRzFGSTtFQUNFO0lBQ0Usb1RBQUE7RUg0Rk47RUd6Rkk7SUFDRSx3VEFBQTtFSDJGTjtBQUNGOztBRDVISTtFSWtCQSx3K0JBQUE7RUFDQSxrM0JBQUE7RUFDQSw2WUFBQTtFQUNBLDRCQUFBO0VBRUEsc0NBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0VEcEVGLDRHQUFBO0VDbUZBLHFDQUFBO1VBQUEsNkJBQUE7RUFDQSwyQ0FBQTtVQUFBLG1DQUFBO0VBQ0EsOENBQUE7VUFBQSxzQ0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7QUgrRkY7O0FHL0dJO0VBQ0U7SUFDRSx3WUFBQTtFSGlITjtFRzlHSTtJQUNFLDZZQUFBO0VIZ0hOO0FBQ0Y7O0FEakpJO0VJa0JBLG1zQ0FBQTtFQUNBLHdrQ0FBQTtFQUNBLGtlQUFBO0VBQ0EsNEJBQUE7RUFFQSxzQ0FBQTtFQUNBLHdDQUFBO1VBQUEsZ0NBQUE7RURwRUYsNEdBQUE7RUNtRkEscUNBQUE7VUFBQSw2QkFBQTtFQUNBLDJDQUFBO1VBQUEsbUNBQUE7RUFDQSw4Q0FBQTtVQUFBLHNDQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtBSG9IRjs7QUdwSUk7RUFDRTtJQUNFLDRkQUFBO0VIc0lOO0VHbklJO0lBQ0Usa2VBQUE7RUhxSU47QUFDRjs7QURqS0U7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtFQUVBLG9CQUFBO1VBQUEsWUFBQTtBQ2tLSjs7QUQ3SkE7RUFDRSw2QkFBQTtFQUNBLCtDQUFBO0VBQ0EsdUNBQUE7RUFDQSxrQ0FBQTtFRy9EQSw0R0FBQTtBRmdPRjs7QUQxSkU7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsbUtBQ0U7RUFDRiw0QkFBQTtFQUNBLDREQUFBO1VBQUEsb0RBQUE7QUMySko7O0FEeEpFO0VBQ0U7SUFDRSw2QkFBQTtFQzBKSjtFRHZKRTtJQUNFLDRCQUFBO0VDeUpKO0FBQ0Y7O0FEaEtFO0VBQ0U7SUFDRSw2QkFBQTtFQzBKSjtFRHZKRTtJQUNFLDRCQUFBO0VDeUpKO0FBQ0Y7O0FEckpFO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFRXhGQSw0SEFBQTtFQUNBLDBCQUFBO0VBQ0EseURBQUE7RUFDQSw0QkFBQTtFQ2ZGLDRHQUFBO0FGZ1FGOztBRHBKSTtFRzVHRiw0R0FBQTtBRm1RRjs7QURuSk07RUVwR0YsNEhBQUE7RUFDQSwwQkFBQTtFQUNBLHlEQUFBO0VBQ0EsNEJBQUE7RUNmRiw0R0FBQTtBRjBRRjs7QUQ5Skk7RUc1R0YsNEdBQUE7QUY2UUY7O0FEN0pNO0VFdkVGLHVWQUFBO0VBQ0EsZ1BBQUE7RUFDQSw4SUFBQTtFQUNBLDRCQUFBO0VDNUNGLDRHQUFBO0FGb1JGOztBRHhLSTtFRzVHRiw0R0FBQTtBRnVSRjs7QUR2S007RUV2RUYsa2pCQUFBO0VBQ0Esc2NBQUE7RUFDQSxtT0FBQTtFQUNBLDRCQUFBO0VDNUNGLDRHQUFBO0FGOFJGOztBRGxMSTtFRzVHRiw0R0FBQTtBRmlTRjs7QURqTE07RUV2RUYsNndCQUFBO0VBQ0EsNHBCQUFBO0VBQ0Esd1RBQUE7RUFDQSw0QkFBQTtFQzVDRiw0R0FBQTtBRndTRjs7QUQ1TEk7RUc1R0YsNEdBQUE7QUYyU0Y7O0FEM0xNO0VFdkVGLHcrQkFBQTtFQUNBLGszQkFBQTtFQUNBLDZZQUFBO0VBQ0EsNEJBQUE7RUM1Q0YsNEdBQUE7QUZrVEY7O0FEdE1JO0VHNUdGLDRHQUFBO0FGcVRGOztBRHJNTTtFRXZFRixtc0NBQUE7RUFDQSx3a0NBQUE7RUFDQSxrZUFBQTtFQUNBLDRCQUFBO0VDNUNGLDRHQUFBO0FGNFRGOztBRHRNRTtFQUNFLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxjQUFBO0FDd01KOztBRHRNSTtFQUVFLGdCQUFBO0VBQ0Esb0JBQUE7VUFBQSxZQUFBO0FDdU1OIiwiZmlsZSI6InNyYy9hcHAvc2hlbGwvdGV4dC1zaGVsbC90ZXh0LXNoZWxsLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIi4vbWl4aW5zL2JhY2tncm91bmQtaGVpZ2h0XCI7XG5AaW1wb3J0IFwiLi9taXhpbnMvbWFza2VkLWxpbmVzLWJhY2tncm91bmRcIjtcbkBpbXBvcnQgXCIuL21peGlucy9ib3VuY2luZy1saW5lcy1iYWNrZ3JvdW5kXCI7XG5cbiRtYXgtbGluZXMtY291bnQ6IDY7XG5cbjpob3N0IHtcbiAgLS10ZXh0LXNoZWxsLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtLXRleHQtc2hlbGwtbGluZS1jb2xvcjogI0VFRTtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNnB4O1xuICAtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXI6IDNweDtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCk7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC8vIFRvIGZpeCAxcHggbGluZSBtaXNhbGlnbm1lbnQgaW4gY2hyb21lOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvYmFja2dyb3VuZC1jbGlwXG4gIC8vIChJIGFsc28gbm90aWNlZCB0aGF0IGlmIEkgc2V0IHRoZSBjb2xvciB0byBhIHNvbGlkIGNvbG9yIGluc3RlYWQgb2YgaGF2aW5nIG9wYWNpdHksIHRoZSBpc3N1ZSBkb2Vzbid0IGhhcHBlbilcbiAgYmFja2dyb3VuZC1jbGlwOiBjb250ZW50LWJveDtcbn1cblxuLy8gRGVmYXVsdCBzdHlsZXMuIFdoZW4gbm8gYW5pbWF0aW9uIGF0dHJpYnV0ZSBpcyBwcm92aWRlZFxuOmhvc3QoOm5vdChbYW5pbWF0aW9uXSkpIHtcbiAgLy8gRGVmYXVsdCBvbmUgbGluZSB0ZXh0LXNoZWxsXG4gIEBpbmNsdWRlIG1hc2tlZC1saW5lcy1iYWNrZ3JvdW5kKDEpO1xuXG4gIC8vIFN1cHBvcnQgZm9yIFtsaW5lc10gYXR0cmlidXRlXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heC1saW5lcy1jb3VudCB7XG4gICAgJltsaW5lcz1cIiN7ICRpIH1cIl0ge1xuICAgICAgQGluY2x1ZGUgbWFza2VkLWxpbmVzLWJhY2tncm91bmQoJGkpO1xuICAgIH1cbiAgfVxuXG4gICYudGV4dC1sb2FkZWQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBCb3VuY2luZyBsaW5lIGxvYWRpbmcgYW5pbWF0aW9uXG46aG9zdChbYW5pbWF0aW9uPVwiYm91bmNpbmdcIl0pIHtcbiAgLy8gRGVmYXVsdCBvbmUgbGluZSB0ZXh0LXNoZWxsXG4gIEBpbmNsdWRlIGJvdW5jaW5nLWxpbmVzLWJhY2tncm91bmQoMSk7XG5cbiAgLy8gU3VwcG9ydCBmb3IgW2xpbmVzXSBhdHRyaWJ1dGVcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4LWxpbmVzLWNvdW50IHtcbiAgICAmW2xpbmVzPVwiI3sgJGkgfVwiXSB7XG4gICAgICBAaW5jbHVkZSBib3VuY2luZy1saW5lcy1iYWNrZ3JvdW5kKCRpKTtcbiAgICB9XG4gIH1cblxuICAmLnRleHQtbG9hZGVkIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLy8gMCBpcyB0aGUgZGVmYXVsdCB2YWx1ZSAoc2VlOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTU5NjMwNDQvMTExNjk1OSlcbiAgICBhbmltYXRpb246IDA7XG4gIH1cbn1cblxuLy8gQmFja2dyb3VuZCBncmFkaWVudCBiZW5lYXRoIG1hc2tlZCBsaW5lc1xuOmhvc3QoW2FuaW1hdGlvbj1cImdyYWRpZW50XCJdKSB7XG4gIC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kOiAjRkZGO1xuICAtLXRleHQtc2hlbGwtbGluZS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgLS10ZXh0LXNoZWxsLWFuaW1hdGlvbi1iYWNrZ3JvdW5kOiAjRUVFO1xuICAtLXRleHQtc2hlbGwtYW5pbWF0aW9uLWNvbG9yOiAjREREO1xuXG5cbiAgLy8gQ2FsY3VsYXRlIGRlZmF1bHQgaGVpZ2h0IGZvciAxIGxpbmVcbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1oZWlnaHQobWluLWhlaWdodCwgMSk7XG5cbiAgLy8gVGhlIGFuaW1hdGlvbiB0aGF0IGdvZXMgYmVuZWF0aCB0aGUgbWFza3NcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1hbmltYXRpb24tYmFja2dyb3VuZCkgOCUsIHZhcigtLXRleHQtc2hlbGwtYW5pbWF0aW9uLWNvbG9yKSAxOCUsIHZhcigtLXRleHQtc2hlbGwtYW5pbWF0aW9uLWJhY2tncm91bmQpIDMzJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4MDBweCAxMDRweDtcbiAgICBhbmltYXRpb246IGFuaW1hdGVCYWNrZ3JvdW5kIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG5cbiAgQGtleWZyYW1lcyBhbmltYXRlQmFja2dyb3VuZCB7XG4gICAgMCV7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDY4cHggMFxuICAgIH1cblxuICAgIDEwMCV7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0NjhweCAwXG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIG1hc2tzXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAvLyBEZWZhdWx0IG9uZSBsaW5lIHRleHQtc2hlbGxcbiAgICBAaW5jbHVkZSBtYXNrZWQtbGluZXMtYmFja2dyb3VuZCgxKTtcbiAgfVxuXG4gIC8vIFN1cHBvcnQgZm9yIFtsaW5lc10gYXR0cmlidXRlXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heC1saW5lcy1jb3VudCB7XG4gICAgJltsaW5lcz1cIiN7ICRpIH1cIl0ge1xuICAgICAgLy8gQ2FsY3VsYXRlIGRlZmF1bHQgaGVpZ2h0IGZvciAkaSBsaW5lc1xuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1oZWlnaHQobWluLWhlaWdodCwgJGkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIG1hc2tlZC1saW5lcy1iYWNrZ3JvdW5kKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRleHQtbG9hZGVkIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGFuaW1hdGlvbjogMDtcbiAgICB9XG4gIH1cbn1cbiIsIjpob3N0IHtcbiAgLS10ZXh0LXNoZWxsLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAtLXRleHQtc2hlbGwtbGluZS1jb2xvcjogI0VFRTtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNnB4O1xuICAtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXI6IDNweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQpO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xufVxuXG46aG9zdCg6bm90KFthbmltYXRpb25dKSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgOTIlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA5MiUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDEpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMSAtIDEpKSk7XG59XG46aG9zdCg6bm90KFthbmltYXRpb25dKSlbbGluZXM9XCIxXCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDk0JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTQlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAxKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDEgLSAxKSkpO1xufVxuOmhvc3QoOm5vdChbYW5pbWF0aW9uXSkpW2xpbmVzPVwiMlwiXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA4OSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDg5JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSAzMCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDMwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAyKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpO1xufVxuOmhvc3QoOm5vdChbYW5pbWF0aW9uXSkpW2xpbmVzPVwiM1wiXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA5MyUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDkzJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc0JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA0NCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDQ0JSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDMpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSk7XG59XG46aG9zdCg6bm90KFthbmltYXRpb25dKSlbbGluZXM9XCI0XCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDk1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc5JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzklKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDcwJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDUwJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiA0KSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAxKSkpO1xufVxuOmhvc3QoOm5vdChbYW5pbWF0aW9uXSkpW2xpbmVzPVwiNVwiXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA4NiUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDg2JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NiUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc2JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA4MCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDgwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3MSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDcxJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA1MCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDQgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg0IC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg1IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNSAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDUgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMSkpKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiA1KSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDUgLSAxKSkpO1xufVxuOmhvc3QoOm5vdChbYW5pbWF0aW9uXSkpW2xpbmVzPVwiNlwiXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA4NyUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDg3JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3MiUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDcyJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc1JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3MSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDcxJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA2MyUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDYzJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSAzNyUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDM3JSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDQgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg0IC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg1IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNSAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDUgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDYgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg2IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDYpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDEpKSk7XG59XG46aG9zdCg6bm90KFthbmltYXRpb25dKSkudGV4dC1sb2FkZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuOmhvc3QoW2FuaW1hdGlvbj1ib3VuY2luZ10pIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDkxJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTElKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZUxpbmU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogMSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgxIC0gMSkpKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZUxpbmUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCIxXCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDkzJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTMlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZUxpbmU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogMSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgxIC0gMSkpKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZUxpbmUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCIyXCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDkxJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTElKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDM2JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMzYlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGUtcmV2ZXJzZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGVNdWx0aUxpbmU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogMikgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZU11bHRpTGluZSB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDU1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCIzXCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDg1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgODUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc3JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzclKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDQ1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNDUlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMSkpKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZS1yZXZlcnNlO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZU11bHRpTGluZTtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAzKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAxKSkpO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xufVxuQGtleWZyYW1lcyBhbmltYXRlTXVsdGlMaW5lIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtc2l6ZTogODUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNzUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNTUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCI0XCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDg1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgODUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc0JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzQlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDMzJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMzMlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlLXJldmVyc2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlTXVsdGlMaW5lO1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDQpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSk7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG59XG5Aa2V5ZnJhbWVzIGFuaW1hdGVNdWx0aUxpbmUge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICA3NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICA3NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICA1NSUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCI1XCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDkxJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgOTElKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDYxJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNjElKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc5JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzklKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDM4JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMzglKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDUgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNSAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDUgLSAxKSkpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBhbHRlcm5hdGUtcmV2ZXJzZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGVNdWx0aUxpbmU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogNSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMSkpKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZU11bHRpTGluZSB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDc1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDc1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDc1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDU1JSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSlbbGluZXM9XCI2XCJdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDg2JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgODYlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc1JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzUlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc4JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzglKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc4JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzglKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDc3JSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgNzclKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtY29sb3IsICNDQ0MpIDMzJSAsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMzMlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwcHgsICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDUgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNSAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDUgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg2IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDYgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg2IC0gMSkpKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZS1yZXZlcnNlO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZU11bHRpTGluZTtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiA2KSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDYgLSAxKSkpO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xufVxuQGtleWZyYW1lcyBhbmltYXRlTXVsdGlMaW5lIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtc2l6ZTogODUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNzUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNzUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNzUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNzUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgNTUlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICB9XG59XG46aG9zdChbYW5pbWF0aW9uPWJvdW5jaW5nXSkudGV4dC1sb2FkZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYW5pbWF0aW9uOiAwO1xufVxuXG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSkge1xuICAtLXRleHQtc2hlbGwtYmFja2dyb3VuZDogI0ZGRjtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIC0tdGV4dC1zaGVsbC1hbmltYXRpb24tYmFja2dyb3VuZDogI0VFRTtcbiAgLS10ZXh0LXNoZWxsLWFuaW1hdGlvbi1jb2xvcjogI0RERDtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAxKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDEgLSAxKSkpO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWFuaW1hdGlvbi1iYWNrZ3JvdW5kKSA4JSwgdmFyKC0tdGV4dC1zaGVsbC1hbmltYXRpb24tY29sb3IpIDE4JSwgdmFyKC0tdGV4dC1zaGVsbC1hbmltYXRpb24tYmFja2dyb3VuZCkgMzMlKTtcbiAgYmFja2dyb3VuZC1zaXplOiA4MDBweCAxMDRweDtcbiAgYW5pbWF0aW9uOiBhbmltYXRlQmFja2dyb3VuZCAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZUJhY2tncm91bmQge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2OHB4IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNDY4cHggMDtcbiAgfVxufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgODglICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA4OCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDEpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMSAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCIxXCJdIHtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAxKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDEgLSAxKSkpO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pW2xpbmVzPVwiMVwiXTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgODklICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA4OSUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDEpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMSAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCIyXCJdIHtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAyKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAxKSkpO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pW2xpbmVzPVwiMlwiXTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgOTElICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA5MSUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgMzAlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAzMCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweCwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogMikgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKTtcbn1cbjpob3N0KFthbmltYXRpb249Z3JhZGllbnRdKVtsaW5lcz1cIjNcIl0ge1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDMpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCIzXCJdOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA5NSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDk1JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc1JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSAzNCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDM0JSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDMpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCI0XCJdIHtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiA0KSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAxKSkpO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pW2xpbmVzPVwiNFwiXTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgODclICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA4NyUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgNzElICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA3MSUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgODAlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA4MCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgMzclICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAzNyUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweCwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDQgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg0IC0gMSkpKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDQpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCI1XCJdIHtcbiAgbWluLWhlaWdodDogY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiA1KSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDUgLSAxKSkpO1xufVxuOmhvc3QoW2FuaW1hdGlvbj1ncmFkaWVudF0pW2xpbmVzPVwiNVwiXTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgOTQlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA5NCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgODAlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA4MCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgNjIlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA2MiUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgNjAlICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSA2MCUpLCAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDEwMCUsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtbGluZS1jb2xvciwgI0NDQykgMzclICwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAzNyUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDBweCwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDIgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDMgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgzIC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg0IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNCAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDQgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg0IC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNSAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDUgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg1IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNSAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogNSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMSkpKTtcbn1cbjpob3N0KFthbmltYXRpb249Z3JhZGllbnRdKVtsaW5lcz1cIjZcIl0ge1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDYpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSlbbGluZXM9XCI2XCJdOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA5MSUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDkxJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA4MCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDgwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NiUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc2JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA3NCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDc0JSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSA2MCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDYwJSksICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRikgMTAwJSwgdmFyKC0tdGV4dC1zaGVsbC1iYWNrZ3JvdW5kLCAjRkZGKSAxMDAlKSwgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKSAzMCUgLCB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpIDMwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMHB4LCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgyIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMiAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDIgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICgyIC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoMyAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDMgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICgzIC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoMyAtIDEpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDQgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg0IC0gMikpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNCAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDQgLSAxKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg1IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNSAtIDIpKSksICAwIGNhbGMoKHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpICogKDUgLSAxKSkgKyAodmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSAqICg1IC0gMSkpKSwgIDAgY2FsYygodmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCkgKiAoNiAtIDEpKSArICh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpICogKDYgLSAyKSkpLCAgMCBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqICg2IC0gMSkpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDEpKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtZ3V0dGVyLCAzcHgpLCAgMTAwJSB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KSwgIDEwMCUgdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCksICAxMDAlIHZhcigtLXRleHQtc2hlbGwtbGluZS1oZWlnaHQsIDE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtaW4taGVpZ2h0OiBjYWxjKCh2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KSAqIDYpICsgKHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCkgKiAoNiAtIDEpKSk7XG59XG46aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSkudGV4dC1sb2FkZWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbjpob3N0KFthbmltYXRpb249Z3JhZGllbnRdKS50ZXh0LWxvYWRlZDo6YmVmb3JlLCA6aG9zdChbYW5pbWF0aW9uPWdyYWRpZW50XSkudGV4dC1sb2FkZWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYW5pbWF0aW9uOiAwO1xufSIsIkBpbXBvcnQgXCIuL3V0aWxzXCI7XG5AaW1wb3J0IFwiLi9iYWNrZ3JvdW5kLWhlaWdodFwiO1xuXG5AbWl4aW4gbWFza2VkLWxpbmVzLWJhY2tncm91bmQoJGxpbmVzOiAxKSB7XG4gICRsaW5lLWhlaWdodDogdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gICRsaW5lLXNwYWNpbmc6IHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCk7XG4gICRiZy1jb2xvcjogdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKTtcbiAgJG1hc2stY29sb3I6IHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRik7XG4gICRsaW5lLWJnLWNvbG9yOiB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpO1xuICAkYmcteS1wb3M6IDBweDtcbiAgJHJhbmQtd2lkdGg6ICN7cmFuZG9tTnVtKDg1LCA5NSl9O1xuICAkYmctaW1hZ2U6ICdsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICcgKyAkYmctY29sb3IgKyAnICcgKyAkcmFuZC13aWR0aCArICclICwgJyArICRtYXNrLWNvbG9yICsgJyAnICsgJHJhbmQtd2lkdGggKyAnJSknO1xuICAkYmctcG9zaXRpb246ICcwICcgKyAkYmcteS1wb3M7XG4gICRiZy1zaXplOiAnMTAwJSAnICsgJGxpbmUtaGVpZ2h0O1xuXG4gIEBpZiAoJGxpbmVzID09IDEpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAjeyRiZy1pbWFnZX07XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogI3skYmctcG9zaXRpb259O1xuICAgIGJhY2tncm91bmQtc2l6ZTogI3skYmctc2l6ZX07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfSBAZWxzZSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbGluZXMge1xuICAgICAgLy8gQWRkIHNlcGFyYXRvciBiZXR3ZWVuIGxpbmVzXG4gICAgICAkYmctaW1hZ2U6IGFwcGVuZCgkYmctaW1hZ2UsIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI3skbGluZS1iZy1jb2xvcn0gMTAwJSwgI3skbGluZS1iZy1jb2xvcn0gMTAwJSkpO1xuICAgICAgLy8gVGhpcyBsaW5lYXItZ3JhZGllbnQgYXMgc2VwYXJhdG9yIHN0YXJ0cyBiZWxvdyB0aGUgbGFzdCBsaW5lLFxuICAgICAgLy8gc28gd2UgaGF2ZSB0byBhZGQgJGxpbmUtaGVpZ2h0IHRvIG91ciB5LXBvcyBwb2ludGVyXG4gICAgICAkYmcteS1wb3M6IGNhbGMoKCN7JGxpbmUtaGVpZ2h0fSAqICgjeyRpfSAtIDEpKSArICgjeyRsaW5lLXNwYWNpbmd9ICogKCN7JGl9IC0gMikpKTtcbiAgICAgICRiZy1wb3NpdGlvbjogYXBwZW5kKCRiZy1wb3NpdGlvbiwgJzAgJyArICRiZy15LXBvcyk7XG4gICAgICAkYmctc2l6ZTogYXBwZW5kKCRiZy1zaXplLCAnMTAwJSAnICsgJGxpbmUtc3BhY2luZyk7XG5cbiAgICAgIC8vIEFkZCBuZXcgbGluZVxuICAgICAgLy8gVGhlIGxhc3QgbGluZSBzaG91bGQgYmUgbmFycm93IHRoYW4gdGhlIG90aGVyc1xuICAgICAgQGlmICgkaSA9PSAkbGluZXMpIHtcbiAgICAgICAgJHJhbmQtd2lkdGg6ICN7cmFuZG9tTnVtKDMwLCA1MCl9O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRyYW5kLXdpZHRoOiAje3JhbmRvbU51bSg2MCwgODApfTtcbiAgICAgIH1cbiAgICAgICRiZy1pbWFnZTogYXBwZW5kKCRiZy1pbWFnZSwgJ2xpbmVhci1ncmFkaWVudCh0byByaWdodCwgJyArICRiZy1jb2xvciArICcgJyArICRyYW5kLXdpZHRoICsgJyUgLCAnICsgJG1hc2stY29sb3IgKyAnICcgKyAkcmFuZC13aWR0aCArICclKScpO1xuICAgICAgLy8gVGhpcyBuZXcgbGluZSBzdGFydHMgYmVsb3cgdGhlIHBydmlvdXNseSBhZGRlZCBzZXBhcmF0b3IsXG4gICAgICAvLyBzbyB3ZSBoYXZlIHRvIGFkZCAkbGluZS1zcGFjaW5nIHRvIG91ciB5LXBvcyBwb2ludGVyXG4gICAgICAkYmcteS1wb3M6IGNhbGMoKCN7JGxpbmUtaGVpZ2h0fSAqICgjeyRpfSAtIDEpKSArICgjeyRsaW5lLXNwYWNpbmd9ICogKCN7JGl9IC0gMSkpKTtcbiAgICAgICRiZy1wb3NpdGlvbjogYXBwZW5kKCRiZy1wb3NpdGlvbiwgJzAgJyArICRiZy15LXBvcyk7XG4gICAgICAkYmctc2l6ZTogYXBwZW5kKCRiZy1zaXplLCAnMTAwJSAnICsgJGxpbmUtaGVpZ2h0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAje3RvLXN0cmluZygkYmctaW1hZ2UsICcsICcpfTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAje3RvLXN0cmluZygkYmctcG9zaXRpb24sICcsICcpfTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICN7dG8tc3RyaW5nKCRiZy1zaXplLCAnLCAnKX07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJhY2tncm91bmQtaGVpZ2h0KG1pbi1oZWlnaHQsICRsaW5lcyk7XG59XG4iLCJAbWl4aW4gYmFja2dyb3VuZC1oZWlnaHQoJHByb3BlcnR5LCAkbGluZXM6IDEpIHtcbiAgJGxpbmUtaGVpZ2h0OiB2YXIoLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0LCAxNnB4KTtcbiAgJGxpbmUtc3BhY2luZzogdmFyKC0tdGV4dC1zaGVsbC1saW5lLWd1dHRlciwgM3B4KTtcblxuICAjeyRwcm9wZXJ0eX06IGNhbGMoKCN7JGxpbmUtaGVpZ2h0fSAqICN7JGxpbmVzfSkgKyAoI3skbGluZS1zcGFjaW5nfSAqICgjeyRsaW5lc30gLSAxKSkpO1xufVxuIiwiQGltcG9ydCBcIi4vdXRpbHNcIjtcblxuQG1peGluIGJvdW5jaW5nLWxpbmVzLWJhY2tncm91bmQoJGxpbmVzOiAxKSB7XG4gICRsaW5lLWhlaWdodDogdmFyKC0tdGV4dC1zaGVsbC1saW5lLWhlaWdodCwgMTZweCk7XG4gICRsaW5lLXNwYWNpbmc6IHZhcigtLXRleHQtc2hlbGwtbGluZS1ndXR0ZXIsIDNweCk7XG4gICRiZy1jb2xvcjogdmFyKC0tdGV4dC1zaGVsbC1saW5lLWNvbG9yLCAjQ0NDKTtcbiAgJG1hc2stY29sb3I6IHZhcigtLXRleHQtc2hlbGwtYmFja2dyb3VuZCwgI0ZGRik7XG4gICRsaW5lLWJnLWNvbG9yOiB2YXIoLS10ZXh0LXNoZWxsLWJhY2tncm91bmQsICNGRkYpO1xuICAkYmcteS1wb3M6IDBweDtcbiAgJHJhbmQtd2lkdGg6ICN7cmFuZG9tTnVtKDg1LCA5NSl9O1xuICAkYmctaW1hZ2U6ICdsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICcgKyAkYmctY29sb3IgKyAnICcgKyAkcmFuZC13aWR0aCArICclICwgJyArICRtYXNrLWNvbG9yICsgJyAnICsgJHJhbmQtd2lkdGggKyAnJSknO1xuICAkYmctcG9zaXRpb246ICcwICcgKyAkYmcteS1wb3M7XG4gICRiZy1zaXplOiAnMTAwJSAnICsgJGxpbmUtaGVpZ2h0O1xuICAkYmctc2l6ZS1hbmltYXRpb24tZnJvbTogJzg1JSAnICsgJGxpbmUtaGVpZ2h0O1xuICAkYmctc2l6ZS1hbmltYXRpb24tdG86ICcxMDAlICcgKyAkbGluZS1oZWlnaHQ7XG5cbiAgQGlmICgkbGluZXMgPT0gMSkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICN7JGJnLWltYWdlfTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAjeyRiZy1wb3NpdGlvbn07XG4gICAgYmFja2dyb3VuZC1zaXplOiAjeyRiZy1zaXplfTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogYWx0ZXJuYXRlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlTGluZTtcblxuICAgIEBrZXlmcmFtZXMgYW5pbWF0ZUxpbmUge1xuICAgICAgMCV7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogI3skYmctc2l6ZS1hbmltYXRpb24tZnJvbX07XG4gICAgICB9XG5cbiAgICAgIDEwMCV7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogI3skYmctc2l6ZS1hbmltYXRpb24tdG99O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbGluZXMge1xuICAgICAgLy8gQWRkIHNlcGFyYXRvciBiZXR3ZWVuIGxpbmVzXG4gICAgICAkYmctaW1hZ2U6IGFwcGVuZCgkYmctaW1hZ2UsIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI3skbGluZS1iZy1jb2xvcn0gMTAwJSwgI3skbGluZS1iZy1jb2xvcn0gMTAwJSkpO1xuICAgICAgLy8gVGhpcyBsaW5lYXItZ3JhZGllbnQgYXMgc2VwYXJhdG9yIHN0YXJ0cyBiZWxvdyB0aGUgbGFzdCBsaW5lLFxuICAgICAgLy8gc28gd2UgaGF2ZSB0byBhZGQgJGxpbmUtaGVpZ2h0IHRvIG91ciB5LXBvcyBwb2ludGVyXG4gICAgICAkYmcteS1wb3M6IGNhbGMoKCN7JGxpbmUtaGVpZ2h0fSAqICgjeyRpfSAtIDEpKSArICgjeyRsaW5lLXNwYWNpbmd9ICogKCN7JGl9IC0gMikpKTtcbiAgICAgICRiZy1wb3NpdGlvbjogYXBwZW5kKCRiZy1wb3NpdGlvbiwgJzAgJyArICRiZy15LXBvcyk7XG4gICAgICAkYmctc2l6ZTogYXBwZW5kKCRiZy1zaXplLCAnMTAwJSAnICsgJGxpbmUtc3BhY2luZyk7XG4gICAgICAvLyBzZXBhcmF0b3IgbGluZXMgaGF2ZSB0aGUgc2FtZSBpbml0aWFsIGFuZCBlbmQgc3RhdGUsIHRodXMgbm8gYW5pbWF0aW9uIG9jY3Vyc1xuICAgICAgJGJnLXNpemUtYW5pbWF0aW9uLWZyb206IGFwcGVuZCgkYmctc2l6ZS1hbmltYXRpb24tZnJvbSwgJzEwMCUgJyArICRsaW5lLXNwYWNpbmcpO1xuICAgICAgJGJnLXNpemUtYW5pbWF0aW9uLXRvOiBhcHBlbmQoJGJnLXNpemUtYW5pbWF0aW9uLXRvLCAnMTAwJSAnICsgJGxpbmUtc3BhY2luZyk7XG5cbiAgICAgIC8vIEFkZCBuZXcgbGluZVxuICAgICAgLy8gVGhlIGxhc3QgbGluZSBzaG91bGQgYmUgbmFycm93IHRoYW4gdGhlIG90aGVyc1xuICAgICAgQGlmICgkaSA9PSAkbGluZXMpIHtcbiAgICAgICAgJHJhbmQtd2lkdGg6ICN7cmFuZG9tTnVtKDMwLCA1MCl9O1xuICAgICAgICAkYmctc2l6ZS1hbmltYXRpb24tZnJvbTogYXBwZW5kKCRiZy1zaXplLWFuaW1hdGlvbi1mcm9tLCAnNTUlICcgKyAkbGluZS1oZWlnaHQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRyYW5kLXdpZHRoOiAje3JhbmRvbU51bSg2MCwgODApfTtcbiAgICAgICAgJGJnLXNpemUtYW5pbWF0aW9uLWZyb206IGFwcGVuZCgkYmctc2l6ZS1hbmltYXRpb24tZnJvbSwgJzc1JSAnICsgJGxpbmUtaGVpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgJGJnLWltYWdlOiBhcHBlbmQoJGJnLWltYWdlLCAnbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAnICsgJGJnLWNvbG9yICsgJyAnICsgJHJhbmQtd2lkdGggKyAnJSAsICcgKyAkbWFzay1jb2xvciArICcgJyArICRyYW5kLXdpZHRoICsgJyUpJyk7XG4gICAgICAvLyBUaGlzIG5ldyBsaW5lIHN0YXJ0cyBiZWxvdyB0aGUgcHJ2aW91c2x5IGFkZGVkIHNlcGFyYXRvcixcbiAgICAgIC8vIHNvIHdlIGhhdmUgdG8gYWRkICRsaW5lLXNwYWNpbmcgdG8gb3VyIHktcG9zIHBvaW50ZXJcbiAgICAgICRiZy15LXBvczogY2FsYygoI3skbGluZS1oZWlnaHR9ICogKCN7JGl9IC0gMSkpICsgKCN7JGxpbmUtc3BhY2luZ30gKiAoI3skaX0gLSAxKSkpO1xuICAgICAgJGJnLXBvc2l0aW9uOiBhcHBlbmQoJGJnLXBvc2l0aW9uLCAnMCAnICsgJGJnLXktcG9zKTtcbiAgICAgICRiZy1zaXplOiBhcHBlbmQoJGJnLXNpemUsICcxMDAlICcgKyAkbGluZS1oZWlnaHQpO1xuICAgICAgJGJnLXNpemUtYW5pbWF0aW9uLXRvOiBhcHBlbmQoJGJnLXNpemUtYW5pbWF0aW9uLXRvLCAnMTAwJSAnICsgJGxpbmUtaGVpZ2h0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAje3RvLXN0cmluZygkYmctaW1hZ2UsICcsICcpfTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAje3RvLXN0cmluZygkYmctcG9zaXRpb24sICcsICcpfTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICN7dG8tc3RyaW5nKCRiZy1zaXplLCAnLCAnKX07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZS1yZXZlcnNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlTXVsdGlMaW5lO1xuXG4gICAgQGtleWZyYW1lcyBhbmltYXRlTXVsdGlMaW5lIHtcbiAgICAgIDAle1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICN7dG8tc3RyaW5nKCRiZy1zaXplLWFuaW1hdGlvbi1mcm9tLCAnLCAnKX07XG4gICAgICB9XG5cbiAgICAgIDEwMCV7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogI3t0by1zdHJpbmcoJGJnLXNpemUtYW5pbWF0aW9uLXRvLCAnLCAnKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYmFja2dyb3VuZC1oZWlnaHQobWluLWhlaWdodCwgJGxpbmVzKTtcblxuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xufVxuIl19 */"
  
  /***/ }),
  
  /***/ "./src/app/shell/text-shell/text-shell.component.ts":
  /*!**********************************************************!*\
    !*** ./src/app/shell/text-shell/text-shell.component.ts ***!
    \**********************************************************/
  /*! exports provided: TextShellComponent */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TextShellComponent", function() { return TextShellComponent; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _config_app_shell_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../config/app-shell.config */ "./src/app/shell/config/app-shell.config.ts");
  
  
  
  var TextShellComponent = /** @class */ (function () {
      function TextShellComponent() {
          // To debug shell styles, change configuration in the assets/app-shell.config.json file
          this.debugMode = (_config_app_shell_config__WEBPACK_IMPORTED_MODULE_2__["AppShellConfig"].settings && _config_app_shell_config__WEBPACK_IMPORTED_MODULE_2__["AppShellConfig"].settings.debug) ? _config_app_shell_config__WEBPACK_IMPORTED_MODULE_2__["AppShellConfig"].settings.debug : false;
          this.textLoaded = false;
      }
      Object.defineProperty(TextShellComponent.prototype, "data", {
          set: function (val) {
              if (!this.debugMode) {
                  this._data = (val !== undefined && val !== null) ? val : '';
              }
              if (this._data && this._data !== '') {
                  this.textLoaded = true;
              }
              else {
                  this.textLoaded = false;
              }
          },
          enumerable: true,
          configurable: true
      });
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])('class.text-loaded'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], TextShellComponent.prototype, "textLoaded", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [Object])
      ], TextShellComponent.prototype, "data", null);
      TextShellComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-text-shell',
              template: __webpack_require__(/*! raw-loader!./text-shell.component.html */ "./node_modules/raw-loader/index.js!./src/app/shell/text-shell/text-shell.component.html"),
              styles: [__webpack_require__(/*! ./text-shell.component.scss */ "./src/app/shell/text-shell/text-shell.component.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], TextShellComponent);
      return TextShellComponent;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/side-menu/styles/side-menu.responsive.scss":
  /*!************************************************************!*\
    !*** ./src/app/side-menu/styles/side-menu.responsive.scss ***!
    \************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "/* ----------- iPhone 4 and 4S ----------- */\n@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 2) and (device-aspect-ratio: 2/3) {\n  .app-sidemenu .user-info-wrapper .user-name {\n    font-size: 12px;\n  }\n  .app-sidemenu ion-list ion-item {\n    font-size: 8px;\n  }\n}\n/* ----------- iPhone 5, 5S, 5C and 5SE ----------- */\n@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (-webkit-min-device-pixel-ratio: 2) and (device-aspect-ratio: 40/71) {\n  .interests-to-follow-slide .custom-checkbox .checkbox-title {\n    font-size: 12px;\n  }\n}\n/* ----------- iPhone 6, 6S, 7 and 8 ----------- */\n/* ----------- iPhone X ----------- */\n/* ----------- iPhone 6+, 7+ and 8+ ----------- */\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaWRlLW1lbnUvc3R5bGVzL3NpZGUtbWVudS5yZXNwb25zaXZlLnNjc3MiLCJzcmMvYXBwL3NpZGUtbWVudS9zdHlsZXMvc2lkZS1tZW51LnJlc3BvbnNpdmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSw0Q0FBQTtBQUNBO0VBUU07SUFDRSxlQUFBO0VDWE47RURnQkk7SUFDRSxjQUFBO0VDZE47QUFDRjtBRG1CQSxxREFBQTtBQUNBO0VBUU07SUFDRSxlQUFBO0VDeEJOO0FBQ0Y7QUQ2QkEsa0RBQUE7QUFRQSxxQ0FBQTtBQVFBLGlEQUFBIiwiZmlsZSI6InNyYy9hcHAvc2lkZS1tZW51L3N0eWxlcy9zaWRlLW1lbnUucmVzcG9uc2l2ZS5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKE5vdGU6IERvbid0IGNoYW5nZSB0aGUgb3JkZXIgb2YgdGhlIGRldmljZXMgYXMgaXQgbWF5IGJyZWFrIHRoZSBjb3JyZWN0IGNzcyBwcmVjZWRlbmNlKVxuXG4vLyAoc2VlOiBodHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9tZWRpYS1xdWVyaWVzLWZvci1zdGFuZGFyZC1kZXZpY2VzLyNpcGhvbmUtcXVlcmllcylcbi8vIChzZWU6IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS80Nzc1MDI2MS8xMTE2OTU5KVxuXG4vKiAtLS0tLS0tLS0tLSBpUGhvbmUgNCBhbmQgNFMgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGggOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogNDgwcHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKGRldmljZS1hc3BlY3QtcmF0aW86IDIvMykgLy8gdW5jb21tZW50IGZvciBvbmx5IHBvcnRyYWl0OlxuXG4vLyBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdClcbi8vIHVuY29tbWVudCBmb3Igb25seSBsYW5kc2NhcGU6XG4vLyBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpXG4gIHtcbiAgLmFwcC1zaWRlbWVudSB7XG4gICAgLnVzZXItaW5mby13cmFwcGVyIHtcbiAgICAgIC51c2VyLW5hbWUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW9uLWxpc3Qge1xuICAgICAgaW9uLWl0ZW0ge1xuICAgICAgICBmb250LXNpemU6IDhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0gaVBob25lIDUsIDVTLCA1QyBhbmQgNVNFIC0tLS0tLS0tLS0tICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoIDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aCA6IDU2OHB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiA0MCAvIDcxKSAvLyB1bmNvbW1lbnQgZm9yIG9ubHkgcG9ydHJhaXQ6XG5cbi8vIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVxuLy8gdW5jb21tZW50IGZvciBvbmx5IGxhbmRzY2FwZTpcbi8vIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAge1xuICAuaW50ZXJlc3RzLXRvLWZvbGxvdy1zbGlkZSB7XG4gICAgLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICAuY2hlY2tib3gtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tIGlQaG9uZSA2LCA2UywgNyBhbmQgOCAtLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aCA6IDM3NXB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGggOiA2NjdweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIC8vIHVuY29tbWVudCBmb3Igb25seSBwb3J0cmFpdDpcblxuLy8gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXG4vLyB1bmNvbW1lbnQgZm9yIG9ubHkgbGFuZHNjYXBlOlxuLy8gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVxuICB7fVxuXG4vKiAtLS0tLS0tLS0tLSBpUGhvbmUgWCAtLS0tLS0tLS0tLSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aCA6IDM3NXB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGggOiA4MTJweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gOiAzKSAvLyB1bmNvbW1lbnQgZm9yIG9ubHkgcG9ydHJhaXQ6XG5cbi8vIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVxuLy8gdW5jb21tZW50IGZvciBvbmx5IGxhbmRzY2FwZTpcbi8vIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAge31cblxuLyogLS0tLS0tLS0tLS0gaVBob25lIDYrLCA3KyBhbmQgOCsgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGggOiA0MTRweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoIDogNzM2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSAvLyB1bmNvbW1lbnQgZm9yIG9ubHkgcG9ydHJhaXQ6XG5cbi8vIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVxuLy8gdW5jb21tZW50IGZvciBvbmx5IGxhbmRzY2FwZTpcbi8vIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAge30iLCIvKiAtLS0tLS0tLS0tLSBpUGhvbmUgNCBhbmQgNFMgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiAyLzMpIHtcbiAgLmFwcC1zaWRlbWVudSAudXNlci1pbmZvLXdyYXBwZXIgLnVzZXItbmFtZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gIC5hcHAtc2lkZW1lbnUgaW9uLWxpc3QgaW9uLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICB9XG59XG4vKiAtLS0tLS0tLS0tLSBpUGhvbmUgNSwgNVMsIDVDIGFuZCA1U0UgLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDU2OHB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChkZXZpY2UtYXNwZWN0LXJhdGlvOiA0MC83MSkge1xuICAuaW50ZXJlc3RzLXRvLWZvbGxvdy1zbGlkZSAuY3VzdG9tLWNoZWNrYm94IC5jaGVja2JveC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG4vKiAtLS0tLS0tLS0tLSBpUGhvbmUgNiwgNlMsIDcgYW5kIDggLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tIGlQaG9uZSBYIC0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLSBpUGhvbmUgNissIDcrIGFuZCA4KyAtLS0tLS0tLS0tLSAqLyJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/side-menu/styles/side-menu.scss":
  /*!*************************************************!*\
    !*** ./src/app/side-menu/styles/side-menu.scss ***!
    \*************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  --page-margin: var(--app-fair-margin);\n  --page-background: var(--app-background-alt-shade);\n  --page-headers-shadow-color: rgba(var(--ion-color-darkest-rgb), 0.4);\n}\n\n.app-sidemenu ion-toolbar {\n  --padding-start: 0px;\n  --padding-end: 0px;\n  --padding-top: 0px;\n  --padding-bottom: 0px;\n  --background: var(--ion-color-dark);\n}\n\n.app-sidemenu ion-content {\n  --background: var(--ion-color-dark);\n  border-color: var(--ion-color-dark);\n}\n\n.app-sidemenu .scrollbar .scrollbar-item {\n  background: var(--ion-color-primary);\n  border-radius: 15px;\n}\n\n.app-sidemenu .scrollbar .scrollbar-item:hover {\n  background: var(--ion-color-primary);\n  border-radius: 15px;\n  box-shadow: -2px 7px 3px 0px rgba(0, 0, 0, 0.2);\n}\n\n.app-sidemenu .user-details-wrapper {\n  --ion-grid-column-padding: 0px;\n  --background: var(--ion-color-dark);\n  color: var(--ion-color-lightest);\n  padding: var(--page-margin);\n  align-items: center;\n}\n\n.app-sidemenu .user-details-wrapper + .user-details-wrapper {\n  padding-top: 0px;\n}\n\n.app-sidemenu .user-info-wrapper {\n  padding-left: var(--page-margin);\n}\n\n.app-sidemenu .user-info-wrapper .user-name {\n  margin: 0px 0px 5px;\n}\n\n.app-sidemenu .user-info-wrapper .user-handle {\n  color: var(--ion-color-light-shade);\n  margin: 0px;\n  font-size: 14px;\n  font-weight: 400;\n}\n\n.app-sidemenu .user-stats-wrapper {\n  text-align: center;\n}\n\n.app-sidemenu .user-stats-wrapper .user-stat-value {\n  margin-right: 5px;\n  font-weight: 500;\n}\n\n.app-sidemenu .user-stats-wrapper .user-stat-name {\n  color: var(--ion-color-light-shade);\n  font-size: 14px;\n}\n\n.app-sidemenu ion-list {\n  --ion-text-color: var(--ion-color-primary);\n  --ion-text-color-rgb: var(--ion-color-primary-rgb);\n  --ion-item-border-color: transparent;\n  background: transparent;\n}\n\n.app-sidemenu ion-list ion-list-header {\n  --color: rgba(var(--ion-color-primary), 0.6);\n  text-transform: uppercase;\n  box-shadow: none;\n  -webkit-padding-start: 0px;\n          padding-inline-start: 0px;\n}\n\n.app-sidemenu ion-list ion-item {\n  --border-width: 0px !important;\n  --padding-start: var(--page-margin);\n  --background-activated: var(--ion-color-dark-tint);\n  --background: transparent;\n}\n\n.app-sidemenu ion-list ion-item #item-native {\n  padding-left: 0;\n  text-indent: 16px;\n}\n\n.app-sidemenu ion-list ion-icon {\n  color: var(--ion-color-primary-shade);\n}\n\n.app-sidemenu .tooltip {\n  position: relative;\n  display: inline-block;\n  width: 100%;\n}\n\n.app-sidemenu .force-overflow .sb3:before {\n  content: \"\";\n  width: 0px;\n  height: 0px;\n  position: absolute;\n  border-left: 10px solid var(--ion-color-secondary);\n  border-right: 10px solid transparent;\n  border-top: 10px solid var(--ion-color-secondary);\n  border-bottom: 10px solid transparent;\n  right: 20%;\n  bottom: -10px;\n  z-index: 0;\n}\n\n.app-sidemenu .force-overflow .tooltip {\n  position: relative;\n  display: inline-block;\n  width: 100%;\n}\n\n.app-sidemenu .force-overflow .tooltiptext {\n  visibility: visible;\n  width: 85%;\n  margin-left: auto;\n  margin-right: auto;\n  display: block;\n  background-color: var(--ion-color-secondary);\n  color: #fff;\n  text-align: center;\n  border-radius: 6px;\n  padding: 5px 0;\n  /* Position the tooltip */\n  z-index: 1;\n  bottom: 100%;\n  /* Use half of the width (120/2 = 60), to center the tooltip */\n}\n\n.app-sidemenu .footer-list .footer-item:hover {\n  cursor: pointer !important;\n  border-left-style: solid;\n  border-left-color: var(--ion-color-theme);\n  background: var(--ion-color-dark);\n}\n\n.app-sidemenu .footer-item {\n  border-left-style: solid;\n  border-left-color: transparent;\n}\n\n.app-sidemenu .footer-item:hover {\n  cursor: pointer !important;\n  font-weight: bold;\n  border-left-style: solid;\n  border-left-color: var(--ion-color-theme);\n  --background: var(--ion-color-dark-tint) !important;\n}\n\n.app-sidemenu .footer-item:focus {\n  cursor: pointer !important;\n  border-left-style: solid;\n  border-left-color: var(--ion-color-theme);\n  --background: #00446D !important;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaWRlLW1lbnUvc3R5bGVzL3NpZGUtbWVudS5zY3NzIiwic3JjL2FwcC9zaWRlLW1lbnUvc3R5bGVzL3NpZGUtbWVudS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0UscUNBQUE7RUFDQSxrREFBQTtFQUVBLG9FQUFBO0FDRkY7O0FEU0U7RUFDRSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUdBLG1DQUFBO0FDUko7O0FEYUU7RUFFRSxtQ0FBQTtFQUNBLG1DQUFBO0FDWko7O0FEaUJJO0VBQ0Usb0NBQUE7RUFDQSxtQkFBQTtBQ2ZOOztBRGtCSTtFQUNFLG9DQUFBO0VBQ0EsbUJBQUE7RUFDQSwrQ0FBQTtBQ2hCTjs7QURvQkU7RUFDRSw4QkFBQTtFQUNBLG1DQUFBO0VBRUEsZ0NBQUE7RUFDQSwyQkFBQTtFQUNBLG1CQUFBO0FDbkJKOztBRHFCSTtFQUNFLGdCQUFBO0FDbkJOOztBRHVCRTtFQUNFLGdDQUFBO0FDckJKOztBRHVCSTtFQUNFLG1CQUFBO0FDckJOOztBRHdCSTtFQUNFLG1DQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ3RCTjs7QUQwQkU7RUFDRSxrQkFBQTtBQ3hCSjs7QUQwQkk7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0FDeEJOOztBRDJCSTtFQUNFLG1DQUFBO0VBQ0EsZUFBQTtBQ3pCTjs7QUQ4QkU7RUFJRSwwQ0FBQTtFQUNBLGtEQUFBO0VBQ0Esb0NBQUE7RUFHQSx1QkFBQTtBQ2pDSjs7QURtQ0k7RUFFRSw0Q0FBQTtFQUVBLHlCQUFBO0VBR0EsZ0JBQUE7RUFFQSwwQkFBQTtVQUFBLHlCQUFBO0FDdENOOztBRHlDSTtFQUNFLDhCQUFBO0VBRUEsbUNBQUE7RUFDQSxrREFBQTtFQUVBLHlCQUFBO0FDekNOOztBRDJDTTtFQUNFLGVBQUE7RUFDQSxpQkFBQTtBQ3pDUjs7QUQ2Q0k7RUFDRSxxQ0FBQTtBQzNDTjs7QUQrQ0U7RUFDRSxrQkFBQTtFQUNBLHFCQUFBO0VBRUEsV0FBQTtBQzlDSjs7QURrREk7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGtEQUFBO0VBQ0Esb0NBQUE7RUFDQSxpREFBQTtFQUNBLHFDQUFBO0VBQ0EsVUFBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0FDaEROOztBRG1ESTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7RUFFQSxXQUFBO0FDbEROOztBRHFESTtFQUNFLG1CQUFBO0VBQ0EsVUFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsNENBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFFQSx5QkFBQTtFQUVBLFVBQUE7RUFFQSxZQUFBO0VBRUEsOERBQUE7QUN2RE47O0FEK0RJO0VBQ0UsMEJBQUE7RUFDQSx3QkFBQTtFQUNBLHlDQUFBO0VBQ0EsaUNBQUE7QUM3RE47O0FEa0VFO0VBQ0ksd0JBQUE7RUFDQSw4QkFBQTtBQ2hFTjs7QURtRUk7RUFDRSwwQkFBQTtFQUNBLGlCQUFBO0VBQ0Esd0JBQUE7RUFDQSx5Q0FBQTtFQUNBLG1EQUFBO0FDakVOOztBRHFFSTtFQUNFLDBCQUFBO0VBQ0Esd0JBQUE7RUFDQSx5Q0FBQTtFQUNBLGdDQUFBO0FDbkVOIiwiZmlsZSI6InNyYy9hcHAvc2lkZS1tZW51L3N0eWxlcy9zaWRlLW1lbnUuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEN1c3RvbSB2YXJpYWJsZXNcbi8vIE5vdGU6ICBUaGVzZSBvbmVzIHdlcmUgYWRkZWQgYnkgdXMgYW5kIGhhdmUgbm90aGluZyB0byBkbyB3aXRoIElvbmljIENTUyBDdXN0b20gUHJvcGVydGllc1xuOmhvc3Qge1xuICAtLXBhZ2UtbWFyZ2luOiB2YXIoLS1hcHAtZmFpci1tYXJnaW4pO1xuICAtLXBhZ2UtYmFja2dyb3VuZDogdmFyKC0tYXBwLWJhY2tncm91bmQtYWx0LXNoYWRlKTtcblxuICAtLXBhZ2UtaGVhZGVycy1zaGFkb3ctY29sb3I6IHJnYmEodmFyKC0taW9uLWNvbG9yLWRhcmtlc3QtcmdiKSwgMC40KTtcbn1cblxuXG4vLyBOb3RlOiAgQWxsIHRoZSBDU1MgdmFyaWFibGVzIGRlZmluZWQgYmVsb3cgYXJlIG92ZXJyaWRlcyBvZiBJb25pYyBlbGVtZW50cyBDU1MgQ3VzdG9tIFByb3BlcnRpZXNcbi5hcHAtc2lkZW1lbnUge1xuXG4gIGlvbi10b29sYmFyIHtcbiAgICAtLXBhZGRpbmctc3RhcnQ6IDBweDtcbiAgICAtLXBhZGRpbmctZW5kOiAwcHg7XG4gICAgLS1wYWRkaW5nLXRvcDogMHB4O1xuICAgIC0tcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAvLyAtLWJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYXJrLXRpbnQpO1xuICAgIC8vIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWxpZ2h0LXRpbnQpO1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuICAgIC8vICAtLWJhY2tncm91bmQ6IHdoaXRlO1xuXG4gIH1cblxuICBpb24tY29udGVudCB7XG4gICAgLy8gLS1iYWNrZ3JvdW5kOiB2YXIoLS1wYWdlLWJhY2tncm91bmQpO1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuXG4gIH1cblxuICAuc2Nyb2xsYmFyIHtcbiAgICAuc2Nyb2xsYmFyLWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICB9XG5cbiAgICAuc2Nyb2xsYmFyLWl0ZW06aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIGJveC1zaGFkb3c6IC0ycHggN3B4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIH1cbiAgfVxuXG4gIC51c2VyLWRldGFpbHMtd3JhcHBlciB7XG4gICAgLS1pb24tZ3JpZC1jb2x1bW4tcGFkZGluZzogMHB4O1xuICAgIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWlvbi1jb2xvci1saWdodC1yZ2IpLCAwLjE1KTtcbiAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWxpZ2h0ZXN0KTtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYrLnVzZXItZGV0YWlscy13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgfVxuICB9XG5cbiAgLnVzZXItaW5mby13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcblxuICAgIC51c2VyLW5hbWUge1xuICAgICAgbWFyZ2luOiAwcHggMHB4IDVweDtcbiAgICB9XG5cbiAgICAudXNlci1oYW5kbGUge1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1saWdodC1zaGFkZSk7XG4gICAgICBtYXJnaW46IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG5cbiAgLnVzZXItc3RhdHMtd3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLnVzZXItc3RhdC12YWx1ZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgLnVzZXItc3RhdC1uYW1lIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbGlnaHQtc2hhZGUpO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIE1lbnUgbGlzdCBpdGVtc1xuICBpb24tbGlzdCB7XG4gICAgLy8gICAgLS1pb24tdGV4dC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmstc2hhZGUpO1xuICAgIC8vICAgIC0taW9uLXRleHQtY29sb3ItcmdiOiB2YXIoLS1pb24tY29sb3ItZGFyay1zaGFkZS1yZ2IpO1xuICAgIC8vICAtLWlvbi1pdGVtLWJhY2tncm91bmQ6IHZhcigtLXBhZ2UtYmFja2dyb3VuZCk7XG4gICAgLS1pb24tdGV4dC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAgIC0taW9uLXRleHQtY29sb3ItcmdiOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeS1yZ2IpO1xuICAgIC0taW9uLWl0ZW0tYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIC8vIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICBpb24tbGlzdC1oZWFkZXIge1xuXG4gICAgICAtLWNvbG9yOiByZ2JhKHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KSwgMC42KTtcblxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDBweCAtNHB4IDhweCAtMnB4IHZhcigtLXBhZ2UtaGVhZGVycy1zaGFkb3ctY29sb3IpO1xuICAgICAgLy8gYm94LXNoYWRvdzogMHB4IDRweCA1cHggLTNweCB2YXIoLS1wYWdlLWhlYWRlcnMtc2hhZG93LWNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAvLyBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tcGFnZS1tYXJnaW4pO1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgICB9XG5cbiAgICBpb24taXRlbSB7XG4gICAgICAtLWJvcmRlci13aWR0aDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAvLyAtLWJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lLXRpbnQpO1xuICAgICAgLS1wYWRkaW5nLXN0YXJ0OiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gICAgICAtLWJhY2tncm91bmQtYWN0aXZhdGVkOiB2YXIoLS1pb24tY29sb3ItZGFyay10aW50KTtcbiAgICAgIC8vIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgICAgIC0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICNpdGVtLW5hdGl2ZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW9uLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LXNoYWRlKTtcbiAgICB9XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIGJsYWNrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZvcmNlLW92ZXJmbG93IHtcbiAgICAuc2IzOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDBweDtcbiAgICAgIGhlaWdodDogMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdmFyKC0taW9uLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHJpZ2h0OiAyMCU7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG5cbiAgICAudG9vbHRpcCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIGJsYWNrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRvb2x0aXB0ZXh0IHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB3aWR0aDogODUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlvbi1jb2xvci1zZWNvbmRhcnkpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcblxuICAgICAgLyogUG9zaXRpb24gdGhlIHRvb2x0aXAgKi9cbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICAvLyB3aWR0aDogMTIwcHg7XG4gICAgICBib3R0b206IDEwMCU7XG5cbiAgICAgIC8qIFVzZSBoYWxmIG9mIHRoZSB3aWR0aCAoMTIwLzIgPSA2MCksIHRvIGNlbnRlciB0aGUgdG9vbHRpcCAqL1xuICAgIH1cbiAgfVxuXG5cbiAgLmZvb3Rlci1saXN0IHtcbiAgICAuZm9vdGVyLWl0ZW0ge31cblxuICAgIC5mb290ZXItaXRlbTpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuICAgIH1cblxuICB9XG5cbiAgLmZvb3Rlci1pdGVtIHtcbiAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICAgLmZvb3Rlci1pdGVtOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXRoZW1lKTtcbiAgICAgIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmstdGludCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAgICAgXG4gICAgLmZvb3Rlci1pdGVtOmZvY3VzIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gICAgICAtLWJhY2tncm91bmQ6ICMwMDQ0NkQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gIH1cblxuIiwiOmhvc3Qge1xuICAtLXBhZ2UtbWFyZ2luOiB2YXIoLS1hcHAtZmFpci1tYXJnaW4pO1xuICAtLXBhZ2UtYmFja2dyb3VuZDogdmFyKC0tYXBwLWJhY2tncm91bmQtYWx0LXNoYWRlKTtcbiAgLS1wYWdlLWhlYWRlcnMtc2hhZG93LWNvbG9yOiByZ2JhKHZhcigtLWlvbi1jb2xvci1kYXJrZXN0LXJnYiksIDAuNCk7XG59XG5cbi5hcHAtc2lkZW1lbnUgaW9uLXRvb2xiYXIge1xuICAtLXBhZGRpbmctc3RhcnQ6IDBweDtcbiAgLS1wYWRkaW5nLWVuZDogMHB4O1xuICAtLXBhZGRpbmctdG9wOiAwcHg7XG4gIC0tcGFkZGluZy1ib3R0b206IDBweDtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG59XG4uYXBwLXNpZGVtZW51IGlvbi1jb250ZW50IHtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xufVxuLmFwcC1zaWRlbWVudSAuc2Nyb2xsYmFyIC5zY3JvbGxiYXItaXRlbSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbn1cbi5hcHAtc2lkZW1lbnUgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGJveC1zaGFkb3c6IC0ycHggN3B4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLmFwcC1zaWRlbWVudSAudXNlci1kZXRhaWxzLXdyYXBwZXIge1xuICAtLWlvbi1ncmlkLWNvbHVtbi1wYWRkaW5nOiAwcHg7XG4gIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLWxpZ2h0ZXN0KTtcbiAgcGFkZGluZzogdmFyKC0tcGFnZS1tYXJnaW4pO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmFwcC1zaWRlbWVudSAudXNlci1kZXRhaWxzLXdyYXBwZXIgKyAudXNlci1kZXRhaWxzLXdyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMHB4O1xufVxuLmFwcC1zaWRlbWVudSAudXNlci1pbmZvLXdyYXBwZXIge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbn1cbi5hcHAtc2lkZW1lbnUgLnVzZXItaW5mby13cmFwcGVyIC51c2VyLW5hbWUge1xuICBtYXJnaW46IDBweCAwcHggNXB4O1xufVxuLmFwcC1zaWRlbWVudSAudXNlci1pbmZvLXdyYXBwZXIgLnVzZXItaGFuZGxlIHtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1saWdodC1zaGFkZSk7XG4gIG1hcmdpbjogMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uYXBwLXNpZGVtZW51IC51c2VyLXN0YXRzLXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYXBwLXNpZGVtZW51IC51c2VyLXN0YXRzLXdyYXBwZXIgLnVzZXItc3RhdC12YWx1ZSB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmFwcC1zaWRlbWVudSAudXNlci1zdGF0cy13cmFwcGVyIC51c2VyLXN0YXQtbmFtZSB7XG4gIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbGlnaHQtc2hhZGUpO1xuICBmb250LXNpemU6IDE0cHg7XG59XG4uYXBwLXNpZGVtZW51IGlvbi1saXN0IHtcbiAgLS1pb24tdGV4dC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAtLWlvbi10ZXh0LWNvbG9yLXJnYjogdmFyKC0taW9uLWNvbG9yLXByaW1hcnktcmdiKTtcbiAgLS1pb24taXRlbS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5hcHAtc2lkZW1lbnUgaW9uLWxpc3QgaW9uLWxpc3QtaGVhZGVyIHtcbiAgLS1jb2xvcjogcmdiYSh2YXIoLS1pb24tY29sb3ItcHJpbWFyeSksIDAuNik7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwcHg7XG59XG4uYXBwLXNpZGVtZW51IGlvbi1saXN0IGlvbi1pdGVtIHtcbiAgLS1ib3JkZXItd2lkdGg6IDBweCAhaW1wb3J0YW50O1xuICAtLXBhZGRpbmctc3RhcnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgLS1iYWNrZ3JvdW5kLWFjdGl2YXRlZDogdmFyKC0taW9uLWNvbG9yLWRhcmstdGludCk7XG4gIC0tYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4uYXBwLXNpZGVtZW51IGlvbi1saXN0IGlvbi1pdGVtICNpdGVtLW5hdGl2ZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1pbmRlbnQ6IDE2cHg7XG59XG4uYXBwLXNpZGVtZW51IGlvbi1saXN0IGlvbi1pY29uIHtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LXNoYWRlKTtcbn1cbi5hcHAtc2lkZW1lbnUgLnRvb2x0aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG4uYXBwLXNpZGVtZW51IC5mb3JjZS1vdmVyZmxvdyAuc2IzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAwcHg7XG4gIGhlaWdodDogMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci1zZWNvbmRhcnkpO1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdmFyKC0taW9uLWNvbG9yLXNlY29uZGFyeSk7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAyMCU7XG4gIGJvdHRvbTogLTEwcHg7XG4gIHotaW5kZXg6IDA7XG59XG4uYXBwLXNpZGVtZW51IC5mb3JjZS1vdmVyZmxvdyAudG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5hcHAtc2lkZW1lbnUgLmZvcmNlLW92ZXJmbG93IC50b29sdGlwdGV4dCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHdpZHRoOiA4NSU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tY29sb3Itc2Vjb25kYXJ5KTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBwYWRkaW5nOiA1cHggMDtcbiAgLyogUG9zaXRpb24gdGhlIHRvb2x0aXAgKi9cbiAgei1pbmRleDogMTtcbiAgYm90dG9tOiAxMDAlO1xuICAvKiBVc2UgaGFsZiBvZiB0aGUgd2lkdGggKDEyMC8yID0gNjApLCB0byBjZW50ZXIgdGhlIHRvb2x0aXAgKi9cbn1cbi5hcHAtc2lkZW1lbnUgLmZvb3Rlci1saXN0IC5mb290ZXItaXRlbTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItdGhlbWUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG59XG4uYXBwLXNpZGVtZW51IC5mb290ZXItaXRlbSB7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmFwcC1zaWRlbWVudSAuZm9vdGVyLWl0ZW06aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIC0tYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWRhcmstdGludCkgIWltcG9ydGFudDtcbn1cbi5hcHAtc2lkZW1lbnUgLmZvb3Rlci1pdGVtOmZvY3VzIHtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG4gIC0tYmFja2dyb3VuZDogIzAwNDQ2RCAhaW1wb3J0YW50O1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/side-menu/styles/side-menu.shell.scss":
  /*!*******************************************************!*\
    !*** ./src/app/side-menu/styles/side-menu.shell.scss ***!
    \*******************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "app-image-shell.user-avatar {\n  --image-shell-loading-background: rgba(var(--ion-color-light-rgb), 0.15);\n  --image-shell-border-radius: 50%;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC9zaWRlLW1lbnUvc3R5bGVzL3NpZGUtbWVudS5zaGVsbC5zY3NzIiwic3JjL2FwcC9zaWRlLW1lbnUvc3R5bGVzL3NpZGUtbWVudS5zaGVsbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usd0VBQUE7RUFDQSxnQ0FBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvc2lkZS1tZW51L3N0eWxlcy9zaWRlLW1lbnUuc2hlbGwuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbImFwcC1pbWFnZS1zaGVsbC51c2VyLWF2YXRhciB7XG4gIC0taW1hZ2Utc2hlbGwtbG9hZGluZy1iYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWlvbi1jb2xvci1saWdodC1yZ2IpLCAwLjE1KTtcbiAgLS1pbWFnZS1zaGVsbC1ib3JkZXItcmFkaXVzOiA1MCU7XG59XG4iLCJhcHAtaW1hZ2Utc2hlbGwudXNlci1hdmF0YXIge1xuICAtLWltYWdlLXNoZWxsLWxvYWRpbmctYmFja2dyb3VuZDogcmdiYSh2YXIoLS1pb24tY29sb3ItbGlnaHQtcmdiKSwgMC4xNSk7XG4gIC0taW1hZ2Utc2hlbGwtYm9yZGVyLXJhZGl1czogNTAlO1xufSJdfQ== */"
  
  /***/ }),
  
  /***/ "./src/app/user/friends/styles/user-friends.md.scss":
  /*!**********************************************************!*\
    !*** ./src/app/user/friends/styles/user-friends.md.scss ***!
    \**********************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host-context(.plt-mobile.md) .user-details-section .user-actions-wrapper {\n  max-width: 12ex;\n  max-width: 12ch;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5tZC5zY3NzIiwic3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5tZC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVJO0VBQ0UsZUFBQTtFQUNBLGVBQUE7QUNETiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvZnJpZW5kcy9zdHlsZXMvdXNlci1mcmllbmRzLm1kLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdC1jb250ZXh0KC5wbHQtbW9iaWxlLm1kKSB7XG4gIC51c2VyLWRldGFpbHMtc2VjdGlvbiB7XG4gICAgLnVzZXItYWN0aW9ucy13cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogMTJleDtcbiAgICAgIG1heC13aWR0aDogMTJjaDtcbiAgICB9XG4gIH1cbn1cbiIsIjpob3N0LWNvbnRleHQoLnBsdC1tb2JpbGUubWQpIC51c2VyLWRldGFpbHMtc2VjdGlvbiAudXNlci1hY3Rpb25zLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEyZXg7XG4gIG1heC13aWR0aDogMTJjaDtcbn0iXX0= */"
  
  /***/ }),
  
  /***/ "./src/app/user/friends/styles/user-friends.page.scss":
  /*!************************************************************!*\
    !*** ./src/app/user/friends/styles/user-friends.page.scss ***!
    \************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = ":host {\n  --page-margin: var(--app-narrow-margin);\n  --page-border-radius: var(--app-fair-radius);\n  --page-segment-background: var(--app-background);\n  --page-segment-indicator-height: 2px;\n}\n\n.user-friends-segment {\n  position: -webkit-sticky;\n  position: sticky;\n  top: 0;\n  z-index: 8;\n  background-color: var(--page-segment-background);\n}\n\n.user-friends-segment ion-segment-button {\n  --padding-end: var(--page-margin);\n  --padding-start: var(--page-margin);\n  --background: var(--page-segment-background);\n  --color: rgba(var(--ion-color-dark-rgb), 0.4);\n  --color-checked: var(--ion-color-dark);\n  --indicator-color-checked: var(--ion-color-dark);\n  text-transform: capitalize;\n  min-height: calc((var(--page-margin) * 3) - var(--page-segment-indicator-height));\n}\n\n.user-friends-segment ion-segment-button ion-label {\n  margin-top: calc(var(--page-margin) / 2);\n  margin-bottom: calc(var(--page-margin) / 4);\n}\n\nion-searchbar.friends-searchbar {\n  padding: var(--page-margin);\n}\n\n.friends-list {\n  padding: 0px var(--page-margin);\n  margin-bottom: calc(var(--page-margin) * 3);\n}\n\n.empty-list-message {\n  margin: calc(var(--page-margin) * 3);\n  color: rgba(var(--ion-color-dark-rgb), 0.4);\n  text-align: center;\n}\n\nion-item.friend-item {\n  --inner-padding-start: 0px;\n  --inner-padding-end: 0px;\n  --padding-start: 0px;\n  --padding-end: 0px;\n  --padding-bottom: var(--page-margin);\n  --inner-padding-bottom: var(--page-margin);\n}\n\nion-item.friend-item:last-child {\n  --border-style: none;\n  --padding-bottom: 0px;\n  --inner-padding-bottom: 0px;\n}\n\nion-item.friend-item .user-details-section {\n  --ion-grid-column-padding: 0px;\n  width: 100%;\n  align-items: center;\n}\n\nion-item.friend-item .user-details-section .user-data-wrapper {\n  padding-left: var(--page-margin);\n  padding-right: calc(var(--page-margin) / 2);\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n}\n\nion-item.friend-item .user-details-section .user-data-wrapper .user-info:not(:last-child) {\n  margin-bottom: calc(var(--page-margin) / 2);\n}\n\nion-item.friend-item .user-details-section .user-data-wrapper .user-info .user-name {\n  margin: 0px;\n  margin-bottom: 4px;\n  font-size: 16px;\n}\n\nion-item.friend-item .user-details-section .user-data-wrapper .user-info .user-job {\n  margin: 0px;\n  color: rgba(var(--ion-color-dark-rgb), 0.4);\n  font-size: 14px;\n}\n\nion-item.friend-item .user-details-section .user-actions-wrapper {\n  font-size: 14px;\n  max-width: 10ex;\n  max-width: 10ch;\n}\n\nion-item.friend-item .user-details-section .user-actions-wrapper .user-action {\n  margin: 0px;\n}\n\n.logo_ {\n  width: 64px;\n  height: 64px;\n  margin-left: auto;\n  margin-right: auto;\n  display: block;\n}\n\n.sc-ion-card-md-s img {\n  width: -webkit-fit-content !important;\n  width: -moz-fit-content !important;\n  width: fit-content !important;\n}\n\n.icon {\n  width: 100%;\n  height: -webkit-fill-available;\n}\n\n.update-user-content {\n  --background: var(--page-background);\n}\n\n.update-user-content .select-user-image-row {\n  --ion-grid-column-padding: 0px;\n  padding: var(--page-margin);\n  background-color: var(--page-background-shade);\n}\n\n.update-user-content .select-user-image-row .user-image-col {\n  margin: 0px auto;\n  position: relative;\n}\n\n.update-user-content .select-user-image-row .user-image-col .user-image {\n  border-radius: 50%;\n  border: solid 3px var(--ion-color-lightest);\n}\n\n.update-user-content .select-user-image-row .change-image-btn {\n  --border-radius: 50%;\n  --padding-start: 0px;\n  --padding-end: 0px;\n  position: absolute;\n  right: 0px;\n  bottom: var(--page-margin);\n  z-index: 3;\n  width: 4ch;\n  height: 4ch;\n  margin: 0px;\n}\n\n.update-user-content .select-user-image-row .change-image-btn .btn-icon {\n  font-size: 26px;\n}\n\n.update-user-content .fields-section {\n  padding: var(--page-margin) 0px;\n  border-bottom: calc(var(--page-margin) * 2) solid var(--page-background-shade);\n}\n\n.update-user-content .fields-section .section-header {\n  padding: 0px var(--page-margin);\n  margin-top: 0px;\n  margin-bottom: var(--page-margin);\n}\n\n.update-user-content .user-details-fields .inputs-list {\n  padding: 0px var(--page-margin);\n}\n\n.update-user-content .user-details-fields .input-item {\n  --padding-start: 0px;\n  --padding-end: 0px;\n  --inner-padding-start: 0px;\n  --inner-padding-end: 0px;\n}\n\n.update-user-content .user-experience-fields .checkbox-tags {\n  padding: 0px calc(var(--page-margin) - var(--page-tags-gutter));\n}\n\n.update-user-content .user-experience-fields .checkbox-tags .checkbox-tag {\n  padding: 0px var(--page-tags-gutter);\n  margin: var(--page-tags-gutter) 0px;\n}\n\n.update-user-content .user-experience-fields .checkbox-tags.rounded-checkbox-tags {\n  background-color: var(--ion-color-lightest);\n}\n\n.update-user-content .user-experience-fields .checkbox-tags.rounded-checkbox-tags .checkbox-tag {\n  --border-width: 2px;\n  --border-style: solid;\n  --border-color: var(--ion-color-medium-shade);\n  --checkbox-tag-color: var(--ion-color-medium-shade);\n  --checkbox-tag-background: var(--ion-color-lightest);\n  --checkbox-tag-active-color: var(--ion-color-lightest);\n  --checkbox-tag-active-background: var(--ion-color-darkest);\n}\n\n.update-user-content .user-experience-fields .checkbox-tags.rounded-checkbox-tags .checkbox-tag.item-checkbox-checked {\n  --border-color: var(--ion-color-darkest);\n}\n\n.update-user-content .user-languages-fields {\n  padding-bottom: 0px;\n}\n\n.update-user-content .user-languages-fields .range-item-row {\n  --ion-grid-column-padding: 0px;\n  padding-top: var(--page-margin);\n  -webkit-padding-start: var(--page-margin);\n          padding-inline-start: var(--page-margin);\n  -webkit-padding-end: var(--page-margin);\n          padding-inline-end: var(--page-margin);\n  box-shadow: inset 0 6px 3px -8px var(--ion-color-darkest);\n}\n\n.update-user-content .user-languages-fields .range-item-row .range-header {\n  display: flex;\n  justify-content: space-between;\n  padding-bottom: calc(var(--page-margin) / 2);\n}\n\n.update-user-content .user-languages-fields .range-item-row .range-header .range-value {\n  font-size: 12px;\n  font-weight: 600;\n  letter-spacing: 0.2px;\n  color: var(--ion-color-medium-shade);\n}\n\n.update-user-content .user-languages-fields .range-item-row .range-header .range-label {\n  font-size: 14px;\n  font-weight: 500;\n  letter-spacing: 0.2px;\n  color: var(--ion-color-medium-shade);\n}\n\n.update-user-content .user-languages-fields .range-item-row .range-control {\n  --ion-text-color: var(--ion-color-medium-shade);\n  padding-top: 0px;\n  padding-bottom: 0px;\n}\n\n.form-actions-wrapper {\n  --ion-grid-column-padding: calc(var(--page-margin) / 2);\n  padding: calc(var(--page-margin) / 2);\n}\n\n.form-actions-wrapper .submit-btn {\n  margin: 0px;\n}\n\n.form-actions-wrapper .delete-btn {\n  margin: 0px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5wYWdlLnNjc3MiLCJzcmMvYXBwL3VzZXIvZnJpZW5kcy9zdHlsZXMvdXNlci1mcmllbmRzLnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLHVDQUFBO0VBRUEsNENBQUE7RUFDQSxnREFBQTtFQUNBLG9DQUFBO0FDRkY7O0FETUE7RUFDRSx3QkFBQTtFQUFBLGdCQUFBO0VBQ0EsTUFBQTtFQUNBLFVBQUE7RUFDQSxnREFBQTtBQ0hGOztBREtFO0VBQ0UsaUNBQUE7RUFDQSxtQ0FBQTtFQUNBLDRDQUFBO0VBQ0EsNkNBQUE7RUFDQSxzQ0FBQTtFQUNBLGdEQUFBO0VBRUEsMEJBQUE7RUFDQSxpRkFBQTtBQ0pKOztBRE1JO0VBQ0Usd0NBQUE7RUFDQSwyQ0FBQTtBQ0pOOztBRFNBO0VBQ0UsMkJBQUE7QUNORjs7QURTQTtFQUNFLCtCQUFBO0VBQ0EsMkNBQUE7QUNORjs7QURTQTtFQUNFLG9DQUFBO0VBQ0EsMkNBQUE7RUFDQSxrQkFBQTtBQ05GOztBRFNBO0VBQ0UsMEJBQUE7RUFDQSx3QkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQ0FBQTtFQUNBLDBDQUFBO0FDTkY7O0FEUUU7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsMkJBQUE7QUNOSjs7QURTRTtFQUNFLDhCQUFBO0VBRUEsV0FBQTtFQUNBLG1CQUFBO0FDUko7O0FEVUk7RUFDRSxnQ0FBQTtFQUNBLDJDQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7QUNSTjs7QURXUTtFQUNFLDJDQUFBO0FDVFY7O0FEWVE7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0FDVlY7O0FEYVE7RUFDRSxXQUFBO0VBQ0EsMkNBQUE7RUFDQSxlQUFBO0FDWFY7O0FEZ0JJO0VBQ0UsZUFBQTtFQUtBLGVBQUE7RUFDQSxlQUFBO0FDbEJOOztBRG9CTTtFQUNFLFdBQUE7QUNsQlI7O0FEbUNBO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtBQ2hDSjs7QURtQ0E7RUFDSSxxQ0FBQTtFQUFBLGtDQUFBO0VBQUEsNkJBQUE7QUNoQ0o7O0FEbUNBO0VBQ0ksV0FBQTtFQUNBLDhCQUFBO0FDaENKOztBRG9DQTtFQUNFLG9DQUFBO0FDakNGOztBRG1DRTtFQUNFLDhCQUFBO0VBRUEsMkJBQUE7RUFDQSw4Q0FBQTtBQ2xDSjs7QURvQ0k7RUFDRSxnQkFBQTtFQUNBLGtCQUFBO0FDbENOOztBRG9DTTtFQUNFLGtCQUFBO0VBQ0EsMkNBQUE7QUNsQ1I7O0FEc0NJO0VBQ0Usb0JBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBRUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsMEJBQUE7RUFDQSxVQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0FDckNOOztBRHVDTTtFQUNFLGVBQUE7QUNyQ1I7O0FEMENFO0VBQ0UsK0JBQUE7RUFDQSw4RUFBQTtBQ3hDSjs7QUQwQ0k7RUFDRSwrQkFBQTtFQUNBLGVBQUE7RUFDQSxpQ0FBQTtBQ3hDTjs7QUQ2Q0k7RUFDRSwrQkFBQTtBQzNDTjs7QUQ4Q0k7RUFDRSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtBQzVDTjs7QURpREk7RUFDRSwrREFBQTtBQy9DTjs7QURtRE07RUFDRSxvQ0FBQTtFQUNBLG1DQUFBO0FDakRSOztBRHFETTtFQUNFLDJDQUFBO0FDbkRSOztBRHFEUTtFQUNFLG1CQUFBO0VBQ0EscUJBQUE7RUFDQSw2Q0FBQTtFQUNBLG1EQUFBO0VBQ0Esb0RBQUE7RUFDQSxzREFBQTtFQUNBLDBEQUFBO0FDbkRWOztBRHFEVTtFQUNFLHdDQUFBO0FDbkRaOztBRDBERTtFQUNFLG1CQUFBO0FDeERKOztBRDBESTtFQUNFLDhCQUFBO0VBRUEsK0JBQUE7RUFDQSx5Q0FBQTtVQUFBLHdDQUFBO0VBQ0EsdUNBQUE7VUFBQSxzQ0FBQTtFQUVBLHlEQUFBO0FDMUROOztBRDRETTtFQUNFLGFBQUE7RUFDQSw4QkFBQTtFQUNBLDRDQUFBO0FDMURSOztBRDREUTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0Esb0NBQUE7QUMxRFY7O0FENkRRO0VBQ0UsZUFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxvQ0FBQTtBQzNEVjs7QUQrRE07RUFFRSwrQ0FBQTtFQUVBLGdCQUFBO0VBQ0EsbUJBQUE7QUMvRFI7O0FEcUVBO0VBQ0UsdURBQUE7RUFFQSxxQ0FBQTtBQ25FRjs7QURxRUU7RUFDRSxXQUFBO0FDbkVKOztBRHNFRTtFQUNFLFdBQUE7QUNwRUoiLCJmaWxlIjoic3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5wYWdlLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDdXN0b20gdmFyaWFibGVzXG4vLyBOb3RlOiAgVGhlc2Ugb25lcyB3ZXJlIGFkZGVkIGJ5IHVzIGFuZCBoYXZlIG5vdGhpbmcgdG8gZG8gd2l0aCBJb25pYyBDU1MgQ3VzdG9tIFByb3BlcnRpZXNcbjpob3N0IHtcbiAgLS1wYWdlLW1hcmdpbjogdmFyKC0tYXBwLW5hcnJvdy1tYXJnaW4pO1xuXG4gIC0tcGFnZS1ib3JkZXItcmFkaXVzOiB2YXIoLS1hcHAtZmFpci1yYWRpdXMpO1xuICAtLXBhZ2Utc2VnbWVudC1iYWNrZ3JvdW5kOiB2YXIoLS1hcHAtYmFja2dyb3VuZCk7XG4gIC0tcGFnZS1zZWdtZW50LWluZGljYXRvci1oZWlnaHQ6IDJweDtcbn1cblxuLy8gTm90ZTogIEFsbCB0aGUgQ1NTIHZhcmlhYmxlcyBkZWZpbmVkIGJlbG93IGFyZSBvdmVycmlkZXMgb2YgSW9uaWMgZWxlbWVudHMgQ1NTIEN1c3RvbSBQcm9wZXJ0aWVzXG4udXNlci1mcmllbmRzLXNlZ21lbnQge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhZ2Utc2VnbWVudC1iYWNrZ3JvdW5kKTtcblxuICBpb24tc2VnbWVudC1idXR0b24ge1xuICAgIC0tcGFkZGluZy1lbmQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICAtLXBhZGRpbmctc3RhcnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICAtLWJhY2tncm91bmQ6IHZhcigtLXBhZ2Utc2VnbWVudC1iYWNrZ3JvdW5kKTtcbiAgICAtLWNvbG9yOiByZ2JhKHZhcigtLWlvbi1jb2xvci1kYXJrLXJnYiksIDAuNCk7XG4gICAgLS1jb2xvci1jaGVja2VkOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG4gICAgLS1pbmRpY2F0b3ItY29sb3ItY2hlY2tlZDogdmFyKC0taW9uLWNvbG9yLWRhcmspO1xuXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbWluLWhlaWdodDogY2FsYygodmFyKC0tcGFnZS1tYXJnaW4pICogMykgLSB2YXIoLS1wYWdlLXNlZ21lbnQtaW5kaWNhdG9yLWhlaWdodCkpO1xuXG4gICAgaW9uLWxhYmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pIC8gMik7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDQpO1xuICAgIH1cbiAgfVxufVxuXG5pb24tc2VhcmNoYmFyLmZyaWVuZHMtc2VhcmNoYmFyIHtcbiAgcGFkZGluZzogdmFyKC0tcGFnZS1tYXJnaW4pO1xufVxuXG4uZnJpZW5kcy1saXN0IHtcbiAgcGFkZGluZzogMHB4IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgKiAzKTtcbn1cblxuLmVtcHR5LWxpc3QtbWVzc2FnZSB7XG4gIG1hcmdpbjogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgKiAzKTtcbiAgY29sb3I6IHJnYmEodmFyKC0taW9uLWNvbG9yLWRhcmstcmdiKSwgMC40KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5pb24taXRlbS5mcmllbmQtaXRlbSB7XG4gIC0taW5uZXItcGFkZGluZy1zdGFydDogMHB4O1xuICAtLWlubmVyLXBhZGRpbmctZW5kOiAwcHg7XG4gIC0tcGFkZGluZy1zdGFydDogMHB4O1xuICAtLXBhZGRpbmctZW5kOiAwcHg7XG4gIC0tcGFkZGluZy1ib3R0b206IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgLS1pbm5lci1wYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFnZS1tYXJnaW4pO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLS1ib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgLS1wYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIC0taW5uZXItcGFkZGluZy1ib3R0b206IDBweDtcbiAgfVxuXG4gIC51c2VyLWRldGFpbHMtc2VjdGlvbiB7XG4gICAgLS1pb24tZ3JpZC1jb2x1bW4tcGFkZGluZzogMHB4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC51c2VyLWRhdGEtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pIC8gMik7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAudXNlci1pbmZvIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVzZXItbmFtZSB7XG4gICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC51c2VyLWpvYiB7XG4gICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgY29sb3I6IHJnYmEodmFyKC0taW9uLWNvbG9yLWRhcmstcmdiKSwgMC40KTtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudXNlci1hY3Rpb25zLXdyYXBwZXIge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAvLyBNYWtlIHN1cmUgd2UgYWx3YXlzIGhhdmUgc3BhY2UgZm9yIDEwIGNoYXJhY3RlcnNcbiAgICAgIC8vIEFzIGNoICh3aWR0aCBvZiB0aGUgY2hhcmFjdGVyICcwJykgdW5pdCBpcyBub3QgMTAwJSBzdXBwb3J0ZWQsIHdlIHdpbGwgdXNlIGV4IChoZWlnaHQgb2YgdGhlICd4JyBjaGFyYWN0ZXIpIGFzIGEgZmFsbGJhY2tcbiAgICAgIC8vIFNlZTogaHR0cHM6Ly93d3cucXVpcmtzbW9kZS5vcmcvY3NzL3VuaXRzLXZhbHVlcy9cbiAgICAgIG1heC13aWR0aDogMTBleDsgLy8gVGhlICd4JyBjaGFyYWN0ZXIgaXMgc2VtaS1zcXVhcmUgY2hhclxuICAgICAgbWF4LXdpZHRoOiAxMGNoOyAvLyBjaCBpcyB0aGUgb25seSBmb250IHVuaXQgYmFzZWQgb24gdGhlIHdpZHRoIG9mIGNoYXJhY3RlcnNcblxuICAgICAgLnVzZXItYWN0aW9uIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGlvbiBjYXJkIGZvciB1cGRhdGUgcHJvZmlsZVxuLy8gQGltcG9ydCBcIi4uLy4uLy4uLy4uLy4uL3RoZW1lL21peGlucy9pbnB1dHMvY2hlY2tib3gtdGFnXCI7XG5cbi8vIDpob3N0IHtcbi8vICAgLS1wYWdlLW1hcmdpbjogdmFyKC0tYXBwLWZhaXItbWFyZ2luKTtcbi8vICAgLS1wYWdlLWJhY2tncm91bmQ6IHZhcigtLWFwcC1iYWNrZ3JvdW5kKTtcblxuLy8gICAtLXBhZ2UtYmFja2dyb3VuZC1zaGFkZTogdmFyKC0tYXBwLWJhY2tncm91bmQtc2hhZGUpO1xuLy8gICAtLXBhZ2UtdGFncy1ndXR0ZXI6IDVweDtcbi8vIH1cblxuLmxvZ29fIHtcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2MtaW9uLWNhcmQtbWQtcyBpbWcge1xuICAgIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xufVxuXG4uaWNvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuIC8vICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci10aGVtZSk7XG59XG5cbi51cGRhdGUtdXNlci1jb250ZW50IHtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1wYWdlLWJhY2tncm91bmQpO1xuXG4gIC5zZWxlY3QtdXNlci1pbWFnZS1yb3cge1xuICAgIC0taW9uLWdyaWQtY29sdW1uLXBhZGRpbmc6IDBweDtcblxuICAgIHBhZGRpbmc6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYWdlLWJhY2tncm91bmQtc2hhZGUpO1xuXG4gICAgLnVzZXItaW1hZ2UtY29sIHtcbiAgICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC51c2VyLWltYWdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDNweCB2YXIoLS1pb24tY29sb3ItbGlnaHRlc3QpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jaGFuZ2UtaW1hZ2UtYnRuIHtcbiAgICAgIC0tYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgLS1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gICAgICAtLXBhZGRpbmctZW5kOiAwcHg7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICBib3R0b206IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICB3aWR0aDogNGNoO1xuICAgICAgaGVpZ2h0OiA0Y2g7XG4gICAgICBtYXJnaW46IDBweDtcblxuICAgICAgLmJ0bi1pY29uIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5maWVsZHMtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogdmFyKC0tcGFnZS1tYXJnaW4pIDBweDtcbiAgICBib3JkZXItYm90dG9tOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAqIDIpIHNvbGlkIHZhcigtLXBhZ2UtYmFja2dyb3VuZC1zaGFkZSk7XG5cbiAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMHB4IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgICB9XG4gIH1cblxuICAudXNlci1kZXRhaWxzLWZpZWxkcyB7XG4gICAgLmlucHV0cy1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDBweCB2YXIoLS1wYWdlLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmlucHV0LWl0ZW0ge1xuICAgICAgLS1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gICAgICAtLXBhZGRpbmctZW5kOiAwcHg7XG4gICAgICAtLWlubmVyLXBhZGRpbmctc3RhcnQ6IDBweDtcbiAgICAgIC0taW5uZXItcGFkZGluZy1lbmQ6IDBweDtcbiAgICB9XG4gIH1cblxuICAudXNlci1leHBlcmllbmNlLWZpZWxkcyB7XG4gICAgLmNoZWNrYm94LXRhZ3Mge1xuICAgICAgcGFkZGluZzogMHB4IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pIC0gdmFyKC0tcGFnZS10YWdzLWd1dHRlcikpO1xuXG4gICAgICAvLyBAaW5jbHVkZSBjaGVja2JveC10YWcoKTtcblxuICAgICAgLmNoZWNrYm94LXRhZyB7XG4gICAgICAgIHBhZGRpbmc6IDBweCB2YXIoLS1wYWdlLXRhZ3MtZ3V0dGVyKTtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1wYWdlLXRhZ3MtZ3V0dGVyKSAwcHg7XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCBhIGRlZXBlciBzZWxlY3RvciB0byBvdmVycmlkZSBkZWZhdWx0IGNvbG9yc1xuICAgICAgJi5yb3VuZGVkLWNoZWNrYm94LXRhZ3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbGlnaHRlc3QpO1xuXG4gICAgICAgIC5jaGVja2JveC10YWcge1xuICAgICAgICAgIC0tYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgICAgLS1ib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlKTtcbiAgICAgICAgICAtLWNoZWNrYm94LXRhZy1jb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bS1zaGFkZSk7XG4gICAgICAgICAgLS1jaGVja2JveC10YWctYmFja2dyb3VuZDogdmFyKC0taW9uLWNvbG9yLWxpZ2h0ZXN0KTtcbiAgICAgICAgICAtLWNoZWNrYm94LXRhZy1hY3RpdmUtY29sb3I6IHZhcigtLWlvbi1jb2xvci1saWdodGVzdCk7XG4gICAgICAgICAgLS1jaGVja2JveC10YWctYWN0aXZlLWJhY2tncm91bmQ6IHZhcigtLWlvbi1jb2xvci1kYXJrZXN0KTtcblxuICAgICAgICAgICYuaXRlbS1jaGVja2JveC1jaGVja2VkIHtcbiAgICAgICAgICAgIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFya2VzdCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnVzZXItbGFuZ3VhZ2VzLWZpZWxkcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcblxuICAgIC5yYW5nZS1pdGVtLXJvdyB7XG4gICAgICAtLWlvbi1ncmlkLWNvbHVtbi1wYWRkaW5nOiAwcHg7XG5cbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tcGFnZS1tYXJnaW4pO1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gICAgICAvLyBib3gtc2hhZG93IGF0IHRoZSB0b3BcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgNnB4IDNweCAtOHB4ICB2YXIoLS1pb24tY29sb3ItZGFya2VzdCk7XG5cbiAgICAgIC5yYW5nZS1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDIpO1xuXG4gICAgICAgIC5yYW5nZS12YWx1ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yYW5nZS1sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucmFuZ2UtY29udHJvbCB7XG4gICAgICAgIC8vIG92ZXJyaWRlIHRoZSBwaW4gY29sb3JcbiAgICAgICAgLS1pb24tdGV4dC1jb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bS1zaGFkZSk7XG5cbiAgICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tYWN0aW9ucy13cmFwcGVyIHtcbiAgLS1pb24tZ3JpZC1jb2x1bW4tcGFkZGluZzogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyAyKTtcblxuICBwYWRkaW5nOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDIpO1xuXG4gIC5zdWJtaXQtYnRuIHtcbiAgICBtYXJnaW46IDBweDtcbiAgfVxuXG4gIC5kZWxldGUtYnRuIHtcbiAgICBtYXJnaW46IDBweDtcbiAgfVxufVxuIiwiOmhvc3Qge1xuICAtLXBhZ2UtbWFyZ2luOiB2YXIoLS1hcHAtbmFycm93LW1hcmdpbik7XG4gIC0tcGFnZS1ib3JkZXItcmFkaXVzOiB2YXIoLS1hcHAtZmFpci1yYWRpdXMpO1xuICAtLXBhZ2Utc2VnbWVudC1iYWNrZ3JvdW5kOiB2YXIoLS1hcHAtYmFja2dyb3VuZCk7XG4gIC0tcGFnZS1zZWdtZW50LWluZGljYXRvci1oZWlnaHQ6IDJweDtcbn1cblxuLnVzZXItZnJpZW5kcy1zZWdtZW50IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYWdlLXNlZ21lbnQtYmFja2dyb3VuZCk7XG59XG4udXNlci1mcmllbmRzLXNlZ21lbnQgaW9uLXNlZ21lbnQtYnV0dG9uIHtcbiAgLS1wYWRkaW5nLWVuZDogdmFyKC0tcGFnZS1tYXJnaW4pO1xuICAtLXBhZGRpbmctc3RhcnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1wYWdlLXNlZ21lbnQtYmFja2dyb3VuZCk7XG4gIC0tY29sb3I6IHJnYmEodmFyKC0taW9uLWNvbG9yLWRhcmstcmdiKSwgMC40KTtcbiAgLS1jb2xvci1jaGVja2VkOiB2YXIoLS1pb24tY29sb3ItZGFyayk7XG4gIC0taW5kaWNhdG9yLWNvbG9yLWNoZWNrZWQ6IHZhcigtLWlvbi1jb2xvci1kYXJrKTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLXBhZ2UtbWFyZ2luKSAqIDMpIC0gdmFyKC0tcGFnZS1zZWdtZW50LWluZGljYXRvci1oZWlnaHQpKTtcbn1cbi51c2VyLWZyaWVuZHMtc2VnbWVudCBpb24tc2VnbWVudC1idXR0b24gaW9uLWxhYmVsIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyA0KTtcbn1cblxuaW9uLXNlYXJjaGJhci5mcmllbmRzLXNlYXJjaGJhciB7XG4gIHBhZGRpbmc6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbn1cblxuLmZyaWVuZHMtbGlzdCB7XG4gIHBhZGRpbmc6IDBweCB2YXIoLS1wYWdlLW1hcmdpbik7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pICogMyk7XG59XG5cbi5lbXB0eS1saXN0LW1lc3NhZ2Uge1xuICBtYXJnaW46IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pICogMyk7XG4gIGNvbG9yOiByZ2JhKHZhcigtLWlvbi1jb2xvci1kYXJrLXJnYiksIDAuNCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuaW9uLWl0ZW0uZnJpZW5kLWl0ZW0ge1xuICAtLWlubmVyLXBhZGRpbmctc3RhcnQ6IDBweDtcbiAgLS1pbm5lci1wYWRkaW5nLWVuZDogMHB4O1xuICAtLXBhZGRpbmctc3RhcnQ6IDBweDtcbiAgLS1wYWRkaW5nLWVuZDogMHB4O1xuICAtLXBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gIC0taW5uZXItcGFkZGluZy1ib3R0b206IHZhcigtLXBhZ2UtbWFyZ2luKTtcbn1cbmlvbi1pdGVtLmZyaWVuZC1pdGVtOmxhc3QtY2hpbGQge1xuICAtLWJvcmRlci1zdHlsZTogbm9uZTtcbiAgLS1wYWRkaW5nLWJvdHRvbTogMHB4O1xuICAtLWlubmVyLXBhZGRpbmctYm90dG9tOiAwcHg7XG59XG5pb24taXRlbS5mcmllbmQtaXRlbSAudXNlci1kZXRhaWxzLXNlY3Rpb24ge1xuICAtLWlvbi1ncmlkLWNvbHVtbi1wYWRkaW5nOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuaW9uLWl0ZW0uZnJpZW5kLWl0ZW0gLnVzZXItZGV0YWlscy1zZWN0aW9uIC51c2VyLWRhdGEtd3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFnZS1tYXJnaW4pO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDIpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbmlvbi1pdGVtLmZyaWVuZC1pdGVtIC51c2VyLWRldGFpbHMtc2VjdGlvbiAudXNlci1kYXRhLXdyYXBwZXIgLnVzZXItaW5mbzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyAyKTtcbn1cbmlvbi1pdGVtLmZyaWVuZC1pdGVtIC51c2VyLWRldGFpbHMtc2VjdGlvbiAudXNlci1kYXRhLXdyYXBwZXIgLnVzZXItaW5mbyAudXNlci1uYW1lIHtcbiAgbWFyZ2luOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuaW9uLWl0ZW0uZnJpZW5kLWl0ZW0gLnVzZXItZGV0YWlscy1zZWN0aW9uIC51c2VyLWRhdGEtd3JhcHBlciAudXNlci1pbmZvIC51c2VyLWpvYiB7XG4gIG1hcmdpbjogMHB4O1xuICBjb2xvcjogcmdiYSh2YXIoLS1pb24tY29sb3ItZGFyay1yZ2IpLCAwLjQpO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5pb24taXRlbS5mcmllbmQtaXRlbSAudXNlci1kZXRhaWxzLXNlY3Rpb24gLnVzZXItYWN0aW9ucy13cmFwcGVyIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXgtd2lkdGg6IDEwZXg7XG4gIG1heC13aWR0aDogMTBjaDtcbn1cbmlvbi1pdGVtLmZyaWVuZC1pdGVtIC51c2VyLWRldGFpbHMtc2VjdGlvbiAudXNlci1hY3Rpb25zLXdyYXBwZXIgLnVzZXItYWN0aW9uIHtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi5sb2dvXyB7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2MtaW9uLWNhcmQtbWQtcyBpbWcge1xuICB3aWR0aDogZml0LWNvbnRlbnQgIWltcG9ydGFudDtcbn1cblxuLmljb24ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xufVxuXG4udXBkYXRlLXVzZXItY29udGVudCB7XG4gIC0tYmFja2dyb3VuZDogdmFyKC0tcGFnZS1iYWNrZ3JvdW5kKTtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC5zZWxlY3QtdXNlci1pbWFnZS1yb3cge1xuICAtLWlvbi1ncmlkLWNvbHVtbi1wYWRkaW5nOiAwcHg7XG4gIHBhZGRpbmc6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGFnZS1iYWNrZ3JvdW5kLXNoYWRlKTtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC5zZWxlY3QtdXNlci1pbWFnZS1yb3cgLnVzZXItaW1hZ2UtY29sIHtcbiAgbWFyZ2luOiAwcHggYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnNlbGVjdC11c2VyLWltYWdlLXJvdyAudXNlci1pbWFnZS1jb2wgLnVzZXItaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogc29saWQgM3B4IHZhcigtLWlvbi1jb2xvci1saWdodGVzdCk7XG59XG4udXBkYXRlLXVzZXItY29udGVudCAuc2VsZWN0LXVzZXItaW1hZ2Utcm93IC5jaGFuZ2UtaW1hZ2UtYnRuIHtcbiAgLS1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC0tcGFkZGluZy1zdGFydDogMHB4O1xuICAtLXBhZGRpbmctZW5kOiAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gIHotaW5kZXg6IDM7XG4gIHdpZHRoOiA0Y2g7XG4gIGhlaWdodDogNGNoO1xuICBtYXJnaW46IDBweDtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC5zZWxlY3QtdXNlci1pbWFnZS1yb3cgLmNoYW5nZS1pbWFnZS1idG4gLmJ0bi1pY29uIHtcbiAgZm9udC1zaXplOiAyNnB4O1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLmZpZWxkcy1zZWN0aW9uIHtcbiAgcGFkZGluZzogdmFyKC0tcGFnZS1tYXJnaW4pIDBweDtcbiAgYm9yZGVyLWJvdHRvbTogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgKiAyKSBzb2xpZCB2YXIoLS1wYWdlLWJhY2tncm91bmQtc2hhZGUpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLmZpZWxkcy1zZWN0aW9uIC5zZWN0aW9uLWhlYWRlciB7XG4gIHBhZGRpbmc6IDBweCB2YXIoLS1wYWdlLW1hcmdpbik7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFnZS1tYXJnaW4pO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItZGV0YWlscy1maWVsZHMgLmlucHV0cy1saXN0IHtcbiAgcGFkZGluZzogMHB4IHZhcigtLXBhZ2UtbWFyZ2luKTtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC51c2VyLWRldGFpbHMtZmllbGRzIC5pbnB1dC1pdGVtIHtcbiAgLS1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gIC0tcGFkZGluZy1lbmQ6IDBweDtcbiAgLS1pbm5lci1wYWRkaW5nLXN0YXJ0OiAwcHg7XG4gIC0taW5uZXItcGFkZGluZy1lbmQ6IDBweDtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC51c2VyLWV4cGVyaWVuY2UtZmllbGRzIC5jaGVja2JveC10YWdzIHtcbiAgcGFkZGluZzogMHB4IGNhbGModmFyKC0tcGFnZS1tYXJnaW4pIC0gdmFyKC0tcGFnZS10YWdzLWd1dHRlcikpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItZXhwZXJpZW5jZS1maWVsZHMgLmNoZWNrYm94LXRhZ3MgLmNoZWNrYm94LXRhZyB7XG4gIHBhZGRpbmc6IDBweCB2YXIoLS1wYWdlLXRhZ3MtZ3V0dGVyKTtcbiAgbWFyZ2luOiB2YXIoLS1wYWdlLXRhZ3MtZ3V0dGVyKSAwcHg7XG59XG4udXBkYXRlLXVzZXItY29udGVudCAudXNlci1leHBlcmllbmNlLWZpZWxkcyAuY2hlY2tib3gtdGFncy5yb3VuZGVkLWNoZWNrYm94LXRhZ3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbGlnaHRlc3QpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItZXhwZXJpZW5jZS1maWVsZHMgLmNoZWNrYm94LXRhZ3Mucm91bmRlZC1jaGVja2JveC10YWdzIC5jaGVja2JveC10YWcge1xuICAtLWJvcmRlci13aWR0aDogMnB4O1xuICAtLWJvcmRlci1zdHlsZTogc29saWQ7XG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlKTtcbiAgLS1jaGVja2JveC10YWctY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0tc2hhZGUpO1xuICAtLWNoZWNrYm94LXRhZy1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItbGlnaHRlc3QpO1xuICAtLWNoZWNrYm94LXRhZy1hY3RpdmUtY29sb3I6IHZhcigtLWlvbi1jb2xvci1saWdodGVzdCk7XG4gIC0tY2hlY2tib3gtdGFnLWFjdGl2ZS1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY29sb3ItZGFya2VzdCk7XG59XG4udXBkYXRlLXVzZXItY29udGVudCAudXNlci1leHBlcmllbmNlLWZpZWxkcyAuY2hlY2tib3gtdGFncy5yb3VuZGVkLWNoZWNrYm94LXRhZ3MgLmNoZWNrYm94LXRhZy5pdGVtLWNoZWNrYm94LWNoZWNrZWQge1xuICAtLWJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLWRhcmtlc3QpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItbGFuZ3VhZ2VzLWZpZWxkcyB7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG59XG4udXBkYXRlLXVzZXItY29udGVudCAudXNlci1sYW5ndWFnZXMtZmllbGRzIC5yYW5nZS1pdGVtLXJvdyB7XG4gIC0taW9uLWdyaWQtY29sdW1uLXBhZGRpbmc6IDBweDtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXBhZ2UtbWFyZ2luKTtcbiAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1wYWdlLW1hcmdpbik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgNnB4IDNweCAtOHB4IHZhcigtLWlvbi1jb2xvci1kYXJrZXN0KTtcbn1cbi51cGRhdGUtdXNlci1jb250ZW50IC51c2VyLWxhbmd1YWdlcy1maWVsZHMgLnJhbmdlLWl0ZW0tcm93IC5yYW5nZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXBhZ2UtbWFyZ2luKSAvIDIpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItbGFuZ3VhZ2VzLWZpZWxkcyAucmFuZ2UtaXRlbS1yb3cgLnJhbmdlLWhlYWRlciAucmFuZ2UtdmFsdWUge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0tc2hhZGUpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItbGFuZ3VhZ2VzLWZpZWxkcyAucmFuZ2UtaXRlbS1yb3cgLnJhbmdlLWhlYWRlciAucmFuZ2UtbGFiZWwge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0tc2hhZGUpO1xufVxuLnVwZGF0ZS11c2VyLWNvbnRlbnQgLnVzZXItbGFuZ3VhZ2VzLWZpZWxkcyAucmFuZ2UtaXRlbS1yb3cgLnJhbmdlLWNvbnRyb2wge1xuICAtLWlvbi10ZXh0LWNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLXNoYWRlKTtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbn1cblxuLmZvcm0tYWN0aW9ucy13cmFwcGVyIHtcbiAgLS1pb24tZ3JpZC1jb2x1bW4tcGFkZGluZzogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyAyKTtcbiAgcGFkZGluZzogY2FsYyh2YXIoLS1wYWdlLW1hcmdpbikgLyAyKTtcbn1cbi5mb3JtLWFjdGlvbnMtd3JhcHBlciAuc3VibWl0LWJ0biB7XG4gIG1hcmdpbjogMHB4O1xufVxuLmZvcm0tYWN0aW9ucy13cmFwcGVyIC5kZWxldGUtYnRuIHtcbiAgbWFyZ2luOiAwcHg7XG59Il19 */"
  
  /***/ }),
  
  /***/ "./src/app/user/friends/styles/user-friends.shell.scss":
  /*!*************************************************************!*\
    !*** ./src/app/user/friends/styles/user-friends.shell.scss ***!
    \*************************************************************/
  /*! no static exports found */
  /***/ (function(module, exports) {
  
  module.exports = "app-image-shell.user-image {\n  --image-shell-border-radius: var(--page-border-radius);\n}\n\n.user-name > app-text-shell {\n  --text-shell-line-height: 16px;\n  max-width: 50%;\n}\n\n.user-name > app-text-shell.text-loaded {\n  max-width: unset;\n}\n\n.user-job > app-text-shell {\n  --text-shell-line-height: 14px;\n  max-width: 70%;\n}\n\n.user-job > app-text-shell.text-loaded {\n  max-width: unset;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9pbWFrZXIvRGVza3RvcC9JTUFLRVIvQUFBX2ltYWtlcl9zdWJzY3JpcHRpb24vaW9uVm9pY2Uvc3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5zaGVsbC5zY3NzIiwic3JjL2FwcC91c2VyL2ZyaWVuZHMvc3R5bGVzL3VzZXItZnJpZW5kcy5zaGVsbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usc0RBQUE7QUNDRjs7QURFQTtFQUNFLDhCQUFBO0VBQ0EsY0FBQTtBQ0NGOztBRENFO0VBQ0UsZ0JBQUE7QUNDSjs7QURHQTtFQUNFLDhCQUFBO0VBQ0EsY0FBQTtBQ0FGOztBREVFO0VBQ0UsZ0JBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL3VzZXIvZnJpZW5kcy9zdHlsZXMvdXNlci1mcmllbmRzLnNoZWxsLnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJhcHAtaW1hZ2Utc2hlbGwudXNlci1pbWFnZSB7XG4gIC0taW1hZ2Utc2hlbGwtYm9yZGVyLXJhZGl1czogdmFyKC0tcGFnZS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLnVzZXItbmFtZSA+IGFwcC10ZXh0LXNoZWxsIHtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNnB4O1xuICBtYXgtd2lkdGg6IDUwJTtcblxuICAmLnRleHQtbG9hZGVkIHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICB9XG59XG5cbi51c2VyLWpvYiA+IGFwcC10ZXh0LXNoZWxsIHtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNHB4O1xuICBtYXgtd2lkdGg6IDcwJTtcblxuICAmLnRleHQtbG9hZGVkIHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICB9XG59XG4iLCJhcHAtaW1hZ2Utc2hlbGwudXNlci1pbWFnZSB7XG4gIC0taW1hZ2Utc2hlbGwtYm9yZGVyLXJhZGl1czogdmFyKC0tcGFnZS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLnVzZXItbmFtZSA+IGFwcC10ZXh0LXNoZWxsIHtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNnB4O1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cbi51c2VyLW5hbWUgPiBhcHAtdGV4dC1zaGVsbC50ZXh0LWxvYWRlZCB7XG4gIG1heC13aWR0aDogdW5zZXQ7XG59XG5cbi51c2VyLWpvYiA+IGFwcC10ZXh0LXNoZWxsIHtcbiAgLS10ZXh0LXNoZWxsLWxpbmUtaGVpZ2h0OiAxNHB4O1xuICBtYXgtd2lkdGg6IDcwJTtcbn1cbi51c2VyLWpvYiA+IGFwcC10ZXh0LXNoZWxsLnRleHQtbG9hZGVkIHtcbiAgbWF4LXdpZHRoOiB1bnNldDtcbn0iXX0= */"
  
  /***/ }),
  
  /***/ "./src/app/user/friends/user-friends.model.ts":
  /*!****************************************************!*\
    !*** ./src/app/user/friends/user-friends.model.ts ***!
    \****************************************************/
  /*! exports provided: UserFriendsModel */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserFriendsModel", function() { return UserFriendsModel; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _shell_data_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shell/data-store */ "./src/app/shell/data-store.ts");
  
  
  var UserFriendsModel = /** @class */ (function (_super) {
      tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](UserFriendsModel, _super);
      function UserFriendsModel() {
          var _this = _super.call(this) || this;
          _this.friends = [
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: true
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              }
          ];
          _this.followers = [
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: true
              }
          ];
          _this.following = [
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              },
              {
                  image: '',
                  name: '',
                  job: '',
                  followers: '',
                  followings: '',
                  following: false
              }
          ];
          return _this;
      }
      return UserFriendsModel;
  }(_shell_data_store__WEBPACK_IMPORTED_MODULE_1__["ShellModel"]));
  
  
  
  /***/ }),
  
  /***/ "./src/app/user/friends/user-friends.module.ts":
  /*!*****************************************************!*\
    !*** ./src/app/user/friends/user-friends.module.ts ***!
    \*****************************************************/
  /*! exports provided: UserFriendsPageModule */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserFriendsPageModule", function() { return UserFriendsPageModule; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @angular/common */ "./node_modules/@angular/common/fesm5/common.js");
  /* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/forms */ "./node_modules/@angular/forms/fesm5/forms.js");
  /* harmony import */ var _user_friends_page__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./user-friends.page */ "./src/app/user/friends/user-friends.page.ts");
  /* harmony import */ var _user_service__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../user.service */ "./src/app/user/user.service.ts");
  /* harmony import */ var _user_friends_resolver__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./user-friends.resolver */ "./src/app/user/friends/user-friends.resolver.ts");
  /* harmony import */ var _components_components_module__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../components/components.module */ "./src/app/components/components.module.ts");
  
  
  
  
  
  
  
  
  
  
  var routes = [
      {
          path: '',
          component: _user_friends_page__WEBPACK_IMPORTED_MODULE_6__["UserFriendsPage"],
      }
  ];
  var UserFriendsPageModule = /** @class */ (function () {
      function UserFriendsPageModule() {
      }
      UserFriendsPageModule = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_3__["NgModule"])({
              imports: [
                  _ionic_angular__WEBPACK_IMPORTED_MODULE_1__["IonicModule"],
                  _angular_common__WEBPACK_IMPORTED_MODULE_4__["CommonModule"],
                  _angular_forms__WEBPACK_IMPORTED_MODULE_5__["ReactiveFormsModule"],
                  _angular_forms__WEBPACK_IMPORTED_MODULE_5__["FormsModule"],
                  _components_components_module__WEBPACK_IMPORTED_MODULE_9__["ComponentsModule"],
                  _angular_router__WEBPACK_IMPORTED_MODULE_2__["RouterModule"].forChild(routes),
              ],
              declarations: [_user_friends_page__WEBPACK_IMPORTED_MODULE_6__["UserFriendsPage"]],
              providers: [
                  _user_friends_resolver__WEBPACK_IMPORTED_MODULE_8__["UserFriendsResolver"],
                  _user_service__WEBPACK_IMPORTED_MODULE_7__["UserService"],
              ]
          })
      ], UserFriendsPageModule);
      return UserFriendsPageModule;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/user/friends/user-friends.page.ts":
  /*!***************************************************!*\
    !*** ./src/app/user/friends/user-friends.page.ts ***!
    \***************************************************/
  /*! exports provided: UserFriendsPage */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserFriendsPage", function() { return UserFriendsPage; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/router */ "./node_modules/@angular/router/fesm5/router.js");
  /* harmony import */ var _app_firebase_firebase_integration_service__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../app/firebase/firebase-integration.service */ "./src/app/firebase/firebase-integration.service.ts");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! firebase */ "./node_modules/firebase/dist/index.cjs.js");
  /* harmony import */ var firebase__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(firebase__WEBPACK_IMPORTED_MODULE_4__);
  /* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @ionic/angular */ "./node_modules/@ionic/angular/dist/fesm5.js");
  
  
  
  
  
  
  var UserFriendsPage = /** @class */ (function () {
      function UserFriendsPage(modalCtrl, navParams, firebaseService, route) {
          this.modalCtrl = modalCtrl;
          this.navParams = navParams;
          this.firebaseService = firebaseService;
          this.route = route;
          this.segmentValue = 'friends';
          this.searchQuery = '';
          this.showFilters = false;
          this.checkUserStatus();
      }
      Object.defineProperty(UserFriendsPage.prototype, "isShell", {
          get: function () {
              return (this.data && this.data.isShell) ? true : false;
          },
          enumerable: true,
          configurable: true
      });
      UserFriendsPage.prototype.ngOnInit = function () {
          var _this = this;
          this.roleDetail = this.navParams.get('roleDetail');
          console.log(this.navParams.get('roleDetail'));
          console.log(this.navParams.get('role'));
          // this.updateUserForm = new FormGroup({
          //   name: new FormControl(this.user.name, Validators.required),
          //   lastname: new FormControl(this.user.lastname, Validators.required),
          //   email: new FormControl(this.user.email, Validators.compose([
          //     Validators.required,
          //     Validators.pattern('^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$')
          //   ])),
          //   phone: new FormControl(this.user.phone, Validators.required),
          //   birthdate: new FormControl(dayjs.unix(this.user.birthdate).format('DD/MMMM/YYYY'), Validators.required),
          //   skills: new FormArray([], CheckboxCheckedValidator.minSelectedCheckboxes(1)),
          //   spanish: new FormControl(this.user.languages.spanish),
          //   english: new FormControl(this.user.languages.english),
          //   french: new FormControl(this.user.languages.french)
          // });
          firebase__WEBPACK_IMPORTED_MODULE_4__["auth"]().onAuthStateChanged(function (user) {
              if (user) {
                  console.log(user);
                  _this.name = user.displayName;
                  _this.photoURL = user.photoURL;
                  _this.uid = user.uid;
                  _this.email = user.email;
                  _this.phoneNumber = user.phoneNumber;
                  console.log(_this.uid, _this.email, 
                  //    this.phoneNumber,
                  //    this.name,
                  _this.photoURL);
                  console.log(_this.uid);
                  //  this.onGetRole(this.uid);
              }
              else {
                  console.log("Not authenticated");
                  // No user is signed in.
              }
          });
          this.route.data.subscribe(function (resolvedRouteData) {
              var friendsDataStore = resolvedRouteData['data'];
              friendsDataStore.state.subscribe(function (state) {
                  _this.data = state;
                  _this.friendsList = _this.data.friends;
                  _this.followersList = _this.data.followers;
                  _this.followingList = _this.data.following;
              }, function (error) { });
          }, function (error) { });
      };
      UserFriendsPage.prototype.segmentChanged = function (ev) {
          this.segmentValue = ev.detail.value;
          // Check if there's any filter and apply it
          this.searchList();
      };
      UserFriendsPage.prototype.searchList = function () {
          var query = (this.searchQuery && this.searchQuery !== null) ? this.searchQuery : '';
          if (this.segmentValue === 'friends') {
              this.friendsList = this.filterList(this.data.friends, query);
          }
          else if (this.segmentValue === 'followers') {
              this.followersList = this.filterList(this.data.followers, query);
          }
          else if (this.segmentValue === 'following') {
              this.followingList = this.filterList(this.data.following, query);
          }
      };
      UserFriendsPage.prototype.filterList = function (list, query) {
          return list.filter(function (item) { return item.name.toLowerCase().includes(query.toLowerCase()); });
      };
      // onGetRole(userId: string) {
      //   this.firebaseService.getRole(userId).subscribe(res => {
      //     this.role = res[0]["role"];
      //     this.organization_name = res[0]['organization_name'];
      //     this.user_email = res[0]["user_email"];
      //     this.user_name = res[0]["user_name"];
      //     this.user_phone = res[0]["user_phone"];
      //     this.roleDetail = res[0];
      //     console.log(res, this.role, userId);
      //     if (this.role === "teacher") {
      //         this.onGetEnquiryToTeacher();
      //         this.onGetSalesQuotationToTeacher();
      //        this.save(roleDetail);
      //     } else if (this.role === "supplier") {
      //        this.onGetEnquiryToPotentialSupplier();
      //     }
      //   });
      // }
      UserFriendsPage.prototype.checkUserStatus = function () {
          var _this = this;
          firebase__WEBPACK_IMPORTED_MODULE_4__["auth"]().onAuthStateChanged(function (user) {
              console.log('header user is: ', user);
              if (user) {
                  // User is signed in.
                  var isAnonymous = user.isAnonymous;
                  _this.uid = user.uid;
                  _this.displayName = user.displayName;
                  _this.photoURL = user.photoURL;
                  _this.email = user.email;
                  console.log(user, _this.photoURL, _this.displayName);
                  var displayName_1 = user.displayName;
                  var email_1 = user.email;
                  var emailVerified = user.emailVerified;
                  var photoURL_1 = user.photoURL;
                  var uid_1 = user.uid;
                  var phoneNumber = user.phoneNumber;
                  var providerData = user.providerData;
                  user.getIdToken().then(function (accessToken) {
                      console.log("accessToken: ", accessToken);
                      // document.getElementById("sign-in-status").textContent = "Signed in";
                      // document.getElementById("sign-in").textContent = "Sign out";
                      //    this.signin = "Sign out";
                      //    this.isAnonymous = isAnonymous;
                      _this.displayName = displayName_1;
                      _this.uid = uid_1;
                      _this.email = email_1;
                      _this.photoURL = photoURL_1;
                  });
                  // this.navCtrl.navigateForward("/firebase/categories");
                  //   this.navCtrl.navigateForward("/firebase/categories");
              }
              else {
                  // User is signed out.
                  // document.getElementById("sign-in-status").textContent = "Signed out";
                  // document.getElementById("sign-in").textContent = "Sign in";
                  // this.signin = "Sign in";
                  // document.getElementById("account-details").textContent = "null";
                  //    this.navCtrl.navigateForward("/auth/signup");
              }
          }, function (error) {
              console.log(error);
          });
      };
      UserFriendsPage.prototype.onDismiss = function () {
          console.log('onDismiss');
          this.modalCtrl.dismiss();
      };
      UserFriendsPage.ctorParameters = function () { return [
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_5__["ModalController"] },
          { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_5__["NavParams"] },
          { type: _app_firebase_firebase_integration_service__WEBPACK_IMPORTED_MODULE_3__["FirebaseService"] },
          { type: _angular_router__WEBPACK_IMPORTED_MODULE_2__["ActivatedRoute"] }
      ]; };
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", String)
      ], UserFriendsPage.prototype, "role", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Input"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object)
      ], UserFriendsPage.prototype, "roleDetail", void 0);
      tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["HostBinding"])('class.is-shell'),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:type", Object),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
      ], UserFriendsPage.prototype, "isShell", null);
      UserFriendsPage = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
              selector: 'app-user-friends',
              template: __webpack_require__(/*! raw-loader!./user-friends.page.html */ "./node_modules/raw-loader/index.js!./src/app/user/friends/user-friends.page.html"),
              styles: [__webpack_require__(/*! ./styles/user-friends.page.scss */ "./src/app/user/friends/styles/user-friends.page.scss"), __webpack_require__(/*! ./styles/user-friends.shell.scss */ "./src/app/user/friends/styles/user-friends.shell.scss"), __webpack_require__(/*! ./styles/user-friends.md.scss */ "./src/app/user/friends/styles/user-friends.md.scss")]
          }),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_ionic_angular__WEBPACK_IMPORTED_MODULE_5__["ModalController"],
              _ionic_angular__WEBPACK_IMPORTED_MODULE_5__["NavParams"],
              _app_firebase_firebase_integration_service__WEBPACK_IMPORTED_MODULE_3__["FirebaseService"],
              _angular_router__WEBPACK_IMPORTED_MODULE_2__["ActivatedRoute"]])
      ], UserFriendsPage);
      return UserFriendsPage;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/user/friends/user-friends.resolver.ts":
  /*!*******************************************************!*\
    !*** ./src/app/user/friends/user-friends.resolver.ts ***!
    \*******************************************************/
  /*! exports provided: UserFriendsResolver */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserFriendsResolver", function() { return UserFriendsResolver; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _user_service__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../user.service */ "./src/app/user/user.service.ts");
  
  
  
  var UserFriendsResolver = /** @class */ (function () {
      function UserFriendsResolver(userService) {
          this.userService = userService;
      }
      UserFriendsResolver.prototype.resolve = function () {
          var dataSource = this.userService.getFriendsDataSource();
          var dataStore = this.userService.getFriendsStore(dataSource);
          return dataStore;
      };
      UserFriendsResolver.ctorParameters = function () { return [
          { type: _user_service__WEBPACK_IMPORTED_MODULE_2__["UserService"] }
      ]; };
      UserFriendsResolver = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Injectable"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_user_service__WEBPACK_IMPORTED_MODULE_2__["UserService"]])
      ], UserFriendsResolver);
      return UserFriendsResolver;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/app/user/profile/user-profile.model.ts":
  /*!****************************************************!*\
    !*** ./src/app/user/profile/user-profile.model.ts ***!
    \****************************************************/
  /*! exports provided: UserProfileModel */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserProfileModel", function() { return UserProfileModel; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _shell_data_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../shell/data-store */ "./src/app/shell/data-store.ts");
  
  
  var UserProfileModel = /** @class */ (function (_super) {
      tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](UserProfileModel, _super);
      function UserProfileModel() {
          var _this = _super.call(this) || this;
          _this.friends = [
              {
                  image: '',
                  name: ''
              },
              {
                  image: '',
                  name: ''
              },
              {
                  image: '',
                  name: ''
              },
              {
                  image: '',
                  name: ''
              }
          ];
          _this.photos = [
              '',
              '',
              '',
              ''
          ];
          return _this;
      }
      return UserProfileModel;
  }(_shell_data_store__WEBPACK_IMPORTED_MODULE_1__["ShellModel"]));
  
  
  
  /***/ }),
  
  /***/ "./src/app/user/user.service.ts":
  /*!**************************************!*\
    !*** ./src/app/user/user.service.ts ***!
    \**************************************/
  /*! exports provided: UserService */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UserService", function() { return UserService; });
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common/http */ "./node_modules/@angular/common/fesm5/http.js");
  /* harmony import */ var _profile_user_profile_model__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./profile/user-profile.model */ "./src/app/user/profile/user-profile.model.ts");
  /* harmony import */ var _friends_user_friends_model__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./friends/user-friends.model */ "./src/app/user/friends/user-friends.model.ts");
  /* harmony import */ var _shell_data_store__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../shell/data-store */ "./src/app/shell/data-store.ts");
  
  
  
  
  
  
  var UserService = /** @class */ (function () {
      function UserService(http) {
          this.http = http;
      }
      UserService.prototype.getProfileDataSource = function () {
          return this.http.get('./assets/sample-data/user/user-profile.json');
      };
      UserService.prototype.getProfileStore = function (dataSource) {
          // Use cache if available
          if (!this.profileDataStore) {
              // Initialize the model specifying that it is a shell model
              var shellModel = new _profile_user_profile_model__WEBPACK_IMPORTED_MODULE_3__["UserProfileModel"]();
              this.profileDataStore = new _shell_data_store__WEBPACK_IMPORTED_MODULE_5__["DataStore"](shellModel);
              // Trigger the loading mechanism (with shell) in the dataStore
              this.profileDataStore.load(dataSource);
          }
          return this.profileDataStore;
      };
      UserService.prototype.getFriendsDataSource = function () {
          return this.http.get('./assets/sample-data/user/user-friends.json');
      };
      UserService.prototype.getFriendsStore = function (dataSource) {
          // Use cache if available
          if (!this.friendsDataStore) {
              // Initialize the model specifying that it is a shell model
              var shellModel = new _friends_user_friends_model__WEBPACK_IMPORTED_MODULE_4__["UserFriendsModel"]();
              this.friendsDataStore = new _shell_data_store__WEBPACK_IMPORTED_MODULE_5__["DataStore"](shellModel);
              // Trigger the loading mechanism (with shell) in the dataStore
              this.friendsDataStore.load(dataSource);
          }
          return this.friendsDataStore;
      };
      UserService.ctorParameters = function () { return [
          { type: _angular_common_http__WEBPACK_IMPORTED_MODULE_2__["HttpClient"] }
      ]; };
      UserService = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
          Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Injectable"])(),
          tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [_angular_common_http__WEBPACK_IMPORTED_MODULE_2__["HttpClient"]])
      ], UserService);
      return UserService;
  }());
  
  
  
  /***/ }),
  
  /***/ "./src/assets/categories.json":
  /*!************************************!*\
    !*** ./src/assets/categories.json ***!
    \************************************/
  /*! exports provided: STEM, 學術, OLE, 生態遊, 運動, 舞蹈, 藝術, SEN, 歷奇, 技能, 學校設備, 制服團隊, default */
  /***/ (function(module) {
  
  module.exports = JSON.parse("{\"STEM\":{\"1\":\"Lego Education\",\"2\":\"mBot\",\"3\":\"mBot Ultimate\",\"4\":\"Dash and Dot\",\"5\":\"OSMO\",\"6\":\"水底機械人\",\"7\":\"四足機械人\",\"8\":\"Micro：bit\",\"9\":\"HaloCode\",\"10\":\"Raspberry Pi\",\"11\":\"Scratch\",\"12\":\"Scratch JR\",\"13\":\"Arduino\",\"14\":\"App inventor\",\"15\":\"網頁製作\",\"16\":\"Photoshop\",\"17\":\"3D print\",\"18\":\"3D筆\",\"19\":\"VR\",\"20\":\"AR\",\"21\":\"航拍\",\"22\":\"Tello編程無人機\",\"23\":\"太陽能課程\",\"24\":\"科學實驗\",\"25\":\"小小工程師\",\"26\":\"種植項目\",\"27\":\"魚菜共生\",\"28\":\"水耕菜\",\"29\":\"AI人工智能\",\"30\":\"IoT\",\"31\":\"智能家居\",\"32\":\"METAS\",\"33\":\"其他\"},\"學術\":{\"1\":\"中文\",\"2\":\"英文\",\"3\":\"數學\",\"4\":\"常識\",\"5\":\"通識\",\"6\":\"術科\",\"7\":\"DSE\",\"8\":\"呈分試\",\"9\":\"Phonics\",\"10\":\"劍橋英語\",\"11\":\"奧數\",\"12\":\"珠心算\",\"13\":\"普通話\",\"14\":\"朗誦\",\"15\":\"寫作\",\"16\":\"閱讀\",\"17\":\"聆聽\",\"18\":\"辯論\",\"19\":\"速成／倉頡\",\"20\":\"書法\",\"21\":\"廣東話班\",\"22\":\"日語\",\"23\":\"韓語\",\"24\":\"西班牙語\",\"25\":\"法語\",\"26\":\"其他\"},\"OLE\":{\"1\":\"德育及公民教育\",\"2\":\"社會服務\",\"3\":\"與工作有關的經驗\",\"4\":\"藝術發展\",\"5\":\"體育發展\"},\"生態遊\":{},\"運動\":{\"1\":\"手球\",\"2\":\"足球\",\"3\":\"籃球\",\"4\":\"排球\",\"5\":\"乒乓球\",\"6\":\"羽毛球\",\"7\":\"田徑隊\",\"8\":\"跆拳道\",\"9\":\"空手道\",\"10\":\"柔道\",\"11\":\"足毽\",\"12\":\"游泳\",\"13\":\"水上活動\",\"14\":\"壁球\",\"15\":\"欖球\",\"16\":\"射箭\",\"17\":\"武術\",\"18\":\"閃避球\",\"19\":\"跳繩\",\"20\":\"網球\",\"21\":\"體適能\",\"22\":\"劍擊\",\"23\":\"單車\",\"24\":\"保齡球\",\"25\":\"桌球\",\"26\":\"其他\"},\"舞蹈\":{\"1\":\"芭蕾舞\",\"2\":\"社交舞\",\"3\":\"街舞\",\"4\":\"K-Pop舞\",\"5\":\"現代舞\",\"6\":\"中國舞\",\"7\":\"爵士舞\",\"8\":\"Hip-Hop舞\"},\"藝術\":{\"1\":\"樂器\",\"2\":\"鋼琴\",\"3\":\"小提琴\",\"4\":\"牧童笛\",\"5\":\"合唱團\",\"6\":\"管弦樂團\",\"7\":\"敲擊樂\",\"8\":\"中國樂器\",\"9\":\"手工藝\",\"10\":\"紙黏土\",\"11\":\"素描\",\"12\":\"水彩\",\"13\":\"油畫\",\"14\":\"畫畫\",\"15\":\"中國畫\",\"16\":\"沙畫\"},\"SEN\":{\"1\":\"體適能班\",\"2\":\"認字班\",\"3\":\"藝術合畫班\",\"4\":\"音樂專注力\",\"5\":\"辨別兒童的情緒/行為障礙\",\"6\":\"兒童的情緒行為問題與輔導\",\"7\":\"兒童情商/行為評估\",\"8\":\"增強兒童情商的應用技巧\",\"9\":\"參與研究同意書範本\",\"10\":\"自閉症譜系\",\"11\":\"結構化的學習及作息環境\",\"12\":\"專注力不足\",\"13\":\"過度活躍症\",\"14\":\"發展遲緩\",\"15\":\"言語障礙\",\"16\":\"資優兒童處理\",\"17\":\"情緒記錄的內容\",\"18\":\"小朋友的身體/行為意思\",\"19\":\"注意力訓練\",\"20\":\"了解兒童常見負面情緒\",\"21\":\"家長管教方式的類型及影響\",\"22\":\"兒童發展評量表\",\"23\":\"社交衝突評量表\",\"24\":\"讀寫障礙\",\"25\":\"八大智能\",\"26\":\"介紹ADHD測驗\",\"27\":\"感統訓練\",\"28\":\"智力障礙\",\"29\":\"弱聽\",\"30\":\"視障\"},\"歷奇\":{\"1\":\"成長的天空\",\"2\":\"繩網陣\",\"3\":\"領袖訓練\",\"4\":\"團隊訓練\",\"5\":\"野外歷奇\",\"6\":\"攀石\",\"7\":\"到校歷奇\",\"8\":\"風紀訓練\"},\"技能\":{\"1\":\"沙畫\",\"2\":\"話劇\",\"3\":\"烹任\",\"4\":\"雜耍\",\"5\":\"司儀口才訓練\",\"6\":\"魔術\",\"7\":\"漫畫\",\"8\":\"飛碟\",\"9\":\"集郵\",\"10\":\"攻防箭\",\"11\":\"旋風球\",\"12\":\"泡泡足球\",\"13\":\"棋藝\",\"14\":\"智能沙箱\"},\"學校設備\":{\"1\":\"電子白板\",\"2\":\"校園傢私\",\"3\":\"校隊球衣\",\"4\":\"STEM Room\",\"5\":\"午膳供應商\",\"6\":\"校車服務\",\"7\":\"冷氣工程\",\"8\":\"校服\",\"9\":\"出版社\",\"10\":\"文具\",\"11\":\"清潔公司\"},\"制服團隊\":{\"1\":\"女童軍\",\"2\":\"基督女少年軍\",\"3\":\"香港紅十字會\",\"4\":\"童軍\",\"5\":\"香港航空青年團\",\"6\":\"香港民眾安全服務隊少年團\",\"7\":\"香港少年領袖團\",\"8\":\"香港海事青年團\",\"9\":\"香港聖約翰救傷隊見習隊\",\"10\":\"香港交通安全會\",\"11\":\"香港基督少年軍\"}}");
  
  /***/ }),
  
  /***/ "./src/assets/ionInvoiceList.json":
  /*!****************************************!*\
    !*** ./src/assets/ionInvoiceList.json ***!
    \****************************************/
  /*! exports provided: customers, items, estimates, invoice, dashboard, default */
  /***/ (function(module) {
  
  module.exports = JSON.parse("{\"customers\":{\"1\":\"Lego Education\",\"2\":\"mBot\",\"3\":\"mBot Ultimate\",\"4\":\"Dash and Dot\",\"5\":\"OSMO\",\"6\":\"水底機械人\",\"7\":\"四足機械人\",\"8\":\"Micro：bit\",\"9\":\"HaloCode\",\"10\":\"Raspberry Pi\",\"11\":\"Scratch\",\"12\":\"Scratch JR\",\"13\":\"Arduino\",\"14\":\"App inventor\",\"15\":\"網頁製作\",\"16\":\"Photoshop\",\"17\":\"3D print\",\"18\":\"3D筆\",\"19\":\"VR\",\"20\":\"AR\",\"21\":\"航拍\",\"22\":\"Tello編程無人機\",\"23\":\"太陽能課程\",\"24\":\"科學實驗\",\"25\":\"小小工程師\",\"26\":\"種植項目\",\"27\":\"魚菜共生\",\"28\":\"水耕菜\",\"29\":\"AI人工智能\",\"30\":\"IoT\",\"31\":\"智能家居\",\"32\":\"METAS\",\"33\":\"其他\"},\"items\":{\"1\":\"Lego Education\",\"2\":\"mBot\",\"3\":\"mBot Ultimate\",\"4\":\"Dash and Dot\",\"5\":\"OSMO\",\"6\":\"水底機械人\",\"7\":\"四足機械人\",\"8\":\"Micro：bit\",\"9\":\"HaloCode\",\"10\":\"Raspberry Pi\",\"11\":\"Scratch\",\"12\":\"Scratch JR\",\"13\":\"Arduino\",\"14\":\"App inventor\",\"15\":\"網頁製作\",\"16\":\"Photoshop\",\"17\":\"3D print\",\"18\":\"3D筆\",\"19\":\"VR\",\"20\":\"AR\",\"21\":\"航拍\",\"22\":\"Tello編程無人機\",\"23\":\"太陽能課程\",\"24\":\"科學實驗\",\"25\":\"小小工程師\",\"26\":\"種植項目\",\"27\":\"魚菜共生\",\"28\":\"水耕菜\",\"29\":\"AI人工智能\",\"30\":\"IoT\",\"31\":\"智能家居\",\"32\":\"METAS\",\"33\":\"其他\"},\"estimates\":{\"1\":\"Lego Education\",\"2\":\"mBot\",\"3\":\"mBot Ultimate\",\"4\":\"Dash and Dot\",\"5\":\"OSMO\",\"6\":\"水底機械人\",\"7\":\"四足機械人\",\"8\":\"Micro：bit\",\"9\":\"HaloCode\",\"10\":\"Raspberry Pi\",\"11\":\"Scratch\",\"12\":\"Scratch JR\",\"13\":\"Arduino\",\"14\":\"App inventor\",\"15\":\"網頁製作\",\"16\":\"Photoshop\",\"17\":\"3D print\",\"18\":\"3D筆\",\"19\":\"VR\",\"20\":\"AR\",\"21\":\"航拍\",\"22\":\"Tello編程無人機\",\"23\":\"太陽能課程\",\"24\":\"科學實驗\",\"25\":\"小小工程師\",\"26\":\"種植項目\",\"27\":\"魚菜共生\",\"28\":\"水耕菜\",\"29\":\"AI人工智能\",\"30\":\"IoT\",\"31\":\"智能家居\",\"32\":\"METAS\",\"33\":\"其他\"},\"invoice\":{\"1\":\"Lego Education\",\"2\":\"mBot\",\"3\":\"mBot Ultimate\",\"4\":\"Dash and Dot\",\"5\":\"OSMO\",\"6\":\"水底機械人\",\"7\":\"四足機械人\",\"8\":\"Micro：bit\",\"9\":\"HaloCode\",\"10\":\"Raspberry Pi\",\"11\":\"Scratch\",\"12\":\"Scratch JR\",\"13\":\"Arduino\",\"14\":\"App inventor\",\"15\":\"網頁製作\",\"16\":\"Photoshop\",\"17\":\"3D print\",\"18\":\"3D筆\",\"19\":\"VR\",\"20\":\"AR\",\"21\":\"航拍\",\"22\":\"Tello編程無人機\",\"23\":\"太陽能課程\",\"24\":\"科學實驗\",\"25\":\"小小工程師\",\"26\":\"種植項目\",\"27\":\"魚菜共生\",\"28\":\"水耕菜\",\"29\":\"AI人工智能\",\"30\":\"IoT\",\"31\":\"智能家居\",\"32\":\"METAS\",\"33\":\"其他\"},\"dashboard\":{}}");
  
  /***/ }),
  
  /***/ "./src/environments/environment.ts":
  /*!*****************************************!*\
    !*** ./src/environments/environment.ts ***!
    \*****************************************/
  /*! exports provided: environment */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "environment", function() { return environment; });
  // The file contents for the current environment will overwrite these during build.
  // The build system defaults to the dev environment which uses `environment.ts`, but if you do
  // `ng build --env=prod` then `environment.prod.ts` will be used instead.
  // The list of which env maps to which file can be found in `.angular-cli.json`.
  var environment = {
      production: true,
      firebase: {
          apiKey: "AIzaSyDIPG4V9U4V5kKw2I9xfKwdn3qrcg6MoqE",
          authDomain: "invoice-13rwef23r.firebaseapp.com",
          databaseURL: "https://invoice-13rwef23r.firebaseio.com",
          projectId: "invoice-13rwef23r",
          storageBucket: "invoice-13rwef23r.appspot.com",
          messagingSenderId: "146594735732",
          appId: "1:146594735732:web:410580888e942a778b1321",
          measurementId: "G-CD3824NXVP"
          // apiKey: 'AIzaSyC5QK355uuknu0_ldVxFqqNqgp9oJi_eLc',
          // authDomain: 'ion4fullpwa.firebaseapp.com',
          // databaseURL: 'https://ion4fullpwa.firebaseio.com',
          // projectId: 'ion4fullpwa',
          // storageBucket: 'ion4fullpwa.appspot.com',
          // messagingSenderId: '813357714189'
          // apiKey: 'AIzaSyCgrWOAJdIpE98-irq_o4DIkcoc47jiytY',
          // authDomain: 'dev-ion4fullpwa.firebaseapp.com',
          // databaseURL: 'https://dev-ion4fullpwa.firebaseio.com',
          // projectId: 'dev-ion4fullpwa',
          // storageBucket: 'dev-ion4fullpwa.appspot.com',
          // messagingSenderId: '110862065236'
      }
  };
  /*
   * In development mode, to ignore zone related error stack frames such as
   * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can
   * import the following file, but please comment it out in production mode
   * because it will have performance impact when throw error
   */
  // import 'zone.js/dist/zone-error';  // Included with Angular CLI.
  
  
  /***/ }),
  
  /***/ "./src/main.ts":
  /*!*********************!*\
    !*** ./src/main.ts ***!
    \*********************/
  /*! no exports provided */
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  __webpack_require__.r(__webpack_exports__);
  /* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @angular/core */ "./node_modules/@angular/core/fesm5/core.js");
  /* harmony import */ var _angular_platform_browser_dynamic__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/platform-browser-dynamic */ "./node_modules/@angular/platform-browser-dynamic/fesm5/platform-browser-dynamic.js");
  /* harmony import */ var _app_app_module__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app/app.module */ "./src/app/app.module.ts");
  /* harmony import */ var _environments_environment__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./environments/environment */ "./src/environments/environment.ts");
  
  
  
  
  if (_environments_environment__WEBPACK_IMPORTED_MODULE_3__["environment"].production) {
      Object(_angular_core__WEBPACK_IMPORTED_MODULE_0__["enableProdMode"])();
  }
  Object(_angular_platform_browser_dynamic__WEBPACK_IMPORTED_MODULE_1__["platformBrowserDynamic"])().bootstrapModule(_app_app_module__WEBPACK_IMPORTED_MODULE_2__["AppModule"])
      .catch(function (err) { return console.log(err); });
  
  
  /***/ }),
  
  /***/ 0:
  /*!***************************!*\
    !*** multi ./src/main.ts ***!
    \***************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  module.exports = __webpack_require__(/*! /Users/imaker/Desktop/IMAKER/AAA_imaker_subscription/ionVoice/src/main.ts */"./src/main.ts");
  
  
  /***/ })
  
  },[[0,"runtime","vendor"]]]);
  //# sourceMappingURL=main-es5.js.map