{"version":3,"sources":["vendor/ember-cli/app-prefix.js","clever-sparky-frontend/abilities/business-profile.js","clever-sparky-frontend/abilities/delete-site.js","clever-sparky-frontend/abilities/deleted-fittings.js","clever-sparky-frontend/abilities/site-permissions.js","clever-sparky-frontend/abilities/transfer-site.js","clever-sparky-frontend/abilities/user-management.js","clever-sparky-frontend/adapters/access-request.js","clever-sparky-frontend/adapters/admin.js","clever-sparky-frontend/adapters/application.js","clever-sparky-frontend/adapters/employment.js","clever-sparky-frontend/adapters/fitting.js","clever-sparky-frontend/adapters/group.js","clever-sparky-frontend/adapters/invite.js","clever-sparky-frontend/adapters/ledtest.js","clever-sparky-frontend/adapters/order-item.js","clever-sparky-frontend/adapters/organisation-analytics.js","clever-sparky-frontend/adapters/organisation.js","clever-sparky-frontend/adapters/site-permission.js","clever-sparky-frontend/adapters/site.js","clever-sparky-frontend/adapters/template.js","clever-sparky-frontend/adapters/test-event-fitting.js","clever-sparky-frontend/adapters/test-event-group.js","clever-sparky-frontend/adapters/test-event.js","clever-sparky-frontend/adapters/tooltip-event.js","clever-sparky-frontend/adapters/user.js","clever-sparky-frontend/ajax-requests/service.js","clever-sparky-frontend/app.js","clever-sparky-frontend/authenticators/cleversparky.js","clever-sparky-frontend/authorizers/cleversparky.js","clever-sparky-frontend/breakpoints.js","clever-sparky-frontend/components/auth-validated-input.js","clever-sparky-frontend/components/auth-validated-select.js","clever-sparky-frontend/components/autocomplete-input.js","clever-sparky-frontend/components/autocomplete-result-item.js","clever-sparky-frontend/components/batch-delete-confirmation.js","clever-sparky-frontend/components/batch-delete-error.js","clever-sparky-frontend/components/batch-move-confirmation.js","clever-sparky-frontend/components/checkout-confirmation.js","clever-sparky-frontend/components/create-test-event-modal.js","clever-sparky-frontend/components/date-picker.js","clever-sparky-frontend/components/delete-account-modal.js","clever-sparky-frontend/components/deleted-fitting-table.js","clever-sparky-frontend/components/disabled-form-input.js","clever-sparky-frontend/components/dropdown-menu.js","clever-sparky-frontend/components/ember-chart.js","clever-sparky-frontend/components/ember-progress-bar.js","clever-sparky-frontend/components/ember-tether.js","clever-sparky-frontend/components/employment-table.js","clever-sparky-frontend/components/fault-table.js","clever-sparky-frontend/components/faults-dropdown-menu.js","clever-sparky-frontend/components/file-field.js","clever-sparky-frontend/components/file-picker.js","clever-sparky-frontend/components/file-upload-error-modal.js","clever-sparky-frontend/components/file-upload-input.js","clever-sparky-frontend/components/file-upload-progress-bar.js","clever-sparky-frontend/components/file-uploader.js","clever-sparky-frontend/components/fitting-delete-confirmation.js","clever-sparky-frontend/components/fitting-info-banner.js","clever-sparky-frontend/components/fitting-panel.js","clever-sparky-frontend/components/fitting-panelsite.js","clever-sparky-frontend/components/fitting-reinstate-confirmation.js","clever-sparky-frontend/components/fitting-table.js","clever-sparky-frontend/components/flash-message.js","clever-sparky-frontend/components/form-validated-input.js","clever-sparky-frontend/components/form-validated-select.js","clever-sparky-frontend/components/form-validated-textarea.js","clever-sparky-frontend/components/form-validated-wholesaler-select.js","clever-sparky-frontend/components/forms/change-password-form.js","clever-sparky-frontend/components/forms/fitting-details-form-rows.js","clever-sparky-frontend/components/forms/fitting-details-form.js","clever-sparky-frontend/components/forms/fittings-form-new.js","clever-sparky-frontend/components/forms/forgot-password-form.js","clever-sparky-frontend/components/forms/group-form-rows.js","clever-sparky-frontend/components/forms/group-form.js","clever-sparky-frontend/components/forms/invite-to-site-form.js","clever-sparky-frontend/components/forms/invite-user-form.js","clever-sparky-frontend/components/forms/login-form.js","clever-sparky-frontend/components/forms/maintenance-form.js","clever-sparky-frontend/components/forms/organisation-edit-form.js","clever-sparky-frontend/components/forms/organisation-form.js","clever-sparky-frontend/components/forms/organisation-new-form.js","clever-sparky-frontend/components/forms/quick-test-defaults-form.js","clever-sparky-frontend/components/forms/quick-test-form.js","clever-sparky-frontend/components/forms/report-form.js","clever-sparky-frontend/components/forms/reset-password-form.js","clever-sparky-frontend/components/forms/site-form-new.js","clever-sparky-frontend/components/forms/site-form-rows.js","clever-sparky-frontend/components/forms/site-form.js","clever-sparky-frontend/components/forms/test-and-status-form-rows.js","clever-sparky-frontend/components/forms/test-and-status-form.js","clever-sparky-frontend/components/forms/test-event-add-groups-form.js","clever-sparky-frontend/components/forms/test-event-form.js","clever-sparky-frontend/components/forms/test-event-groups-form.js","clever-sparky-frontend/components/forms/test-event-remove-groups-form.js","clever-sparky-frontend/components/forms/update-fitting-form.js","clever-sparky-frontend/components/forms/user-details-form.js","clever-sparky-frontend/components/forms/user-form.js","clever-sparky-frontend/components/forms/user-signup-form.js","clever-sparky-frontend/components/group-dropdown-menu.js","clever-sparky-frontend/components/group-table.js","clever-sparky-frontend/components/image-uploader/component.js","clever-sparky-frontend/components/image-uploader/template.js","clever-sparky-frontend/components/infinity-loader.js","clever-sparky-frontend/components/labeled-radio-button.js","clever-sparky-frontend/components/load-more-button.js","clever-sparky-frontend/components/maintenance-delete-confirmation.js","clever-sparky-frontend/components/maintenance-row.js","clever-sparky-frontend/components/maintenance-rows.js","clever-sparky-frontend/components/metric-chart.js","clever-sparky-frontend/components/modal-success.js","clever-sparky-frontend/components/modal-view.js","clever-sparky-frontend/components/multiselect-checkboxes.js","clever-sparky-frontend/components/nav-bar.js","clever-sparky-frontend/components/onboarding-slide.js","clever-sparky-frontend/components/order-item-table.js","clever-sparky-frontend/components/places-search-input.js","clever-sparky-frontend/components/power-calendar-multiple.js","clever-sparky-frontend/components/power-calendar-multiple/days.js","clever-sparky-frontend/components/power-calendar-range.js","clever-sparky-frontend/components/power-calendar-range/days.js","clever-sparky-frontend/components/power-calendar.js","clever-sparky-frontend/components/power-calendar/days.js","clever-sparky-frontend/components/power-calendar/nav.js","clever-sparky-frontend/components/quick-test-defaults-modal.js","clever-sparky-frontend/components/quick-test-modal.js","clever-sparky-frontend/components/radio-button-input.js","clever-sparky-frontend/components/radio-button.js","clever-sparky-frontend/components/replacement-option-button.js","clever-sparky-frontend/components/report-modal-delete.js","clever-sparky-frontend/components/search-bar.js","clever-sparky-frontend/components/shopping-cart-dropdown-menu.js","clever-sparky-frontend/components/shopping-cart-group-table.js","clever-sparky-frontend/components/site-admin.js","clever-sparky-frontend/components/site-details-dropdown-menu.js","clever-sparky-frontend/components/site-header.js","clever-sparky-frontend/components/site-menu.js","clever-sparky-frontend/components/site-permission-table.js","clever-sparky-frontend/components/site-permissions-panel.js","clever-sparky-frontend/components/site-request-table.js","clever-sparky-frontend/components/site-table.js","clever-sparky-frontend/components/swiper-container.js","clever-sparky-frontend/components/swiper-slide.js","clever-sparky-frontend/components/switch-account-modal.js","clever-sparky-frontend/components/test-delete-confirmation.js","clever-sparky-frontend/components/test-event-archive-confirmation.js","clever-sparky-frontend/components/test-event-fitting-dropdown-menu.js","clever-sparky-frontend/components/test-event-fitting-table.js","clever-sparky-frontend/components/test-event-group-dropdown-menu.js","clever-sparky-frontend/components/test-event-group-table.js","clever-sparky-frontend/components/test-event-modal.js","clever-sparky-frontend/components/test-event-table.js","clever-sparky-frontend/components/tours/sequence-element.js","clever-sparky-frontend/components/user-panel.js","clever-sparky-frontend/components/users-dropdown-menu.js","clever-sparky-frontend/components/validated-input.js","clever-sparky-frontend/components/validated-multi-select.js","clever-sparky-frontend/components/validated-select.js","clever-sparky-frontend/components/validated-textarea.js","clever-sparky-frontend/components/welcome-page.js","clever-sparky-frontend/components/wholesaler-info-banner.js","clever-sparky-frontend/components/x-option.js","clever-sparky-frontend/components/x-select.js","clever-sparky-frontend/controllers/analytics.js","clever-sparky-frontend/controllers/application.js","clever-sparky-frontend/controllers/fitting-panel-tab.js","clever-sparky-frontend/controllers/forgot-password/success.js","clever-sparky-frontend/controllers/groups.js","clever-sparky-frontend/controllers/groups/fittings.js","clever-sparky-frontend/controllers/groups/fittings/new.js","clever-sparky-frontend/controllers/groups/fittings/show.js","clever-sparky-frontend/controllers/groups/fittings/show/details.js","clever-sparky-frontend/controllers/groups/fittings/show/maintenance.js","clever-sparky-frontend/controllers/groups/fittings/show/test-and-status.js","clever-sparky-frontend/controllers/invite.js","clever-sparky-frontend/controllers/onboarding.js","clever-sparky-frontend/controllers/order-item-group.js","clever-sparky-frontend/controllers/order-item-group/order-items.js","clever-sparky-frontend/controllers/reset-password/index.js","clever-sparky-frontend/controllers/signup/user.js","clever-sparky-frontend/controllers/site.js","clever-sparky-frontend/controllers/site/deleted-fittings/show.js","clever-sparky-frontend/controllers/site/details.js","clever-sparky-frontend/controllers/site/faults.js","clever-sparky-frontend/controllers/site/faults/show.js","clever-sparky-frontend/controllers/site/fittings.js","clever-sparky-frontend/controllers/site/fittings/new.js","clever-sparky-frontend/controllers/site/fittings/show.js","clever-sparky-frontend/controllers/site/fittings/show/details.js","clever-sparky-frontend/controllers/site/fittings/show/maintenance.js","clever-sparky-frontend/controllers/site/fittings/show/test-and-status.js","clever-sparky-frontend/controllers/site/groups.js","clever-sparky-frontend/controllers/site/shopping-cart.js","clever-sparky-frontend/controllers/site/test-events.js","clever-sparky-frontend/controllers/sites.js","clever-sparky-frontend/controllers/sites/new.js","clever-sparky-frontend/controllers/test-event-group.js","clever-sparky-frontend/controllers/test-event-group/fittings.js","clever-sparky-frontend/controllers/test-event-group/fittings/show.js","clever-sparky-frontend/controllers/test-event-group/fittings/show/details.js","clever-sparky-frontend/controllers/test-event-group/fittings/show/maintenance.js","clever-sparky-frontend/controllers/test-event-group/fittings/show/test-and-status.js","clever-sparky-frontend/controllers/test-event.js","clever-sparky-frontend/controllers/test-event/groups.js","clever-sparky-frontend/controllers/user.js","clever-sparky-frontend/controllers/users.js","clever-sparky-frontend/flash/object.js","clever-sparky-frontend/helpers/app-version.js","clever-sparky-frontend/helpers/assign.js","clever-sparky-frontend/helpers/can.js","clever-sparky-frontend/helpers/cancel-all.js","clever-sparky-frontend/helpers/cannot.js","clever-sparky-frontend/helpers/is-after.js","clever-sparky-frontend/helpers/is-before.js","clever-sparky-frontend/helpers/is-between.js","clever-sparky-frontend/helpers/is-same-or-after.js","clever-sparky-frontend/helpers/is-same-or-before.js","clever-sparky-frontend/helpers/is-same.js","clever-sparky-frontend/helpers/item-name.js","clever-sparky-frontend/helpers/moment-add.js","clever-sparky-frontend/helpers/moment-calendar.js","clever-sparky-frontend/helpers/moment-diff.js","clever-sparky-frontend/helpers/moment-duration.js","clever-sparky-frontend/helpers/moment-format.js","clever-sparky-frontend/helpers/moment-from-now.js","clever-sparky-frontend/helpers/moment-from.js","clever-sparky-frontend/helpers/moment-subtract.js","clever-sparky-frontend/helpers/moment-to-date.js","clever-sparky-frontend/helpers/moment-to-now.js","clever-sparky-frontend/helpers/moment-to.js","clever-sparky-frontend/helpers/moment-unix.js","clever-sparky-frontend/helpers/moment.js","clever-sparky-frontend/helpers/now.js","clever-sparky-frontend/helpers/perform.js","clever-sparky-frontend/helpers/pluralize.js","clever-sparky-frontend/helpers/pluralizer.js","clever-sparky-frontend/helpers/route-action.js","clever-sparky-frontend/helpers/singularize.js","clever-sparky-frontend/helpers/t.js","clever-sparky-frontend/helpers/task.js","clever-sparky-frontend/helpers/unix.js","clever-sparky-frontend/helpers/utc.js","clever-sparky-frontend/index.js","clever-sparky-frontend/initializers/app-version.js","clever-sparky-frontend/initializers/container-debug-adapter.js","clever-sparky-frontend/initializers/data-adapter.js","clever-sparky-frontend/initializers/ember-cli-uuid.js","clever-sparky-frontend/initializers/ember-concurrency.js","clever-sparky-frontend/initializers/ember-data.js","clever-sparky-frontend/initializers/ember-feature-flags.js","clever-sparky-frontend/initializers/ember-i18n.js","clever-sparky-frontend/initializers/ember-simple-auth.js","clever-sparky-frontend/initializers/export-application-global.js","clever-sparky-frontend/initializers/flash-messages.js","clever-sparky-frontend/initializers/injectStore.js","clever-sparky-frontend/initializers/local-storage-adapter.js","clever-sparky-frontend/initializers/metrics.js","clever-sparky-frontend/initializers/raven.js","clever-sparky-frontend/initializers/responsive.js","clever-sparky-frontend/initializers/setup-ember-can.js","clever-sparky-frontend/initializers/store.js","clever-sparky-frontend/initializers/transforms.js","clever-sparky-frontend/initializers/user-agent.js","clever-sparky-frontend/instance-initializers/ember-data.js","clever-sparky-frontend/instance-initializers/ember-i18n.js","clever-sparky-frontend/instance-initializers/ember-simple-auth.js","clever-sparky-frontend/instance-initializers/ember-useragent.js","clever-sparky-frontend/instance-initializers/raven-setup.js","clever-sparky-frontend/locales/en/config.js","clever-sparky-frontend/locales/en/translations.js","clever-sparky-frontend/mixins/adapter-fetch.js","clever-sparky-frontend/mixins/click-outside.js","clever-sparky-frontend/mixins/countries-and-states.js","clever-sparky-frontend/mixins/escape-keypress.js","clever-sparky-frontend/mixins/file-upload-actions.js","clever-sparky-frontend/mixins/handle-error.js","clever-sparky-frontend/mixins/option-lookup.js","clever-sparky-frontend/mixins/report-actions.js","clever-sparky-frontend/mixins/reset-scroll-position.js","clever-sparky-frontend/mixins/setup-tour-sequence.js","clever-sparky-frontend/mixins/show-nav-bar.js","clever-sparky-frontend/mixins/toggle-label-focus.js","clever-sparky-frontend/models/access-request.js","clever-sparky-frontend/models/admin.js","clever-sparky-frontend/models/employment.js","clever-sparky-frontend/models/fitting.js","clever-sparky-frontend/models/group.js","clever-sparky-frontend/models/invite.js","clever-sparky-frontend/models/invitetransfer.js","clever-sparky-frontend/models/ledtest.js","clever-sparky-frontend/models/maintenance.js","clever-sparky-frontend/models/order-item.js","clever-sparky-frontend/models/order.js","clever-sparky-frontend/models/organisation-analytics.js","clever-sparky-frontend/models/organisation.js","clever-sparky-frontend/models/place.js","clever-sparky-frontend/models/role.js","clever-sparky-frontend/models/session.js","clever-sparky-frontend/models/site-owner.js","clever-sparky-frontend/models/site-permission.js","clever-sparky-frontend/models/site.js","clever-sparky-frontend/models/template.js","clever-sparky-frontend/models/test-event-fitting.js","clever-sparky-frontend/models/test-event-group.js","clever-sparky-frontend/models/test-event.js","clever-sparky-frontend/models/tooltip-event.js","clever-sparky-frontend/models/user.js","clever-sparky-frontend/models/wholesaler-auth-resource.js","clever-sparky-frontend/models/wholesaler.js","clever-sparky-frontend/resolver.js","clever-sparky-frontend/router.js","clever-sparky-frontend/routes/analytics.js","clever-sparky-frontend/routes/application.js","clever-sparky-frontend/routes/base-routes/deleted-fittings-tab.js","clever-sparky-frontend/routes/base-routes/faulty-fittings-tab.js","clever-sparky-frontend/routes/base-routes/groups-fittings-tab.js","clever-sparky-frontend/routes/base-routes/show.js","clever-sparky-frontend/routes/base-routes/site-fittings-tab.js","clever-sparky-frontend/routes/base-routes/test-event-group-fittings-tab.js","clever-sparky-frontend/routes/change-password.js","clever-sparky-frontend/routes/change-password/index.js","clever-sparky-frontend/routes/change-password/success.js","clever-sparky-frontend/routes/edit.js","clever-sparky-frontend/routes/edit/organisation.js","clever-sparky-frontend/routes/edit/profile.js","clever-sparky-frontend/routes/forgot-password.js","clever-sparky-frontend/routes/forgot-password/success.js","clever-sparky-frontend/routes/groups.js","clever-sparky-frontend/routes/groups/fittings.js","clever-sparky-frontend/routes/groups/fittings/delete-group.js","clever-sparky-frontend/routes/groups/fittings/edit-group.js","clever-sparky-frontend/routes/groups/fittings/show.js","clever-sparky-frontend/routes/groups/fittings/show/details.js","clever-sparky-frontend/routes/groups/fittings/show/maintenance.js","clever-sparky-frontend/routes/groups/fittings/show/test-and-status.js","clever-sparky-frontend/routes/index.js","clever-sparky-frontend/routes/invite.js","clever-sparky-frontend/routes/login.js","clever-sparky-frontend/routes/logout.js","clever-sparky-frontend/routes/new-organisation.js","clever-sparky-frontend/routes/onboarding.js","clever-sparky-frontend/routes/order-item-group.js","clever-sparky-frontend/routes/order-item-group/order-items.js","clever-sparky-frontend/routes/reset-password.js","clever-sparky-frontend/routes/reset-password/success.js","clever-sparky-frontend/routes/s3.js","clever-sparky-frontend/routes/signup.js","clever-sparky-frontend/routes/signup/terms.js","clever-sparky-frontend/routes/signup/user.js","clever-sparky-frontend/routes/site-request.js","clever-sparky-frontend/routes/site-requests.js","clever-sparky-frontend/routes/site.js","clever-sparky-frontend/routes/site/deleted-fittings.js","clever-sparky-frontend/routes/site/deleted-fittings/show.js","clever-sparky-frontend/routes/site/deleted-fittings/show/details.js","clever-sparky-frontend/routes/site/deleted-fittings/show/maintenance.js","clever-sparky-frontend/routes/site/deleted-fittings/show/test-and-status.js","clever-sparky-frontend/routes/site/details.js","clever-sparky-frontend/routes/site/faults.js","clever-sparky-frontend/routes/site/faults/show.js","clever-sparky-frontend/routes/site/faults/show/details.js","clever-sparky-frontend/routes/site/faults/show/maintenance.js","clever-sparky-frontend/routes/site/faults/show/test-and-status.js","clever-sparky-frontend/routes/site/fittings.js","clever-sparky-frontend/routes/site/fittings/delete-group.js","clever-sparky-frontend/routes/site/fittings/edit-group.js","clever-sparky-frontend/routes/site/fittings/show.js","clever-sparky-frontend/routes/site/fittings/show/details.js","clever-sparky-frontend/routes/site/fittings/show/maintenance.js","clever-sparky-frontend/routes/site/fittings/show/test-and-status.js","clever-sparky-frontend/routes/site/groups.js","clever-sparky-frontend/routes/site/shopping-cart.js","clever-sparky-frontend/routes/site/test-events.js","clever-sparky-frontend/routes/sites.js","clever-sparky-frontend/routes/support.js","clever-sparky-frontend/routes/terms.js","clever-sparky-frontend/routes/test-event-group.js","clever-sparky-frontend/routes/test-event-group/fittings.js","clever-sparky-frontend/routes/test-event-group/fittings/show.js","clever-sparky-frontend/routes/test-event-group/fittings/show/details.js","clever-sparky-frontend/routes/test-event-group/fittings/show/maintenance.js","clever-sparky-frontend/routes/test-event-group/fittings/show/test-and-status.js","clever-sparky-frontend/routes/test-event.js","clever-sparky-frontend/routes/test-event/groups.js","clever-sparky-frontend/routes/user.js","clever-sparky-frontend/routes/users.js","clever-sparky-frontend/s3-upload/service.js","clever-sparky-frontend/serializers/admin.js","clever-sparky-frontend/serializers/application.js","clever-sparky-frontend/serializers/fitting.js","clever-sparky-frontend/serializers/ledtest.js","clever-sparky-frontend/serializers/organisation-analytics.js","clever-sparky-frontend/serializers/organisation.js","clever-sparky-frontend/serializers/site.js","clever-sparky-frontend/serializers/user.js","clever-sparky-frontend/services/ajax.js","clever-sparky-frontend/services/batch-create-ledtests.js","clever-sparky-frontend/services/batch-delete-fittings.js","clever-sparky-frontend/services/batch-delete-groups.js","clever-sparky-frontend/services/batch-delete-order-items.js","clever-sparky-frontend/services/batch-delete-test-events.js","clever-sparky-frontend/services/batch-delete.js","clever-sparky-frontend/services/batch-handle-test-event-groups.js","clever-sparky-frontend/services/batch-move-fittings.js","clever-sparky-frontend/services/batch-move.js","clever-sparky-frontend/services/branch.js","clever-sparky-frontend/services/can.js","clever-sparky-frontend/services/cart-checkout.js","clever-sparky-frontend/services/cookies.js","clever-sparky-frontend/services/download-report.js","clever-sparky-frontend/services/features.js","clever-sparky-frontend/services/file-upload.js","clever-sparky-frontend/services/fitting-lookup.js","clever-sparky-frontend/services/flash-messages.js","clever-sparky-frontend/services/holdvaribles.js","clever-sparky-frontend/services/i18n.js","clever-sparky-frontend/services/invite-accept.js","clever-sparky-frontend/services/invite-accepttransfer.js","clever-sparky-frontend/services/invite-delete.js","clever-sparky-frontend/services/media.js","clever-sparky-frontend/services/metrics.js","clever-sparky-frontend/services/moment.js","clever-sparky-frontend/services/power-calendar.js","clever-sparky-frontend/services/raven.js","clever-sparky-frontend/services/reinstate-fitting.js","clever-sparky-frontend/services/request-password-reset.js","clever-sparky-frontend/services/request-service.js","clever-sparky-frontend/services/request-site-access.js","clever-sparky-frontend/services/reset-password.js","clever-sparky-frontend/services/reset-tooltip-events.js","clever-sparky-frontend/services/session.js","clever-sparky-frontend/services/tour.js","clever-sparky-frontend/services/tours/base.js","clever-sparky-frontend/services/tours/post-onboarding-technician.js","clever-sparky-frontend/services/tours/post-onboarding.js","clever-sparky-frontend/services/tours/test-event-dropdown-menu.js","clever-sparky-frontend/services/tours/user-dropdown-menu-technician.js","clever-sparky-frontend/services/tours/user-dropdown-menu.js","clever-sparky-frontend/services/tours/view-fitting-panel.js","clever-sparky-frontend/services/tours/view-fitting.js","clever-sparky-frontend/services/tours/view-group.js","clever-sparky-frontend/services/tours/view-restricted-sites.js","clever-sparky-frontend/services/tours/view-site-technician.js","clever-sparky-frontend/services/tours/view-site.js","clever-sparky-frontend/services/tours/view-test-event-group.js","clever-sparky-frontend/services/tours/view-user-details.js","clever-sparky-frontend/services/tours/view-users.js","clever-sparky-frontend/services/user-agent.js","clever-sparky-frontend/services/wholesaler-auth.js","clever-sparky-frontend/session-stores/application.js","clever-sparky-frontend/signed-request/service.js","clever-sparky-frontend/storages/current-organisation.js","clever-sparky-frontend/storages/invite.js","clever-sparky-frontend/storages/site.js","clever-sparky-frontend/storages/test-event.js","clever-sparky-frontend/templates/analytics.js","clever-sparky-frontend/templates/application.js","clever-sparky-frontend/templates/change-password.js","clever-sparky-frontend/templates/change-password/index.js","clever-sparky-frontend/templates/change-password/success.js","clever-sparky-frontend/templates/components/auth-validated-input.js","clever-sparky-frontend/templates/components/batch-delete-confirmation.js","clever-sparky-frontend/templates/components/batch-delete-error.js","clever-sparky-frontend/templates/components/batch-move-confirmation.js","clever-sparky-frontend/templates/components/checkout-confirmation.js","clever-sparky-frontend/templates/components/create-test-event-modal.js","clever-sparky-frontend/templates/components/date-picker.js","clever-sparky-frontend/templates/components/delete-account-modal.js","clever-sparky-frontend/templates/components/deleted-fitting-table.js","clever-sparky-frontend/templates/components/disabled-form-input.js","clever-sparky-frontend/templates/components/dropdown-menu.js","clever-sparky-frontend/templates/components/employment-table.js","clever-sparky-frontend/templates/components/fault-table.js","clever-sparky-frontend/templates/components/faults-dropdown-menu.js","clever-sparky-frontend/templates/components/file-picker.js","clever-sparky-frontend/templates/components/file-upload-error-modal.js","clever-sparky-frontend/templates/components/file-upload-progress-bar.js","clever-sparky-frontend/templates/components/file-upload.js","clever-sparky-frontend/templates/components/file-uploader.js","clever-sparky-frontend/templates/components/fitting-delete-confirmation.js","clever-sparky-frontend/templates/components/fitting-info-banner.js","clever-sparky-frontend/templates/components/fitting-panel.js","clever-sparky-frontend/templates/components/fitting-panelsite.js","clever-sparky-frontend/templates/components/fitting-reinstate-confirmation.js","clever-sparky-frontend/templates/components/fitting-table.js","clever-sparky-frontend/templates/components/form-validated-input.js","clever-sparky-frontend/templates/components/form-validated-textarea.js","clever-sparky-frontend/templates/components/form-validated-wholesaler-select.js","clever-sparky-frontend/templates/components/forms/admin-signup-form.js","clever-sparky-frontend/templates/components/forms/change-password-form.js","clever-sparky-frontend/templates/components/forms/fitting-details-form-rows.js","clever-sparky-frontend/templates/components/forms/fitting-details-form.js","clever-sparky-frontend/templates/components/forms/fittings-form-new.js","clever-sparky-frontend/templates/components/forms/forgot-password-form.js","clever-sparky-frontend/templates/components/forms/group-form-rows.js","clever-sparky-frontend/templates/components/forms/group-form.js","clever-sparky-frontend/templates/components/forms/invite-to-site-form.js","clever-sparky-frontend/templates/components/forms/invite-user-form.js","clever-sparky-frontend/templates/components/forms/login-form.js","clever-sparky-frontend/templates/components/forms/maintenance-form.js","clever-sparky-frontend/templates/components/forms/organisation-edit-form.js","clever-sparky-frontend/templates/components/forms/organisation-form.js","clever-sparky-frontend/templates/components/forms/organisation-new-form.js","clever-sparky-frontend/templates/components/forms/quick-test-defaults-form.js","clever-sparky-frontend/templates/components/forms/quick-test-form.js","clever-sparky-frontend/templates/components/forms/report-form.js","clever-sparky-frontend/templates/components/forms/reset-password-form.js","clever-sparky-frontend/templates/components/forms/site-form-new.js","clever-sparky-frontend/templates/components/forms/site-form-rows.js","clever-sparky-frontend/templates/components/forms/site-form.js","clever-sparky-frontend/templates/components/forms/test-and-status-form-rows.js","clever-sparky-frontend/templates/components/forms/test-and-status-form.js","clever-sparky-frontend/templates/components/forms/test-event-add-groups-form.js","clever-sparky-frontend/templates/components/forms/test-event-form.js","clever-sparky-frontend/templates/components/forms/test-event-remove-groups-form.js","clever-sparky-frontend/templates/components/forms/update-fitting-form.js","clever-sparky-frontend/templates/components/forms/user-details-form.js","clever-sparky-frontend/templates/components/forms/user-form.js","clever-sparky-frontend/templates/components/forms/user-signup-form.js","clever-sparky-frontend/templates/components/group-dropdown-menu.js","clever-sparky-frontend/templates/components/group-table.js","clever-sparky-frontend/templates/components/infinity-loader.js","clever-sparky-frontend/templates/components/load-more-button.js","clever-sparky-frontend/templates/components/maintenance-delete-confirmation.js","clever-sparky-frontend/templates/components/maintenance-row.js","clever-sparky-frontend/templates/components/maintenance-rows.js","clever-sparky-frontend/templates/components/metric-chart.js","clever-sparky-frontend/templates/components/modal-success.js","clever-sparky-frontend/templates/components/modal-view.js","clever-sparky-frontend/templates/components/multiselect-checkboxes.js","clever-sparky-frontend/templates/components/nav-bar.js","clever-sparky-frontend/templates/components/onboarding-slide.js","clever-sparky-frontend/templates/components/order-item-table.js","clever-sparky-frontend/templates/components/places-search-input.js","clever-sparky-frontend/templates/components/quick-test-defaults-modal.js","clever-sparky-frontend/templates/components/quick-test-modal.js","clever-sparky-frontend/templates/components/replacement-option-button.js","clever-sparky-frontend/templates/components/report-modal-delete.js","clever-sparky-frontend/templates/components/search-bar.js","clever-sparky-frontend/templates/components/shopping-cart-dropdown-menu.js","clever-sparky-frontend/templates/components/shopping-cart-group-table.js","clever-sparky-frontend/templates/components/site-admin.js","clever-sparky-frontend/templates/components/site-details-dropdown-menu.js","clever-sparky-frontend/templates/components/site-header.js","clever-sparky-frontend/templates/components/site-menu.js","clever-sparky-frontend/templates/components/site-permission-table.js","clever-sparky-frontend/templates/components/site-permissions-panel.js","clever-sparky-frontend/templates/components/site-request-table.js","clever-sparky-frontend/templates/components/site-table.js","clever-sparky-frontend/templates/components/spinkit-circle.js","clever-sparky-frontend/templates/components/switch-account-modal.js","clever-sparky-frontend/templates/components/test-delete-confirmation.js","clever-sparky-frontend/templates/components/test-event-archive-confirmation.js","clever-sparky-frontend/templates/components/test-event-fitting-dropdown-menu.js","clever-sparky-frontend/templates/components/test-event-fitting-table.js","clever-sparky-frontend/templates/components/test-event-group-dropdown-menu.js","clever-sparky-frontend/templates/components/test-event-group-table.js","clever-sparky-frontend/templates/components/test-event-modal.js","clever-sparky-frontend/templates/components/test-event-table.js","clever-sparky-frontend/templates/components/tours/sequence-element.js","clever-sparky-frontend/templates/components/user-panel.js","clever-sparky-frontend/templates/components/users-dropdown-menu.js","clever-sparky-frontend/templates/components/validated-multi-select.js","clever-sparky-frontend/templates/components/validated-select.js","clever-sparky-frontend/templates/components/wholesaler-info-banner.js","clever-sparky-frontend/templates/components/x-select.js","clever-sparky-frontend/templates/edit.js","clever-sparky-frontend/templates/edit/organisation.js","clever-sparky-frontend/templates/edit/profile.js","clever-sparky-frontend/templates/forgot-password.js","clever-sparky-frontend/templates/forgot-password/index.js","clever-sparky-frontend/templates/forgot-password/success.js","clever-sparky-frontend/templates/groups.js","clever-sparky-frontend/templates/groups/fittings.js","clever-sparky-frontend/templates/groups/fittings/delete-group.js","clever-sparky-frontend/templates/groups/fittings/edit-group.js","clever-sparky-frontend/templates/groups/fittings/show.js","clever-sparky-frontend/templates/groups/fittings/show/details.js","clever-sparky-frontend/templates/groups/fittings/show/maintenance.js","clever-sparky-frontend/templates/groups/fittings/show/test-and-status.js","clever-sparky-frontend/templates/index.js","clever-sparky-frontend/templates/invite.js","clever-sparky-frontend/templates/login.js","clever-sparky-frontend/templates/logout.js","clever-sparky-frontend/templates/new-organisation.js","clever-sparky-frontend/templates/onboarding.js","clever-sparky-frontend/templates/order-item-group.js","clever-sparky-frontend/templates/order-item-group/order-items.js","clever-sparky-frontend/templates/partials/report-modal.js","clever-sparky-frontend/templates/partials/terms.js","clever-sparky-frontend/templates/reset-password.js","clever-sparky-frontend/templates/reset-password/index.js","clever-sparky-frontend/templates/reset-password/success.js","clever-sparky-frontend/templates/signup.js","clever-sparky-frontend/templates/signup/business.js","clever-sparky-frontend/templates/signup/terms.js","clever-sparky-frontend/templates/signup/user.js","clever-sparky-frontend/templates/site-request.js","clever-sparky-frontend/templates/site-requests.js","clever-sparky-frontend/templates/site.js","clever-sparky-frontend/templates/site/deleted-fittings.js","clever-sparky-frontend/templates/site/deleted-fittings/show.js","clever-sparky-frontend/templates/site/deleted-fittings/show/details.js","clever-sparky-frontend/templates/site/deleted-fittings/show/maintenance.js","clever-sparky-frontend/templates/site/deleted-fittings/show/test-and-status.js","clever-sparky-frontend/templates/site/details.js","clever-sparky-frontend/templates/site/faults.js","clever-sparky-frontend/templates/site/faults/show.js","clever-sparky-frontend/templates/site/faults/show/details.js","clever-sparky-frontend/templates/site/faults/show/maintenance.js","clever-sparky-frontend/templates/site/faults/show/test-and-status.js","clever-sparky-frontend/templates/site/fittings.js","clever-sparky-frontend/templates/site/fittings/delete-group.js","clever-sparky-frontend/templates/site/fittings/edit-group.js","clever-sparky-frontend/templates/site/fittings/show.js","clever-sparky-frontend/templates/site/fittings/show/details.js","clever-sparky-frontend/templates/site/fittings/show/maintenance.js","clever-sparky-frontend/templates/site/fittings/show/test-and-status.js","clever-sparky-frontend/templates/site/groups.js","clever-sparky-frontend/templates/site/shopping-cart.js","clever-sparky-frontend/templates/site/test-events.js","clever-sparky-frontend/templates/sites.js","clever-sparky-frontend/templates/support.js","clever-sparky-frontend/templates/terms.js","clever-sparky-frontend/templates/test-event-group.js","clever-sparky-frontend/templates/test-event-group/fittings.js","clever-sparky-frontend/templates/test-event-group/fittings/show.js","clever-sparky-frontend/templates/test-event-group/fittings/show/details.js","clever-sparky-frontend/templates/test-event-group/fittings/show/maintenance.js","clever-sparky-frontend/templates/test-event-group/fittings/show/test-and-status.js","clever-sparky-frontend/templates/test-event.js","clever-sparky-frontend/templates/test-event/groups.js","clever-sparky-frontend/templates/user.js","clever-sparky-frontend/templates/users.js","clever-sparky-frontend/uploaders/csv.js","clever-sparky-frontend/util-tests/collection-action.js","clever-sparky-frontend/util-tests/member-action.js","clever-sparky-frontend/util/s3-client.js","clever-sparky-frontend/util/s3-signed-url.js","clever-sparky-frontend/utils/can-use-dom.js","clever-sparky-frontend/utils/i18n/compile-template.js","clever-sparky-frontend/utils/i18n/missing-message.js","clever-sparky-frontend/utils/object-transforms.js","clever-sparky-frontend/validators/alias.js","clever-sparky-frontend/validators/array-length.js","clever-sparky-frontend/validators/belongs-to.js","clever-sparky-frontend/validators/change-password-validator.js","clever-sparky-frontend/validators/collection.js","clever-sparky-frontend/validators/confirmation.js","clever-sparky-frontend/validators/date.js","clever-sparky-frontend/validators/dependent.js","clever-sparky-frontend/validators/ds-error.js","clever-sparky-frontend/validators/exclusion.js","clever-sparky-frontend/validators/forgot-password-validator.js","clever-sparky-frontend/validators/format.js","clever-sparky-frontend/validators/forms/batch-move-confirmation.js","clever-sparky-frontend/validators/forms/edit-user-validator.js","clever-sparky-frontend/validators/forms/fitting.js","clever-sparky-frontend/validators/forms/invite-to-site-form-validator.js","clever-sparky-frontend/validators/forms/invite-user.js","clever-sparky-frontend/validators/forms/ledtest.js","clever-sparky-frontend/validators/forms/maintenance.js","clever-sparky-frontend/validators/forms/quick-test-defaults.js","clever-sparky-frontend/validators/forms/report-form.js","clever-sparky-frontend/validators/forms/site.js","clever-sparky-frontend/validators/forms/test-event.js","clever-sparky-frontend/validators/forms/update-fitting-details.js","clever-sparky-frontend/validators/group-validator.js","clever-sparky-frontend/validators/has-many.js","clever-sparky-frontend/validators/inclusion.js","clever-sparky-frontend/validators/length.js","clever-sparky-frontend/validators/login-validator.js","clever-sparky-frontend/validators/messages.js","clever-sparky-frontend/validators/number.js","clever-sparky-frontend/validators/organisation-validator.js","clever-sparky-frontend/validators/presence.js","clever-sparky-frontend/validators/reset-password-validator.js","clever-sparky-frontend/validators/site-validator.js","clever-sparky-frontend/validators/user-validator.js","vendor/ember-cli/app-suffix.js","vendor/ember-cli/app-config.js","vendor/ember-cli/app-boot.js"],"sourcesContent":["\"use strict\";\n\n\n","define('clever-sparky-frontend/abilities/business-profile', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canModify: computed('model', function () {\n      return this.get('model') && !this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/abilities/delete-site', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canView: computed('model', 'model.isTechnician', function () {\n      return !this.get('model') || this.get('model') && !this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/abilities/deleted-fittings', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canView: computed('model', function () {\n      return !this.get('model') || this.get('model') && !this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/abilities/site-permissions', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canModify: computed('model', function () {\n      return this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/abilities/transfer-site', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canView: computed('model', 'model.isTechnician', function () {\n      return !this.get('model') || !this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/abilities/user-management', ['exports', 'ember', 'ember-can'], function (exports, _ember, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _emberCan.Ability.extend({\n    canView: computed('model', 'model.isTechnician', function () {\n      return this.get('model') && !this.get('model.isTechnician');\n    })\n  });\n});","define('clever-sparky-frontend/adapters/access-request', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=user,site';\n    },\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/access-requests?include=user,site';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/admin', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQueryRecord: function urlForQueryRecord() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/admin';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/application', ['exports', 'ember-data', 'ember', 'ember-simple-auth/mixins/data-adapter-mixin'], function (exports, _emberData, _ember, _dataAdapterMixin) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  var JSONAPIAdapter = _emberData.default.JSONAPIAdapter;\n  exports.default = JSONAPIAdapter.extend(_dataAdapterMixin.default, {\n    authorizer: 'authorizer:cleversparky',\n\n    host: ENV.api.host,\n    namespace: ENV.api.namespace,\n\n    ajaxOptions: function ajaxOptions() {\n      var _this = this;\n\n      var authorizer = this.get('authorizer');\n      var hash = this._super.apply(this, arguments);\n\n      hash.beforeSend = function (xhr) {\n        _this.get('session').authorize(authorizer, function (identification, token) {\n          xhr.setRequestHeader('Content-Type', 'application/json');\n          xhr.setRequestHeader('X-Session-id', identification);\n          xhr.setRequestHeader('X-Session-Token', token);\n        });\n      };\n      return hash;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/employment', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=invite,user,organisation';\n    },\n    urlForQuery: function urlForQuery(query) {\n      var url = ENV.api.host + '/' + ENV.api.namespace + '/users/me/employments';\n\n      if (query.currentOrganisationId) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/employments?include=invite,user';\n      }\n\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/fitting', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=latest-test,maintenances,group';\n    },\n    urlForQuery: function urlForQuery(query) {\n      var url = '';\n\n      if (query.allfittingsb === 'allfittings') {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/sites/' + query.siteid + '/allfittings';\n      }\n      if (query.group) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/groups/' + query.group + '/fittings';\n      } else {\n        if (query.type === 'faulty-fittings') {\n          url = ENV.api.host + '/' + ENV.api.namespace + '/sites/' + query.site + '/faulty-fittings';\n        } else if (query.type === 'deleted-fittings') {\n          url = ENV.api.host + '/' + ENV.api.namespace + '/sites/' + query.site + '/deleted-fittings';\n        }\n      }\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/group', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      var url = '';\n      if (query.testEvent) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/test-events/' + query.testEvent + '/missing-groups';\n      } else if (query.order) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/orders/' + query.order + '/groups';\n      } else {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/sites/' + query.site + '/groups';\n      }\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/invite', ['exports', 'clever-sparky-frontend/adapters/application', 'ember'], function (exports, _application, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=organisation';\n    },\n    urlForQuery: function urlForQuery(query) {\n      // eslint-disable-next-line quotes\n      return ENV.api.host + '/' + ENV.api.namespace + '/invitetransfer/' + query;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/ledtest', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV,\n      String = _ember.default.String;\n  exports.default = _application.default.extend({\n    pathForType: function pathForType() {\n      return String.pluralize('test');\n    },\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/fittings/' + query.fitting + '/tests';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/order-item', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      var url = '';\n      if (query.order) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/orders/' + query.order + '/order-items';\n      }\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/organisation-analytics', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQueryRecord: function urlForQueryRecord(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/analytics';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/organisation', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      var url = '';\n\n      if (query.filter.role) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/users/me/organisations';\n      }\n\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/site-permission', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.organisationId + '/site-permissions?include=user,site';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/site', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      var url = ENV.api.host + '/' + ENV.api.namespace + '/users/me/sites?include=test_events,fittings';\n\n      if (query.userId) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/users/' + query.userId + '/restricted-sites?';\n      } else if (query.currentOrganisationId) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/sites?include=test_events,fittings';\n      }\n\n      return url;\n    },\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=current-order';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/template', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/templates/' + query.user_id;\n    }\n  });\n});","define('clever-sparky-frontend/adapters/test-event-fitting', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=latest-test,maintenances';\n    },\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/test-event-groups/' + query.testEventGroup + '/test-event-fittings?include=fitting';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/test-event-group', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this._super.apply(this, arguments) + '?include=test-event';\n    },\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/test-events/' + query.testEvent + '/test-event-groups?include=group';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/test-event', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery(query) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/sites/' + query.site + '/test-events';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/tooltip-event', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForQuery: function urlForQuery() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/users/me/tooltip-events';\n    },\n    urlForCreateRecord: function urlForCreateRecord() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/tooltip-events';\n    }\n  });\n});","define('clever-sparky-frontend/adapters/user', ['exports', 'ember', 'clever-sparky-frontend/adapters/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _application.default.extend({\n    urlForFindRecord: function urlForFindRecord() {\n      return this.host + '/' + this.namespace + '/users/me';\n    },\n    urlForUpdateRecord: function urlForUpdateRecord() {\n      return this.host + '/' + this.namespace + '/users/me';\n    },\n    urlForDeleteRecord: function urlForDeleteRecord() {\n      return this.host + '/' + this.namespace + '/users/me';\n    },\n    urlForQuery: function urlForQuery(query) {\n      var url = ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/users';\n\n      if (query.role && query.currentOrganisationId) {\n        url = ENV.api.host + '/' + ENV.api.namespace + '/organisations/' + query.currentOrganisationId + '/users?filter[role]=' + query.role;\n      }\n\n      return url;\n    }\n  });\n});","define('clever-sparky-frontend/ajax-requests/service', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV,\n      RSVP = _ember.default.RSVP;\n  exports.default = Service.extend({\n    holdvaribles: inject.service('holdvaribles'),\n    ajax: _ember.default.inject.service(),\n    _fittingLookupMethod: 'POST',\n    getUrl: function getUrl(fileName, fileType) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve) {\n\n        var url = ENV.api.host + '/api/v1/signed_request';\n\n        var bucketbool = _this.get('holdvaribles').showCurrentPhotoUploadSignatureBool();\n        var tmpvar = '';\n        if (bucketbool) {\n          tmpvar = 'signature';\n        } else {\n          tmpvar = 'logo';\n        }\n\n        _this.get('ajax').post(url, { method: 'POST', data: { file: fileName, type: fileType, bucket: tmpvar } }).then(function (response) {\n          // `response` is the data from the server\n\n          return response;\n        }).catch(function (error) {\n          resolve(error);\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/app', ['exports', 'ember', 'clever-sparky-frontend/resolver', 'ember-load-initializers', 'clever-sparky-frontend/config/environment'], function (exports, _ember, _resolver, _emberLoadInitializers, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Application = _ember.default.Application;\n\n\n  var App = void 0;\n\n  App = Application.extend({\n    modulePrefix: _environment.default.modulePrefix,\n    podModulePrefix: _environment.default.podModulePrefix,\n    LOG_TRANSITIONS_INTERNAL: true,\n\n    // LOG_ACTIVE_GENERATION: true,\n    // LOG_VIEW_LOOKUPS: true,\n    // LOG_RESOLVER: true,\n    Resolver: _resolver.default\n  });\n  // RSVP.on('error', function(error) {\n  //   // Ember.assert(error, false);\n  // });\n  (0, _emberLoadInitializers.default)(App, _environment.default.modulePrefix);\n\n  exports.default = App;\n});","define('clever-sparky-frontend/authenticators/cleversparky', ['exports', 'ember', 'ember-simple-auth/authenticators/devise'], function (exports, _ember, _devise) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject,\n      run = _ember.default.run,\n      ENV = _ember.default.ENV;\n  exports.default = _devise.default.extend({\n\n    store: inject.service(),\n\n    serverTokenEndpoint: ENV.api.host + '/' + ENV.api.namespace + '/sessions',\n\n    resourceName: 'session',\n    userId: 'user_id',\n\n    identificationAttributeName: 'session_id',\n\n    authenticate: function authenticate(identification, password) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        var session = _this.get('store').createRecord('session', {\n          email: identification,\n          password: password\n        });\n\n        return session.save().then(function (session) {\n          var _getProperties = _this.getProperties('resourceName', 'identificationAttributeName', 'tokenAttributeName', 'userId'),\n              resourceName = _getProperties.resourceName,\n              identificationAttributeName = _getProperties.identificationAttributeName,\n              tokenAttributeName = _getProperties.tokenAttributeName,\n              userId = _getProperties.userId;\n\n          var data = {};\n          data[resourceName] = {};\n          data[resourceName][userId] = session.get('user.id');\n          data[resourceName][identificationAttributeName] = session.get('id');\n          data[resourceName][tokenAttributeName] = session.get('authenticationToken');\n\n          run(null, resolve, data);\n        }, function (adapterError) {\n          run(null, reject, adapterError.errors);\n        });\n      });\n    },\n    adminauthenticate: function adminauthenticate(identification, password, userid) {\n      var _this2 = this;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        var session = _this2.get('store').createRecord('session', {\n          email: identification,\n          password: password,\n          userid: userid\n        });\n\n        return session.save().then(function (session) {\n          var _getProperties2 = _this2.getProperties('resourceName', 'identificationAttributeName', 'tokenAttributeName', 'userId'),\n              resourceName = _getProperties2.resourceName,\n              identificationAttributeName = _getProperties2.identificationAttributeName,\n              tokenAttributeName = _getProperties2.tokenAttributeName,\n              userId = _getProperties2.userId;\n\n          var data = {};\n          data[resourceName] = {};\n          data[resourceName][userId] = session.get('user.id');\n          data[resourceName][identificationAttributeName] = session.get('id');\n          data[resourceName][tokenAttributeName] = session.get('authenticationToken');\n\n          run(null, resolve, data);\n        }, function (adapterError) {\n          run(null, reject, adapterError.errors);\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/authorizers/cleversparky', ['exports', 'ember', 'ember-simple-auth/authorizers/devise'], function (exports, _ember, _devise) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var isEmpty = _ember.default.isEmpty;\n  exports.default = _devise.default.extend({\n\n    resourceName: 'session',\n\n    identificationAttributeName: 'session_id',\n\n    authorize: function authorize(data, block) {\n      var _getProperties = this.getProperties('tokenAttributeName', 'identificationAttributeName', 'resourceName'),\n          tokenAttributeName = _getProperties.tokenAttributeName,\n          identificationAttributeName = _getProperties.identificationAttributeName,\n          resourceName = _getProperties.resourceName;\n\n      var userToken = data[resourceName][tokenAttributeName];\n      var userIdentification = data[resourceName][identificationAttributeName];\n\n      if (!isEmpty(userToken) && !isEmpty(userIdentification)) {\n        block(userIdentification, userToken);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/breakpoints', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    mobile: '(max-width: 767px)',\n    tablet: '(min-width: 768px) and (max-width: 991px)',\n    desktop: '(min-width: 992px)'\n  };\n});","define('clever-sparky-frontend/components/auth-validated-input', ['exports', 'clever-sparky-frontend/components/validated-input'], function (exports, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _validatedInput.default.extend({\n    focusOut: function focusOut() {\n      this._super.apply(this, arguments);\n      this.set('showValidations', true);\n    }\n  });\n});","define('clever-sparky-frontend/components/auth-validated-select', ['exports', 'clever-sparky-frontend/components/validated-select'], function (exports, _validatedSelect) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _validatedSelect.default.extend({\n\n    classNames: ['auth-validated-select'],\n\n    layoutName: 'components/validated-select',\n\n    focusOut: function focusOut() {\n      this._super.apply(this, arguments);\n      this.set('showValidations', true);\n    }\n  });\n});","define('clever-sparky-frontend/components/autocomplete-input', ['exports', 'ember-cli-autocomplete-input/components/autocomplete-input'], function (exports, _autocompleteInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _autocompleteInput.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/autocomplete-result-item', ['exports', 'ember-cli-autocomplete-input/components/autocomplete-result-item'], function (exports, _autocompleteResultItem) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _autocompleteResultItem.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/batch-delete-confirmation', ['exports', 'ember', 'clever-sparky-frontend/helpers/pluralizer'], function (exports, _ember, _pluralizer) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    batchName: '',\n\n    isQueryPending: false,\n\n    didInsertElement: function didInsertElement() {\n      this._super.apply(this, arguments);\n      this.set('batchLength', this.get('batch.length'));\n    },\n\n\n    batchLength: null,\n\n    uppercaseBatchName: computed('batchName', function () {\n      return this.get('batchName').capitalize();\n    }),\n\n    actionText: computed('uppercaseBatchName', function () {\n      return 'Back to ' + (0, _pluralizer.pluralizer)([null, this.get('uppercaseBatchName')]);\n    }),\n\n    actions: {\n      confirmBatchDelete: function confirmBatchDelete(batch) {\n        this.set('isQueryPending', true);\n        this.attrs.confirmBatchDelete(batch);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/batch-delete-error', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    batchName: '',\n\n    batchLength: null,\n\n    uppercaseBatchName: computed('batchName', function () {\n      return this.get('batchName').capitalize();\n    })\n\n  });\n});","define('clever-sparky-frontend/components/batch-move-confirmation', ['exports', 'ember', 'clever-sparky-frontend/validators/forms/batch-move-confirmation'], function (exports, _ember, _batchMoveConfirmation) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_batchMoveConfirmation.BatchMoveValidations, {\n\n    classNames: ['batch-move-confirmation'],\n\n    selectedGroup: null,\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    otherGroups: computed.filter('groups', function (group) {\n      return group != this.get('group');\n    }),\n\n    groupOptions: computed.map('otherGroups', function (group) {\n      return { label: group.get('name'), value: group };\n    }),\n\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.set('batchLength', this.get('batch.length'));\n    },\n\n\n    batchLength: null,\n\n    actions: {\n      confirmBatchMove: function confirmBatchMove(batch) {\n        this.set('didValidate', true);\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.attrs.confirmBatchMove(batch, this.get('selectedGroup.id'));\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/checkout-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n    // Attributes\n\n    isQueryPending: false,\n\n    classNames: ['checkout-confirmation'],\n\n    // Properties\n\n    batchLength: computed.alias('batch.length'),\n\n    actions: {\n      checkout: function checkout(batch) {\n        this.set('isQueryPending', true);\n        this.attrs.confirmCheckout(batch);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/create-test-event-modal', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    // Attributes\n    isShowingTestEventForm: true,\n\n    isQueryPending: false,\n\n    // Methods\n    closeModal: function closeModal() {},\n\n\n    actions: {\n      submitTestEventDetails: function submitTestEventDetails(testEvent) {\n        this.set('testEvent', testEvent);\n        this.set('isShowingTestEventForm', false);\n      },\n      submitQuickTestDefaults: function submitQuickTestDefaults(testEvent) {\n        this.set('isQueryPending', true);\n        this.attrs.save(testEvent);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/date-picker', ['exports', 'ember', 'moment'], function (exports, _ember, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['date-picker'],\n\n    targetToAttach: null,\n\n    isOpen: false,\n\n    maxDate: null,\n\n    minDate: null,\n\n    date: null,\n\n    isShowingDays: true,\n\n    calendarAttachmentPosition: 'top center',\n\n    targetAttachmentPosition: 'bottom center',\n\n    monthGrid: [[{ label: 'JAN', value: 0 }, { label: 'FEB', value: 1 }, { label: 'MAR', value: 2 }], [{ label: 'APR', value: 3 }, { label: 'MAY', value: 4 }, { label: 'JUN', value: 5 }], [{ label: 'JUL', value: 6 }, { label: 'AUG', value: 7 }, { label: 'SEP', value: 8 }], [{ label: 'OCT', value: 9 }, { label: 'NOV', value: 10 }, { label: 'DEC', value: 11 }]],\n\n    didInsertElement: function didInsertElement() {\n      var _this = this;\n\n      var $input = this.$('.date-picker-input');\n      this.set('targetToAttach', $input);\n\n      $input.on('focusin', function () {\n        _this.send('open');\n      });\n    },\n\n\n    actions: {\n      showMonths: function showMonths() {\n        this.set('isShowingDays', false);\n      },\n      open: function open() {\n        this.set('isOpen', true);\n        if (this.get('value')) {\n          this.set('center', this.get('value'));\n        } else {\n          this.set('center', (0, _moment.default)());\n        }\n      },\n      dateSelected: function dateSelected(e) {\n        this.set('date', e.moment);\n        this.set('value', e.moment.format('YYYY-MM-DD'));\n\n        this.send('close');\n      },\n      monthSelected: function monthSelected(calendar, center, monthObj) {\n        calendar.actions.changeCenter((0, _moment.default)(center).month(monthObj.value), calendar);\n        this.set('isShowingDays', true);\n      },\n      close: function close() {\n        this.set('isOpen', false);\n        this.set('isShowingDays', true);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/delete-account-modal', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    actions: {\n      deleteAccount: function deleteAccount(account) {\n        this.attrs.deleteAccount(account);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/deleted-fitting-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    hasNoRecords: computed.equal('deletedFittings.length', 0),\n\n    actions: {\n      showFitting: function showFitting(fitting) {\n        this.sendAction('showFittingDetails', fitting);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/disabled-form-input', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['disabled-form-input']\n\n  });\n});","define('clever-sparky-frontend/components/dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/mixins/click-outside', 'clever-sparky-frontend/mixins/escape-keypress'], function (exports, _ember, _clickOutside, _escapeKeypress) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      ENV = _ember.default.ENV,\n      $ = _ember.default.$,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Component.extend(_clickOutside.default, _escapeKeypress.default, {\n\n    // Services\n\n    features: inject.service(),\n\n    // Attributes\n\n    triggerContent: '',\n\n    clickOutsideParentElementSelector: '.dropdown-menu',\n\n    isOpen: false,\n\n    csvTemplatePath: ENV.csvTemplatePath,\n\n    dropdownMenuTourNames: ['userDropdownMenu', 'userDropdownMenuTechnician'],\n\n    // properties\n\n    isGuidedTourEnabled: computed(function () {\n      return this.get('features').isEnabled('guided-tour');\n    }),\n\n    // Methods\n\n    onClickOutside: function onClickOutside() {\n      if (!$('#shepherdOverlay').is(':visible')) {\n        // don't close dropdown menu when user-dropdown-menu tour is active\n        this.send('close');\n      }\n    },\n    onEscKeypress: function onEscKeypress() {\n      this.send('close');\n    },\n\n\n    actions: {\n      trigger: function trigger() {\n        this.set('isOpen', true);\n      },\n      close: function close() {\n        this.set('isOpen', false);\n      },\n      transitionTo: function transitionTo(routeName) {\n        this.attrs.transitionAction(routeName);\n        this.send('close');\n      },\n      openSwitchAccountModal: function openSwitchAccountModal() {\n        this.attrs.openSwitchAccountModal();\n        this.send('close');\n      },\n      resetTooltips: function resetTooltips() {\n        this.attrs.resetTooltips();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/ember-chart', ['exports', 'ember-cli-chart/components/ember-chart'], function (exports, _emberChart) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _emberChart.default;\n});","define('clever-sparky-frontend/components/ember-progress-bar', ['exports', 'ember-progress-bar/components/ember-progress-bar'], function (exports, _emberProgressBar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _emberProgressBar.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/ember-tether', ['exports', 'ember-tether/components/ember-tether'], function (exports, _emberTether) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _emberTether.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/employment-table', ['exports', 'ember', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _ember, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend(_optionLookup.default, {\n\n    actions: {\n      showUserDetail: function showUserDetail(user) {\n        this.sendAction('showUserDetail', user);\n      },\n      cancelInvite: function cancelInvite(invite) {\n        this.set('isQueryPending', true);\n        this.sendAction('cancelInvite', invite);\n      },\n      changeUserType: function changeUserType(employment, value) {\n        if (value != employment.get('role')) {\n          this.set('isQueryPending', true);\n          employment.set('role', value);\n          this.sendAction('changeUserType', employment);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/fault-table', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject,\n      observer = _ember.default.observer,\n      $ = _ember.default.$;\n  exports.default = Component.extend(_handleError.default, {\n    // Services\n\n    features: inject.service(),\n\n    // Attributes\n\n    isOrderingReplacements: false,\n\n    isSelectAllFittings: null,\n\n    isSelectAllComponents: null,\n\n    isSelectAllDecals: null,\n\n    // Properties\n\n    hasNoRecords: computed.equal('faultyFittings.length', 0),\n\n    isShoppingCartEnabled: computed(function () {\n      return this.get('features').isEnabled('shoppingCart');\n    }),\n\n    // Observers\n\n    isSelectAllFittingsObserver: observer('isSelectAllFittings', function () {\n      if (this.get('isSelectAllFittings')) {\n        $.each($('.replacement-fitting-option .replacement-option-button .button.unselected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllFittings') === false) {\n        $.each($('.replacement-fitting-option .replacement-option-button .button.selected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    isSelectAllComponentsObserver: observer('isSelectAllComponents', function () {\n      if (this.get('isSelectAllComponents')) {\n        $.each($('.replacement-faulty-component-option .replacement-option-button .button.unselected:visible'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllComponents') === false) {\n        $.each($('.replacement-faulty-component-option .replacement-option-button .button.selected:visible'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    isSelectAllDecalsObserver: observer('isSelectAllDecals', function () {\n      if (this.get('isSelectAllDecals')) {\n        $.each($('.replacement-decal-option .replacement-option-button .button.unselected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllDecals') === false) {\n        $.each($('.replacement-decal-option .replacement-option-button .button.selected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    actions: {\n      showFitting: function showFitting(fitting) {\n        this.sendAction('showFittingDetails', fitting);\n      },\n      showOrderReplacements: function showOrderReplacements() {\n        this.attrs.backToFaultFittingsIndex();\n        this.set('isOrderingReplacements', true);\n      },\n      hideOrderReplacements: function hideOrderReplacements() {\n        this.set('isOrderingReplacements', false);\n        this.set('isSelectAllFittings', null);\n        this.set('isSelectAllComponents', null);\n        this.set('isSelectAllDecals', null);\n        this.showSuccessFlash('Cart successfully updated', { timeout: 1000 });\n        this.attrs.refreshRoute();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/faults-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _ember, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _dropdownMenu.default.extend({\n    // Attributes\n    clickOutsideParentElementSelector: '.faults-dropdown-menu',\n\n    classNames: ['dropdown-menu', 'faults-dropdown-menu'],\n\n    // Properties\n\n    hasFaultyFittings: computed.bool('faultyFittings.length'),\n\n    hasNoFaultyFittings: computed.not('hasFaultyFittings'),\n\n    actions: {\n      orderReplacements: function orderReplacements() {\n        this.attrs.showOrderReplacements();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/file-field', ['exports', 'ember-uploader/components/file-field'], function (exports, _fileField) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _fileField.default;\n});","define('clever-sparky-frontend/components/file-picker', ['exports', 'ember-cli-file-picker/components/file-picker'], function (exports, _filePicker) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _filePicker.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/file-upload-error-modal', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      ENV = _ember.default.ENV;\n  exports.default = Component.extend({\n\n    csvTemplatePath: ENV.csvTemplatePath\n\n  });\n});","define('clever-sparky-frontend/components/file-upload-input', ['exports', 'ember', 'ember-uploader'], function (exports, _ember, _emberUploader) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var emberIsEmpty = _ember.default.isEmpty;\n  exports.default = _emberUploader.default.FileField.extend({\n    elementId: 'file-upload',\n\n    filesDidChange: function filesDidChange(files) {\n      if (!emberIsEmpty(files)) {\n        this.attrs.uploadCsv(files[0]);\n        this.$().val(null);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/file-upload-progress-bar', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n    classNames: ['file-upload-progress-bar'],\n\n    classNameBindings: ['showProgressBar:show'],\n\n    intervalDuration: 15,\n\n    isWaiting: computed.equal('uploadStatus', 'waiting'),\n\n    showCancel: computed.equal('uploadStatus', 'preparing'),\n\n    isAborted: computed.equal('uploadStatus', 'aborted'),\n\n    isError: computed.equal('uploadStatus', 'error'),\n\n    isFinished: computed.equal('uploadStatus', 'finished'),\n\n    isProgressFinished: computed.equal('progress', 100),\n\n    showSuccessMessage: computed.and('isFinished', 'isProgressFinished'),\n\n    isErrorAndProgressFinished: computed.and('isError', 'isProgressFinished'),\n\n    showProgressBar: computed('isWaiting', 'isAborted', 'isErrorAndProgressFinished', function () {\n      return !this.get('isWaiting') && !this.get('isAborted') && !this.get('isErrorAndProgressFinished');\n    }),\n\n    progressLabel: computed('progress', function () {\n      return this.get('progress').toFixed(0);\n    }),\n\n    displayProgress: computed('progress', function () {\n      return this.get('progress') / 100;\n    })\n  });\n});","define('clever-sparky-frontend/components/file-uploader', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    // Component Attributes\n\n    classNames: ['file-uploader']\n  });\n});","define('clever-sparky-frontend/components/fitting-delete-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['fitting-delete-confirmation'],\n\n    isQueryPending: false,\n\n    actions: {\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      },\n      deleteFitting: function deleteFitting() {\n        this.set('isQueryPending', true);\n        this.sendAction('deleteFitting');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/fitting-info-banner', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    // Attributes\n\n    classNames: ['fitting-info-banner']\n\n  });\n});","define('clever-sparky-frontend/components/fitting-panel', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      observer = _ember.default.observer,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    classNames: ['fitting-panel'],\n\n    viewFittingPanelTourNames: ['viewFittingPanel'],\n\n    showSuccessFlash: observer('showSuccess', function () {\n      var _this = this;\n\n      if (this.get('showSuccess')) {\n        this.set('showSuccessConfirmation', true);\n        setTimeout(function () {\n          _this.set('showSuccessConfirmation', false);\n          _this.set('showSuccess', false);\n        }, 1500);\n      }\n    }),\n\n    shouldShowFaultyIndicator: computed('type', 'fitting.faulty', function () {\n      return this.get('type') !== 'test-event-fitting' && this.get('fitting.faulty');\n    }),\n\n    tabLinks: computed('type', function () {\n      switch (this.get('type')) {\n        case 'faults':\n          return {\n            fittingLink: 'site.faults.show.details',\n            testAndStatusLink: 'site.faults.show.test-and-status',\n            maintenanceLink: 'site.faults.show.maintenance'\n          };\n        case 'deleted-fittings':\n          return {\n            fittingLink: 'site.deleted-fittings.show.details',\n            testAndStatusLink: 'site.deleted-fittings.show.test-and-status',\n            maintenanceLink: 'site.deleted-fittings.show.maintenance'\n          };\n        case 'test-event-fitting':\n          return {\n            fittingLink: 'test-event-group.fittings.show.details',\n            testAndStatusLink: 'test-event-group.fittings.show.test-and-status',\n            maintenanceLink: 'test-event-group.fittings.show.maintenance'\n          };\n        default:\n          return {\n            fittingLink: 'groups.fittings.show.details',\n            testAndStatusLink: 'groups.fittings.show.test-and-status',\n            maintenanceLink: 'groups.fittings.show.maintenance'\n          };\n      }\n    }),\n\n    actions: {\n      edit: function edit() {\n        this.sendAction('edit');\n      },\n      delete: function _delete() {\n        this.sendAction('delete');\n      },\n      reinstate: function reinstate() {\n        this.sendAction('reinstate');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/fitting-panelsite', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      observer = _ember.default.observer,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    classNames: ['fitting-panel'],\n\n    viewFittingPanelTourNames: ['viewFittingPanel'],\n\n    showSuccessFlash: observer('showSuccess', function () {\n      var _this = this;\n\n      if (this.get('showSuccess')) {\n        this.set('showSuccessConfirmation', true);\n        setTimeout(function () {\n          _this.set('showSuccessConfirmation', false);\n          _this.set('showSuccess', false);\n        }, 1500);\n      }\n    }),\n\n    shouldShowFaultyIndicator: computed('type', 'fitting.faulty', function () {\n      return this.get('type') !== 'test-event-fitting' && this.get('fitting.faulty');\n    }),\n\n    tabLinks: computed('type', function () {\n      switch (this.get('type')) {\n        case 'faults':\n          return {\n            fittingLink: 'site.faults.show.details',\n            testAndStatusLink: 'site.faults.show.test-and-status',\n            maintenanceLink: 'site.faults.show.maintenance'\n          };\n        case 'deleted-fittings':\n          return {\n            fittingLink: 'site.deleted-fittings.show.details',\n            testAndStatusLink: 'site.deleted-fittings.show.test-and-status',\n            maintenanceLink: 'site.deleted-fittings.show.maintenance'\n          };\n        case 'test-event-fitting':\n          return {\n            fittingLink: 'test-event-group.fittings.show.details',\n            testAndStatusLink: 'test-event-group.fittings.show.test-and-status',\n            maintenanceLink: 'test-event-group.fittings.show.maintenance'\n          };\n        default:\n          return {\n            fittingLink: 'site.fittings.show.details',\n            testAndStatusLink: 'site.fittings.show.test-and-status',\n            maintenanceLink: 'site.fittings.show.maintenance'\n          };\n      }\n    }),\n\n    actions: {\n      edit: function edit() {\n        this.sendAction('edit');\n      },\n      delete: function _delete() {\n        this.sendAction('delete');\n      },\n      reinstate: function reinstate() {\n        this.sendAction('reinstate');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/fitting-reinstate-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['fitting-reinstate-confirmation'],\n\n    isQueryPending: false,\n\n    actions: {\n      reinstateFitting: function reinstateFitting() {\n        this.set('isQueryPending', true);\n        this.attrs.reinstateFitting();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/fitting-table', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      observer = _ember.default.observer,\n      $ = _ember.default.$,\n      ENV = _ember.default.ENV,\n      Emb = _ember.default.Emb,\n      inject = _ember.default.inject;\n  exports.default = Component.extend(_handleError.default, {\n\n    // Attributes\n    holdvaribles: inject.service('holdvaribles'),\n\n    selectedFittings: [],\n\n    isDeletingFittings: false,\n\n    isListSorted: false,\n\n    fitleredbynamebool: false,\n\n    isMovingFittings: false,\n\n    isOrderingReplacements: false,\n\n    isSelectAllFittings: null,\n\n    isSelectAllComponents: null,\n\n    isSelectAllDecals: null,\n\n    viewGroupTourNames: ['viewGroup'],\n\n    viewFittingTourNames: ['viewFitting'],\n    // Properties\n    sortAscending: false,\n\n    sortProperties: ['id'],\n    sortPropertiesDR: ['updatedAt'],\n\n    arrangedContent: _ember.default.computed('fittings', 'sortPropertiesDR', 'sortAscending', function () {\n      var _this2 = this;\n\n      return this.get('fittings').toArray().sort(function (a, b) {\n        var sortProperty = _this2.get('sortProperties')[0];\n        if (_this2.get('sortAscending')) {\n          var newa = parseInt(a.get(sortProperty).match(/\\d+/g));\n          var newb = parseInt(b.get(sortProperty).match(/\\d+/g));\n\n          if (newa > newb) {\n            return 1;\n          } else {\n            return -1;\n          }\n        } else {\n          var _newa = parseInt(a.get(sortProperty).match(/\\d+/g));\n          var _newb = parseInt(b.get(sortProperty).match(/\\d+/g));\n\n          if (_newa < _newb) {\n            return 1;\n          } else {\n            return -1;\n          }\n        }\n      });\n    }),\n\n    noteTitle: '',\n\n    hasNoRecords: computed.equal('fittings.length', 0),\n\n    noFittingsSelected: computed.equal('selectedFittings.length', 0),\n\n    isSelectingFittings: computed.or('isDeletingFittings', 'isMovingFittings'),\n\n    isActioningFittings: computed.or('isSelectingFittings', 'isOrderingReplacements'),\n\n    isCommissioned: computed.reads('commissioned'),\n\n    isNotCommissioned: computed.not('isCommissioned'),\n\n    isgroups: false,\n\n    modelLength: _ember.default.computed('model', function () {\n      return this.get('model').length;\n    }),\n\n    allfittings: false,\n    mod: computed.alias('model.data'),\n\n    count: 0,\n\n    commissionedFittingsCount: computed.reads('group.commissionedFittingsCount'),\n\n    notCommissionedFittingsCount: computed.reads('group.notCommissionedFittingsCount'),\n\n    isEmptyGroup: computed('commissionedFittingsCount', 'notCommissionedFittingsCount', function () {\n      return this.get('commissionedFittingsCount') + this.get('notCommissionedFittingsCount') === 0;\n    }),\n    didInsertElement: function didInsertElement() {\n      var _this3 = this;\n\n      var local = localStorage.getItem('ember_simple_auth-session');\n      var test = JSON.parse(local);\n      var tt = test['authenticated'];\n      var tt2 = tt['session'];\n      var sessionID = tt2['session_id'];\n      var token = tt2['token'];\n\n      var url = ENV.api.host + '/' + ENV.api.namespace + '/filtersapi';\n      var groupid = this.get('group');\n      if (groupid) {\n        this.set('isgroups', true);\n      }\n\n      if (groupid) {\n\n        $.ajax({\n          url: url,\n          method: 'POST',\n          data: JSON.stringify({\n            data: {\n              attributes: {\n                usage: 'get',\n                groupid: groupid.id\n              },\n              type: 'sessions'\n            }\n          }),\n          headers: {\n            'Content-Type': 'application/json',\n            'X-Session-Id': sessionID,\n            'X-Session-Token': token\n          },\n          success: function success() {},\n\n          error: function error(resp) {\n            var thistxt = resp.responseText;\n\n            if (thistxt === 'Decending') {\n              _this3.set('sortAscending', false);\n            } else {\n              _this3.set('sortAscending', true);\n            }\n\n            _this3.set('sortProperties', ['deviceReference']);\n\n            _this3.set('fittings', _this3.get('arrangedContent'));\n          }\n        });\n      }\n    },\n    checkFilterMatch: function checkFilterMatch(theObject, str) {\n      var match = void 0;\n      match = false;\n      if (theObject.get('deviceReference') == str) {\n        return true;\n      }\n      return match;\n    },\n\n    fitleredbyname: function () {\n\n      return this.get('fittings').filter(function (_this) {\n        return function (theObject) {\n          if (_this.get('noteTitle')) {\n            return _this.checkFilterMatch(theObject, _this.get('noteTitle'));\n          } else {\n            return true;\n          }\n        };\n      }(this));\n    }.property('noteTitle', 'sortProperties'),\n\n    hasFaultyComponents: computed('fittings.@each.faulty', function () {\n      return this.get('fittings').isAny('faulty', true);\n    }),\n\n    // Observers\n\n    isSelectAllFittingsObserver: observer('isSelectAllFittings', function () {\n      if (this.get('isSelectAllFittings')) {\n        $.each($('.replacement-fitting-option .replacement-option-button .button.unselected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllFittings') === false) {\n        $.each($('.replacement-fitting-option .replacement-option-button .button.selected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    isSelectAllComponentsObserver: observer('isSelectAllComponents', function () {\n      if (this.get('isSelectAllComponents')) {\n        $.each($('.replacement-faulty-component-option .replacement-option-button .button.unselected:visible'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllComponents') === false) {\n        $.each($('.replacement-faulty-component-option .replacement-option-button .button.selected:visible'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    isSelectAllDecalsObserver: observer('isSelectAllDecals', function () {\n      if (this.get('isSelectAllDecals')) {\n        $.each($('.replacement-decal-option .replacement-option-button .button.unselected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      } else if (this.get('isSelectAllDecals') === false) {\n        $.each($('.replacement-decal-option .replacement-option-button .button.selected'), function (index, replacementOptionButton) {\n          replacementOptionButton.click();\n        });\n      }\n    }),\n\n    willDestroyElement: function willDestroyElement() {\n      this.set('selectedFittings', []);\n      this.set('isMovingFittings', false);\n      this.set('isDeletingFittings', false);\n      this.set('fitleredbynamebool', false);\n    },\n\n    searchTextChanged: function () {\n      this.set('fitleredbynamebool', true);\n    }.observes('noteTitle'),\n\n    checkValue: _ember.default.observer('rows.@each.value', function () {\n      var unique = _ember.default.get(this, 'rows').uniqBy('value');\n\n      var tmp = this.get('count');\n      this.set('count', tmp + 1);\n    }),\n\n    runtest: function runtest() {},\n    init: function init() {\n      this._super.apply(this, arguments);\n      var groupid = this.get('group');\n      if (groupid == null) {\n        var fittings = this.get('fittings');\n        var totalfittings = this.get('mod');\n\n        var notcommissioned = fittings.filter(function (item) {\n          return item.data.commissioned === false;\n        });\n\n        var commissioned = totalfittings - notcommissioned.length;\n        this.set('commissionedFittingsCount', commissioned);\n        this.set('notCommissionedFittingsCount', notcommissioned.length);\n      }\n      var isallfittings = this.get('holdvaribles').showallfittingpagebool();\n      this.set('allfittings', isallfittings);\n    },\n\n\n    actions: {\n      sortBy: function sortBy(property) {\n        this.set('sortProperties', [property]);\n        this.toggleProperty('sortAscending');\n        this.set('fittings', this.get('arrangedContent')); // set the model to the sorted array\n\n        var groupid = this.get('group');\n        var sortingmethodtemp = '';\n        if (this.get('sortAscending')) {\n          sortingmethodtemp = 'Ascending';\n        } else {\n          sortingmethodtemp = 'Decending';\n        }\n\n        var url = ENV.api.host + '/' + ENV.api.namespace + '/filtersapi';\n        var local = localStorage.getItem('ember_simple_auth-session');\n        var test = JSON.parse(local);\n        var tt = test['authenticated'];\n        var tt2 = tt['session'];\n        var sessionID = tt2['session_id'];\n        var token = tt2['token'];\n        $.ajax({\n          url: url,\n          method: 'POST',\n          data: JSON.stringify({\n            data: {\n              attributes: {\n                usage: 'set',\n                groupid: groupid.id,\n                method: sortingmethodtemp\n\n              },\n              type: 'sessions'\n            }\n          }),\n          headers: {\n            'Content-Type': 'application/json',\n            'X-Session-Id': sessionID,\n            'X-Session-Token': token\n          },\n          success: function success() {},\n          error: function error() {}\n        });\n      },\n      textchangefilter: function textchangefilter() {\n        this.set('noteTitle', 'Test!');\n      },\n      showFitting: function showFitting(fitting) {\n        this.set('fitleredbynamebool', false);\n        this.sendAction('showFittingDetails', fitting);\n      },\n      toggleDeleteFittings: function toggleDeleteFittings() {\n        this.toggleProperty('isDeletingFittings');\n      },\n      sortFittings: function sortFittings() {\n        this.toggleProperty('isDeletingFittings');\n        this.toggleProperty('isListSorted');\n      },\n      toggleMoveFittings: function toggleMoveFittings() {\n        this.toggleProperty('isMovingFittings');\n      },\n      deleteFittings: function deleteFittings(selectedFittings) {\n        this.attrs.batchDeleteFittings(selectedFittings);\n      },\n      moveFittings: function moveFittings(selectedFittings) {\n        this.attrs.batchMoveFittings(selectedFittings);\n      },\n      cancelSelectFittings: function cancelSelectFittings() {\n        this.set('selectedFittings', []);\n        this.set('isMovingFittings', false);\n        this.set('isDeletingFittings', false);\n      },\n      showOrderReplacements: function showOrderReplacements() {\n        this.attrs.backToFittingsIndex();\n        this.set('isOrderingReplacements', true);\n      },\n      hideOrderReplacements: function hideOrderReplacements() {\n        this.set('isOrderingReplacements', false);\n        this.set('isSelectAllFittings', null);\n        this.set('isSelectAllComponents', null);\n        this.set('isSelectAllDecals', null);\n        this.showSuccessFlash('Cart successfully updated', { timeout: 1000 });\n        this.attrs.refreshRoute();\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/flash-message', ['exports', 'ember-cli-flash/components/flash-message'], function (exports, _flashMessage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _flashMessage.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/form-validated-input', ['exports', 'ember', 'clever-sparky-frontend/components/validated-input'], function (exports, _ember, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _validatedInput.default.extend({\n\n    classNames: ['form-validated-input'],\n\n    disabled: false,\n\n    isTextArea: computed.equal('type', 'textarea'),\n\n    actions: {\n      onFocusOut: function onFocusOut() {\n        if (this.attrs.onFocusOut) {\n          this.attrs.onFocusOut();\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/form-validated-select', ['exports', 'clever-sparky-frontend/components/validated-select'], function (exports, _validatedSelect) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _validatedSelect.default.extend({\n    classNames: ['form-validated-select'],\n    layoutName: 'components/validated-select'\n  });\n});","define('clever-sparky-frontend/components/form-validated-textarea', ['exports', 'clever-sparky-frontend/components/validated-textarea'], function (exports, _validatedTextarea) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _validatedTextarea.default.extend({\n    classNames: ['form-validated-textarea'],\n    layoutName: 'components/validated-textarea'\n  });\n});","define('clever-sparky-frontend/components/form-validated-wholesaler-select', ['exports', 'ember', 'clever-sparky-frontend/components/validated-input'], function (exports, _ember, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _validatedInput.default.extend({\n\n    nullValue: computed.equal('value', null),\n\n    classNames: ['form-validated-wholesaler-select'],\n\n    // For this particualr component we want a null value to represent \"Other\" so the label should be focused if so.\n    hasContentOrNull: computed.or('hasContent', 'nullValue')\n\n  });\n});","define('clever-sparky-frontend/components/forms/change-password-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/change-password-validator'], function (exports, _ember, _toggleLabelFocus, _changePasswordValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_toggleLabelFocus.default, _changePasswordValidator.ChangePasswordValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#change-password-form'));\n    },\n\n\n    isQueryPending: false,\n\n    currentPassword: computed(function () {\n      return this.get('user.currentPassword');\n    }),\n\n    password: computed(function () {\n      return this.get('user.password');\n    }),\n\n    passwordConfirmation: computed(function () {\n      return this.get('user.passwordConfirmation');\n    }),\n\n    updateUser: function updateUser() {\n      this.set('user.currentPassword', this.get('currentPassword'));\n      this.set('user.password', this.get('password'));\n      this.set('user.passwordConfirmation', this.get('passwordConfirmation'));\n    },\n    resetUser: function resetUser() {\n      this.set('currentPassword', this.get('user.currentPassword'));\n      this.set('password', this.get('user.password'));\n      this.set('passwordConfirmation', this.get('user.passwordConfirmation'));\n    },\n\n\n    actions: {\n      save: function save(user) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.updateUser();\n          this.set('isQueryPending', true);\n          this.attrs.save(user);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/fitting-details-form-rows', ['exports', 'ember', 'moment'], function (exports, _ember, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    inputsDisabled: computed.not('canEdit'),\n\n    maxDate: (0, _moment.default)(),\n\n    actions: {\n      commission: function commission() {\n        this.sendAction('commission');\n      },\n      lookupFittingInfo: function lookupFittingInfo() {\n        this.sendAction('lookupFittingInfo');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/fitting-details-form', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/fitting'], function (exports, _ember, _moment, _toggleLabelFocus, _fitting) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Component.extend(_fitting.FittingValidations, _toggleLabelFocus.default, {\n    // Services\n\n    fittingLookup: inject.service(),\n\n    // Attributes\n\n    didValidate: false,\n\n    canEdit: false,\n\n    isQueryPending: false,\n\n    serialNumber: '',\n\n    fittingType: '',\n\n    description: '',\n\n    groupName: '',\n\n    groupID: '',\n\n    deviceReference: '',\n\n    location: '',\n\n    installDate: '',\n\n    building: '',\n\n    level: '',\n\n    switchboard: '',\n\n    circuit: '',\n\n    assetCode: '',\n\n    previousSerialNumber: '',\n    format: 'YYYYMMDD',\n    date: null,\n\n    // Hooks\n\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.setStaticAttributes();\n      this.addObserver('fitting.id', this, 'setStaticAttributes');\n    },\n    didInsertElement: function didInsertElement() {\n      this._super.apply(this, arguments);\n      this.toggleLabelFocus(this.$('#fitting-details-form'));\n    },\n\n\n    // Properties\n\n    isNotCommissioned: computed.not('fitting.commissioned'),\n\n    inputsDisabled: computed.not('canEdit'),\n\n    isArchivedTestEvent: computed('testEvent.id', function () {\n      return this.get('testEvent.id') && this.get('testEvent.archived');\n    }),\n\n    isNotArchivedTestEvent: computed.not('isArchivedTestEvent'),\n\n    showMarkCommission: false,\n\n    shouldShowTestEventWarning: computed('installDate', 'testEvent.endDate', function () {\n      var installDate = this.get('installDate');\n      var endDate = this.get('testEvent.endDate');\n      return installDate && endDate && !(0, _moment.default)(installDate).isSameOrBefore(endDate);\n    }),\n\n    showFittingInfoBanner: computed.alias('canEdit'),\n\n    // Methods\n\n    setStaticAttributes: function setStaticAttributes() {\n      this.set('serialNumber', this.get('fitting.serialNumber'));\n      this.set('fittingType', this.get('fitting.fittingType'));\n      this.set('description', this.get('fitting.description'));\n      this.set('deviceReference', this.get('fitting.deviceReference'));\n      this.set('location', this.get('fitting.location'));\n      this.set('installDate', this.test());\n      this.set('building', this.get('fitting.building'));\n      this.set('level', this.get('fitting.level'));\n      this.set('switchboard', this.get('fitting.switchboard'));\n      this.set('circuit', this.get('fitting.circuit'));\n      this.set('assetCode', this.get('fitting.assetCode'));\n      this.set('groupName', this.get('group.name'));\n      this.set('groupID', this.get('group.id'));\n      this.set('previousSerialNumber', this.get('fitting.serialNumber'));\n    },\n    test: function test() {\n      var currentdate = this.get('fitting.installDate');\n      if (currentdate == 'Invalid date') {\n        currentdate = (0, _moment.default)().format('YYYY-MM-DD');\n      }\n      return currentdate;\n    },\n    testupdatedinstalldate: function testupdatedinstalldate() {\n      var returndate = this.get('installDate');\n      var currentdate = (0, _moment.default)(this.get('installDate')).isValid();\n      if (currentdate === false) {\n        returndate = (0, _moment.default)().format('YYYY-MM-DD');\n      }\n      return returndate;\n    },\n    updateFitting: function updateFitting() {\n      this.set('fitting.serialNumber', this.get('serialNumber'));\n      this.set('fitting.fittingType', this.get('fittingType'));\n      this.set('fitting.description', this.get('description'));\n      this.set('fitting.deviceReference', this.get('deviceReference'));\n      this.set('fitting.location', this.get('location'));\n      this.set('fitting.installDate', this.testupdatedinstalldate());\n      this.set('fitting.building', this.get('building'));\n      this.set('fitting.level', this.get('level'));\n      this.set('fitting.switchboard', this.get('switchboard'));\n      this.set('fitting.circuit', this.get('circuit'));\n      this.set('fitting.assetCode', this.get('assetCode'));\n    },\n    resetFitting: function resetFitting() {\n      this.set('serialNumber', this.get('fitting.serialNumber'));\n      this.set('fittingType', this.get('fitting.fittingType'));\n      this.set('description', this.get('fitting.description'));\n      this.set('deviceReference', this.get('fitting.deviceReference'));\n      this.set('location', this.get('fitting.location'));\n      this.set('installDate', this.get('fitting.installDate'));\n      this.set('building', this.get('fitting.building'));\n      this.set('level', this.get('fitting.level'));\n      this.set('switchboard', this.get('fitting.switchboard'));\n      this.set('circuit', this.get('fitting.circuit'));\n      this.set('assetCode', this.get('fitting.assetCode'));\n      this.set('previousSerialNumber', this.get('fitting.serialNumber'));\n    },\n\n\n    actions: {\n      cancel: function cancel() {\n        this.set('didValidate', false);\n        this.resetFitting();\n        this.sendAction('cancel');\n      },\n      save: function save() {\n        this.set('didValidate', true);\n        this.set('isQueryPending', true);\n\n        if (this.get('validations.isValid')) {\n          this.updateFitting();\n          this.sendAction('save', this.get('fitting'));\n        }\n      },\n      commission: function commission() {\n        this.set('fitting.commissioned', true);\n        this.sendAction('commission', this.get('fitting'));\n      },\n      lookupFittingInfo: function lookupFittingInfo() {\n        var _this = this;\n\n        if (this.get('serialNumber') && this.get('serialNumber') !== this.get('previousSerialNumber')) {\n          this.set('previousSerialNumber', this.get('serialNumber'));\n          this.get('fittingLookup').lookupFittingInfo(this.get('serialNumber')).then(function (_ref) {\n            var fittingType = _ref.fittingType,\n                description = _ref.description;\n\n            if (fittingType) {\n              _this.set('fittingType', fittingType);\n              _this.set('description', description);\n            } else {\n              _this.set('fittingType', '');\n              _this.set('description', '');\n            }\n          });\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/fittings-form-new', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/validators/forms/fitting', 'clever-sparky-frontend/mixins/toggle-label-focus'], function (exports, _ember, _moment, _handleError, _fitting, _toggleLabelFocus) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Component.extend(_fitting.FittingValidations, _toggleLabelFocus.default, _handleError.default, {\n    // Attributes\n    store: inject.service(),\n\n    holdvaribles: inject.service('holdvaribles'),\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    serialNumber: '',\n\n    deviceReference: '',\n\n    installDate: '',\n\n    testEvent: null,\n\n    maxDate: (0, _moment.default)(),\n\n    selectedGroup: null,\n\n    allfittings: null,\n\n    displayGroups: null,\n\n    // Properties\n\n    shouldShowTestEventWarning: computed('installDate', 'testEvent.endDate', function () {\n      var installDate = this.get('installDate');\n      var endDate = this.get('testEvent.endDate');\n      return installDate && endDate && !(0, _moment.default)(installDate).isSameOrBefore(endDate);\n    }),\n\n    // Hooks\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#fitting-form'));\n    },\n\n\n    // Methods\n\n    updateFitting: function updateFitting() {\n      var thisdf = this.get('selectedGroup');\n      this.get('holdvaribles').setupHoldSelectedFittingGroup(thisdf);\n      this.set('fitting.serialNumber', this.get('serialNumber'));\n      this.set('fitting.deviceReference', this.get('deviceReference'));\n      this.set('fitting.installDate', this.get('installDate'));\n    },\n    init: function init() {\n      this._super.apply(this, arguments);\n      var allgroups = this.get('store').peekAll('group');\n      // eslint-disable-next-line ember-suave/no-direct-property-access\n      var newgroupps = _ember.default.$.map(allgroups.content, function (item) {\n        return { label: item.__data.name, value: item.id };\n      });\n\n      this.set('displayGroups', newgroupps);\n\n      var test = this.get('holdvaribles').showallfittingpagebool();\n      this.set('allfittings', test);\n    },\n\n\n    actions: {\n      addFitting: function addFitting() {\n        this.set('didValidate', true);\n        var tmp = this.get('displayGroups');\n        if (tmp.length === 0) {\n\n          this.showErrorFlash('Please create a group first before adding a fitting');\n          return;\n        }\n\n        if (this.get('validations.isValid')) {\n          this.updateFitting();\n\n          this.set('isQueryPending', true);\n          this.sendAction('addFitting', this.get('fitting'));\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/forgot-password-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forgot-password-validator'], function (exports, _ember, _toggleLabelFocus, _forgotPasswordValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend(_toggleLabelFocus.default, _forgotPasswordValidator.ForgotPasswordValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#forgot-password-form'));\n    },\n\n\n    isQueryPending: false,\n\n    email: '',\n\n    actions: {\n      requestPasswordReset: function requestPasswordReset(email) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.attrs.requestPasswordReset(email);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/group-form-rows', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({});\n});","define('clever-sparky-frontend/components/forms/group-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/group-validator'], function (exports, _ember, _toggleLabelFocus, _groupValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_toggleLabelFocus.default, _groupValidator.GroupValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#group-form'));\n    },\n\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    name: computed(function () {\n      return this.get('group.name');\n    }),\n\n    updateGroup: function updateGroup() {\n      this.set('group.name', this.get('name'));\n    },\n    resetGroup: function resetGroup() {\n      this.set('name', this.get('group.name'));\n    },\n\n\n    actions: {\n      cancel: function cancel() {\n        this.resetGroup();\n      },\n      save: function save(group) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.updateGroup();\n          this.set('isQueryPending', true);\n          this.attrs.save(group);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/invite-to-site-form', ['exports', 'ember', 'clever-sparky-frontend/validators/forms/invite-to-site-form-validator'], function (exports, _ember, _inviteToSiteFormValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_inviteToSiteFormValidator.InviteToSiteFormValidations, {\n    technicianId: null,\n\n    isQueryPending: false,\n\n    didValidate: false,\n\n    grantPermissionType: 'copy-site-permission',\n\n    isCopyingSitePermission: computed.equal('grantPermissionType', 'copy-site-permission'),\n\n    notCurrentTechnicians: computed.filter('technicians', function (technician) {\n      return technician !== this.get('user');\n    }),\n\n    displayTechnicians: computed.map('notCurrentTechnicians', function (technician) {\n      return { label: technician.get('fullName'), value: technician.get('id') };\n    }),\n\n    actions: {\n      grantAccess: function grantAccess() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n\n          if (this.get('isCopyingSitePermission')) {\n            this.attrs.copyPermissions(this.get('currentOrganisation'), this.get('technicianId'), this.get('user.id'));\n          } else {\n            this.attrs.grantAccess(this.get('user'), this.get('selectedSites'));\n          }\n        }\n      },\n      selectionTypeChanged: function selectionTypeChanged() {\n        this.set('didValidate', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/invite-user-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/invite-user'], function (exports, _ember, _toggleLabelFocus, _inviteUser) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_inviteUser.InviteUserValidations, _toggleLabelFocus.default, {\n\n    didValidate: false,\n\n    email: computed(function () {\n      return this.get('invite.email');\n    }),\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#invite-user-form'));\n    },\n\n\n    actions: {\n      invite: function invite() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.set('invite.email', this.get('email'));\n          this.attrs.save(this.get('invite'));\n          this.set('didValidate', false);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/login-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/login-validator'], function (exports, _ember, _toggleLabelFocus, _loginValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend(_toggleLabelFocus.default, _loginValidator.LoginValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#login-form'));\n    },\n\n\n    email: '',\n    password: '',\n\n    actions: {\n      validate: function validate(email, password) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.authenticate(email, password);\n        }\n      },\n      authenticate: function authenticate(email, password) {\n        this.attrs.authenticate(email, password);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/maintenance-form', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/maintenance', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _ember, _moment, _toggleLabelFocus, _maintenance, _handleError, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_toggleLabelFocus.default, _maintenance.MaintenanceValidations, _handleError.default, _optionLookup.default, {\n\n    // Attributes\n\n    repairDate: null,\n\n    repair: '',\n\n    notes: '',\n\n    didValidate: false,\n\n    isShowingForm: false,\n\n    rows: [],\n\n    showUpdateFittingModal: false,\n\n    isQueryPending: false,\n\n    maxDate: (0, _moment.default)(),\n\n    testEvent: null,\n\n    testEventFitting: null,\n\n    // Properties\n\n    isTestEventContextAndNotArchived: computed.not('testEvent.archived'),\n\n    showAddNewMaintenanceButton: computed.and('maintenance', 'isTestEventContextAndNotArchived'),\n\n    hasNoRows: computed.equal('rows.length', 0),\n\n    hasNoMaintenances: computed('fitting.maintenances', function () {\n      return !this.get('fitting.maintenances.length');\n    }),\n\n    shouldShowTestEventWarning: computed('repairDate', function () {\n      var repairDate = this.get('repairDate');\n      var startDate = this.get('testEvent.startDate');\n      var endDate = this.get('testEvent.endDate');\n      return repairDate && this.get('testEvent.id') && !(0, _moment.default)(repairDate).isBetween(startDate, endDate, null, '[]');\n    }),\n\n    // Methods\n\n    resetForm: function resetForm() {\n      this.set('repairDate', null);\n      this.set('repair', '');\n      this.set('notes', '');\n    },\n    updateMaintenance: function updateMaintenance() {\n      this.set('maintenance.fitting', this.get('fitting'));\n      this.set('maintenance.repairDate', this.get('repairDate'));\n      this.set('maintenance.repair', this.get('repair'));\n      this.set('maintenance.notes', this.get('notes'));\n    },\n\n\n    actions: {\n      cancel: function cancel() {\n        this.set('didValidate', false);\n        this.resetForm();\n        this.set('isShowingForm', false);\n      },\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          if (this.get('repair') === 'fitting') {\n            this.set('showUpdateFittingModal', true);\n          } else {\n            this.updateMaintenance();\n            this.set('isQueryPending', true);\n            this.attrs.save(this.get('maintenance'));\n            this.resetForm();\n            this.set('isShowingForm', false);\n            this.set('didValidate', false);\n          }\n        }\n      },\n      update: function update(fitting) {\n        var _this = this;\n\n        if (this.get('testEvent')) {\n          fitting.set('testEvent', this.get('testEvent'));\n        }\n        fitting.save().then(function (fitting) {\n          _this.set('showUpdateFittingModal', false);\n          if (_this.get('testEventFitting')) {\n            var currentTestEventFittings = fitting.get('testEventFittings').toArray().map(function (testEventFitting) {\n              return testEventFitting.id;\n            });\n            if (!currentTestEventFittings.includes(_this.get('testEventFitting.id'))) {\n              // testEventFitting no longer exists i.e. case where fitting.installDate is updated to outside test event range\n              _this.updateMaintenance();\n              _this.attrs.save(_this.get('maintenance'), true);\n            }\n          } else {\n            _this.updateMaintenance();\n            _this.attrs.save(_this.get('maintenance'));\n            _this.resetForm();\n            _this.set('isShowingForm', false);\n            _this.set('didValidate', false);\n          }\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      },\n      closeUpdateFittingModal: function closeUpdateFittingModal() {\n        this.get('fitting').rollbackAttributes();\n        this.set('repair', '');\n        this.set('showUpdateFittingModal', false);\n      },\n      show: function show() {\n        this.set('isShowingForm', true);\n        this.toggleLabelFocus(this.$('#maintenance-form'));\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/organisation-edit-form', ['exports', 'ember', 'clever-sparky-frontend/components/forms/organisation-form', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _organisationForm, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var service = _ember.default.inject.service;\n  var computed = _ember.default.computed,\n      observer = _ember.default.observer,\n      inject = _ember.default.inject;\n  exports.default = _organisationForm.default.extend(_handleError.default, {\n    // Services\n\n    filename: '',\n    features: inject.service(),\n    imgupload: false,\n    // Attributes\n\n    isEditing: false,\n\n    wholesalers: [],\n\n    username: '',\n\n    password: '',\n\n    authorizableWholesalers: ['MMEM', 'L&H'],\n\n    // Hooks\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#organisation-edit-form'));\n    },\n\n\n    // Properties\n\n    isShoppingCartEnabled: computed(function () {\n      return this.get('features').isEnabled('shopping-cart');\n    }),\n\n    inputsDisabled: computed.not('isEditing'),\n\n    wholesaler: computed(function () {\n      return this.get('organisation.wholesaler.content');\n    }),\n\n    cstatement: computed(function () {\n      var text = this.get('organisation.cstatement');\n      if (text === '' || text == null) {\n        text = 'This Emergency lighting duration test report has been collected as per the record keeping requirements of AS/NZS2293.2 sections 2.7.2 & 2.7.3.\\n' + 'The information contained in this report demonstrates compliance with the 6 monthly inspection and record keeping tasks listed in AS/NZS2293.2- Appendix A- Table A2- Schedule 2- Parts 2.1, 2.7, 2.8 and 2.10.';\n      }\n\n      return text;\n    }),\n\n    displayWholesalers: computed('wholesalers.[]', function () {\n      var wholesalerObjects = this.get('wholesalers').map(function (wholesaler) {\n        return { label: wholesaler.get('name'), value: wholesaler };\n      });\n\n      wholesalerObjects.push({ label: 'Other', value: null });\n\n      return wholesalerObjects;\n    }),\n\n    hasSelectedWholesaler: computed.notEmpty('wholesaler'),\n\n    isWholesalerAuthAllowed: computed('isShoppingCartEnabled', 'authorizableWholesalers.[]', 'wholesaler', function () {\n      return this.get('isShoppingCartEnabled') && this.get('authorizableWholesalers').includes(this.get('wholesaler.name'));\n    }),\n\n    showWholesalerAuthFields: computed.and('hasSelectedWholesaler', 'isWholesalerAuthAllowed', 'isEditing'),\n\n    hasUsername: computed.notEmpty('username'),\n\n    hasPassword: computed.notEmpty('password'),\n\n    hasEnteredAuthDetails: computed.and('hasUsername', 'hasPassword'),\n\n    shouldPerformWholesalerAuth: computed.and('isWholesalerAuthAllowed', 'hasEnteredAuthDetails'),\n\n    // Observers\n\n    hasShownWholesalerAuthFields: observer('showWholesalerAuthFields', function () {\n      if (this.get('showWholesalerAuthFields')) {\n        this.toggleLabelFocus(this.$('#organisation-edit-form'));\n      }\n    }),\n\n    // Methods\n\n    updateOrganisation: function updateOrganisation() {\n      this._super();\n\n      this.set('organisation.wholesaler', this.get('wholesaler'));\n      this.set('organisation.cstatement', this.get('cstatement'));\n    },\n    resetOrganisation: function resetOrganisation() {\n      this._super();\n      this.set('wholesaler', this.get('organisation.wholesaler.content'));\n    },\n    clearWholesalerAuthFields: function clearWholesalerAuthFields() {\n      this.set('username', '');\n      this.set('password', '');\n    },\n\n    signedRequest: service(),\n    s3Upload: service(),\n\n    actions: {\n      edit: function edit() {\n        this.set('isEditing', true);\n      },\n      cancel: function cancel() {\n        this.resetOrganisation();\n        this.set('isEditing', false);\n        this.set('didValidate', false);\n      },\n      save: function save() {\n        var _this = this;\n\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n\n          this.updateOrganisation();\n\n          if (this.get('shouldPerformWholesalerAuth')) {\n            this.attrs.authenticateWholesaler(this.get('wholesaler'), this.get('username'), this.get('password')).then(function (wholesalerAuthDetails) {\n              _this.set('organisation.wholesalerAuthDetails', wholesalerAuthDetails);\n              _this.attrs.save(_this.get('organisation'));\n              _this.clearWholesalerAuthFields();\n            }).catch(function (reason) {\n              _this.handleRailsError({}, reason.error_description);\n            });\n          } else {\n            this.attrs.save(this.get('organisation'));\n          }\n          this.set('isQueryPending', true);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/organisation-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/mixins/countries-and-states', 'clever-sparky-frontend/validators/organisation-validator', 'ember-macaroni'], function (exports, _ember, _toggleLabelFocus, _countriesAndStates, _organisationValidator, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      observer = _ember.default.observer;\n  exports.default = Component.extend(_toggleLabelFocus.default, _countriesAndStates.default, _organisationValidator.OrganisationValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#organisation-form'));\n      this.toggleLabelFocus(this.$('#organisation-new-form'));\n    },\n\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    name: computed(function () {\n      return this.get('organisation.name');\n    }),\n\n    country: computed(function () {\n      return this.get('organisation.country');\n    }),\n\n    state: computed(function () {\n      return this.get('organisation.state');\n    }),\n\n    updateOrganisation: function updateOrganisation() {\n      this.set('organisation.name', this.get('name'));\n      this.set('organisation.country', this.get('country'));\n      this.set('organisation.state', this.get('state'));\n    },\n    resetOrganisation: function resetOrganisation() {\n      this.set('name', this.get('organisation.name'));\n      this.set('country', this.get('organisation.country'));\n      this.set('state', this.get('organisation.state'));\n    },\n\n\n    hasConfirmedAuthorization: false,\n    hasNotConfirmedAuthorization: computed.not('hasConfirmedAuthorization'),\n\n    submitDisabled: computed.or('hasNotConfirmedAuthorization', 'isQueryPending'),\n\n    isNewZealand: computed.equal('country', 'New Zealand'),\n\n    states: (0, _emberMacaroni.ifThenElseWithKeys)('isNewZealand', 'newZealandStates', 'australianStates'),\n\n    countryChanged: observer('country', function () {\n      this.set('state', '');\n    }),\n\n    actions: {\n      next: function next() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.attrs.next();\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/organisation-new-form', ['exports', 'clever-sparky-frontend/components/forms/organisation-form'], function (exports, _organisationForm) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _organisationForm.default.extend({\n    actions: {\n      save: function save(organisation) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.toggleProperty('isQueryPending');\n          this.updateOrganisation();\n\n          this.attrs.save(organisation);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/quick-test-defaults-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/option-lookup', 'clever-sparky-frontend/validators/forms/quick-test-defaults', 'clever-sparky-frontend/mixins/toggle-label-focus', 'moment'], function (exports, _ember, _optionLookup, _quickTestDefaults, _toggleLabelFocus, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_optionLookup.default, _quickTestDefaults.QuickTestDefaultsValidations, _toggleLabelFocus.default, {\n    // Attributes\n    defaultLabel: '',\n\n    defaultTestDate: '',\n\n    defaultRunTime: '',\n\n    nexttestdate: '',\n\n    viewb: '',\n\n    defaultRequiredDuration: '',\n\n    didValidate: false,\n\n    testEvent: null,\n\n    isCreatingTestEvent: false,\n\n    updatenexttestdate: '',\n\n    updatenexttestdatefunc: function () {\n      var testdate = this.get('defaultTestDate');\n      var newval = (0, _moment.default)(testdate).add(182, 'day').format('YYYY-MM-DD');\n      if (newval != 'Invalid date') {\n        this.set('nexttestdate', newval);\n        this.set('updatenexttestdate', newval);\n      }\n    }.observes('defaultTestDate'),\n\n    // Properties\n    canSubmit: computed.alias('validations.isValid'),\n\n    // Hooks\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.setStaticAttributes();\n    },\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#quick-test-defaults-form'));\n    },\n\n\n    // Methods\n    setStaticAttributes: function setStaticAttributes() {\n\n      var test = this.get('testEvent');\n\n      this.set('defaultLabel', this.get('testEvent.label'));\n      this.set('defaultTestDate', this.get('testEvent.defaultTestDate'));\n      this.set('defaultRunTime', this.get('testEvent.defaultRunTime'));\n      this.set('defaultRequiredDuration', this.get('testEvent.defaultRequiredDuration'));\n      this.set('viewb', this.get('testEvent.viewb'));\n\n      this.set('nexttestdate', test.data.nexttestdate);\n      this.set('updatenexttestdate', test.data.nexttestdate);\n    },\n    updateTestEvent: function updateTestEvent() {\n      this.set('testEvent.label', this.get('defaultLabel'));\n      this.set('testEvent.defaultTestDate', this.get('defaultTestDate'));\n      this.set('testEvent.defaultRunTime', this.get('defaultRunTime'));\n      this.set('testEvent.defaultRequiredDuration', this.get('defaultRequiredDuration'));\n      this.set('testEvent.nexttestdate', this.get('updatenexttestdate'));\n      this.set('testEvent.viewb', this.get('viewb'));\n    },\n    submit: function submit() {},\n\n\n    actions: {\n      submit: function submit() {\n        this.set('didValidate', true);\n        if (this.get('canSubmit')) {\n          this.updateTestEvent();\n          this.attrs.submit(this.get('testEvent'));\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/quick-test-form', ['exports', 'ember', 'moment', 'ember-macaroni', 'clever-sparky-frontend/mixins/option-lookup', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/ledtest'], function (exports, _ember, _moment, _emberMacaroni, _optionLookup, _toggleLabelFocus, _ledtest) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_optionLookup.default, _toggleLabelFocus.default, _ledtest.LEDTestValidations, {\n    // Attributes\n\n    nextTestDate: '',\n\n    testDate: '',\n\n    runTime: '',\n\n    requiredDuration: '',\n\n    minDate: (0, _moment.default)(),\n\n    testEvent: null,\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    isQuickTestPassForm: false,\n\n    // Properties\n\n    inputsDisabled: computed.alias('isQuickTestPassForm'),\n\n    testStatus: (0, _emberMacaroni.ifThenElseWithValues)('isQuickTestPassForm', 'valid_pass', ''),\n\n    testStatusOptions: (0, _emberMacaroni.ifThenElseWithKeys)('isQuickTestPassForm', 'passTestStatusOptions', 'failTestStatusOptions'),\n\n    canSubmit: computed.alias('validations.isValid'),\n\n    // Methods\n    setStaticAttributes: function setStaticAttributes() {\n      this.set('testDate', this.get('testEvent.defaultTestDate'));\n      this.set('runTime', this.get('testEvent.defaultRunTime'));\n      this.set('requiredDuration', this.get('testEvent.defaultRequiredDuration'));\n    },\n    submit: function submit() {},\n\n\n    // hooks\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.setStaticAttributes();\n    },\n    didInsertElement: function didInsertElement() {\n      this._super.apply(this, arguments);\n      this.toggleLabelFocus(this.$('#quick-test-form'));\n    },\n\n\n    actions: {\n      submit: function submit() {\n        var testAttributes = {\n          testStatus: this.get('testStatus'),\n          testDate: this.get('testDate'),\n          runTime: this.get('runTime'),\n          nextTestDate: this.get('nextTestDate'),\n          requiredDuration: this.get('requiredDuration')\n        };\n\n        this.set('didValidate', true);\n        if (this.get('canSubmit')) {\n          this.set('isQueryPending', true);\n          this.attrs.submit(testAttributes);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/report-form', ['exports', 'ember', 'clever-sparky-frontend/validators/forms/report-form'], function (exports, _ember, _reportForm) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  function _asyncToGenerator(fn) {\n    return function () {\n      var gen = fn.apply(this, arguments);\n      return new Promise(function (resolve, reject) {\n        function step(key, arg) {\n          try {\n            var info = gen[key](arg);\n            var value = info.value;\n          } catch (error) {\n            reject(error);\n            return;\n          }\n\n          if (info.done) {\n            resolve(value);\n          } else {\n            return Promise.resolve(value).then(function (value) {\n              step(\"next\", value);\n            }, function (err) {\n              step(\"throw\", err);\n            });\n          }\n        }\n\n        return step(\"next\");\n      });\n    };\n  }\n\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject,\n      observer = _ember.default.observer;\n  var service = _ember.default.inject.service;\n  exports.default = Component.extend(_reportForm.ReportValidations, {\n    session: inject.service('session'),\n    store: inject.service(),\n    holdvaribles: inject.service('holdvaribles'),\n    reportCategory: 'device-details',\n\n    reportFormat: 'pdf',\n\n    reportContent: 'groups',\n\n    endstatement: 'To edit compliance statement, go to menu > update business> compliance statement',\n\n    selctOnDisabled: false,\n    sendreporttxt: 'Send Report',\n    isTestreport: false,\n    isCstatementEmpty: false,\n\n    displayDeleteModal: false,\n\n    newtempname: null,\n\n    newbuttonpushed: false,\n\n    selctOffDisabled: false,\n\n    cstateContent: 'cstatebool',\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    currentUser: computed('session.data', function () {\n      return this.get('session.data.authenticated.currentUser');\n    }),\n    currentSite: null,\n\n    isSelectingTestEvents: computed.equal('reportContent', 'test-events'),\n\n    isSelectingGroups: computed.equal('reportContent', 'groups'),\n\n    selectedGroups: [],\n\n    selectedTestEvent: null,\n    selectedTemplate: null,\n\n    selectedTemplatex: observer('selectedTemplate', function () {\n      var re = this.selectedTemplate;\n      this.set('cstatement', re.__data.fulltext);\n    }),\n\n    didValidate: false,\n\n    cstatement: computed(function () {\n\n      var text = null;\n\n      if (text === '' || text == null) {\n        this.set('isCstatementEmpty', true);\n        text = 'This Emergency lighting duration test report has been collected as per the record keeping requirements of AS/NZS2293.2 sections 2.7.2 & 2.7.3.\\n' + 'The information contained in this report demonstrates compliance with the 6 monthly inspection and record keeping tasks listed in AS/NZS2293.2- Appendix A- Table A2- Schedule 2- Parts 2.1, 2.7, 2.8 and 2.10.';\n      }\n\n      return text;\n    }),\n\n    textchangedcstatement: false,\n    textchangedcstatementtmp: observer('cstatement', function () {\n      var newbuttonpushed = this.get('newbuttonpushed');\n      if (newbuttonpushed !== true) {\n        this.set('textchangedcstatement', true);\n      }\n    }),\n\n    cstatebool: false,\n\n    isTestEventsEnabled: computed(function () {\n      return this.get('features').isEnabled('test-events');\n    }),\n    testEventOptions: null,\n    AlltestEventOptions: null,\n    NamesofTemplatesOptions: null,\n    testEventOptionstmp: computed.map('AlltestEventOptions', function (testEvent) {\n      // eslint-disable-next-line ember-suave/prefer-destructuring\n      var startDate = testEvent.__data.startDate;\n      // eslint-disable-next-line ember-suave/prefer-destructuring\n      var endDate = testEvent.__data.endDate;\n      return { label: startDate + ' to ' + endDate, value: testEvent };\n    }),\n    templateOptionstmp: computed.map('NamesofTemplatesOptions', function (template) {\n      // eslint-disable-next-line ember-suave/prefer-destructuring\n      var name = template.__data.name;\n\n      return { label: '' + name, value: template };\n    }),\n    ajaxRequests: service(),\n    isQueryPending: false,\n    init: function init() {\n      this._super.apply(this, arguments);\n      var site = this.get('holdvaribles').showCurrentSite();\n      this.set('currentSite', site.data);\n      if (this.get('session') != null) {\n\n        this.get('store').query('template', {\n          // eslint-disable-next-line camelcase\n          user_id: '1'\n        }).then(function () {});\n\n        this.set('cstateContent', 'cstatebool');\n        this.set('cstatebool', 'true');\n        var tevent = this.get('holdvaribles').showAlltestevents();\n\n        var result = tevent.content.content.filter(function (item) {\n          if (item.__data !== null) {\n            return true;\n          } else {\n            return false;\n          }\n        });\n        this.set('AlltestEventOptions', result);\n\n        var test = this.get('testEventOptionstmp');\n        this.set('testEventOptions', test);\n      }\n    },\n\n\n    actions: {\n      toggleDeleteModal: function toggleDeleteModal() {\n        var selected = this.get('selectedTemplate');\n        if (selected !== null) {\n          this.set('displayDeleteModal', true);\n        }\n      },\n      closeDeleteModal: function closeDeleteModal() {\n        var temps = this.get('store').peekAll('template');\n        var result = temps.content.filter(function (item) {\n          if (item.__data !== null) {\n            return true;\n          } else {\n            return false;\n          }\n        });\n\n        this.set('NamesofTemplatesOptions', result);\n        var test = this.get('templateOptionstmp');\n        this.set('templateOptions', test);\n        this.set('displayDeleteModal', false);\n        this.set('cstatement', '');\n      },\n      newButton: function newButton() {\n        this.set('newbuttonpushed', true);\n        this.set('textchangedcstatement', false);\n        this.set('cstatement', 'This Emergency lighting duration test report has been collected as per the record keeping requirements of AS/NZS2293.2 sections 2.7.2 & 2.7.3.\\n' + 'The information contained in this report demonstrates compliance with the 6 monthly inspection and record keeping tasks listed in AS/NZS2293.2- Appendix A- Table A2- Schedule 2- Parts 2.1, 2.7, 2.8 and 2.10.');\n      },\n      tamplateSave: function () {\n        var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee() {\n          var selected, cstate, newbuttonpushed, temp, temps, result, test;\n          return regeneratorRuntime.wrap(function _callee$(_context) {\n            while (1) {\n              switch (_context.prev = _context.next) {\n                case 0:\n                  this.set('textchangedcstatement', false);\n                  selected = this.get('selectedTemplate');\n                  cstate = this.get('cstatement');\n                  newbuttonpushed = this.get('newbuttonpushed');\n\n                  if (!(newbuttonpushed === true)) {\n                    _context.next = 17;\n                    break;\n                  }\n\n                  temp = this.get('store').createRecord('template', {\n                    name: this.get('newtempname'),\n                    fulltext: this.get('cstatement')\n                  });\n                  _context.next = 8;\n                  return temp.save();\n\n                case 8:\n                  this.set('newbuttonpushed', false);\n\n                  temps = this.get('store').peekAll('template');\n                  result = temps.content.filter(function (item) {\n                    if (item.__data !== null) {\n                      return true;\n                    } else {\n                      return false;\n                    }\n                  });\n\n\n                  this.set('NamesofTemplatesOptions', result);\n                  test = this.get('templateOptionstmp');\n\n                  this.set('templateOptions', test);\n                  this.set('cstatement', '');\n                  _context.next = 18;\n                  break;\n\n                case 17:\n\n                  this.get('store').findRecord('template', selected.id).then(function (temp) {\n                    // ...after the record has loaded\n                    temp.set('fulltext', cstate);\n                    temp.save();\n                  });\n\n                case 18:\n                case 'end':\n                  return _context.stop();\n              }\n            }\n          }, _callee, this);\n        }));\n\n        function tamplateSave() {\n          return _ref.apply(this, arguments);\n        }\n\n        return tamplateSave;\n      }(),\n      cstateContentChanged: function cstateContentChanged(cstateContent) {\n        if (cstateContent === 'cstatebool') {\n          this.set('cstateContent', '');\n          this.set('cstateContent', 'cstatebool');\n          this.set('cstatebool', 'true');\n        } else {\n          this.set('cstateContent', null);\n          this.set('cstateContent', 'cstatebooloff');\n          this.set('cstatebool', 'false');\n        }\n      },\n      reportContentChanged: function reportContentChanged(reportContent) {\n        this.set('didValidate', false);\n        if (reportContent === 'groups') {\n          this.set('selectedGroups', []);\n        } else {\n\n          if (this.get('reportCategory') === 'faulty-fittings') {\n            this.set('reportCategory', 'device-details');\n          }\n        }\n      },\n      typereportChanged: function typereportChanged(typeContent) {\n        if (typeContent === 'test-results') {\n          this.set('isTestreport', true);\n          var temps = this.get('store').peekAll('template');\n          var result = temps.content.filter(function (item) {\n            if (item.__data !== null) {\n              return true;\n            } else {\n              return false;\n            }\n          });\n\n          this.set('NamesofTemplatesOptions', result);\n          var test = this.get('templateOptionstmp');\n          this.set('templateOptions', test);\n        } else {\n          this.set('isTestreport', false);\n          this.set('cstatebool', 'false');\n        }\n      },\n      inputActionEventTrigger: function inputActionEventTrigger() {\n        this.set('sendreporttxt', 'Finish Editing And Send Report');\n      },\n      downloadReport: function downloadReport() {\n        this.set('didValidate', true);\n        if (this.get('validations.isValid')) {\n          var selectedItems = this.get('reportContent') === 'groups' ? this.get('selectedGroups') : this.get('selectedTestEvent');\n          this.set('isQueryPending', true);\n          var cat = this.get('reportCategory');\n          if (cat == 'device-details') {\n            this.attrs.downloadReport(this.get('reportContent'), selectedItems, this.get('reportCategory'), this.get('reportFormat'), 'false', this.get('cstatement'));\n          } else {\n            this.attrs.downloadReport(this.get('reportContent'), selectedItems, this.get('reportCategory'), this.get('reportFormat'), this.get('cstatebool'), this.get('cstatement'));\n          }\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/reset-password-form', ['exports', 'ember', 'clever-sparky-frontend/validators/reset-password-validator', 'clever-sparky-frontend/mixins/toggle-label-focus'], function (exports, _ember, _resetPasswordValidator, _toggleLabelFocus) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend(_toggleLabelFocus.default, _resetPasswordValidator.ResetPasswordValidations, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#reset-password-form'));\n    },\n\n\n    isQueryPending: false,\n\n    password: '',\n    passwordConfirmation: '',\n\n    actions: {\n      resetPassword: function resetPassword(password, passwordConfirmation) {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.attrs.resetPassword(this.get('token'), password, passwordConfirmation);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/site-form-new', ['exports', 'clever-sparky-frontend/components/forms/site-form'], function (exports, _siteForm) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _siteForm.default.extend({\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#site-form-new'));\n    },\n\n\n    isQueryPending: false,\n\n    actions: {\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.updateSite();\n          this.set('isQueryPending', true);\n          this.sendAction('save', this.get('site'));\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/site-form-rows', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    inputsDisabled: computed.not('canEdit')\n\n  });\n});","define('clever-sparky-frontend/components/forms/site-form', ['exports', 'ember', 'clever-sparky-frontend/validators/forms/site', 'clever-sparky-frontend/mixins/toggle-label-focus'], function (exports, _ember, _site, _toggleLabelFocus) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_site.SiteValidations, _toggleLabelFocus.default, {\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#site-form'));\n    },\n\n\n    didValidate: false,\n\n    canEdit: true,\n\n    isQueryPending: false,\n\n    unit: computed(function () {\n      return this.get('site.unit');\n    }),\n\n    address: computed(function () {\n      return this.get('site.address');\n    }),\n\n    businessName: computed(function () {\n      return this.get('site.businessName');\n    }),\n\n    buildingName: computed(function () {\n      return this.get('site.buildingName');\n    }),\n\n    contactName: computed(function () {\n      return this.get('site.contactName');\n    }),\n\n    contactEmail: computed(function () {\n      return this.get('site.contactEmail');\n    }),\n    adminEmail: computed(function () {\n      return this.get('site.adminEmail');\n    }),\n\n    placeId: computed(function () {\n      return this.get('site.placeId');\n    }),\n\n    updateSite: function updateSite() {\n      this.set('site.unit', this.get('unit'));\n      this.set('site.address', this.get('address'));\n      this.set('site.businessName', this.get('businessName'));\n      this.set('site.buildingName', this.get('buildingName'));\n      this.set('site.contactName', this.get('contactName'));\n      this.set('site.contactEmail', this.get('contactEmail'));\n      this.set('site.adminEmail', this.get('adminEmail'));\n      this.set('site.placeId', this.get('placeId'));\n    },\n    resetSite: function resetSite() {\n      this.set('unit', this.get('site.unit'));\n      this.set('address', this.get('site.address'));\n      this.set('businessName', this.get('site.businessName'));\n      this.set('buildingName', this.get('site.buildingName'));\n      this.set('contactName', this.get('site.contactName'));\n      this.set('contactEmail', this.get('site.contactEmail'));\n      this.set('adminEmail', this.get('site.adminEmail'));\n      this.set('placeId', this.get('site.placeId'));\n    },\n\n\n    actions: {\n      delete: function _delete() {\n        this.sendAction('delete');\n      },\n      cancel: function cancel() {\n        this.resetSite();\n        this.set('didValidate', false);\n        this.set('canEdit', false);\n      },\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.updateSite();\n          this.sendAction('save', this.get('site'));\n          this.set('isQueryPending', true);\n          this.set('didValidate', false);\n          this.set('canEdit', false);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/test-and-status-form-rows', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _ember, _moment, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend(_optionLookup.default, {\n\n    disabled: false,\n\n    minDate: (0, _moment.default)(),\n\n    maxDate: (0, _moment.default)()\n\n  });\n});","define('clever-sparky-frontend/components/forms/test-and-status-form', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/ledtest'], function (exports, _ember, _moment, _toggleLabelFocus, _ledtest) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      observer = _ember.default.observer;\n  exports.default = Component.extend(_ledtest.LEDTestValidations, _toggleLabelFocus.default, {\n\n    // Attributes\n\n    didValidate: false,\n\n    canEdit: false,\n\n    isQueryPending: false,\n\n    isConfirmAddNewTest: false,\n\n    hasConfirmedNewTest: false,\n\n    isShowingLatestTest: false,\n\n    currentLatestTest: null,\n\n    showDeleteTestModal: false,\n\n    testStatus: '',\n\n    testDate: '',\n\n    runTime: '',\n\n    nextTestDate: '',\n\n    requiredDuration: '',\n\n    batteryStatus: '',\n\n    lampStatus: '',\n\n    controlGearStatus: '',\n\n    // Properties\n\n    inputsDisabled: computed.not('canEdit'),\n\n    showAddNewTestButton: computed('testEvent.id', function () {\n      return this.get('testEvent.id') ? !this.get('testEvent.archived') : true;\n    }),\n\n    isNotAddingNewTest: computed.not('test.isNew'),\n\n    hasLatestTest: computed.notEmpty('latestTest'),\n\n    showTestForm: computed.or('hasLatestTest', 'hasConfirmedNewTest'),\n\n    hasNoTests: computed('fitting.latestTest', function () {\n      return !this.get('fitting.latestTest.id');\n    }),\n\n    test: computed('latestTest.id', 'newTest.id', 'hasConfirmedNewTest', function () {\n      return this.get('latestTest.id') && !this.get('hasConfirmedNewTest') ? this.get('latestTest') : this.get('newTest');\n    }),\n\n    shouldShowTestEventWarning: computed('testDate', function () {\n      var testDate = this.get('testDate');\n      var startDate = this.get('testEvent.startDate');\n      var endDate = this.get('testEvent.endDate');\n      return testDate && this.get('testEvent.id') && !(0, _moment.default)(testDate).isBetween(startDate, endDate, null, '[]');\n    }),\n\n    // Observers\n\n    testIdDidChange: observer('test.id', function () {\n      if (!this.get('test.isNew')) {\n        this.set('currentLatestTest', this.get('latestTest'));\n      }\n      this.setStaticAttributes(this.get('fitting'), this.get('test'));\n    }),\n\n    // Component hooks\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#test-and-status-form'));\n    },\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.setStaticAttributes(this.get('fitting'), this.get('test'));\n      this.set('currentLatestTest', this.get('latestTest'));\n    },\n\n\n    // Methods\n\n    setStaticAttributes: function setStaticAttributes(fitting, test) {\n      this.set('testStatus', test.get('testStatus'));\n      this.set('testDate', test.get('testDate'));\n      this.set('runTime', test.get('runTime'));\n      this.set('nextTestDate', test.get('nextTestDate'));\n      this.set('requiredDuration', test.get('requiredDuration'));\n      this.set('batteryStatus', fitting.get('batteryStatus'));\n      this.set('lampStatus', fitting.get('lampStatus'));\n      this.set('controlGearStatus', fitting.get('controlGearStatus'));\n    },\n    updateTestAndFitting: function updateTestAndFitting() {\n      this.set('test.testStatus', this.get('testStatus'));\n      this.set('test.testDate', this.get('testDate'));\n      this.set('test.runTime', this.get('runTime'));\n      this.set('test.nextTestDate', this.get('nextTestDate'));\n      this.set('test.requiredDuration', this.get('requiredDuration'));\n      this.set('fitting.batteryStatus', this.get('batteryStatus'));\n      this.set('fitting.lampStatus', this.get('lampStatus'));\n      this.set('fitting.controlGearStatus', this.get('controlGearStatus'));\n    },\n    resetTestAndFitting: function resetTestAndFitting() {\n      this.set('testStatus', this.get('test.testStatus'));\n      this.set('testDate', this.get('test.testDate'));\n      this.set('runTime', this.get('test.runTime'));\n      this.set('nextTestDate', this.get('test.nextTestDate'));\n      this.set('requiredDuration', this.get('test.requiredDuration'));\n      this.set('batteryStatus', this.get('fitting.batteryStatus'));\n      this.set('lampStatus', this.get('fitting.lampStatus'));\n      this.set('controlGearStatus', this.get('fitting.controlGearStatus'));\n    },\n    resetTestFields: function resetTestFields() {\n      this.set('testStatus', '');\n      this.set('testDate', '');\n      this.set('runTime', '');\n      this.set('nextTestDate', '');\n      this.set('requiredDuration', '');\n    },\n\n\n    actions: {\n      cancel: function cancel() {\n        this.set('didValidate', false);\n        this.set('latestTest', this.get('currentLatestTest'));\n        this.resetTestAndFitting();\n        this.set('isConfirmAddNewTest', false);\n        this.set('hasConfirmedNewTest', false);\n        this.sendAction('cancel');\n      },\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.updateTestAndFitting();\n          this.set('isConfirmAddNewTest', false);\n          this.sendAction('save', this.get('fitting'), this.get('test'));\n          this.set('hasConfirmedNewTest', false);\n          this.set('didValidate', false);\n        }\n      },\n      addNewTest: function addNewTest() {\n        this.set('isConfirmAddNewTest', true);\n      },\n      confirm: function confirm() {\n        this.sendAction('edit');\n        this.set('currentLatestTest', this.get('latestTest'));\n        this.resetTestFields();\n\n        this.set('hasConfirmedNewTest', true);\n        this.set('isConfirmAddNewTest', false);\n      },\n      showDeleteTestModal: function showDeleteTestModal() {\n        this.set('showDeleteTestModal', true);\n      },\n      closeDeleteTestModal: function closeDeleteTestModal() {\n        this.set('showDeleteTestModal', false);\n      },\n      deleteTest: function deleteTest() {\n        this.set('isQueryPending', true);\n        this.sendAction('deleteTest', this.get('test'));\n        this.set('showDeleteTestModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/test-event-add-groups-form', ['exports', 'clever-sparky-frontend/components/forms/test-event-groups-form'], function (exports, _testEventGroupsForm) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _testEventGroupsForm.default.extend({});\n});","define('clever-sparky-frontend/components/forms/test-event-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/test-event'], function (exports, _ember, _toggleLabelFocus, _testEvent) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_toggleLabelFocus.default, _testEvent.TestEventValidations, {\n    // Hooks\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#test-event-form'));\n    },\n\n\n    // Attributes\n    didValidate: false,\n\n    isQueryPending: false,\n\n    // Properties\n    startDate: computed(function () {\n      return this.get('testEvent.startDate');\n    }),\n\n    endDate: computed(function () {\n      return this.get('testEvent.endDate');\n    }),\n\n    isEditMode: computed.equal('type', 'edit'),\n\n    isDuplicateMode: computed.equal('type', 'duplicate'),\n\n    isEditOrDuplicateMode: computed.or('isEditMode', 'isDuplicateMode'),\n\n    canSubmit: computed.alias('validations.isValid'),\n\n    // Methods\n\n    updateTestEvent: function updateTestEvent() {\n      if (!this.get('isEditMode')) {\n        this.set('testEvent.label', this.get('label'));\n      }\n\n      this.set('testEvent.startDate', this.get('startDate'));\n      this.set('testEvent.endDate', this.get('endDate'));\n    },\n\n\n    actions: {\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('canSubmit')) {\n          this.updateTestEvent();\n          this.set('isQueryPending', true);\n          this.attrs.save(this.get('testEvent'));\n        }\n      },\n      next: function next() {\n        this.set('didValidate', true);\n\n        if (this.get('canSubmit')) {\n          this.updateTestEvent();\n          this.attrs.submit(this.get('testEvent'));\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/test-event-groups-form', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    selectedGroups: [],\n\n    showErrorMessage: false,\n\n    actions: {\n      updateSelection: function updateSelection(newSelection, value, operation) {\n        if (value.name === 'All Groups' && operation === 'added') {\n          this.set('selectedGroups', this.get('groupOptions').copy());\n        } else if (value.name === 'All Groups' && operation === 'removed') {\n          this.set('selectedGroups', []);\n        } else if (operation === 'removed') {\n          if (newSelection.length && newSelection[0].name === 'All Groups') {\n            var selectedGroups = newSelection.slice(1);\n            this.set('selectedGroups', selectedGroups);\n          }\n        }\n        this.set('showErrorMessage', false);\n      },\n      actionClicked: function actionClicked() {\n        var selectedGroups = this.get('selectedGroups');\n        if (selectedGroups.length && selectedGroups[0].name === 'All Groups') {\n          selectedGroups = selectedGroups.slice(1);\n        }\n\n        if (!selectedGroups.length) {\n          this.set('showErrorMessage', true);\n        } else {\n          this.attrs.clickAction(selectedGroups);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/test-event-remove-groups-form', ['exports', 'clever-sparky-frontend/components/forms/test-event-groups-form'], function (exports, _testEventGroupsForm) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _testEventGroupsForm.default.extend({});\n});","define('clever-sparky-frontend/components/forms/update-fitting-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/update-fitting-details', 'moment'], function (exports, _ember, _toggleLabelFocus, _updateFittingDetails, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      inject = _ember.default.inject,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_updateFittingDetails.FittingValidations, _toggleLabelFocus.default, {\n    // Services\n\n    fittingLookup: inject.service(),\n\n    // Hooks\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#update-fitting-form'));\n    },\n\n\n    // Attributes\n\n    didValidate: false,\n\n    isQueryPending: false,\n\n    serialNumber: '',\n\n    fittingType: '',\n\n    installDate: '',\n\n    maxDate: (0, _moment.default)(),\n\n    previousSerialNumber: '',\n\n    shouldShowTestEventWarning: computed('installDate', 'testEvent.endDate', function () {\n      var installDate = this.get('installDate');\n      var endDate = this.get('testEvent.endDate');\n      return installDate && endDate && !(0, _moment.default)(installDate).isSameOrBefore(endDate);\n    }),\n\n    // Methods\n\n    updateFitting: function updateFitting() {\n      this.set('fitting.serialNumber', this.get('serialNumber'));\n      this.set('fitting.fittingType', this.get('fittingType'));\n      this.set('fitting.installDate', this.get('installDate'));\n    },\n\n\n    actions: {\n      update: function update() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n          this.updateFitting();\n          this.sendAction('update', this.get('fitting'));\n        }\n      },\n      lookupFittingInfo: function lookupFittingInfo() {\n        var _this = this;\n\n        if (this.get('serialNumber') && this.get('serialNumber') !== this.get('previousSerialNumber')) {\n          this.set('previousSerialNumber', this.get('serialNumber'));\n          this.get('fittingLookup').lookupFittingInfo(this.get('serialNumber')).then(function (_ref) {\n            var fittingType = _ref.fittingType;\n\n            if (fittingType) {\n              _this.set('fittingType', fittingType);\n            } else {\n              _this.set('fittingType', '');\n            }\n          });\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/user-details-form', ['exports', 'ember', 'clever-sparky-frontend/components/forms/user-form', 'clever-sparky-frontend/mixins/option-lookup', 'ember-macaroni'], function (exports, _ember, _userForm, _optionLookup, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      run = _ember.default.run;\n  exports.default = _userForm.default.extend(_optionLookup.default, {\n\n    // Attributes\n\n    inputsDisabled: true,\n\n    // Properties\n\n    hasGrantedPurchaseRights: computed.reads('employment.checkoutPermission'),\n\n    isCheckboxSelected: computed.reads('hasGrantedPurchaseRights'),\n\n    userRoleOption: (0, _emberMacaroni.findFromCollectionByKey)('userTypeOptions', 'value', 'employment.role'),\n\n    roleLabel: computed.alias('userRoleOption.label'),\n\n    showGrantPurchasingRights: computed.equal('roleLabel', 'Technician'),\n\n    // Methods\n    grantPurchasingRights: function grantPurchasingRights() {\n      this.set('hasGrantedPurchaseRights', true);\n      this.set('employment.checkoutPermission', true);\n      this.attrs.updatePurchasingRights(this.get('employment'));\n    },\n    revokePurchasingRights: function revokePurchasingRights() {\n      this.set('hasGrantedPurchaseRights', false);\n      this.set('employment.checkoutPermission', false);\n      this.attrs.updatePurchasingRights(this.get('employment'));\n    },\n    handleUpdatePurchasingRights: function handleUpdatePurchasingRights() {\n      if (this.get('isCheckboxSelected') && !this.get('hasGrantedPurchaseRights')) {\n        this.grantPurchasingRights();\n      } else if (!this.get('isCheckboxSelected') && this.get('hasGrantedPurchaseRights')) {\n        this.revokePurchasingRights();\n      }\n    },\n\n\n    actions: {\n      toggleCheckboxSelected: function toggleCheckboxSelected() {\n        this.toggleProperty('isCheckboxSelected');\n        run.debounce(this, this.handleUpdatePurchasingRights, 300);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/forms/user-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/mixins/countries-and-states', 'clever-sparky-frontend/mixins/handle-error', 'ember-macaroni', 'clever-sparky-frontend/validators/forms/edit-user-validator'], function (exports, _ember, _toggleLabelFocus, _countriesAndStates, _handleError, _emberMacaroni, _editUserValidator) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  function _asyncToGenerator(fn) {\n    return function () {\n      var gen = fn.apply(this, arguments);\n      return new Promise(function (resolve, reject) {\n        function step(key, arg) {\n          try {\n            var info = gen[key](arg);\n            var value = info.value;\n          } catch (error) {\n            reject(error);\n            return;\n          }\n\n          if (info.done) {\n            resolve(value);\n          } else {\n            return Promise.resolve(value).then(function (value) {\n              step(\"next\", value);\n            }, function (err) {\n              step(\"throw\", err);\n            });\n          }\n        }\n\n        return step(\"next\");\n      });\n    };\n  }\n\n  var service = _ember.default.inject.service;\n  var Component = _ember.default.Component,\n      get = _ember.default.get,\n      set = _ember.default.set,\n      computed = _ember.default.computed,\n      observer = _ember.default.observer,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Component.extend(_toggleLabelFocus.default, _editUserValidator.EditUserValidations, _countriesAndStates.default, _handleError.default, {\n    // Services\n    holdvaribles: inject.service('holdvaribles'),\n    filename: '',\n    filenameSig: '',\n    features: inject.service(),\n\n    // Attributes\n\n    didValidate: false,\n\n    isEditing: false,\n\n    imgupload: false,\n\n    imguploadSig: false,\n\n    inputsDisabled: computed.not('isEditing'),\n\n    isQueryPending: false,\n\n    wholesalers: [],\n\n    username: '',\n\n    password: '',\n\n    imginfo: '',\n\n    sigimginfo: '',\n\n    authorizableWholesalers: ['MMEM', 'L&H'],\n\n    // Hooks\n\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#user-form'));\n    },\n\n\n    // Properties\n    imgbeeninguploadedalready: computed(function () {\n\n      var tmpvalue = this.get('user.signatureurl');\n      if (tmpvalue != null) {\n        return true;\n      } else {\n        return false;\n      }\n    }),\n    signatureurl: computed(function () {\n      return this.get('user.signatureurl');\n    }),\n\n    logox: computed(function () {\n\n      var tmpget = this.get('imgurl');\n\n      if (tmpget === '' || tmpget == null) {\n        return false;\n      } else {\n        return true;\n      }\n    }),\n    nosignaturelogox: computed(function () {\n\n      var tmpget = this.get('signatureurl');\n\n      if (tmpget === '' || tmpget == null) {\n        return true;\n      } else {\n        return false;\n      }\n    }),\n    isShoppingCartEnabled: computed(function () {\n      return this.get('features').isEnabled('shopping-cart');\n    }),\n\n    firstName: computed(function () {\n      return this.get('user.firstName');\n    }),\n\n    lastName: computed(function () {\n      return this.get('user.lastName');\n    }),\n\n    email: computed(function () {\n      return this.get('user.email');\n    }),\n\n    phone: computed(function () {\n      return this.get('user.phone');\n    }),\n\n    country: computed(function () {\n      return this.get('user.country');\n    }),\n\n    state: computed(function () {\n      return this.get('user.state');\n    }),\n\n    displayWholesalers: computed('wholesalers.[]', function () {\n      var wholesalerObjects = this.get('wholesalers').map(function (wholesaler) {\n        return { label: wholesaler.get('name'), value: wholesaler };\n      });\n\n      wholesalerObjects.push({ label: 'Other', value: null });\n\n      return wholesalerObjects;\n    }),\n\n    wholesaler: computed(function () {\n      return this.get('user.wholesaler.content');\n    }),\n\n    isNewZealand: computed.equal('country', 'New Zealand'),\n\n    states: (0, _emberMacaroni.ifThenElseWithKeys)('isNewZealand', 'newZealandStates', 'australianStates'),\n\n    hasSelectedWholesaler: computed.notEmpty('wholesaler'),\n\n    isWholesalerAuthAllowed: computed('isShoppingCartEnabled', 'authorizableWholesalers.[]', 'wholesaler', function () {\n      return this.get('isShoppingCartEnabled') && this.get('authorizableWholesalers').includes(this.get('wholesaler.name'));\n    }),\n\n    postcode: computed(function () {\n\n      return this.get('user.postcode');\n    }),\n\n    RFN: computed(function () {\n      return this.get('user.rfn');\n    }),\n\n    ABN: computed(function () {\n      return this.get('user.abn');\n    }),\n\n    QBCC: computed(function () {\n      return this.get('user.qbcc');\n    }),\n\n    Reportphone: computed(function () {\n      return this.get('user.reportphone');\n    }),\n\n    imgurl: computed(function () {\n      var tmp = this.get('user.imgurl');\n      return tmp;\n    }),\n\n    showWholesalerAuthFields: computed.and('hasSelectedWholesaler', 'isWholesalerAuthAllowed', 'isEditing'),\n\n    hasUsername: computed.notEmpty('username'),\n\n    hasPassword: computed.notEmpty('password'),\n\n    hasEnteredAuthDetails: computed.and('hasUsername', 'hasPassword'),\n\n    shouldPerformWholesalerAuth: computed.and('isWholesalerAuthAllowed', 'hasEnteredAuthDetails'),\n\n    // Observers\n\n    countryChanged: observer('country', function () {\n      this.set('state', '');\n    }),\n\n    hasShownWholesalerAuthFields: observer('showWholesalerAuthFields', function () {\n      if (this.get('showWholesalerAuthFields')) {\n        this.toggleLabelFocus(this.$('#user-form'));\n      }\n    }),\n\n    // Methods\n\n    updateUser: function updateUser() {\n      var getfilname = this.get('filename');\n      var filename = 'https://' + ENV.uploadmediabucket + '.s3.amazonaws.com/' + getfilname;\n      filename = filename.replace(/\\s+/g, '%20');\n\n      var getfilnameSig = this.get('filenameSig');\n      var filenamesig = 'https://cleversparkysignatures.s3.amazonaws.com/' + getfilnameSig;\n      filenamesig = filenamesig.replace(/\\s+/g, '%20');\n\n      this.set('user.firstName', this.get('firstName'));\n      this.set('user.lastName', this.get('lastName'));\n      this.set('user.email', this.get('email'));\n      this.set('user.phone', this.get('phone'));\n      this.set('user.country', this.get('country'));\n      this.set('user.state', this.get('state'));\n      this.set('user.wholesaler', this.get('wholesaler'));\n      this.set('user.postcode', this.get('postcode'));\n      this.set('user.rfn', this.get('RFN'));\n      this.set('user.abn', this.get('ABN'));\n      this.set('user.qbcc', this.get('QBCC'));\n      this.set('user.reportphone', this.get('Reportphone'));\n      this.set('user.editpage', true);\n      var filecheck = get(this, 'file');\n      var filecheckSig = get(this, 'fileSig');\n      if (filecheck != null) {\n        this.set('user.imgurl', filename);\n      }\n\n      if (filecheckSig != null) {\n        this.set('user.signatureurl', filenamesig);\n        this.set('user.sigfilename', getfilnameSig);\n      }\n    },\n    resetUser: function resetUser() {\n      this.set('firstName', this.get('user.firstName'));\n      this.set('lastName', this.get('user.lastName'));\n      this.set('email', this.get('user.email'));\n      this.set('phone', this.get('user.phone'));\n      this.set('country', this.get('user.country'));\n      this.set('state', this.get('user.state'));\n      this.set('wholesaler', this.get('user.wholesaler.content'));\n    },\n    clearWholesalerAuthFields: function clearWholesalerAuthFields() {\n      this.set('username', '');\n      this.set('password', '');\n    },\n\n    signedRequest: service(),\n    s3Upload: service(),\n\n    uploadImage: function () {\n      var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee() {\n        var fileName, testint, fileType, signedData;\n        return regeneratorRuntime.wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileName = '' + get(this, 'file.name');\n                testint = this.getRandomInt(1, 100000);\n\n                this.set('filename', testint + fileName);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'file.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context.next = 6;\n                return get(this, 'signedRequest').getUrl(testint + fileName, fileType);\n\n              case 6:\n                signedData = _context.sent;\n                _context.next = 9;\n                return get(this, 's3Upload').uploadFile(get(this, 'file'), signedData);\n\n              case 9:\n                set(this, 'url', signedData.url);\n                _context.next = 12;\n                return window.location.reload(true);\n\n              case 12:\n              case 'end':\n                return _context.stop();\n            }\n          }\n        }, _callee, this);\n      }));\n\n      function uploadImage() {\n        return _ref.apply(this, arguments);\n      }\n\n      return uploadImage;\n    }(),\n    uploadImageSig: function () {\n      var _ref2 = _asyncToGenerator(regeneratorRuntime.mark(function _callee2() {\n        var fileNamesig, testint, fileType, signedData;\n        return regeneratorRuntime.wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileNamesig = '' + get(this, 'fileSig.name');\n                testint = this.getRandomInt(1, 100000);\n\n\n                this.set('filenameSig', testint + fileNamesig);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'fileSig.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context2.next = 6;\n                return get(this, 'signedRequest').getUrl(testint + fileNamesig, fileType);\n\n              case 6:\n                signedData = _context2.sent;\n                _context2.next = 9;\n                return get(this, 's3Upload').uploadFile(get(this, 'fileSig'), signedData);\n\n              case 9:\n                set(this, 'url', signedData.url);\n                _context2.next = 12;\n                return window.location.reload(true);\n\n              case 12:\n              case 'end':\n                return _context2.stop();\n            }\n          }\n        }, _callee2, this);\n      }));\n\n      function uploadImageSig() {\n        return _ref2.apply(this, arguments);\n      }\n\n      return uploadImageSig;\n    }(),\n    uploadImageD: function () {\n      var _ref3 = _asyncToGenerator(regeneratorRuntime.mark(function _callee3() {\n        var fileName, fileType;\n        return regeneratorRuntime.wrap(function _callee3$(_context3) {\n          while (1) {\n            switch (_context3.prev = _context3.next) {\n              case 0:\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileName = '' + get(this, 'file.name');\n\n\n                this.set('filename', fileName);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'file.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context3.next = 5;\n                return get(this, 'signedRequest').getUrl(fileName, fileType);\n\n              case 5:\n                _context3.next = 7;\n                return window.location.reload(true);\n\n              case 7:\n              case 'end':\n                return _context3.stop();\n            }\n          }\n        }, _callee3, this);\n      }));\n\n      function uploadImageD() {\n        return _ref3.apply(this, arguments);\n      }\n\n      return uploadImageD;\n    }(),\n    uploadImageSigD: function () {\n      var _ref4 = _asyncToGenerator(regeneratorRuntime.mark(function _callee4() {\n        var fileNamesig, fileType;\n        return regeneratorRuntime.wrap(function _callee4$(_context4) {\n          while (1) {\n            switch (_context4.prev = _context4.next) {\n              case 0:\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileNamesig = '' + get(this, 'fileSig.name');\n\n\n                this.set('filenameSig', fileNamesig);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'fileSig.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context4.next = 5;\n                return get(this, 'signedRequest').getUrl(fileNamesig, fileType);\n\n              case 5:\n                _context4.next = 7;\n                return window.location.reload(true);\n\n              case 7:\n              case 'end':\n                return _context4.stop();\n            }\n          }\n        }, _callee4, this);\n      }));\n\n      function uploadImageSigD() {\n        return _ref4.apply(this, arguments);\n      }\n\n      return uploadImageSigD;\n    }(),\n    getRandomInt: function getRandomInt(min, max) {\n      min = Math.ceil(min);\n      max = Math.floor(max);\n      return Math.floor(Math.random() * (max - min + 1)) + min;\n    },\n    init: function init() {\n      this._super.apply(this, arguments);\n    },\n\n\n    actions: {\n      fileLoaded: function fileLoaded(file) {\n        this.set('imgupload', true);\n        if (file.type === 'image/jpg' || file.type === 'image/jpeg' || file.type === 'image/png') {\n          set(this, 'file', file);\n        } else {\n          this.set('imginfo', ' logo image needs to be .jpg, .png, or .jpeg format');\n        }\n      },\n      fileLoadedSig: function fileLoadedSig(file) {\n        this.set('nosignaturelogox', false);\n\n        this.set('imguploadSig', true);\n        var filecopy = file;\n\n        if (file.type === 'image/jpg' || file.type === 'image/jpeg' || file.type === 'image/png') {\n          set(this, 'fileSig', filecopy);\n        } else {\n          this.set('sigimginfo', 'Signature image needs to be .jpg, .png, or .jpeg format');\n        }\n      },\n      edit: function edit() {\n        this.set('isEditing', true);\n      },\n      cancel: function cancel() {\n        this.resetUser();\n        this.set('isEditing', false);\n      },\n      save: function save() {\n        var _this = this;\n\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          var filecheck = get(this, 'file');\n          var filecheckSig = get(this, 'fileSig');\n\n          if (typeof filecheck !== 'undefined') {\n            get(this, 'uploadImage').bind(this)();\n          }\n\n          if (typeof filecheckSig !== 'undefined') {\n            this.get('holdvaribles').setupCurrentPhotoUploadSignatureBool(true);\n            get(this, 'uploadImageSig').bind(this)();\n          }\n\n          this.updateUser();\n          if (this.get('shouldPerformWholesalerAuth')) {\n            this.attrs.authenticateWholesaler(this.get('wholesaler'), this.get('username'), this.get('password')).then(function (wholesalerAuthDetails) {\n              _this.set('user.wholesalerAuthDetails', wholesalerAuthDetails);\n              _this.attrs.save(_this.get('user'));\n              _this.clearWholesalerAuthFields();\n            }).catch(function (reason) {\n              _this.handleRailsError({}, reason.error_description);\n            });\n          } else {\n            this.attrs.save(this.get('user'));\n          }\n          this.set('isQueryPending', true);\n          //\n        }\n      },\n      deletesig: function deletesig() {\n\n        this.get('holdvaribles').setupCurrentPhotoUploadSignatureBool(true);\n        this.get('holdvaribles').setupCurrentPhotoUploadDeleteBool(true);\n        get(this, 'uploadImageSigD').bind(this)();\n      },\n      deletelogo: function deletelogo() {\n\n        this.get('holdvaribles').setupCurrentPhotoUploadSignatureBool(false);\n        this.get('holdvaribles').setupCurrentPhotoUploadDeleteBool(true);\n        get(this, 'uploadImageD').bind(this)();\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/forms/user-signup-form', ['exports', 'ember', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/mixins/countries-and-states', 'clever-sparky-frontend/validators/user-validator', 'ember-macaroni'], function (exports, _ember, _toggleLabelFocus, _countriesAndStates, _userValidator, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  function _asyncToGenerator(fn) {\n    return function () {\n      var gen = fn.apply(this, arguments);\n      return new Promise(function (resolve, reject) {\n        function step(key, arg) {\n          try {\n            var info = gen[key](arg);\n            var value = info.value;\n          } catch (error) {\n            reject(error);\n            return;\n          }\n\n          if (info.done) {\n            resolve(value);\n          } else {\n            return Promise.resolve(value).then(function (value) {\n              step(\"next\", value);\n            }, function (err) {\n              step(\"throw\", err);\n            });\n          }\n        }\n\n        return step(\"next\");\n      });\n    };\n  }\n\n  var service = _ember.default.inject.service;\n  var get = _ember.default.get,\n      set = _ember.default.set,\n      Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      observer = _ember.default.observer,\n      ENV = _ember.default.ENV,\n      inject = _ember.default.inject;\n  exports.default = Component.extend(_toggleLabelFocus.default, _countriesAndStates.default, _userValidator.UserValidations, {\n    holdvaribles: inject.service('holdvaribles'),\n    didInsertElement: function didInsertElement() {\n      this.toggleLabelFocus(this.$('#user-signup-form'));\n      this.focusFilledInputs(this.$('#user-signup-form'));\n    },\n\n    filename: '',\n    filename2: '',\n    filenameSig: '',\n    cstatement: '',\n    imgupload: false,\n    imgupload2: false,\n    imginfo: '',\n    sigimginfo: '',\n    firstName: computed(function () {\n      return this.get('user.firstName');\n    }),\n\n    lastName: computed(function () {\n      return this.get('user.lastName');\n    }),\n\n    email: computed(function () {\n      return this.get('user.email');\n    }),\n\n    phone: computed(function () {\n      return this.get('user.phone');\n    }),\n\n    userCountry: computed(function () {\n      return this.get('user.country');\n    }),\n\n    userState: computed(function () {\n      return this.get('user.state');\n    }),\n\n    password: computed(function () {\n      return this.get('user.password');\n    }),\n\n    passwordConfirmation: computed(function () {\n      return this.get('user.passwordConfirmation');\n    }),\n\n    organisationName: computed(function () {\n      return this.get('organisation.name');\n    }),\n\n    organisationCountry: computed(function () {\n      return this.get('organisation.country');\n    }),\n\n    organisationState: computed(function () {\n      return this.get('organisation.state');\n    }),\n\n    postcode: computed(function () {\n      return this.get('user.postcode');\n    }),\n\n    rfn: computed(function () {\n      return this.get('user.rfn');\n    }),\n    abn: computed(function () {\n      return this.get('user.abn');\n    }),\n    qbcc: computed(function () {\n      return this.get('user.qbcc');\n    }),\n    reportphone: computed(function () {\n      return this.get('user.reportphone');\n    }),\n\n    businessName: computed.alias('organisationName'),\n\n    businessNameFilled: computed.notEmpty('businessName'),\n\n    hasConfirmedAuthorization: false,\n\n    hasNotConfirmedAuthorization: computed.not('hasConfirmedAuthorization'),\n\n    cannotSubmitBusiness: computed.and('businessNameFilled', 'hasNotConfirmedAuthorization'),\n\n    cannotSubmit: computed.or('cannotSubmitBusiness', 'isQueryPending'),\n\n    updateUser: function updateUser() {\n\n      var getfilname = this.get('filename');\n      var filename = 'https://' + ENV.uploadmediabucket + '.s3.amazonaws.com/' + getfilname;\n      filename = filename.replace(/\\s+/g, '%20');\n\n      var getfilnameSig = this.get('filenameSig');\n      var filenamesig = 'https://cleversparkysignatures.s3.amazonaws.com/' + getfilnameSig;\n      filenamesig = filenamesig.replace(/\\s+/g, '%20');\n\n      this.set('user.firstName', this.get('firstName'));\n      this.set('user.lastName', this.get('lastName'));\n      this.set('user.email', this.get('email'));\n      this.set('user.phone', this.get('phone'));\n      this.set('user.country', this.get('userCountry'));\n      this.set('user.state', this.get('userState'));\n      this.set('user.password', this.get('password'));\n      this.set('user.passwordConfirmation', this.get('passwordConfirmation'));\n\n      this.set('user.postcode', this.get('postcode'));\n      this.set('user.rfn', this.get('rfn'));\n      this.set('user.abn', this.get('abn'));\n      this.set('user.qbcc', this.get('qbcc'));\n      this.set('user.reportphone', this.get('reportphone'));\n      var filecheck = get(this, 'file');\n      if (filecheck != null) {\n        this.set('user.imgurl', filename);\n      }\n\n      var filecheckSig = get(this, 'fileSig');\n      if (filecheckSig != null) {\n        this.set('user.signatureurl', filenamesig);\n        this.set('user.sigfilename', getfilnameSig);\n      }\n    },\n    updateOrganisation: function updateOrganisation() {\n      this.set('organisation.name', this.get('organisationName'));\n      this.set('organisation.country', this.get('organisationCountry'));\n      this.set('organisation.state', this.get('organisationState'));\n\n      this.set('organisation.cstatement', this.get('cstatement'));\n    },\n    resetUser: function resetUser() {\n      this.set('firstName', this.get('user.firstName'));\n      this.set('lastName', this.get('user.lastName'));\n      this.set('email', this.get('user.email'));\n      this.set('phone', this.get('user.phone'));\n      this.set('country', this.get('user.country'));\n      this.set('state', this.get('user.state'));\n      this.set('password', this.get('user.password'));\n      this.set('passwordConfirmation', this.get('user.passwordConfirmation'));\n    },\n\n\n    isUserCountryNewZealand: computed.equal('userCountry', 'New Zealand'),\n\n    userStates: (0, _emberMacaroni.ifThenElseWithKeys)('isUserCountryNewZealand', 'newZealandStates', 'australianStates'),\n\n    userCountryChanged: observer('userCountry', function () {\n      this.set('userState', '');\n    }),\n\n    isOrganisationCountryNewZealand: computed.equal('organisationCountry', 'New Zealand'),\n\n    organisationStates: (0, _emberMacaroni.ifThenElseWithKeys)('isOrganisationCountryNewZealand', 'newZealandStates', 'australianStates'),\n\n    organisationCountryChanged: observer('organisationCountry', function () {\n      this.set('organisationState', '');\n    }),\n\n    resetOrganisationFields: observer('organisationName', function () {\n      if (!this.get('organisationName')) {\n        this.set('organisationCountry', '');\n        this.set('organisationState', '');\n        this.set('hasConfirmedAuthorization', false);\n      }\n    }),\n\n    signedRequest: service(),\n    s3Upload: service(),\n\n    uploadImage: function () {\n      var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee() {\n        var fileName, testint, fileType, signedData;\n        return regeneratorRuntime.wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileName = '' + get(this, 'file.name');\n                testint = this.getRandomInt(1, 100000);\n\n                this.set('filename', testint + fileName);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'file.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context.next = 6;\n                return get(this, 'signedRequest').getUrl(testint + fileName, fileType);\n\n              case 6:\n                signedData = _context.sent;\n                _context.next = 9;\n                return get(this, 's3Upload').uploadFile(get(this, 'file'), signedData);\n\n              case 9:\n                set(this, 'url', signedData.url);\n\n                this.get('holdvaribles').setupCurrentPhotoUploadSignatureBool(true);\n\n              case 11:\n              case 'end':\n                return _context.stop();\n            }\n          }\n        }, _callee, this);\n      }));\n\n      function uploadImage() {\n        return _ref.apply(this, arguments);\n      }\n\n      return uploadImage;\n    }(),\n    uploadImageSig: function () {\n      var _ref2 = _asyncToGenerator(regeneratorRuntime.mark(function _callee2() {\n        var fileNamesig, testint, fileType, signedData;\n        return regeneratorRuntime.wrap(function _callee2$(_context2) {\n          while (1) {\n            switch (_context2.prev = _context2.next) {\n              case 0:\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileNamesig = '' + get(this, 'fileSig.name');\n                testint = this.getRandomInt(1, 100000);\n\n                this.set('filenameSig', testint + fileNamesig);\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n                fileType = get(this, 'fileSig.type');\n                // eslint-disable-next-line ember-suave/no-const-outside-module-scope\n\n                _context2.next = 6;\n                return get(this, 'signedRequest').getUrl(testint + fileNamesig, fileType);\n\n              case 6:\n                signedData = _context2.sent;\n                _context2.next = 9;\n                return get(this, 's3Upload').uploadFile(get(this, 'fileSig'), signedData);\n\n              case 9:\n                set(this, 'url', signedData.url);\n\n              case 10:\n              case 'end':\n                return _context2.stop();\n            }\n          }\n        }, _callee2, this);\n      }));\n\n      function uploadImageSig() {\n        return _ref2.apply(this, arguments);\n      }\n\n      return uploadImageSig;\n    }(),\n    getRandomInt: function getRandomInt(min, max) {\n      min = Math.ceil(min);\n      max = Math.floor(max);\n      return Math.floor(Math.random() * (max - min + 1)) + min;\n    },\n\n    actions: {\n      fileLoaded: function fileLoaded(file) {\n        this.set('imgupload', true);\n\n        if (file.type === 'image/jpg' || file.type === 'image/jpeg' || file.type === 'image/png') {\n          set(this, 'file', file);\n        } else {\n          this.set('imginfo', ' logo image needs to be .jpg, .png, or .jpeg format');\n        }\n      },\n      fileLoaded2: function fileLoaded2(file) {\n        this.set('imgupload2', true);\n\n        var filecopy = file;\n        if (file.type === 'image/jpg' || file.type === 'image/jpeg' || file.type === 'image/png') {\n          set(this, 'fileSig', filecopy);\n        } else {\n          this.set('sigimginfo', 'Signature image needs to be .jpg, .png, or .jpeg format');\n        }\n      },\n      submit: function submit() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          this.set('isQueryPending', true);\n\n          var filecheck = get(this, 'file');\n          var filecheckSig = get(this, 'fileSig');\n\n          if (typeof filecheck !== 'undefined') {\n            get(this, 'uploadImage').bind(this)();\n          }\n\n          if (typeof filecheckSig !== 'undefined') {\n            this.get('holdvaribles').setupCurrentPhotoUploadSignatureBool(true);\n            get(this, 'uploadImageSig').bind(this)();\n          }\n\n          this.updateUser();\n\n          this.set('user.organisations', []);\n          if (this.get('businessNameFilled') && this.get('hasConfirmedAuthorization')) {\n            this.updateOrganisation();\n            this.set('user.organisations', [this.get('organisation')]);\n          }\n          this.attrs.submit(this.get('user'));\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/group-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _ember, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _dropdownMenu.default.extend({\n    // Attributes\n\n    clickOutsideParentElementSelector: '.group-dropdown-menu',\n\n    classNames: ['dropdown-menu', 'group-dropdown-menu'],\n\n    // Properties\n\n    hasFittings: computed.bool('fittings.length'),\n\n    hasNoFittings: computed.not('hasFittings'),\n\n    hasOtherGroups: computed.gt('site.groupsCount', 1),\n\n    noOtherGroups: computed.not('hasOtherGroups'),\n\n    noFittingsOrGroups: computed.or('hasNoFittings', 'noOtherGroups'),\n\n    isShoppingCartEnabled: computed(function () {\n      return this.get('features').isEnabled('shoppingCart');\n    }),\n\n    actions: {\n      toggleDeleteFittings: function toggleDeleteFittings() {\n        this.attrs.toggleDeleteFittings();\n        this.send('close');\n      },\n      toggleMoveFittings: function toggleMoveFittings() {\n        this.attrs.toggleMoveFittings();\n        this.send('close');\n      },\n      showOrderReplacements: function showOrderReplacements() {\n        this.attrs.showOrderReplacements();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/group-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    groups: [],\n\n    selectedGroups: [],\n\n    isDeletingGroups: false,\n\n    hasNoRecords: computed.equal('groups.length', 0),\n\n    noGroupsSelected: computed.equal('selectedGroups.length', 0),\n\n    actions: {\n      toggleDeleteGroups: function toggleDeleteGroups() {\n        this.toggleProperty('isDeletingGroups');\n        this.set('selectedGroups', []);\n      },\n      deleteGroups: function deleteGroups(selectedGroups) {\n        this.attrs.batchDeleteGroups(selectedGroups);\n      },\n      showGroupDetails: function showGroupDetails(group) {\n        this.sendAction('showGroupDetails', group);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/image-uploader/component', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _ember.default.Component.extend({});\n});","define(\"clever-sparky-frontend/components/image-uploader/template\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"0EDW5S8M\", \"block\": \"{\\\"statements\\\":[[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/components/image-uploader/template.hbs\" } });\n});","define('clever-sparky-frontend/components/infinity-loader', ['exports', 'ember-infinity/components/infinity-loader'], function (exports, _infinityLoader) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _infinityLoader.default;\n});","define('clever-sparky-frontend/components/labeled-radio-button', ['exports', 'ember-radio-button/components/labeled-radio-button'], function (exports, _labeledRadioButton) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _labeledRadioButton.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/load-more-button', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    modelBeingPaginated: '',\n\n    canLoad: computed.not('infinityModel.reachedInfinity'),\n\n    loadText: computed(function () {\n      return 'Load More ' + this.get('modelBeingPaginated');\n    }),\n\n    totalObjects: computed.reads('infinityModel.meta.total-objects'),\n\n    numberOfItemsDisplayed: computed.reads('infinityModel.length'),\n\n    numberOfItemsDisplayedText: computed('numberOfItemsDisplayed', function () {\n\n      return '(Showing ' + this.get('numberOfItemsDisplayed') + ' of ' + this.get('totalObjects') + ')';\n    }),\n\n    actions: {\n      loadMore: function loadMore() {\n        this.infinityLoad(this.get('infinityModel'));\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/maintenance-delete-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['maintenance-delete-confirmation'],\n\n    isQueryPending: false,\n\n    actions: {\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      },\n      deleteMaintenance: function deleteMaintenance() {\n        this.set('isQueryPending', true);\n        this.sendAction('deleteMaintenance');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/maintenance-row', ['exports', 'ember', 'moment', 'clever-sparky-frontend/mixins/toggle-label-focus', 'clever-sparky-frontend/validators/forms/maintenance', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _ember, _moment, _toggleLabelFocus, _maintenance, _handleError, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend(_maintenance.MaintenanceValidations, _toggleLabelFocus.default, _handleError.default, _optionLookup.default, {\n\n    // Attributes\n\n    canEdit: false,\n\n    didValidate: false,\n\n    maintenance: null,\n\n    showUpdateFittingModal: false,\n\n    showDeleteMaintenanceModal: false,\n\n    isQueryPending: false,\n\n    maxDate: (0, _moment.default)(),\n\n    repairDate: null,\n\n    repair: '',\n\n    notes: '',\n\n    testEvent: null,\n\n    testEventFitting: null,\n\n    // Properties\n\n    inputsDisabled: computed.not('canEdit'),\n\n    isTestEventContextAndNotArchived: computed.not('testEvent.archived'),\n\n    showEdit: computed.and('save', 'inputsDisabled', 'isTestEventContextAndNotArchived'),\n\n    shouldShowTestEventWarning: computed('repairDate', 'testEvent.startDate', 'testEvent.endDate', function () {\n      var repairDate = this.get('repairDate');\n      var startDate = this.get('testEvent.startDate');\n      var endDate = this.get('testEvent.endDate');\n      return repairDate && startDate && !(0, _moment.default)(repairDate).isBetween(startDate, endDate, null, '[]');\n    }),\n\n    // Hooks\n\n    init: function init() {\n      this._super.apply(this, arguments);\n      this.setStaticAttributes(this.get('maintenance'));\n    },\n    didInsertElement: function didInsertElement() {\n      this._super.apply(this, arguments);\n      this.toggleLabelFocus(this.$('.maintenance-row'));\n    },\n\n\n    // Methods\n\n    setStaticAttributes: function setStaticAttributes(maintenance) {\n      this.set('repairDate', maintenance.get('repairDate'));\n      this.set('repair', maintenance.get('repair'));\n      this.set('notes', maintenance.get('notes'));\n    },\n    updateMaintenance: function updateMaintenance() {\n      this.set('maintenance.repairDate', this.get('repairDate'));\n      this.set('maintenance.repair', this.get('repair'));\n      this.set('maintenance.notes', this.get('notes'));\n    },\n    resetMaintenance: function resetMaintenance() {\n      this.set('repairDate', this.get('maintenance.repairDate'));\n      this.set('repair', this.get('maintenance.repair'));\n      this.set('notes', this.get('maintenance.notes'));\n    },\n\n\n    actions: {\n      edit: function edit() {\n        this.set('canEdit', true);\n      },\n      save: function save() {\n        this.set('didValidate', true);\n\n        if (this.get('validations.isValid')) {\n          if (this.get('repair') === 'fitting') {\n            this.set('showUpdateFittingModal', true);\n          } else {\n            this.updateMaintenance();\n            this.set('isQueryPending', true);\n            this.attrs.save(this.get('maintenance'));\n            this.set('canEdit', false);\n          }\n        }\n      },\n      showDeleteMaintenanceModal: function showDeleteMaintenanceModal() {\n        this.set('showDeleteMaintenanceModal', true);\n      },\n      closeDeleteMaintenanceModal: function closeDeleteMaintenanceModal() {\n        this.set('showDeleteMaintenanceModal', false);\n      },\n      delete: function _delete() {\n        var _this = this;\n\n        this.set('isQueryPending', true);\n        this.get('maintenance').destroyRecord().then(function () {\n          _this.set('canEdit', false);\n          _this.set('showDeleteMaintenanceModal', false);\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      },\n      update: function update(fitting) {\n        var _this2 = this;\n\n        if (this.get('testEvent')) {\n          fitting.set('testEvent', this.get('testEvent'));\n        }\n        fitting.save().then(function (fitting) {\n          _this2.set('canEdit', false);\n          _this2.set('showUpdateFittingModal', false);\n          if (_this2.get('testEventFitting')) {\n            var currentTestEventFittings = fitting.get('testEventFittings').toArray().map(function (testEventFitting) {\n              return testEventFitting.id;\n            });\n            if (!currentTestEventFittings.includes(_this2.get('testEventFitting.id'))) {\n              // testEventFitting no longer exists i.e. case where fitting.installDate is updated to outside test event range\n              _this2.updateMaintenance();\n              _this2.attrs.save(_this2.get('maintenance'), true);\n            }\n          } else {\n            _this2.updateMaintenance();\n            _this2.attrs.save(_this2.get('maintenance'));\n          }\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.set('isQueryPending', false);\n        });\n      },\n      closeUpdateFittingModal: function closeUpdateFittingModal() {\n        this.get('fitting').rollbackAttributes();\n        this.set('repair', '');\n        this.set('showUpdateFittingModal', false);\n      },\n      cancel: function cancel() {\n        this.set('canEdit', false);\n        this.set('didValidate', false);\n        this.resetMaintenance();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/maintenance-rows', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    canEdit: false\n\n  });\n});","define('clever-sparky-frontend/components/metric-chart', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    classNames: 'metric-chart',\n\n    chartColor: computed('color', function () {\n      var color = [];\n      switch (this.get('color')) {\n        case 'green':\n          color = ['#95c11f', 'rgba(149,193,31,0.2)'];\n          break;\n\n        case 'red':\n          color = ['#ba1312', 'rgba(186,19,18,0.1)'];\n          break;\n\n        case 'blue':\n          color = ['#004a99', 'rgba(0,74,153,0.1)'];\n          break;\n      }\n\n      return color;\n    }),\n\n    chartValues: computed('chartData', function () {\n      var value = this.get('chartData.value');\n      var total = this.get('chartData.total');\n      var chartData = value === total ? [value] : [value, total - value];\n      return {\n        datasets: [{\n          data: chartData,\n          backgroundColor: this.get('chartColor')\n        }]\n      };\n    }),\n\n    options: {\n      cutoutPercentage: 95,\n      legend: false,\n\n      tooltips: {\n        enabled: false\n      },\n\n      events: []\n    }\n\n  });\n});","define('clever-sparky-frontend/components/modal-success', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    actions: {\n      action: function action() {\n        this.attrs.action();\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/modal-view', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['modal-view'],\n\n    closeOnOverlayClick: false,\n\n    actions: {\n      closeModal: function closeModal() {\n        if (this.get('closeOnOverlayClick')) {\n          this.attrs.closeModal();\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/multiselect-checkboxes', ['exports', 'ember-multiselect-checkboxes/components/multiselect-checkboxes'], function (exports, _multiselectCheckboxes) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _multiselectCheckboxes.default;\n});","define('clever-sparky-frontend/components/nav-bar', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Component.extend({\n\n    postOnboardingTourNames: ['postOnboarding'],\n\n    features: inject.service(),\n\n    triggerContent: computed('currentOrganisation', 'currentUser', function () {\n      var currentOrganisation = this.get('currentOrganisation');\n      var currentUser = this.get('currentUser');\n      return currentOrganisation ? currentUser.get('truncatedName') + ' | ' + currentOrganisation.get('name') : currentUser.get('fullName');\n    }),\n\n    isAnalyticsEnabled: computed(function () {\n      return this.get('features').isEnabled('analytics');\n    })\n\n  });\n});","define('clever-sparky-frontend/components/onboarding-slide', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    // Attributes\n\n    classNames: ['onboarding-slide']\n\n  });\n});","define('clever-sparky-frontend/components/order-item-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    // Atributes\n    orderItems: [],\n\n    selectedItems: [],\n\n    isDeletingItems: false,\n\n    isCheckoutDisabled: false,\n\n    // Properties\n    hasNoRecords: computed.equal('orderItems.length', 0),\n\n    noItemsSelected: computed.equal('selectedItems.length', 0),\n\n    actions: {\n      cancelDeleteItems: function cancelDeleteItems() {\n        this.set('isDeletingItems', false);\n        this.set('selectedItems', []);\n      },\n      deleteItems: function deleteItems() {\n        this.set('isDeletingItems', true);\n      },\n      confirmDeleteItems: function confirmDeleteItems(selectedItems) {\n        this.attrs.batchDeleteItems(selectedItems);\n      },\n      checkout: function checkout() {\n        this.attrs.showCheckoutConfirmationModal();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/places-search-input', ['exports', 'ember', 'clever-sparky-frontend/mixins/click-outside'], function (exports, _ember, _clickOutside) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject,\n      run = _ember.default.run;\n  exports.default = Component.extend(_clickOutside.default, {\n\n    // Services\n\n    store: inject.service('store'),\n\n    // Component Attributes\n\n    classNames: ['places-search-input'],\n\n    clickOutsideParentElementSelector: '.places-search-input',\n\n    // Attributes\n\n    value: '',\n\n    places: [],\n\n    isQueryPending: false,\n\n    hasSearchResults: false,\n\n    lastQuery: '',\n\n    selectedPlaceName: '',\n\n    // Properties\n\n    placesDisplay: computed('places.[]', function () {\n      return this.get('places').map(function (place) {\n        return {\n          name: place.get('addressPrimary') + ', ' + place.get('addressSecondary'),\n          value: place\n        };\n      });\n    }),\n\n    showProgressBar: computed.alias('isQueryPending'),\n\n    showSearchResults: computed('hasSearchResults', 'isQueryPending', function () {\n      return this.get('hasSearchResults') && !this.get('isQueryPending');\n    }),\n\n    hasPlaces: computed.gt('places.length', 0),\n\n    hasSelectedPlace: computed.bool('selectedPlace'),\n\n    // Methods\n\n    onClickOutside: function onClickOutside() {\n      this.resetPlaces();\n    },\n    resetSelectedPlace: function resetSelectedPlace() {\n      this.set('placeId', null);\n    },\n    resetPlaces: function resetPlaces() {\n      this.set('places', []);\n    },\n    queryPlaces: function queryPlaces(query) {\n      var _this = this;\n\n      this.resetSelectedPlace();\n      this.set('isQueryPending', true);\n\n      this.get('store').query('place', {\n        filter: {\n          name: query\n        }\n      }).then(function (places) {\n        _this.set('lastQuery', query);\n        _this.set('isQueryPending', false);\n        _this.set('places', places);\n      });\n    },\n    checkQuery: function checkQuery(query) {\n      var hasQuery = !!query;\n      var isInputsDisabled = this.get('disabled');\n      var isValid = query.length >= 3;\n      var isNew = query !== this.get('lastQuery');\n      var isNotMatchingCurrentPlace = query !== this.get('selectedPlaceName');\n\n      return !isInputsDisabled && hasQuery && isValid && isNew && isNotMatchingCurrentPlace;\n    },\n\n\n    actions: {\n      selectResult: function selectResult(place) {\n        this.set('value', place.name);\n        this.set('selectedPlaceName', place.name);\n\n        this.set('placeId', place.value.get('id'));\n        this.resetPlaces();\n      },\n      updateQuery: function updateQuery(query) {\n        if (this.checkQuery(query)) {\n          run.debounce(this, this.queryPlaces, query, 300, true);\n        }\n      },\n      clearSearch: function clearSearch() {\n        this.set('value', '');\n        this.resetPlaces();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/power-calendar-multiple', ['exports', 'ember-power-calendar/components/power-calendar-multiple'], function (exports, _powerCalendarMultiple) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _powerCalendarMultiple.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar-multiple/days', ['exports', 'ember-power-calendar/components/power-calendar-multiple/days'], function (exports, _days) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _days.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar-range', ['exports', 'ember-power-calendar/components/power-calendar-range'], function (exports, _powerCalendarRange) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _powerCalendarRange.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar-range/days', ['exports', 'ember-power-calendar/components/power-calendar-range/days'], function (exports, _days) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _days.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar', ['exports', 'ember-power-calendar/components/power-calendar'], function (exports, _powerCalendar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _powerCalendar.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar/days', ['exports', 'ember-power-calendar/components/power-calendar/days'], function (exports, _days) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _days.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/power-calendar/nav', ['exports', 'ember-power-calendar/components/power-calendar/nav'], function (exports, _nav) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _nav.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/quick-test-defaults-modal', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    // Attributes\n    testEvent: null,\n\n    isQueryPending: false,\n\n    // Methods\n    save: function save() {},\n\n\n    actions: {\n      submitQuickTestDefaults: function submitQuickTestDefaults(testEvent) {\n        this.set('isQueryPending', true);\n        this.attrs.save(testEvent);\n      },\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/quick-test-modal', ['exports', 'ember', 'ember-macaroni'], function (exports, _ember, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n    // Attributes\n    isQuickTestPassModal: false,\n\n    // Properties\n    headingText: (0, _emberMacaroni.ifThenElseWithValues)('isQuickTestPassModal', 'Mark Selected Fittings as Pass', 'Mark Selected Fittings as Fail'),\n\n    isQuickTestPassForm: computed.alias('isQuickTestPassModal'),\n\n    // Methods\n    closeModal: function closeModal() {},\n    save: function save() {},\n\n\n    actions: {\n      save: function save(testAttributes) {\n        this.attrs.save(testAttributes);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/radio-button-input', ['exports', 'ember-radio-button/components/radio-button-input'], function (exports, _radioButtonInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _radioButtonInput.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/radio-button', ['exports', 'ember-radio-button/components/radio-button'], function (exports, _radioButton) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _radioButton.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/replacement-option-button', ['exports', 'ember', 'ember-macaroni', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _ember, _emberMacaroni, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      run = _ember.default.run;\n  exports.default = Component.extend(_optionLookup.default, {\n\n    // Attributes\n    classNames: 'replacement-option-button',\n\n    classNameBindings: ['hideReplacementOption:hide-option'],\n\n    partType: '',\n\n    // Properties\n\n    hasAlreadyOrderedReplacement: computed(function () {\n      return this.get('fitting.orderedPartTypesArray').mapBy('type').includes(this.get('partType'));\n    }),\n\n    isSelected: computed.reads('hasAlreadyOrderedReplacement'),\n\n    hideReplacementOption: computed('fitting.availablePartTypesArray.[]', 'hasAlreadyOrderedReplacement', 'partType', function () {\n      var partType = this.get('partType');\n      return !this.get('fitting.availablePartTypesArray').mapBy('type').includes(partType) && !this.get('hasAlreadyOrderedReplacement');\n    }),\n\n    partTypeObj: (0, _emberMacaroni.findFromCollectionByKey)('partTypeOptions', 'value', 'partType'),\n\n    // Methods\n\n    handleOrderItemRequest: function handleOrderItemRequest() {\n      if (this.get('isSelected') && !this.get('hasAlreadyOrderedReplacement')) {\n        this.set('hasAlreadyOrderedReplacement', true);\n        this.attrs.addOrderItem(this.get('fitting'), this.get('partType'));\n      } else if (!this.get('isSelected') && this.get('hasAlreadyOrderedReplacement')) {\n        this.set('hasAlreadyOrderedReplacement', false);\n        this.attrs.removeOrderItem(this.get('fitting'), this.get('partType'));\n      }\n    },\n\n\n    actions: {\n      buttonClicked: function buttonClicked() {\n        this.toggleProperty('isSelected');\n        run.debounce(this, this.handleOrderItemRequest, 300);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/report-modal-delete', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      inject = _ember.default.inject;\n  exports.default = Component.extend({\n    store: inject.service(),\n\n    classNames: ['report-modal-delete'],\n\n    selectedTemplate: null,\n\n    actions: {\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      },\n      deleteTemplate: function deleteTemplate() {\n        var temp1 = this.get('selectedTemplate');\n\n        var temp = this.get('store').peekRecord('template', temp1.id);\n        temp.destroyRecord();\n        this.sendAction('closeModal');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/search-bar', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      run = _ember.default.run,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    // Attributes\n\n    classNames: ['search-bar'],\n\n    placeholder: 'Search',\n\n    lastQuery: '',\n\n    query: '',\n\n    // Properties\n    searchTerm: computed.reads('query'),\n\n    // Methods\n\n    checkQuery: function checkQuery(query) {\n      return query !== this.get('lastQuery');\n    },\n    setSearchFilter: function setSearchFilter(query) {\n      this.set('lastQuery', query);\n      this.attrs.search(query);\n    },\n\n\n    actions: {\n      query: function query(term) {\n        if (this.checkQuery(term)) {\n          run.debounce(this, this.setSearchFilter, term, 300);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/shopping-cart-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _ember, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _dropdownMenu.default.extend({\n\n    clickOutsideParentElementSelector: '.shopping-cart-dropdown-menu',\n\n    classNames: ['dropdown-menu', 'shopping-cart-dropdown-menu'],\n\n    hasNoOrderItems: computed.empty('currentOrderGroups'),\n\n    actions: {\n      downloadCartReport: function downloadCartReport() {\n        this.attrs.downloadCartReport();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/shopping-cart-group-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    // Atributes\n    currentOrderGroups: [],\n\n    selectedGroups: [],\n\n    isSelectingGroups: false,\n\n    isCheckingOut: false,\n\n    isCheckoutDisabled: false,\n\n    // Properties\n    hasNoRecords: computed.empty('currentOrderGroups'),\n\n    noGroupsSelected: computed.empty('selectedGroups'),\n\n    actions: {\n      showOrderItems: function showOrderItems(group) {\n        this.attrs.showOrderItems(group);\n      },\n      cancelCheckout: function cancelCheckout() {\n        this.set('isCheckingOut', false);\n        this.set('selectedGroups', []);\n      },\n      checkout: function checkout() {\n        this.set('isCheckingOut', true);\n      },\n      confirmCheckout: function confirmCheckout(selectedGroups) {\n        this.attrs.showCheckoutConfirmationModal(selectedGroups);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/site-admin', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n    hasNoRecords: computed.equal('sites.length', 0),\n\n    isQueryPending: false,\n\n    postOnboardingTourNames: [],\n\n    viewRestrictedSitesTourNames: ['viewRestrictedSites'],\n\n    actions: {\n      showSite: function showSite(site) {\n        this.sendAction('showSiteDetails', site);\n      },\n      showLogin: function showLogin() {\n        // this.sendAction('showAdminLogin', userid);\n      },\n      requestAccess: function requestAccess(site) {\n        this.set('isQueryPending', true);\n        this.attrs.requestSiteAccess(site);\n      },\n      toggleSort: function toggleSort(column) {\n        this.attrs.sort(column);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/site-details-dropdown-menu', ['exports', 'clever-sparky-frontend/components/dropdown-menu', 'ember-can'], function (exports, _dropdownMenu, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _dropdownMenu.default.extend(_emberCan.CanMixin, {\n    clickOutsideParentElementSelector: '.site-details-dropdown-menu',\n    classNames: ['dropdown-menu site-details-dropdown-menu'],\n\n    actions: {\n      edit: function edit() {\n        this.attrs.edit();\n        this.send('close');\n      },\n      delete: function _delete() {\n        this.attrs.delete();\n        this.send('close');\n      },\n      openTransferSiteModal: function openTransferSiteModal() {\n        this.attrs.openTransferSiteModal();\n        this.send('close');\n      },\n      openTransferSiteToUserModal: function openTransferSiteToUserModal() {\n        this.attrs.openTransferSiteToUserModal();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/site-header', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      ENV = _ember.default.ENV;\n  exports.default = Component.extend({\n\n    // Attributes\n\n    uploadStatus: null,\n\n    progress: 0,\n\n    fileName: '',\n\n    csvTemplatePath: ENV.csvTemplatePath,\n\n    viewSiteTourNames: [],\n\n    // Properties\n\n    noGroups: computed.equal('site.groupsCount', 0),\n\n    businessName: computed.reads('site.businessName')\n\n  });\n});","define('clever-sparky-frontend/components/site-menu', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    site: null,\n\n    classNames: ['site-menu'],\n\n    isAllfittingsActive: false,\n\n    isGroupsActive: false,\n\n    isTestEventsActive: false,\n\n    isShoppingCartActive: false,\n\n    viewSiteTourNames: [],\n\n    isTestEventsEnabled: computed(function () {\n      return this.get('features').isEnabled('test-events');\n    }),\n\n    isShoppingCartEnabled: computed(function () {\n      return this.get('features').isEnabled('shopping-cart');\n    }),\n\n    orderItemsCount: computed('site.currentOrder.orderItemsCount', function () {\n      return this.get('site.currentOrder.orderItemsCount') ? this.get('site.currentOrder.orderItemsCount') : 0;\n    }),\n\n    showOrderItemsCount: computed.gt('orderItemsCount', 0)\n\n  });\n});","define('clever-sparky-frontend/components/site-permission-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    hasNoRecords: computed.equal('sitePermissions.length', 0),\n\n    actions: {\n      removeAccess: function removeAccess(sitePermission) {\n        this.set('isQueryPending', true);\n        this.sendAction('removeAccess', sitePermission);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/site-permissions-panel', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({});\n});","define('clever-sparky-frontend/components/site-request-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    hasNoRecords: computed.equal('siteRequests.length', 0),\n\n    actions: {\n      approve: function approve(request) {\n        this.set('isQueryPending', true);\n        this.attrs.approve(request);\n      },\n      decline: function decline(request) {\n        this.set('isQueryPending', true);\n        this.attrs.decline(request);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/site-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Component.extend({\n    store: inject.service(),\n\n    organisation: computed.alias('model.organisation'),\n\n    hasNoRecords: computed.equal('sites.length', 0),\n\n    isQueryPending: false,\n\n    postOnboardingTourNames: [],\n\n    nexttestdates: [],\n\n    nexttextDatetime: computed('sites.@each', function () {\n      return true;\n    }),\n\n    viewRestrictedSitesTourNames: ['viewRestrictedSites'],\n\n    actions: {\n      showSite: function showSite(site) {\n        this.sendAction('showSiteDetails', site);\n      },\n      requestAccess: function requestAccess(site) {\n        this.set('isQueryPending', true);\n        this.attrs.requestSiteAccess(site);\n      },\n      toggleSort: function toggleSort(column) {\n        this.attrs.sort(column);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/swiper-container', ['exports', 'ember-cli-swiper/components/swiper-container'], function (exports, _swiperContainer) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _swiperContainer.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/swiper-slide', ['exports', 'ember-cli-swiper/components/swiper-slide'], function (exports, _swiperSlide) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _swiperSlide.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/switch-account-modal', ['exports', 'ember', 'ember-macaroni'], function (exports, _ember, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    hasJustLoggedIn: false,\n\n    headingText: (0, _emberMacaroni.ifThenElseWithValues)('hasJustLoggedIn', 'Choose a business', 'Switch Account'),\n\n    messageText: (0, _emberMacaroni.ifThenElseWithValues)('hasJustLoggedIn', 'Which business are you working for today?', 'Which account are you working on today?'),\n\n    buttonText: (0, _emberMacaroni.ifThenElseWithValues)('hasJustLoggedIn', 'Go', 'Switch')\n\n  });\n});","define('clever-sparky-frontend/components/test-delete-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['test-delete-confirmation'],\n\n    isQueryPending: false,\n\n    actions: {\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      },\n      deleteTest: function deleteTest() {\n        this.set('isQueryPending', true);\n        this.sendAction('deleteTest');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/test-event-archive-confirmation', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    classNames: ['test-event-archive-confirmation'],\n\n    isQueryPending: false,\n\n    actions: {\n      closeModal: function closeModal() {\n        this.sendAction('closeModal');\n      },\n      archive: function archive() {\n        this.set('isQueryPending', true);\n        this.attrs.archive();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/test-event-fitting-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _ember, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = _dropdownMenu.default.extend({\n    holdvaribles: inject.service('holdvaribles'),\n    clickOutsideParentElementSelector: '.test-event-group-dropdown-menu',\n\n    classNames: ['dropdown-menu', 'test-event-group-dropdown-menu'],\n\n    hasTestEventGroups: computed.bool('testEventGroups.length'),\n\n    hasNoGroupsToRemove: computed.not('hasTestEventGroups'),\n\n    hasMissingGroups: computed.bool('missingGroups.length'),\n\n    hasNoGroupsToAdd: computed.not('hasMissingGroups'),\n\n    testEventDropdownMenuTourNames: ['testEventDropdownMenu'],\n\n    actions: {\n      showAddGroupsModal: function showAddGroupsModal() {\n        //   this.attrs.showAddGroupsModal();\n        this.send('close');\n      },\n      showRemoveGroupsModal: function showRemoveGroupsModal() {\n        this.attrs.showRemoveGroupsModal();\n        this.send('close');\n      },\n      showEditDateRangeModal: function showEditDateRangeModal() {\n        this.attrs.showEditDateRangeModal();\n        this.send('close');\n      },\n      showDuplicateTestEventModal: function showDuplicateTestEventModal() {\n        this.attrs.showDuplicateTestEventModal();\n        this.send('close');\n      },\n      showArchiveConfirmationModal: function showArchiveConfirmationModal() {\n        this.attrs.showArchiveConfirmationModal();\n        this.send('close');\n      },\n      showQuickTestDefaultsModal: function showQuickTestDefaultsModal() {\n        this.attrs.showQuickTestDefaultsModal();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/test-event-fitting-table', ['exports', 'ember', 'ember-local-storage'], function (exports, _ember, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      ENV = _ember.default.ENV,\n      inject = _ember.default.inject;\n  exports.default = Component.extend({\n    holdvaribles: inject.service('holdvaribles'),\n    sitetmp: (0, _emberLocalStorage.storageFor)('site'),\n    // Attributes\n    selectedTestEventFittings: [],\n\n    viewTestEventGroupTourNames: ['viewTestEventGroup'],\n\n    isSelectingTestEventFittings: false,\n\n    // Properties\n    sortAscending: false,\n    siteid: null,\n    allfittings: false,\n    sortProperties: ['id'],\n    sortPropertiesDR: ['updatedAt'],\n\n    arrangedContent: _ember.default.computed('testEventFittings', 'sortPropertiesDR', 'sortAscending', function () {\n      var _this = this;\n\n      return this.get('testEventFittings').toArray().sort(function (a, b) {\n        var sortProperty = _this.get('sortProperties')[0];\n        if (_this.get('sortAscending')) {\n          var newa = parseInt(a.get(sortProperty).match(/\\d+/g));\n          var newb = parseInt(b.get(sortProperty).match(/\\d+/g));\n\n          if (newa > newb) {\n            return 1;\n          } else {\n            return -1;\n          }\n        } else {\n          var _newa = parseInt(a.get(sortProperty).match(/\\d+/g));\n          var _newb = parseInt(b.get(sortProperty).match(/\\d+/g));\n\n          if (_newa < _newb) {\n            return 1;\n          } else {\n            return -1;\n          }\n        }\n      });\n    }),\n    mod: computed.alias('model.data'),\n\n    hasNoRecords: computed.equal('testEventFittings.length', 0),\n\n    isCollected: computed.reads('collected'),\n\n    isNotCollected: computed.not('isCollected'),\n\n    collectedCount: computed.reads('testEventGroup.collectedTestEventFittingsCount'),\n\n    notCollectedCount: computed.reads('testEventGroup.notCollectedTestEventFittingsCount'),\n\n    isEmptyTestEventGroup: computed('collectedCount', 'notCollectedCount', function () {\n      return this.get('collectedCount') + this.get('notCollectedCount') === 0;\n    }),\n\n    noFittingsSelected: computed.equal('selectedTestEventFittings.length', 0),\n\n    // Methods\n    didInsertElement: function didInsertElement() {\n      var _this2 = this;\n\n      var local = localStorage.getItem('ember_simple_auth-session');\n      var test = JSON.parse(local);\n      var tt = test['authenticated'];\n      var tt2 = tt['session'];\n      var sessionID = tt2['session_id'];\n      var token = tt2['token'];\n\n      var url = ENV.api.host + '/' + ENV.api.namespace + '/filtersapi';\n      var groupid = this.get('testEventGroup.group');\n      if (groupid) {\n        $.ajax({\n          url: url,\n          method: 'POST',\n          data: JSON.stringify({\n            data: {\n              attributes: {\n                usage: 'get',\n                groupid: groupid.id\n              },\n              type: 'sessions'\n            }\n          }),\n          headers: {\n            'Content-Type': 'application/json',\n            'X-Session-Id': sessionID,\n            'X-Session-Token': token\n          },\n          success: function success() {},\n\n          error: function error(resp) {\n            var thistxt = resp.responseText;\n\n            if (thistxt === 'Decending') {\n              _this2.set('sortAscending', false);\n            } else {\n              _this2.set('sortAscending', true);\n            }\n\n            _this2.set('sortProperties', ['fitting.deviceReference']);\n\n            _this2.set('testEventFittings', _this2.get('arrangedContent'));\n          }\n        });\n      }\n    },\n    setIsNotCollectedFilter: function setIsNotCollectedFilter() {},\n    setIsCollectedFilter: function setIsCollectedFilter() {},\n    showTestEventFittingDetails: function showTestEventFittingDetails() {},\n    showAddFittingModal: function showAddFittingModal() {},\n    showQuickTestModal: function showQuickTestModal() {},\n    backToTestEventFittingsIndex: function backToTestEventFittingsIndex() {},\n    init: function init() {\n      this._super.apply(this, arguments);\n      var groupid = this.get('group');\n      var isallfittings = this.get('holdvaribles').showallfittingpagebool();\n      this.set('allfittings', isallfittings);\n      if (isallfittings) {\n        var fittings = this.get('testEventFittings');\n        var totalfittings = this.get('mod');\n        var notcollectioned = fittings.filter(function (item) {\n          return item.data.collected === false;\n        });\n\n        var Collected = totalfittings - notcollectioned.length;\n        if (Collected < 0) {\n          Collected = 0;\n        }\n        this.set('notCollectedCount', notcollectioned.length);\n        this.set('collectedCount', Collected);\n      }\n      // let siteidx = this.get('holdvaribles').showCurrentSite();\n      var siteidx = this.get('sitetmp.site');\n      this.set('siteid', siteidx.id);\n    },\n\n\n    actions: {\n      SelectAll: function SelectAll() {\n        this.set('selectedTestEventFittings', this.get('testEventFittings'));\n      },\n\n      sortBy: function sortBy(property) {\n        this.set('sortProperties', [property]);\n        this.toggleProperty('sortAscending');\n\n        this.set('testEventFittings', this.get('arrangedContent')); // set the model to the sorted array\n\n        var groupid = this.get('testEventGroup.group');\n        var sortingmethodtemp = '';\n        if (this.get('sortAscending')) {\n          sortingmethodtemp = 'Ascending';\n        } else {\n          sortingmethodtemp = 'Decending';\n        }\n\n        var url = ENV.api.host + '/' + ENV.api.namespace + '/filtersapi';\n        var local = localStorage.getItem('ember_simple_auth-session');\n        var test = JSON.parse(local);\n        var tt = test['authenticated'];\n        var tt2 = tt['session'];\n        var sessionID = tt2['session_id'];\n        var token = tt2['token'];\n        $.ajax({\n          url: url,\n          method: 'POST',\n          data: JSON.stringify({\n            data: {\n              attributes: {\n                usage: 'set',\n                groupid: groupid.id,\n                method: sortingmethodtemp\n\n              },\n              type: 'sessions'\n            }\n          }),\n          headers: {\n            'Content-Type': 'application/json',\n            'X-Session-Id': sessionID,\n            'X-Session-Token': token\n          },\n          success: function success() {},\n          error: function error() {}\n        });\n      },\n      cancelSelectTestEventFittings: function cancelSelectTestEventFittings() {\n        this.set('selectedTestEventFittings', []);\n        this.set('isSelectingTestEventFittings', false);\n      },\n      batchTestResults: function batchTestResults() {\n        this.attrs.backToTestEventFittingsIndex();\n        this.set('isSelectingTestEventFittings', true);\n      },\n      setIsNotCollectedFilter: function setIsNotCollectedFilter() {\n        this.attrs.setIsNotCollectedFilter();\n      },\n      setIsCollectedFilter: function setIsCollectedFilter() {\n        this.attrs.setIsCollectedFilter();\n        this.send('cancelSelectTestEventFittings');\n      },\n      showQuickTestPassModal: function showQuickTestPassModal() {\n        this.attrs.showQuickTestModal(true, this.get('selectedTestEventFittings'));\n      },\n      showQuickTestFailModal: function showQuickTestFailModal() {\n        this.attrs.showQuickTestModal(false, this.get('selectedTestEventFittings'));\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/test-event-group-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _ember, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _dropdownMenu.default.extend({\n\n    clickOutsideParentElementSelector: '.test-event-group-dropdown-menu',\n\n    classNames: ['dropdown-menu', 'test-event-group-dropdown-menu'],\n\n    hasTestEventGroups: computed.bool('testEventGroups.length'),\n\n    hasNoGroupsToRemove: computed.not('hasTestEventGroups'),\n\n    hasMissingGroups: computed.bool('missingGroups.length'),\n\n    hasNoGroupsToAdd: computed.not('hasMissingGroups'),\n\n    testEventDropdownMenuTourNames: ['testEventDropdownMenu'],\n\n    actions: {\n      showAddGroupsModal: function showAddGroupsModal() {\n        this.attrs.showAddGroupsModal();\n        this.send('close');\n      },\n      showRemoveGroupsModal: function showRemoveGroupsModal() {\n        this.attrs.showRemoveGroupsModal();\n        this.send('close');\n      },\n      showEditDateRangeModal: function showEditDateRangeModal() {\n        this.attrs.showEditDateRangeModal();\n        this.send('close');\n      },\n      showDuplicateTestEventModal: function showDuplicateTestEventModal() {\n        this.attrs.showDuplicateTestEventModal();\n        this.send('close');\n      },\n      showArchiveConfirmationModal: function showArchiveConfirmationModal() {\n        this.attrs.showArchiveConfirmationModal();\n        this.send('close');\n      },\n      showQuickTestDefaultsModal: function showQuickTestDefaultsModal() {\n        this.attrs.showQuickTestDefaultsModal();\n        this.send('close');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/test-event-group-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    testEventGroups: [],\n\n    hasNoRecords: computed.equal('testEventGroups.length', 0)\n\n  });\n});","define('clever-sparky-frontend/components/test-event-modal', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    isEditMode: computed.equal('type', 'edit'),\n\n    isDuplicateMode: computed.equal('type', 'duplicate'),\n\n    actions: {\n      closeModal: function closeModal() {\n        this.attrs.closeModal();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/test-event-table', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed;\n  exports.default = Component.extend({\n\n    testEvents: [],\n\n    selectedTestEvents: [],\n    count: '0',\n\n    isDeletingTestEvents: false,\n\n    hasNoRecords: computed.equal('testEvents.length', 0),\n\n    noTestEventsSelected: computed.equal('selectedTestEvents.length', 0),\n\n    actions: {\n      toggleDeleteTestEvents: function toggleDeleteTestEvents() {\n        this.toggleProperty('isDeletingTestEvents');\n        this.set('selectedTestEvents', []);\n      },\n      showTestEvent: function showTestEvent(testEvent) {\n        if (this.get('count') == '0') {\n          this.attrs.showTestEvent(testEvent);\n          this.set('count', '1');\n        }\n      },\n      deleteTestEvents: function deleteTestEvents(selectedTestEvents) {\n        this.attrs.batchDeleteTestEvents(selectedTestEvents);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/tours/sequence-element', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      getOwner = _ember.default.getOwner;\n  exports.default = Component.extend({\n\n    // class attributes\n\n    classNames: 'sequence-element',\n\n    classNameBindings: ['stopClassName'],\n\n    // attributes\n\n    tourNames: [],\n\n    stopName: '',\n\n    // properties\n\n    stopClassName: computed('stopName', function () {\n      return 'sequence-element-' + this.get('stopName').dasherize();\n    }),\n\n    // hooks\n\n    didInsertElement: function didInsertElement() {\n      var _this = this;\n\n      this._super.apply(this, arguments);\n      this.get('tourNames').forEach(function (tourName) {\n        var tour = getOwner(_this).lookup('service:tours/' + tourName.dasherize());\n        tour.setHasRenderedSequenceElement(_this.get('stopName').dasherize());\n      });\n    },\n    didDestroyElement: function didDestroyElement() {\n      var _this2 = this;\n\n      this._super.apply(this, arguments);\n      this.get('tourNames').forEach(function (tourName) {\n        var tour = getOwner(_this2).lookup('service:tours/' + tourName.dasherize());\n        tour.resetHasRenderedSequenceElement(_this2.get('stopName').dasherize());\n      });\n    }\n  });\n});","define('clever-sparky-frontend/components/user-panel', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n\n    actions: {\n      deleteUser: function deleteUser() {\n        this.sendAction('deleteUser');\n      },\n      updatePurchasingRights: function updatePurchasingRights(employment) {\n        this.attrs.updatePurchasingRights(employment);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/components/users-dropdown-menu', ['exports', 'clever-sparky-frontend/components/dropdown-menu'], function (exports, _dropdownMenu) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _dropdownMenu.default.extend({\n\n    clickOutsideParentElementSelector: '.users-dropdown-menu',\n\n    classNames: ['dropdown-menu users-dropdown-menu']\n\n  });\n});","define('clever-sparky-frontend/components/validated-input', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component,\n      computed = _ember.default.computed,\n      defineProperty = _ember.default.defineProperty;\n  exports.default = Component.extend({\n\n    classNames: ['validated-input'],\n\n    classNameBindings: ['showErrorClass:has-error', 'isValid:has-success', 'isHalfInput:half'],\n\n    model: null,\n\n    value: null,\n\n    type: 'text',\n\n    name: '',\n\n    placeholder: '',\n\n    validation: null,\n\n    showValidations: false,\n\n    didValidate: false,\n\n    hasPasswordToggle: false,\n\n    showPasswordToggle: computed.and('hasPasswordToggle', 'hasContent'),\n\n    showPasswordText: computed('type', function () {\n      return this.get('type') === 'password' ? 'Show' : 'Hide';\n    }),\n\n    notValidating: computed.not('validation.isValidating').readOnly(),\n\n    hasContent: computed.notEmpty('value').readOnly(),\n\n    hasWarnings: computed.notEmpty('validation.warnings').readOnly(),\n\n    isValid: computed.and('hasContent', 'validation.isTruelyValid').readOnly(),\n\n    shouldDisplayValidations: computed.or('showValidations', 'didValidate').readOnly(),\n\n    showErrorClass: computed.and('notValidating', 'showErrorMessage', 'hasContent', 'validation').readOnly(),\n\n    showErrorMessage: computed.and('shouldDisplayValidations', 'validation.isInvalid').readOnly(),\n\n    showWarningMessage: computed.and('shouldDisplayValidations', 'hasWarnings', 'isValid').readOnly(),\n\n    init: function init() {\n      this._super.apply(this, arguments);\n      var name = this.get('name');\n\n      defineProperty(this, 'validation', computed.readOnly('model.validations.attrs.' + name));\n      defineProperty(this, 'value', computed.alias('model.' + name));\n    },\n\n\n    actions: {\n      toggleShowPassword: function toggleShowPassword() {\n        if (this.get('type') === 'password') {\n          this.set('type', 'text');\n        } else {\n          this.set('type', 'password');\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/validated-multi-select', ['exports', 'clever-sparky-frontend/components/validated-input'], function (exports, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  var _slicedToArray = function () {\n    function sliceIterator(arr, i) {\n      var _arr = [];\n      var _n = true;\n      var _d = false;\n      var _e = undefined;\n\n      try {\n        for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n          _arr.push(_s.value);\n\n          if (i && _arr.length === i) break;\n        }\n      } catch (err) {\n        _d = true;\n        _e = err;\n      } finally {\n        try {\n          if (!_n && _i[\"return\"]) _i[\"return\"]();\n        } finally {\n          if (_d) throw _e;\n        }\n      }\n\n      return _arr;\n    }\n\n    return function (arr, i) {\n      if (Array.isArray(arr)) {\n        return arr;\n      } else if (Symbol.iterator in Object(arr)) {\n        return sliceIterator(arr, i);\n      } else {\n        throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n      }\n    };\n  }();\n\n  exports.default = _validatedInput.default.extend({\n    selection: [],\n\n    selectionModel: '',\n\n    displaySelection: false,\n\n    canSelectAll: true,\n\n    actions: {\n      selectionsChanged: function selectionsChanged(_ref) {\n        var _ref2 = _slicedToArray(_ref, 1),\n            value = _ref2[0];\n\n        var selection = this.get('selection');\n        var selectionModel = this.get('selectionModel');\n\n        if (value === 'all') {\n          this.set('selection', ['All ' + selectionModel]);\n          // if item is in selection and its the last one, reset to all groups\n        } else if (selection.indexOf(value) !== -1 && selection.length === 1) {\n          this.set('selection', ['All ' + selectionModel]);\n        } else {\n          selection.indexOf(value) === -1 ? selection.pushObject(value) : selection.removeObject(value);\n          selection.removeObject('All ' + selectionModel);\n        }\n\n        return selection;\n      },\n      removeItem: function removeItem(item) {\n        var selection = this.get('selection');\n        return selection.length === 1 && this.get('canSelectAll') ? this.set('selection', ['All ' + this.get('selectionModel')]) : selection.removeObject(item);\n      },\n      toggleShowSelection: function toggleShowSelection() {\n        this.toggleProperty('displaySelection');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/components/validated-select', ['exports', 'ember', 'clever-sparky-frontend/components/validated-input'], function (exports, _ember, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _validatedInput.default.extend({\n    classNames: ['validated-select'],\n\n    allowNullValue: false,\n\n    hasContent: computed('value', function () {\n      var value = this.get('value');\n      return this.get('allowNullValue') ? !!value || value === null : !!value;\n    })\n  });\n});","define('clever-sparky-frontend/components/validated-textarea', ['exports', 'ember', 'clever-sparky-frontend/components/validated-input'], function (exports, _ember, _validatedInput) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _validatedInput.default.extend({\n    classNames: ['validated-textarea'],\n\n    allowNullValue: false,\n\n    hasContent: computed('value', function () {\n      var value = this.get('value');\n      return this.get('allowNullValue') ? !!value || value === null : !!value;\n    })\n  });\n});","define('clever-sparky-frontend/components/welcome-page', ['exports', 'ember-welcome-page/components/welcome-page'], function (exports, _welcomePage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _welcomePage.default;\n    }\n  });\n});","define('clever-sparky-frontend/components/wholesaler-info-banner', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Component = _ember.default.Component;\n  exports.default = Component.extend({\n    // Attributes\n\n    classNames: ['wholesaler-info-banner'],\n\n    hasNoPurchasingRights: false,\n\n    cannotCheckoutAsOrganisation: false,\n\n    cannotCheckoutAsSelf: false\n\n  });\n});","define('clever-sparky-frontend/components/x-option', ['exports', 'emberx-select/components/x-option'], function (exports, _xOption) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _xOption.default;\n});","define('clever-sparky-frontend/components/x-select', ['exports', 'emberx-select/components/x-select'], function (exports, _xSelect) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _xSelect.default;\n});","define('clever-sparky-frontend/controllers/analytics', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    organisationAnalytics: computed.reads('model.organisationAnalytics'),\n\n    fittingsCountData: computed('organisationAnalytics', function () {\n      return { value: this.get('organisationAnalytics.fittingsCount'), total: this.get('organisationAnalytics.fittingsCount') };\n    }),\n\n    faultyFittingsCountData: computed('organisationAnalytics', function () {\n      return { value: this.get('organisationAnalytics.faultyFittingsCount'), total: this.get('organisationAnalytics.fittingsCount') };\n    }),\n\n    upcomingTestsCountData: computed('organisationAnalytics', function () {\n      return { value: this.get('organisationAnalytics.upcomingTestsCount'), total: this.get('organisationAnalytics.fittingsCount') };\n    })\n\n  });\n});","define('clever-sparky-frontend/controllers/application', ['exports', 'ember', 'ember-local-storage'], function (exports, _ember, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    queryParams: ['organisation-id'],\n\n    'organisation-id': null,\n\n    invite: (0, _emberLocalStorage.storageFor)('invite'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    currentOrganisation: computed.reads('model.currentOrganisation'),\n\n    currentUsersOrganisations: computed.reads('model.currentUsersOrganisations'),\n\n    hasCurrentOrganisations: computed.gt('currentUsersOrganisations.length', 0),\n\n    hasJustLoggedIn: false,\n\n    hasJustSignedUp: false,\n\n    isNotComingFromEmail: computed.empty('organisation-id'),\n\n    hasNotComeFromInvite: computed.empty('invite.id'),\n\n    shouldShowSwitchAccountModal: computed.and('hasJustLoggedIn', 'isNotComingFromEmail', 'hasNotComeFromInvite', 'hasCurrentOrganisations'),\n\n    displaySwitchAccountModal: false,\n\n    showNavBar: false,\n\n    isMobileDevice: computed.not('media.isDesktop'),\n\n    Maintenance: false,\n\n    // showScreenSizeWarning: computed.and('isMobileDevice', 'showNavBar'),\n    showScreenSizeWarning: false,\n\n    selectedAccount: computed('currentOrganisation', function () {\n      var currentOrganisation = this.get('currentOrganisation');\n      return currentOrganisation ? currentOrganisation.get('id') : null;\n    }),\n\n    formattedOrganisations: computed.map('currentUsersOrganisations', function (item) {\n      return { label: item.get('name'), value: item.get('id') };\n    }),\n\n    displayOrganisations: computed('currentOrganisation', function () {\n      var displayOrgs = this.get('formattedOrganisations');\n\n      displayOrgs.unshift({ label: this.get('currentUser.fullName'), value: null });\n      return displayOrgs;\n    }),\n\n    actions: {\n      openSwitchAccountModal: function openSwitchAccountModal() {\n        this.set('displaySwitchAccountModal', true);\n      },\n      closeSwitchAccountModal: function closeSwitchAccountModal() {\n        this.set('displaySwitchAccountModal', false);\n        this.set('hasJustLoggedIn', false);\n      },\n      transitionAction: function transitionAction(routeName) {\n        this.transitionToRoute(routeName);\n      },\n      resetTooltips: function resetTooltips() {\n        this.send('resetTooltipEvents');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/controllers/fitting-panel-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    fitting: computed.alias('model.fitting'),\n\n    canEdit: false,\n\n    showEdit: false,\n\n    showDelete: false,\n\n    showReinstate: false,\n\n    showSuccess: false\n\n  });\n});","define('clever-sparky-frontend/controllers/forgot-password/success', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    queryParams: ['email'],\n    email: null,\n\n    hasEmail: computed.bool('email')\n  });\n});","define('clever-sparky-frontend/controllers/groups', ['exports', 'ember', 'clever-sparky-frontend/mixins/report-actions', 'clever-sparky-frontend/mixins/file-upload-actions'], function (exports, _ember, _reportActions, _fileUploadActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_reportActions.default, _fileUploadActions.default, {\n    site: computed.alias('model.site'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    testEvents: computed.reads('model.testEvents'),\n\n    address: computed.alias('site.address')\n  });\n});","define('clever-sparky-frontend/controllers/groups/fittings', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    // Attributes\n    sortProperties: ['deviceReference'],\n    sortAscending: false,\n    queryParams: ['commissioned'],\n\n    commissioned: false,\n\n    selectedFittings: [],\n\n    isDeletingFittings: false,\n\n    isMovingFittings: false,\n\n    displayBatchConfirmationModal: false,\n\n    displayAddFittingModal: false,\n\n    // Properties\n\n    group: computed.alias('model.group'),\n\n    site: computed.alias('model.site'),\n\n    fittings: computed.alias('model.fittings'),\n\n    fitting: computed.alias('model.fitting'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    batchLength: computed.alias('selectedFittings.length'),\n\n    actions: {\n      batchDeleteFittings: function batchDeleteFittings() {\n        this.set('displayBatchConfirmationModal', true);\n      },\n      batchMoveFittings: function batchMoveFittings() {\n        this.set('displayBatchConfirmationModal', true);\n      },\n      closeBatchConfirmationModal: function closeBatchConfirmationModal() {\n        this.set('displayBatchConfirmationModal', false);\n        this.set('selectedFittings', []);\n        this.set('isMovingFittings', false);\n        this.set('isDeletingFittings', false);\n      },\n      toggleAddFitting: function toggleAddFitting() {\n        this.toggleProperty('displayAddFittingModal', true);\n      },\n      SortList: function SortList() {\n        this.toggleProperty('displayAddFittingModal', true);\n      },\n      setIsCommissionedFilter: function setIsCommissionedFilter() {\n        if (!this.get('commissioned')) {\n          this.set('commissioned', true);\n        }\n      },\n      setIsNotCommissionedFilter: function setIsNotCommissionedFilter() {\n        if (this.get('commissioned')) {\n          this.set('commissioned', false);\n        }\n      },\n      addOrderItem: function addOrderItem(fitting, partType) {\n        this.send('createOrderItem', fitting, partType);\n      },\n      removeOrderItem: function removeOrderItem(fitting, partType) {\n        this.send('deleteOrderItem', fitting, partType);\n      },\n      backToFittingsIndex: function backToFittingsIndex() {\n        this.transitionToRoute('groups.fittings');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/groups/fittings/new', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    fitting: computed.alias('model.fitting')\n  });\n});","define('clever-sparky-frontend/controllers/groups/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/controllers/fitting-panel-tab'], function (exports, _ember, _fittingPanelTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _fittingPanelTab.default.extend({\n    fitting: computed.alias('model.fitting'),\n\n    group: computed.alias('model.group'),\n\n    showDeleteModal: false,\n\n    isQueryPending: false,\n\n    showEdit: computed.not('canEdit'),\n\n    showDelete: computed.not('canEdit'),\n\n    actions: {\n      delete: function _delete() {\n        this.set('showDeleteModal', true);\n      },\n      closeDeleteModal: function closeDeleteModal() {\n        this.set('showDeleteModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/groups/fittings/show/details', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({});\n});","define('clever-sparky-frontend/controllers/groups/fittings/show/maintenance', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_handleError.default, {\n\n    fitting: computed.alias('model.fitting'),\n\n    maintenances: computed.alias('model.maintenances'),\n\n    newMaintenance: computed.alias('model.newMaintenance'),\n\n    canEdit: false,\n\n    isQueryPending: false,\n\n    showNew: computed.not('canEdit'),\n\n    actions: {\n      save: function save(maintenance) {\n        var _this = this;\n\n        maintenance.save().then(function () {\n          _this.send('showSuccessFlashOnSave');\n          _this.set('canEdit', false);\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/groups/fittings/show/test-and-status', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({});\n});","define('clever-sparky-frontend/controllers/invite', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    invite: computed.alias('model.invite'),\n\n    organisation: computed.alias('model.organisation'),\n\n    mod: computed.alias('model.data'),\n\n    sitenametmp: computed.alias('model.sitename'),\n\n    id: computed.alias('model.id'),\n\n    displayTransferSitesModal: false,\n\n    isQueryPending: false,\n\n    isInviteAccepted: computed.equal('invite.status', 'accepted'),\n\n    isInviteExpired: computed.equal('invite.status', 'expired'),\n\n    isInvitePending: computed.equal('invite.status', 'pending'),\n\n    isInviteToTransferSite: true,\n    sitename: 'sitename',\n\n    formattedOrganisations: computed.map('model.currentUsersAdminOrganisations', function (item) {\n      return { label: item.get('name'), value: item.get('id') };\n    }),\n\n    availableOrganisations: computed.filter('formattedOrganisations', function (organisation) {\n      return organisation.value !== this.get('currentOrganisation.id');\n    }),\n\n    displayOrganisations: computed('currentUser', 'currentOrganisation', function () {\n      var displayOrgs = this.get('availableOrganisations');\n\n      if (this.get('currentOrganisation')) {\n        displayOrgs.unshift({ label: this.get('currentUser.fullName'), value: null });\n      }\n\n      return displayOrgs;\n    }),\n\n    hasOrganisationsToTransferTo: true,\n    selectedAccount: null,\n\n    actions: {\n      openTransferSiteToUserModal: function openTransferSiteToUserModal() {\n        this.set('displayTransferSitesModal', true);\n      },\n      closeTransferSiteToUserModal: function closeTransferSiteToUserModal() {\n        this.set('displayTransferSitesModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/onboarding', ['exports', 'ember', 'ember-macaroni'], function (exports, _ember, _emberMacaroni) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    // Attributes\n\n    currentSlide: 0,\n\n    lastSlideIndex: 2,\n\n    // Properties\n\n    isFirstSlide: computed.equal('currentSlide', 0),\n\n    isLastSlide: (0, _emberMacaroni.isEqualByKeys)('currentSlide', 'lastSlideIndex'),\n\n    actions: {\n      next: function next() {\n        this.incrementProperty('currentSlide');\n      },\n      previous: function previous() {\n        this.decrementProperty('currentSlide');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/controllers/order-item-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/report-actions', 'clever-sparky-frontend/mixins/file-upload-actions'], function (exports, _ember, _reportActions, _fileUploadActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_reportActions.default, _fileUploadActions.default, {\n    site: computed.alias('model.site'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    address: computed.alias('site.address')\n  });\n});","define('clever-sparky-frontend/controllers/order-item-group/order-items', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    // Attributes\n    displayBatchDeleteConfirmationModal: false,\n\n    isDeletingItems: false,\n\n    selectedItems: [],\n\n    isQueryPending: false,\n\n    displayCheckoutConfirmationModal: false,\n\n    // Properties\n    orderItems: computed.alias('model.orderItems'),\n\n    site: computed.alias('model.site'),\n\n    group: computed.alias('model.group'),\n\n    batchLength: computed.alias('selectedItems.length'),\n\n    selectedGroup: computed('group', function () {\n      return [this.get('group')];\n    }),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentOrganisation: computed.alias('model.currentOrganisation'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    hasItemsToCheckout: computed.notEmpty('orderItems'),\n\n    isViewingAsOrganisation: computed.notEmpty('currentOrganisation'),\n\n    isViewingAsSelf: computed.not('isViewingAsOrganisation'),\n\n    isOrgNotAuthenticatedWithWholesaler: computed.not('currentOrganisation.wholesalerAuthenticated'),\n\n    cannotCheckoutAsOrganisation: computed.and('isViewingAsOrganisation', 'isOrgNotAuthenticatedWithWholesaler'),\n\n    isUserNotAuthenticatedWithWholesaler: computed.not('currentUser.wholesalerAuthenticated'),\n\n    cannotCheckoutAsSelf: computed.and('isViewingAsSelf', 'isUserNotAuthenticatedWithWholesaler'),\n\n    hasCheckoutPermissionsForOrg: computed.and('isViewingAsOrganisation', 'currentEmployment.checkoutPermission'),\n\n    hasPurchasingRights: computed.or('isViewingAsSelf', 'hasCheckoutPermissionsForOrg'),\n\n    hasNoPurchasingRights: computed.not('hasPurchasingRights'),\n\n    shouldRestrictCheckout: computed.or('cannotCheckoutAsOrganisation', 'cannotCheckoutAsSelf', 'hasNoPurchasingRights'),\n\n    isCheckoutDisabled: computed.and('hasItemsToCheckout', 'shouldRestrictCheckout'),\n\n    shouldDisplayInfoBanner: computed.alias('isCheckoutDisabled'),\n\n    actions: {\n      batchDeleteItems: function batchDeleteItems() {\n        this.set('displayBatchDeleteConfirmationModal', true);\n      },\n      closeBatchDeleteConfirmationModal: function closeBatchDeleteConfirmationModal() {\n        this.set('displayBatchDeleteConfirmationModal', false);\n        this.set('selectedItems', []);\n        this.set('isDeletingItems', false);\n      },\n      closeCheckoutConfirmationModal: function closeCheckoutConfirmationModal() {\n        this.set('displayCheckoutConfirmationModal', false);\n      },\n      showCheckoutConfirmationModal: function showCheckoutConfirmationModal() {\n        this.set('displayCheckoutConfirmationModal', true);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/controllers/reset-password/index', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({\n    queryParams: {\n      token: 'reset_password_token'\n    },\n\n    token: null\n  });\n});","define('clever-sparky-frontend/controllers/signup/user', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    token: null,\n\n    user: computed.alias('model.user'),\n\n    organisation: computed.alias('model.organisation'),\n\n    hasToken: computed.bool('token'),\n\n    isTechnicianSignup: computed.alias('hasToken'),\n\n    isQueryPending: false\n  });\n});","define('clever-sparky-frontend/controllers/site', ['exports', 'ember', 'clever-sparky-frontend/mixins/report-actions', 'clever-sparky-frontend/mixins/file-upload-actions'], function (exports, _ember, _reportActions, _fileUploadActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_reportActions.default, _fileUploadActions.default, {\n    site: computed.alias('model.site'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    testEvents: computed.reads('model.testEvents'),\n\n    address: computed.alias('site.address'),\n\n    viewSiteTourNames: ['viewSite', 'viewSiteTechnician']\n\n  });\n});","define('clever-sparky-frontend/controllers/site/deleted-fittings/show', ['exports', 'clever-sparky-frontend/controllers/fitting-panel-tab'], function (exports, _fittingPanelTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _fittingPanelTab.default.extend({\n\n    showReinstate: true,\n\n    displayReinstateModal: false,\n\n    actions: {\n      reinstate: function reinstate() {\n        this.set('displayReinstateModal', true);\n      },\n      closeReinstateModal: function closeReinstateModal() {\n        this.set('displayReinstateModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/details', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_handleError.default, {\n\n    site: computed.alias('model.site'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentOrganisation: computed.alias('model.currentOrganisation'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    canEdit: false,\n\n    displayDeleteConfirmationModal: false,\n\n    displayTransferSitesModal: false,\n\n    displayTransferSitesToUserModal: false,\n\n    formattedOrganisations: computed.map('model.currentUsersAdminOrganisations', function (item) {\n      return { label: item.get('name'), value: item.get('id') };\n    }),\n\n    availableOrganisations: computed.filter('formattedOrganisations', function (organisation) {\n      return organisation.value !== this.get('currentOrganisation.id');\n    }),\n\n    displayOrganisations: computed('currentUser', 'currentOrganisation', function () {\n      var displayOrgs = this.get('availableOrganisations');\n\n      if (this.get('currentOrganisation')) {\n        displayOrgs.unshift({ label: this.get('currentUser.fullName'), value: null });\n      }\n\n      return displayOrgs;\n    }),\n\n    hasOrganisationsToTransferTo: computed.gt('displayOrganisations.length', 0),\n\n    actions: {\n      save: function save(site) {\n        var _this = this;\n\n        site.save().then(function () {\n          _this.showSuccessFlash('Site Updated');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      },\n      delete: function _delete() {\n        this.set('displayDeleteConfirmationModal', true);\n      },\n      openTransferSiteModal: function openTransferSiteModal() {\n        this.set('displayTransferSitesModal', true);\n      },\n      closeTransferSiteModal: function closeTransferSiteModal() {\n        this.set('displayTransferSitesModal', false);\n      },\n      openTransferSiteToUserModal: function openTransferSiteToUserModal() {\n        this.set('displayTransferSitesToUserModal', true);\n      },\n      closeTransferSiteToUserModal: function closeTransferSiteToUserModal() {\n        this.set('displayTransferSitesToUserModal', false);\n      },\n      edit: function edit() {\n        this.set('canEdit', true);\n      },\n      confirmDeleteSite: function confirmDeleteSite(site) {\n        var _this2 = this;\n\n        site.destroyRecord().then(function () {\n          _this2.set('displayDeleteConfirmationModal', false);\n          _this2.transitionToRoute('sites');\n          _this2.showSuccessFlash('Site Deleted');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        });\n      },\n      cancel: function cancel() {\n        this.set('displayDeleteConfirmationModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/faults', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    faults: computed.alias('model.faults'),\n\n    actions: {\n      addOrderItem: function addOrderItem(fitting, partType) {\n        this.send('createOrderItem', fitting, partType);\n      },\n      removeOrderItem: function removeOrderItem(fitting, partType) {\n        this.send('deleteOrderItem', fitting, partType);\n      },\n      backToFaultFittingsIndex: function backToFaultFittingsIndex() {\n        this.transitionToRoute('site.faults');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/faults/show', ['exports', 'clever-sparky-frontend/controllers/fitting-panel-tab'], function (exports, _fittingPanelTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _fittingPanelTab.default.extend({});\n});","define('clever-sparky-frontend/controllers/site/fittings', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    // Attributes\n    sortProperties: ['deviceReference'],\n    sortAscending: false,\n    queryParams: ['commissioned'],\n\n    commissioned: false,\n\n    selectedFittings: [],\n\n    isDeletingFittings: false,\n\n    isMovingFittings: false,\n\n    displayBatchConfirmationModal: false,\n\n    displayAddFittingModal: false,\n\n    // Properties\n\n    group: computed.alias('model.group'),\n\n    site: computed.alias('model.site'),\n\n    fittings: computed.alias('model.fittings'),\n\n    fitting: computed.alias('model.fitting'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    batchLength: computed.alias('selectedFittings.length'),\n\n    actions: {\n      batchDeleteFittings: function batchDeleteFittings() {\n        this.set('displayBatchConfirmationModal', true);\n      },\n      batchMoveFittings: function batchMoveFittings() {\n        this.set('displayBatchConfirmationModal', true);\n      },\n      closeBatchConfirmationModal: function closeBatchConfirmationModal() {\n        this.set('displayBatchConfirmationModal', false);\n        this.set('selectedFittings', []);\n        this.set('isMovingFittings', false);\n        this.set('isDeletingFittings', false);\n      },\n      toggleAddFitting: function toggleAddFitting() {\n        this.toggleProperty('displayAddFittingModal', true);\n      },\n      SortList: function SortList() {\n        this.toggleProperty('displayAddFittingModal', true);\n      },\n      setIsCommissionedFilter: function setIsCommissionedFilter() {\n        if (!this.get('commissioned')) {\n          this.set('commissioned', true);\n        }\n      },\n      setIsNotCommissionedFilter: function setIsNotCommissionedFilter() {\n        if (this.get('commissioned')) {\n          this.set('commissioned', false);\n        }\n      },\n      addOrderItem: function addOrderItem(fitting, partType) {\n        this.send('createOrderItem', fitting, partType);\n      },\n      removeOrderItem: function removeOrderItem(fitting, partType) {\n        this.send('deleteOrderItem', fitting, partType);\n      },\n      backToFittingsIndex: function backToFittingsIndex() {\n        this.transitionToRoute('groups.fittings');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/fittings/new', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    fitting: computed.alias('model.fitting')\n  });\n});","define('clever-sparky-frontend/controllers/site/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/controllers/fitting-panel-tab'], function (exports, _ember, _fittingPanelTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _fittingPanelTab.default.extend({\n    fitting: computed.alias('model.fitting'),\n\n    group: computed.alias('model.group'),\n\n    showDeleteModal: false,\n\n    isQueryPending: false,\n\n    showEdit: computed.not('canEdit'),\n\n    showDelete: computed.not('canEdit'),\n\n    actions: {\n      delete: function _delete() {\n        this.set('showDeleteModal', true);\n      },\n      closeDeleteModal: function closeDeleteModal() {\n        this.set('showDeleteModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/fittings/show/details', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({});\n});","define('clever-sparky-frontend/controllers/site/fittings/show/maintenance', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_handleError.default, {\n\n    fitting: computed.alias('model.fitting'),\n\n    maintenances: computed.alias('model.maintenances'),\n\n    newMaintenance: computed.alias('model.newMaintenance'),\n\n    canEdit: false,\n\n    isQueryPending: false,\n\n    showNew: computed.not('canEdit'),\n\n    actions: {\n      save: function save(maintenance) {\n        var _this = this;\n\n        maintenance.save().then(function () {\n          _this.send('showSuccessFlashOnSave');\n          _this.set('canEdit', false);\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/fittings/show/test-and-status', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({});\n});","define('clever-sparky-frontend/controllers/site/groups', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    groups: computed.alias('model.groups'),\n\n    group: computed.alias('model.group'),\n\n    isDeletingGroups: false,\n\n    selectedGroups: [],\n\n    displayAddGroupModal: false,\n\n    displayBatchErrorModal: false,\n\n    displayBatchConfirmationModal: false,\n\n    batchLength: computed.alias('selectedGroups.length'),\n\n    actions: {\n      showGroupDetails: function showGroupDetails(group) {\n        this.transitionToRoute('groups', group.id);\n      },\n      toggleAddGroup: function toggleAddGroup() {\n        this.toggleProperty('displayAddGroupModal');\n      },\n      closeBatchErrorModal: function closeBatchErrorModal() {\n        this.set('displayBatchErrorModal', false);\n      },\n      closeBatchConfirmationModal: function closeBatchConfirmationModal() {\n        this.set('displayBatchConfirmationModal', false);\n        this.set('selectedGroups', []);\n        this.set('isDeletingGroups', false);\n      },\n      batchDeleteGroups: function batchDeleteGroups(selectedGroups) {\n        var canDeleteGroups = selectedGroups.reduce(function (acc, group) {\n          return acc && group.get('canDelete');\n        }, true);\n\n        if (canDeleteGroups) {\n          this.set('displayBatchConfirmationModal', true);\n        } else {\n          this.set('displayBatchErrorModal', true);\n        }\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/site/shopping-cart', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Controller.extend(_handleError.default, {\n    // Services\n\n    downloadReport: inject.service(),\n\n    // Attributes\n\n    displayBatchDeleteConfirmationModal: false,\n\n    isCheckingOut: false,\n\n    selectedGroups: [],\n\n    isQueryPending: false,\n\n    displayDownloadReportSuccessModal: false,\n\n    // Properties\n\n    site: computed.alias('model.site'),\n\n    currentOrderGroups: computed.alias('model.currentOrderGroups'),\n\n    order: computed.alias('model.order'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentOrganisation: computed.alias('model.currentOrganisation'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    hasItemsToCheckout: computed.notEmpty('currentOrderGroups'),\n\n    isViewingAsOrganisation: computed.notEmpty('currentOrganisation'),\n\n    isViewingAsSelf: computed.not('isViewingAsOrganisation'),\n\n    isOrgNotAuthenticatedWithWholesaler: computed.not('currentOrganisation.wholesalerAuthenticated'),\n\n    cannotCheckoutAsOrganisation: computed.and('isViewingAsOrganisation', 'isOrgNotAuthenticatedWithWholesaler'),\n\n    isUserNotAuthenticatedWithWholesaler: computed.not('currentUser.wholesalerAuthenticated'),\n\n    cannotCheckoutAsSelf: computed.and('isViewingAsSelf', 'isUserNotAuthenticatedWithWholesaler'),\n\n    hasCheckoutPermissionsForOrg: computed.and('isViewingAsOrganisation', 'currentEmployment.checkoutPermission'),\n\n    hasPurchasingRights: computed.or('isViewingAsSelf', 'hasCheckoutPermissionsForOrg'),\n\n    hasNoPurchasingRights: computed.not('hasPurchasingRights'),\n\n    shouldRestrictCheckout: computed.or('cannotCheckoutAsOrganisation', 'cannotCheckoutAsSelf', 'hasNoPurchasingRights'),\n\n    isCheckoutDisabled: computed.and('hasItemsToCheckout', 'shouldRestrictCheckout'),\n\n    shouldDisplayInfoBanner: computed.alias('isCheckoutDisabled'),\n\n    actions: {\n      showOrderItems: function showOrderItems(group) {\n        this.transitionToRoute('order-item-group', group.id);\n      },\n      closeCheckoutConfirmationModal: function closeCheckoutConfirmationModal() {\n        this.set('displayCheckoutConfirmationModal', false);\n        this.set('selectedGroups', []);\n        this.set('isCheckingOut', false);\n      },\n      showCheckoutConfirmationModal: function showCheckoutConfirmationModal() {\n        this.set('displayCheckoutConfirmationModal', true);\n      },\n      downloadCartReport: function downloadCartReport() {\n        var _this = this;\n\n        this.get('downloadReport').downloadOrderItemsReport(this.get('site'), this.get('order')).then(function () {\n          _this.set('displayDownloadReportSuccessModal', true);\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        });\n      },\n      closeDownloadReportSuccessModal: function closeDownloadReportSuccessModal() {\n        this.set('displayDownloadReportSuccessModal', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/controllers/site/test-events', ['exports', 'ember', 'ember-local-storage'], function (exports, _ember, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = Controller.extend({\n    testeventx: (0, _emberLocalStorage.storageFor)('test-event'),\n    holdvaribles: inject.service('holdvaribles'),\n\n    testEvents: computed.alias('model.testEvents'),\n\n    testEvent: computed.alias('model.testEvent'),\n\n    selectedTestEvents: [],\n\n    isDeletingTestEvents: false,\n\n    displayAddTestEventModal: false,\n\n    isQueryPending: false,\n\n    displayBatchDeleteConfirmationModal: false,\n\n    batchLength: computed.alias('selectedTestEvents.length'),\n\n    actions: {\n      openAddTestEventModal: function openAddTestEventModal() {\n        this.set('displayAddTestEventModal', true);\n      },\n      closeAddTestEventModal: function closeAddTestEventModal() {\n        this.set('displayAddTestEventModal', false);\n      },\n      showTestEvent: function showTestEvent(testEvent) {\n        this.set('testeventx.testevent', testEvent);\n        this.set('testeventx.id', testEvent.id);\n        this.get('holdvaribles').setupCurrentTestEvent(testEvent);\n        if (testEvent.data.viewb === 'allfittings') {\n          this.get('holdvaribles').setupCurrentViewsetting('allfittings');\n          this.transitionToRoute('test-event-group', testEvent.id);\n        } else {\n          this.get('holdvaribles').setupCurrentViewsetting('group');\n          this.transitionToRoute('test-event', testEvent.id);\n        }\n      },\n      closeBatchDeleteConfirmationModal: function closeBatchDeleteConfirmationModal() {\n        this.set('displayBatchDeleteConfirmationModal', false);\n        this.set('selectedTestEvents', []);\n        this.set('isDeletingTestEvents', false);\n      },\n      batchDeleteTestEvents: function batchDeleteTestEvents(selectedTestEvents) {\n        this.set('selectedTestEvents', selectedTestEvents);\n        this.set('displayBatchDeleteConfirmationModal', true);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/sites', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    // Attributes\n\n    queryParams: ['query', 'sort'],\n\n    displayAddSiteModal: false,\n\n    query: '',\n\n    sort: '',\n\n    // Properties\n\n    sites: computed.alias('model.sites'),\n\n    site: computed.alias('model.site'),\n\n    hasSites: computed.gt('sites.length', 0),\n\n    hasNoSites: computed.not('hasSites'),\n\n    isPerformingSearch: computed.notEmpty('query'),\n\n    noSearchResults: computed.and('isPerformingSearch', 'hasNoSites'),\n\n    postOnboardingTourNames: ['postOnboarding', 'postOnboardingTechnician'],\n\n    actions: {\n      toggleAddSite: function toggleAddSite() {\n        this.toggleProperty('displayAddSiteModal');\n      },\n      setSitesSearchParam: function setSitesSearchParam(term) {\n        this.set('query', term);\n      },\n      setSitesSortParam: function setSitesSortParam(column) {\n        var sortQuery = this.get('sort');\n        var descOrderSortQuery = '-' + column;\n        if (sortQuery && sortQuery.indexOf(column) === 0) {\n          sortQuery = descOrderSortQuery;\n        } else {\n          sortQuery = column;\n        }\n        this.set('sort', sortQuery);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/sites/new', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n    site: computed.alias('model.site')\n  });\n});","define('clever-sparky-frontend/controllers/test-event-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/report-actions', 'clever-sparky-frontend/mixins/file-upload-actions'], function (exports, _ember, _reportActions, _fileUploadActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_reportActions.default, _fileUploadActions.default, {\n    site: computed.alias('model.site'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    testEvents: computed.reads('model.testEvents'),\n\n    address: computed.alias('site.address')\n  });\n});","define('clever-sparky-frontend/controllers/test-event-group/fittings', ['exports', 'ember', 'moment'], function (exports, _ember, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    testEventGroup: computed.alias('model.testEventGroup'),\n\n    testEvent: computed.alias('model.testEvent'),\n\n    testEventFittings: computed.alias('model.testEventFittings'),\n\n    fitting: computed.alias('model.fitting'),\n\n    queryParams: ['collected'],\n\n    collected: false,\n\n    displayAddFittingModal: false,\n\n    displayQuickTestModal: false,\n\n    isQuickTestPassModal: false,\n\n    selectedTestEventFittings: [],\n\n    isSelectingTestEventFittings: false,\n\n    newTestEvent: computed.alias('model.newTestEvent'),\n\n    duplicatedTestEvent: computed('newTestEvent', 'testEvent', function () {\n      var newStartDate = (0, _moment.default)(this.get('testEvent.endDate')).add(1, 'days');\n      var newEndDate = (0, _moment.default)(newStartDate).add(6, 'months');\n      this.set('newTestEvent.startDate', newStartDate.format('YYYY-MM-DD'));\n      this.set('newTestEvent.endDate', newEndDate.format('YYYY-MM-DD'));\n      return this.get('newTestEvent');\n    }),\n\n    displayAddGroupsModal: false,\n\n    displayRemoveGroupsModal: false,\n\n    displayEditDateRangeModal: false,\n\n    displayDuplicateTestEventModal: false,\n\n    displayArchiveConfirmationModal: false,\n\n    displayQuickTestDefaultsModal: false,\n\n    actions: {\n      setIsCollectedFilter: function setIsCollectedFilter() {\n        if (!this.get('collected')) {\n          this.set('collected', true);\n        }\n      },\n      setIsNotCollectedFilter: function setIsNotCollectedFilter() {\n        if (this.get('collected')) {\n          this.set('collected', false);\n        }\n      },\n      showAddFittingModal: function showAddFittingModal() {\n        this.set('displayAddFittingModal', true);\n      },\n      closeAddFittingModal: function closeAddFittingModal() {\n        this.set('displayAddFittingModal', false);\n      },\n      showQuickTestModal: function showQuickTestModal(isQuickTestPassModal, selectedTestEventFittings) {\n        this.set('isQuickTestPassModal', isQuickTestPassModal);\n        this.set('selectedTestEventFittings', selectedTestEventFittings);\n        this.set('displayQuickTestModal', true);\n      },\n      closeQuickTestModal: function closeQuickTestModal() {\n        this.set('displayQuickTestModal', false);\n      },\n      backToTestEventFittingsIndex: function backToTestEventFittingsIndex() {\n        this.transitionToRoute('test-event-group.fittings');\n      },\n      showTestEventGroupDetails: function showTestEventGroupDetails(testEventGroup) {\n        this.transitionToRoute('test-event-group', testEventGroup.id);\n      },\n      showAddGroupsModal: function showAddGroupsModal() {\n        this.set('displayAddGroupsModal', true);\n      },\n      closeAddGroupsModal: function closeAddGroupsModal() {\n        this.set('displayAddGroupsModal', false);\n        this.set('selectedGroups', []);\n      },\n      showRemoveGroupsModal: function showRemoveGroupsModal() {\n        this.set('displayRemoveGroupsModal', true);\n      },\n      closeRemoveGroupsModal: function closeRemoveGroupsModal() {\n        this.set('displayRemoveGroupsModal', false);\n        this.set('selectedGroups', []);\n      },\n      showEditDateRangeModal: function showEditDateRangeModal() {\n        this.set('displayEditDateRangeModal', true);\n      },\n      closeEditDateRangeModal: function closeEditDateRangeModal() {\n        this.set('displayEditDateRangeModal', false);\n      },\n      showDuplicateTestEventModal: function showDuplicateTestEventModal() {\n        this.set('displayDuplicateTestEventModal', true);\n      },\n      closeDuplicateTestEventModal: function closeDuplicateTestEventModal() {\n        this.set('displayDuplicateTestEventModal', false);\n      },\n      showArchiveConfirmationModal: function showArchiveConfirmationModal() {\n        this.set('displayArchiveConfirmationModal', true);\n      },\n      closeArchiveConfirmationModal: function closeArchiveConfirmationModal() {\n        this.set('displayArchiveConfirmationModal', false);\n      },\n      showQuickTestDefaultsModal: function showQuickTestDefaultsModal() {\n        this.set('displayQuickTestDefaultsModal', true);\n      },\n      closeQuickTestDefaultsModal: function closeQuickTestDefaultsModal() {\n        this.set('displayQuickTestDefaultsModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/test-event-group/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/controllers/fitting-panel-tab'], function (exports, _ember, _fittingPanelTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _fittingPanelTab.default.extend({\n\n    showDeleteModal: false,\n\n    isQueryPending: false,\n\n    testEvent: computed.reads('model.testEvent'),\n\n    isNotArchived: computed.not('testEvent.archived'),\n\n    showEdit: computed.not('canEdit'),\n\n    shouldShowEdit: computed.and('isNotArchived', 'showEdit'),\n\n    showDelete: computed.not('canEdit'),\n\n    shouldShowDelete: computed.and('isNotArchived', 'showDelete'),\n\n    actions: {\n      delete: function _delete() {\n        this.set('showDeleteModal', true);\n      },\n      closeDeleteModal: function closeDeleteModal() {\n        this.set('showDeleteModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/test-event-group/fittings/show/details', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller;\n  exports.default = Controller.extend({});\n});","define('clever-sparky-frontend/controllers/test-event-group/fittings/show/maintenance', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_handleError.default, {\n\n    // Attributes\n\n    canEdit: false,\n\n    isQueryPending: false,\n\n    // Properties\n\n    testEvent: computed.alias('model.testEvent'),\n\n    fitting: computed.alias('model.fitting'),\n\n    maintenances: computed.alias('model.maintenances'),\n\n    newMaintenance: computed.alias('model.newMaintenance'),\n\n    testEventFitting: computed.alias('model.testEventFitting'),\n\n    showNew: computed.not('canEdit'),\n\n    actions: {\n      save: function save(maintenance, fittingOutsideTestEventRange) {\n        var _this = this;\n\n        maintenance.save().then(function () {\n          if (fittingOutsideTestEventRange) {\n            _this.transitionToRoute('test-event-group.fittings');\n          } else {\n            _this.send('showSuccessFlashOnSave');\n            _this.set('canEdit', false);\n          }\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/test-event-group/fittings/show/test-and-status', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    displayAddLatestTestModal: false,\n\n    shouldShowSeeLatestTest: computed('fittingLatestTest', 'latestTest', 'testEventFitting', function () {\n      return !!this.get('fittingLatestTest') && !!this.get('latestTest.id') && (this.get('fittingLatestTest.id') !== this.get('latestTest.id') || !!this.get('testEventFitting.testOutOfRange'));\n    }),\n\n    actions: {\n      showLatestTestModal: function showLatestTestModal() {\n        this.set('displayAddLatestTestModal', true);\n      },\n      closeLatestTestModal: function closeLatestTestModal() {\n        this.set('displayAddLatestTestModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/test-event', ['exports', 'ember', 'clever-sparky-frontend/mixins/report-actions', 'clever-sparky-frontend/mixins/file-upload-actions'], function (exports, _ember, _reportActions, _fileUploadActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend(_reportActions.default, _fileUploadActions.default, {\n    site: computed.alias('model.site'),\n\n    currentEmployment: computed.alias('model.currentEmployment'),\n\n    currentUser: computed.alias('model.currentUser'),\n\n    sitesGroups: computed.reads('model.sitesGroups'),\n\n    testEvents: computed.reads('model.testEvents'),\n\n    address: computed.alias('site.address')\n  });\n});","define('clever-sparky-frontend/controllers/test-event/groups', ['exports', 'ember', 'moment'], function (exports, _ember, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    site: computed.alias('model.site'),\n\n    testEvent: computed.alias('model.testEvent'),\n\n    testEventGroups: computed.alias('model.testEventGroups'),\n\n    missingGroups: computed.alias('model.missingGroups'),\n\n    newTestEvent: computed.alias('model.newTestEvent'),\n\n    duplicatedTestEvent: computed('newTestEvent', 'testEvent', function () {\n      var newStartDate = (0, _moment.default)(this.get('testEvent.endDate')).add(1, 'days');\n      var newEndDate = (0, _moment.default)(newStartDate).add(6, 'months');\n      this.set('newTestEvent.startDate', newStartDate.format('YYYY-MM-DD'));\n      this.set('newTestEvent.endDate', newEndDate.format('YYYY-MM-DD'));\n      return this.get('newTestEvent');\n    }),\n\n    selectedGroups: [],\n\n    displayAddGroupsModal: false,\n\n    displayRemoveGroupsModal: false,\n\n    displayEditDateRangeModal: false,\n\n    displayDuplicateTestEventModal: false,\n\n    displayArchiveConfirmationModal: false,\n\n    displayQuickTestDefaultsModal: false,\n\n    isQueryPending: false,\n\n    formattedAddGroups: computed.map('missingGroups', function (item) {\n      return { id: item.get('id'), name: item.get('name') };\n    }),\n\n    addGroupsOptions: computed('formattedAddGroups', function () {\n      var formattedAddGroups = this.get('formattedAddGroups');\n      formattedAddGroups.unshift({ id: 'all', name: 'All Groups' });\n      return formattedAddGroups;\n    }),\n\n    formattedRemoveGroups: computed.map('testEventGroups', function (item) {\n      return { id: item.get('group.id'), name: item.get('group.name') };\n    }),\n\n    removeGroupsOptions: computed('formattedRemoveGroups', function () {\n      var formattedRemoveGroups = this.get('formattedRemoveGroups');\n      formattedRemoveGroups.unshift({ id: 'all', name: 'All Groups' });\n      return formattedRemoveGroups;\n    }),\n\n    actions: {\n      showTestEventGroupDetails: function showTestEventGroupDetails(testEventGroup) {\n        this.transitionToRoute('test-event-group', testEventGroup.id);\n      },\n      showAddGroupsModal: function showAddGroupsModal() {\n        this.set('displayAddGroupsModal', true);\n      },\n      closeAddGroupsModal: function closeAddGroupsModal() {\n        this.set('displayAddGroupsModal', false);\n        this.set('selectedGroups', []);\n      },\n      showRemoveGroupsModal: function showRemoveGroupsModal() {\n        this.set('displayRemoveGroupsModal', true);\n      },\n      closeRemoveGroupsModal: function closeRemoveGroupsModal() {\n        this.set('displayRemoveGroupsModal', false);\n        this.set('selectedGroups', []);\n      },\n      showEditDateRangeModal: function showEditDateRangeModal() {\n        this.set('displayEditDateRangeModal', true);\n      },\n      closeEditDateRangeModal: function closeEditDateRangeModal() {\n        this.set('displayEditDateRangeModal', false);\n      },\n      showDuplicateTestEventModal: function showDuplicateTestEventModal() {\n        this.set('displayDuplicateTestEventModal', true);\n      },\n      closeDuplicateTestEventModal: function closeDuplicateTestEventModal() {\n        this.set('displayDuplicateTestEventModal', false);\n      },\n      showArchiveConfirmationModal: function showArchiveConfirmationModal() {\n        this.set('displayArchiveConfirmationModal', true);\n      },\n      closeArchiveConfirmationModal: function closeArchiveConfirmationModal() {\n        this.set('displayArchiveConfirmationModal', false);\n      },\n      showQuickTestDefaultsModal: function showQuickTestDefaultsModal() {\n        this.set('displayQuickTestDefaultsModal', true);\n      },\n      closeQuickTestDefaultsModal: function closeQuickTestDefaultsModal() {\n        this.set('displayQuickTestDefaultsModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/user', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    user: computed.alias('model.user'),\n\n    employment: computed.alias('model.employment'),\n\n    technicians: computed.alias('model.technicians'),\n\n    currentOrganisation: computed.alias('model.currentOrganisation'),\n\n    usersRestrictedSites: computed.alias('model.usersRestrictedSites'),\n\n    sitePermissions: computed.alias('model.sitePermissions'),\n\n    selectedSites: [],\n\n    displayDeleteUserModal: false,\n\n    displayInviteToSitesModal: false,\n\n    isQueryPending: false,\n\n    viewUserDetailsTourNames: ['viewUserDetails'],\n\n    actions: {\n      showDeleteUserModal: function showDeleteUserModal() {\n        this.set('displayDeleteUserModal', true);\n      },\n      closeDeleteUserModal: function closeDeleteUserModal() {\n        this.set('displayDeleteUserModal', false);\n      },\n      showInviteToSitesModal: function showInviteToSitesModal() {\n        this.set('displayInviteToSitesModal', true);\n      },\n      closeInviteToSitesModal: function closeInviteToSitesModal() {\n        this.set('selectedSites', []);\n        this.set('displayInviteToSitesModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/controllers/users', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Controller = _ember.default.Controller,\n      computed = _ember.default.computed;\n  exports.default = Controller.extend({\n\n    currentUser: computed.alias('model.user'),\n\n    employments: computed.alias('model.employments'),\n\n    invite: computed.alias('model.invite'),\n\n    displayInviteUserModal: false,\n\n    isQueryPending: false,\n\n    viewUsersTourNames: ['viewUsers'],\n\n    actions: {\n      showInviteUserModal: function showInviteUserModal() {\n        this.set('displayInviteUserModal', true);\n      },\n      closeInviteUserModal: function closeInviteUserModal() {\n        this.set('displayInviteUserModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/flash/object', ['exports', 'ember-cli-flash/flash/object'], function (exports, _object) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _object.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/app-version', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-cli-app-version/utils/regexp'], function (exports, _ember, _environment, _regexp) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.appVersion = appVersion;\n  var version = _environment.default.APP.version;\n  function appVersion(_) {\n    var hash = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n    if (hash.hideSha) {\n      return version.match(_regexp.versionRegExp)[0];\n    }\n\n    if (hash.hideVersion) {\n      return version.match(_regexp.shaRegExp)[0];\n    }\n\n    return version;\n  }\n\n  exports.default = _ember.default.Helper.helper(appVersion);\n});","define('clever-sparky-frontend/helpers/assign', ['exports', 'ember-assign-helper/helpers/assign'], function (exports, _assign) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _assign.default;\n    }\n  });\n  Object.defineProperty(exports, 'assign', {\n    enumerable: true,\n    get: function () {\n      return _assign.assign;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/can', ['exports', 'ember-can/helpers/can'], function (exports, _can) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _can.default;\n});","define('clever-sparky-frontend/helpers/cancel-all', ['exports', 'ember', 'ember-concurrency/-helpers'], function (exports, _ember, _helpers) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.cancelHelper = cancelHelper;\n\n\n  var CANCEL_REASON = \"the 'cancel-all' template helper was invoked\";\n\n  function cancelHelper(args) {\n    var cancelable = args[0];\n    if (!cancelable || typeof cancelable.cancelAll !== 'function') {\n      _ember.default.assert('The first argument passed to the `cancel-all` helper should be a Task or TaskGroup (without quotes); you passed ' + cancelable, false);\n    }\n\n    return (0, _helpers.taskHelperClosure)('cancelAll', [cancelable, CANCEL_REASON]);\n  }\n\n  exports.default = _ember.default.Helper.helper(cancelHelper);\n});","define('clever-sparky-frontend/helpers/cannot', ['exports', 'ember-can/helpers/cannot'], function (exports, _cannot) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _cannot.default;\n});","define('clever-sparky-frontend/helpers/is-after', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-after'], function (exports, _ember, _environment, _isAfter) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isAfter.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/is-before', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-before'], function (exports, _ember, _environment, _isBefore) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isBefore.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/is-between', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-between'], function (exports, _ember, _environment, _isBetween) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isBetween.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/is-same-or-after', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-same-or-after'], function (exports, _ember, _environment, _isSameOrAfter) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isSameOrAfter.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/is-same-or-before', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-same-or-before'], function (exports, _ember, _environment, _isSameOrBefore) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isSameOrBefore.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/is-same', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/is-same'], function (exports, _ember, _environment, _isSame) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _isSame.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/item-name', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.itemName = itemName;\n\n  var _slicedToArray = function () {\n    function sliceIterator(arr, i) {\n      var _arr = [];\n      var _n = true;\n      var _d = false;\n      var _e = undefined;\n\n      try {\n        for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n          _arr.push(_s.value);\n\n          if (i && _arr.length === i) break;\n        }\n      } catch (err) {\n        _d = true;\n        _e = err;\n      } finally {\n        try {\n          if (!_n && _i[\"return\"]) _i[\"return\"]();\n        } finally {\n          if (_d) throw _e;\n        }\n      }\n\n      return _arr;\n    }\n\n    return function (arr, i) {\n      if (Array.isArray(arr)) {\n        return arr;\n      } else if (Symbol.iterator in Object(arr)) {\n        return sliceIterator(arr, i);\n      } else {\n        throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n      }\n    };\n  }();\n\n  var Helper = _ember.default.Helper;\n  function itemName(_ref) {\n    var _ref2 = _slicedToArray(_ref, 1),\n        item = _ref2[0];\n\n    var name = item;\n\n    if (item.name) {\n      name = item.get('name');\n    } else if (item.businessName) {\n      name = item.get('businessName');\n    } else if (item.startDate) {\n      name = item.get('startDate') + ' - ' + item.get('endDate');\n    }\n    return name;\n  }\n\n  exports.default = Helper.helper(itemName);\n});","define('clever-sparky-frontend/helpers/moment-add', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-add'], function (exports, _ember, _environment, _momentAdd) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentAdd.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-calendar', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-calendar'], function (exports, _ember, _environment, _momentCalendar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentCalendar.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-diff', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-diff'], function (exports, _ember, _environment, _momentDiff) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentDiff.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-duration', ['exports', 'ember-moment/helpers/moment-duration'], function (exports, _momentDuration) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _momentDuration.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/moment-format', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-format'], function (exports, _ember, _environment, _momentFormat) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentFormat.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-from-now', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-from-now'], function (exports, _ember, _environment, _momentFromNow) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentFromNow.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-from', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-from'], function (exports, _ember, _environment, _momentFrom) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentFrom.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-subtract', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-subtract'], function (exports, _ember, _environment, _momentSubtract) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentSubtract.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-to-date', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-to-date'], function (exports, _ember, _environment, _momentToDate) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentToDate.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-to-now', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-to-now'], function (exports, _ember, _environment, _momentToNow) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentToNow.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-to', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/helpers/moment-to'], function (exports, _ember, _environment, _momentTo) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _momentTo.default.extend({\n    globalAllowEmpty: !!_ember.default.get(_environment.default, 'moment.allowEmpty')\n  });\n});","define('clever-sparky-frontend/helpers/moment-unix', ['exports', 'ember-moment/helpers/unix'], function (exports, _unix) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _unix.default;\n    }\n  });\n  Object.defineProperty(exports, 'unix', {\n    enumerable: true,\n    get: function () {\n      return _unix.unix;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/moment', ['exports', 'ember-moment/helpers/moment'], function (exports, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _moment.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/now', ['exports', 'ember-moment/helpers/now'], function (exports, _now) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _now.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/perform', ['exports', 'ember', 'ember-concurrency/-helpers'], function (exports, _ember, _helpers) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.performHelper = performHelper;\n  function performHelper(args, hash) {\n    return (0, _helpers.taskHelperClosure)('perform', args, hash);\n  }\n\n  exports.default = _ember.default.Helper.helper(performHelper);\n});","define('clever-sparky-frontend/helpers/pluralize', ['exports', 'ember-inflector/lib/helpers/pluralize'], function (exports, _pluralize) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _pluralize.default;\n});","define('clever-sparky-frontend/helpers/pluralizer', ['exports', 'ember', 'ember-inflector'], function (exports, _ember, _emberInflector) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.pluralizer = pluralizer;\n\n  var _slicedToArray = function () {\n    function sliceIterator(arr, i) {\n      var _arr = [];\n      var _n = true;\n      var _d = false;\n      var _e = undefined;\n\n      try {\n        for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n          _arr.push(_s.value);\n\n          if (i && _arr.length === i) break;\n        }\n      } catch (err) {\n        _d = true;\n        _e = err;\n      } finally {\n        try {\n          if (!_n && _i[\"return\"]) _i[\"return\"]();\n        } finally {\n          if (_d) throw _e;\n        }\n      }\n\n      return _arr;\n    }\n\n    return function (arr, i) {\n      if (Array.isArray(arr)) {\n        return arr;\n      } else if (Symbol.iterator in Object(arr)) {\n        return sliceIterator(arr, i);\n      } else {\n        throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n      }\n    };\n  }();\n\n  var pluralize = _emberInflector.default.pluralize;\n  var Helper = _ember.default.Helper;\n  function pluralizer(_ref) {\n    var _ref2 = _slicedToArray(_ref, 2),\n        length = _ref2[0],\n        value = _ref2[1];\n\n    if (length > 1) {\n      switch (value) {\n        case 'this':\n          return 'these';\n        case 'has':\n          return 'have';\n        case 'its':\n          return 'their';\n        default:\n          return pluralize(value);\n      }\n    } else if (length === null) {\n      return pluralize(value);\n    } else {\n      return value;\n    }\n  }\n\n  exports.default = Helper.helper(pluralizer);\n});","define('clever-sparky-frontend/helpers/route-action', ['exports', 'ember-route-action-helper/helpers/route-action'], function (exports, _routeAction) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _routeAction.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/singularize', ['exports', 'ember-inflector/lib/helpers/singularize'], function (exports, _singularize) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _singularize.default;\n});","define('clever-sparky-frontend/helpers/t', ['exports', 'ember-i18n/helper'], function (exports, _helper) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _helper.default;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/task', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  function _toConsumableArray(arr) {\n    if (Array.isArray(arr)) {\n      for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n        arr2[i] = arr[i];\n      }\n\n      return arr2;\n    } else {\n      return Array.from(arr);\n    }\n  }\n\n  function _toArray(arr) {\n    return Array.isArray(arr) ? arr : Array.from(arr);\n  }\n\n  function taskHelper(_ref) {\n    var _ref2 = _toArray(_ref),\n        task = _ref2[0],\n        args = _ref2.slice(1);\n\n    return task._curry.apply(task, _toConsumableArray(args));\n  }\n\n  exports.default = _ember.default.Helper.helper(taskHelper);\n});","define('clever-sparky-frontend/helpers/unix', ['exports', 'ember-moment/helpers/unix'], function (exports, _unix) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _unix.default;\n    }\n  });\n  Object.defineProperty(exports, 'unix', {\n    enumerable: true,\n    get: function () {\n      return _unix.unix;\n    }\n  });\n});","define('clever-sparky-frontend/helpers/utc', ['exports', 'ember-moment/helpers/utc'], function (exports, _utc) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _utc.default;\n    }\n  });\n  Object.defineProperty(exports, 'utc', {\n    enumerable: true,\n    get: function () {\n      return _utc.utc;\n    }\n  });\n});","define('clever-sparky-frontend/index', ['exports', 'ember-cli-uuid'], function (exports, _emberCliUuid) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'uuid', {\n    enumerable: true,\n    get: function () {\n      return _emberCliUuid.uuid;\n    }\n  });\n});","define('clever-sparky-frontend/initializers/app-version', ['exports', 'ember-cli-app-version/initializer-factory', 'clever-sparky-frontend/config/environment'], function (exports, _initializerFactory, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var _config$APP = _environment.default.APP,\n      name = _config$APP.name,\n      version = _config$APP.version;\n  exports.default = {\n    name: 'App Version',\n    initialize: (0, _initializerFactory.default)(name, version)\n  };\n});","define('clever-sparky-frontend/initializers/container-debug-adapter', ['exports', 'ember-resolver/resolvers/classic/container-debug-adapter'], function (exports, _containerDebugAdapter) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'container-debug-adapter',\n\n    initialize: function initialize() {\n      var app = arguments[1] || arguments[0];\n\n      app.register('container-debug-adapter:main', _containerDebugAdapter.default);\n      app.inject('container-debug-adapter:main', 'namespace', 'application:main');\n    }\n  };\n});","define('clever-sparky-frontend/initializers/data-adapter', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'data-adapter',\n    before: 'store',\n    initialize: function initialize() {}\n  };\n});","define('clever-sparky-frontend/initializers/ember-cli-uuid', ['exports', 'ember', 'ember-data', 'ember-cli-uuid', 'clever-sparky-frontend/config/environment', 'ember-cli-uuid/configuration'], function (exports, _ember, _emberData, _emberCliUuid, _environment, _configuration) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n\n    name: 'ember-cli-uuid',\n\n    initialize: function initialize() {\n\n      var config = _environment.default['ember-cli-uuid'] || {};\n      _configuration.default.load(config);\n\n      _emberData.default.Adapter.reopen({\n        generateIdForRecord: function generateIdForRecord() {\n          return _configuration.default.defaultUUID ? (0, _emberCliUuid.uuid)() : null;\n        }\n      });\n    }\n  };\n});","define('clever-sparky-frontend/initializers/ember-concurrency', ['exports', 'ember-concurrency'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'ember-concurrency',\n    initialize: function initialize() {}\n  };\n});","define('clever-sparky-frontend/initializers/ember-data', ['exports', 'ember-data/setup-container', 'ember-data'], function (exports, _setupContainer) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'ember-data',\n    initialize: _setupContainer.default\n  };\n});","define('clever-sparky-frontend/initializers/ember-feature-flags', ['exports', 'clever-sparky-frontend/config/environment', 'clever-sparky-frontend/services/features'], function (exports, _environment, _features) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n    var serviceName = _environment.default.featureFlagsService || 'features';\n    var serviceLookupName = 'service:' + serviceName;\n\n    application.register(serviceLookupName, _features.default);\n    application.inject('route', serviceName, serviceLookupName);\n    application.inject('controller', serviceName, serviceLookupName);\n    application.inject('component', serviceName, serviceLookupName);\n    application.inject(serviceLookupName, 'application', 'application:main');\n  }\n\n  exports.default = {\n    name: 'ember-feature-flags',\n    initialize: initialize\n  };\n});","define('clever-sparky-frontend/initializers/ember-i18n', ['exports', 'ember-i18n/initializers/ember-i18n'], function (exports, _emberI18n) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _emberI18n.default;\n});","define('clever-sparky-frontend/initializers/ember-simple-auth', ['exports', 'clever-sparky-frontend/config/environment', 'ember-simple-auth/configuration', 'ember-simple-auth/initializers/setup-session', 'ember-simple-auth/initializers/setup-session-service'], function (exports, _environment, _configuration, _setupSession, _setupSessionService) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'ember-simple-auth',\n\n    initialize: function initialize(registry) {\n      var config = _environment.default['ember-simple-auth'] || {};\n      config.baseURL = _environment.default.rootURL || _environment.default.baseURL;\n      _configuration.default.load(config);\n\n      (0, _setupSession.default)(registry);\n      (0, _setupSessionService.default)(registry);\n    }\n  };\n});","define('clever-sparky-frontend/initializers/export-application-global', ['exports', 'ember', 'clever-sparky-frontend/config/environment'], function (exports, _ember, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n    if (_environment.default.exportApplicationGlobal !== false) {\n      var theGlobal;\n      if (typeof window !== 'undefined') {\n        theGlobal = window;\n      } else if (typeof global !== 'undefined') {\n        theGlobal = global;\n      } else if (typeof self !== 'undefined') {\n        theGlobal = self;\n      } else {\n        // no reasonable global, just bail\n        return;\n      }\n\n      var value = _environment.default.exportApplicationGlobal;\n      var globalName;\n\n      if (typeof value === 'string') {\n        globalName = value;\n      } else {\n        globalName = _ember.default.String.classify(_environment.default.modulePrefix);\n      }\n\n      if (!theGlobal[globalName]) {\n        theGlobal[globalName] = application;\n\n        application.reopen({\n          willDestroy: function willDestroy() {\n            this._super.apply(this, arguments);\n            delete theGlobal[globalName];\n          }\n        });\n      }\n    }\n  }\n\n  exports.default = {\n    name: 'export-application-global',\n\n    initialize: initialize\n  };\n});","define('clever-sparky-frontend/initializers/flash-messages', ['exports', 'ember', 'clever-sparky-frontend/config/environment'], function (exports, _ember, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  var deprecate = _ember.default.deprecate;\n\n  var merge = _ember.default.assign || _ember.default.merge;\n  var INJECTION_FACTORIES_DEPRECATION_MESSAGE = '[ember-cli-flash] Future versions of ember-cli-flash will no longer inject the service automatically. Instead, you should explicitly inject it into your Route, Controller or Component with `Ember.inject.service`.';\n  var addonDefaults = {\n    timeout: 3000,\n    extendedTimeout: 0,\n    priority: 100,\n    sticky: false,\n    showProgress: false,\n    type: 'info',\n    types: ['success', 'info', 'warning', 'danger', 'alert', 'secondary'],\n    injectionFactories: ['route', 'controller', 'view', 'component'],\n    preventDuplicates: false\n  };\n\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n\n    var _ref = _environment.default || {},\n        flashMessageDefaults = _ref.flashMessageDefaults;\n\n    var _ref2 = flashMessageDefaults || [],\n        injectionFactories = _ref2.injectionFactories;\n\n    var options = merge(addonDefaults, flashMessageDefaults);\n    var shouldShowDeprecation = !(injectionFactories && injectionFactories.length);\n\n    application.register('config:flash-messages', options, { instantiate: false });\n    application.inject('service:flash-messages', 'flashMessageDefaults', 'config:flash-messages');\n\n    deprecate(INJECTION_FACTORIES_DEPRECATION_MESSAGE, shouldShowDeprecation, {\n      id: 'ember-cli-flash.deprecate-injection-factories',\n      until: '2.0.0'\n    });\n\n    options.injectionFactories.forEach(function (factory) {\n      application.inject(factory, 'flashMessages', 'service:flash-messages');\n    });\n  }\n\n  exports.default = {\n    name: 'flash-messages',\n    initialize: initialize\n  };\n});","define('clever-sparky-frontend/initializers/injectStore', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'injectStore',\n    before: 'store',\n    initialize: function initialize() {}\n  };\n});","define('clever-sparky-frontend/initializers/local-storage-adapter', ['exports', 'ember-local-storage/initializers/local-storage-adapter'], function (exports, _localStorageAdapter) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _localStorageAdapter.default;\n    }\n  });\n  Object.defineProperty(exports, 'initialize', {\n    enumerable: true,\n    get: function () {\n      return _localStorageAdapter.initialize;\n    }\n  });\n});","define('clever-sparky-frontend/initializers/metrics', ['exports', 'clever-sparky-frontend/config/environment'], function (exports, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n    var _config$metricsAdapte = _environment.default.metricsAdapters,\n        metricsAdapters = _config$metricsAdapte === undefined ? [] : _config$metricsAdapte;\n    var _config$environment = _environment.default.environment,\n        environment = _config$environment === undefined ? 'development' : _config$environment;\n\n    var options = { metricsAdapters: metricsAdapters, environment: environment };\n\n    application.register('config:metrics', options, { instantiate: false });\n    application.inject('service:metrics', 'options', 'config:metrics');\n  }\n\n  exports.default = {\n    name: 'metrics',\n    initialize: initialize\n  };\n});","define('clever-sparky-frontend/initializers/raven', ['exports', 'clever-sparky-frontend/config/environment'], function (exports, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n    var _config$sentry$servic = _environment.default.sentry.serviceName,\n        serviceName = _config$sentry$servic === undefined ? 'raven' : _config$sentry$servic;\n\n    var lookupName = 'service:' + serviceName;\n    var _config$sentry$expose = _environment.default.sentry.exposedPropertyName,\n        exposedPropertyName = _config$sentry$expose === undefined ? 'raven' : _config$sentry$expose;\n\n\n    application.inject('route', exposedPropertyName, lookupName);\n    application.inject('component', exposedPropertyName, lookupName);\n    application.inject('controller', exposedPropertyName, lookupName);\n    application.inject('model', exposedPropertyName, lookupName);\n  }\n\n  exports.default = {\n    initialize: initialize,\n    name: 'raven'\n  };\n});","define('clever-sparky-frontend/initializers/responsive', ['exports', 'ember-responsive/initializers/responsive'], function (exports, _responsive) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'responsive',\n    initialize: _responsive.initialize\n  };\n});","define('clever-sparky-frontend/initializers/setup-ember-can', ['exports', 'require'], function (exports, _require2) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n  var Resolver;\n\n  // This is a bit of a hack, but there is no way to detect\n  // which module is needed via normal `import` statements\n  /* globals requirejs */\n  if (requirejs.entries['ember-resolver'] || requirejs.entries['ember-resolver/index']) {\n    // ember-resolver is provided when the consuming\n    // application uses ember-resolver@^2.0.0 from NPM\n    Resolver = (0, _require2.default)('ember-resolver')['default'];\n  } else {\n    // ember/resolver is provided when the consuming\n    // application uses ember-resolver@^0.1.x from Bower\n    Resolver = (0, _require2.default)('ember/resolver')['default'];\n  }\n\n  Resolver.reopen({\n    pluralizedTypes: {\n      ability: 'abilities'\n    }\n  });\n\n  exports.default = {\n    name: 'setup-ember-can',\n    initialize: function initialize(application) {\n      // make sure we create new ability instances each time, otherwise we stomp on each other's models\n      if (application.optionsForType) {\n        // it's a container / registry in 1.13.x\n        application.optionsForType('ability', { singleton: false });\n      } else {\n        // Ember 2.0.x\n        application.registerOptionsForType('ability', { singleton: false });\n      }\n    }\n  };\n});","define('clever-sparky-frontend/initializers/store', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'store',\n    after: 'ember-data',\n    initialize: function initialize() {}\n  };\n});","define('clever-sparky-frontend/initializers/transforms', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'transforms',\n    before: 'store',\n    initialize: function initialize() {}\n  };\n});","define('clever-sparky-frontend/initializers/user-agent', ['exports', 'ember-useragent/initializers/user-agent'], function (exports, _userAgent) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'user-agent',\n    initialize: _userAgent.initialize\n  };\n});","define(\"clever-sparky-frontend/instance-initializers/ember-data\", [\"exports\", \"ember-data/instance-initializers/initialize-store-service\"], function (exports, _initializeStoreService) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: \"ember-data\",\n    initialize: _initializeStoreService.default\n  };\n});","define('clever-sparky-frontend/instance-initializers/ember-i18n', ['exports', 'ember-i18n/instance-initializers/ember-i18n'], function (exports, _emberI18n) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _emberI18n.default;\n});","define('clever-sparky-frontend/instance-initializers/ember-simple-auth', ['exports', 'ember-simple-auth/instance-initializers/setup-session-restoration'], function (exports, _setupSessionRestoration) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    name: 'ember-simple-auth',\n\n    initialize: function initialize(instance) {\n      (0, _setupSessionRestoration.default)(instance);\n    }\n  };\n});","define('clever-sparky-frontend/instance-initializers/ember-useragent', ['exports', 'ember-useragent/instance-initializers/ember-useragent'], function (exports, _emberUseragent) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _emberUseragent.default;\n    }\n  });\n  Object.defineProperty(exports, 'initialize', {\n    enumerable: true,\n    get: function () {\n      return _emberUseragent.initialize;\n    }\n  });\n});","define('clever-sparky-frontend/instance-initializers/raven-setup', ['exports', 'ember', 'clever-sparky-frontend/config/environment'], function (exports, _ember, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.initialize = initialize;\n  function initialize(application) {\n    if (_ember.default.get(_environment.default, 'sentry.development') === true) {\n      if (_ember.default.get(_environment.default, 'sentry.debug') === true) {\n        _ember.default.Logger.info('`sentry` is configured for development mode.');\n      }\n      return;\n    }\n\n    if (!_environment.default.sentry) {\n      throw new Error('`sentry` should be configured when not in development mode.');\n    }\n\n    var _config$sentry$servic = _environment.default.sentry.serviceName,\n        serviceName = _config$sentry$servic === undefined ? 'raven' : _config$sentry$servic;\n\n    var lookupName = 'service:' + serviceName;\n    var service = application.lookup ? application.lookup(lookupName) : application.container.lookup(lookupName);\n\n    service.setup(_environment.default);\n  }\n\n  exports.default = {\n    initialize: initialize,\n    name: 'sentry-setup'\n  };\n});","define(\"clever-sparky-frontend/locales/en/config\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    // rtl: [true|FALSE],\n    //\n    // pluralForm: function(count) {\n    //   if (count === 0) { return 'zero'; }\n    //   if (count === 1) { return 'one'; }\n    //   if (count === 2) { return 'two'; }\n    //   if (count < 5) { return 'few'; }\n    //   if (count >= 5) { return 'many'; }\n    //   return 'other';\n    // }\n  };\n});","define('clever-sparky-frontend/locales/en/translations', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = {\n    // \"some.translation.key\": \"Text for some.translation.key\",\n    //\n    // \"a\": {\n    //   \"nested\": {\n    //     \"key\": \"Text for a.nested.key\"\n    //   }\n    // },\n    //\n    // \"key.with.interpolation\": \"Text with {{anInterpolation}}\"\n    //\n\n    tour: {\n      'post-onboarding': {\n        'sites-table': 'This is where you\\'ll find a list of your sites.',\n        'new-site-action': 'Add a new site by clicking here and entering your site details.',\n        'users-nav-item': 'If you want to create a team structure, this is where you\\'ll be able to manage your team, including invite new users, giving and removing access to sites, and removing users.',\n        'analytics-nav-item': 'View site analytics by clicking here.'\n      },\n\n      'view-restricted-sites': {\n        'request-access': 'If you haven\\'t created a site, you\\'ll need to request access from the admin of your team. Once granted, you\\'ll be able to see all data connected with that site.'\n      },\n\n      'user-dropdown-menu': {\n        'create-business': 'If you\\'d like to create a new business, click here.',\n        'update-business': 'You can update the details of your business by clicking here.'\n      },\n\n      'view-site': {\n        'groups-tab': 'Groups are collections of fittings located in similar areas that are grouped together for testing purposes.',\n        'test-events-tab': 'Test Events allow you to collect test results within a nominated time period. Creating a test event can be done once the groups have been created or after the fittings test results have been gathered.',\n        'faults-tab': 'This is where you\\'ll find a list of fittings that have been designated faulty on the site.',\n        'deleted-fittings-tab': 'If a fitting is deleted accidently, you can click here to reinstate it.',\n        'site-details-tab': 'Click here to see the details of this site, edit those details, delete the site, or transfer it to another account.',\n        'csv-download-template-action': 'You can populate your sites by uploading CSVs with fitting information. To download the CSV upload template, click here.',\n        'report-action': 'Download auto-generated site reports by clicking here.'\n      },\n\n      'view-site-technician': {\n        'site-details-tab': 'Click here to see the details of this site, edit those details, or transfer it to another account.'\n      },\n\n      'view-group': {\n        'commissioned-filter': 'Fittings can be added to the system before going to site either manually or by uploading a csv file of fitting information. These fittings will appear in the not commissioned list. Once a fitting has a test result added or is manually marked as commissioned, it will move to the commissioned list.'\n      },\n\n      'view-fitting': {\n        'click-fitting-action': 'Click a fitting to see a full list of fitting, test and maintenance information.'\n      },\n\n      'view-fitting-panel': {\n        'fitting-info-tab': 'Click here to edit or add information to a fitting.',\n        'test-tab': 'Click here to add test information for this fitting.',\n        'maintenance-tab': 'Click here to see the maintenance reports recorded for this fitting.'\n      },\n\n      'test-event-dropdown-menu': {\n        'duplicate-action': 'If you\\'d like to copy a test event\\'s structure and update the date range, click here to select the test event you\\'d like to duplicate.',\n        'archive-action': 'Once a test event\\'s end date has passed, you can archive it by clicking here. Archiving means all information will be read only, meaning you\\'ll have a valid record of everything that happened within that window.',\n        'add-groups-action': 'Adding a group to a test event allows you to see all the fittings in the group in the context of the test event\\'s date range. For example, does the fitting have a test that falls within that range?'\n      },\n\n      'view-test-event-group': {\n        'collected-filter': 'This filter helps you quickly see which fittings have a test within the test event\\'s date range. If a fitting is in the \\'not collected\\' list, it means it still needs a test collected within the specified date range.'\n      },\n\n      'view-users': {\n        'new-user-action': 'Click here to invite a user to your CleverSparky team. Team members will only have access to sites you give them permission to.',\n        'select-user-type': 'Use this drop down to change a team member\\'s user type. For example, an admin user has access to all sites and can invite other users, while a technician user has to be granted permission to sites. '\n      },\n\n      'view-user-details': {\n        'invite-to-sites': 'Click here to grant this user permission to your business\\' sites. You can copy the permissions of another team member, or select individual sites to give permission to.'\n      }\n    }\n  };\n});","define('clever-sparky-frontend/mixins/adapter-fetch', ['exports', 'ember-fetch/mixins/adapter-fetch'], function (exports, _adapterFetch) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _adapterFetch.default;\n    }\n  });\n});","define('clever-sparky-frontend/mixins/click-outside', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n  exports.default = Mixin.create({\n\n    clickOutsideParentElementSelector: '',\n\n    bindOnClickOutside: function bindOnClickOutside() {\n      this.set('boundOnClickOutside', function (e) {\n        if (this.$(e.target).closest(this.get('clickOutsideParentElementSelector')).length === 0) {\n          this.onClickOutside();\n        }\n      }.bind(this));\n    },\n    willInsertElement: function willInsertElement() {\n      this._super.apply(this, arguments);\n      this.bindOnClickOutside();\n      window.addEventListener('click', this.get('boundOnClickOutside'), false);\n    },\n    willDestroyElement: function willDestroyElement() {\n      this._super.apply(this, arguments);\n      window.removeEventListener('click', this.get('boundOnClickOutside'), false);\n    }\n  });\n});","define('clever-sparky-frontend/mixins/countries-and-states', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n\n\n  function getOptionsObject(optionsArray) {\n    return optionsArray.reduce(function (result, item) {\n      var optionObj = {\n        label: item,\n        value: item\n      };\n      result.push(optionObj);\n      return result;\n    }, []);\n  }\n\n  exports.default = Mixin.create({\n    countries: getOptionsObject(['Australia', 'New Zealand']),\n\n    australianStates: getOptionsObject(['Australian Capital Territory', 'New South Wales', 'Northern Territory', 'Queensland', 'South Australia', 'Tasmania', 'Victoria', 'Western Australia']),\n    newZealandStates: getOptionsObject(['Auckland', 'Bay of Plenty', 'Christchurch', 'Dunedin', 'Hamilton', 'Hastings', 'Invercargill', 'Manawatu', 'Napier', 'Nelson', 'New Plymouth', 'Palmerston North', 'Queenstown', 'Rotorua', 'Tauranga', 'The South Island', 'Timaru', 'Wairarapa', 'Wanganui', 'Wellington', 'Whangarei'])\n  });\n});","define('clever-sparky-frontend/mixins/escape-keypress', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n  exports.default = Mixin.create({\n    bindOnEscKeypress: function bindOnEscKeypress() {\n      this.set('boundOnEscKeypress', function (e) {\n        if (e.which === 27) {\n          e.stopPropagation();\n          e.preventDefault();\n          this.onEscKeypress();\n        }\n      }.bind(this));\n    },\n    willInsertElement: function willInsertElement() {\n      this._super.apply(this, arguments);\n      this.bindOnEscKeypress();\n      window.addEventListener('keydown', this.get('boundOnEscKeypress'), false);\n    },\n    willDestroyElement: function willDestroyElement() {\n      this._super.apply(this, arguments);\n      window.removeEventListener('keydown', this.get('boundOnEscKeypress'), false);\n    }\n  });\n});","define('clever-sparky-frontend/mixins/file-upload-actions', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin,\n      inject = _ember.default.inject,\n      computed = _ember.default.computed;\n  exports.default = Mixin.create(_handleError.default, {\n    fileUpload: inject.service('file-upload'),\n\n    csvUploadProgress: computed.reads('fileUpload.progress'),\n\n    csvUploadStatus: computed.reads('fileUpload.uploadStatus'),\n\n    csvFileName: computed.reads('fileUpload.fileName'),\n\n    refreshRoute: function refreshRoute() {\n      this.send('refreshRoute');\n    },\n\n\n    actions: {\n      uploadCsv: function uploadCsv(file) {\n        var _this = this;\n\n        this.set('test', this.get('fileUpload').upload(file, this.get('site')).then(function () {\n          _this.refreshRoute();\n        }).catch(function (errors) {\n          _this.set('displayErrorModal', true);\n          _this.set('uploadErrors', errors);\n        }));\n      },\n      cancelUpload: function cancelUpload() {\n        this.get('fileUpload').cancelUpload();\n      },\n      dismissProgressBar: function dismissProgressBar() {\n        this.get('fileUpload').reset();\n      },\n      closeErrorModal: function closeErrorModal() {\n        this.get('fileUpload').reset();\n        this.set('displayErrorModal', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/mixins/handle-error', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin,\n      inject = _ember.default.inject;\n  exports.default = Mixin.create({\n    flashMessages: inject.service('flashMessages'),\n\n    handleRailsError: function handleRailsError(response) {\n      var defaultMessage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n      var message = defaultMessage;\n\n      var errorMessages = response.errors || response;\n\n      if (errorMessages.length) {\n        message = errorMessages[0].detail;\n      }\n\n      this.showErrorFlash(message);\n    },\n    showErrorFlash: function showErrorFlash(message) {\n      var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n      if (!message) {\n        message = 'An error occurred performing this action.';\n      }\n\n      this.get('flashMessages').danger(message, options);\n    },\n    showSuccessFlash: function showSuccessFlash(message) {\n      var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n      if (!message) {\n        message = 'Success.';\n      }\n\n      this.get('flashMessages').success(message, options);\n    }\n  });\n});","define('clever-sparky-frontend/mixins/option-lookup', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n  exports.default = Mixin.create({\n\n    testStatusOptions: [{ label: 'Valid Pass', value: 'valid_pass' }, { label: 'Test Active', value: 'test_active' }, { label: 'Failed Unknown', value: 'failed_unknown' }, { label: 'Failed Battery', value: 'failed_battery' }, { label: 'Failed Lamp', value: 'failed_lamp' }, { label: 'Failed Control', value: 'failed_control' }, { label: 'Failed No Output', value: 'failed_no_output' }],\n\n    passTestStatusOptions: [{ label: 'Valid Pass', value: 'valid_pass' }],\n\n    failTestStatusOptions: [{ label: 'Failed Unknown', value: 'failed_unknown' }, { label: 'Failed Battery', value: 'failed_battery' }, { label: 'Failed Lamp', value: 'failed_lamp' }, { label: 'Failed Control', value: 'failed_control' }, { label: 'Failed No Output', value: 'failed_no_output' }],\n\n    durationOptions: [{ label: '30', value: 30 }, { label: '90', value: 90 }, { label: '120', value: 120 }],\n\n    viewOptions: [{ label: 'All Fittings', value: 'allfittings' }, { label: 'Groups', value: 'groups' }],\n\n    statusOptions: [{ label: 'OK', value: 'ok' }, { label: 'Faulty', value: 'faulty' }],\n\n    repairOptions: [{ label: 'Replaced battery', value: 'battery' }, { label: 'Replaced fitting', value: 'fitting' }, { label: 'Replaced control gear', value: 'control_gear' }, { label: 'Replaced lamp', value: 'lamp' }, { label: 'Other', value: 'other' }],\n\n    partTypeOptions: [{ label: 'Fitting', value: 'fitting' }, { label: 'Battery', value: 'battery' }, { label: 'Lamp', value: 'lamp' }, { label: 'Control Gear', value: 'control_gear' }, { label: 'Decal', value: 'decal' }],\n\n    userTypeOptions: [{\n      label: 'Owner',\n      value: 'owner'\n    }, {\n      label: 'Admin',\n      value: 'admin'\n    }, {\n      label: 'Technician',\n      value: 'technician'\n    }]\n\n  });\n});","define('clever-sparky-frontend/mixins/report-actions', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin,\n      inject = _ember.default.inject;\n  exports.default = Mixin.create(_handleError.default, {\n    downloadReport: inject.service('downloadReport'),\n    holdvaribles: inject.service('holdvaribles'),\n    displayReportModal: false,\n    displayReportSuccessModal: false,\n    currentSite: null,\n    init: function init() {\n      this._super.apply(this, arguments);\n      var site = this.get('holdvaribles').showCurrentSite();\n      this.set('currentSite', site.data);\n    },\n    downloadGroupsReport: function downloadGroupsReport(groups, category, reportFormat, cstatebool, cstatement) {\n      var _this = this;\n\n      if (groups.includes('All Groups')) {\n        groups = [];\n      }\n      this.get('downloadReport').downloadGroupsReport(this.get('site'), groups, category, reportFormat, cstatebool, cstatement).then(function () {\n        _this.send('showReportSuccessModal');\n      }).catch(function (reason) {\n        _this.handleRailsError(reason);\n      }).finally(function () {\n        _this.set('isQueryPending', false);\n      });\n    },\n    downloadTestEventReport: function downloadTestEventReport(testEvent, category, reportFormat, cstatebool, cstatement) {\n      var _this2 = this;\n\n      this.get('downloadReport').downloadTestEventReport(this.get('site'), testEvent, category, reportFormat, cstatebool, cstatement).then(function () {\n        _this2.send('showReportSuccessModal');\n      }).catch(function (reason) {\n        _this2.handleRailsError(reason);\n      }).finally(function () {\n        _this2.set('isQueryPending', false);\n      });\n    },\n\n\n    actions: {\n      downloadReport: function downloadReport(reportContent, reportItems, category, reportFormat, cstatebool, cstatement) {\n        if (reportContent === 'groups') {\n          this.downloadGroupsReport(reportItems, category, reportFormat, cstatebool, cstatement);\n        } else {\n          this.downloadTestEventReport(reportItems, category, reportFormat, cstatebool, cstatement);\n        }\n      },\n      toggleReportModal: function toggleReportModal() {\n        this.toggleProperty('displayReportModal', true);\n        this.set('displayReportSuccessModal', false);\n      },\n      showReportSuccessModal: function showReportSuccessModal() {\n        this.set('displayReportSuccessModal', true);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/mixins/reset-scroll-position', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n  exports.default = Mixin.create({\n    activate: function activate() {\n      this._super();\n      window.scrollTo(0, 0);\n    }\n  });\n});","define('clever-sparky-frontend/mixins/setup-tour-sequence', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin,\n      inject = _ember.default.inject;\n  exports.default = Mixin.create({\n\n    // services\n\n    store: inject.service(),\n\n    // methods\n\n    setupTourSequence: function setupTourSequence(eventName, tour) {\n      var _this = this;\n\n      eventName = eventName.dasherize();\n\n      return this.store.query('tooltip-event', {\n        filter: {\n          'event-name': eventName\n        }\n      }).then(function (tooltipEvents) {\n        if (!tooltipEvents.get('length')) {\n          tour.setup();\n          _this.createTooltipEvent(eventName);\n        }\n      }).catch(function () {});\n    },\n    createTooltipEvent: function createTooltipEvent(eventName) {\n      var tooltipEvent = this.store.createRecord('tooltip-event', {\n        eventName: eventName\n      });\n      tooltipEvent.save();\n\n      return tooltipEvent;\n    },\n    deactivateTour: function deactivateTour(tour) {\n      tour.deactivate();\n    }\n  });\n});","define('clever-sparky-frontend/mixins/show-nav-bar', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin;\n  exports.default = Mixin.create({\n    activate: function activate() {\n      this.controllerFor('application').set('showNavBar', true);\n    },\n    deactivate: function deactivate() {\n      this.controllerFor('application').set('showNavBar', false);\n    }\n  });\n});","define('clever-sparky-frontend/mixins/toggle-label-focus', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Mixin = _ember.default.Mixin,\n      $ = _ember.default.$,\n      run = _ember.default.run;\n  exports.default = Mixin.create({\n\n    _rowSelector: '.input',\n\n    _inputSelector: 'input[type=\"text\"], input[type=\"url\"], input[type=\"number\"], input[type=\"tel\"], input[type=\"email\"], input[type=\"password\"], textarea',\n\n    _applyFocusedClass: function _applyFocusedClass($input, rowSelector) {\n      var apply = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n      $input.closest(rowSelector).toggleClass('focused', apply);\n    },\n    focusFilledInputs: function focusFilledInputs($form) {\n      var _this = this;\n\n      var $inputs = $form.find(this.get('_inputSelector'));\n\n      var rowSelector = this.get('_rowSelector');\n\n      $.each($inputs, function (index, value) {\n        _this._applyFocusedClass($(value), rowSelector, !!$(value).val().length);\n      });\n    },\n    toggleLabelFocus: function toggleLabelFocus($form) {\n      run.scheduleOnce('afterRender', this, function () {\n        var rowSelector = this.get('_rowSelector');\n        var applyFocusedClass = this._applyFocusedClass;\n\n        $form.find(this.get('_inputSelector')).off();\n\n        $form.find(this.get('_inputSelector')).on('focus blur change', function (e) {\n          applyFocusedClass($(this), rowSelector, e.type === 'focus' || !!this.value.length);\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/models/access-request', ['exports', 'ember-data', 'ember-api-actions'], function (exports, _emberData, _emberApiActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n    user: belongsTo('user'),\n\n    site: belongsTo('site'),\n\n    // actions\n    approve: (0, _emberApiActions.memberAction)({\n      path: 'approve',\n      type: 'post'\n    })\n\n  });\n});","define('clever-sparky-frontend/models/admin', ['exports', 'ember-data', 'ember'], function (exports, _emberData, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  var computed = _ember.default.computed;\n  exports.default = Model.extend({\n\n    // Attributes\n\n    firstname: attr('String'),\n\n    lastname: attr('String'),\n\n    email: attr('String'),\n\n    fullName: computed('firstname', 'lastname', function () {\n      return this.get('firstname') + ' ' + this.get('lastname');\n    })\n\n  });\n});","define('clever-sparky-frontend/models/employment', ['exports', 'ember', 'ember-data'], function (exports, _ember, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n\n    user: belongsTo('user'),\n\n    organisation: belongsTo('organisation'),\n\n    invite: belongsTo('invite'),\n\n    // Attributes\n\n    role: attr('string'),\n\n    checkoutPermission: attr('boolean'),\n\n    // Properties\n\n    isTechnician: computed.equal('role', 'technician')\n\n  });\n});","define('clever-sparky-frontend/models/fitting', ['exports', 'ember', 'ember-data'], function (exports, _ember, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    // Relationships\n    group: belongsTo('group'),\n\n    latestTest: belongsTo('ledtest'),\n\n    maintenances: hasMany('maintenance'),\n\n    testEvent: belongsTo('test-event'),\n\n    testEventFittings: hasMany('test-event-fitting'),\n\n    // Attributes\n    serialNumber: attr('string'),\n\n    fittingType: attr('string'),\n\n    description: attr('string'),\n\n    deviceReference: attr('string'),\n\n    location: attr('string'),\n\n    building: attr('string'),\n\n    level: attr('string'),\n\n    switchboard: attr('string'),\n\n    circuit: attr('string'),\n\n    assetCode: attr('string'),\n\n    batteryStatus: attr('string'),\n\n    controlGearStatus: attr('string'),\n\n    lampStatus: attr('string'),\n\n    installDate: attr('string'),\n\n    faulty: attr('boolean'),\n\n    deletedAt: attr('string'),\n\n    commissioned: attr('boolean'),\n\n    availablePartTypes: attr(),\n\n    orderedPartTypes: attr(),\n\n    // Properties\n\n    rowLabel: computed('deviceReference', 'location', 'fittingType', function () {\n      var location = this.get('location');\n      var deviceReference = this.get('deviceReference');\n      var fittingType = this.get('fittingType');\n\n      return (location ? location.concat(' -') : '') + ' ' + deviceReference + ' ' + (fittingType ? '- '.concat(fittingType) : '');\n    }),\n\n    availablePartTypesArray: computed('availablePartTypes', function () {\n      return this.get('availablePartTypes')['part-types'];\n    }),\n\n    orderedPartTypesArray: computed('orderedPartTypes', function () {\n      return this.get('orderedPartTypes')['part-types'];\n    })\n\n  });\n});","define('clever-sparky-frontend/models/group', ['exports', 'ember', 'ember-data'], function (exports, _ember, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    // Relationships\n    site: belongsTo('site'),\n\n    fittings: hasMany('fitting'),\n\n    // Attributes\n    name: attr('string'),\n\n    fittingsCount: attr('number'),\n\n    faultyFittingsCount: attr('number'),\n\n    createdAt: attr('date'),\n\n    commissionedFittingsCount: attr('number'),\n\n    notCommissionedFittingsCount: attr('number'),\n\n    // Properties\n    hasFittings: computed.gte('fittingsCount', 1),\n\n    canDelete: computed.not('hasFittings')\n\n  });\n});","define('clever-sparky-frontend/models/invite', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n\n    organisation: belongsTo('organisation'),\n\n    employment: belongsTo('employment'),\n\n    // Attributes\n\n    email: attr('string'),\n\n    status: attr('string')\n\n  });\n});","define('clever-sparky-frontend/models/invitetransfer', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n\n    // Attributes\n\n    id: attr('string'),\n\n    name: attr('string')\n\n  });\n});","define('clever-sparky-frontend/models/ledtest', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n    fitting: belongsTo('fitting'),\n\n    testEvent: belongsTo('test-event'),\n\n    // Attributes\n    testStatus: attr('string'),\n\n    testDate: attr('string'),\n\n    runTime: attr('number'),\n\n    nextTestDate: attr('string'),\n\n    requiredDuration: attr('number')\n  });\n});","define('clever-sparky-frontend/models/maintenance', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n\n    // Relationships\n\n    fitting: belongsTo('fitting'),\n\n    // Attributes\n\n    repairDate: attr('string'),\n\n    repair: attr('string'),\n\n    notes: attr('string')\n\n  });\n});","define('clever-sparky-frontend/models/order-item', ['exports', 'ember-data', 'ember-macaroni', 'clever-sparky-frontend/mixins/option-lookup'], function (exports, _emberData, _emberMacaroni, _optionLookup) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend(_optionLookup.default, {\n    // Relationships\n    fitting: belongsTo('fitting'),\n\n    // Attributes\n    partType: attr('string'),\n\n    partNumber: attr('string'),\n\n    // Properties\n    partTypeOption: (0, _emberMacaroni.findFromCollectionByKey)('partTypeOptions', 'value', 'partType'),\n\n    orderItemLabel: (0, _emberMacaroni.joinWith)(' - ', 'partTypeOption.label', 'fitting.deviceReference')\n\n  });\n});","define('clever-sparky-frontend/models/order', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    // Relationships\n    site: belongsTo('site'),\n\n    orderItems: hasMany('orderItems'),\n\n    // Attributes\n    checkedOut: attr('boolean'),\n\n    orderItemsCount: attr('number')\n  });\n});","define('clever-sparky-frontend/models/organisation-analytics', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n\n    fittingsCount: attr('number'),\n\n    faultyFittingsCount: attr('number'),\n\n    upcomingTestsCount: attr('number')\n\n  });\n});","define('clever-sparky-frontend/models/organisation', ['exports', 'ember-data', 'clever-sparky-frontend/models/site-owner', 'ember-api-actions'], function (exports, _emberData, _siteOwner, _emberApiActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var attr = _emberData.default.attr,\n      hasMany = _emberData.default.hasMany,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = _siteOwner.default.extend({\n    // Relationships\n    employments: hasMany('employments'),\n\n    sites: hasMany('site', { inverse: 'siteOwner' }),\n\n    wholesaler: belongsTo('wholesaler'),\n\n    // Attributes\n    name: attr('string'),\n\n    country: attr('string'),\n\n    state: attr('string'),\n\n    wholesalerAuthDetails: attr(),\n\n    wholesalerAuthenticated: attr('boolean'),\n\n    cstatement: attr('string'),\n\n    // Actions\n    copySitePermissions: (0, _emberApiActions.memberAction)({\n      path: 'site-permissions/copy',\n      type: 'post'\n    })\n  });\n});","define('clever-sparky-frontend/models/place', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    // Attributes\n\n    addressPrimary: attr('string'),\n\n    addressSecondary: attr('string'),\n\n    existingSites: attr('boolean'),\n\n    // Relationships\n\n    sites: hasMany('site')\n\n  });\n});","define('clever-sparky-frontend/models/role', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model;\n  exports.default = Model.extend({});\n});","define('clever-sparky-frontend/models/session', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n\n    user: belongsTo('user'),\n\n    email: attr('string'),\n\n    password: attr('string'),\n\n    authenticationToken: attr('string')\n\n  });\n});","define('clever-sparky-frontend/models/site-owner', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    sites: hasMany('site')\n  });\n});","define('clever-sparky-frontend/models/site-permission', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n\n    user: belongsTo('user'),\n\n    site: belongsTo('site')\n\n  });\n});","define('clever-sparky-frontend/models/site', ['exports', 'ember', 'ember-data', 'clever-sparky-frontend/validators/site-validator', 'ember-api-actions'], function (exports, _ember, _emberData, _siteValidator, _emberApiActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      hasMany = _emberData.default.hasMany,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend(_siteValidator.SiteValidations, {\n    // Relationships\n\n    groups: hasMany('group'),\n\n    testEvents: hasMany('test-event', { async: true }),\n\n    siteOwner: belongsTo('site-owner', { polymorphic: true }),\n\n    currentOrder: belongsTo('order'),\n\n    // Attributes\n\n    unit: attr('string'),\n\n    address: attr('string'),\n\n    businessName: attr('string'),\n\n    buildingName: attr('string'),\n\n    contactName: attr('string'),\n\n    contactEmail: attr('string'),\n\n    adminEmail: attr('string'),\n\n    placeId: attr('string'),\n\n    createdAt: attr('date'),\n\n    permitted: attr('boolean'),\n\n    permissionRequested: attr('boolean'),\n\n    groupsCount: attr('number'),\n\n    nexttestdate: attr('string'),\n    // Properties\n    notPermitted: computed.not('permitted'),\n\n    transferOwnership: (0, _emberApiActions.memberAction)({ path: 'relationships/site-owner' })\n\n  });\n});","define('clever-sparky-frontend/models/template', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n    name: attr('string'),\n    fulltext: attr('string')\n  });\n});","define('clever-sparky-frontend/models/test-event-fitting', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n    // Relationships\n\n    fitting: belongsTo('fitting'),\n\n    testEventGroup: belongsTo('test-event-group'),\n\n    latestTest: belongsTo('ledtest'),\n\n    maintenances: hasMany('maintenance'),\n\n    // Attributes\n\n    collected: attr('boolean'),\n\n    testOutOfRange: attr('boolean')\n\n  });\n});","define('clever-sparky-frontend/models/test-event-group', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n    // Relationships\n\n    testEvent: belongsTo('test-event'),\n\n    group: belongsTo('group'),\n\n    testEventFittings: hasMany('test-event-fitting'),\n\n    collectedTestEventFittingsCount: attr('number'),\n\n    notCollectedTestEventFittingsCount: attr('number')\n  });\n});","define('clever-sparky-frontend/models/test-event', ['exports', 'ember', 'ember-data', 'ember-api-actions'], function (exports, _ember, _emberData, _emberApiActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  exports.default = Model.extend({\n    // Relationships\n    site: belongsTo('site', { async: true }),\n\n    testEventGroups: hasMany('test-event-group'),\n\n    // Attributes\n    label: attr('string'),\n\n    startDate: attr('string'),\n\n    endDate: attr('string'),\n\n    groupsCount: attr('number'),\n\n    archived: attr('boolean'),\n\n    defaultTestDate: attr('string'),\n\n    defaultRunTime: attr('number'),\n\n    defaultRequiredDuration: attr('number'),\n\n    nexttestdate: attr('string'),\n\n    viewb: attr('string'),\n\n    // Properties\n    hasGroups: computed.gte('groupsCount', 1),\n\n    canDelete: computed.not('hasGroups'),\n\n    // actions\n    duplicate: (0, _emberApiActions.memberAction)({\n      path: 'duplicate',\n      type: 'post'\n    }),\n\n    archive: (0, _emberApiActions.memberAction)({\n      path: 'archive',\n      type: 'post'\n    })\n\n  });\n});","define('clever-sparky-frontend/models/tooltip-event', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n\n    eventName: attr('string')\n\n  });\n});","define('clever-sparky-frontend/models/user', ['exports', 'ember', 'ember-data', 'clever-sparky-frontend/models/site-owner', 'ember-api-actions'], function (exports, _ember, _emberData, _siteOwner, _emberApiActions) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  var attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  exports.default = _siteOwner.default.extend({\n\n    // Relationships\n\n    organisations: hasMany('organisation'),\n\n    wholesaler: belongsTo('wholesaler'),\n\n    sites: hasMany('site', { inverse: 'siteOwner' }),\n\n    // Attributes\n\n    firstName: attr('string'),\n\n    lastName: attr('string'),\n\n    email: attr('string'),\n\n    phone: attr('string'),\n\n    country: attr('string'),\n\n    state: attr('string'),\n\n    password: attr('string'),\n\n    currentPassword: attr('string'),\n\n    passwordConfirmation: attr('string'),\n\n    wholesalerAuthDetails: attr(),\n\n    wholesalerAuthenticated: attr('boolean'),\n\n    admin: attr('boolean'),\n\n    postcode: attr('string'),\n\n    rfn: attr('string'),\n\n    abn: attr('string'),\n\n    qbcc: attr('string'),\n\n    reportphone: attr('string'),\n\n    imgurl: attr('string'),\n\n    editpage: attr('boolean'),\n\n    signatureurl: attr('string'),\n\n    sigfilename: attr('string'),\n\n    // eslint-disable-next-line camelcase\n    wholesaler_local_branch: attr('string'),\n\n    cstatement: attr('string'),\n\n    // Properties\n\n    fullName: computed('firstName', 'lastName', function () {\n      return this.get('firstName') + ' ' + this.get('lastName');\n    }),\n\n    truncatedName: computed('firstName', 'lastName', function () {\n      return this.get('firstName') + ' ' + this.get('lastName')[0];\n    }),\n\n    // Actions\n\n    grantAccess: (0, _emberApiActions.memberAction)({\n      path: 'relationships/permitted-sites',\n      type: 'post'\n    }),\n\n    clearPassword: function clearPassword() {\n      this.set('password', null);\n      this.set('passwordConfirmation', null);\n      this.set('currentPassword', null);\n    }\n  });\n});","define('clever-sparky-frontend/models/wholesaler-auth-resource', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr;\n  exports.default = Model.extend({\n    // Attributes\n    authUrl: attr('string'),\n\n    authToken: attr('string')\n  });\n});","define('clever-sparky-frontend/models/wholesaler', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Model = _emberData.default.Model,\n      attr = _emberData.default.attr,\n      hasMany = _emberData.default.hasMany,\n      belongsTo = _emberData.default.belongsTo;\n  exports.default = Model.extend({\n    // Relationships\n    users: hasMany('user'),\n\n    wholesalerAuthResource: belongsTo('wholesaler-auth-resource'),\n\n    // Attributes\n    name: attr('string')\n  });\n});","define('clever-sparky-frontend/resolver', ['exports', 'ember-resolver'], function (exports, _emberResolver) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _emberResolver.default;\n});","define('clever-sparky-frontend/router', ['exports', 'ember', 'clever-sparky-frontend/config/environment'], function (exports, _ember, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var EmberRouter = _ember.default.Router,\n      inject = _ember.default.inject,\n      run = _ember.default.run,\n      get = _ember.default.get;\n\n\n  if (_environment.default.environment !== 'test') {\n    EmberRouter.reopen({\n      metrics: inject.service()\n    });\n  }\n\n  var Router = EmberRouter.extend({\n    location: _environment.default.locationType,\n    rootURL: _environment.default.rootURL,\n\n    didTransition: function didTransition() {\n      this._super.apply(this, arguments);\n      this._trackPage();\n    },\n    _trackPage: function _trackPage() {\n      var _this = this;\n\n      run.scheduleOnce('afterRender', this, function () {\n        var page = _this.get('url');\n        var title = _this.getWithDefault('currentRouteName', 'unknown');\n\n        get(_this, 'metrics').trackPage({ page: page, title: title });\n      });\n    }\n  });\n\n  var isTestEventsEnabled = _environment.default.featureFlags.testEvents;\n  var isAnalyticsEnabled = _environment.default.featureFlags.analytics;\n  var isShoppingCartEnabled = _environment.default.featureFlags.shoppingCart;\n  var isGuidedTourEnabled = _environment.default.featureFlags.guidedTour;\n\n  Router.map(function () {\n    this.route('login');\n\n    this.route('invite');\n\n    this.route('sites', function () {});\n\n    this.route('site', { path: '/sites/:site_id' }, function () {\n      this.route('details');\n      this.route('fittings', function () {\n        this.route('show', { path: '/:fitting_id' }, function () {\n          this.route('details');\n          this.route('test-and-status');\n          this.route('maintenance');\n        });\n      });\n      this.route('groups', function () {});\n      this.route('faults', function () {\n        this.route('show', { path: '/:fitting_id' }, function () {\n          this.route('details');\n          this.route('test-and-status');\n          this.route('maintenance');\n        });\n      });\n      this.route('deleted-fittings', function () {\n        this.route('show', { path: '/:fitting_id' }, function () {\n          this.route('details');\n          this.route('test-and-status');\n          this.route('maintenance');\n        });\n      });\n      if (isTestEventsEnabled) {\n        this.route('test-events');\n      }\n      if (isShoppingCartEnabled) {\n        this.route('shopping-cart');\n      }\n    });\n\n    this.route('groups', { path: '/groups/:group_id' }, function () {\n\n      this.route('fittings', function () {\n        this.route('delete-group');\n        this.route('edit-group');\n\n        this.route('show', { path: '/:fitting_id' }, function () {\n          this.route('details');\n          this.route('test-and-status');\n          this.route('maintenance');\n        });\n      });\n    });\n\n    this.route('edit', function () {\n      this.route('profile', function () {});\n      this.route('organisation');\n    });\n\n    this.route('signup', function () {\n      this.route('terms');\n      this.route('user');\n    });\n\n    this.route('change-password', function () {\n      this.route('success');\n    });\n\n    this.route('reset-password', function () {\n      this.route('success');\n    });\n\n    this.route('forgot-password', function () {\n      this.route('success');\n    });\n\n    this.route('logout');\n\n    this.route('site-requests');\n\n    this.route('new-organisation');\n\n    this.route('users');\n\n    this.route('user', { path: '/users/:employment_id' });\n\n    this.route('terms');\n\n    this.route('support');\n\n    this.route('site-request', { path: '/site-requests/:access_request_id' });\n\n    if (isTestEventsEnabled) {\n      this.route('test-event', { path: '/test-events/:test_event_id' }, function () {\n        this.route('groups');\n      });\n\n      this.route('test-event-group', { path: '/test-events/groups/:test_event_group_id' }, function () {\n        this.route('fittings', function () {\n          this.route('show', { path: '/:test_event_fitting_id' }, function () {\n            this.route('details');\n            this.route('test-and-status');\n            this.route('maintenance');\n          });\n        });\n      });\n    }\n\n    if (isAnalyticsEnabled) {\n      this.route('analytics');\n    }\n\n    if (isGuidedTourEnabled) {\n      this.route('onboarding');\n    }\n\n    if (isShoppingCartEnabled) {\n      this.route('order-item-group', { path: '/shopping-cart/groups/:group_id' }, function () {\n        this.route('order-items');\n      });\n    }\n  });\n\n  exports.default = Router;\n});","define('clever-sparky-frontend/routes/analytics', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _emberCan.CanMixin, {\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n\n      var _modelFor = this.modelFor('application'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('view user-management', currentEmployment)) {\n        this.replaceWith('sites');\n      }\n    },\n    model: function model() {\n      var _modelFor2 = this.modelFor('application'),\n          currentOrganisation = _modelFor2.currentOrganisation;\n\n      return RSVP.hash({\n        organisationAnalytics: this.get('store').queryRecord('organisation-analytics', { currentOrganisationId: currentOrganisation.id })\n      });\n    }\n  });\n});","define('clever-sparky-frontend/routes/application', ['exports', 'ember', 'ember-simple-auth/mixins/application-route-mixin', 'clever-sparky-frontend/mixins/handle-error', 'ember-local-storage'], function (exports, _ember, _applicationRouteMixin, _handleError, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_applicationRouteMixin.default, _handleError.default, {\n\n    invite: (0, _emberLocalStorage.storageFor)('invite'),\n    // services\n\n    session: inject.service('session'),\n\n    branch: inject.service('branch'),\n\n    resetTooltipEvents: inject.service('reset-tooltip-events'),\n\n    // storage\n\n    currentOrganisation: (0, _emberLocalStorage.storageFor)('current-organisation'),\n\n    // attributes\n\n    shouldTransitionToSites: false,\n\n    // methods\n\n    _checkInvite: function _checkInvite() {\n      var _this = this;\n\n      try {\n        // eslint-disable-next-line no-undef\n        $(window).on('branchDataSet', function () {\n\n          // eslint-disable-next-line ember-suave/no-direct-property-access\n          _this.get('branch').setInviteToLocalStorage();\n        });\n        var branchData = JSON.parse(window.sessionStorage.branch_session).data;\n        var inviteObj = JSON.parse(branchData).invite;\n        if (inviteObj) {\n          // eslint-disable-next-line ember-suave/no-direct-property-access\n          // this.get('branch').setInviteToLocalStorage();\n          this.set('invite.id', inviteObj.id);\n          this.set('invite.token', inviteObj.token);\n          this.transitionTo('invite');\n        } else {\n          this.set('shouldTransitionToSites', true);\n          this._super.apply(this, arguments);\n        }\n      } catch (error) {\n        this._super.apply(this, arguments);\n      }\n    },\n\n\n    // hooks\n\n    sessionAuthenticated: function sessionAuthenticated() {\n      this._super.apply(this, arguments);\n      this.refresh();\n    },\n    beforeModel: function beforeModel(transition) {\n      if (transition.queryParams['organisation-id']) {\n        this.set('currentOrganisation.id', transition.queryParams['organisation-id']);\n      }\n    },\n    model: function model() {\n      var organisationId = this.get('currentOrganisation.id');\n\n      return RSVP.hash({\n        currentUser: this.get('session.currentUser'),\n        currentEmployments: organisationId && this.get('session.isLoggedIn') ? this.get('store').query('employment', {}) : null\n      });\n    },\n    afterModel: function afterModel(model) {\n      var _this2 = this;\n\n      var organisationId = this.get('currentOrganisation.id');\n      model.currentEmployment = model.currentEmployments ? model.currentEmployments.findBy('organisation.id', organisationId) : null;\n\n      return new RSVP.Promise(function (resolve) {\n        model.currentUser.get('organisations').then(function (currentUsersOrganisations) {\n          model.currentUsersOrganisations = currentUsersOrganisations;\n          model.currentOrganisation = organisationId ? currentUsersOrganisations.findBy('id', organisationId) : null;\n          if (_this2.get('shouldTransitionToSites')) {\n            // transition only after currentOrganisation is set\n            _this2.transitionTo('sites', { queryParams: { query: '' } });\n            _this2.set('shouldTransitionToSites', false);\n          } else {\n            // eslint-disable-next-line ember-suave/no-direct-property-access\n            _this2._checkInvite();\n          }\n\n          resolve();\n        });\n      });\n    },\n    setupController: function setupController(controller) {\n      this._super.apply(this, arguments);\n      if (controller.get('shouldShowSwitchAccountModal')) {\n        controller.set('displaySwitchAccountModal', true);\n      }\n    },\n\n\n    actions: {\n      logout: function logout() {\n        window.localStorage.removeItem('invite');\n        window.localStorage.clear();\n        this.get('branch').clearInvite();\n        this.get('session').invalidate();\n        this.get('branch').clearInvite();\n      },\n      setCurrentOrganisation: function setCurrentOrganisation(organisationId) {\n        this.set('currentOrganisation.id', organisationId);\n        this.controller.send('closeSwitchAccountModal');\n        this.set('shouldTransitionToSites', true);\n        this.refresh();\n      },\n      resetTooltipEvents: function resetTooltipEvents() {\n        var _this3 = this;\n\n        this.get('resetTooltipEvents').reset().then(function () {\n          _this3.showSuccessFlash('Tooltips successfully reset');\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/base-routes/deleted-fittings-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('site.deleted-fittings.show');\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('fitting', model.fitting);\n    }\n  });\n});","define('clever-sparky-frontend/routes/base-routes/faulty-fittings-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('site.faults.show');\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('fitting', model.fitting);\n    }\n  });\n});","define('clever-sparky-frontend/routes/base-routes/groups-fittings-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('groups.fittings.show');\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('fitting', model.fitting);\n      controller.set('canEdit', false);\n      this.controllerFor('groups.fittings.show').set('canEdit', false);\n    },\n\n\n    actions: {\n      edit: function edit() {\n        this.controller.set('canEdit', true);\n        this.controllerFor('groups.fittings.show').set('canEdit', true);\n      },\n      cancel: function cancel() {\n        this.controller.set('canEdit', false);\n        this.controllerFor('groups.fittings.show').set('canEdit', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/base-routes/show', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend({\n    model: function model(params) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve) {\n        _this.get('store').findRecord('fitting', params.fitting_id, { reload: true }).then(function (fitting) {\n          RSVP.hash({\n            fitting: fitting,\n            group: fitting.get('group'),\n            latestTest: fitting.get('latestTest'),\n            newTest: _this.store.createRecord('ledtest'),\n            maintenances: fitting.get('maintenances')\n          }).then(function (model) {\n            resolve(model);\n          });\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/routes/base-routes/site-fittings-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('site.fittings.show');\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('fitting', model.fitting);\n      controller.set('canEdit', false);\n      this.controllerFor('site.fittings.show').set('canEdit', false);\n    },\n\n\n    actions: {\n      edit: function edit() {\n        this.controller.set('canEdit', true);\n        this.controllerFor('site.fittings.show').set('canEdit', true);\n      },\n      cancel: function cancel() {\n        this.controller.set('canEdit', false);\n        this.controllerFor('site.fittings.show').set('canEdit', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/base-routes/test-event-group-fittings-tab', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('test-event-group.fittings.show');\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('fitting', model.fitting);\n      controller.set('canEdit', false);\n      this.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n    },\n\n\n    actions: {\n      edit: function edit() {\n        this.controller.set('canEdit', true);\n        this.controllerFor('test-event-group.fittings.show').set('canEdit', true);\n      },\n      cancel: function cancel() {\n        this.controller.set('canEdit', false);\n        this.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/change-password', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, _showNavBar.default, {\n    afterModel: function afterModel() {\n      this.transitionTo('change-password.index');\n    },\n\n\n    actions: {\n      save: function save(user) {\n        var _this = this;\n\n        user.save().then(function () {\n          _this.transitionTo('change-password.success');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          user.clearPassword();\n          _this.controllerFor('change-password.index').set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/change-password/index', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend({\n    model: function model() {\n      return RSVP.hash({\n        user: this.modelFor('application').currentUser\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super.apply(this, arguments);\n      controller.set('user', model.user);\n    }\n  });\n});","define('clever-sparky-frontend/routes/change-password/success', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({});\n});","define('clever-sparky-frontend/routes/edit', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, {\n    session: inject.service('session'),\n\n    model: function model() {\n      return RSVP.hash({\n        wholesalers: this.store.findAll('wholesaler', { include: 'wholesalerAuthResource' }),\n        currentEmployment: this.modelFor('application').currentEmployment\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super.apply(this, arguments);\n      controller.set('wholesalers', model.wholesalers);\n      controller.set('currentEmployment', model.currentEmployment);\n    }\n  });\n});","define('clever-sparky-frontend/routes/edit/organisation', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error', 'ember-can'], function (exports, _ember, _handleError, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_handleError.default, _emberCan.CanMixin, {\n    // Services\n\n    wholesalerAuth: inject.service(),\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n\n      var _modelFor = this.modelFor('application'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('modify business-profile', currentEmployment)) {\n        this.replaceWith('sites');\n      }\n    },\n    model: function model() {\n      return RSVP.hash({\n        organisation: this.modelFor('application').currentOrganisation,\n        wholesalers: this.modelFor('edit').wholesalers\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super.apply(this, arguments);\n      controller.set('organisation', model.organisation);\n      controller.set('wholesalers', model.wholesalers);\n      controller.set('displayDeleteAccountModal', false);\n      controller.set('isQueryPending', false);\n    },\n\n\n    actions: {\n      save: function save(organisation) {\n        var _this = this;\n\n        organisation.save().then(function () {\n          _this.controller.set('isEditing', false);\n          _this.showSuccessFlash('Business Details successfully updated');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n          _this.currentModel.organisation.rollbackAttributes();\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      deleteAccount: function deleteAccount(organisation) {\n        var _this2 = this;\n\n        this.controller.set('isQueryPending', true);\n\n        organisation.destroyRecord().then(function () {\n          // setCurrentOrganisation is defined in the application route\n          _this2.send('setCurrentOrganisation', null);\n          _this2.showSuccessFlash('Account Deleted');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      authenticateWholesaler: function authenticateWholesaler(wholesaler, username, password) {\n        var credentials = {\n          username: username,\n          password: password\n        };\n        return this.get('wholesalerAuth').sendWholesalerAuthRequest(wholesaler, credentials);\n      },\n      openDeleteAccountModal: function openDeleteAccountModal() {\n        this.controller.set('displayDeleteAccountModal', true);\n      },\n      closeDeleteAccountModal: function closeDeleteAccountModal() {\n        this.controller.set('displayDeleteAccountModal', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/edit/profile', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, {\n    // Services\n\n    wholesalerAuth: inject.service(),\n\n    // Hooks\n\n    model: function model() {\n      return RSVP.hash({\n        user: this.modelFor('application').currentUser,\n        wholesalers: this.modelFor('edit').wholesalers\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super.apply(this, Array.prototype.slice.call(arguments).concat([model]));\n      controller.set('user', model.user);\n      controller.set('wholesalers', model.wholesalers);\n    },\n\n\n    actions: {\n      save: function save(user) {\n        var _this = this;\n\n        user.save().then(function () {\n          _this.controller.set('isEditing', false);\n          _this.showSuccessFlash('Account Updated');\n        }).catch(function (reason) {\n          user.rollbackAttributes();\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      deleteAccount: function deleteAccount(user) {\n        var _this2 = this;\n\n        this.controller.set('isQueryPending', true);\n\n        user.destroyRecord().then(function () {\n          _this2.get('session').invalidate();\n          _this2.showSuccessFlash('Account Deleted');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      authenticateWholesaler: function authenticateWholesaler(wholesaler, username, password) {\n        var credentials = {\n          username: username,\n          password: password\n        };\n        return this.get('wholesalerAuth').sendWholesalerAuthRequest(wholesaler, credentials);\n      },\n      openDeleteAccountModal: function openDeleteAccountModal() {\n        this.controller.set('displayDeleteAccountModal', true);\n      },\n      closeDeleteAccountModal: function closeDeleteAccountModal() {\n        this.controller.set('displayDeleteAccountModal', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/forgot-password', ['exports', 'ember', 'ember-simple-auth/mixins/unauthenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _unauthenticatedRouteMixin, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_unauthenticatedRouteMixin.default, _handleError.default, {\n    resetService: inject.service('request-password-reset'),\n\n    actions: {\n      requestPasswordReset: function requestPasswordReset(email) {\n        var _this = this;\n\n        this.get('resetService').requestPasswordReset(email).then(function () {\n          _this.transitionTo('forgot-password.success', {\n            queryParams: {\n              email: email\n            }\n          });\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controllerFor('forgot-password.index').set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/forgot-password/success', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    beforeModel: function beforeModel(transition) {\n      if (!transition.queryParams.email) {\n        this.transitionTo('forgot-password');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/groups', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, {\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentEmployment = _modelFor.currentEmployment;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        _this.get('store').findRecord('group', params.group_id, { reload: true }).then(function (group) {\n          RSVP.hash({\n            group: group,\n            currentUser: currentUser,\n            currentEmployment: currentEmployment,\n            site: group.get('site')\n          }).then(function (model) {\n            resolve(model);\n          });\n        }).catch(function (reason) {\n          reject(reason);\n        });\n      });\n    },\n    afterModel: function afterModel(model, transition) {\n      var _this2 = this;\n\n      return new RSVP.Promise(function (resolve) {\n        RSVP.hash({\n          sitesGroups: model.site.get('groups'),\n          testEvents: _this2.get('store').query('test-event', {\n            site: model.site.get('id')\n          })\n        }).then(function (hash) {\n          model.sitesGroups = hash.sitesGroups;\n          model.testEvents = hash.testEvents;\n          resolve();\n          if (transition.targetName === 'groups.index') {\n            _this2.transitionTo('groups.fittings');\n          }\n        });\n      });\n    },\n\n\n    actions: {\n      error: function error(reason) {\n        // called when an error occurs in model query\n        this.handleRailsError(reason);\n        this.replaceWith('sites');\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _handleError, _route, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_route.default, _handleError.default, _setupTourSequence.default, {\n    // Services\n\n    batchDeleteFittings: inject.service('batchDeleteFittings'),\n\n    batchMoveFittings: inject.service('batchMoveFittings'),\n\n    viewGroupTour: inject.service('tours/view-group'),\n\n    viewFittingTour: inject.service('tours/view-fitting'),\n\n    features: inject.service(),\n\n    batchDeleteOrderItems: inject.service(),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Route Attributes\n\n    queryParams: {\n      commissioned: {\n        refreshModel: true\n      }\n    },\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewGroupTooltipEvent: this.setupTourSequence('view_group_web', this.get('viewGroupTour')),\n          viewFittingTooltipEvent: this.setupTourSequence('view_fitting_web', this.get('viewFittingTour'))\n        });\n      }\n    },\n    model: function model(params) {\n      var _modelFor = this.modelFor('groups'),\n          site = _modelFor.site,\n          group = _modelFor.group,\n          user = _modelFor.user,\n          sitesGroups = _modelFor.sitesGroups;\n\n      var filter = {};\n      if (params.hasOwnProperty('commissioned')) {\n        filter.commissioned = params.commissioned;\n      }\n\n      return RSVP.hash({\n        group: group,\n        site: site,\n        user: user,\n        sitesGroups: sitesGroups,\n        fittings: this.infinityModel('fitting', {\n          group: group.id,\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.fittings',\n          filter: filter\n        }),\n        fitting: this.store.createRecord('fitting', {\n          group: group\n        }),\n        currentFilterState: this.get('isCommissioned')\n      });\n    },\n\n\n    actions: {\n      addFitting: function addFitting(fitting) {\n        var _this = this;\n\n        fitting.save().then(function () {\n          _this.controller.send('toggleAddFitting');\n          _this.showSuccessFlash('Fitting Added');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      confirmBatchDeleteFittings: function confirmBatchDeleteFittings(selectedFittings) {\n        var _this2 = this;\n\n        this.get('batchDeleteFittings').deleteBatch(selectedFittings).then(function () {\n          _this2.controller.send('closeBatchConfirmationModal');\n          _this2.showSuccessFlash('Fittings Deleted');\n          _this2.transitionTo('groups.fittings');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      confirmBatchMoveFittings: function confirmBatchMoveFittings(selectedFittings, groupId) {\n        var _this3 = this;\n\n        this.get('batchMoveFittings').moveBatch(selectedFittings, groupId).then(function () {\n          _this3.controller.send('closeBatchConfirmationModal');\n          _this3.showSuccessFlash('Fittings Moved');\n          // refresh the top most parent route\n          _this3.send('refreshRoute');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      showFittingDetails: function showFittingDetails(fitting) {\n        this.transitionTo('groups.fittings.show.details', fitting.id);\n      },\n      createOrderItem: function createOrderItem(fitting, partType) {\n        var _this4 = this;\n\n        var orderItem = this.store.createRecord('order-item', {\n          partType: partType,\n          fitting: fitting\n        });\n        orderItem.save().then(function () {\n          _this4.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this4.handleRailsError(reason);\n        });\n      },\n      deleteOrderItem: function deleteOrderItem(fitting, partType) {\n        var _this5 = this;\n\n        var batch = [{\n          partType: partType,\n          fitting: fitting\n        }];\n        this.get('batchDeleteOrderItems').deleteBatch(batch).then(function () {\n          _this5.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this5.handleRailsError(reason);\n        });\n      }\n    },\n\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        this.controller.set('commissioned', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/delete-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      computed = _ember.default.computed;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model() {\n      return RSVP.hash({\n        group: this.modelFor('groups').group\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('canDeleteGroup', computed.reads('model.group.canDelete'));\n      controller.set('group', model.group);\n      controller.set('site', model.group.get('site'));\n      controller.set('isQueryPending', false);\n    },\n\n\n    actions: {\n      deleteGroup: function deleteGroup(group) {\n        var _this = this;\n\n        this.controller.set('isQueryPending', true);\n\n        group.destroyRecord().then(function () {\n          _this.transitionTo('site', _this.controller.get('site.id'));\n          group.unloadRecord();\n          _this.showSuccessFlash('Group Deleted');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      },\n      returnToGroups: function returnToGroups(site) {\n        this.transitionTo('site', site.get('id'));\n      },\n      closeModal: function closeModal() {\n        this.transitionTo('site.groups');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/edit-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model() {\n      return RSVP.hash({\n        group: this.modelFor('groups').group\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('group', model.group);\n    },\n\n\n    actions: {\n      save: function save(group) {\n        var _this = this;\n\n        group.save().then(function () {\n          _this.transitionTo('groups.fittings');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/show', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _show, _handleError, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = _show.default.extend(_handleError.default, _setupTourSequence.default, {\n\n    // Services\n\n    viewFittingPanelTour: inject.service('tours/view-fitting-panel'),\n\n    features: inject.service(),\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewFittingPanelTooltipEvent: this.setupTourSequence('view_fitting_panel_web', this.get('viewFittingPanelTour'))\n        });\n      }\n    },\n\n\n    actions: {\n      returnToFittings: function returnToFittings() {\n        this.controller.set('showDeleteModal', false);\n        this.transitionTo('groups.fittings');\n      },\n      deleteFitting: function deleteFitting(fitting) {\n        var _this = this;\n\n        fitting.destroyRecord().then(function () {\n          fitting.unloadRecord();\n          _this.showSuccessFlash('Fitting Deleted');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n          _this.send('returnToFittings');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/show/details', ['exports', 'clever-sparky-frontend/routes/base-routes/groups-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _groupsFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _groupsFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('group', model.group);\n    },\n\n\n    actions: {\n      save: function save(fitting) {\n        var _this = this;\n\n        fitting.save().then(function () {\n          _this.controllerFor('groups.fittings.show').set('showSuccess', true);\n          _this.controllerFor('groups.fittings.show').set('canEdit', false);\n          _this.controller.set('canEdit', false);\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      commission: function commission(fitting) {\n        var _this2 = this;\n\n        fitting.save().then(function () {\n          _this2.showSuccessFlash('Fitting commissioned');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/show/maintenance', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      computed = _ember.default.computed;\n  exports.default = Route.extend({\n    model: function model() {\n      var _modelFor = this.modelFor('groups.fittings.show'),\n          fitting = _modelFor.fitting,\n          maintenances = _modelFor.maintenances;\n\n      return RSVP.hash({\n        fitting: fitting,\n        maintenances: maintenances,\n        newMaintenance: this.store.createRecord('maintenance')\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      this.controllerFor('groups.fittings.show').set('showEdit', false);\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n      }\n    },\n\n\n    actions: {\n      showSuccessFlashOnSave: function showSuccessFlashOnSave() {\n        this.controllerFor('groups.fittings.show').set('showSuccess', true);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/groups/fittings/show/test-and-status', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/groups-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _groupsFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _groupsFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('latestTest', model.latestTest);\n      controller.set('newTest', model.newTest);\n      controller.set('canEdit', false);\n      this.controllerFor('groups.fittings.show').set('canEdit', false);\n      if (!model.latestTest) {\n        this.controllerFor('groups.fittings.show').set('showEdit', false);\n      }\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n      }\n    },\n\n\n    actions: {\n      save: function save(fitting, test) {\n        var _this = this;\n\n        if (test.get('isNew')) {\n          test.set('fitting', fitting);\n        }\n        test.save().then(function () {\n          _this.controllerFor('groups.fittings.show').set('showSuccess', true);\n          _this.controllerFor('groups.fittings.show').set('canEdit', false);\n          _this.controller.set('canEdit', false);\n          _this.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n          fitting.save();\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      deleteTest: function deleteTest(test) {\n        var _this2 = this;\n\n        test.destroyRecord().then(function () {\n          _this2.controllerFor('groups.fittings.show').set('canEdit', false);\n          _this2.controller.set('canEdit', false);\n          _this2.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/index', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    redirect: function redirect() {\n      this.transitionTo('login');\n    }\n  });\n});","define('clever-sparky-frontend/routes/invite', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject,\n      $ = _ember.default.$;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, {\n    inviteAccept: inject.service('inviteAccept'),\n\n    inviteAccepttransfer: inject.service('inviteAccepttransfer'),\n\n    branch: inject.service('branch'),\n\n    previousTransition: null,\n    sitetransfer: false,\n    sitename: null,\n\n    tmpinviteid: null,\n\n    init: function init() {\n      var _this = this;\n\n      this._super.apply(this, arguments);\n      // this.get('branch').clearInvite();\n      $(window).on('branchDataSet', function () {\n        _this.get('branch').setInviteToLocalStorage();\n      });\n    },\n\n\n    // eslint-disable-next-line no-unused-vars\n    beforeModel: function beforeModel(transition) {\n      this._super.apply(this, arguments);\n\n      this.set('sitename', this.get('branch').getInvite().get('sitename'));\n\n      // let fromuser = this.get('branch').getInvite().get('sitetransfertouser');\n      // let token = this.get('branch').getInvite().get('token');\n      // // if (!this.get('branch').getInvite().get('token') && fromuser == null) {\n      // //   transition.abort();\n      // //   this.set('previousTransition', transition);\n      // // }\n    },\n    model: function model() {\n      var inviteObj = this.get('branch').getInvite();\n      this.set('tmpinviteid', inviteObj.get('id'));\n      var invitedb = this.store.peekRecord('invite', inviteObj.get('id'));\n      try {\n        if (inviteObj) {\n          if (!invitedb) {\n            if (inviteObj.get('sitetransfertouser')) {\n              this.set('sitetransfer', true);\n              return RSVP.hash({\n                invite: this.store.query('invite', inviteObj.get('id')),\n                currentUsersAdminOrganisations: this.store.query('organisation', {\n                  filter: {\n                    role: 'owner,admin'\n                  }\n                })\n              });\n            } else {\n              this.set('sitetransfer', false);\n              return RSVP.hash({\n                invite: this.store.findRecord('invite', inviteObj.get('id'))\n              });\n            }\n          } else {\n            // eslint-disable-next-line no-empty\n            if (invitedb.status === 'accepted' && invitedb.id === inviteObj.get('id')) {} else {\n              if (inviteObj.get('sitetransfertouser')) {\n\n                this.set('sitetransfer', true);\n                return RSVP.hash({\n\n                  invite: this.store.query('invite', inviteObj.get('id')),\n                  currentUsersAdminOrganisations: this.store.query('organisation', {\n                    filter: {\n                      role: 'owner,admin'\n                    }\n                  })\n                });\n              } else {\n                this.set('sitetransfer', false);\n                return RSVP.hash({\n\n                  invite: this.store.findRecord('invite', inviteObj.get('id'))\n\n                });\n              }\n            }\n          }\n        }\n        // eslint-disable-next-line no-empty\n      } catch (err) {}\n    },\n    afterModel: function afterModel(model) {\n      var _this2 = this;\n\n      return new RSVP.Promise(function (resolve) {\n\n        if (_this2.get('sitetransfer')) {\n          model.sitename = _this2.get('sitename');\n          model.id = _this2.get('tmpinviteid');\n          model.data = model.invite.content[0]._data;\n          resolve();\n        } else {\n          model.invite.get('organisation').then(function (organisation) {\n\n            model.organisation = organisation;\n            resolve();\n          });\n        }\n      });\n    },\n\n\n    actions: {\n      error: function error() {\n        // called when an error occurs in model query\n        // this.handleRailsError([{ detail: 'Your invite has been cancelled. Contact your admin to arrange a new invite.' }]);\n        //  this.get('branch').clearInvite();\n        this.replaceWith('sites');\n      },\n      accept: function accept() {\n        var _this3 = this;\n\n        this.controller.set('isQueryPending', true);\n        var inviteObj = this.get('branch').getInvite();\n        var _currentModel = this.currentModel,\n            invite = _currentModel.invite,\n            organisation = _currentModel.organisation;\n\n\n        this.store.findRecord('invite', invite.id).then(function (invite) {\n          invite.status = 'accepted';\n        });\n\n        this.get('inviteAccept').accept(invite, inviteObj.get('token')).then(function () {\n          // setCurrentOrganisation is defined in the application route\n\n          _this3.get('branch').clearInvite();\n          _this3.send('setCurrentOrganisation', organisation.get('id'));\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      acceptTransfer: function acceptTransfer(site, newOwner) {\n        var _this4 = this;\n\n        var newOwnerId = newOwner ? newOwner : this.currentModel.currentUser.get('id');\n\n        this.controller.set('isQueryPending', true);\n\n        var invite = this.currentModel.invite;\n\n        var id = this.get('tmpinviteid');\n\n        this.get('inviteAccepttransfer').accepttransfer(invite, id, newOwnerId).then(function () {\n          // setCurrentOrganisation is defined in the application route\n          _this4.get('branch').clearInvite();\n          _this4.send('setCurrentOrganisation', newOwner);\n          _this4.skip();\n        }).catch(function () {}).finally(function () {\n          _this4.controller.set('isQueryPending', false);\n        });\n      },\n      skip: function skip() {\n        this.get('branch').clearInvite();\n        this.transitionTo('sites');\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/login', ['exports', 'ember', 'ember-simple-auth/mixins/unauthenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error', 'ember-local-storage'], function (exports, _ember, _unauthenticatedRouteMixin, _handleError, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_unauthenticatedRouteMixin.default, _handleError.default, {\n    invite: (0, _emberLocalStorage.storageFor)('invite'),\n    session: inject.service(),\n    branch: inject.service('branch'),\n    afterModel: function afterModel() {\n      this.get('branch').justBranchfirst();\n    },\n\n\n    queryParams: {\n      '_branch_match_id': {\n        refreshModel: true\n      }\n    },\n\n    actions: {\n      authenticate: function authenticate(identification, password) {\n        var _this = this;\n\n        this.get('session').authenticate('authenticator:cleversparky', identification, password).then(function () {\n          _this.controllerFor('application').set('hasJustLoggedIn', true);\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/logout', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'ember-local-storage'], function (exports, _ember, _authenticatedRouteMixin, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, {\n    session: inject.service('session'),\n    sitetemp: (0, _emberLocalStorage.storageFor)('site'),\n    orgtemp: (0, _emberLocalStorage.storageFor)('current-organisation'),\n    beforeModel: function beforeModel() {\n      this.get('session').deleteSessionAndInvalidate();\n      this.set('sitetemp.site', null);\n      this.set('orgtemp.id', null);\n    }\n  });\n});","define('clever-sparky-frontend/routes/new-organisation', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-cli-uuid'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _emberCliUuid) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, _showNavBar.default, {\n    model: function model() {\n      return RSVP.hash({\n        user: this.modelFor('application').currentUser,\n        organisation: this.store.createRecord('organisation', {\n          id: (0, _emberCliUuid.uuid)()\n        })\n      });\n    },\n    afterModel: function afterModel(model) {\n      model.organisation.user = model.user;\n    },\n    setupController: function setupController(controller, model) {\n      this._super.apply(this, arguments);\n      controller.set('user', model.user);\n      controller.set('organisation', model.organisation);\n    },\n\n\n    actions: {\n      save: function save(organisation) {\n        var _this = this;\n\n        organisation.save().then(function (organisation) {\n          _this.currentModel.user.get('organisations').pushObject(organisation);\n          _this.send('setCurrentOrganisation', organisation.get('id'));\n          _this.showSuccessFlash('Business Created');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/onboarding', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, {\n\n    // services\n\n    features: inject.service(),\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (!this.get('features').isEnabled('guidedTour')) {\n        this.transitionTo('sites');\n      }\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // Don't show switch account modal when on the onboarding screen\n      this.controllerFor('application').set('displaySwitchAccountModal', false);\n    },\n\n\n    actions: {\n      goToSites: function goToSites() {\n        // reset the slides to the first one\n        this.controller.set('currentSlide', 0);\n        this.transitionTo('sites');\n        if (this.controllerFor('application').get('hasJustSignedUp')) {\n          this.controllerFor('application').set('hasJustSignedUp', false);\n        }\n        if (this.controllerFor('application').get('shouldShowSwitchAccountModal')) {\n          this.controllerFor('application').set('displaySwitchAccountModal', true);\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/order-item-group', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, {\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentEmployment = _modelFor.currentEmployment;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        _this.get('store').findRecord('group', params.group_id, { reload: true }).then(function (group) {\n          RSVP.hash({\n            group: group,\n            currentUser: currentUser,\n            currentEmployment: currentEmployment,\n            site: group.get('site')\n          }).then(function (model) {\n            resolve(model);\n          });\n        }).catch(function (reason) {\n          reject(reason);\n        });\n      });\n    },\n    afterModel: function afterModel(model, transition) {\n      if (transition.targetName === 'order-item-group.index') {\n        this.transitionTo('order-item-group.order-items');\n      }\n    },\n\n\n    actions: {\n      error: function error(reason) {\n        // called when an error occurs in model query\n        this.handleRailsError(reason);\n        this.replaceWith('sites');\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/order-item-group/order-items', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _route, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, _route.default, {\n\n    // Services\n    batchDeleteOrderItems: inject.service('batchDeleteOrderItems'),\n\n    cartCheckout: inject.service(),\n\n    // Attributes\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    model: function model() {\n      var _modelFor = this.modelFor('order-item-group'),\n          site = _modelFor.site,\n          group = _modelFor.group;\n\n      var _modelFor2 = this.modelFor('application'),\n          currentUser = _modelFor2.currentUser,\n          currentOrganisation = _modelFor2.currentOrganisation,\n          currentEmployment = _modelFor2.currentEmployment;\n\n      return RSVP.hash({\n        site: site,\n        currentUser: currentUser,\n        currentOrganisation: currentOrganisation,\n        currentEmployment: currentEmployment,\n        group: group,\n        order: site.get('currentOrder'),\n        orderItems: this.infinityModel('order-item', {\n          order: site.get('currentOrder.id'),\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.orderItems',\n          filter: {\n            'group-id': group.get('id')\n          }\n        })\n      });\n    },\n    afterModel: function afterModel(model) {\n      if (!model.orderItems.get('length')) {\n        this.transitionTo('site.shopping-cart', model.site.get('id'));\n      }\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('isDeletingItems', false);\n      }\n    },\n\n\n    actions: {\n      confirmBatchDeleteItems: function confirmBatchDeleteItems(selectedItems) {\n        var _this = this;\n\n        var batch = selectedItems.map(function (orderItem) {\n          return {\n            partType: orderItem.get('partType'),\n            fitting: orderItem.get('fitting')\n          };\n        });\n\n        this.get('batchDeleteOrderItems').deleteBatch(batch).then(function () {\n          _this.controller.send('closeBatchDeleteConfirmationModal');\n          _this.showSuccessFlash('Order Items Deleted');\n          _this.currentModel.site.reload();\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      confirmCheckout: function confirmCheckout(selectedGroups) {\n        var _this2 = this;\n\n        this.get('cartCheckout').checkout(this.currentModel.order, selectedGroups).then(function (result) {\n          window.open(result.links.cart, '_blank');\n          _this2.controller.send('closeCheckoutConfirmationModal');\n          _this2.transitionTo('site.shopping-cart', _this2.currentModel.site.id);\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/reset-password', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_handleError.default, {\n    resetPassword: inject.service('resetPassword'),\n\n    actions: {\n      resetPassword: function resetPassword(token, password, passwordConfirmation) {\n        var _this = this;\n\n        this.get('resetPassword').resetPassword(token, password, passwordConfirmation).then(function () {\n          _this.transitionTo('reset-password.success');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controllerFor('reset-password.index').set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/reset-password/success', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      ENV = _ember.default.ENV;\n  exports.default = Route.extend({\n    setupController: function setupController(controller) {\n      controller.set('loginRedirectUrl', ENV.branchLoginRedirectUrl);\n    }\n  });\n});","define('clever-sparky-frontend/routes/s3', ['../util/s3-signed-url'], function (signedUrl) {\n  'use strict';\n\n  function _asyncToGenerator(fn) {\n    return function () {\n      var gen = fn.apply(this, arguments);\n      return new Promise(function (resolve, reject) {\n        function step(key, arg) {\n          try {\n            var info = gen[key](arg);\n            var value = info.value;\n          } catch (error) {\n            reject(error);\n            return;\n          }\n\n          if (info.done) {\n            resolve(value);\n          } else {\n            return Promise.resolve(value).then(function (value) {\n              step(\"next\", value);\n            }, function (err) {\n              step(\"throw\", err);\n            });\n          }\n        }\n\n        return step(\"next\");\n      });\n    };\n  }\n\n  router.post('/signed-request', function () {\n    var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee(ctx, next) {\n      var body, urlData;\n      return regeneratorRuntime.wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              body = ctx.request.body;\n              _context.next = 3;\n              return signedUrl.getUrl(body.file, body.type);\n\n            case 3:\n              urlData = _context.sent;\n\n\n              ctx.body = urlData;\n\n            case 5:\n            case 'end':\n              return _context.stop();\n          }\n        }\n      }, _callee, undefined);\n    }));\n\n    return function (_x, _x2) {\n      return _ref.apply(this, arguments);\n    };\n  }());\n});","define('clever-sparky-frontend/routes/signup', ['exports', 'ember', 'ember-simple-auth/mixins/unauthenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error', 'ember-local-storage'], function (exports, _ember, _unauthenticatedRouteMixin, _handleError, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_unauthenticatedRouteMixin.default, _handleError.default, {\n    session: inject.service(),\n\n    currentOrganisation: (0, _emberLocalStorage.storageFor)('current-organisation'),\n\n    queryParams: {\n      token: {\n        refreshModel: true\n      }\n    },\n\n    afterModel: function afterModel() {\n      this.transitionTo('signup.terms');\n    },\n\n\n    actions: {\n      submit: function submit(user) {\n        var _this = this;\n\n        user.save().then(function (user) {\n          var identification = user.get('email');\n          var password = user.get('password');\n\n          user.clearPassword();\n\n          _this.get('session').authenticate('authenticator:cleversparky', identification, password).then(function () {\n            _this.controllerFor('application').set('hasJustSignedUp', true);\n          }).catch(function (reason) {\n            _this.set('errorMessage', reason.error || reason);\n          }).finally(function () {\n            _this.controllerFor('signup.user').set('isQueryPending', false);\n          });\n\n          if (user.get('organisations').toArray()[0]) {\n            _this.set('currentOrganisation.id', user.get('organisations').toArray()[0].get('id'));\n          }\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n          _this.controllerFor('signup.user').set('isQueryPending', false);\n        });\n      },\n      next: function next() {\n        this.transitionTo('signup.user');\n      },\n      back: function back() {\n        var currentRoute = this.controllerFor('application').currentRouteName;\n\n        if (currentRoute === 'signup.terms') {\n          this.transitionTo('login');\n        } else if (currentRoute === 'signup.user') {\n          this.transitionTo('signup.terms');\n        }\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/signup/terms', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route;\n  exports.default = Route.extend({\n    model: function model() {\n      return this.modelFor('signup');\n    },\n    afterModel: function afterModel() {\n      this.controllerFor('signup').set('isTermsRoute', true);\n    },\n    deactivate: function deactivate() {\n      this.controllerFor('signup').set('isTermsRoute', false);\n    },\n\n\n    actions: {\n      accept: function accept() {\n        this.transitionTo('signup.user');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/signup/user', ['exports', 'ember', 'clever-sparky-frontend/mixins/reset-scroll-position', 'ember-cli-uuid'], function (exports, _ember, _resetScrollPosition, _emberCliUuid) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_resetScrollPosition.default, {\n    model: function model() {\n      return RSVP.hash({\n        user: this.store.createRecord('user'),\n        organisation: this.store.createRecord('organisation', {\n          id: (0, _emberCliUuid.uuid)()\n        })\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      var signupToken = this.paramsFor('signup').token;\n\n      this.controllerFor('signup.user').set('token', signupToken);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site-request', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, _emberCan.CanMixin, {\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n\n      var _modelFor = this.modelFor('application'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('view user-management', currentEmployment)) {\n        this.replaceWith('sites');\n      }\n    },\n    model: function model(params) {\n      return RSVP.hash({\n        siteRequest: this.get('store').findRecord('access-request', params.access_request_id)\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('siteRequest', model.siteRequest);\n    },\n\n\n    actions: {\n      approve: function approve() {\n        var _this = this;\n\n        this.currentModel.siteRequest.approve().then(function () {\n          _this.showSuccessFlash('Site Access Granted');\n          _this.transitionTo('site-requests');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      error: function error() {\n        // called when an error occurs in model query\n        this.handleRailsError([{ detail: 'Access request has already been actioned' }]);\n        this.replaceWith('site-requests');\n      },\n      decline: function decline() {\n        var _this2 = this;\n\n        this.currentModel.siteRequest.destroyRecord().then(function () {\n          _this2.showSuccessFlash('Site Access Request Declined');\n          _this2.transitionTo('site-requests');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site-requests', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'ember-local-storage', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _route, _emberLocalStorage, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _showNavBar.default, _handleError.default, _emberCan.CanMixin, {\n\n    currentOrganisation: (0, _emberLocalStorage.storageFor)('current-organisation'),\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n\n      var _modelFor = this.modelFor('application'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('view user-management', currentEmployment)) {\n        this.replaceWith('sites');\n      }\n    },\n    model: function model() {\n      var _modelFor2 = this.modelFor('application'),\n          currentOrganisation = _modelFor2.currentOrganisation;\n\n      var currentOrganisationId = currentOrganisation ? currentOrganisation.get('id') : null;\n\n      return RSVP.hash({\n        siteRequests: this.infinityModel('access-request', {\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.siteRequests',\n          currentOrganisationId: currentOrganisationId\n        })\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('siteRequests', model.siteRequests);\n      controller.set('currentUser', model.user);\n      controller.set('isQueryPending', false);\n    },\n\n\n    actions: {\n      approve: function approve(accessRequest) {\n        var _this = this;\n\n        accessRequest.approve().then(function () {\n          _this.showSuccessFlash('Site Access Request Approved');\n          _this.refresh();\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      decline: function decline(accessRequest) {\n        var _this2 = this;\n\n        accessRequest.destroyRecord().then(function () {\n          _this2.showSuccessFlash('Site Access Request Declined');\n          _this2.refresh();\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, {\n    holdvaribles: inject.service('holdvaribles'),\n    model: function model(params) {\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentEmployment = _modelFor.currentEmployment;\n\n      var testevents = this.get('store').query('test-event', {\n        site: params.site_id\n      });\n      this.get('holdvaribles').setupAllTestEvents(testevents);\n      return RSVP.hash({\n        currentUser: currentUser,\n        currentEmployment: currentEmployment,\n        site: this.get('store').findRecord('site', params.site_id, { reload: true })\n      });\n    },\n    afterModel: function afterModel(model, transition) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve) {\n\n        RSVP.hash({\n          sitesGroups: model.site.get('groups'),\n          testEvents: _this.get('store').query('test-event', {\n            site: model.site.get('id')\n          })\n        }).then(function (hash) {\n          model.sitesGroups = hash.sitesGroups;\n          model.testEvents = hash.testEvents;\n\n          resolve();\n          if (transition.targetName === 'site.index') {\n            _this.transitionTo('site.fittings');\n          }\n        });\n      });\n    },\n\n\n    actions: {\n      error: function error(reason) {\n        // called when an error occurs in model query\n        this.handleRailsError(reason);\n        this.replaceWith('sites');\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/deleted-fittings', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'ember-infinity/mixins/route', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _route, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _emberCan.CanMixin, {\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n    pageParam: 'page[number]', // instead of 'page'\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    beforeModel: function beforeModel() {\n      var _modelFor = this.modelFor('site'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('view deleted-fittings', currentEmployment)) {\n        this.replaceWith('site.groups');\n      }\n    },\n    model: function model() {\n      var _modelFor2 = this.modelFor('site'),\n          site = _modelFor2.site;\n\n      return RSVP.hash({\n        site: site,\n        deletedFittings: this.infinityModel('fitting', {\n          site: site.id,\n          type: 'deleted-fittings',\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.deletedFittings'\n        })\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('deletedFittings', model.deletedFittings);\n    },\n\n\n    actions: {\n      showFittingDetails: function showFittingDetails(fitting) {\n        this.transitionTo('site.deleted-fittings.show.details', fitting.id);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/deleted-fittings/show', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/show', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _show, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var inject = _ember.default.inject;\n  exports.default = _show.default.extend(_handleError.default, {\n\n    reinstateFitting: inject.service('reinstateFitting'),\n\n    actions: {\n      returnToFittings: function returnToFittings() {\n        this.controller.set('displayReinstateModal', false);\n        this.transitionTo('site.deleted-fittings');\n      },\n      reinstateFitting: function reinstateFitting(fitting) {\n        var _this = this;\n\n        this.get('reinstateFitting').reinstate(fitting).then(function () {\n          _this.modelFor('site.deleted-fittings').deletedFittings.update();\n          _this.showSuccessFlash('Fitting Reinstated');\n          _this.send('returnToFittings');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/deleted-fittings/show/details', ['exports', 'clever-sparky-frontend/routes/base-routes/deleted-fittings-tab'], function (exports, _deletedFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _deletedFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('group', model.group);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/deleted-fittings/show/maintenance', ['exports', 'clever-sparky-frontend/routes/base-routes/deleted-fittings-tab'], function (exports, _deletedFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _deletedFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseFaultyFittingsTabRoute\n      controller.set('maintenances', model.maintenances);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/deleted-fittings/show/test-and-status', ['exports', 'clever-sparky-frontend/routes/base-routes/deleted-fittings-tab'], function (exports, _deletedFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _deletedFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseFaultyFittingsTabRoute\n      controller.set('latestTest', model.latestTest);\n      controller.set('newTest', model.newTest);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/details', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model() {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentOrganisation = _modelFor.currentOrganisation,\n          currentEmployment = _modelFor.currentEmployment;\n\n      var _modelFor2 = this.modelFor('site'),\n          site = _modelFor2.site;\n\n      return new RSVP.Promise(function (resolve) {\n        RSVP.hash({\n          site: site,\n          currentUser: currentUser,\n          currentOrganisation: currentOrganisation,\n          currentEmployment: currentEmployment,\n          currentUsersAdminOrganisations: _this.store.query('organisation', {\n            filter: {\n              role: 'owner,admin'\n            }\n          })\n        }).then(function (model) {\n          resolve(model);\n        });\n      });\n    },\n    deactivate: function deactivate() {\n      this.controller.set('canEdit', false);\n    },\n\n\n    actions: {\n      transferSite: function transferSite(site, newOwner) {\n        var _this2 = this;\n\n        var type = newOwner ? 'organisations' : 'users';\n        var newOwnerId = newOwner ? newOwner : this.currentModel.currentUser.get('id');\n\n        site.transferOwnership({\n          data: { type: type, id: newOwnerId }\n        }).then(function () {\n          _this2.controller.send('closeTransferSiteModal');\n          _this2.showSuccessFlash('Site Transferred');\n          _this2.transitionTo('sites');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        });\n      },\n      transferSiteOwner: function transferSiteOwner(site, newOwner, emailaddress) {\n        var _this3 = this;\n\n        var type = newOwner ? 'organisations' : 'users';\n        var newOwnerId = newOwner ? newOwner : this.currentModel.currentUser.get('id');\n\n        site.transferOwnership({\n          data: { type: type, id: newOwnerId, newowner: emailaddress }\n        }).then(function () {\n          _this3.controller.send('closeTransferSiteModal');\n          _this3.showSuccessFlash('Site Transfer Email Sent');\n          // this.transitionTo('sites');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/faults', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _route, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _handleError.default, {\n    // Services\n\n    batchDeleteOrderItems: inject.service(),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    model: function model() {\n      var _modelFor = this.modelFor('site'),\n          site = _modelFor.site;\n\n      return RSVP.hash({\n        site: site,\n        faults: this.infinityModel('fitting', {\n          site: site.id,\n          type: 'faulty-fittings',\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.faults'\n        })\n      });\n    },\n\n\n    actions: {\n      showFittingDetails: function showFittingDetails(fitting) {\n        this.transitionTo('site.faults.show.details', fitting.id);\n      },\n      createOrderItem: function createOrderItem(fitting, partType) {\n        var _this = this;\n\n        var orderItem = this.store.createRecord('order-item', {\n          partType: partType,\n          fitting: fitting\n        });\n        orderItem.save().then(function () {\n          _this.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        });\n      },\n      deleteOrderItem: function deleteOrderItem(fitting, partType) {\n        var _this2 = this;\n\n        var batch = [{\n          partType: partType,\n          fitting: fitting\n        }];\n        this.get('batchDeleteOrderItems').deleteBatch(batch).then(function () {\n          _this2.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        });\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/faults/show', ['exports', 'clever-sparky-frontend/routes/base-routes/show'], function (exports, _show) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _show.default.extend({});\n});","define('clever-sparky-frontend/routes/site/faults/show/details', ['exports', 'clever-sparky-frontend/routes/base-routes/faulty-fittings-tab'], function (exports, _faultyFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _faultyFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('group', model.group);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/faults/show/maintenance', ['exports', 'clever-sparky-frontend/routes/base-routes/faulty-fittings-tab'], function (exports, _faultyFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _faultyFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseFaultyFittingsTabRoute\n      controller.set('maintenances', model.maintenances);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/faults/show/test-and-status', ['exports', 'clever-sparky-frontend/routes/base-routes/faulty-fittings-tab'], function (exports, _faultyFittingsTab) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _faultyFittingsTab.default.extend({\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseFaultyFittingsTabRoute\n      controller.set('latestTest', model.latestTest);\n      controller.set('newTest', model.newTest);\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/fittings', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/setup-tour-sequence', 'ember-local-storage'], function (exports, _ember, _handleError, _route, _setupTourSequence, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_route.default, _handleError.default, _setupTourSequence.default, {\n    // Services\n    holdvaribles: inject.service('holdvaribles'),\n    batchDeleteFittings: inject.service('batchDeleteFittings'),\n    // localstorage\n    sitetemp: (0, _emberLocalStorage.storageFor)('site'),\n    batchMoveFittings: inject.service('batchMoveFittings'),\n\n    viewGroupTour: inject.service('tours/view-group'),\n\n    viewFittingTour: inject.service('tours/view-fitting'),\n\n    features: inject.service(),\n\n    batchDeleteOrderItems: inject.service(),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Route Attributes\n\n    queryParams: {\n      commissioned: {\n        refreshModel: true\n      }\n    },\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewGroupTooltipEvent: this.setupTourSequence('view_group_web', this.get('viewGroupTour')),\n          viewFittingTooltipEvent: this.setupTourSequence('view_fitting_web', this.get('viewFittingTour'))\n        });\n      }\n    },\n    model: function model(params) {\n\n      this.get('holdvaribles').setupallfittingpagebool(true);\n\n      var _modelFor = this.modelFor('site'),\n          site = _modelFor.site,\n          group = _modelFor.group;\n\n      this.get('holdvaribles').setupCurrentSite(site);\n      this.set('sitetemp.site', site);\n\n      var allfittingsb = 'allfittings';\n      var siteid = site.id;\n\n      var filter = {};\n      if (params.hasOwnProperty('commissioned')) {\n        filter.commissioned = params.commissioned;\n      }\n      return RSVP.hash({\n\n        fittings: this.infinityModel('fitting', {\n          allfittingsb: allfittingsb,\n          perPage: 10,\n          siteid: siteid,\n          startingPage: 1,\n          filter: filter,\n          modelPath: 'controller.model.fittings'\n        }),\n        currentFilterState: false,\n        fitting: this.store.createRecord('fitting', {\n          group: group\n        })\n      });\n    },\n    afterModel: function afterModel(model) {\n\n      return new RSVP.Promise(function (resolve) {\n\n        model.data = model.fittings.links.size;\n        resolve();\n      });\n    },\n\n\n    actions: {\n      addFitting: function addFitting(fitting) {\n        var _this = this;\n\n        fitting.save('hllo').then(function () {\n          _this.controller.send('toggleAddFitting');\n          _this.showSuccessFlash('Fitting Added');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      confirmBatchDeleteFittings: function confirmBatchDeleteFittings(selectedFittings) {\n        var _this2 = this;\n\n        this.get('batchDeleteFittings').deleteBatch(selectedFittings).then(function () {\n          _this2.controller.send('closeBatchConfirmationModal');\n          _this2.showSuccessFlash('Fittings Deleted');\n          _this2.transitionTo('groups.fittings');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      confirmBatchMoveFittings: function confirmBatchMoveFittings(selectedFittings, groupId) {\n        var _this3 = this;\n\n        this.get('batchMoveFittings').moveBatch(selectedFittings, groupId).then(function () {\n          _this3.controller.send('closeBatchConfirmationModal');\n          _this3.showSuccessFlash('Fittings Moved');\n          // refresh the top most parent route\n          _this3.send('refreshRoute');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      showFittingDetails: function showFittingDetails(fitting) {\n        this.transitionTo('site.fittings.show.details', fitting.id);\n      },\n      createOrderItem: function createOrderItem(fitting, partType) {\n        var _this4 = this;\n\n        var orderItem = this.store.createRecord('order-item', {\n          partType: partType,\n          fitting: fitting\n        });\n        orderItem.save().then(function () {\n          _this4.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this4.handleRailsError(reason);\n        });\n      },\n      deleteOrderItem: function deleteOrderItem(fitting, partType) {\n        var _this5 = this;\n\n        var batch = [{\n          partType: partType,\n          fitting: fitting\n        }];\n        this.get('batchDeleteOrderItems').deleteBatch(batch).then(function () {\n          _this5.currentModel.site.reload();\n        }).catch(function (reason) {\n          _this5.handleRailsError(reason);\n        });\n      }\n    },\n\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        this.controller.set('commissioned', false);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/delete-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      computed = _ember.default.computed;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model() {\n      return RSVP.hash({\n        group: this.modelFor('groups').group\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('canDeleteGroup', computed.reads('model.group.canDelete'));\n      controller.set('group', model.group);\n      controller.set('site', model.group.get('site'));\n      controller.set('isQueryPending', false);\n    },\n\n\n    actions: {\n      deleteGroup: function deleteGroup(group) {\n        var _this = this;\n\n        this.controller.set('isQueryPending', true);\n\n        group.destroyRecord().then(function () {\n          _this.transitionTo('site', _this.controller.get('site.id'));\n          group.unloadRecord();\n          _this.showSuccessFlash('Group Deleted');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.set('isQueryPending', false);\n        });\n      },\n      returnToGroups: function returnToGroups(site) {\n        this.transitionTo('site', site.get('id'));\n      },\n      closeModal: function closeModal() {\n        this.transitionTo('site.groups');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/edit-group', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model() {\n      return RSVP.hash({\n        group: this.modelFor('groups').group\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      controller.set('group', model.group);\n    },\n\n\n    actions: {\n      save: function save(group) {\n        var _this = this;\n\n        group.save().then(function () {\n          _this.transitionTo('groups.fittings');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/show', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _show, _handleError, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = _show.default.extend(_handleError.default, _setupTourSequence.default, {\n\n    // Services\n\n    viewFittingPanelTour: inject.service('tours/view-fitting-panel'),\n\n    features: inject.service(),\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewFittingPanelTooltipEvent: this.setupTourSequence('view_fitting_panel_web', this.get('viewFittingPanelTour'))\n        });\n      }\n    },\n\n\n    actions: {\n      returnToFittings: function returnToFittings() {\n        this.controller.set('showDeleteModal', false);\n        this.transitionTo('site.fittings');\n      },\n      deleteFitting: function deleteFitting(fitting) {\n        var _this = this;\n\n        fitting.destroyRecord().then(function () {\n          fitting.unloadRecord();\n          _this.showSuccessFlash('Fitting Deleted');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n          _this.send('returnToFittings');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/show/details', ['exports', 'clever-sparky-frontend/routes/base-routes/site-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _siteFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _siteFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('site', model.site);\n    },\n\n\n    actions: {\n      save: function save(fitting) {\n        var _this = this;\n\n        fitting.save().then(function () {\n          _this.controllerFor('site.fittings.show').set('showSuccess', true);\n          _this.controllerFor('site.fittings.show').set('canEdit', false);\n          _this.controller.set('canEdit', false);\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      commission: function commission(fitting) {\n        var _this2 = this;\n\n        fitting.save().then(function () {\n          _this2.showSuccessFlash('Fitting commissioned');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/show/maintenance', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      computed = _ember.default.computed;\n  exports.default = Route.extend({\n    model: function model() {\n      var _modelFor = this.modelFor('site.fittings.show'),\n          fitting = _modelFor.fitting,\n          maintenances = _modelFor.maintenances;\n\n      return RSVP.hash({\n        fitting: fitting,\n        maintenances: maintenances,\n        newMaintenance: this.store.createRecord('maintenance')\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      this.controllerFor('site.fittings.show').set('showEdit', false);\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('site.fittings.show').set('showEdit', computed.not('canEdit'));\n      }\n    },\n\n\n    actions: {\n      showSuccessFlashOnSave: function showSuccessFlashOnSave() {\n        this.controllerFor('site.fittings.show').set('showSuccess', true);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/fittings/show/test-and-status', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/site-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _siteFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _siteFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('latestTest', model.latestTest);\n      controller.set('newTest', model.newTest);\n      controller.set('canEdit', false);\n      this.controllerFor('groups.fittings.show').set('canEdit', false);\n      if (!model.latestTest) {\n        this.controllerFor('groups.fittings.show').set('showEdit', false);\n      }\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n      }\n    },\n\n\n    actions: {\n      save: function save(fitting, test) {\n        var _this = this;\n\n        if (test.get('isNew')) {\n          test.set('fitting', fitting);\n        }\n        test.save().then(function () {\n          _this.controllerFor('groups.fittings.show').set('showSuccess', true);\n          _this.controllerFor('groups.fittings.show').set('canEdit', false);\n          _this.controller.set('canEdit', false);\n          _this.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n          fitting.save();\n          window.location.reload(true);\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      deleteTest: function deleteTest(test) {\n        var _this2 = this;\n\n        test.destroyRecord().then(function () {\n          _this2.controllerFor('groups.fittings.show').set('canEdit', false);\n          _this2.controller.set('canEdit', false);\n          _this2.controllerFor('groups.fittings.show').set('showEdit', computed.not('canEdit'));\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/groups', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/setup-tour-sequence', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _handleError, _route, _setupTourSequence, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _handleError.default, _setupTourSequence.default, _emberCan.CanMixin, {\n    // Services\n    holdvaribles: inject.service('holdvaribles'),\n    viewSiteTour: inject.service('tours/view-site'),\n\n    viewSiteTechnicianTour: inject.service('tours/view-site-technician'),\n\n    features: inject.service(),\n\n    session: inject.service('session'),\n\n    batchDeleteGroups: inject.service('batchDeleteGroups'),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        var _modelFor = this.modelFor('application'),\n            currentEmployment = _modelFor.currentEmployment;\n\n        var viewSiteTooltipEvent = void 0;\n        if (this.can('view deleted-fittings', currentEmployment)) {\n          this.deactivateTour(this.get('viewSiteTechnicianTour'));\n          viewSiteTooltipEvent = this.setupTourSequence('view_site_web', this.get('viewSiteTour'));\n        } else {\n          this.deactivateTour(this.get('viewSiteTour'));\n          viewSiteTooltipEvent = this.setupTourSequence('view_site_web_technician', this.get('viewSiteTechnicianTour'));\n        }\n        return RSVP.hash({\n          viewSiteTooltipEvent: viewSiteTooltipEvent\n        });\n      }\n    },\n    model: function model() {\n      this.get('holdvaribles').setupallfittingpagebool(false);\n\n      var _modelFor2 = this.modelFor('site'),\n          site = _modelFor2.site;\n\n      return RSVP.hash({\n        site: site,\n        groups: this.infinityModel('group', {\n          site: site.id,\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.groups'\n        }),\n        group: this.store.createRecord('group')\n      });\n    },\n    resetController: function resetController(controller, isExiting) {\n      var group = controller.model.group;\n\n\n      controller.set('isDeletingGroups', false);\n      if (isExiting && !group.get('isPersisted')) {\n        group.unloadRecord();\n      }\n    },\n\n\n    actions: {\n      save: function save(group) {\n        var _this = this;\n\n        group.set('site', this.currentModel.site);\n\n        group.save().then(function () {\n          _this.controller.send('toggleAddGroup');\n          _this.showSuccessFlash('Group Added');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      closeModal: function closeModal() {\n        this.transitionTo('site.groups');\n      },\n      confirmBatchDeleteGroups: function confirmBatchDeleteGroups(selectedGroups) {\n        var _this2 = this;\n\n        this.get('batchDeleteGroups').deleteBatch(selectedGroups).then(function () {\n          _this2.controller.send('closeBatchConfirmationModal');\n          _this2.showSuccessFlash('Groups Deleted');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/shopping-cart', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _route, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _handleError.default, _route.default, {\n\n    // Services\n    batchDeleteOrderItems: inject.service('batchDeleteOrderItems'),\n\n    cartCheckout: inject.service(),\n\n    // Attributes\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    model: function model() {\n      var _modelFor = this.modelFor('site'),\n          site = _modelFor.site;\n\n      var _modelFor2 = this.modelFor('application'),\n          currentUser = _modelFor2.currentUser,\n          currentOrganisation = _modelFor2.currentOrganisation,\n          currentEmployment = _modelFor2.currentEmployment;\n\n      return RSVP.hash({\n        site: site,\n        currentUser: currentUser,\n        currentOrganisation: currentOrganisation,\n        currentEmployment: currentEmployment,\n        order: site.get('currentOrder'),\n        currentOrderGroups: site.get('currentOrder.id') ? this.infinityModel('group', {\n          order: site.get('currentOrder.id'),\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.currentOrderGroups'\n        }) : []\n      });\n    },\n\n\n    actions: {\n      confirmCheckout: function confirmCheckout(selectedGroups) {\n        var _this = this;\n\n        this.get('cartCheckout').checkout(this.currentModel.order, selectedGroups).then(function (result) {\n          window.open(result.links.cart, '_blank');\n          _this.controller.send('closeCheckoutConfirmationModal');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/site/test-events', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route'], function (exports, _ember, _authenticatedRouteMixin, _handleError, _route) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _handleError.default, {\n    holdvaribles: inject.service('holdvaribles'),\n    batchDeleteTestEvents: inject.service('batchDeleteTestEvents'),\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    model: function model() {\n      var _modelFor = this.modelFor('site'),\n          site = _modelFor.site;\n\n      this.get('holdvaribles').setupCurrentSite(site);\n      return RSVP.hash({\n        site: site,\n        testEvents: this.infinityModel('test-event', {\n          site: site.id,\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.testEvents'\n        }),\n        testEvent: this.store.createRecord('test-event')\n      });\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('isDeletingTestEvents', false);\n      }\n    },\n\n\n    actions: {\n      save: function save(testEvent) {\n        var _this = this;\n\n        testEvent.set('site', this.currentModel.site);\n\n        testEvent.save().then(function () {\n          _this.refresh();\n          _this.controller.send('closeAddTestEventModal');\n          _this.currentModel.site.reload();\n          _this.showSuccessFlash('Logbook Created');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      confirmBatchDeleteTestEvents: function confirmBatchDeleteTestEvents(selectedTestEvents) {\n        var _this2 = this;\n\n        this.get('batchDeleteTestEvents').deleteBatch(selectedTestEvents).then(function () {\n          _this2.refresh();\n          _this2.currentModel.site.reload();\n          _this2.controller.send('closeBatchDeleteConfirmationModal');\n          _this2.showSuccessFlash('Logbooks Deleted');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/sites', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/setup-tour-sequence', 'ember-can'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _route, _handleError, _setupTourSequence, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var later = _ember.default.run.later;\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _route.default, _handleError.default, _setupTourSequence.default, _emberCan.CanMixin, {\n    // Services\n\n    session: inject.service('session'),\n    branch: inject.service('branch'),\n    requestSiteAccess: inject.service('request-site-access'),\n\n    postOnboardingTour: inject.service('tours/post-onboarding'),\n\n    postOnboardingTechnicianTour: inject.service('tours/post-onboarding-technician'),\n\n    viewRestrictedSitesTour: inject.service('tours/view-restricted-sites'),\n\n    userDropdownMenuTour: inject.service('tours/user-dropdown-menu'),\n\n    userDropdownMenuTechnicianTour: inject.service('tours/user-dropdown-menu-technician'),\n\n    features: inject.service(),\n\n    // Route attributes\n\n    queryParams: {\n      query: {\n        refreshModel: true\n      },\n      sort: {\n        refreshModel: true\n      }\n    },\n\n    // Attributes\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Hooks\n    beforeModel: function beforeModel() {\n      var _this = this;\n\n      if (this.get('features').isEnabled('guidedTour')) {\n        this.store.query('tooltip-event', {\n          filter: {\n            'event-name': 'onboarding-web'\n          }\n        }).then(function (onboardingTooltipEvents) {\n          if (!onboardingTooltipEvents.get('length')) {\n            if (_this.controllerFor('application').get('hasJustLoggedIn') || _this.controllerFor('application').get('hasJustSignedUp')) {\n              var tooltipEvent = _this.store.createRecord('tooltip-event', {\n                eventName: 'onboarding-web'\n              });\n              tooltipEvent.save();\n              _this.transitionTo('onboarding');\n            }\n          }\n          if (_this.controllerFor('application').get('hasJustLoggedIn')) {\n            // prevents the tour starting when the organisation select modal is displayed after login in\n            return;\n          }\n\n          var _modelFor = _this.modelFor('application'),\n              currentEmployment = _modelFor.currentEmployment;\n\n          var viewSiteListTooltipEvent = void 0,\n              viewUserDropdownTooltipEvent = void 0,\n              viewRestrictedSiteTooltipEvent = void 0;\n          if (_this.can('view user-management', currentEmployment)) {\n            _this.deactivateTour(_this.get('postOnboardingTechnicianTour'));\n            _this.deactivateTour(_this.get('viewRestrictedSitesTour'));\n            viewSiteListTooltipEvent = _this.setupTourSequence('view_site_list_web', _this.get('postOnboardingTour'));\n          } else {\n            _this.deactivateTour(_this.get('postOnboardingTour'));\n            viewSiteListTooltipEvent = _this.setupTourSequence('view_site_list_web_technician', _this.get('postOnboardingTechnicianTour'));\n            viewRestrictedSiteTooltipEvent = _this.setupTourSequence('restricted_site_web', _this.get('viewRestrictedSitesTour'));\n          }\n          if (_this.can('modify business-profile', currentEmployment)) {\n            _this.deactivateTour(_this.get('userDropdownMenuTechnicianTour'));\n            viewUserDropdownTooltipEvent = _this.setupTourSequence('user_dropdown_web', _this.get('userDropdownMenuTour'));\n          } else {\n            _this.deactivateTour(_this.get('userDropdownMenuTour'));\n            viewUserDropdownTooltipEvent = _this.setupTourSequence('user_dropdown_web_technician', _this.get('userDropdownMenuTechnicianTour'));\n          }\n          return RSVP.hash({\n            viewSiteListTooltipEvent: viewSiteListTooltipEvent,\n            viewRestrictedSiteTooltipEvent: viewRestrictedSiteTooltipEvent,\n            viewUserDropdownTooltipEvent: viewUserDropdownTooltipEvent\n          });\n        }).catch(function () {});\n      }\n    },\n    model: function model(params) {\n      this.store.unloadAll('group');\n\n      var _modelFor2 = this.modelFor('application'),\n          currentOrganisation = _modelFor2.currentOrganisation,\n          currentUser = _modelFor2.currentUser;\n\n      var currentOrganisationId = currentOrganisation ? currentOrganisation.get('id') : null;\n      this.get('session').setupCurrentOrganisation(currentOrganisation);\n\n      var filter = {};\n      var sort = '';\n      if (params.hasOwnProperty('query')) {\n        filter.query = params.query;\n      }\n      if (params.hasOwnProperty('sort')) {\n        sort = params.sort;\n      }\n      var newadminlist = null;\n      if (currentUser.data.admin) {\n        newadminlist = this.store.findAll('admin');\n      }\n      return RSVP.hash({\n        userlist: newadminlist,\n        admin: currentUser.data.admin,\n        sites: this.infinityModel('site', {\n          perPage: 30,\n          startingPage: 1,\n          modelPath: 'controller.model.sites',\n          currentOrganisationId: currentOrganisationId,\n          filter: filter,\n          sort: sort\n        }),\n        site: this.store.createRecord('site', {\n          siteOwner: currentOrganisation\n        })\n      });\n    },\n\n\n    // eslint-disable-next-line no-unused-vars\n    afterModel: function afterModel(model, transition) {\n      later(this, function () {\n        this.get('branch').clearInvite();\n      }, 10000);\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        this.controller.set('query', '');\n        this.controller.set('sort', '');\n      }\n    },\n\n\n    actions: {\n      save: function save(site) {\n        var _this2 = this;\n\n        site.save().then(function () {\n          _this2.refresh();\n          _this2.controller.send('toggleAddSite');\n          _this2.showSuccessFlash('Site Added');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      showAdminLogin: function showAdminLogin() {\n        //  let password  = \"testtest6\";\n        /*\n          Ember.$.ajax({\n            url: \"http://localhost:5000/api/v1/admins/\",\n            type: \"POST\",\n            headers: {\n              'Content-Type':'application/json'\n            },\n            data: JSON.stringify({\n              data:{attributes:{email:\"k.mitchell@clevertronics.com.au\",password:\"testtest6\",userid:\"f1d5be8b-bcac-42e6-84a5-40d5038ccdfd\"},type:\"sessions\"}\n        })\n        }).then(function(resp){\n        })*/\n      },\n      showSiteDetails: function showSiteDetails(site) {\n        this.transitionTo('site', site.id);\n      },\n      requestSiteAccess: function requestSiteAccess(site) {\n        var _this3 = this;\n\n        this.get('requestSiteAccess').requestAccess(site).then(function () {\n          _this3.showSuccessFlash('Access Requested');\n          _this3.controller.set('isQueryPending', false);\n          _this3.refresh();\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/support', ['exports', 'ember', 'clever-sparky-frontend/mixins/show-nav-bar', 'ember-simple-auth/mixins/authenticated-route-mixin'], function (exports, _ember, _showNavBar, _authenticatedRouteMixin) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, {\n    model: function model() {\n      return RSVP.hash({\n        currentEmployment: this.modelFor('application').currentEmployment\n      });\n    },\n    setupController: function setupController(controller, model) {\n      controller.set('currentEmployment', model.currentEmployment);\n    }\n  });\n});","define('clever-sparky-frontend/routes/terms', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, {\n    model: function model() {\n      return RSVP.hash({\n        currentEmployment: this.modelFor('application').currentEmployment\n      });\n    },\n    setupController: function setupController(controller, model) {\n      controller.set('currentEmployment', model.currentEmployment);\n    }\n  });\n});","define('clever-sparky-frontend/routes/test-event-group', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-local-storage'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, {\n    holdvaribles: inject.service('holdvaribles'),\n    testeventx: (0, _emberLocalStorage.storageFor)('test-event'),\n    sitetmp: (0, _emberLocalStorage.storageFor)('site'),\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n    },\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentEmployment = _modelFor.currentEmployment;\n\n      var testevent = null;\n\n      testevent = this.get('holdvaribles').showCurrentTestEvent();\n      if (testevent == null) {\n\n        var cat = this.get('testeventx');\n        var testeventxx = cat.content.testevent;\n\n        testevent = {\n          data: testeventxx\n        };\n        if (testevent.data.viewb === 'allfittings') {\n          return new RSVP.Promise(function (resolve) {\n            RSVP.hash({\n\n              testEvent: testevent\n            }).then(function (model) {\n              resolve(model);\n            });\n          });\n        } else {\n\n          return new RSVP.Promise(function (resolve, reject) {\n            _this.get('store').findRecord('test-event-group', params.test_event_group_id, { reload: true }).then(function (testEventGroup) {\n              RSVP.hash({\n                testEventGroup: testEventGroup,\n                currentUser: currentUser,\n                currentEmployment: currentEmployment,\n                testEvent: testEventGroup.get('testEvent')\n              }).then(function (model) {\n                resolve(model);\n              });\n            }).catch(function (reason) {\n\n              reject(reason);\n            });\n          });\n        }\n      } else {\n\n        if (testevent.data.viewb === 'allfittings') {\n          return new RSVP.Promise(function (resolve) {\n            RSVP.hash({\n\n              testEvent: testevent\n            }).then(function (model) {\n              resolve(model);\n            });\n          });\n        } else {\n\n          return new RSVP.Promise(function (resolve, reject) {\n            _this.get('store').findRecord('test-event-group', params.test_event_group_id, { reload: true }).then(function (testEventGroup) {\n              RSVP.hash({\n                testEventGroup: testEventGroup,\n                currentUser: currentUser,\n                currentEmployment: currentEmployment,\n                testEvent: testEventGroup.get('testEvent')\n              }).then(function (model) {\n                resolve(model);\n              });\n            }).catch(function (reason) {\n\n              reject(reason);\n            });\n          });\n        }\n      }\n    },\n    afterModel: function afterModel(model, transition) {\n      var _this2 = this;\n\n      var testevent = this.get('holdvaribles').showCurrentTestEvent();\n\n      if (testevent == null) {\n\n        var cat = this.get('testeventx');\n        var testeventxx = cat.content.testevent;\n\n        testevent = {\n          data: testeventxx\n        };\n      }\n      var allgroups = this.get('store').peekAll('group');\n      var alltestevents = this.get('store').peekAll('test-event');\n      if (testevent.data.viewb === 'allfittings') {\n        this.get('holdvaribles').setupallfittingpagebool(true);\n\n        return new RSVP.Promise(function (resolve) {\n          model.testEvent.get('site').then(function (site) {\n            RSVP.hash({\n              site: site,\n              sitesGroups: allgroups.content,\n              testEvents: alltestevents.content\n            }).then(function (hash) {\n              model.site = hash.site;\n              model.sitesGroups = hash.sitesGroups;\n              model.testEvents = hash.testEvents;\n              resolve();\n              if (transition.targetName === 'test-event-group.index') {\n                _this2.transitionTo('test-event-group.fittings');\n              }\n            });\n          });\n        });\n      } else {\n        this.get('holdvaribles').setupallfittingpagebool(false);\n\n        return new RSVP.Promise(function (resolve) {\n          model.testEvent.get('site').then(function (site) {\n            RSVP.hash({\n              site: site,\n              sitesGroups: site.get('groups'),\n              testEvents: _this2.get('store').query('test-event', {\n                site: site.get('id')\n              })\n            }).then(function (hash) {\n              model.site = hash.site;\n              model.sitesGroups = hash.sitesGroups;\n              model.testEvents = hash.testEvents;\n              resolve();\n              if (transition.targetName === 'test-event-group.index') {\n                _this2.transitionTo('test-event-group.fittings');\n              }\n            });\n          });\n        });\n      }\n    },\n\n\n    actions: {\n      error: function error(reason) {\n        // called when an error occurs in model query\n        this.handleRailsError(reason);\n        this.replaceWith('sites');\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event-group/fittings', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/setup-tour-sequence', 'ember-local-storage'], function (exports, _ember, _handleError, _route, _setupTourSequence, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_route.default, _handleError.default, _setupTourSequence.default, {\n    // Services\n    sitetmp: (0, _emberLocalStorage.storageFor)('site'),\n    testeventtmp: (0, _emberLocalStorage.storageFor)('test-event'),\n    viewTestEventGroupTour: inject.service('tours/view-test-event-group'),\n\n    holdvaribles: inject.service('holdvaribles'),\n\n    features: inject.service(),\n    store: inject.service(),\n\n    batchCreateLedtests: inject.service(),\n\n    // Attributes\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Route Attributes\n\n    queryParams: {\n      collected: {\n        refreshModel: true\n      }\n    },\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewTestEventGroupTooltipEvent: this.setupTourSequence('view_test_event_group_web', this.get('viewTestEventGroupTour'))\n        });\n      }\n    },\n    model: function model(params) {\n      var _modelFor = this.modelFor('test-event-group'),\n          testEvent = _modelFor.testEvent;\n\n      var grouporallfittings = testEvent.data.viewb;\n      var filter = {};\n      if (params.hasOwnProperty('collected')) {\n        filter.collected = params.collected;\n      }\n\n      var site = this.get('sitetmp.site');\n      var testEventid = this.get('testeventtmp.id');\n      testEvent = this.get('testeventtmp.testevent');\n\n      if (grouporallfittings === 'allfittings') {\n        return RSVP.hash({\n          testEvent: testEvent,\n          testEventFittings: this.infinityModel('test-event-fitting', {\n            siteid: site.id,\n            testEventid: testEventid,\n            perPage: 10,\n            grouporallfittings: 'allfittings',\n            startingPage: 1,\n            modelPath: 'controller.model.testEventFittings',\n            filter: filter\n          }),\n          fitting: this.store.createRecord('fitting', { group: null }),\n          newTestEvent: this.store.createRecord('test-event')\n        });\n      } else {\n        var _modelFor2 = this.modelFor('test-event-group'),\n            testEventGroup = _modelFor2.testEventGroup;\n\n        return RSVP.hash({\n          testEventGroup: testEventGroup,\n          testEvent: testEvent,\n          testEventFittings: this.infinityModel('test-event-fitting', {\n            testEventGroup: testEventGroup.id,\n            siteid: site.id,\n            testEventid: testEvent.id,\n            perPage: 10,\n            grouporallfittings: 'group',\n            startingPage: 1,\n            modelPath: 'controller.model.testEventFittings',\n            filter: filter\n          }),\n          fitting: this.store.createRecord('fitting', {\n            group: testEventGroup.get('group')\n          }),\n          newTestEvent: this.store.createRecord('test-event')\n        });\n      }\n    },\n    afterModel: function afterModel(model) {\n\n      return new RSVP.Promise(function (resolve) {\n\n        model.data = model.testEventFittings.links.size;\n        resolve();\n      });\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('collected', false);\n        controller.set('selectedTestEventFittings', []);\n      }\n    },\n\n\n    actions: {\n      showTestEventFittingDetails: function showTestEventFittingDetails(testEventFitting) {\n        this.transitionTo('test-event-group.fittings.show.details', testEventFitting.id);\n      },\n      addFitting: function addFitting(fitting) {\n        var _this = this;\n\n        fitting.save().then(function () {\n          _this.controller.send('closeAddFittingModal');\n          _this.showSuccessFlash('Fitting Added');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      batchSaveTestResults: function batchSaveTestResults(testAttributes) {\n        var _this2 = this;\n\n        this.get('batchCreateLedtests').createLedTests(this.controller.selectedTestEventFittings, testAttributes).then(function () {\n          _this2.controller.send('closeQuickTestModal');\n          _this2.controller.set('isSelectingTestEventFittings', false);\n          _this2.controller.set('selectedTestEventFittings', []);\n          _this2.showSuccessFlash('Batch Test Results added succesfully');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      editDateRange: function editDateRange(testEvent) {\n        var _this3 = this;\n\n        testEvent.save().then(function () {\n          _this3.controller.send('closeEditDateRangeModal');\n          _this3.showSuccessFlash('Date range updated');\n          // refresh the top most parent route\n          _this3.send('refreshRoute');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      duplicate: function duplicate(duplicatedTestEvent) {\n        var _this4 = this;\n\n        this.currentModel.testEvent.duplicate({\n          data: {\n            attributes: {\n              startDate: duplicatedTestEvent.get('startDate'),\n              endDate: duplicatedTestEvent.get('endDate')\n            }\n          }\n        }).then(function (newTestEvent) {\n          _this4.controller.send('closeDuplicateTestEventModal');\n          _this4.showSuccessFlash('Test Event successfully duplicated');\n          _this4.transitionTo('test-event', newTestEvent.data.id);\n        }).catch(function (reason) {\n          _this4.handleRailsError(reason);\n        }).finally(function () {\n          _this4.controller.set('isQueryPending', false);\n        });\n      },\n      archive: function archive() {\n        var _this5 = this;\n\n        this.currentModel.testEvent.archive().then(function () {\n          _this5.controller.send('closeArchiveConfirmationModal');\n          _this5.showSuccessFlash('Test Event successfully archived');\n          // refresh the top most parent route\n          _this5.send('refreshRoute');\n        }).catch(function (reason) {\n          _this5.handleRailsError(reason);\n        }).finally(function () {\n          _this5.controller.set('isQueryPending', false);\n        });\n      },\n      saveQuickTestDefaults: function saveQuickTestDefaults(testEvent) {\n        var _this6 = this;\n\n        testEvent.save().then(function () {\n          _this6.controller.send('closeQuickTestDefaultsModal');\n          _this6.showSuccessFlash('Test Event Template updated');\n        }).catch(function (reason) {\n          _this6.handleRailsError(reason);\n        }).finally(function () {\n          _this6.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event-group/fittings/show', ['exports', 'ember', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_handleError.default, {\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('test-event-group'),\n          testEvent = _modelFor.testEvent;\n\n      return new RSVP.Promise(function (resolve) {\n        _this.get('store').findRecord('test-event-fitting', params.test_event_fitting_id, { reload: true }).then(function (testEventFitting) {\n          RSVP.hash({\n            testEvent: testEvent,\n            testEventFitting: testEventFitting,\n            fitting: _this.get('store').findRecord('fitting', testEventFitting.get('fitting.id'), { reload: true }),\n            testEventGroup: testEventFitting.get('testEventGroup'),\n            latestTest: testEventFitting.get('latestTest'),\n            newTest: _this.store.createRecord('ledtest'),\n            maintenances: testEventFitting.get('maintenances'),\n            newMaintenance: _this.store.createRecord('maintenance')\n          }).then(function (model) {\n            resolve(model);\n          });\n        });\n      });\n    },\n    afterModel: function afterModel(model) {\n      return new RSVP.Promise(function (resolve) {\n        RSVP.hash({\n          group: model.testEventGroup.get('group'),\n          fittingLatestTest: model.fitting.get('deletedAt') ? null : model.fitting.get('latestTest')\n        }).then(function (hash) {\n          model.group = hash.group;\n          model.fittingLatestTest = hash.fittingLatestTest;\n          resolve();\n        });\n      });\n    },\n\n\n    actions: {\n      returnToTestEventFittings: function returnToTestEventFittings() {\n        this.controller.set('showDeleteModal', false);\n        this.transitionTo('test-event-group.fittings');\n      },\n      deleteFitting: function deleteFitting(fitting) {\n        var _this2 = this;\n\n        fitting.destroyRecord().then(function () {\n          fitting.unloadRecord();\n          _this2.showSuccessFlash('Fitting Deleted');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n          _this2.send('returnToTestEventFittings');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controllerFor('test-event-group').send('refreshRoute');\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event-group/fittings/show/details', ['exports', 'clever-sparky-frontend/routes/base-routes/test-event-group-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _testEventGroupFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _testEventGroupFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('testEvent', model.testEvent);\n      controller.set('group', model.group);\n      controller.set('testEventFitting', model.testEventFitting);\n    },\n\n\n    actions: {\n      save: function save(fitting) {\n        var _this = this;\n\n        fitting.set('testEvent', this.controller.get('testEvent'));\n        fitting.save().then(function (fitting) {\n          var currentTestEventFittings = fitting.get('testEventFittings').toArray().map(function (testEventFitting) {\n            return testEventFitting.id;\n          });\n          if (!currentTestEventFittings.includes(_this.controller.get('testEventFitting.id'))) {\n            // testEventFitting no longer exists i.e. case where fitting.installDate is updated to outside test event range\n            _this.transitionTo('test-event-group.fittings');\n          } else {\n            _this.controllerFor('test-event-group.fittings.show').set('showSuccess', true);\n            _this.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n            _this.controller.set('canEdit', false);\n          }\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event-group/fittings/show/maintenance', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      computed = _ember.default.computed;\n  exports.default = Route.extend({\n    model: function model() {\n      var _modelFor = this.modelFor('test-event-group.fittings.show'),\n          testEvent = _modelFor.testEvent,\n          fitting = _modelFor.fitting,\n          maintenances = _modelFor.maintenances,\n          newMaintenance = _modelFor.newMaintenance,\n          testEventFitting = _modelFor.testEventFitting;\n\n      return RSVP.hash({\n        testEvent: testEvent,\n        fitting: fitting,\n        maintenances: maintenances,\n        newMaintenance: newMaintenance,\n        testEventFitting: testEventFitting\n      });\n    },\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      this.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', false);\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', computed.and('isNotArchived', 'showEdit'));\n      }\n    },\n\n\n    actions: {\n      showSuccessFlashOnSave: function showSuccessFlashOnSave() {\n        this.controllerFor('test-event-group.fittings.show').set('showSuccess', true);\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event-group/fittings/show/test-and-status', ['exports', 'ember', 'clever-sparky-frontend/routes/base-routes/test-event-group-fittings-tab', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _testEventGroupFittingsTab, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _testEventGroupFittingsTab.default.extend(_handleError.default, {\n    setupController: function setupController(controller, model) {\n      this._super(controller, model);\n      // overriding setupController function of BaseGroupsFittingsTabRoute\n      controller.set('testEvent', model.testEvent);\n      controller.set('testEventFitting', model.testEventFitting);\n      controller.set('latestTest', model.latestTest);\n      controller.set('newTest', model.newTest);\n      controller.set('fittingLatestTest', model.fittingLatestTest);\n      controller.set('canEdit', false);\n      this.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n      if (!model.latestTest) {\n        this.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', false);\n      }\n    },\n    resetController: function resetController(controller, isExiting) {\n      if (isExiting) {\n        controller.set('canEdit', false);\n        this.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', computed.and('isNotArchived', 'showEdit'));\n      }\n    },\n\n\n    actions: {\n      save: function save(fitting, test) {\n        var _this = this;\n\n        if (test.get('isNew')) {\n          test.set('fitting', fitting);\n        }\n        test.set('testEvent', this.currentModel.testEvent);\n        test.save().then(function () {\n          _this.controllerFor('test-event-group.fittings.show').set('showSuccess', true);\n          _this.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n          _this.controller.set('canEdit', false);\n          _this.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', computed.and('isNotArchived', 'showEdit'));\n          fitting.save();\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      deleteTest: function deleteTest(test) {\n        var _this2 = this;\n\n        test.destroyRecord().then(function () {\n          _this2.controllerFor('test-event-group.fittings.show').set('canEdit', false);\n          _this2.controller.set('canEdit', false);\n          _this2.controllerFor('test-event-group.fittings.show').set('shouldShowEdit', computed.and('isNotArchived', 'showEdit'));\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _showNavBar.default, _handleError.default, {\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentUser = _modelFor.currentUser,\n          currentEmployment = _modelFor.currentEmployment;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        _this.get('store').findRecord('test-event', params.test_event_id, { reload: true }).then(function (testEvent) {\n          RSVP.hash({\n            testEvent: testEvent,\n            currentUser: currentUser,\n            currentEmployment: currentEmployment,\n            site: testEvent.get('site')\n          }).then(function (model) {\n            resolve(model);\n          });\n        }).catch(function (reason) {\n          reject(reason);\n        });\n      });\n    },\n    afterModel: function afterModel(model, transition) {\n      var _this2 = this;\n\n      return new RSVP.Promise(function (resolve) {\n        RSVP.hash({\n          sitesGroups: model.site.get('groups'),\n          testEvents: _this2.get('store').query('test-event', {\n            site: model.site.get('id')\n          })\n        }).then(function (hash) {\n          model.sitesGroups = hash.sitesGroups;\n          model.testEvents = hash.testEvents;\n          resolve();\n          if (transition.targetName === 'test-event.index') {\n            _this2.transitionTo('test-event.groups');\n          }\n        });\n      });\n    },\n\n\n    actions: {\n      error: function error(reason) {\n        // called when an error occurs in model query\n        this.handleRailsError(reason);\n        this.replaceWith('sites');\n      },\n      refreshRoute: function refreshRoute() {\n        this.refresh();\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/test-event/groups', ['exports', 'ember', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/handle-error', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _route, _handleError, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_route.default, _handleError.default, _setupTourSequence.default, {\n    // Services\n\n    batchHandleTestEventGroups: inject.service(),\n\n    testEventDropdownMenuTour: inject.service('tours/test-event-dropdown-menu'),\n\n    features: inject.service(),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewTestEventDropdownTooltipEvent: this.setupTourSequence('test_event_dropdown_web', this.get('testEventDropdownMenuTour'))\n        });\n      }\n    },\n    model: function model() {\n      var _modelFor = this.modelFor('test-event'),\n          site = _modelFor.site,\n          testEvent = _modelFor.testEvent;\n\n      return RSVP.hash({\n        site: site,\n        testEvent: testEvent,\n        testEventGroups: this.infinityModel('test-event-group', {\n          testEvent: testEvent.id,\n          perPage: 10,\n          startingPage: 1,\n          modelPath: 'controller.model.testEventGroups'\n        }),\n        missingGroups: this.store.query('group', {\n          testEvent: testEvent.id\n        }),\n        newTestEvent: this.store.createRecord('test-event')\n      });\n    },\n\n\n    actions: {\n      batchAddGroups: function batchAddGroups(selectedGroups) {\n        var _this = this;\n\n        this.get('batchHandleTestEventGroups').addGroups(selectedGroups, this.currentModel.testEvent.get('id')).then(function () {\n          _this.showSuccessFlash('Groups added');\n          _this.controller.send('closeAddGroupsModal');\n          // refresh the top most parent route\n          _this.send('refreshRoute');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      batchRemoveGroups: function batchRemoveGroups(selectedGroups) {\n        var _this2 = this;\n\n        this.get('batchHandleTestEventGroups').removeGroups(selectedGroups, this.currentModel.testEvent.get('id')).then(function () {\n          _this2.showSuccessFlash('Groups removed');\n          _this2.controller.send('closeRemoveGroupsModal');\n          // refresh the top most parent route\n          _this2.send('refreshRoute');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      editDateRange: function editDateRange(testEvent) {\n        var _this3 = this;\n\n        testEvent.save().then(function () {\n          _this3.controller.send('closeEditDateRangeModal');\n          _this3.showSuccessFlash('Date range updated');\n          // refresh the top most parent route\n          _this3.send('refreshRoute');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      duplicate: function duplicate(duplicatedTestEvent) {\n        var _this4 = this;\n\n        this.currentModel.testEvent.duplicate({\n          data: {\n            attributes: {\n              startDate: duplicatedTestEvent.get('startDate'),\n              endDate: duplicatedTestEvent.get('endDate')\n            }\n          }\n        }).then(function (newTestEvent) {\n          _this4.controller.send('closeDuplicateTestEventModal');\n          _this4.showSuccessFlash('Test Event successfully duplicated');\n          _this4.transitionTo('test-event', newTestEvent.data.id);\n        }).catch(function (reason) {\n          _this4.handleRailsError(reason);\n        }).finally(function () {\n          _this4.controller.set('isQueryPending', false);\n        });\n      },\n      archive: function archive() {\n        var _this5 = this;\n\n        this.currentModel.testEvent.archive().then(function () {\n          _this5.controller.send('closeArchiveConfirmationModal');\n          _this5.showSuccessFlash('Test Event successfully archived');\n          // refresh the top most parent route\n          _this5.send('refreshRoute');\n        }).catch(function (reason) {\n          _this5.handleRailsError(reason);\n        }).finally(function () {\n          _this5.controller.set('isQueryPending', false);\n        });\n      },\n      saveQuickTestDefaults: function saveQuickTestDefaults(testEvent) {\n        var _this6 = this;\n\n        testEvent.save().then(function () {\n          _this6.controller.send('closeQuickTestDefaultsModal');\n          _this6.showSuccessFlash('Test Event Template updated');\n        }).catch(function (reason) {\n          _this6.handleRailsError(reason);\n        }).finally(function () {\n          _this6.controller.set('isQueryPending', false);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/user', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _route, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _showNavBar.default, _handleError.default, _setupTourSequence.default, {\n    // Services\n\n    viewUserDetailsTour: inject.service('tours/view-user-details'),\n\n    features: inject.service(),\n\n    // Attributes\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    // Hooks\n\n    beforeModel: function beforeModel() {\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewUserDetailsTooltipEvent: this.setupTourSequence('view_user_details_web', this.get('viewUserDetailsTour'))\n        });\n      }\n    },\n    model: function model(params) {\n      var _this = this;\n\n      var _modelFor = this.modelFor('application'),\n          currentOrganisation = _modelFor.currentOrganisation;\n\n      var currentOrganisationId = currentOrganisation ? currentOrganisation.get('id') : null;\n\n      return new RSVP.Promise(function (resolve) {\n        _this.get('store').findRecord('employment', params.employment_id).then(function (employment) {\n          RSVP.hash({\n            employment: employment,\n            technicians: _this.infinityModel('user', {\n              perPage: 10,\n              startingPage: 1,\n              modelPath: 'controller.model.technicians',\n              role: 'technician',\n              currentOrganisationId: currentOrganisationId\n            }),\n            currentOrganisation: currentOrganisation,\n            user: employment.get('user'),\n            organisation: employment.get('organisation')\n          }).then(function (model) {\n            resolve(model);\n          });\n        });\n      });\n    },\n    afterModel: function afterModel(model) {\n      var _this2 = this;\n\n      return new RSVP.Promise(function (resolve) {\n        RSVP.hash({\n          restrictedSites: _this2.store.query('site', {\n            userId: model.user.get('id'),\n            filter: {\n              organisationId: model.organisation.get('id')\n            }\n          }),\n\n          sitePermissions: _this2.infinityModel('site-permission', {\n            perPage: 1000,\n            startingPage: 1,\n            modelPath: 'controller.model.sitePermissions',\n            filter: {\n              'user-id': model.user.get('id')\n            },\n            organisationId: model.organisation.get('id')\n          })\n        }).then(function (hash) {\n          model.usersRestrictedSites = hash.restrictedSites;\n          model.sitePermissions = hash.sitePermissions;\n          resolve();\n        });\n      });\n    },\n\n\n    actions: {\n      deleteUser: function deleteUser(employment) {\n        var _this3 = this;\n\n        this.controller.set('isQueryPending', true);\n        employment.destroyRecord().then(function () {\n          _this3.showSuccessFlash('User Deleted');\n          _this3.controller.send('closeDeleteUserModal');\n          _this3.transitionTo('users');\n        }).catch(function (reason) {\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n        });\n      },\n      copyPermissions: function copyPermissions(currentOrganisation, sourceId, destinationId) {\n        var _this4 = this;\n\n        currentOrganisation.copySitePermissions({\n          data: {\n            type: 'site-permission-copies',\n            relationships: {\n              source: {\n                data: {\n                  type: 'users',\n                  id: sourceId\n                }\n              },\n              destination: {\n                data: {\n                  type: 'users',\n                  id: destinationId\n                }\n              }\n            }\n          }\n        }).then(function () {\n          _this4.controller.send('closeInviteToSitesModal');\n          _this4.showSuccessFlash('Permission Copied Successfully');\n          _this4.refresh();\n        }).catch(function (reason) {\n          _this4.handleRailsError(reason);\n        }).finally(function () {\n          _this4.controller.set('isQueryPending', false);\n        });\n      },\n      grantAccess: function grantAccess(user, sites) {\n        var _this5 = this;\n\n        var formatedSiteData = sites.map(function (site) {\n          return { type: 'sites', id: site.get('id') };\n        });\n        user.grantAccess({\n          data: formatedSiteData\n        }).then(function () {\n          _this5.showSuccessFlash('Permission Granted Successfully');\n          _this5.controller.send('closeInviteToSitesModal');\n          _this5.refresh();\n        }).catch(function (reason) {\n          _this5.handleRailsError(reason);\n        }).finally(function () {\n          _this5.controller.set('isQueryPending', false);\n        });\n      },\n      removeAccess: function removeAccess(sitePermission) {\n        var _this6 = this;\n\n        sitePermission.destroyRecord().then(function () {\n          _this6.showSuccessFlash('Site Access has been removed');\n          _this6.refresh();\n        }).catch(function (reason) {\n          _this6.handleRailsError(reason);\n        }).finally(function () {\n          _this6.controller.set('isQueryPending', false);\n        });\n      },\n      updatePurchasingRights: function updatePurchasingRights(employment) {\n        var _this7 = this;\n\n        employment.save().then(function () {\n          _this7.showSuccessFlash('Purchasing rights has been updated', { timeout: 1000 });\n        }).catch(function (reason) {\n          _this7.handleRailsError(reason);\n        });\n      }\n    }\n\n  });\n});","define('clever-sparky-frontend/routes/users', ['exports', 'ember', 'ember-simple-auth/mixins/authenticated-route-mixin', 'clever-sparky-frontend/mixins/show-nav-bar', 'clever-sparky-frontend/mixins/handle-error', 'ember-infinity/mixins/route', 'ember-local-storage', 'ember-can', 'clever-sparky-frontend/mixins/setup-tour-sequence'], function (exports, _ember, _authenticatedRouteMixin, _showNavBar, _handleError, _route, _emberLocalStorage, _emberCan, _setupTourSequence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Route = _ember.default.Route,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject;\n  exports.default = Route.extend(_authenticatedRouteMixin.default, _route.default, _showNavBar.default, _handleError.default, _emberCan.CanMixin, _setupTourSequence.default, {\n    // Services\n\n    inviteDelete: inject.service('invite-delete'),\n\n    viewUsersTour: inject.service('tours/view-users'),\n\n    features: inject.service(),\n\n    // Local storage\n\n    currentOrganisation: (0, _emberLocalStorage.storageFor)('current-organisation'),\n\n    perPageParam: 'page[size]', // instead of 'per_page'\n\n    pageParam: 'page[number]', // instead of 'page'\n\n    totalPagesParam: 'meta.total-pages', // instead of \"meta.total_pages\"\n\n    beforeModel: function beforeModel() {\n      this._super.apply(this, arguments);\n\n      var _modelFor = this.modelFor('application'),\n          currentEmployment = _modelFor.currentEmployment;\n\n      if (!this.can('view user-management', currentEmployment)) {\n        this.replaceWith('sites');\n      }\n      if (this.get('features').isEnabled('guidedTour')) {\n        return RSVP.hash({\n          viewUsersTooltipEvent: this.setupTourSequence('view_users_list_web', this.get('viewUsersTour'))\n        });\n      }\n    },\n    model: function model() {\n      var _modelFor2 = this.modelFor('application'),\n          currentOrganisation = _modelFor2.currentOrganisation;\n\n      var currentOrganisationId = currentOrganisation ? currentOrganisation.get('id') : null;\n\n      return RSVP.hash({\n        organisation: currentOrganisation,\n        employments: this.infinityModel('employment', {\n          perPage: 100,\n          startingPage: 1,\n          modelPath: 'controller.model.employments',\n          currentOrganisationId: currentOrganisationId\n        }),\n        invite: this.store.createRecord('invite', {\n          organisation: currentOrganisation\n        })\n      });\n    },\n\n\n    actions: {\n      invite: function invite(_invite) {\n        var _this = this;\n\n        _invite.set('organisation', this.currentModel.organisation);\n        _invite.save().then(function () {\n          _this.refresh();\n          _this.controller.set('displayInviteUserModal', false);\n          _this.showSuccessFlash('Invitation Sent');\n        }).catch(function (reason) {\n          _this.handleRailsError(reason);\n        }).finally(function () {\n          _this.controller.set('isQueryPending', false);\n        });\n      },\n      showUserDetail: function showUserDetail(employment) {\n        if (employment.get('user.id')) {\n          this.transitionTo('user', employment.id);\n        }\n      },\n      cancelInvite: function cancelInvite(invite) {\n        var _this2 = this;\n\n        this.get('inviteDelete').delete(invite.get('id')).then(function () {\n          _this2.refresh();\n          _this2.showSuccessFlash('Invitation Cancelled');\n        }).catch(function (reason) {\n          _this2.handleRailsError(reason);\n        }).finally(function () {\n          _this2.controller.set('isQueryPending', false);\n        });\n      },\n      changeUserType: function changeUserType(employment) {\n        var _this3 = this;\n\n        employment.save().then(function () {\n          _this3.showSuccessFlash('User Type has been updated');\n        }).catch(function (reason) {\n          employment.rollbackAttributes();\n          _this3.handleRailsError(reason);\n        }).finally(function () {\n          _this3.controller.set('isQueryPending', false);\n          _this3.refresh();\n        });\n      }\n    }\n\n  });\n});","define(\"clever-sparky-frontend/s3-upload/service\", [\"exports\", \"ember\"], function (exports, _ember) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _ember.default.Service.extend({\n    uploadFile: function uploadFile(file, signedRequest) {\n      return new Promise(function (resolve, reject) {\n        var xhr = new XMLHttpRequest();\n        xhr.open(\"PUT\", signedRequest);\n        // xhr.setRequestHeader('x-amz-acl', 'public-read')\n        xhr.onload = function () {\n          resolve();\n        };\n        xhr.send(file);\n      });\n    }\n  });\n});","define('clever-sparky-frontend/serializers/admin', ['exports', 'clever-sparky-frontend/serializers/application'], function (exports, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _application.default.extend({\n    normalizeResponse: function normalizeResponse(store, primaryModelClass, payload) {\n      return payload;\n    }\n  });\n});","define('clever-sparky-frontend/serializers/application', ['exports', 'ember-data'], function (exports, _emberData) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var JSONAPISerializer = _emberData.default.JSONAPISerializer;\n  exports.default = JSONAPISerializer.extend({\n    modelNameFromPayloadKey: function modelNameFromPayloadKey(key) {\n      if (key === 'tests') {\n        key = 'led' + key;\n      }\n      return this._super(key);\n    }\n  });\n});","define('clever-sparky-frontend/serializers/fitting', ['exports', 'clever-sparky-frontend/serializers/application', 'ember'], function (exports, _application, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var inject = _ember.default.inject;\n  exports.default = _application.default.extend({\n    holdvaribles: inject.service('holdvaribles'),\n    serialize: function serialize() {\n      var json = this._super.apply(this, arguments);\n\n      if (json.data.relationships && json.data.relationships['latest-test']) {\n        delete json.data.relationships['latest-test'];\n      }\n      if (json.data.relationships != null) {\n        if (json.data.relationships.group.data == null) {\n\n          var groupid = this.get('holdvaribles').showHoldSelectedFittingGroup();\n\n          var data = {\n            id: groupid,\n            type: 'groups'\n          };\n\n          json.data.relationships.group.data = data;\n          // json.data.relationships.group.data['type'] = 'groups';\n        }\n      }\n\n      return json;\n    },\n    normalizeResponse: function normalizeResponse(store, primaryModelClass, payload, id, requestType) {\n\n      if (requestType === 'findRecord') {\n        // deleting relationships from included records as they cause ember to go into an inconsistent state\n        payload.included.map(function (includeObj) {\n          delete includeObj.relationships;\n        });\n      }\n      return this._super(store, primaryModelClass, payload, id, requestType);\n    }\n  });\n});","define('clever-sparky-frontend/serializers/ledtest', ['exports', 'clever-sparky-frontend/serializers/application'], function (exports, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _application.default.extend({\n    serialize: function serialize() {\n      var json = this._super.apply(this, arguments);\n\n      json.data.type = 'tests';\n      return json;\n    }\n  });\n});","define('clever-sparky-frontend/serializers/organisation-analytics', ['exports', 'clever-sparky-frontend/serializers/application'], function (exports, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _application.default.extend({\n    modelNameFromPayloadKey: function modelNameFromPayloadKey() {\n      return 'organisation-analytics';\n    }\n  });\n});","define('clever-sparky-frontend/serializers/organisation', ['exports', 'clever-sparky-frontend/serializers/application'], function (exports, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _application.default.extend({\n    normalizeResponse: function normalizeResponse() {\n      var json = this._super.apply(this, arguments);\n\n      return json;\n    }\n  });\n});","define('clever-sparky-frontend/serializers/site', ['exports', 'ember', 'clever-sparky-frontend/serializers/application'], function (exports, _ember, _application) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var isArray = _ember.default.isArray;\n  exports.default = _application.default.extend({\n    normalizeResponse: function normalizeResponse(store, primaryModelClass, payload, id, requestType) {\n      var json = this._super.apply(this, arguments);\n\n      if (requestType === 'findRecord') {\n        json.data.attributes['groupsCount'] = json.data.relationships.groups.data.length;\n      } else if (isArray(json.data)) {\n        json.data.forEach(function (site) {\n          site.attributes['groups-count'] = site.relationships.groups.data.length;\n        });\n      }\n\n      return json;\n    },\n    serialize: function serialize() {\n      var json = this._super.apply(this, arguments);\n\n      // groups count is only used frontend so doesn't need to be persisted\n      delete json.data.attributes['groups-count'];\n\n      if (json.data.relationships && !json.data.relationships['site-owner'].data) {\n        delete json.data.relationships['site-owner'];\n      }\n      return json;\n    }\n  });\n});","define('clever-sparky-frontend/serializers/user', ['exports', 'clever-sparky-frontend/serializers/application', 'ember-data-save-relationships'], function (exports, _application, _emberDataSaveRelationships) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _application.default.extend(_emberDataSaveRelationships.default, {\n    attrs: {\n      organisations: { serialize: true }\n    },\n    datatmp: '',\n    normalizeSaveResponse: function normalizeSaveResponse(store, modelName, obj) {\n      var rels = obj.data.relationships;\n\n      var gettmp = this.get('datatmp');\n      // Guard against null relationships allowd by JSON/api\n      Object.keys(rels).forEach(function (rel) {\n        if (!rel || !rel.data) {\n          delete rels[rel];\n        }\n      });\n\n      obj.data.relationships = rels;\n      if (gettmp.data.attributes.editpage == null) {\n        this.set('datatmp', '');\n        return this._super(store, modelName, obj);\n      } else {\n\n        obj.data.attributes.editpage = null;\n        obj.data.attributes = gettmp.data.attributes;\n        this.set('datatmp', '');\n        return this._super(store, modelName, obj);\n      }\n    },\n\n\n    userInfoFields: ['first-name', 'last-name', 'email', 'phone', 'country', 'state', 'wholesaler-auth-details', 'admin', 'postcode', 'rfn', 'abn', 'qbcc', 'reportphone', 'editpage', 'imgurl', 'signatureurl', 'sigfilename'],\n    passwordFields: ['password', 'password-confirmation', 'current-password'],\n\n    serialize: function serialize(snapshot, options) {\n      var json = this._super(snapshot, options);\n\n      json = this.filterAttributes(snapshot, json);\n      //  if (json.data.attributes.editpage == true){\n\n      this.set('datatmp', json);\n      //  }\n\n      return json;\n    },\n    serializeRelationship: function serializeRelationship(snapshot, data, rel) {\n\n      var relKind = rel.kind;\n      var relKey = rel.key;\n\n      if (this.get('attrs.' + relKey + '.serialize') === true) {\n\n        data.relationships = data.relationships || {};\n        var key = this.keyForRelationship(relKey, relKind, 'serialize');\n        data.relationships[key] = data.relationships[key] || {};\n\n        if (relKind === 'belongsTo') {\n          data.relationships[key].data = this.serializeRecord(snapshot.belongsTo(relKey));\n        }\n\n        if (relKind === 'hasMany') {\n          data.relationships[key].data = {};\n          if (snapshot.hasMany(relKey)) {\n            data.relationships[key].data = snapshot.hasMany(relKey).map(this.serializeRecord);\n          }\n        }\n      }\n    },\n    filterAttributes: function filterAttributes(snapshot, json) {\n      if (!snapshot.record.get('isNew')) {\n        if (snapshot.changedAttributes()['password']) {\n          var gettmp = this.get('datatmp');\n          if (gettmp) {\n            if (gettmp.data.attributes.editpage == true) {\n              json = this.filterUserInfoAttributes(json);\n            } else {\n              json = this.filterPasswordAttributes(json);\n            }\n          } else {\n            json = this.filterPasswordAttributes(json);\n          }\n        } else {\n\n          json = this.filterUserInfoAttributes(json);\n        }\n      }\n      return json;\n    },\n    filterUserInfoAttributes: function filterUserInfoAttributes(json) {\n      var roadblock = this.get('userInfoFields');\n\n      if (json.data.attributes.imgurl === 'https://cleversparkyusermedia.s3.amazonaws.com/') {\n        var filteredItems = roadblock.filter(function (item) {\n          return item !== 'imgurl';\n        });\n        return this.filterAttributesByWhitelist(json, filteredItems);\n      }\n\n      if (json.data.attributes.signatureurl === 'https://cleversparkysignatures.s3.amazonaws.com/') {\n        var _filteredItems = roadblock.filter(function (item) {\n          return item !== 'signatureurl';\n        });\n        return this.filterAttributesByWhitelist(json, _filteredItems);\n      }\n\n      return this.filterAttributesByWhitelist(json, roadblock);\n    },\n    filterPasswordAttributes: function filterPasswordAttributes(json) {\n      return this.filterAttributesByWhitelist(json, this.get('passwordFields'));\n    },\n    filterAttributesByWhitelist: function filterAttributesByWhitelist(json, whitelist) {\n      var attrs = json.data.attributes;\n      for (var key in attrs) {\n        if (!whitelist.includes(key)) {\n          delete attrs[key];\n        }\n      }\n      return json;\n    },\n\n\n    // eslint-disable-next-line no-unused-vars\n    normalizeResponse: function normalizeResponse(store, primaryModelClass, payload, id, requestType) {\n      var json = this._super.apply(this, arguments);\n\n      return json;\n    }\n  });\n});","define('clever-sparky-frontend/services/ajax', ['exports', 'ember-ajax/services/ajax'], function (exports, _ajax) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _ajax.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/batch-create-ledtests', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _type: 'tests',\n\n    _batchCreateMethod: 'POST',\n\n    _batchCreateURL: function _batchCreateURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/tests';\n    },\n    createLedTests: function createLedTests(batch, testAttributes) {\n      var url = this._batchCreateURL();\n      var method = this.get('_batchCreateMethod');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        var testData = {\n          type: type,\n          attributes: {\n            'test-status': testAttributes.testStatus,\n            'test-date': testAttributes.testDate,\n            'run-time': testAttributes.runTime,\n            'next-test-date': testAttributes.nextTestDate,\n            'required-duration': testAttributes.requiredDuration\n          },\n          relationships: {\n            fitting: {\n              data: {\n                type: 'fittings',\n                id: item.get('fitting.id')\n              }\n            }\n          }\n        };\n        data.data.push(testData);\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/batch-delete-fittings', ['exports', 'ember', 'clever-sparky-frontend/services/batch-delete'], function (exports, _ember, _batchDelete) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _batchDelete.default.extend({\n    _groupDeleteURL: ENV.api.host + '/' + ENV.api.namespace + '/fittings',\n\n    _type: 'fittings'\n  });\n});","define('clever-sparky-frontend/services/batch-delete-groups', ['exports', 'ember', 'clever-sparky-frontend/services/batch-delete'], function (exports, _ember, _batchDelete) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _batchDelete.default.extend({\n    _groupDeleteURL: ENV.api.host + '/' + ENV.api.namespace + '/groups',\n\n    _type: 'groups'\n  });\n});","define('clever-sparky-frontend/services/batch-delete-order-items', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _orderItemDeleteURL: ENV.api.host + '/' + ENV.api.namespace + '/order-items',\n\n    _orderItemDeleteMethod: 'DELETE',\n\n    _type: 'order-items',\n\n    deleteBatch: function deleteBatch(batch) {\n      var method = this.get('_orderItemDeleteMethod');\n      var url = this.get('_orderItemDeleteURL');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({\n          type: type,\n          attributes: {\n            'part-type': item.partType\n          },\n          relationships: {\n            fitting: {\n              data: {\n                type: 'fitting',\n                id: item.fitting.get('id')\n              }\n            }\n          }\n        });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/batch-delete-test-events', ['exports', 'ember', 'clever-sparky-frontend/services/batch-delete'], function (exports, _ember, _batchDelete) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _batchDelete.default.extend({\n    _groupDeleteURL: ENV.api.host + '/' + ENV.api.namespace + '/test-events',\n\n    _type: 'test-events'\n  });\n});","define('clever-sparky-frontend/services/batch-delete', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _groupDeleteMethod: 'DELETE',\n\n    deleteBatch: function deleteBatch(batch) {\n      var method = this.get('_groupDeleteMethod');\n      var url = this.get('_groupDeleteURL');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({ type: type, id: item.id });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/batch-handle-test-event-groups', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _type: 'groups',\n\n    _batchAddMethod: 'POST',\n\n    _batchRemoveMethod: 'DELETE',\n\n    _batchActionURL: function _batchActionURL(testEventId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/test-events/' + testEventId + '/relationships/groups';\n    },\n    addGroups: function addGroups(batch, testEventId) {\n      var url = this._batchActionURL(testEventId);\n      var method = this.get('_batchAddMethod');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({ type: type, id: item.id });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    },\n    removeGroups: function removeGroups(batch, testEventId) {\n      var url = this._batchActionURL(testEventId);\n      var method = this.get('_batchRemoveMethod');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({ type: type, id: item.id });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/batch-move-fittings', ['exports', 'ember', 'clever-sparky-frontend/services/batch-move'], function (exports, _ember, _batchMove) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var ENV = _ember.default.ENV;\n  exports.default = _batchMove.default.extend({\n    _groupDeleteURL: function _groupDeleteURL(groupId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/groups/' + groupId + '/relationships/fittings';\n    },\n\n\n    _type: 'fittings'\n  });\n});","define('clever-sparky-frontend/services/batch-move', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _groupDeleteMethod: 'POST',\n\n    moveBatch: function moveBatch(batch, groupId) {\n      var url = this._groupDeleteURL(groupId);\n      var method = this.get('_groupDeleteMethod');\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({ type: type, id: item.id });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/branch', ['exports', 'ember', 'ember-local-storage'], function (exports, _ember, _emberLocalStorage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service;\n  exports.default = Service.extend({\n\n    invite: (0, _emberLocalStorage.storageFor)('invite'),\n\n    setInviteToLocalStorage: function setInviteToLocalStorage() {\n      var branchData = JSON.parse(window.localStorage.branch_session_first).data;\n      var inviteObj = JSON.parse(branchData).invite;\n\n      // eslint-disable-next-line no-console\n      console.log(inviteObj);\n      if (inviteObj) {\n        this.set('invite.id', inviteObj.id);\n        if (inviteObj.token) {\n          this.set('invite.id', inviteObj.id);\n          this.set('invite.token', inviteObj.token);\n        } else {\n          this.set('invite.sitename', inviteObj.sitename);\n          this.set('invite.sitetransfertouser', inviteObj.sitetransfertouser);\n        }\n      }\n    },\n    getInvite: function getInvite() {\n      return this.get('invite');\n    },\n    clearInvite: function clearInvite() {\n      this.get('invite').clear();\n      window.localStorage.removeItem('branch_session_first');\n    },\n    justInvite: function justInvite() {\n      this.get('invite').clear();\n    },\n    justBranchfirst: function justBranchfirst() {\n      window.localStorage.removeItem('branch_session_first');\n    }\n  });\n});","define('clever-sparky-frontend/services/can', ['exports', 'ember-can'], function (exports, _emberCan) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _emberCan.CanService;\n});","define('clever-sparky-frontend/services/cart-checkout', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _checkoutURL: function _checkoutURL(orderId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/orders/' + orderId + '/checkout';\n    },\n\n\n    _checkoutMethod: 'POST',\n\n    _type: 'groups',\n\n    checkout: function checkout(order, batch) {\n      var method = this.get('_checkoutMethod');\n      var url = this._checkoutURL(order.get('id'));\n      var type = this.get('_type');\n\n      var data = {\n        data: []\n      };\n\n      batch.forEach(function (item) {\n        data.data.push({ type: type, id: item.id });\n      });\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/cookies', ['exports', 'ember-cookies/services/cookies'], function (exports, _cookies) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _cookies.default;\n});","define('clever-sparky-frontend/services/download-report', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _downloadMethod: 'POST',\n\n    _downloadURL: function _downloadURL(category) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/reports/' + category;\n    },\n    downloadGroupsReport: function downloadGroupsReport(site, groups, category, reportFormat, cstatebool, cstatement) {\n      var url = this._downloadURL(category);\n      var method = this.get('_downloadMethod');\n\n      var formattedGroupData = groups.map(function (group) {\n        return { id: group.id, type: 'groups' };\n      });\n\n      var data = {\n        data: {\n          type: 'reports',\n          attributes: {\n            'file-format': reportFormat,\n            cstatebool: cstatebool,\n            cstatement: cstatement\n          },\n          relationships: {\n            site: {\n              data: {\n                id: site.id,\n                type: 'sites'\n              }\n            },\n            groups: {\n              data: formattedGroupData\n            }\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    },\n    downloadTestEventReport: function downloadTestEventReport(site, testEvent, category, reportFormat, cstatebool, cstatement) {\n      var url = this._downloadURL(category);\n      var method = this.get('_downloadMethod');\n\n      var data = {\n        data: {\n          type: 'reports',\n          attributes: {\n            'file-format': reportFormat,\n            cstatebool: cstatebool,\n            cstatement: cstatement\n          },\n          relationships: {\n            site: {\n              data: {\n                id: site.id,\n                type: 'sites'\n              }\n            },\n            'test-event': {\n              data: {\n                id: testEvent.id,\n                type: 'test-events'\n              }\n            }\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    },\n    downloadOrderItemsReport: function downloadOrderItemsReport(site, order) {\n      var url = this._downloadURL('order-items');\n      var method = this.get('_downloadMethod');\n\n      var data = {\n        data: {\n          type: 'reports',\n          relationships: {\n            orders: {\n              data: {\n                id: order.id,\n                type: 'orders'\n              }\n            },\n            site: {\n              data: {\n                id: site.id,\n                type: 'sites'\n              }\n            }\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/features', ['exports', 'ember-feature-flags/services/features', 'clever-sparky-frontend/config/environment'], function (exports, _features, _environment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _features.default.extend({\n    config: _environment.default,\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      if (_environment.default.featureFlags) {\n        this.setup(_environment.default.featureFlags);\n      }\n    }\n  });\n});","define('clever-sparky-frontend/services/file-upload', ['exports', 'ember', 'clever-sparky-frontend/uploaders/csv', 'clever-sparky-frontend/mixins/handle-error'], function (exports, _ember, _csv, _handleError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      computed = _ember.default.computed,\n      ENV = _ember.default.ENV,\n      run = _ember.default.run,\n      inject = _ember.default.inject,\n      RSVP = _ember.default.RSVP;\n  exports.default = Service.extend(_handleError.default, {\n    // Services\n\n    session: inject.service('session'),\n\n    // Attributes\n\n    fileName: '',\n\n    uploadErrors: [],\n\n    requestProgress: 0,\n\n    intervalProgress: 0,\n\n    prepareProgress: 0,\n\n    intervalDuration: 15, // ms\n\n    flashDuration: 2500, // ms\n\n    uploadStatus: 'waiting',\n\n    // Properties\n\n    isAborted: computed.equal('uploadStatus', 'aborted'),\n\n    isError: computed.equal('uploadStatus', 'error'),\n\n    isFinished: computed.equal('uploadStatus', 'finished'),\n\n    isProgressFinished: computed.equal('progress', 100),\n\n    isPreparedProgressFinished: computed.equal('prepareProgress', 100),\n\n    progress: computed('requestProgress', 'intervalProgress', 'prepareProgress', function () {\n      var progress = 0;\n\n      if (this.get('prepareProgress') > 0) {\n        progress += this.get('prepareProgress') * 0.2;\n      }\n      if (this.get('requestProgress') > 0) {\n        progress += this.get('requestProgress') * (this.get('intervalProgress') / this.get('requestProgress')) * 0.8;\n      }\n      return progress;\n    }),\n\n    fittingsEndpoint: computed(function () {\n      return ENV.api.host + '/' + ENV.api.namespace + '/fittings-uploads';\n    }),\n\n    // Methods\n    upload: function upload(file, site) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        _this.set('site', site);\n        _this.preparingUpload(file, resolve, reject);\n      });\n    },\n\n\n    /*\n     * uploadSuccessful and uploadFail must be callbacks\n     */\n    preparingUpload: function preparingUpload(file, uploadSuccessful, uploadFail) {\n      this.set('fileName', file.name);\n      this.set('uploadStatus', 'preparing');\n      this.schedulePrepare(file, uploadSuccessful, uploadFail);\n    },\n    schedulePrepare: function schedulePrepare(file, uploadSuccessful, uploadFail) {\n      run.later(this, function () {\n        this.checkUploadReady(file, uploadSuccessful, uploadFail);\n      }, this.get('intervalDuration'));\n    },\n    checkUploadReady: function checkUploadReady(file, uploadSuccessful, uploadFail) {\n      if (this.get('isAborted')) {\n        this.reset();\n      } else if (!this.get('isPreparedProgressFinished')) {\n        this.incrementProperty('prepareProgress');\n        this.schedulePrepare(file, uploadSuccessful, uploadFail);\n      } else {\n        this.uploadFiles(file, uploadSuccessful, uploadFail);\n      }\n    },\n    uploadFiles: function uploadFiles(file, uploadSuccessful, uploadFail) {\n      var _this2 = this;\n\n      var uploader = this.createUploader(this.get('fittingsEndpoint'));\n      uploader.on('progress', function (e) {\n        _this2.set('requestProgress', e.percent);\n      });\n\n      this.set('uploadStatus', 'uploading');\n      this.scheduleIntervalProgress(uploadSuccessful);\n\n      uploader.upload(file, {\n        site: this.get('site'),\n        credentials: this.get('session.data.authenticated.session')\n      }).then(function () {\n        _this2.set('uploadStatus', 'finished');\n\n        if (_this2.get('isProgressFinished')) {\n          window.location.reload(true);\n          uploadSuccessful();\n        }\n      }).catch(function (reason) {\n        _this2.set('uploadStatus', 'error');\n        var errorMessages = reason.responseJSON.errors || reason;\n        uploadFail(errorMessages);\n      });\n    },\n    createUploader: function createUploader(url) {\n      return _csv.default.create({\n        url: url\n      });\n    },\n    scheduleIntervalProgress: function scheduleIntervalProgress(uploadSuccessful) {\n      run.later(this, function () {\n        if (this.get('intervalProgress') < 100) {\n          this.tickInterval(uploadSuccessful);\n        } else if (this.get('isFinished')) {\n          uploadSuccessful();\n        }\n      }, this.get('intervalDuration'));\n    },\n    tickInterval: function tickInterval(uploadSuccessful) {\n      this.set('intervalProgress', this.get('intervalProgress') + 1);\n      this.scheduleIntervalProgress(uploadSuccessful);\n    },\n    reset: function reset() {\n      this.set('fileName', '');\n      this.set('uploadErrors', []);\n      this.set('requestProgress', 0);\n      this.set('prepareProgress', 0);\n      this.set('intervalProgress', 0);\n      this.set('uploadStatus', 'waiting');\n    },\n    cancelUpload: function cancelUpload() {\n      this.set('uploadStatus', 'aborted');\n    }\n  });\n});","define('clever-sparky-frontend/services/fitting-lookup', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV,\n      RSVP = _ember.default.RSVP;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _fittingLookupMethod: 'POST',\n\n    _fittingLookupURL: function _fittingLookupURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/fitting-lookups';\n    },\n    lookupFittingInfo: function lookupFittingInfo(serialNumber) {\n      var _this = this;\n\n      var url = this._fittingLookupURL();\n      var method = this.get('_fittingLookupMethod');\n      var data = {\n        data: {\n          type: 'fitting-lookups',\n          attributes: {\n            serialNumber: serialNumber\n          }\n        }\n      };\n\n      return new RSVP.Promise(function (resolve) {\n        _this.get('requestService').sendAuthenticatedRequest(url, method, data).then(function (result) {\n          var resultObj = {\n            fittingType: result.data.attributes['fitting-type'],\n            description: result.data.attributes['description']\n          };\n          resolve(resultObj);\n        }).catch(function () {});\n      });\n    }\n  });\n});","define('clever-sparky-frontend/services/flash-messages', ['exports', 'ember-cli-flash/services/flash-messages'], function (exports, _flashMessages) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _flashMessages.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/holdvaribles', ['exports'], function (exports) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = Ember.Service;\n  exports.default = Service.extend({\n    CurrentPhotoUploadSignatureBool: undefined,\n    CurrentPhotoUploadDeleteBool: undefined,\n    CurrentViewsetting: undefined,\n    CurrentTestEvent: undefined,\n    CurrentGroup: undefined,\n    allfittingpagebool: undefined,\n    alltestevents: undefined,\n    CurrentSite: undefined,\n    CurrentTemplateSet: undefined,\n    setupCurrentPhotoUploadSignatureBool: function setupCurrentPhotoUploadSignatureBool(trueorfalse) {\n      this.set('CurrentPhotoUploadSignatureBool', trueorfalse);\n    },\n    setupCurrentPhotoUploadDeleteBool: function setupCurrentPhotoUploadDeleteBool(trueorfalse) {\n      this.set('CurrentPhotoUploadDeleteBool', trueorfalse);\n    },\n    setupCurrentViewsetting: function setupCurrentViewsetting(grouporallfitting) {\n      this.set('CurrentViewsetting', grouporallfitting);\n    },\n    setupCurrentTestEvent: function setupCurrentTestEvent(testevent) {\n      this.set('CurrentTestEvent', testevent);\n    },\n    setupHoldSelectedFittingGroup: function setupHoldSelectedFittingGroup(groupid) {\n      this.set('CurrentGroup', groupid);\n    },\n    setupallfittingpagebool: function setupallfittingpagebool(allfittingbool) {\n      this.set('allfittingpagebool', allfittingbool);\n    },\n    setupCurrentSite: function setupCurrentSite(CurrentSitex) {\n      this.set('CurrentSite', CurrentSitex);\n    },\n    setupAllTestEvents: function setupAllTestEvents(testevents) {\n      this.set('alltestevents', testevents);\n    },\n    setupHoldTemplates: function setupHoldTemplates(template) {\n      this.set('CurrentTemplateSet', template);\n    },\n    showCurrentPhotoUploadSignatureBool: function showCurrentPhotoUploadSignatureBool() {\n      return this.get('CurrentPhotoUploadSignatureBool');\n    },\n    showCurrentPhotoUploadDeleteBool: function showCurrentPhotoUploadDeleteBool() {\n      return this.get('CurrentPhotoUploadDeleteBool');\n    },\n    showCurrentViewsetting: function showCurrentViewsetting() {\n      return this.get('CurrentViewsetting');\n    },\n    showCurrentTestEvent: function showCurrentTestEvent() {\n      return this.get('CurrentTestEvent');\n    },\n    showHoldSelectedFittingGroup: function showHoldSelectedFittingGroup() {\n      return this.get('CurrentGroup');\n    },\n    showallfittingpagebool: function showallfittingpagebool() {\n      return this.get('allfittingpagebool');\n    },\n    showCurrentSite: function showCurrentSite() {\n      return this.get('CurrentSite');\n    },\n    showAlltestevents: function showAlltestevents() {\n      return this.get('alltestevents');\n    },\n    showAllTemplates: function showAllTemplates() {\n      return this.get('CurrentTemplateSet');\n    }\n  });\n});","define('clever-sparky-frontend/services/i18n', ['exports', 'ember-i18n/services/i18n'], function (exports, _i18n) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _i18n.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/invite-accept', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _acceptMethod: 'POST',\n\n    _inviteAcceptURL: function _inviteAcceptURL(inviteId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/invites/' + inviteId + '/accept';\n    },\n    accept: function accept(invite, token) {\n      var url = this._inviteAcceptURL(invite.get('id'));\n      var method = this.get('_acceptMethod');\n      var data = {\n        data: {\n          type: 'invites',\n          attributes: {\n            token: token\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/invite-accepttransfer', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _acceptMethod: 'POST',\n\n    _inviteAcceptURL: function _inviteAcceptURL(inviteId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/invitetransfer/' + inviteId + '/accepttransfer';\n    },\n    accepttransfer: function accepttransfer(invite, id, newOwnerId) {\n      var url = this._inviteAcceptURL(id);\n      var method = this.get('_acceptMethod');\n      var newOrgId = newOwnerId;\n      var data = {\n        data: {\n          type: 'invites',\n          attributes: {\n            id: id,\n            newOrgId: newOrgId\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/invite-delete', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _deleteMethod: 'DELETE',\n\n    _inviteDeleteURL: function _inviteDeleteURL(inviteId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/invites/' + inviteId;\n    },\n    delete: function _delete(inviteId) {\n      var url = this._inviteDeleteURL(inviteId);\n      var method = this.get('_deleteMethod');\n      var data = null;\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/media', ['exports', 'ember-responsive/media'], function (exports, _media) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _media.default;\n});","define('clever-sparky-frontend/services/metrics', ['exports', 'ember-metrics/services/metrics'], function (exports, _metrics) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _metrics.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/moment', ['exports', 'ember', 'clever-sparky-frontend/config/environment', 'ember-moment/services/moment'], function (exports, _ember, _environment, _moment) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _moment.default.extend({\n    defaultFormat: _ember.default.get(_environment.default, 'moment.outputFormat')\n  });\n});","define('clever-sparky-frontend/services/power-calendar', ['exports', 'ember-power-calendar/services/power-calendar'], function (exports, _powerCalendar) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _powerCalendar.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/raven', ['exports', 'ember-cli-sentry/services/raven'], function (exports, _raven) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _raven.default.extend({\n\n    unhandledPromiseErrorMessage: '',\n\n    captureException: function captureException() /* error */{\n      this._super.apply(this, arguments);\n    },\n    captureMessage: function captureMessage() /* message */{\n      return this._super.apply(this, arguments);\n    },\n    enableGlobalErrorCatching: function enableGlobalErrorCatching() {\n      return this._super.apply(this, arguments);\n    },\n    ignoreError: function ignoreError() {\n      return this._super();\n    },\n    callRaven: function callRaven() /* methodName, ...optional */{\n      return this._super.apply(this, arguments);\n    }\n  });\n});","define('clever-sparky-frontend/services/reinstate-fitting', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _reinstateMethod: 'POST',\n\n    _reinstateURL: function _reinstateURL(fittingId) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/fittings/' + fittingId + '/reinstate';\n    },\n    reinstate: function reinstate(fitting) {\n      var url = this._reinstateURL(fitting.get('id'));\n      var method = this.get('_reinstateMethod');\n      var data = {};\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/request-password-reset', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      ENV = _ember.default.ENV,\n      inject = _ember.default.inject;\n  exports.default = Service.extend({\n\n    requestService: inject.service('request-service'),\n\n    _requestPasswordResetMethod: 'POST',\n\n    _requestPasswordResetURL: function _requestPasswordResetURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/reset-password';\n    },\n    requestPasswordReset: function requestPasswordReset(email) {\n      var url = this._requestPasswordResetURL();\n      var method = this.get('_requestPasswordResetMethod');\n      var data = {\n        data: {\n          type: 'passwords',\n          attributes: {\n            email: email\n          }\n        }\n      };\n\n      return this.get('requestService').sendRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/request-service', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      RSVP = _ember.default.RSVP,\n      inject = _ember.default.inject,\n      $ = _ember.default.$;\n  exports.default = Service.extend({\n\n    session: inject.service(),\n\n    _contentType: 'application/json',\n\n    sendRequest: function sendRequest(url, method) {\n      var _this = this;\n\n      var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n      var headers = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n      return new RSVP.Promise(function (resolve, reject) {\n        _this._ajax(url, method, data, headers, resolve, reject);\n      });\n    },\n    sendAuthenticatedRequest: function sendAuthenticatedRequest(url, method, data) {\n      var credentials = this.get('session.data.authenticated');\n\n      var headers = {\n        'X-Session-id': credentials.session.session_id,\n        'X-Session-Token': credentials.session.token\n      };\n\n      return this.sendRequest(url, method, data, headers);\n    },\n    onSuccess: function onSuccess(result) {\n      return result;\n    },\n    _ajax: function _ajax(url, method, data, headers, resolve, reject) {\n      var _this2 = this;\n\n      if (this.get('_contentType') === 'application/json') {\n        data = JSON.stringify(data);\n      }\n      return $.ajax({\n        url: url,\n        contentType: this.get('_contentType'),\n        headers: headers,\n        method: method,\n        data: data,\n        success: function success(result) {\n          result = _this2.onSuccess(result);\n          resolve(result);\n        },\n        error: function error(_error) {\n          reject(_error.responseJSON);\n        }\n      });\n    }\n  });\n});","define('clever-sparky-frontend/services/request-site-access', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _requestAccessMethod: 'POST',\n\n    _requestAccessURL: function _requestAccessURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/access-requests';\n    },\n    requestAccess: function requestAccess(site) {\n      var url = this._requestAccessURL();\n      var method = this.get('_requestAccessMethod');\n      var data = {\n        data: {\n          type: 'access-requests',\n          relationships: {\n            site: {\n              data: {\n                type: 'sites',\n                id: site.id\n              }\n            }\n          }\n        }\n      };\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/reset-password', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      ENV = _ember.default.ENV,\n      inject = _ember.default.inject;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _resetPasswordMethod: 'PATCH',\n\n    _resetPasswordURL: function _resetPasswordURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/reset-password';\n    },\n    resetPassword: function resetPassword(token, password, passwordConfirmation) {\n      var url = this._resetPasswordURL();\n      var method = this.get('_resetPasswordMethod');\n      var data = {\n        data: {\n          attributes: {\n            'reset-password-token': token,\n            password: password,\n            passwordConfirmation: passwordConfirmation\n          }\n        }\n      };\n\n      return this.get('requestService').sendRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/reset-tooltip-events', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      ENV = _ember.default.ENV,\n      inject = _ember.default.inject;\n  exports.default = Service.extend({\n    requestService: inject.service('request-service'),\n\n    _resetTooltipEventsMethod: 'POST',\n\n    _resetTooltipEventsURL: function _resetTooltipEventsURL() {\n      return ENV.api.host + '/' + ENV.api.namespace + '/users/me/reset-tooltip-events';\n    },\n    reset: function reset() {\n      var url = this._resetTooltipEventsURL();\n      var method = this.get('_resetTooltipEventsMethod');\n      var data = {};\n\n      return this.get('requestService').sendAuthenticatedRequest(url, method, data);\n    }\n  });\n});","define('clever-sparky-frontend/services/session', ['exports', 'ember', 'ember-simple-auth/services/session'], function (exports, _ember, _session) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      isEmpty = _ember.default.isEmpty,\n      RSVP = _ember.default.RSVP,\n      getOwner = _ember.default.getOwner,\n      ENV = _ember.default.ENV,\n      $ = _ember.default.$;\n  exports.default = _session.default.extend({\n    CurrentOrganisationStr: undefined,\n    isLoggedIn: computed.alias('session.isAuthenticated'),\n\n    createUser: function createUser() {\n      var _this = this;\n\n      // DS.Store.createRecord is a synchronous method, so we wrap it in a\n      // promise to match the other promise-returning methods in this service.\n      return new RSVP.Promise(function (resolve) {\n        resolve(getOwner(_this).lookup('service:store').createRecord('user'));\n      });\n    },\n    findUser: function findUser(userID) {\n      return getOwner(this).lookup('service:store').findRecord('user', userID);\n    },\n\n\n    currentUser: computed('isLoggedIn', 'session.authenticated.session.user_id', function () {\n      var userID = this.get('session.authenticated.session.user_id');\n      var userAlreadyInStore = this.get('isLoggedIn') && !isEmpty(userID);\n\n      return userAlreadyInStore ? this.findUser(userID) : this.createUser();\n    }),\n\n    setupCurrentOrganisation: function setupCurrentOrganisation(organisation) {\n      this.set('CurrentOrganisationStr', organisation);\n    },\n    showCurrentOrganisation: function showCurrentOrganisation() {\n      return this.get('CurrentOrganisationStr');\n    },\n    deleteSessionAndInvalidate: function deleteSessionAndInvalidate() {\n      var _this2 = this;\n\n      var session = this.get('session.authenticated.session');\n\n      var sessionID = session.session_id;\n      var token = session.token;\n\n\n      return this._deleteSession(sessionID, token).then(function () {\n        return _this2.invalidate();\n      });\n    },\n    _deleteSession: function _deleteSession(sessionID, token) {\n      var _this3 = this;\n\n      return new RSVP.Promise(function (resolve, reject) {\n        var url = _this3._deleteSessionURL(sessionID);\n\n        return $.ajax({\n          url: url,\n          method: 'DELETE',\n          headers: {\n            'X-Session-Id': sessionID,\n            'X-Session-Token': token\n          },\n          success: function success() {\n            resolve();\n          },\n          error: function error() {\n            reject();\n          }\n        });\n      });\n    },\n    _deleteSessionURL: function _deleteSessionURL(sessionID) {\n      return ENV.api.host + '/' + ENV.api.namespace + '/sessions/' + sessionID;\n    }\n  });\n});","define('clever-sparky-frontend/services/tour', ['exports', 'ember-shepherd/services/tour'], function (exports, _tour) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _tour.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/tours/base', ['exports', 'ember', 'ember-shepherd/services/tour'], function (exports, _ember, _tour) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      observer = _ember.default.observer,\n      set = _ember.default.set,\n      inject = _ember.default.inject,\n      $ = _ember.default.$;\n  exports.default = _tour.default.extend({\n\n    // services\n\n    i18n: inject.service(),\n\n    // attributes\n\n    defaultElementClasses: 'shepherd shepherd-open shepherd-theme-arrows shepherd-transparent-text shepherd-element shepherd-open sequence-tooltip',\n\n    showCancel: true,\n\n    copyStyles: false,\n\n    highlightClass: 'highlight',\n\n    sequenceElements: [],\n\n    sequenceState: [],\n\n    namePrefix: '',\n\n    isActive: false,\n\n    // button sets\n\n    firstSequenceButtons: [{\n      classes: 'button button-primary',\n      text: 'Next',\n      type: 'next'\n    }],\n\n    middleSequenceButtons: [{\n      classes: 'button button-secondary',\n      text: 'Back',\n      type: 'back'\n    }, {\n      classes: 'button button-primary',\n      text: 'Next',\n      type: 'next'\n    }],\n\n    finalSequenceButtons: [{\n      classes: 'button button-secondary',\n      text: 'Back',\n      type: 'back'\n    }, {\n      classes: 'button button-primary',\n      text: 'Finish',\n      type: 'cancel'\n    }],\n\n    singleSequenceButton: [{\n      classes: 'button button-primary',\n      text: 'Exit',\n      type: 'cancel'\n    }],\n\n    // properties\n\n    hasRenderedSequenceElements: computed('sequenceState.@each.hasRendered', function () {\n      return this.get('sequenceState').isEvery('hasRendered', true);\n    }),\n\n    activeSequenceState: computed('sequenceState.[]', function () {\n      var _this = this;\n\n      return this.get('sequenceState').filter(function (element) {\n        return _this.get('sequenceElements').mapBy('name').includes('' + element.name);\n      });\n    }),\n\n    hasSteps: computed.bool('activeSequenceState.length'),\n\n    // observers\n\n    hasRenderedDidChange: observer('hasRenderedSequenceElements', 'isActive', 'hasSteps', function () {\n      if (this.get('hasRenderedSequenceElements') && this.get('isActive') && this.get('hasSteps')) {\n        this.start();\n      }\n    }).on('init'),\n\n    // methods\n\n    setup: function setup() {\n      this.set('defaults', {\n        classes: this.get('defaultElementClasses'),\n        showCancelLink: this.get('showCancel')\n      });\n      this.set('modal', true);\n\n      var steps = this.createSequence(this.get('sequenceElements'));\n      this.set('steps', steps);\n\n      this.set('isActive', true);\n    },\n    setHasRenderedSequenceElement: function setHasRenderedSequenceElement(elementName) {\n      if (this.get('sequenceState').findBy('name', elementName)) {\n        set(this.get('sequenceState').findBy('name', elementName), 'hasRendered', true);\n      }\n    },\n    resetHasRenderedSequenceElement: function resetHasRenderedSequenceElement(elementName) {\n      if (this.get('hasRenderedSequenceElements') && this.get('isActive')) {\n        // stop tour that launches incorrectly before the sequenceElement hasRendered has been reset\n        this.cancel();\n      }\n      if (this.get('sequenceState').findBy('name', elementName)) {\n        set(this.get('sequenceState').findBy('name', elementName), 'hasRendered', false);\n      }\n    },\n    deactivate: function deactivate() {\n      this.set('isActive', false);\n    },\n    createSequence: function createSequence(elements) {\n      var _this2 = this;\n\n      var sequence = [];\n      var totalElements = elements.length;\n\n      elements.forEach(function (element, index) {\n        sequence.pushObject(_this2.createSequenceElement(element, index, totalElements));\n      });\n\n      return sequence;\n    },\n    createSequenceElement: function createSequenceElement(element, index, totalItems) {\n      var _this3 = this;\n\n      var actionButtons = this.getActionButtons(index + 1, totalItems);\n\n      var name = element.name;\n\n      var attachTo = '.sequence-element-' + name;\n      var position = element.position ? element.position : 'bottom';\n\n      var content = this.createSequenceContent();\n      element.content.forEach(function (text) {\n        content.appendChild(_this3.createSequenceParagraph(text));\n      });\n\n      if (totalItems > 1) {\n        var sequenceProgress = this.createSequenceProgress(index, totalItems);\n        content.appendChild(sequenceProgress);\n      }\n\n      var sequenceElement = {\n        id: this.get('namePrefix') + '-' + name,\n        options: {\n          attachTo: {\n            element: attachTo,\n            on: position\n          },\n          builtInButtons: actionButtons,\n          text: content\n        }\n      };\n\n      var tourPrefixNames = ['user-dropdown-menu', 'user-dropdown-menu-technician', 'view-site', 'view-site-technician', 'view-group', 'view-test-event-group', 'view-fitting', 'view-users', 'view-fitting-panel', 'test-event-dropdown-menu'];\n      if (tourPrefixNames.includes(this.get('namePrefix'))) {\n        if (!(name === 'new-user-action')) {\n          sequenceElement.options.highlightClass = 'highlight';\n          sequenceElement.options.copyStyles = true;\n        }\n      }\n\n      if (totalItems === index + 1) {\n        sequenceElement.options.when = {\n          hide: function hide() {\n            _this3.set('isActive', false);\n          }\n        };\n\n        if (this.get('namePrefix') === 'user-dropdown-menu' || this.get('namePrefix') === 'user-dropdown-menu-technician') {\n          sequenceElement.options.when = {\n            hide: function hide() {\n              _this3.set('isActive', false);\n              setTimeout(function () {\n                // keep the dropdown menu open after tour completes\n                $('.user-account-dropdown-menu .dropdown-menu-trigger').click();\n              }, 10);\n            }\n          };\n        }\n\n        if (this.get('namePrefix') === 'test-event-dropdown-menu') {\n          sequenceElement.options.when = {\n            hide: function hide() {\n              _this3.set('isActive', false);\n              setTimeout(function () {\n                // keep the dropdown menu open after tour completes\n                $('.test-event-group-dropdown-menu .dropdown-menu-trigger').click();\n              }, 10);\n            }\n          };\n        }\n      }\n\n      return sequenceElement;\n    },\n    createSequenceContent: function createSequenceContent() {\n      return document.createElement('div');\n    },\n    createSequenceParagraph: function createSequenceParagraph(text) {\n      var paragraph = document.createElement('p');\n      var textNode = document.createTextNode(text);\n      paragraph.appendChild(textNode);\n\n      return paragraph;\n    },\n    createSequenceProgress: function createSequenceProgress(index, totalItems) {\n      var sequenceProgress = document.createElement('div');\n      sequenceProgress.className = 'sequence-progress';\n\n      var sequenceProgressItem = null;\n\n      for (var i = 0; i < totalItems; i++) {\n        sequenceProgressItem = document.createElement('div');\n\n        if (i === index) {\n          sequenceProgressItem.className = 'sequence-progress-item active';\n        } else {\n          sequenceProgressItem.className = 'sequence-progress-item';\n        }\n\n        sequenceProgress.appendChild(sequenceProgressItem);\n      }\n\n      return sequenceProgress;\n    },\n    getActionButtons: function getActionButtons(currentItem, totalItems) {\n      if (totalItems === 1) {\n        return this.get('singleSequenceButton');\n      } else if (currentItem === totalItems) {\n        return this.get('finalSequenceButtons');\n      } else if (currentItem === 1) {\n        return this.get('firstSequenceButtons');\n      } else {\n        return this.get('middleSequenceButtons');\n      }\n    }\n  });\n});","define('clever-sparky-frontend/services/tours/post-onboarding-technician', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n    // Attributes\n\n    namePrefix: 'post-onboarding-technician',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'sites-table',\n      hasRendered: false\n    }, {\n      name: 'new-site-action',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'sites-table',\n        content: [this.get('i18n').t('tour.post-onboarding.sites-table')]\n      }, {\n        name: 'new-site-action',\n        content: [this.get('i18n').t('tour.post-onboarding.new-site-action')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/post-onboarding', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = _base.default.extend({\n\n    // Services\n    features: inject.service(),\n\n    // Attributes\n\n    namePrefix: 'post-onboarding',\n\n    // properties\n\n    isAnalyticsEnabled: computed(function () {\n      return this.get('features').isEnabled('analytics');\n    }),\n\n    // sequence elements\n\n    sequenceState: computed('isAnalyticsEnabled', function () {\n      var state = [{\n        name: 'sites-table',\n        hasRendered: false\n      }, {\n        name: 'new-site-action',\n        hasRendered: false\n      }, {\n        name: 'users-nav-item',\n        hasRendered: false\n      }];\n      if (this.get('isAnalyticsEnabled')) {\n        state.pushObject({\n          name: 'analytics-nav-item',\n          hasRendered: false\n        });\n      }\n\n      return state;\n    }),\n\n    sequenceElements: computed('isAnalyticsEnabled', function () {\n      var elements = [{\n        name: 'sites-table',\n        content: [this.get('i18n').t('tour.post-onboarding.sites-table')]\n      }, {\n        name: 'new-site-action',\n        content: [this.get('i18n').t('tour.post-onboarding.new-site-action')]\n      }, {\n        name: 'users-nav-item',\n        content: [this.get('i18n').t('tour.post-onboarding.users-nav-item')]\n      }];\n      if (this.get('isAnalyticsEnabled')) {\n        elements.pushObject({\n          name: 'analytics-nav-item',\n          content: [this.get('i18n').t('tour.post-onboarding.analytics-nav-item')]\n        });\n      }\n\n      return elements;\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/test-event-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'test-event-dropdown-menu',\n    // sequence elements\n\n    sequenceState: [{\n      name: 'duplicate-action',\n      hasRendered: false\n    }, {\n      name: 'archive-action',\n      hasRendered: false\n    }, {\n      name: 'add-groups-action',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'duplicate-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.test-event-dropdown-menu.duplicate-action')]\n      }, {\n        name: 'archive-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.test-event-dropdown-menu.archive-action')]\n      }, {\n        name: 'add-groups-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.test-event-dropdown-menu.add-groups-action')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/user-dropdown-menu-technician', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'user-dropdown-menu-technician',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'create-business',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'create-business',\n        position: 'left',\n        content: [this.get('i18n').t('tour.user-dropdown-menu.create-business')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/user-dropdown-menu', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'user-dropdown-menu',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'create-business',\n      hasRendered: false\n    }, {\n      name: 'update-business',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'create-business',\n        position: 'left',\n        content: [this.get('i18n').t('tour.user-dropdown-menu.create-business')]\n      }, {\n        name: 'update-business',\n        position: 'left',\n        content: [this.get('i18n').t('tour.user-dropdown-menu.update-business')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-fitting-panel', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-fitting-panel',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'fitting-info-tab',\n      hasRendered: false\n    }, {\n      name: 'test-tab',\n      hasRendered: false\n    }, {\n      name: 'maintenance-tab',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'fitting-info-tab',\n        content: [this.get('i18n').t('tour.view-fitting-panel.fitting-info-tab')]\n      }, {\n        name: 'test-tab',\n        content: [this.get('i18n').t('tour.view-fitting-panel.test-tab')]\n      }, {\n        name: 'maintenance-tab',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-fitting-panel.maintenance-tab')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-fitting', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-fitting',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'click-fitting-action',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'click-fitting-action',\n        content: [this.get('i18n').t('tour.view-fitting.click-fitting-action')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-group', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-group',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'commissioned-filter',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'commissioned-filter',\n        content: [this.get('i18n').t('tour.view-group.commissioned-filter')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-restricted-sites', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // attributes\n\n    namePrefix: 'view-restricted-sites',\n\n    sequenceState: [{\n      name: 'request-access',\n      hasRendered: false\n    }],\n\n    // sequence elements\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'request-access',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-restricted-sites.request-access')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-site-technician', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = _base.default.extend({\n\n    // Services\n    features: inject.service(),\n\n    // Attributes\n\n    namePrefix: 'view-site-technician',\n\n    // properties\n\n    isTestEventsEnabled: computed(function () {\n      return this.get('features').isEnabled('test-events');\n    }),\n\n    // sequence elements\n\n    sequenceState: computed('isTestEventsEnabled', function () {\n      var state = [{\n        name: 'groups-tab',\n        hasRendered: false\n      }];\n\n      if (this.get('isTestEventsEnabled')) {\n        state.pushObject({\n          name: 'test-events-tab',\n          hasRendered: false\n        });\n      }\n\n      state.pushObjects([{\n        name: 'faults-tab',\n        hasRendered: false\n      }, {\n        name: 'site-details-tab',\n        hasRendered: false\n      }, {\n        name: 'csv-download-template-action',\n        hasRendered: false\n      }, {\n        name: 'report-action',\n        hasRendered: false\n      }]);\n\n      return state;\n    }),\n\n    sequenceElements: computed('isTestEventsEnabled', function () {\n      var elements = [{\n        name: 'groups-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.groups-tab')]\n      }];\n\n      if (this.get('isTestEventsEnabled')) {\n        elements.pushObject({\n          name: 'test-events-tab',\n          position: 'right',\n          content: [this.get('i18n').t('tour.view-site.test-events-tab')]\n        });\n      }\n\n      elements.pushObjects([{\n        name: 'faults-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.faults-tab')]\n      }, {\n        name: 'site-details-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site-technician.site-details-tab')]\n      }, {\n        name: 'csv-download-template-action',\n        content: [this.get('i18n').t('tour.view-site.csv-download-template-action')]\n      }, {\n        name: 'report-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-site.report-action')]\n      }]);\n\n      return elements;\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-site', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed,\n      inject = _ember.default.inject;\n  exports.default = _base.default.extend({\n\n    // Services\n    features: inject.service(),\n\n    // Attributes\n\n    namePrefix: 'view-site',\n\n    // properties\n\n    isTestEventsEnabled: computed(function () {\n      return this.get('features').isEnabled('test-events');\n    }),\n\n    // sequence elements\n\n    sequenceState: computed('isTestEventsEnabled', function () {\n      var state = [{\n        name: 'groups-tab',\n        hasRendered: false\n      }];\n\n      if (this.get('isTestEventsEnabled')) {\n        state.pushObject({\n          name: 'test-events-tab',\n          hasRendered: false\n        });\n      }\n\n      state.pushObjects([{\n        name: 'faults-tab',\n        hasRendered: false\n      }, {\n        name: 'deleted-fittings-tab',\n        hasRendered: false\n      }, {\n        name: 'site-details-tab',\n        hasRendered: false\n      }, {\n        name: 'csv-download-template-action',\n        hasRendered: false\n      }, {\n        name: 'report-action',\n        hasRendered: false\n      }]);\n\n      return state;\n    }),\n\n    sequenceElements: computed('isTestEventsEnabled', function () {\n      var elements = [{\n        name: 'groups-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.groups-tab')]\n      }];\n\n      if (this.get('isTestEventsEnabled')) {\n        elements.pushObject({\n          name: 'test-events-tab',\n          position: 'right',\n          content: [this.get('i18n').t('tour.view-site.test-events-tab')]\n        });\n      }\n\n      elements.pushObjects([{\n        name: 'faults-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.faults-tab')]\n      }, {\n        name: 'deleted-fittings-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.deleted-fittings-tab')]\n      }, {\n        name: 'site-details-tab',\n        position: 'right',\n        content: [this.get('i18n').t('tour.view-site.site-details-tab')]\n      }, {\n        name: 'csv-download-template-action',\n        content: [this.get('i18n').t('tour.view-site.csv-download-template-action')]\n      }, {\n        name: 'report-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-site.report-action')]\n      }]);\n\n      return elements;\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-test-event-group', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-test-event-group',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'collected-filter',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'collected-filter',\n        content: [this.get('i18n').t('tour.view-test-event-group.collected-filter')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-user-details', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-user-details',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'invite-to-sites',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'invite-to-sites',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-user-details.invite-to-sites')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/tours/view-users', ['exports', 'ember', 'clever-sparky-frontend/services/tours/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var computed = _ember.default.computed;\n  exports.default = _base.default.extend({\n\n    // Attributes\n\n    namePrefix: 'view-users',\n\n    // sequence elements\n\n    sequenceState: [{\n      name: 'new-user-action',\n      hasRendered: false\n    }, {\n      name: 'select-user-type',\n      hasRendered: false\n    }],\n\n    sequenceElements: computed(function () {\n      return [{\n        name: 'new-user-action',\n        position: 'left',\n        content: [this.get('i18n').t('tour.view-users.new-user-action')]\n      }, {\n        name: 'select-user-type',\n        content: [this.get('i18n').t('tour.view-users.select-user-type')]\n      }];\n    })\n\n  });\n});","define('clever-sparky-frontend/services/user-agent', ['exports', 'ember-useragent/services/user-agent'], function (exports, _userAgent) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _userAgent.default;\n    }\n  });\n});","define('clever-sparky-frontend/services/wholesaler-auth', ['exports', 'ember', 'clever-sparky-frontend/services/request-service'], function (exports, _ember, _requestService) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var $ = _ember.default.$;\n  exports.default = _requestService.default.extend({\n\n    _contentType: 'application/x-www-form-urlencoded;charset=UTF-8',\n\n    _method: 'POST',\n\n    onSuccess: function onSuccess(result) {\n      var resultObj = {};\n      for (var key in result) {\n        var dasherizedKey = key.toString().dasherize();\n        resultObj[dasherizedKey] = result[key];\n      }\n      return resultObj;\n    },\n    sendWholesalerAuthRequest: function sendWholesalerAuthRequest(wholesaler, credentials) {\n      var wholesalerAuthResource = wholesaler.get('wholesalerAuthResource');\n      var url = wholesalerAuthResource.get('authUrl');\n      var method = this.get('_method');\n      var headers = {\n        'Authorization': 'Basic ' + wholesalerAuthResource.get('authToken')\n      };\n      var username = credentials.username,\n          password = credentials.password;\n\n      var data = $.param({\n        username: username,\n        password: password,\n        'grant_type': 'password'\n      });\n      return this.sendRequest(url, method, data, headers);\n    }\n  });\n});","define('clever-sparky-frontend/session-stores/application', ['exports', 'ember-simple-auth/session-stores/adaptive'], function (exports, _adaptive) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = _adaptive.default.extend();\n});","define('clever-sparky-frontend/signed-request/service', ['exports', 'ember'], function (exports, _ember) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var Service = _ember.default.Service,\n      inject = _ember.default.inject,\n      ENV = _ember.default.ENV,\n      RSVP = _ember.default.RSVP;\n  exports.default = Service.extend({\n    holdvaribles: inject.service('holdvaribles'),\n    ajax: _ember.default.inject.service(),\n    session: inject.service('session'),\n    _fittingLookupMethod: 'POST',\n    getUrl: function getUrl(fileName, fileType) {\n      var _this = this;\n\n      return new RSVP.Promise(function (resolve) {\n\n        var url = ENV.api.host + '/api/v1/signed_request';\n\n        var bucketbool = _this.get('holdvaribles').showCurrentPhotoUploadSignatureBool();\n        var yesorno = _this.get('holdvaribles').showCurrentPhotoUploadDeleteBool();\n\n        var userid = _this.get('session.session.content.authenticated.session.user_id');\n\n        var tmpvar = '';\n        if (bucketbool) {\n          tmpvar = 'signature';\n        } else {\n          tmpvar = 'logo';\n        }\n\n        _this.get('ajax').post(url, { method: 'POST', data: { deletefile: yesorno, userid: userid, file: fileName, type: fileType, bucket: tmpvar } }).then(function (response) {\n          // `response` is the data from the server\n\n          return response;\n        }).catch(function (error) {\n          resolve(error);\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/storages/current-organisation', ['exports', 'ember-local-storage/local/object'], function (exports, _object) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n\n  var Storage = _object.default.extend();\n\n  Storage.reopenClass({\n    initialState: function initialState() {\n      return {\n        id: null\n      };\n    }\n  });\n\n  exports.default = Storage;\n});","define('clever-sparky-frontend/storages/invite', ['exports', 'ember-local-storage/local/object'], function (exports, _object) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n\n  var Storage = _object.default.extend();\n\n  Storage.reopenClass({\n    initialState: function initialState() {\n      return {\n        id: null,\n        token: null\n      };\n    }\n  });\n\n  exports.default = Storage;\n});","define('clever-sparky-frontend/storages/site', ['exports', 'ember-local-storage/local/object'], function (exports, _object) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n\n  var Storage = _object.default.extend();\n\n  Storage.reopenClass({\n    initialState: function initialState() {\n      return {\n        site: null\n      };\n    }\n  });\n\n  exports.default = Storage;\n});","define('clever-sparky-frontend/storages/test-event', ['exports', 'ember-local-storage/local/object'], function (exports, _object) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n\n  var Storage = _object.default.extend();\n\n  Storage.reopenClass({\n    initialState: function initialState() {\n      return {\n        testevent: null,\n        id: null\n      };\n    }\n  });\n\n  exports.default = Storage;\n});","define(\"clever-sparky-frontend/templates/analytics\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"bWUYHw1G\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"analytics-page\\\"],[15,\\\"class\\\",\\\"page main-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"Analytics\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"note\\\"],[13],[0,\\\"\\\\n    These graphs only show data for the sites you have access to.\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"metric-chart\\\"],null,[[\\\"metric\\\",\\\"color\\\",\\\"metricValue\\\",\\\"chartData\\\"],[\\\"Total Fittings\\\",\\\"green\\\",[28,[\\\"organisationAnalytics\\\",\\\"fittingsCount\\\"]],[28,[\\\"fittingsCountData\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"metric-chart\\\"],null,[[\\\"metric\\\",\\\"color\\\",\\\"metricValue\\\",\\\"chartData\\\"],[\\\"Total Faults\\\",\\\"red\\\",[28,[\\\"organisationAnalytics\\\",\\\"faultyFittingsCount\\\"]],[28,[\\\"faultyFittingsCountData\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"metric-chart\\\"],null,[[\\\"metric\\\",\\\"color\\\",\\\"metricValue\\\",\\\"chartData\\\"],[\\\"Upcoming Tests\\\",\\\"blue\\\",[28,[\\\"organisationAnalytics\\\",\\\"upcomingTestsCount\\\"]],[28,[\\\"upcomingTestsCountData\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/analytics.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/application\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"gZq0wOxk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"flash\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"flashMessages\\\",\\\"queue\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"flash-message\\\"],null,[[\\\"flash\\\"],[[28,[\\\"flash\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"flash\\\"]},null],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showScreenSizeWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"screen-too-small auth-page\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"cleversparky-logo\\\"],[15,\\\"alt\\\",\\\"CleverSparky logo\\\"],[15,\\\"src\\\",\\\"/assets/images/white-logo.svg\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"To ensure you have the best possible experience, the CleverSparky Web App can only be used on devices with screens of 10 inches or more. If you are using a screen that meets this criteria and seeing this warning please check if your screen or web  browser has been zoomed.\\\\n      On mobile platforms please use the iOS and Android mobile Apps.\\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"https://itunes.apple.com/au/app/cleversparky/id1244793358?mt=8\\\"],[13],[0,\\\"Click here: iOS App\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"https://play.google.com/store/apps/details?id=au.com.clevertronics.cleverysparky\\\"],[13],[0,\\\"Click here: Android App\\\"],[14],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Sorry for the inconvenience.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"Maintenance\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"screen-too-small auth-page\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"cleversparky-logo\\\"],[15,\\\"alt\\\",\\\"CleverSparky logo\\\"],[15,\\\"src\\\",\\\"/assets/images/white-logo.svg\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"h3\\\",[]],[13],[0,\\\"Maintenance\\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Cleversparky is currently under scheduled maintenance.\\\"],[14],[0,\\\"\\\\n\\\\n\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Sorry for the inconvenience. We expect to be back online by 12:00am 13/12/2020\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showNavBar\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"nav-bar\\\"],null,[[\\\"currentUser\\\",\\\"currentEmployment\\\",\\\"currentOrganisation\\\",\\\"openSwitchAccountModal\\\",\\\"transitionAction\\\",\\\"resetTooltips\\\"],[[28,[\\\"currentUser\\\"]],[28,[\\\"currentEmployment\\\"]],[28,[\\\"currentOrganisation\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"openSwitchAccountModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"transitionAction\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"resetTooltips\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displaySwitchAccountModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"switch-account-modal\\\"],null,[[\\\"model\\\",\\\"selectedAccount\\\",\\\"displayOrganisations\\\",\\\"hasJustLoggedIn\\\",\\\"didValidate\\\",\\\"closeSwitchAccountModal\\\",\\\"setCurrentOrganisation\\\"],[[28,[null]],[28,[\\\"selectedAccount\\\"]],[28,[\\\"displayOrganisations\\\"]],[28,[\\\"hasJustLoggedIn\\\"]],[28,[\\\"didValidate\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeSwitchAccountModal\\\"],null],[33,[\\\"route-action\\\"],[\\\"setCurrentOrganisation\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/application.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/change-password\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"r6YD4shT\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"change-password\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/change-password.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/change-password/index\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"bJHP3dTZ\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/change-password-form\\\"],null,[[\\\"user\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"user\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/change-password/index.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/change-password/success\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Rjq+wHUT\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"change-password-success\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/success-tick.svg\\\"],[15,\\\"alt\\\",\\\"Success tick\\\"],[13],[14],[0,\\\"\\\\n  \\\"],[11,\\\"h3\\\",[]],[15,\\\"class\\\",\\\"success-text\\\"],[13],[0,\\\"Success!\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"subheading\\\"],[13],[0,\\\"Your password has been successfully changed. \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],[[\\\"tagName\\\",\\\"class\\\"],[\\\"button\\\",\\\"button large green\\\"]],{\\\"statements\\\":[[0,\\\"    Back to Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/change-password/success.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/auth-validated-input\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"y/MpJ+Vf\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"input\\\"],[[33,[\\\"-input-type\\\"],[[28,[\\\"type\\\"]]],null]],[[\\\"type\\\",\\\"value\\\",\\\"placeholder\\\",\\\"autocomplete\\\",\\\"class\\\",\\\"name\\\"],[[28,[\\\"type\\\"]],[28,[\\\"value\\\"]],[28,[\\\"placeholder\\\"]],\\\"off\\\",[33,[\\\"concat\\\"],[[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isValid\\\"]],\\\"valid\\\"],null]],null],[28,[\\\"name\\\"]]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showPasswordToggle\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"password-toggle\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleShowPassword\\\"]],[13],[1,[26,[\\\"showPasswordText\\\"]],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isValid\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"valid-input fa fa-check\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/auth-validated-input.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/batch-delete-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"0Lt/L7GM\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],[28,[\\\"uppercaseBatchName\\\"]]],null],false],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeBatchConfirmationModal\\\"]]]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"confirmation-message\\\"],[13],[18,\\\"default\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard red confirm-action\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"confirmBatchDelete\\\",[28,[\\\"batch\\\"]]]],[13],[0,\\\"\\\\n      Delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],[28,[\\\"uppercaseBatchName\\\"]]],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/batch-delete-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/batch-delete-error\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"oqxfp9v7\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],[28,[\\\"uppercaseBatchName\\\"]]],null],false],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeBatchErrorModal\\\"]]]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[18,\\\"default\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeBatchErrorModal\\\"]]]],[13],[0,\\\"\\\\n      OK\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/batch-delete-error.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/batch-move-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"lVoK8ljp\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"Fitting\\\"],null],false],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeBatchConfirmationModal\\\"]]]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"confirmation-message\\\"],[13],[18,\\\"default\\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"selectedGroup\\\",[28,[\\\"groupOptions\\\"]],[28,[\\\"selectedGroup\\\"]],[28,[\\\"didValidate\\\"]],\\\"Group\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit confirm-action\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"confirmBatchMove\\\",[28,[\\\"batch\\\"]]]],[13],[0,\\\"\\\\n      Move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"Fitting\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/batch-move-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/checkout-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"9Iilx7NH\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Check Out\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"\\\\n      Are you sure you want to check out \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"group\\\"],null],false],[0,\\\"? When you click 'Check Out' you will leave the CleverSparky app.\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[0,\\\"\\\\n      Cancel\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"checkout\\\",[28,[\\\"batch\\\"]]]],[13],[0,\\\"\\\\n      Check Out\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/checkout-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/create-test-event-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"D6noutjc\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"id\\\"],[\\\"test-event-modal\\\"]],{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"if\\\"],[[28,[\\\"isShowingTestEventForm\\\"]],\\\"Add Logbook\\\",\\\"Set Logbook Template\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"modal-content \\\",[33,[\\\"if\\\"],[[28,[\\\"isShowingTestEventForm\\\"]],\\\"test-event-details\\\"],null]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShowingTestEventForm\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"forms/test-event-form\\\"],null,[[\\\"testEvent\\\",\\\"submit\\\"],[[28,[\\\"testEvent\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"submitTestEventDetails\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"forms/quick-test-defaults-form\\\"],null,[[\\\"testEvent\\\",\\\"submit\\\",\\\"isQueryPending\\\",\\\"isCreatingTestEvent\\\"],[[28,[\\\"testEvent\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"submitQuickTestDefaults\\\"],null],[28,[\\\"isQueryPending\\\"]],true]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/create-test-event-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/date-picker\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"RCJS2gLK\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"input\\\"],[[33,[\\\"-input-type\\\"],[[28,[\\\"type\\\"]]],null]],[[\\\"class\\\",\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"autocomplete\\\",\\\"click\\\"],[\\\"date-picker-input\\\",[28,[\\\"type\\\"]],[28,[\\\"value\\\"]],[28,[\\\"name\\\"]],[28,[\\\"disabled\\\"]],\\\"off\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"open\\\"],null]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"tetherModal\\\",\\\"overlayColor\\\",\\\"closeOnOverlayClick\\\",\\\"closeModal\\\"],[true,\\\"white\\\",true,[33,[\\\"action\\\"],[[28,[null]],\\\"close\\\"],null]]],{\\\"statements\\\":[[6,[\\\"ember-tether\\\"],null,[[\\\"target\\\",\\\"targetAttachment\\\",\\\"attachment\\\",\\\"class\\\"],[[28,[\\\"targetToAttach\\\"]],[28,[\\\"targetAttachmentPosition\\\"]],[28,[\\\"calendarAttachmentPosition\\\"]],\\\"calendar-container\\\"]],{\\\"statements\\\":[[6,[\\\"power-calendar\\\"],null,[[\\\"center\\\",\\\"onCenterChange\\\",\\\"selected\\\",\\\"onSelect\\\"],[[28,[\\\"center\\\"]],[33,[\\\"action\\\"],[[28,[null]],[33,[\\\"mut\\\"],[[28,[\\\"center\\\"]]],null]],[[\\\"value\\\"],[\\\"date\\\"]]],[28,[\\\"value\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"dateSelected\\\"],null]]],{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"nav\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-nav\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShowingDays\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"month-row control-row\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-control\\\"],[16,\\\"onclick\\\",[33,[\\\"action\\\"],[[28,[null]],[28,[\\\"calendar\\\",\\\"actions\\\",\\\"moveCenter\\\"]],-1,\\\"month\\\"],null],null],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-left.svg\\\"],[15,\\\"class\\\",\\\"icon-left-arrow\\\"],[15,\\\"alt\\\",\\\"left arrow\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-nav-title toggle-months\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showMonths\\\"]],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"moment-format\\\"],[[28,[\\\"calendar\\\",\\\"center\\\"]],\\\"MMMM YYYY\\\"],null],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-control\\\"],[16,\\\"onclick\\\",[33,[\\\"action\\\"],[[28,[null]],[28,[\\\"calendar\\\",\\\"actions\\\",\\\"moveCenter\\\"]],1,\\\"month\\\"],null],null],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-right-arrow\\\"],[15,\\\"alt\\\",\\\"right arrow\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"year-row control-row\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-control\\\"],[16,\\\"onclick\\\",[33,[\\\"action\\\"],[[28,[null]],[28,[\\\"calendar\\\",\\\"actions\\\",\\\"moveCenter\\\"]],-12,\\\"month\\\"],null],null],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-left.svg\\\"],[15,\\\"class\\\",\\\"icon-left-arrow\\\"],[15,\\\"alt\\\",\\\"left arrow\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-nav-title\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"moment-format\\\"],[[28,[\\\"calendar\\\",\\\"center\\\"]],\\\"YYYY\\\"],null],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-control\\\"],[16,\\\"onclick\\\",[33,[\\\"action\\\"],[[28,[null]],[28,[\\\"calendar\\\",\\\"actions\\\",\\\"moveCenter\\\"]],12,\\\"month\\\"],null],null],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-right-arrow\\\"],[15,\\\"alt\\\",\\\"right arrow\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShowingDays\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[1,[33,[\\\"component\\\"],[[28,[\\\"calendar\\\",\\\"days\\\"]]],[[\\\"showDaysAround\\\",\\\"minDate\\\",\\\"maxDate\\\"],[false,[28,[\\\"minDate\\\"]],[28,[\\\"maxDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-months\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-day-grid months\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"monthGrid\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-row ember-power-calendar-week\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"monthRow\\\"]]],null,{\\\"statements\\\":[[0,\\\"                    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"ember-power-calendar-month\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"monthSelected\\\",[28,[\\\"calendar\\\"]],[28,[\\\"center\\\"]],[28,[\\\"monthObj\\\"]]]],[13],[0,\\\"\\\\n                      \\\"],[1,[28,[\\\"monthObj\\\",\\\"label\\\"]],false],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"monthObj\\\"]},null],[0,\\\"                \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"monthRow\\\"]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[\\\"calendar\\\"]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/date-picker.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/delete-account-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Jw2RL/kO\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"delete-account-modal\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Account\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeDeleteAccountModal\\\"]]]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Are you sure you want to delete your account? Deleting can’t be undone.\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red add-group-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteAccount\\\",[28,[\\\"account\\\"]]]],[13],[0,\\\"\\\\n          Delete Account\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/delete-account-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/deleted-fitting-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"mt8DSVzr\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"deleted-fitting-table\\\"],[15,\\\"class\\\",\\\"table fitting-table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"deletedFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[5,[\\\"action\\\"],[[28,[null]],\\\"showFitting\\\",[28,[\\\"fitting\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"fitting\\\",\\\"rowLabel\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"fitting\\\",\\\"faulty\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"fitting\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-no-faults.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        There are no deleted fittings for this site.\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"deletedFittings\\\"]],\\\"Deleted fittings\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/deleted-fitting-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/disabled-form-input\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"K82gis4O\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"disabled-form-input\\\"],[15,\\\"class\\\",\\\"input focused\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"autocomplete\\\",\\\"disabled\\\"],[\\\"text\\\",[28,[\\\"value\\\"]],[28,[\\\"name\\\"]],\\\"off\\\",\\\"disabled\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/disabled-form-input.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"9m3HqmUF\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu user-account-dropdown-menu\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[1,[26,[\\\"triggerContent\\\"]],false],[0,\\\" \\\"],[11,\\\"img\\\",[]],[15,\\\"alt\\\",\\\"arrow-down-white\\\"],[15,\\\"src\\\",\\\"/assets/icons/arrow-down-white.svg\\\"],[15,\\\"class\\\",\\\"dropdown-arrow-white\\\"],[13],[14],[0,\\\" \\\"],[11,\\\"img\\\",[]],[15,\\\"alt\\\",\\\"arrow-down-pale-blue\\\"],[15,\\\"src\\\",\\\"/assets/icons/arrow-down-pale-blue.svg\\\"],[15,\\\"class\\\",\\\"dropdown-arrow-pale-blue\\\"],[13],[14],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item switch-account\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"openSwitchAccountModal\\\"]],[13],[0,\\\"\\\\n        Switch Account\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item edit-profile\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"edit.profile\\\"]],[13],[0,\\\"\\\\n        Edit My Profile\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item change-password\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"change-password\\\"]],[13],[0,\\\"\\\\n        Change Password\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item terms\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"terms\\\"]],[13],[0,\\\"\\\\n        Terms and Conditions\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"modify business-profile\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"updateBusiness\\\",[28,[\\\"dropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item edit-organisation\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"edit.organisation\\\"]],[13],[0,\\\"\\\\n            Update Business Details\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"createBusiness\\\",[28,[\\\"dropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item new-organisation\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"new-organisation\\\"]],[13],[0,\\\"\\\\n          Create New Business\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item support\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"support\\\"]],[13],[0,\\\"\\\\n        Support\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isGuidedTourEnabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item reset-tooltips\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"resetTooltips\\\"]],[13],[0,\\\"\\\\n          Reset Tooltips\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"link-to\\\"],[\\\"logout\\\"],[[\\\"class\\\"],[\\\"dropdown-menu-list-item logout\\\"]],{\\\"statements\\\":[[0,\\\"        Log Out\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/employment-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"aXVTkv4J\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"employment-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"user column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            User\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"userType column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            User Type\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"employments\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"employment\\\",\\\"user\\\"]],\\\"userRow\\\"],null]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"column user \\\",[33,[\\\"if\\\"],[[28,[\\\"employment\\\",\\\"user\\\"]],\\\"fullName\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"showUserDetail\\\",[28,[\\\"employment\\\"]]]],[13],[1,[33,[\\\"if\\\"],[[28,[\\\"employment\\\",\\\"user\\\"]],[28,[\\\"employment\\\",\\\"user\\\",\\\"fullName\\\"]],[28,[\\\"employment\\\",\\\"invite\\\",\\\"email\\\"]]],null],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column userType\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"selectUserType\\\",[28,[\\\"viewUsersTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"x-select\\\"],null,[[\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"on-change\\\"],[\\\"userType\\\",[28,[\\\"employment\\\",\\\"role\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"changeUserType\\\",[28,[\\\"employment\\\"]]],null]]],{\\\"statements\\\":[[6,[\\\"each\\\"],[[28,[\\\"userTypeOptions\\\"]]],null,{\\\"statements\\\":[[0,\\\"                    \\\"],[6,[\\\"component\\\"],[[28,[\\\"xs\\\",\\\"option\\\"]]],[[\\\"value\\\"],[[28,[\\\"option\\\",\\\"value\\\"]]]],{\\\"statements\\\":[[1,[28,[\\\"option\\\",\\\"label\\\"]],false]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"option\\\"]},null]],\\\"locals\\\":[\\\"xs\\\"]},null]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showUserDetail\\\",[28,[\\\"employment\\\"]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"employment\\\",\\\"user\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"cancelInvite\\\",[28,[\\\"employment\\\",\\\"invite\\\"]]]],[13],[0,\\\"\\\\n                  Cancel Invitation\\\\n                \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row-indicator\\\"],[13],[0,\\\"\\\\n                  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"employment\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"employments\\\"]],\\\"Users\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/employment-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fault-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"/3x1JCBt\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"fault-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShoppingCartEnabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                Device Reference\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-fitting-option\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                  Replace Fitting\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-faulty-component-option\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                  Replace Faulty Component\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-decal-option\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                  Replace Decal\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-indicator\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"faults-dropdown-menu\\\"],null,[[\\\"faultyFittings\\\",\\\"showOrderReplacements\\\"],[[28,[\\\"faultyFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showOrderReplacements\\\"],null]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row select-all-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"select-all-column replace-all-fittings\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"fittings\\\",[28,[\\\"isSelectAllFittings\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"fittings\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"select-all-column replace-all-components\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"components\\\",[28,[\\\"isSelectAllComponents\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"components\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"select-all-column replace-all-decals\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"decals\\\",[28,[\\\"isSelectAllDecals\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"decals\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"faultyFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]],\\\"order-replacement-row\\\"],null]]]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isOrderingReplacements\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showFitting\\\",[28,[\\\"fitting\\\"]]],null]],null],null],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"fitting\\\",\\\"rowLabel\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-fitting-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"fitting\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-faulty-component-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"battery\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"lamp\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"control_gear\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-decal-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"decal\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"fitting\\\",\\\"faulty\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"fitting\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-no-faults.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        There are no faulty fittings for this site.\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"faultyFittings\\\"]],\\\"Faulty fittings\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"hideOrderReplacements\\\"]],[13],[0,\\\"OK\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fault-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/faults-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"WA0LRix3\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label order-replacements\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoFaultyFittings\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"orderReplacements\\\"]],[13],[0,\\\"\\\\n      Order Replacements\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/faults-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/file-picker\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"v683dXai\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"dropzone\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"file-picker__dropzone\\\"],[13],[0,\\\"\\\\n    \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"  \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"preview\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"file-picker__preview\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"progress\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"showProgress\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isProgressSupported\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"progress\\\",[]],[16,\\\"value\\\",[26,[\\\"progressValue\\\"]],null],[15,\\\"max\\\",\\\"100\\\"],[15,\\\"class\\\",\\\"file-picker__progress\\\"],[13],[1,[26,[\\\"progress\\\"]],false],[0,\\\" %\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"file-picker__progress\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"file-picker__progress__value\\\"],[16,\\\"style\\\",[26,[\\\"progressStyle\\\"]],null],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"accept\\\",\\\"multiple\\\",\\\"class\\\"],[\\\"file\\\",[28,[\\\"file\\\"]],[28,[\\\"accept\\\"]],[28,[\\\"multiple\\\"]],\\\"file-picker__input\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/file-picker.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/file-upload-error-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"tL1FqS2g\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"file-upload-error-modal\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"CSV Upload Error\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeErrorModal\\\"]]]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message error-message\\\"],[13],[0,\\\"There were some errors in your CSV. All other fittings have been created.\\\"],[14],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"ul\\\",[]],[15,\\\"class\\\",\\\"errors-list\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"uploadErrors\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"li\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[1,[28,[\\\"error\\\",\\\"detail\\\"]],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"error\\\"]},null],[0,\\\"        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"template-download\\\"],[13],[0,\\\"You can download the upload template \\\"],[11,\\\"a\\\",[]],[16,\\\"href\\\",[26,[\\\"csvTemplatePath\\\"]],null],[15,\\\"class\\\",\\\"green\\\"],[13],[0,\\\"here\\\"],[14],[0,\\\".\\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-group-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeErrorModal\\\"]]]],[13],[0,\\\"\\\\n          OK\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/file-upload-error-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/file-upload-progress-bar\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"T3vs3zfP\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"showProgressBar\\\"]]],null,{\\\"statements\\\":[[6,[\\\"unless\\\"],[[28,[\\\"showSuccessMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"progress-message\\\"],[13],[1,[33,[\\\"if\\\"],[[28,[\\\"isProgressFinished\\\"]],\\\"Uploaded\\\",\\\"Uploading\\\"],null],false],[0,\\\" \\\"],[1,[26,[\\\"fileName\\\"]],false],[0,\\\" \\\"],[1,[26,[\\\"progressLabel\\\"]],false],[0,\\\"%\\\"],[14],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"ember-progress-bar\\\"],null,[[\\\"progress\\\",\\\"options\\\"],[[28,[\\\"displayProgress\\\"]],[33,[\\\"hash\\\"],null,[[\\\"color\\\",\\\"strokeWidth\\\",\\\"duration\\\"],[\\\"white\\\",0.5,[28,[\\\"intervalDuration\\\"]]]]]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showCancel\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"cancelUpload\\\"]]]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isProgressFinished\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[26,[\\\"spinkit-circle\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"progress-message success\\\"],[13],[0,\\\"Your CSV uploaded successfully.\\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"dismiss\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"dismissProgressBar\\\"]]]],[13],[0,\\\"x\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/file-upload-progress-bar.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/file-upload\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"zviqv+DL\", \"block\": \"{\\\"statements\\\":[[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/file-upload.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/file-uploader\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"eSVJ40wn\", \"block\": \"{\\\"statements\\\":[[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"file-upload\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"file-upload-input\\\"],null,[[\\\"uploadCsv\\\"],[[28,[\\\"uploadCsv\\\"]]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/file-uploader.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-delete-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"ikGvPmJv\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Fitting\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this fitting?\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteFitting\\\"]],[13],[0,\\\"\\\\n      Delete Fitting\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-delete-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-info-banner\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"0oXzpJSC\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/icon-information.svg\\\"],[15,\\\"alt\\\",\\\"Information Icon\\\"],[13],[14],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"label\\\"],[13],[0,\\\"If you enter a CleverTest+ serial number, we’ll populate the product code and description for you.\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-info-banner.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-panel\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"VAW+5tNp\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[13],[1,[28,[\\\"fitting\\\",\\\"deviceReference\\\"]],false],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"edit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"Edit\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-tab-menu\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"fittingInfoTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"fittingLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Fitting\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"testTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"testAndStatusLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Test & Status\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"shouldShowFaultyIndicator\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"faultyIndicator\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"maintenanceTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"maintenanceLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Maintenance\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"button green successConfirmation \\\",[33,[\\\"if\\\"],[[28,[\\\"showSuccessConfirmation\\\"]],\\\"show\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/success-tick-white.svg\\\"],[15,\\\"alt\\\",\\\"Success Icon\\\"],[13],[14],[0,\\\"\\\\n  Changes Saved\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"showDelete\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-panel-actions delete-fitting\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"delete\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n      Delete Fitting\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"showReinstate\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-panel-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"reinstate\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[13],[0,\\\"\\\\n      Reinstate\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-panel.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-panelsite\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"q/vAGWFi\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[13],[1,[28,[\\\"fitting\\\",\\\"deviceReference\\\"]],false],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"edit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"Edit\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-tab-menu\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"fittingInfoTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"fittingLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Fitting\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"testTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"testAndStatusLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Test & Status\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"shouldShowFaultyIndicator\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"faultyIndicator\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"maintenanceTab\\\",[28,[\\\"viewFittingPanelTourNames\\\"]]]],{\\\"statements\\\":[[6,[\\\"link-to\\\"],[[28,[\\\"tabLinks\\\",\\\"maintenanceLink\\\"]]],[[\\\"class\\\"],[\\\"tab-menu-action\\\"]],{\\\"statements\\\":[[0,\\\"        Maintenance\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"button green successConfirmation \\\",[33,[\\\"if\\\"],[[28,[\\\"showSuccessConfirmation\\\"]],\\\"show\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/success-tick-white.svg\\\"],[15,\\\"alt\\\",\\\"Success Icon\\\"],[13],[14],[0,\\\"\\\\n  Changes Saved\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"showDelete\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-panel-actions delete-fitting\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"delete\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n      Delete Fitting\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"showReinstate\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-panel-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"reinstate\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[13],[0,\\\"\\\\n      Reinstate\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-panelsite.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-reinstate-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"39Pz+Th2\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Reinstate Fitting\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"\\\\n      Are you sure you want to reinstate this fitting? The fitting will be placed back into it's original\\\\n      group if it exists. If the group has been deleted, we'll recreate it.\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[0,\\\"\\\\n      Cancel\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"reinstateFitting\\\"]],[13],[0,\\\"\\\\n      Reinstate\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-reinstate-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/fitting-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"XnEf1SAy\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"fitting-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isgroups\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-table-head\\\"],[13],[0,\\\"\\\\n\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"site.groups\\\",[28,[\\\"site\\\",\\\"id\\\"]]],null,{\\\"statements\\\":[[0,\\\"                  \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/groups-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-groups-grey\\\"],[15,\\\"alt\\\",\\\"Group icon grey\\\"],[13],[14],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-fitting-option\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                Replace Fitting\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasFaultyComponents\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-faulty-component-option\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                  Replace Faulty Component\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-decal-option\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                Replace Decal\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\\n\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"isActioningFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"group-dropdown-menu\\\"],null,[[\\\"fittings\\\",\\\"site\\\",\\\"toggleDeleteFittings\\\",\\\"toggleMoveFittings\\\",\\\"showOrderReplacements\\\"],[[28,[\\\"fittings\\\"]],[28,[\\\"site\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleMoveFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showOrderReplacements\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"button\\\",[]],[15,\\\"style\\\",\\\"padding-left: 10px\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"sortBy\\\",\\\"deviceReference\\\"]],[13],[0,\\\"Sort List\\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n        \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"allfittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-indicator\\\"],[13],[0,\\\"\\\\n\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"style\\\",\\\"text-align: center;\\\\n   vertical-align: middle;\\\"],[13],[0,\\\"All Fittings\\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-table-head\\\"],[13],[0,\\\"\\\\n\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n\\\\n\\\\n            \\\"],[14],[0,\\\"\\\\n\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-indicator\\\"],[13],[0,\\\"\\\\n\\\\n            \\\"],[11,\\\"button\\\",[]],[15,\\\"style\\\",\\\"padding-left: 10px\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"sortBy\\\",\\\"deviceReference\\\"]],[13],[0,\\\"Sort List\\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n        \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row filter-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"commissionedFilter\\\",[28,[\\\"viewGroupTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"filter-column \\\",[33,[\\\"if\\\"],[[28,[\\\"isNotCommissioned\\\"]],\\\"active\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"setIsNotCommissionedFilter\\\"]]]],[13],[0,\\\"Not Commissioned (\\\"],[1,[26,[\\\"notCommissionedFittingsCount\\\"]],false],[0,\\\")\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"        \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"filter-column \\\",[33,[\\\"if\\\"],[[28,[\\\"isCommissioned\\\"]],\\\"active\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"setIsCommissionedFilter\\\"]]]],[13],[0,\\\"Commissioned (\\\"],[1,[26,[\\\"commissionedFittingsCount\\\"]],false],[0,\\\" )\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row select-all-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"select-all-column replace-all-fittings\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"fittings\\\",[28,[\\\"isSelectAllFittings\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"fittings\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasFaultyComponents\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"select-all-column replace-all-components \\\",[33,[\\\"if\\\"],[[28,[\\\"isNotCommissioned\\\"]],\\\"hide\\\"],null]]]],[13],[0,\\\"\\\\n              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"components\\\",[28,[\\\"isSelectAllComponents\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"components\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"select-all-column replace-all-decals\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"decals\\\",[28,[\\\"isSelectAllDecals\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"decals\\\"],[15,\\\"class\\\",\\\"select-all-label\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"placeholder\\\",\\\"value\\\",\\\"enter\\\"],[\\\"text\\\",\\\"filter\\\",\\\"Filter by Fitting ID\\\",[28,[\\\"noteTitle\\\"]],\\\"textchangefilter\\\"]]],false],[0,\\\"\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"fitleredbynamebool\\\"]]],null,{\\\"statements\\\":[[0,\\\"\\\\n\\\\n    \\\"],[1,[28,[\\\"fitting\\\",\\\"deviceReference\\\"]],false],[0,\\\"\\\\n\\\\n\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"fitleredbyname\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]],\\\"order-replacement-row\\\"],null]]]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isActioningFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showFitting\\\",[28,[\\\"fitting\\\"]]],null]],null],null],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"clickFittingAction\\\",[28,[\\\"viewFittingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"table-row \\\",[33,[\\\"if\\\"],[[28,[\\\"isSelectingFittings\\\"]],\\\"selecting-fittings\\\"],null]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"fitting\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"fitting\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"fitting\\\",\\\"rowLabel\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-fitting-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"fitting\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasFaultyComponents\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-faulty-component-option\\\"],[13],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"battery\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"lamp\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"control_gear\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-decal-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"decal\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"fitting\\\",\\\"faulty\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14]],\\\"locals\\\":[\\\"fitting\\\"]},null],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"fittings\\\"]],[28,[\\\"selectedFittings\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]],\\\"order-replacement-row\\\"],null]]]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isActioningFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showFitting\\\",[28,[\\\"fitting\\\"]]],null]],null],null],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"clickFittingAction\\\",[28,[\\\"viewFittingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"table-row \\\",[33,[\\\"if\\\"],[[28,[\\\"isSelectingFittings\\\"]],\\\"selecting-fittings\\\"],null]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"fitting\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"fitting\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"fitting\\\",\\\"rowLabel\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-fitting-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"fitting\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasFaultyComponents\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-faulty-component-option\\\"],[13],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"battery\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"lamp\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                  \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"control_gear\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column replacement-decal-option\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"replacement-option-button\\\"],null,[[\\\"partType\\\",\\\"fitting\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\"],[\\\"decal\\\",[28,[\\\"fitting\\\"]],[28,[\\\"addOrderItem\\\"]],[28,[\\\"removeOrderItem\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"fitting\\\",\\\"faulty\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-red-dot.svg\\\"],[15,\\\"alt\\\",\\\"Faulty indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"fitting\\\",\\\"isSelected\\\"]},null]],\\\"locals\\\":[]}],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEmptyGroup\\\"]]],null,{\\\"statements\\\":[[0,\\\"          To start populating this group, click on the add fitting button below.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          Add a fitting using the button below.\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddFitting\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Add Fitting\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n\\\"],[4,\\\"      {{load-more-button infinityLoad=infinityLoad infinityModel=fittings modelBeingPaginated='Fittings'}}\\\"],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancelSelectFittings\\\"]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isDeletingFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard red delete delete-multiple-fittings\\\"],[16,\\\"disabled\\\",[26,[\\\"noFittingsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteFittings\\\",[28,[\\\"selectedFittings\\\"]]]],[13],[0,\\\"Delete Fittings\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isMovingFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green move move-multiple-fittings\\\"],[16,\\\"disabled\\\",[26,[\\\"noFittingsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"moveFittings\\\",[28,[\\\"selectedFittings\\\"]]]],[13],[0,\\\"Select Group\\\"],[14],[0,\\\"\\\\n          \\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isOrderingReplacements\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"hideOrderReplacements\\\"]],[13],[0,\\\"Done\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddFitting\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Fitting\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/fitting-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/form-validated-input\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"a+EjE4Tr\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"input \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"hasContent\\\"]],\\\"focused\\\"],null],\\\" \\\",[33,[\\\"unless\\\"],[[28,[\\\"disabled\\\"]],\\\"focused-border\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isTextArea\\\"]],\\\"textarea\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"input\\\"],[[33,[\\\"-input-type\\\"],[[28,[\\\"type\\\"]]],null]],[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"autocomplete\\\",\\\"focus-out\\\"],[[28,[\\\"type\\\"]],[28,[\\\"value\\\"]],[28,[\\\"name\\\"]],[28,[\\\"disabled\\\"]],\\\"off\\\",\\\"onFocusOut\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/form-validated-input.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/form-validated-textarea\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"pRyFfQUd\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"input \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"hasContent\\\"]],\\\"focused\\\"],null],\\\" \\\",[33,[\\\"unless\\\"],[[28,[\\\"disabled\\\"]],\\\"focused-border\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isTextArea\\\"]],\\\"textarea\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"textarea\\\",[]],[15,\\\"rows\\\",\\\"3\\\"],[15,\\\"cols\\\",\\\"450\\\"],[15,\\\"style\\\",\\\"height: 120px;\\\"],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[11,\\\"span\\\",[]],[15,\\\"style\\\",\\\"position: absolute; top:35px;width:100%;\\\"],[13],[1,[33,[\\\"textarea\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"autocomplete\\\",\\\"focus-out\\\"],[[28,[\\\"type\\\"]],[28,[\\\"value\\\"]],[28,[\\\"name\\\"]],[28,[\\\"disabled\\\"]],\\\"off\\\",\\\"onFocusOut\\\"]]],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/form-validated-textarea.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/form-validated-wholesaler-select\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"MIOLrM+4\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"input \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"hasContentOrNull\\\"]],\\\"focused\\\"],null],\\\" \\\",[33,[\\\"unless\\\"],[[28,[\\\"disabled\\\"]],\\\"focused-border\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"x-select\\\"],null,[[\\\"name\\\",\\\"value\\\",\\\"on-change\\\",\\\"disabled\\\",\\\"class\\\"],[[28,[\\\"name\\\"]],[28,[\\\"value\\\"]],[33,[\\\"action\\\"],[[28,[null]],[33,[\\\"mut\\\"],[[28,[\\\"value\\\"]]],null]],null],[28,[\\\"disabled\\\"]],[33,[\\\"concat\\\"],[[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isValid\\\"]],\\\"valid\\\"],null]],null]]],{\\\"statements\\\":[[6,[\\\"each\\\"],[[28,[\\\"options\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[6,[\\\"component\\\"],[[28,[\\\"xs\\\",\\\"option\\\"]]],[[\\\"value\\\"],[[28,[\\\"option\\\",\\\"value\\\"]]]],{\\\"statements\\\":[[1,[28,[\\\"option\\\",\\\"label\\\"]],false]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"option\\\"]},null]],\\\"locals\\\":[\\\"xs\\\"]},null],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"class\\\",\\\"alert-icon\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/form-validated-wholesaler-select.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/admin-signup-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"bY6KlrhH\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"admin-signup-form\\\"],[15,\\\"class\\\",\\\"form auth-form\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated split\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"isHalfInput\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"firstName\\\",[28,[\\\"user\\\",\\\"firstName\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"First Name\\\"]]],false],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"isHalfInput\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"lastName\\\",[28,[\\\"user\\\",\\\"lastName\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Last Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"businessName\\\",[28,[\\\"user\\\",\\\"businessName\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated \\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"businessAddress\\\",[28,[\\\"user\\\",\\\"businessAddress\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Address\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"email\\\",[28,[\\\"user\\\",\\\"email\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"password\\\",\\\"password\\\",[28,[\\\"user\\\",\\\"password\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[[28,[\\\"user\\\"]],\\\"password\\\",\\\"passwordConfirmation\\\",[28,[\\\"user\\\",\\\"passwordConfirmation\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Confirm Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button large green auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"submit\\\"]],[13],[0,\\\"Create Profile\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/admin-signup-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/change-password-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"+GgAwyqZ\", \"block\": \"{\\\"statements\\\":[[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"subheading\\\"],[13],[0,\\\"To change your password, enter your current and new password below.\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"change-password-form\\\"],[15,\\\"class\\\",\\\"form auth-form internal-auth-form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated current-password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\",\\\"hasPasswordToggle\\\",\\\"didValidate\\\"],[\\\"password\\\",[28,[null]],\\\"currentPassword\\\",[28,[\\\"currentPassword\\\"]],\\\"Current Password\\\",true,[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\",\\\"hasPasswordToggle\\\",\\\"didValidate\\\"],[\\\"password\\\",[28,[null]],\\\"password\\\",[28,[\\\"password\\\"]],\\\"New Password\\\",true,[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated confirm-password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\",\\\"hasPasswordToggle\\\",\\\"didValidate\\\"],[\\\"password\\\",[28,[null]],\\\"passwordConfirmation\\\",[28,[\\\"passwordConfirmation\\\"]],\\\"Confirm Password\\\",true,[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button green large submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\",[28,[\\\"user\\\"]]]],[13],[0,\\\"Reset Password\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/change-password-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/fitting-details-form-rows\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"pi/Ew7D3\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"idValidate\\\",\\\"onFocusOut\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"serialNumber\\\",[28,[\\\"serialNumber\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"lookupFittingInfo\\\"],null],\\\"Serial Number\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"fittingType\\\",[28,[\\\"fittingType\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Product Code\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"description\\\",[28,[\\\"description\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Description\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"disabled-form-input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"groupName\\\"]],\\\"groupName\\\",\\\"Group\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"disabled-form-input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"groupID\\\"]],\\\"groupID\\\",\\\"Group ID\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"deviceReference\\\",[28,[\\\"deviceReference\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Fitting ID\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"location\\\",[28,[\\\"location\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Location\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"installDate\\\",[28,[\\\"installDate\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Install Date\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"maxDate\\\"],[\\\"text\\\",[28,[\\\"installDate\\\"]],\\\"installDate\\\",[28,[\\\"inputsDisabled\\\"]],[28,[\\\"maxDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"building\\\",[28,[\\\"building\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Building\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"level\\\",[28,[\\\"level\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Level\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"switchboard\\\",[28,[\\\"switchboard\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Switchboard\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"circuit\\\",[28,[\\\"circuit\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Circuit\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"assetCode\\\",[28,[\\\"assetCode\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Asset Code\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showMarkCommission\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row commission-fitting\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"click\\\"],[\\\"checkbox\\\",\\\"markCommissioned\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"commission\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"markCommissioned\\\"],[15,\\\"class\\\",\\\"mark-commissioned-label\\\"],[13],[0,\\\"Mark fitting as commissioned.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/fitting-details-form-rows.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/fitting-details-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"rat95jxF\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"fitting-details-form\\\"],[15,\\\"class\\\",\\\"form fitting-form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showFittingInfoBanner\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[26,[\\\"fitting-info-banner\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n        The install date falls outside of this test event.\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[1,[33,[\\\"forms/fitting-details-form-rows\\\"],null,[[\\\"fitting\\\",\\\"model\\\",\\\"serialNumber\\\",\\\"fittingType\\\",\\\"description\\\",\\\"groupName\\\",\\\"groupID\\\",\\\"deviceReference\\\",\\\"location\\\",\\\"installDate\\\",\\\"building\\\",\\\"level\\\",\\\"switchboard\\\",\\\"circuit\\\",\\\"assetCode\\\",\\\"canEdit\\\",\\\"didValidate\\\",\\\"commission\\\",\\\"showMarkCommission\\\",\\\"lookupFittingInfo\\\"],[[28,[\\\"fitting\\\"]],[28,[null]],[28,[\\\"serialNumber\\\"]],[28,[\\\"fittingType\\\"]],[28,[\\\"description\\\"]],[28,[\\\"groupName\\\"]],[28,[\\\"groupID\\\"]],[28,[\\\"deviceReference\\\"]],[28,[\\\"location\\\"]],[28,[\\\"installDate\\\"]],[28,[\\\"building\\\"]],[28,[\\\"level\\\"]],[28,[\\\"switchboard\\\"]],[28,[\\\"circuit\\\"]],[28,[\\\"assetCode\\\"]],[28,[\\\"canEdit\\\"]],[28,[\\\"didValidate\\\"]],\\\"commission\\\",[28,[\\\"showMarkCommission\\\"]],\\\"lookupFittingInfo\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n        Save\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue edit-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"\\\\n        Cancel\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/fitting-details-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/fittings-form-new\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"0uAdVk8O\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"fitting-form\\\"],[15,\\\"class\\\",\\\"form fitting-form\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"fitting-info-banner\\\"]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"serialNumber\\\",[28,[\\\"serialNumber\\\"]],[28,[\\\"didValidate\\\"]],\\\"Serial Number\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"deviceReference\\\",[28,[\\\"deviceReference\\\"]],[28,[\\\"didValidate\\\"]],\\\"Fitting ID\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"installDate\\\",[28,[\\\"installDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Install Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"maxDate\\\",\\\"calendarAttachmentPosition\\\",\\\"targetAttachmentPosition\\\"],[\\\"text\\\",[28,[\\\"installDate\\\"]],\\\"installDate\\\",[28,[\\\"maxDate\\\"]],\\\"center center\\\",\\\"center center\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"allfittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"allowNullValue\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"selectedGroup\\\",[28,[\\\"displayGroups\\\"]],[28,[\\\"organisationId\\\"]],true,[28,[\\\"didValidate\\\"]],\\\"Group Select\\\"]]],false],[0,\\\"\\\\n\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n        The install date falls outside of this test event.\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"addFitting\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n      Add Fitting\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/fittings-form-new.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/forgot-password-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"gWVm+C21\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"forgot-password-form\\\"],[15,\\\"class\\\",\\\"form auth-form forgot-password-form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated email\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"email\\\",[28,[null]],\\\"email\\\",[28,[\\\"email\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button green large  auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"requestPasswordReset\\\",[28,[\\\"email\\\"]]]],[13],[0,\\\"Reset Password\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/forgot-password-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/group-form-rows\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"SU0X1mHQ\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"name\\\",[28,[\\\"name\\\"]],[28,[\\\"didValidate\\\"]],\\\"Group Name\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/group-form-rows.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/group-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"c2393F3g\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"group-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/group-form-rows\\\"],null,[[\\\"group\\\",\\\"model\\\",\\\"name\\\",\\\"didValidate\\\"],[[28,[\\\"group\\\"]],[28,[null]],[28,[\\\"name\\\"]],[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-group-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\",[28,[\\\"group\\\"]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Save\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n        Add Group\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/group-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/invite-to-site-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"GJQOTGdF\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"invite-to-site-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"grant-access-type\\\"],[13],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"radioId\\\",\\\"name\\\",\\\"changed\\\"],[\\\"copy-site-permission\\\",[28,[\\\"grantPermissionType\\\"]],\\\"copy-site-permission\\\",\\\"copy-site-permission\\\",\\\"selectionTypeChanged\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"copy-site-permission\\\"],[13],[0,\\\"Copy site permission\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"radioId\\\",\\\"name\\\",\\\"changed\\\"],[\\\"select-sites\\\",[28,[\\\"grantPermissionType\\\"]],\\\"select-sites\\\",\\\"select-sites\\\",\\\"selectionTypeChanged\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"select-sites\\\"],[13],[0,\\\"Select sites\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isCopyingSitePermission\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"technicianId\\\",[28,[\\\"displayTechnicians\\\"]],[28,[\\\"technicianId\\\"]],[28,[\\\"didValidate\\\"]],\\\"Select User\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"validated-multi-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"selection\\\",\\\"didValidate\\\",\\\"displaySelection\\\",\\\"selectionModel\\\",\\\"labelText\\\",\\\"canSelectAll\\\"],[[28,[null]],\\\"selectedSites\\\",[28,[\\\"usersRestrictedSites\\\"]],[28,[\\\"selectedSites\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"displaySelection\\\"]],\\\"Sites\\\",\\\"Select Sites\\\",false]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"grantAccess\\\"]],[13],[0,\\\"\\\\n      Grant Access\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/invite-to-site-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/invite-user-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"g7Px/bNi\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"invite-user-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"email\\\",[28,[\\\"email\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"invite\\\"]],[13],[0,\\\"\\\\n      Send Invitation\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/invite-user-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/login-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"OY/eAfe9\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"login-form\\\"],[15,\\\"class\\\",\\\"form auth-form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated email\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\",\\\"name\\\"],[[28,[null]],[28,[\\\"email\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\",\\\"email\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"labelText\\\",\\\"value\\\",\\\"hasPasswordToggle\\\",\\\"didValidate\\\"],[\\\"password\\\",[28,[null]],\\\"password\\\",\\\"Password\\\",[28,[\\\"password\\\"]],true,[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"forgot-password label\\\"],[13],[0,\\\"\\\\n    \\\"],[6,[\\\"link-to\\\"],[\\\"forgot-password\\\"],null,{\\\"statements\\\":[[0,\\\"Forgot password?\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"validate\\\",[28,[\\\"email\\\"]],[28,[\\\"password\\\"]]]],[13],[0,\\\"Log In\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/login-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/maintenance-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"7Ux9aYHw\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"maintenance-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShowingForm\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"New Maintenance\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n          The repair date falls outside of this test event.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated white\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"repairDate\\\",[28,[\\\"repairDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Repair Date\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"maxDate\\\"],[\\\"text\\\",[28,[\\\"repairDate\\\"]],\\\"repairDate\\\",[28,[\\\"maxDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated white\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"repair\\\",[28,[\\\"repairOptions\\\"]],[28,[\\\"repair\\\"]],[28,[\\\"didValidate\\\"]],\\\"Repaired\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated white last-maintenance-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"textarea\\\",[28,[null]],\\\"notes\\\",[28,[\\\"notes\\\"]],[28,[\\\"didValidate\\\"]],\\\"Notes\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[1,[33,[\\\"textarea\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\"],[\\\"text\\\",[28,[\\\"notes\\\"]],\\\"notes\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n          Save\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue edit-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"\\\\n          Cancel\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"hasNoRows\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"no-maintenance-rows\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"empty-message \\\",[33,[\\\"unless\\\"],[[28,[\\\"hasNoMaintenances\\\"]],\\\"long\\\"],null]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoMaintenances\\\"]]],null,{\\\"statements\\\":[[0,\\\"              There are no maintenance reports against this fitting yet.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"              To add a new maintenance report, click on the 'Add Maintenance' button below.\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showAddNewMaintenanceButton\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"add-action\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-blue\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"show\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-blue-add.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Maintenance\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showUpdateFittingModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Update Fitting Details\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeUpdateFittingModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/update-fitting-form\\\"],null,[[\\\"fitting\\\",\\\"testEvent\\\",\\\"update\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"testEvent\\\"]],\\\"update\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/maintenance-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/organisation-edit-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"lVjbq5JY\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"organisation-edit-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"name\\\",[28,[\\\"name\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated country\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"country\\\",[28,[\\\"countries\\\"]],[28,[\\\"country\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated state\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"state\\\",[28,[\\\"states\\\"]],[28,[\\\"state\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated wholesaler\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-wholesaler-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"wholesaler\\\",[28,[\\\"displayWholesalers\\\"]],[28,[\\\"wholesaler\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Preferred Wholesaler\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWholesalerAuthFields\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"wholesaler-account-heading\\\"],[13],[0,\\\"\\\\n      Add your \\\"],[1,[28,[\\\"wholesaler\\\",\\\"name\\\"]],false],[0,\\\" Account Details (Optional)\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated user-name\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\"],[[28,[null]],\\\"username\\\",[28,[\\\"username\\\"]],\\\"Username\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\"],[[28,[null]],\\\"password\\\",\\\"password\\\",[28,[\\\"password\\\"]],\\\"Password\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions edit-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEditing\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue cancel\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green space-right\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Save\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"Save\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"openDeleteAccountModal\\\"]]]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n        Delete Account\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Edit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"Edit\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/organisation-edit-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/organisation-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"gTtM+hHU\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"organisation-form\\\"],[15,\\\"class\\\",\\\"form auth-form\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"name\\\",[28,[\\\"name\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated country\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"country\\\",[28,[\\\"countries\\\"]],[28,[\\\"country\\\"]],[28,[\\\"didValidate\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated state\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"state\\\",[28,[\\\"states\\\"]],[28,[\\\"state\\\"]],[28,[\\\"didValidate\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row business-confirmation\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"businessConfirmation\\\",[28,[\\\"hasConfirmedAuthorization\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"businessConfirmation\\\"],[15,\\\"class\\\",\\\"business-confirmation-label\\\"],[13],[0,\\\"I confirm I am authorised to create this business.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"signup.user\\\"],[[\\\"class\\\"],[\\\"label user-signup-link\\\"]],{\\\"statements\\\":[[0,\\\"      Not signing up a business? Click here to create your profile.\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[16,\\\"disabled\\\",[26,[\\\"canSubmit\\\"]],null],[15,\\\"class\\\",\\\"button large green auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"next\\\"]],[13],[0,\\\"Next\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/organisation-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/organisation-new-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"MUTheTWc\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"organisation-new-form\\\"],[15,\\\"class\\\",\\\"form auth-form internal-auth-form\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"name\\\",[28,[\\\"name\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated country\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"country\\\",[28,[\\\"countries\\\"]],[28,[\\\"country\\\"]],[28,[\\\"didValidate\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated state\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"state\\\",[28,[\\\"states\\\"]],[28,[\\\"state\\\"]],[28,[\\\"didValidate\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row business-confirmation\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"businessConfirmation\\\",[28,[\\\"hasConfirmedAuthorization\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"businessConfirmation\\\"],[15,\\\"class\\\",\\\"business-confirmation-label\\\"],[13],[0,\\\"I confirm I am authorised to create this business account.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button large green submit auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"submitDisabled\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\",[28,[\\\"organisation\\\"]]]],[13],[0,\\\"Create Business\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/organisation-new-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/quick-test-defaults-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"shDb5L9L\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"quick-test-defaults-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated required-duration-row\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"defaultLabel\\\",[28,[\\\"defaultLabel\\\"]],[28,[\\\"didValidate\\\"]],\\\"Label\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated test-date-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"defaultTestDate\\\",[28,[\\\"didValidate\\\"]],\\\"Test Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\"],[[28,[\\\"input\\\",\\\"type\\\"]],[28,[\\\"defaultTestDate\\\"]],[28,[\\\"input\\\",\\\"name\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"input\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"],[4,\\\"    <div class=\\\\\\\"row row-animated test-run-time-row\\\\\\\">\\\"],[0,\\\"\\\\n\\\"],[4,\\\"      {{form-validated-input type='text' model=this name='defaultRunTime' value=defaultRunTime didValidate=didValidate labelText='Test Run Time (In Minutes)'}}\\\"],[0,\\\"\\\\n\\\"],[4,\\\"    </div>\\\"],[0,\\\"\\\\n\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated required-duration-row\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"defaultRequiredDuration\\\",[28,[\\\"durationOptions\\\"]],[28,[\\\"defaultRequiredDuration\\\"]],[28,[\\\"didValidate\\\"]],\\\"Required Duration\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated test-date-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"updatenexttestdate\\\",[28,[\\\"didValidate\\\"]],\\\"Next Test Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\"],[[28,[\\\"input\\\",\\\"type\\\"]],[28,[\\\"updatenexttestdate\\\"]],[28,[\\\"input\\\",\\\"name\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"input\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated required-duration-row\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"viewb\\\",[28,[\\\"viewOptions\\\"]],[28,[\\\"viewb\\\"]],[28,[\\\"didValidate\\\"]],\\\"View\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"submit\\\"]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isCreatingTestEvent\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n        Add Logbook\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        Save\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/quick-test-defaults-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/quick-test-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"a4JWzlEN\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"quick-test-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[15,\\\"style\\\",\\\"margin-top: -25px\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"Test\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated test-status-row\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"testStatus\\\",[28,[\\\"testStatusOptions\\\"]],[28,[\\\"testStatus\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Test Status\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated test-date-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"testDate\\\",[28,[\\\"didValidate\\\"]],\\\"Test Collection Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\"],[[28,[\\\"input\\\",\\\"type\\\"]],[28,[\\\"testDate\\\"]],[28,[\\\"input\\\",\\\"name\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"input\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated run-time-row\\\"],[15,\\\"style\\\",\\\"display: none\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"runTime\\\",[28,[\\\"runTime\\\"]],[28,[\\\"didValidate\\\"]],\\\"Test Run Time (In Minutes)\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated last-test-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"nextTestDate\\\",[28,[\\\"didValidate\\\"]],\\\"Next Test Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"minDate\\\"],[[28,[\\\"input\\\",\\\"type\\\"]],[28,[\\\"nextTestDate\\\"]],[28,[\\\"input\\\",\\\"name\\\"]],[28,[\\\"minDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"input\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated required-duration-row\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"requiredDuration\\\",[28,[\\\"durationOptions\\\"]],[28,[\\\"requiredDuration\\\"]],[28,[\\\"didValidate\\\"]],\\\"Required Duration\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"submit\\\"]],[13],[0,\\\"\\\\n      Save\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/quick-test-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/report-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"5HYOl+On\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"report-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"report-format\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Select a file format for your report:\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"pdf\\\",[28,[\\\"reportFormat\\\"]],\\\"pdf\\\",\\\"pdf\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"pdf\\\"],[13],[0,\\\"PDF\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"csv\\\",[28,[\\\"reportFormat\\\"]],\\\"csv\\\",\\\"csv\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"csv\\\"],[13],[0,\\\"CSV\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"divider\\\"],[13],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"report-category\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"What type of report would you like to send?\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"report-category-options\\\"],[13],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"device-details\\\",[28,[\\\"reportCategory\\\"]],\\\"typereportChanged\\\",\\\"device-details\\\",\\\"device-details\\\"]],{\\\"statements\\\":[[0,\\\"          Device Details\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"maintenance\\\",[28,[\\\"reportCategory\\\"]],\\\"typereportChanged\\\",\\\"maintenance\\\",\\\"maintenance\\\"]],{\\\"statements\\\":[[0,\\\"          Maintenance\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingGroups\\\"]]],null,{\\\"statements\\\":[[6,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"faulty-fittings\\\",[28,[\\\"reportCategory\\\"]],\\\"typereportChanged\\\",\\\"faulty-fittings\\\",\\\"faulty-fittings\\\"]],{\\\"statements\\\":[[0,\\\"            Fault\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"test-results\\\",[28,[\\\"reportCategory\\\"]],\\\"typereportChanged\\\",\\\"test-results\\\",\\\"test-results\\\"]],{\\\"statements\\\":[[0,\\\"          Test\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"divider\\\"],[13],[14],[0,\\\"\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isTestEventsEnabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"report-content\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Select which content you would like:\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"groups\\\",[28,[\\\"reportContent\\\"]],\\\"reportContentChanged\\\",\\\"groups\\\",\\\"groups\\\"]]],false],[0,\\\"\\\\n          \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"groups\\\"],[13],[0,\\\"Groups\\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"test-events\\\",[28,[\\\"reportContent\\\"]],\\\"reportContentChanged\\\",\\\"test-events\\\",\\\"test-events\\\"]]],false],[0,\\\"\\\\n          \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"test-events\\\"],[13],[0,\\\"Logbooks\\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingGroups\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"validated-multi-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"selection\\\",\\\"selectionModel\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"selectedGroups\\\",[28,[\\\"groups\\\"]],[28,[\\\"selectedGroups\\\"]],\\\"Groups\\\",[28,[\\\"didValidate\\\"]],\\\"Groups\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"selectedTestEvent\\\",[28,[\\\"testEventOptions\\\"]],[28,[\\\"selectedTestEvent\\\"]],[28,[\\\"didValidate\\\"]],\\\"Logbook\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isTestreport\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"report-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Display Compliance Statement:\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"cstatebool\\\",[28,[\\\"cstateContent\\\"]],\\\"cstateContentChanged\\\",\\\"cstatebool\\\",\\\"cstatebool\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"cstatebool\\\"],[13],[0,\\\"On\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"ember-radio-button round\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"radio-button\\\"],null,[[\\\"value\\\",\\\"groupValue\\\",\\\"changed\\\",\\\"radioId\\\",\\\"name\\\"],[\\\"cstatebooloff\\\",[28,[\\\"cstateContent\\\"]],\\\"cstateContentChanged\\\",\\\"cstatebooloff\\\",\\\"cstatebooloff\\\"]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"cstatebooloff\\\"],[13],[0,\\\"Off\\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[11,\\\"p\\\",[]],[13],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[13],[0,\\\"\\\\n\\\\n\\\\n     \\\"],[11,\\\"label\\\",[]],[15,\\\"style\\\",\\\" display: inline-block;margin: 0;\\\"],[13],[0,\\\" Test Report Compliance Templates  \\\"],[14],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"buttontmpgreen green\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"newButton\\\"]],[13],[0,\\\"+ New\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"newbuttonpushed\\\"]]],null,{\\\"statements\\\":[[0,\\\"       \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated required-duration-row\\\"],[13],[0,\\\"\\\\n       \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"newtempname\\\",[28,[\\\"newtempname\\\"]],[28,[\\\"didValidate\\\"]],\\\"New Template Name Input\\\"]]],false],[0,\\\"\\\\n       \\\"],[14],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"\\\\n        \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"model\\\",\\\"changed\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"tamplateChanged\\\",\\\"selectedTemplates\\\",[28,[\\\"templateOptions\\\"]],[28,[\\\"selectedTemplate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Select saved template\\\"]]],false],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\\n\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[16,\\\"oninput\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"inputActionEventTrigger\\\"],null],null],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-textarea\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"cstatement\\\",[28,[\\\"cstatement\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Compliance Report Statement(Displays on PDF reports only)\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n    \\\"],[14],[0,\\\" \\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isTestreport\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"selectedTemplate\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteModal\\\"]],[13],[0,\\\"Delete Template\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"newbuttonpushed\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"tamplateSave\\\"]],[13],[0,\\\"Save Template\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"textchangedcstatement\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"tamplateSave\\\"]],[13],[0,\\\"Save Template\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"downloadReport\\\"]],[13],[1,[26,[\\\"sendreporttxt\\\"]],false],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDeleteModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"report-modal-delete\\\"],null,[[\\\"selectedTemplate\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedTemplate\\\"]],\\\"closeDeleteModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/report-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/reset-password-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"KDNjwUwZ\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"reset-password-form\\\"],[15,\\\"class\\\",\\\"form auth-form reset-password-form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[\\\"password\\\",[28,[null]],\\\"password\\\",[28,[\\\"password\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"New Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated passwordConfirmation\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[\\\"password\\\",[28,[null]],\\\"passwordConfirmation\\\",[28,[\\\"passwordConfirmation\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Confirm Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[15,\\\"class\\\",\\\"button green large  auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"resetPassword\\\",[28,[\\\"password\\\"]],[28,[\\\"passwordConfirmation\\\"]]]],[13],[0,\\\"Reset Password\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/reset-password-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/site-form-new\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"PW8D9vs4\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"site-form-new\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/site-form-rows\\\"],null,[[\\\"site\\\",\\\"model\\\",\\\"unit\\\",\\\"address\\\",\\\"businessName\\\",\\\"buildingName\\\",\\\"contactName\\\",\\\"contactEmail\\\",\\\"adminEmail\\\",\\\"placeId\\\",\\\"canEdit\\\",\\\"didValidate\\\"],[[28,[\\\"site\\\"]],[28,[null]],[28,[\\\"unit\\\"]],[28,[\\\"address\\\"]],[28,[\\\"businessName\\\"]],[28,[\\\"buildingName\\\"]],[28,[\\\"contactName\\\"]],[28,[\\\"contactEmail\\\"]],[28,[\\\"adminEmail\\\"]],[28,[\\\"placeId\\\"]],[28,[\\\"canEdit\\\"]],[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[15,\\\"type\\\",\\\"button\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n      Add Site\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/site-form-new.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/site-form-rows\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"T9dna7f1\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"unit\\\",[28,[\\\"unit\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Unit/Level\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated autocomplete\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"address\\\",[28,[\\\"address\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Address\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"places-search-input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"site\\\",\\\"placeId\\\",\\\"disabled\\\"],[\\\"text\\\",[28,[\\\"address\\\"]],\\\"address\\\",[28,[\\\"site\\\"]],[28,[\\\"placeId\\\"]],[28,[\\\"inputsDisabled\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"businessName\\\",[28,[\\\"businessName\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"buildingName\\\",[28,[\\\"buildingName\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Building Name\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"contactName\\\",[28,[\\\"contactName\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Contact Name\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"contactEmail\\\",[28,[\\\"contactEmail\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Contact Email\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"adminEmail\\\",[28,[\\\"adminEmail\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Admin Email\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/site-form-rows.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/site-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"woEPJygz\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"site-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"forms/site-form-rows\\\"],null,[[\\\"site\\\",\\\"model\\\",\\\"unit\\\",\\\"address\\\",\\\"businessName\\\",\\\"buildingName\\\",\\\"contactName\\\",\\\"contactEmail\\\",\\\"adminEmail\\\",\\\"placeId\\\",\\\"canEdit\\\",\\\"didValidate\\\"],[[28,[\\\"site\\\"]],[28,[null]],[28,[\\\"unit\\\"]],[28,[\\\"address\\\"]],[28,[\\\"businessName\\\"]],[28,[\\\"buildingName\\\"]],[28,[\\\"contactName\\\"]],[28,[\\\"contactEmail\\\"]],[28,[\\\"adminEmail\\\"]],[28,[\\\"placeId\\\"]],[28,[\\\"canEdit\\\"]],[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green space-right\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Save\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"Save\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/site-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/test-and-status-form-rows\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"9CY7TOb1\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"Test\\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated testStatus\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"testStatus\\\",[28,[\\\"testStatusOptions\\\"]],[28,[\\\"testStatus\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Test Status\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"testDate\\\",[28,[\\\"testDate\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Test Date\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"maxDate\\\"],[\\\"text\\\",[28,[\\\"testDate\\\"]],\\\"testDate\\\",[28,[\\\"disabled\\\"]],[28,[\\\"maxDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"runTime\\\",[28,[\\\"runTime\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Test Run Time (In Minutes)\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"requiredDuration\\\",[28,[\\\"durationOptions\\\"]],[28,[\\\"requiredDuration\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Required Duration\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated last-test-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"nextTestDate\\\",[28,[\\\"nextTestDate\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Next Test Date\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"minDate\\\"],[\\\"text\\\",[28,[\\\"nextTestDate\\\"]],\\\"nextTestDate\\\",[28,[\\\"disabled\\\"]],[28,[\\\"minDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"Status\\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"batteryStatus\\\",[28,[\\\"statusOptions\\\"]],[28,[\\\"batteryStatus\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Battery Status\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"lampStatus\\\",[28,[\\\"statusOptions\\\"]],[28,[\\\"lampStatus\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Lamp Status\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"controlGearStatus\\\",[28,[\\\"statusOptions\\\"]],[28,[\\\"controlGearStatus\\\"]],[28,[\\\"disabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Control Gear Status\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/test-and-status-form-rows.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/test-and-status-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"tVAAeMDz\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"test-and-status-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showTestForm\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShowingLatestTest\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"latest-test-header\\\"],[13],[0,\\\"\\\\n          Latest Test Result for \\\"],[1,[28,[\\\"fitting\\\",\\\"deviceReference\\\"]],false],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n          The test date falls outside of this test event.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[1,[33,[\\\"forms/test-and-status-form-rows\\\"],null,[[\\\"model\\\",\\\"testStatus\\\",\\\"testDate\\\",\\\"runTime\\\",\\\"nextTestDate\\\",\\\"requiredDuration\\\",\\\"batteryStatus\\\",\\\"lampStatus\\\",\\\"controlGearStatus\\\",\\\"canEdit\\\",\\\"disabled\\\",\\\"didValidate\\\"],[[28,[null]],[28,[\\\"testStatus\\\"]],[28,[\\\"testDate\\\"]],[28,[\\\"runTime\\\"]],[28,[\\\"nextTestDate\\\"]],[28,[\\\"requiredDuration\\\"]],[28,[\\\"batteryStatus\\\"]],[28,[\\\"lampStatus\\\"]],[28,[\\\"controlGearStatus\\\"]],[28,[\\\"canEdit\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"no-latest-test\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoTests\\\"]]],null,{\\\"statements\\\":[[0,\\\"          There are no tests recorded for this fitting yet.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          To add a new test, click on the 'Add New Test' button below.\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[6,[\\\"if\\\"],[[28,[\\\"canEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isNotAddingNewTest\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"delete-action\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showDeleteTestModal\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n            Delete Test\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n        Save\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue edit-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"\\\\n        Cancel\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"showAddNewTestButton\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isConfirmAddNewTest\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"confirmation-text\\\"],[13],[0,\\\"Are you sure you want to add a new test?\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"confirm\\\"]],[13],[0,\\\"\\\\n          Yes, Add New Test\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue edit-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"\\\\n          Cancel\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-blue\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"addNewTest\\\"]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-blue-add.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Add New Test\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showDeleteTestModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"test-delete-confirmation\\\"],null,[[\\\"deleteTest\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"action\\\"],[[28,[null]],\\\"deleteTest\\\"],null],\\\"closeDeleteTestModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/test-and-status-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/test-event-add-groups-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"RwxPAma5\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-groups-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-instruction\\\"],[13],[0,\\\"\\\\n    Select a group(s) that you would like to \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"boldFont\\\"],[13],[0,\\\"add\\\"],[14],[0,\\\" to this test event.\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"form-content \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null]]]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"groups-list\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\",\\\"onchange\\\"],[[28,[\\\"groupOptions\\\"]],[28,[\\\"selectedGroups\\\"]],\\\"tbody\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"updateSelection\\\"],null]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column group-name selecting-groups\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"group\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"group\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"group\\\",\\\"isSelected\\\"]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      Please select one or more groups.\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[15,\\\"type\\\",\\\"button\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"actionClicked\\\"]],[13],[0,\\\"\\\\n      Add Groups\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/test-event-add-groups-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/test-event-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"1Q+GKjdK\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"test-event-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated split\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half start-date\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"date-picker-label\\\"],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"if\\\"],[[28,[\\\"isDuplicateMode\\\"]],\\\"Select a new start date\\\",\\\"Select a start date\\\"],null],false],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"startDate\\\",[28,[\\\"startDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Start Date\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"calendarAttachmentPosition\\\",\\\"targetAttachmentPosition\\\"],[\\\"text\\\",[28,[\\\"startDate\\\"]],\\\"startDate\\\",\\\"center center\\\",\\\"center center\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half end-date\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"date-picker-label\\\"],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"if\\\"],[[28,[\\\"isDuplicateMode\\\"]],\\\"Select a new end date\\\",\\\"Select an end date\\\"],null],false],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"endDate\\\",[28,[\\\"endDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"End Date\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"calendarAttachmentPosition\\\",\\\"targetAttachmentPosition\\\"],[\\\"text\\\",[28,[\\\"endDate\\\"]],\\\"endDate\\\",\\\"center center\\\",\\\"center center\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEditOrDuplicateMode\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-group-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"if\\\"],[[28,[\\\"isEditMode\\\"]],\\\"Update Range\\\",\\\"Create Test Event\\\"],null],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"next\\\"]],[13],[0,\\\"\\\\n        Next\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/test-event-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/test-event-remove-groups-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"i4Qa8wSv\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-groups-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-instruction\\\"],[13],[0,\\\"\\\\n    Select a group(s) that you would like to \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"boldFont\\\"],[13],[0,\\\"remove\\\"],[14],[0,\\\" from this test event.\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"form-content \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null]]]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"groups-list\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\",\\\"onchange\\\"],[[28,[\\\"groupOptions\\\"]],[28,[\\\"selectedGroups\\\"]],\\\"tbody\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"updateSelection\\\"],null]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column group-name selecting-groups\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"group\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"group\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"group\\\",\\\"isSelected\\\"]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      Please select one or more groups.\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[15,\\\"type\\\",\\\"button\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"actionClicked\\\"]],[13],[0,\\\"\\\\n      Remove Groups\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/test-event-remove-groups-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/update-fitting-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"4s5fSjY3\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"update-fitting-form\\\"],[15,\\\"class\\\",\\\"form fitting-form\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"fitting-info-banner\\\"]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-instruction\\\"],[13],[0,\\\"\\\\n      Please add a new serial number, product code and install date for this fitting.\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"onFocusOut\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"serialNumber\\\",[28,[\\\"serialNumber\\\"]],[28,[\\\"didValidate\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"lookupFittingInfo\\\"],null],\\\"Serial Number\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"fittingType\\\",[28,[\\\"fittingType\\\"]],[28,[\\\"didValidate\\\"]],\\\"Product Code\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"installDate\\\",[28,[\\\"installDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Install Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"maxDate\\\",\\\"calendarAttachmentPosition\\\",\\\"targetAttachmentPosition\\\"],[\\\"text\\\",[28,[\\\"installDate\\\"]],\\\"installDate\\\",[28,[\\\"maxDate\\\"]],\\\"center center\\\",\\\"center center\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n        The install date falls outside of this test event.\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"update\\\"]],[13],[0,\\\"\\\\n      Update\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/update-fitting-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/user-details-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"6eR6zeG+\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"user-details-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form-content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated split\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"firstName\\\",[28,[\\\"firstName\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"First Name\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"lastName\\\",[28,[\\\"lastName\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Last Name\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"email\\\",[28,[\\\"email\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"phone\\\",[28,[\\\"phone\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Mobile\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"country\\\",[28,[\\\"country\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"state\\\",[28,[\\\"state\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"labelText\\\"],[[28,[null]],\\\"roleLabel\\\",[28,[\\\"roleLabel\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"User Type\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showGrantPurchasingRights\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row grant-purchasing-rights\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\",\\\"change\\\"],[\\\"checkbox\\\",\\\"grant-purchasing-rights-checkbox\\\",[28,[\\\"isCheckboxSelected\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleCheckboxSelected\\\"],null]]]],false],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"grant-purchasing-rights-checkbox\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"grant-purchasing-rights-label\\\"],[13],[1,[33,[\\\"if\\\"],[[28,[\\\"isCheckboxSelected\\\"]],\\\"Purchasing rights granted\\\",\\\"Grant purchasing rights\\\"],null],false],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/user-details-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/user-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"83c5Hzev\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"user-form\\\"],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"firstName\\\",[28,[\\\"firstName\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"First Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"lastName\\\",[28,[\\\"lastName\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Last Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"email\\\",[28,[\\\"email\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"phone\\\",[28,[\\\"phone\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Phone\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"country\\\",[28,[\\\"countries\\\"]],[28,[\\\"country\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"state\\\",[28,[\\\"states\\\"]],[28,[\\\"state\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-wholesaler-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"wholesaler\\\",[28,[\\\"displayWholesalers\\\"]],[28,[\\\"wholesaler\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Preferred Wholesaler\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"postcode\\\",[28,[\\\"postcode\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Post code\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n  Reports Section\\\\n  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"RFN\\\",[28,[\\\"RFN\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Report Full Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"ABN\\\",[28,[\\\"ABN\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"ABN Number\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"QBCC\\\",[28,[\\\"QBCC\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Contractor license number\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"Reportphone\\\",[28,[\\\"Reportphone\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Contact Phone Number\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"padding-top:15px\\\"],[13],[0,\\\"\\\\n   Business Logo\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"imgurl\\\"]]],null,{\\\"statements\\\":[[11,\\\"br\\\",[]],[13],[14],[0,\\\"Current Business Logo: Logo not set yet\\\\n  \\\"],[1,[26,[\\\"imginfo\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"  \\\"],[1,[26,[\\\"imginfo\\\"]],false],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]}],[6,[\\\"unless\\\"],[[28,[\\\"inputsDisabled\\\"]]],null,{\\\"statements\\\":[[6,[\\\"file-picker\\\"],null,[[\\\"accept\\\",\\\"fileLoaded\\\",\\\"preview\\\"],[\\\".png,.jpeg,.jpg\\\",\\\"fileLoaded\\\",true]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"imgupload\\\"]]],null,{\\\"statements\\\":[[0,\\\"      Image set and ready to upload\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"b\\\",[]],[15,\\\"style\\\",\\\"border-style: solid;border-width: 3px;\\\"],[13],[0,\\\"Upload Business Logo: Drag here or click to upload a file\\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"style\\\",\\\"max-width: 500px\\\"],[16,\\\"src\\\",[34,[[26,[\\\"imgurl\\\"]]]]],[13],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"logox\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isEditing\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green space-right\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"delete\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deletelogo\\\",[28,[\\\"user\\\"]]]],[13],[0,\\\"Delete Image\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\\n  Signature\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"inputsDisabled\\\"]]],null,{\\\"statements\\\":[[6,[\\\"file-picker\\\"],null,[[\\\"accept\\\",\\\"disabled\\\",\\\"fileLoaded\\\",\\\"preview\\\"],[\\\".png,.jpeg,.jpg\\\",[28,[\\\"inputsDisabled\\\"]],\\\"fileLoadedSig\\\",true]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"imguploadSig\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Image set and ready to upload\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"b\\\",[]],[15,\\\"style\\\",\\\"border-style: solid;border-width: 3px;\\\"],[13],[0,\\\"Upload Signature: Drag here or click to upload a file\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n  Current signature:  \\\"],[1,[26,[\\\"sigimginfo\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"nosignaturelogox\\\"]]],null,{\\\"statements\\\":[[0,\\\"\\\\n    Signature not set yet.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"imgbeeninguploadedalready\\\"]]],null,{\\\"statements\\\":[[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      Image set and ready to upload\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[11,\\\"img\\\",[]],[15,\\\"style\\\",\\\"max-width: 500px\\\"],[16,\\\"src\\\",[34,[[26,[\\\"signatureurl\\\"]]]]],[13],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"nosignaturelogox\\\"]]],null,{\\\"statements\\\":[],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isEditing\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green space-right\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"delete\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deletesig\\\",[28,[\\\"user\\\"]]]],[13],[0,\\\"Delete Image\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWholesalerAuthFields\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"wholesaler-account-heading\\\"],[13],[0,\\\"\\\\n      Add your \\\"],[1,[28,[\\\"wholesaler\\\",\\\"name\\\"]],false],[0,\\\" Account Details (Optional)\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated user-name\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\"],[[28,[null]],\\\"username\\\",[28,[\\\"username\\\"]],\\\"Username\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"labelText\\\"],[[28,[null]],\\\"password\\\",\\\"password\\\",[28,[\\\"password\\\"]],\\\"Password\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions edit-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEditing\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue cancel\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green space-right\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Save\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\",[28,[\\\"user\\\"]]]],[13],[0,\\\"Save\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"openDeleteAccountModal\\\"]]]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n        Delete Account\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green\\\"],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"Edit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"Edit\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/user-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/forms/user-signup-form\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"F1lGDTTu\", \"block\": \"{\\\"statements\\\":[[11,\\\"form\\\",[]],[15,\\\"id\\\",\\\"user-signup-form\\\"],[15,\\\"class\\\",\\\"form auth-form\\\"],[13],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sub-heading\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"section-number required\\\"],[13],[0,\\\"\\\\n      1\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"section-label\\\"],[13],[0,\\\"\\\\n      Enter your details below\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated split\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half first-name\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"firstName\\\",[28,[\\\"firstName\\\"]],[28,[\\\"didValidate\\\"]],\\\"First Name\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"half last-name\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"lastName\\\",[28,[\\\"lastName\\\"]],[28,[\\\"didValidate\\\"]],\\\"Last Name\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated email\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"email\\\",[28,[\\\"email\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated phone\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"phone\\\",[28,[\\\"phone\\\"]],[28,[\\\"didValidate\\\"]],\\\"Mobile\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated userCountry\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"userCountry\\\",[28,[\\\"countries\\\"]],[28,[\\\"userCountry\\\"]],[28,[\\\"didValidate\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated userState\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"userState\\\",[28,[\\\"userStates\\\"]],[28,[\\\"userState\\\"]],[28,[\\\"didValidate\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated userState\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"postcode\\\",[28,[\\\"postcode\\\"]],[28,[\\\"didValidate\\\"]],\\\"Postcode\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[[28,[null]],\\\"password\\\",\\\"password\\\",[28,[\\\"password\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated confirm-password\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"type\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"hasPasswordToggle\\\",\\\"labelText\\\"],[[28,[null]],\\\"password\\\",\\\"passwordConfirmation\\\",[28,[\\\"passwordConfirmation\\\"]],[28,[\\\"didValidate\\\"]],true,\\\"Confirm Password\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left;\\\"],[13],[0,\\\"\\\\n    Insert a digital signature to appear on report(optional)\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left;\\\"],[13],[0,\\\"\\\\n    Upload Signature: \\\"],[1,[26,[\\\"sigimginfo\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left;color: #95c11f\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"file-picker\\\"],null,[[\\\"accept\\\",\\\"fileLoaded\\\",\\\"preview\\\"],[\\\".png,.jpeg,.jpg\\\",\\\"fileLoaded2\\\",true]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"imgupload2\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Image set and ready to upload\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"b\\\",[]],[15,\\\"style\\\",\\\"border-style: solid;border-width: 3px;\\\"],[13],[0,\\\"Drag here or click to upload a file\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sub-heading business-signup\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"section-number \\\",[33,[\\\"if\\\"],[[28,[\\\"businessNameFilled\\\"]],\\\"required\\\",\\\"optional\\\"],null]]]],[13],[0,\\\"\\\\n      2\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"section-label\\\"],[13],[0,\\\"\\\\n      Signup your business\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"section-optional\\\"],[13],[0,\\\"\\\\n      Optional\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"business-signup-instruction\\\"],[13],[0,\\\"\\\\n    If you’re the owner of a business using CleverSparky, create your business account below. \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n    Otherwise, click \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"signup-text\\\"],[13],[0,\\\"Sign Up\\\"],[14],[0,\\\" to continue.\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"organisationName\\\",[28,[\\\"organisationName\\\"]],[28,[\\\"didValidate\\\"]],\\\"Business Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated organisationCountry\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"organisationCountry\\\",[28,[\\\"countries\\\"]],[28,[\\\"organisationCountry\\\"]],[28,[\\\"didValidate\\\"]],\\\"Country\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated organisationState\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-select\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"organisationState\\\",[28,[\\\"organisationStates\\\"]],[28,[\\\"organisationState\\\"]],[28,[\\\"didValidate\\\"]],\\\"State\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"style\\\",\\\"text-align: left\\\"],[15,\\\"class\\\",\\\"section-label\\\"],[13],[0,\\\"\\\\n    Reports Section\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left\\\"],[15,\\\"class\\\",\\\"section-optional\\\"],[13],[0,\\\"\\\\n    Information included in this section will display in the header on your test reports\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"rfn\\\",[28,[\\\"rfn\\\"]],[28,[\\\"didValidate\\\"]],\\\"Report Full Name\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"abn\\\",[28,[\\\"abn\\\"]],[28,[\\\"didValidate\\\"]],\\\"ABN\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"qbcc\\\",[28,[\\\"qbcc\\\"]],[28,[\\\"didValidate\\\"]],\\\"Contractor licence number\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated business-name\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"auth-validated-input\\\"],null,[[\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[[28,[null]],\\\"reportphone\\\",[28,[\\\"reportphone\\\"]],[28,[\\\"didValidate\\\"]],\\\"Phone Number\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left;\\\"],[13],[0,\\\"\\\\n  Upload Business Logo:  \\\"],[1,[26,[\\\"imginfo\\\"]],false],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"text-align: left;color: #95c11f\\\"],[13],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"file-picker\\\"],null,[[\\\"accept\\\",\\\"fileLoaded\\\",\\\"preview\\\"],[\\\".png,.jpeg,.jpg\\\",\\\"fileLoaded\\\",true]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"imgupload\\\"]]],null,{\\\"statements\\\":[[0,\\\"    Image set and ready to upload\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"b\\\",[]],[15,\\\"style\\\",\\\"border-style: solid;border-width: 3px;\\\"],[13],[0,\\\"Drag here or click to upload a file\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\"],[4,\\\"  <h2 style=\\\\\\\"text-align: left\\\\\\\" class=\\\\\\\"section-label\\\\\\\">\\\"],[0,\\\"\\\\n\\\"],[4,\\\"    Reports Compliance Statement & Signature\\\"],[0,\\\"\\\\n\\\"],[4,\\\"  </h2>\\\"],[0,\\\"\\\\n\\\"],[4,\\\"  <div style=\\\\\\\"text-align: left\\\\\\\" class=\\\\\\\"section-optional\\\\\\\">\\\"],[0,\\\"\\\\n\\\"],[4,\\\"    Optional\\\"],[0,\\\"\\\\n\\\"],[4,\\\"  </div>\\\"],[0,\\\"\\\\n\\\"],[4,\\\"<br>\\\"],[0,\\\"\\\\n\\\"],[4,\\\"  <br>\\\"],[0,\\\"\\\\n\\\\n\\\"],[4,\\\"  <br>\\\"],[0,\\\"\\\\n\\\\n\\\\n\\\"],[4,\\\"  <div class=\\\\\\\"row row-animated business-name\\\\\\\">\\\"],[0,\\\"\\\\n\\\"],[4,\\\"    {{auth-validated-input model=this name='cstatement' value=cstatement didValidate=didValidate labelText='Compliance Report Statement'}}\\\"],[0,\\\"\\\\n\\\"],[4,\\\"  </div>\\\"],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"businessNameFilled\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row business-confirmation\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",\\\"businessConfirmation\\\",[28,[\\\"hasConfirmedAuthorization\\\"]]]]],false],[0,\\\"\\\\n      \\\"],[11,\\\"label\\\",[]],[15,\\\"for\\\",\\\"businessConfirmation\\\"],[15,\\\"class\\\",\\\"business-confirmation-label\\\"],[13],[0,\\\"I confirm I am authorised to create this business account.\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"submit\\\"],[16,\\\"disabled\\\",[26,[\\\"cannotSubmit\\\"]],null],[15,\\\"class\\\",\\\"button large green auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"submit\\\"]],[13],[0,\\\"Sign Up\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/forms/user-signup-form.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/group-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"HJynzSvk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label move-fittings\\\"],[16,\\\"disabled\\\",[26,[\\\"noFittingsOrGroups\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleMoveFittings\\\"]],[13],[0,\\\"\\\\n      Move Fittings\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings.edit-group\\\"],[[\\\"tagName\\\",\\\"class\\\"],[\\\"div\\\",\\\"dropdown-menu-list-item label edit edit-group\\\"]],{\\\"statements\\\":[[0,\\\"      Edit Group Name\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isShoppingCartEnabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label order-replacements\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoFittings\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"showOrderReplacements\\\"]],[13],[0,\\\"\\\\n        Order Replacements\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings.delete-group\\\"],[[\\\"tagName\\\",\\\"class\\\"],[\\\"div\\\",\\\"dropdown-menu-list-item label delete delete-group\\\"]],{\\\"statements\\\":[[0,\\\"      Delete Group\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label delete delete-fittings\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoFittings\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteFittings\\\"]],[13],[0,\\\"\\\\n      Delete Fittings\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/group-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/group-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"cXnRJvvq\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"group-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"name column heading\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              Name\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings column heading\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              Fittings\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"faults column heading\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              Faults\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"created-at column heading\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              Created At\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"groups\\\"]],[28,[\\\"selectedGroups\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"row\\\"],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isDeletingGroups\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showGroupDetails\\\",[28,[\\\"group\\\"]]],null]],null],null],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column name\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"isDeletingGroups\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/groups-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-groups icon-groups-grey\\\"],[15,\\\"alt\\\",\\\"Group icon grey\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/groups-blue.svg\\\"],[15,\\\"class\\\",\\\"icon-groups icon-groups-blue\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"group\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"group\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column fittings\\\"],[13],[1,[28,[\\\"group\\\",\\\"fittingsCount\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column faults\\\"],[13],[1,[28,[\\\"group\\\",\\\"faultyFittingsCount\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column created-at\\\"],[13],[1,[33,[\\\"moment-format\\\"],[[28,[\\\"group\\\",\\\"createdAt\\\"]],\\\"hh:mma DD/MM/YYYY\\\"],null],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"group\\\",\\\"isSelected\\\"]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-groups.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        To start populating this site, click on the add groups button below.\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddGroup\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Add Group\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"groups\\\"]],\\\"Groups\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"isDeletingGroups\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red delete-groups\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteGroups\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n            Delete Groups\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddGroup\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Group\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteGroups\\\"]],[13],[0,\\\"\\\\n            Cancel\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button red delete-multiple-groups\\\"],[16,\\\"disabled\\\",[26,[\\\"noGroupsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteGroups\\\",[28,[\\\"selectedGroups\\\"]]]],[13],[0,\\\"\\\\n            Delete Groups\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/group-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/infinity-loader\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"7gapsx1k\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"infinityModel\\\",\\\"reachedInfinity\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"span\\\",[]],[13],[1,[26,[\\\"loadedText\\\"]],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"span\\\",[]],[13],[1,[26,[\\\"loadingText\\\"]],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/infinity-loader.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/load-more-button\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"IwHtbdCo\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button white load-more-button\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"items-displayed-text footnote\\\"],[13],[1,[26,[\\\"numberOfItemsDisplayedText\\\"]],false],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canLoad\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"load-more-text\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"loadMore\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/arrow-down-blue.svg\\\"],[15,\\\"class\\\",\\\"icon-arrow-down-blue\\\"],[15,\\\"alt\\\",\\\"Icon arrow down blue\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"loadText\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/load-more-button.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/maintenance-delete-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"+F8Ef/7B\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Maintenance\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this maintenance report? Deleting cannot be undone.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteMaintenance\\\"]],[13],[0,\\\"\\\\n      Delete Maintenance\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/maintenance-delete-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/maintenance-row\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"/zr7dqVI\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"maintenance-row\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header-label-row\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"inputsDisabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Repaired \\\"],[1,[26,[\\\"repairDate\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        Edit Maintenance\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"edit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"Edit\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"shouldShowTestEventWarning\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-warning\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert-blue.svg\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      The repair date falls outside of this test event.\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"unless\\\"],[[28,[\\\"inputsDisabled\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated white\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"repairDate\\\",[28,[\\\"repairDate\\\"]],[28,[\\\"didValidate\\\"]],\\\"Repair Date\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[1,[33,[\\\"date-picker\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"maxDate\\\"],[\\\"text\\\",[28,[\\\"repairDate\\\"]],\\\"repairDate\\\",[28,[\\\"maxDate\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"disabled\\\",\\\"options\\\",\\\"value\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[null]],\\\"repair\\\",[28,[\\\"inputsDisabled\\\"]],[28,[\\\"repairOptions\\\"]],[28,[\\\"repair\\\"]],[28,[\\\"didValidate\\\"]],\\\"Repaired\\\"]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"didValidate\\\",\\\"disabled\\\",\\\"labelText\\\"],[\\\"textarea\\\",[28,[null]],\\\"notes\\\",[28,[\\\"notes\\\"]],[28,[\\\"didValidate\\\"]],[28,[\\\"inputsDisabled\\\"]],\\\"Notes\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"textarea\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\"],[\\\"text\\\",[28,[\\\"notes\\\"]],\\\"notes\\\",[28,[\\\"inputsDisabled\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canEdit\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"delete-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showDeleteMaintenanceModal\\\"]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n          Delete Maintenance\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small blue edit-actions\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"save\\\"]],[13],[0,\\\"\\\\n        Save\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue edit-actions\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[0,\\\"\\\\n        Cancel\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showUpdateFittingModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Update Fitting Details\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeUpdateFittingModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/update-fitting-form\\\"],null,[[\\\"fitting\\\",\\\"testEvent\\\",\\\"update\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"testEvent\\\"]],\\\"update\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showDeleteMaintenanceModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"maintenance-delete-confirmation\\\"],null,[[\\\"deleteMaintenance\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"action\\\"],[[28,[null]],\\\"delete\\\"],null],\\\"closeDeleteMaintenanceModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/maintenance-row.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/maintenance-rows\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"vfm60++6\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"maintenance-rows form\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"rows\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"maintenance-row\\\"],null,[[\\\"testEvent\\\",\\\"testEventFitting\\\",\\\"maintenance\\\",\\\"fitting\\\",\\\"edit\\\",\\\"save\\\",\\\"update\\\",\\\"cancel\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"testEventFitting\\\"]],[28,[\\\"row\\\"]],[28,[\\\"fitting\\\"]],\\\"edit\\\",[28,[\\\"save\\\"]],[28,[\\\"update\\\"]],\\\"cancel\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"row\\\"]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/maintenance-rows.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/metric-chart\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"95evOaXa\", \"block\": \"{\\\"statements\\\":[[11,\\\"label\\\",[]],[16,\\\"class\\\",[34,[\\\"metric-label \\\",[26,[\\\"color\\\"]]]]],[13],[1,[26,[\\\"metric\\\"]],false],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"chart\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"ember-chart\\\"],null,[[\\\"type\\\",\\\"data\\\",\\\"options\\\"],[\\\"doughnut\\\",[28,[\\\"chartValues\\\"]],[28,[\\\"options\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"metric-value \\\",[26,[\\\"color\\\"]]]]],[13],[0,\\\"\\\\n    \\\"],[1,[26,[\\\"metricValue\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/metric-chart.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/modal-success\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"bX4oWziy\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-success\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/success-tick.svg\\\"],[15,\\\"alt\\\",\\\"Success tick\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"h3\\\",[]],[15,\\\"class\\\",\\\"success-text\\\"],[13],[18,\\\"default\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-success-action\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"action\\\"]],[13],[1,[26,[\\\"actionText\\\"]],false],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/modal-success.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/modal-view\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"U2O98ZiL\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"modal-overlay \\\",[26,[\\\"overlayColor\\\"]]]]],[16,\\\"onclick\\\",[33,[\\\"if\\\"],[[28,[\\\"closeOnOverlayClick\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"],null]],null],null],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"tetherModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"container\\\"],[13],[0,\\\"\\\\n      \\\"],[18,\\\"default\\\"],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/modal-view.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/multiselect-checkboxes\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"fR0NsumQ\", \"block\": \"{\\\"statements\\\":[[6,[\\\"each\\\"],[[28,[\\\"checkboxes\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[29,\\\"default\\\"]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[18,\\\"default\\\",[[28,[\\\"checkbox\\\",\\\"option\\\"]],[28,[\\\"checkbox\\\",\\\"isSelected\\\"]],[28,[\\\"index\\\"]]]],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"li\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"label\\\",[]],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"checked\\\",\\\"disabled\\\"],[\\\"checkbox\\\",[28,[\\\"checkbox\\\",\\\"isSelected\\\"]],[28,[\\\"disabled\\\"]]]]],false],[0,\\\"\\\\n        \\\"],[1,[28,[\\\"checkbox\\\",\\\"label\\\"]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[\\\"checkbox\\\",\\\"index\\\"]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/multiselect-checkboxes.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/nav-bar\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"S4vFU2qm\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"nav-bar\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-bar-item nav-bar-logo\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"img\\\",[]],[15,\\\"alt\\\",\\\"CleverSparky logo\\\"],[15,\\\"src\\\",\\\"/assets/images/white-logo.svg\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"view user-management\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-bar-item nav-bar-link\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],null,{\\\"statements\\\":[[0,\\\"            Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"        \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"usersNavItem\\\",[28,[\\\"postOnboardingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-bar-item nav-bar-link users\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"users-dropdown-menu\\\"],null,[[\\\"triggerContent\\\",\\\"transitionAction\\\"],[\\\"Users\\\",[28,[\\\"transitionAction\\\"]]]]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isAnalyticsEnabled\\\"]]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"analyticsNavItem\\\",[28,[\\\"postOnboardingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-bar-item nav-bar-link\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"analytics\\\"],null,{\\\"statements\\\":[[0,\\\"                Analytics\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"nav-bar-item\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"dropdown-menu\\\"],null,[[\\\"triggerContent\\\",\\\"currentOrganisation\\\",\\\"currentEmployment\\\",\\\"openSwitchAccountModal\\\",\\\"transitionAction\\\",\\\"resetTooltips\\\"],[[28,[\\\"triggerContent\\\"]],[28,[\\\"currentOrganisation\\\"]],[28,[\\\"currentEmployment\\\"]],[28,[\\\"openSwitchAccountModal\\\"]],[28,[\\\"transitionAction\\\"]],[28,[\\\"resetTooltips\\\"]]]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/nav-bar.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/onboarding-slide\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"2hFh2BHP\", \"block\": \"{\\\"statements\\\":[[11,\\\"img\\\",[]],[16,\\\"src\\\",[26,[\\\"imageSrc\\\"]],null],[15,\\\"alt\\\",\\\"Onboarding image\\\"],[13],[14],[0,\\\"\\\\n\\\"],[11,\\\"h2\\\",[]],[13],[1,[26,[\\\"title\\\"]],false],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[16,\\\"class\\\",[34,[\\\"onboarding-text \\\",[26,[\\\"textStyleClass\\\"]]]]],[13],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"text\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isLastSlide\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard blue get-started\\\"],[15,\\\"type\\\",\\\"button\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"goToSites\\\"]]]],[13],[0,\\\"Get Started\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button white skip\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"goToSites\\\"]]]],[13],[0,\\\"Skip\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/onboarding-slide.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/order-item-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"7tdcViJS\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"order-item-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-header\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"site.shopping-cart\\\",[28,[\\\"site\\\",\\\"id\\\"]]],null,{\\\"statements\\\":[[0,\\\"                  \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/groups-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-groups-grey\\\"],[15,\\\"alt\\\",\\\"Group icon grey\\\"],[13],[14],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"orderItems\\\"]],[28,[\\\"selectedItems\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"table-row \\\",[33,[\\\"if\\\"],[[28,[\\\"isDeletingItems\\\"]],\\\"is-deleting-order-items\\\"],null]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column order-item-label\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isDeletingItems\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"orderItem\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"orderItem\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[28,[\\\"orderItem\\\",\\\"orderItemLabel\\\"]],false],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"orderItem\\\",\\\"isSelected\\\"]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"orderItems\\\"]],\\\"Order Items\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isDeletingItems\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancelDeleteItems\\\"]],[13],[0,\\\"\\\\n          Cancel\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button red delete-order-items\\\"],[16,\\\"disabled\\\",[26,[\\\"noItemsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"confirmDeleteItems\\\",[28,[\\\"selectedItems\\\"]]]],[13],[0,\\\"\\\\n          Delete Items\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red delete-items\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteItems\\\"]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n          Delete Items\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard checkout\\\"],[16,\\\"disabled\\\",[26,[\\\"isCheckoutDisabled\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"checkout\\\"]],[13],[0,\\\"\\\\n          Check Out\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/order-item-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/places-search-input\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"G+9l9K7I\", \"block\": \"{\\\"statements\\\":[[6,[\\\"autocomplete-input\\\"],null,[[\\\"term\\\",\\\"results\\\",\\\"updateTerm\\\",\\\"selectResult\\\",\\\"clearSearch\\\"],[[28,[\\\"value\\\"]],[28,[\\\"placesDisplay\\\"]],\\\"updateQuery\\\",\\\"selectResult\\\",\\\"clearSearch\\\"]],{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"input\\\"],[[33,[\\\"-input-type\\\"],[[28,[\\\"type\\\"]]],null]],[[\\\"class\\\",\\\"type\\\",\\\"value\\\",\\\"name\\\",\\\"disabled\\\",\\\"autocomplete\\\"],[\\\"search-input\\\",[28,[\\\"type\\\"]],[28,[\\\"value\\\"]],[28,[\\\"name\\\"]],[28,[\\\"disabled\\\"]],\\\"off\\\"]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showProgressBar\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"ember-progress-bar\\\"],null,[[\\\"progress\\\",\\\"options\\\"],[\\\"1\\\",[33,[\\\"hash\\\"],null,[[\\\"color\\\",\\\"strokeWidth\\\",\\\"duration\\\"],[\\\"#95C11F\\\",0.5,600]]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[\\\"value\\\"]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/places-search-input.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/quick-test-defaults-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"S+RgoIQj\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"id\\\"],[\\\"quick-test-defaults-modal\\\"]],{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"\\\\n      Edit Log Book Template\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/quick-test-defaults-form\\\"],null,[[\\\"testEvent\\\",\\\"isQueryPending\\\",\\\"submit\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"submitQuickTestDefaults\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/quick-test-defaults-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/quick-test-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"4LsB8gYV\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"id\\\"],[\\\"quick-test-modal\\\"]],{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[1,[26,[\\\"headingText\\\"]],false],[14],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeModal\\\"]]]],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/quick-test-form\\\"],null,[[\\\"testEvent\\\",\\\"isQuickTestPassForm\\\",\\\"isQueryPending\\\",\\\"submit\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"isQuickTestPassForm\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/quick-test-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/replacement-option-button\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"qMv285bU\", \"block\": \"{\\\"statements\\\":[[11,\\\"button\\\",[]],[16,\\\"class\\\",[34,[\\\"button border-grey \\\",[33,[\\\"if\\\"],[[28,[\\\"isSelected\\\"]],\\\"selected blue\\\",\\\"unselected light-blue text-blue\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"buttonClicked\\\"]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[16,\\\"src\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"isSelected\\\"]],\\\"/assets/icons/close-white.svg\\\",\\\"/assets/images/icon-add-blue.svg\\\"],null]]]],[15,\\\"alt\\\",\\\"button icon\\\"],[13],[14],[0,\\\"\\\\n  \\\"],[1,[28,[\\\"partTypeObj\\\",\\\"label\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/replacement-option-button.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/report-modal-delete\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"+XkkELLk\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Template\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n    Are you sure you would like to delete the selected template?\\\\n\\\"],[11,\\\"br\\\",[]],[13],[14],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteTemplate\\\"]],[13],[0,\\\"\\\\n      Delete Template\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/report-modal-delete.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/search-bar\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"DAh5gCUr\", \"block\": \"{\\\"statements\\\":[[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-search.svg\\\"],[15,\\\"alt\\\",\\\"Search Icon\\\"],[13],[14],[0,\\\"\\\\n\\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"value\\\",\\\"class\\\",\\\"placeholder\\\",\\\"key-up\\\"],[\\\"text\\\",[28,[\\\"searchTerm\\\"]],\\\"search-input\\\",[28,[\\\"placeholder\\\"]],\\\"query\\\"]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/search-bar.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/shopping-cart-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"nhNV8n+M\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label download-cart-report\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoOrderItems\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"downloadCartReport\\\"]],[13],[0,\\\"\\\\n      Download Cart Report\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/shopping-cart-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/shopping-cart-group-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"qjeST0Jq\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"shopping-cart-group-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-header\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-heading\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/icon-shopping-cart.svg\\\"],[15,\\\"class\\\",\\\"icon-shopping-cart\\\"],[15,\\\"alt\\\",\\\"shopping cart icon\\\"],[13],[14],[0,\\\"\\\\n                Shopping Cart\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-indicator\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"shopping-cart-dropdown-menu\\\"],null,[[\\\"currentOrderGroups\\\",\\\"downloadCartReport\\\"],[[28,[\\\"currentOrderGroups\\\"]],[28,[\\\"downloadCartReport\\\"]]]]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"currentOrderGroups\\\"]],[28,[\\\"selectedGroups\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isCheckingOut\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showOrderItems\\\",[28,[\\\"group\\\"]]],null]],null],null],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"table-row \\\",[33,[\\\"if\\\"],[[28,[\\\"isCheckingOut\\\"]],\\\"is-checking-out\\\"],null]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column group-name\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isCheckingOut\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"group\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"group\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[28,[\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"group\\\",\\\"isSelected\\\"]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-shopping-cart.svg\\\"],[15,\\\"alt\\\",\\\"Empty table image\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        There are no items in your shopping cart for this site.\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"currentOrderGroups\\\"]],\\\"Groups\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isCheckingOut\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancelCheckout\\\"]],[13],[0,\\\"\\\\n            Cancel\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green standard checkout-groups\\\"],[16,\\\"disabled\\\",[26,[\\\"noGroupsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"confirmCheckout\\\",[28,[\\\"selectedGroups\\\"]]]],[13],[0,\\\"\\\\n            Check Out\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard checkout\\\"],[16,\\\"disabled\\\",[26,[\\\"isCheckoutDisabled\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"checkout\\\"]],[13],[0,\\\"\\\\n            Check Out\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/shopping-cart-group-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-admin\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"HmWrN8JZ\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[15,\\\"style\\\",\\\"position: absolute;width: 90%;\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"address column\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n          Customer Name\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"address\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"width\\\",\\\"350px\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n          Email Address\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"business-name\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"width\\\",\\\"350px\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n          ID\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"building-name\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"row-indicator\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"sites\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showLogin\\\",[28,[\\\"site\\\",\\\"id\\\"]]],null]],null],null],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]],\\\"not-permitted\\\"],null]]]],[13],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column address\\\"],[13],[1,[28,[\\\"site\\\",\\\"fullName\\\"]],false],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[1,[28,[\\\"site\\\",\\\"email\\\"]],false],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column building-name\\\"],[13],[1,[28,[\\\"site\\\",\\\"id\\\"]],false],[14],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"permissionRequested\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-brown pending-access\\\"],[13],[0,\\\"Access Pending\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"requestAccess\\\",[28,[\\\"viewRestrictedSitesTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-green request-access\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"requestAccess\\\",[28,[\\\"site\\\"]]]],[13],[0,\\\"Request Access\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row-indicator\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"site\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-site.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"noSearchResults\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n          No results matched your search.\\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"To add a new site, click on the add site button below.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n          To start populating your sites, click on the add site button below.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"newSiteAction\\\",[28,[\\\"postOnboardingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[16,\\\"sites\\\",[26,[\\\"sites\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddSite\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Site\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"sites\\\"]],\\\"Sites\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-admin.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-details-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"/oxp0eSR\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label edit-site-details\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"]],[13],[0,\\\"\\\\n      Edit Site Details\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"view transfer-site\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label transfer-site\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"openTransferSiteToUserModal\\\"]],[13],[0,\\\"\\\\n        Transfer Site Ownership\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label transfer-site\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"openTransferSiteModal\\\"]],[13],[0,\\\"\\\\n        Move Site\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"view delete-site\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label delete delete-site\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"delete\\\"]],[13],[0,\\\"\\\\n        Delete Site\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-details-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-header\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Hl2Y+059\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back-button\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],[[\\\"class\\\"],[\\\"site-header-action\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon large\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"alt\\\",\\\"Back Icon\\\"],[13],[14],[0,\\\"\\\\n      Back to Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-info-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-info\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h4\\\",[]],[13],[1,[26,[\\\"businessName\\\"]],false],[14],[0,\\\"\\\\n      \\\"],[11,\\\"label\\\",[]],[15,\\\"class\\\",\\\"label address-label\\\"],[13],[1,[26,[\\\"address\\\"]],false],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-header-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-header-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"csvDownloadTemplateAction\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"https://s3-ap-southeast-2.amazonaws.com/cleversparky.assets.com/files/Exceluploadtemplate.xlsx\\\"],[15,\\\"id\\\",\\\"download\\\"],[15,\\\"class\\\",\\\"site-header-action text-blue button white\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-download.svg\\\"],[15,\\\"alt\\\",\\\"Download Icon\\\"],[13],[14],[0,\\\"\\\\n            CSV Upload Template\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-header-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"upload\\\"],[15,\\\"class\\\",\\\"site-header-action text-blue\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"file-uploader\\\"],null,[[\\\"uploadCsv\\\"],[[28,[\\\"uploadCsv\\\"]]]],{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-share.svg\\\"],[15,\\\"alt\\\",\\\"Upload Icon\\\"],[13],[14],[0,\\\"\\\\n            Upload CSV\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-header-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"reportAction\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"id\\\",\\\"report\\\"],[16,\\\"disabled\\\",[26,[\\\"noGroups\\\"]],null],[15,\\\"class\\\",\\\"site-header-action text-blue button white\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleReportModal\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-report.svg\\\"],[15,\\\"alt\\\",\\\"Report Icon\\\"],[13],[14],[0,\\\"\\\\n            Report\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"file-upload-progress-bar\\\"],null,[[\\\"progress\\\",\\\"fileName\\\",\\\"uploadStatus\\\",\\\"cancelUpload\\\",\\\"dismissProgressBar\\\"],[[28,[\\\"progress\\\"]],[28,[\\\"fileName\\\"]],[28,[\\\"uploadStatus\\\"]],[28,[\\\"cancelUpload\\\"]],[28,[\\\"dismissProgressBar\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-header.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"hXAz8mRH\", \"block\": \"{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"groupsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"  \\\"],[6,[\\\"link-to\\\"],[\\\"site.fittings\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[[33,[\\\"if\\\"],[[28,[\\\"isAllfittingsActive\\\"]],\\\"menu-actions active\\\",\\\"menu-actions\\\"],null]]],{\\\"statements\\\":[[0,\\\"All Fittings\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"groupsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"  \\\"],[6,[\\\"link-to\\\"],[\\\"site.groups\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[[33,[\\\"if\\\"],[[28,[\\\"isGroupsActive\\\"]],\\\"menu-actions active\\\",\\\"menu-actions\\\"],null]]],{\\\"statements\\\":[[0,\\\"Groups\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isTestEventsEnabled\\\"]]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"testEventsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"    \\\"],[6,[\\\"link-to\\\"],[\\\"site.test-events\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[[33,[\\\"if\\\"],[[28,[\\\"isTestEventsActive\\\"]],\\\"menu-actions active\\\",\\\"menu-actions\\\"],null]]],{\\\"statements\\\":[[0,\\\"Logbooks\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"faultsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"  \\\"],[6,[\\\"link-to\\\"],[\\\"site.faults\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[\\\"menu-actions\\\"]],{\\\"statements\\\":[[0,\\\"Faults\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"view deleted-fittings\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"deletedFittingsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"    \\\"],[6,[\\\"link-to\\\"],[\\\"site.deleted-fittings\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[\\\"menu-actions\\\"]],{\\\"statements\\\":[[0,\\\"Deleted Fittings\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"siteDetailsTab\\\",[28,[\\\"viewSiteTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"  \\\"],[6,[\\\"link-to\\\"],[\\\"site.details\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[\\\"menu-actions\\\"]],{\\\"statements\\\":[[0,\\\"Site Details\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isShoppingCartEnabled\\\"]]],null,{\\\"statements\\\":[[6,[\\\"link-to\\\"],[\\\"site.shopping-cart\\\",[28,[\\\"site\\\",\\\"id\\\"]]],[[\\\"class\\\"],[[33,[\\\"if\\\"],[[28,[\\\"isShoppingCartActive\\\"]],\\\"menu-actions shopping-cart active\\\",\\\"menu-actions shopping-cart\\\"],null]]],{\\\"statements\\\":[[0,\\\"    Replacement Products\\\\n    \\\"],[11,\\\"span\\\",[]],[16,\\\"class\\\",[34,[\\\"order-item-count \\\",[33,[\\\"unless\\\"],[[28,[\\\"showOrderItemsCount\\\"]],\\\"hide\\\"],null]]]],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"orderItemsCount\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-permission-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"knDU6qpk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-permission-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"businessName column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Business Name\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"address column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Address\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"rowAction\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"sitePermissions\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column businessName\\\"],[13],[1,[28,[\\\"sitePermission\\\",\\\"site\\\",\\\"businessName\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column address\\\"],[13],[1,[28,[\\\"sitePermission\\\",\\\"site\\\",\\\"address\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"removeAccess\\\",[28,[\\\"sitePermission\\\"]]]],[13],[0,\\\"\\\\n                Remove Access\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"sitePermission\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        This user currently has no site permissions.\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"sitePermissions\\\"]],\\\"Site Permissions\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-permission-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-permissions-panel\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"jvdkUn/L\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-permissions-panel\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-permissions-panel-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"subheading\\\"],[13],[0,\\\"Site Permissions\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"site-permissions-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-permission-table\\\"],null,[[\\\"sitePermissions\\\",\\\"isQueryPending\\\",\\\"removeAccess\\\",\\\"infinityLoad\\\"],[[28,[\\\"sitePermissions\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"removeAccess\\\"]],[28,[\\\"infinityLoad\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-permissions-panel.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-request-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"MfNAio/s\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-request-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"first-name column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            First Name\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"last-name column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Last Name\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"business-name column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Business Name\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"site-address column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Site Address\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"siteRequests\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"first-name column\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[28,[\\\"request\\\",\\\"user\\\",\\\"firstName\\\"]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"last-name column\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[28,[\\\"request\\\",\\\"user\\\",\\\"lastName\\\"]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"business-name column\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[28,[\\\"request\\\",\\\"site\\\",\\\"businessName\\\"]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"site-address column\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[28,[\\\"request\\\",\\\"site\\\",\\\"address\\\"]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"row-action\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"action-wrapper\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-green\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"approve\\\",[28,[\\\"request\\\"]]]],[13],[0,\\\"\\\\n                Approve\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"divider\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"decline\\\",[28,[\\\"request\\\"]]]],[13],[0,\\\"\\\\n                Decline\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"request\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        There are currently no site requests for this business.\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"siteRequests\\\"]],\\\"Site Requests\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-request-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/site-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"YXvQg4a8\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"unit column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Unit/level\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"unit\\\"]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"address column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Address\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"address\\\"]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"business-name column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              Business Name\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"business-name\\\"]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"building-name column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Building Name\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"building-name\\\"]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"created-at column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Next Test\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"nexttestdate\\\"]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"created-at column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Created At\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sort-icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleSort\\\",\\\"created-at\\\"]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-sort.svg\\\"],[15,\\\"alt\\\",\\\"Sort Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"row-indicator\\\"],[13],[14],[0,\\\"\\\\n\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"sites\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showSite\\\",[28,[\\\"site\\\"]]],null]],null],null],[16,\\\"class\\\",[34,[[33,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]],\\\"not-permitted\\\"],null]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column unit\\\"],[13],[1,[28,[\\\"site\\\",\\\"unit\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column address\\\"],[13],[1,[28,[\\\"site\\\",\\\"address\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column business-name\\\"],[13],[1,[28,[\\\"site\\\",\\\"businessName\\\"]],false],[14],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column building-name\\\"],[13],[1,[28,[\\\"site\\\",\\\"buildingName\\\"]],false],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"nexttestdate\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column business-name\\\"],[13],[1,[33,[\\\"moment-format\\\"],[[28,[\\\"site\\\",\\\"nexttestdate\\\"]],\\\"DD/MM/YYYY\\\"],null],false],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column business-name\\\"],[13],[0,\\\" \\\"],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\" \\\"],[15,\\\"title\\\",\\\"Create a logbook or display the next test date by making sure that your logbook test date is set, Site > Logbooks > Appropriate Logbook > Top right 3 button menu > Edit Logbook Template \\\"],[13],[0,\\\" Hover here \\\"],[14],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\\n\\\\n\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column business-name\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"permissionRequested\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-brown pending-access\\\"],[13],[0,\\\"Access Pending\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"site\\\",\\\"notPermitted\\\"]]],null,{\\\"statements\\\":[[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"requestAccess\\\",[28,[\\\"viewRestrictedSitesTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"                \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-green request-access\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"requestAccess\\\",[28,[\\\"site\\\"]]]],[13],[0,\\\"Request Access\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"moment-format\\\"],[[28,[\\\"site\\\",\\\"createdAt\\\"]],\\\"hh:mma DD/MM/YYYY\\\"],null],false],[0,\\\"\\\\n            \\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[0,\\\"          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"site\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-site.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"noSearchResults\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n          No results matched your search.\\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"To add a new site, click on the add site button below.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n          To start populating your sites, click on the add site button below.\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"newSiteAction\\\",[28,[\\\"postOnboardingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[16,\\\"sites\\\",[26,[\\\"sites\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"toggleAddSite\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Site\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"sites\\\"]],\\\"Sites\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/site-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/spinkit-circle\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"10VO4VII\", \"block\": \"{\\\"statements\\\":[[0,\\\"\\\\n \\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle1 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle2 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle3 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle4 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle5 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle6 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle7 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle8 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle9 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle10 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle11 sk-child\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"sk-circle12 sk-child\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/spinkit-circle.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/switch-account-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"GmHgwj1Z\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"switch-account-modal\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[1,[26,[\\\"headingText\\\"]],false],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"closeSwitchAccountModal\\\"]]]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[1,[26,[\\\"messageText\\\"]],false],[14],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"allowNullValue\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"selectedAccount\\\",[28,[\\\"displayOrganisations\\\"]],[28,[\\\"selectedAccount\\\"]],true,[28,[\\\"didValidate\\\"]],\\\"Account\\\"]]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-group-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"setCurrentOrganisation\\\"]],[28,[\\\"selectedAccount\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[1,[26,[\\\"buttonText\\\"]],false],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/switch-account-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-delete-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"ze5Uqe1C\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Test\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this test? Deleting cannot be undone.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteTest\\\"]],[13],[0,\\\"\\\\n      Delete Test\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-delete-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-archive-confirmation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"yvBnYQnf\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Archive Logbook\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner confirmation-message\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to archive this test event? Archiving can't be undone.\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small blue\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"archive\\\"]],[13],[0,\\\"\\\\n      Archive\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-archive-confirmation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-fitting-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"r0NmaBzF\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label edit-date-range\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showEditDateRangeModal\\\"]],[13],[0,\\\"\\\\n      Edit Date Range\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"duplicateAction\\\",[28,[\\\"testEventDropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label duplicate-test-event\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showDuplicateTestEventModal\\\"]],[13],[0,\\\"\\\\n        Duplicate Logbook\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"archiveAction\\\",[28,[\\\"testEventDropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label archive-test-event\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showArchiveConfirmationModal\\\"]],[13],[0,\\\"\\\\n        Archive Logbook\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n       \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label set-defaults\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestDefaultsModal\\\"]],[13],[0,\\\"\\\\n      Edit Logbook Template\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-fitting-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-fitting-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"s+F4rdCr\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event-fitting-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-fitting-table-head\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"allfittings\\\"]]],null,{\\\"statements\\\":[[6,[\\\"link-to\\\"],[\\\"site.test-events\\\",[28,[\\\"siteid\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"link-to\\\"],[\\\"test-event.groups\\\",[28,[\\\"testEvent\\\",\\\"id\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/test-event-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-test-event icon-test-event-grey\\\"],[15,\\\"alt\\\",\\\"Test event icon grey\\\"],[13],[14],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"testEvent\\\",\\\"startDate\\\"]],false],[0,\\\" to \\\"],[1,[28,[\\\"testEvent\\\",\\\"endDate\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-fitting-table-head\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-group\\\"],[15,\\\"style\\\",\\\"display: inline\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"allfittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"                \\\"],[1,[33,[\\\"test-event-fitting-dropdown-menu\\\"],null,[[\\\"testEventGroups\\\",\\\"missingGroups\\\",\\\"showAddGroupsModal\\\",\\\"showRemoveGroupsModal\\\",\\\"showEditDateRangeModal\\\",\\\"showDuplicateTestEventModal\\\",\\\"showArchiveConfirmationModal\\\",\\\"showQuickTestDefaultsModal\\\"],[[28,[\\\"testEventGroups\\\"]],[28,[\\\"missingGroups\\\"]],[28,[\\\"showAddGroupsModal\\\"]],[28,[\\\"showRemoveGroupsModal\\\"]],[28,[\\\"showEditDateRangeModal\\\"]],[28,[\\\"showDuplicateTestEventModal\\\"]],[28,[\\\"showArchiveConfirmationModal\\\"]],[28,[\\\"showQuickTestDefaultsModal\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"testEventGroup\\\",\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n                \\\"],[11,\\\"button\\\",[]],[15,\\\"style\\\",\\\"padding-left: 10px\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"sortBy\\\",\\\"fitting.deviceReference\\\"]],[13],[0,\\\"Sort List\\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row filter-row\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"collectedFilter\\\",[28,[\\\"viewTestEventGroupTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"filter-column \\\",[33,[\\\"if\\\"],[[28,[\\\"isNotCollected\\\"]],\\\"active\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"setIsNotCollectedFilter\\\"]],[13],[0,\\\"Not Collected (\\\"],[1,[26,[\\\"notCollectedCount\\\"]],false],[0,\\\")\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"        \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"filter-column \\\",[33,[\\\"if\\\"],[[28,[\\\"isCollected\\\"]],\\\"active\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"setIsCollectedFilter\\\"]],[13],[0,\\\"Collected (\\\"],[1,[26,[\\\"collectedCount\\\"]],false],[0,\\\")\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"testEventFittings\\\"]],[28,[\\\"selectedTestEventFittings\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isSelectingTestEventFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],[28,[\\\"showTestEventFittingDetails\\\"]],[28,[\\\"testEventFitting\\\"]]],null]],null],null],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"table-row \\\",[33,[\\\"if\\\"],[[28,[\\\"isSelectingTestEventFittings\\\"]],\\\"selecting-test-event-fittings\\\"],null]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column device-reference\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingTestEventFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"testEventFitting\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n              \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"testEventFitting\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[28,[\\\"testEventFitting\\\",\\\"fitting\\\",\\\"rowLabel\\\"]],false],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"testEventFitting\\\",\\\"testOutOfRange\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/test-out-of-range-flag.svg\\\"],[15,\\\"alt\\\",\\\"Test out of range indicator\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"testEventFitting\\\",\\\"isSelected\\\"]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-fittings.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"testEvent\\\",\\\"archived\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEmptyTestEventGroup\\\"]]],null,{\\\"statements\\\":[[0,\\\"            To start populating this logbook group, click on the add fitting button below.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            Add a fitting using the button below.\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"showAddFittingModal\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Fitting\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"allfittings\\\"]]],null,{\\\"statements\\\":[],\\\"locals\\\":[]},{\\\"statements\\\":[[4,\\\"        {{load-more-button infinityLoad=infinityLoad infinityModel=testEventFittings modelBeingPaginated='Logbook Fittings'}}\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"testEvent\\\",\\\"archived\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isSelectingTestEventFittings\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"display: inline-block\\\"],[13],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-blue cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"SelectAll\\\"]],[13],[0,\\\"Select All\\\"],[14],[14],[0,\\\"\\\\n            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-blue cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancelSelectTestEventFittings\\\"]],[13],[0,\\\"Cancel\\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard green batch-pass\\\"],[16,\\\"disabled\\\",[26,[\\\"noFittingsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestPassModal\\\"]],[13],[0,\\\"Pass\\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button standard red batch-fail\\\"],[16,\\\"disabled\\\",[26,[\\\"noFittingsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestFailModal\\\"]],[13],[0,\\\"Fail\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isNotCollected\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-blue batch-test-results\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"batchTestResults\\\"]],[13],[0,\\\"Quick Collect Results\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"            \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"showAddFittingModal\\\"]]]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n              Add Fitting\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-fitting-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-group-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Bkh1bym/\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/group-dropdown-menu-trigger.svg\\\"],[15,\\\"class\\\",\\\"drop-trig\\\"],[15,\\\"alt\\\",\\\"Group icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list\\\"],[13],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label edit-date-range\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showEditDateRangeModal\\\"]],[13],[0,\\\"\\\\n      Edit Date Range\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"duplicateAction\\\",[28,[\\\"testEventDropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label duplicate-test-event\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showDuplicateTestEventModal\\\"]],[13],[0,\\\"\\\\n        Duplicate Logbook\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"archiveAction\\\",[28,[\\\"testEventDropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label archive-test-event\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showArchiveConfirmationModal\\\"]],[13],[0,\\\"\\\\n        Archive Logbook\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"addGroupsAction\\\",[28,[\\\"testEventDropdownMenuTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label add-groups\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoGroupsToAdd\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"showAddGroupsModal\\\"]],[13],[0,\\\"\\\\n        Add Groups\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label set-defaults\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestDefaultsModal\\\"]],[13],[0,\\\"\\\\n      Edit Logbook Template\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item label delete remove-groups\\\"],[16,\\\"disabled\\\",[26,[\\\"hasNoGroupsToRemove\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"showRemoveGroupsModal\\\"]],[13],[0,\\\"\\\\n      Remove Groups\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-group-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-group-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"uryrqwtj\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event-group-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-group-table-head\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"site.test-events\\\",[28,[\\\"site\\\",\\\"id\\\"]]],null,{\\\"statements\\\":[[0,\\\"                  \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/test-event-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-test-event icon-test-event-grey\\\"],[15,\\\"alt\\\",\\\"Test event icon grey\\\"],[13],[14],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"testEvent\\\",\\\"startDate\\\"]],false],[0,\\\" to \\\"],[1,[28,[\\\"testEvent\\\",\\\"endDate\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-group-table-head\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"testEvent\\\",\\\"archived\\\"]]],null,{\\\"statements\\\":[[0,\\\"              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-archived\\\"],[13],[0,\\\"\\\\n                  archived\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"              \\\"],[1,[33,[\\\"test-event-group-dropdown-menu\\\"],null,[[\\\"testEventGroups\\\",\\\"missingGroups\\\",\\\"showAddGroupsModal\\\",\\\"showRemoveGroupsModal\\\",\\\"showEditDateRangeModal\\\",\\\"showDuplicateTestEventModal\\\",\\\"showArchiveConfirmationModal\\\",\\\"showQuickTestDefaultsModal\\\"],[[28,[\\\"testEventGroups\\\"]],[28,[\\\"missingGroups\\\"]],[28,[\\\"showAddGroupsModal\\\"]],[28,[\\\"showRemoveGroupsModal\\\"]],[28,[\\\"showEditDateRangeModal\\\"]],[28,[\\\"showDuplicateTestEventModal\\\"]],[28,[\\\"showArchiveConfirmationModal\\\"]],[28,[\\\"showQuickTestDefaultsModal\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"testEventGroups\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"tr\\\",[]],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"showTestEventGroupDetails\\\"]],[28,[\\\"testEventGroup\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"table-row\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column name\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[28,[\\\"testEventGroup\\\",\\\"group\\\",\\\"name\\\"]],false],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"testEventGroup\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-groups.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"testEvent\\\",\\\"archived\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n          To start populating this logbook, click on the add groups button below.\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"showAddGroupsModal\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Groups\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"testEventGroups\\\"]],\\\"Test Event Groups\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-group-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"89H/H22T\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"id\\\"],[\\\"test-event-modal\\\"]],{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isEditMode\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Edit Date Range\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isDuplicateMode\\\"]]],null,{\\\"statements\\\":[[0,\\\"        Duplicate Logbook\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        Add Logbook\\\\n      \\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeModal\\\"]],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n    \\\"],[18,\\\"default\\\",[[28,[null]]]],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/test-event-table\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Baodg5WL\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event-table\\\"],[15,\\\"class\\\",\\\"table\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Label\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"startDate column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            Start Date\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"endDate column\\\"],[13],[0,\\\"\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n            End Date\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"row-indicator\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"multiselect-checkboxes\\\"],null,[[\\\"options\\\",\\\"selection\\\",\\\"tagName\\\"],[[28,[\\\"testEvents\\\"]],[28,[\\\"selectedTestEvents\\\"]],\\\"tbody\\\"]],{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"row\\\"],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"isDeletingTestEvents\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showTestEvent\\\",[28,[\\\"testEvent\\\"]]],null]],null],null],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column endDate\\\"],[13],[1,[28,[\\\"testEvent\\\",\\\"label\\\"]],false],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[16,\\\"class\\\",[34,[\\\"column startDate \\\",[33,[\\\"if\\\"],[[28,[\\\"isDeletingTestEvents\\\"]],\\\"checkbox\\\"],null]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"isDeletingTestEvents\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/test-event-grey.svg\\\"],[15,\\\"class\\\",\\\"icon-test-event icon-test-event-grey\\\"],[15,\\\"alt\\\",\\\"Test event icon grey\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/test-event-blue.svg\\\"],[15,\\\"class\\\",\\\"icon-test-event icon-test-event-blue\\\"],[15,\\\"alt\\\",\\\"Test event icon blue\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[1,[33,[\\\"input\\\"],null,[[\\\"type\\\",\\\"id\\\",\\\"checked\\\"],[\\\"checkbox\\\",[28,[\\\"testEvent\\\",\\\"id\\\"]],[28,[\\\"isSelected\\\"]]]]],false],[0,\\\"\\\\n            \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[28,[\\\"testEvent\\\",\\\"id\\\"]],null],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"truncated\\\"],[13],[0,\\\"\\\\n            \\\"],[1,[28,[\\\"testEvent\\\",\\\"startDate\\\"]],false],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column endDate\\\"],[13],[1,[28,[\\\"testEvent\\\",\\\"endDate\\\"]],false],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"column row-indicator\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"testEvent\\\",\\\"archived\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"test-event-archived\\\"],[13],[0,\\\"\\\\n              archived\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-grey.svg\\\"],[15,\\\"alt\\\",\\\"Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"arrow-right-grey-blue\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Blue Row Icon\\\"],[13],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"testEvent\\\",\\\"isSelected\\\"]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoRecords\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-table\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-image\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/illus-test-events.svg\\\"],[15,\\\"alt\\\",\\\"Empty Table Image\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-message\\\"],[13],[0,\\\"\\\\n        Click on the button below to add your first logbook.\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"empty-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"openAddTestEventModal\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Add Logbook\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"table-actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"left\\\"],[13],[0,\\\"\\\\n        \\\"],[1,[33,[\\\"load-more-button\\\"],null,[[\\\"infinityLoad\\\",\\\"infinityModel\\\",\\\"modelBeingPaginated\\\"],[[28,[\\\"infinityLoad\\\"]],[28,[\\\"testEvents\\\"]],\\\"Logbooks\\\"]]],false],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"right\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[28,[\\\"isDeletingTestEvents\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-red delete-test-events\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteTestEvents\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n            Delete Logbooks\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],[28,[\\\"openAddTestEventModal\\\"]]]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Add Logbook\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button blue standard cancel\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleDeleteTestEvents\\\"]],[13],[0,\\\"\\\\n            Cancel\\\\n          \\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button red delete-multiple-test-events\\\"],[16,\\\"disabled\\\",[26,[\\\"noTestEventsSelected\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteTestEvents\\\",[28,[\\\"selectedTestEvents\\\"]]]],[13],[0,\\\"\\\\n            Delete Logbooks\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/test-event-table.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/tours/sequence-element\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"i6GsoGdk\", \"block\": \"{\\\"statements\\\":[[18,\\\"default\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[\\\"default\\\"],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/tours/sequence-element.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/user-panel\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"0uMNGaQz\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"user-panel\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"user-panel-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"subheading\\\"],[13],[0,\\\"User Details\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"forms/user-details-form\\\"],null,[[\\\"user\\\",\\\"employment\\\",\\\"updatePurchasingRights\\\"],[[28,[\\\"user\\\"]],[28,[\\\"employment\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"updatePurchasingRights\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"user-panel-actions delete-user\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small text-red\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteUser\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/delete.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n      Delete User\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/user-panel.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/users-dropdown-menu\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"OIiyFJYA\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-trigger\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"trigger\\\"]],[13],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"triggerContent\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isOpen\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"users-dropdown-menu-list\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item users\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"users\\\"]],[13],[0,\\\"\\\\n      Users\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"dropdown-menu-list-item site-requests\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transitionTo\\\",\\\"site-requests\\\"]],[13],[0,\\\"\\\\n      Site Requests\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/users-dropdown-menu.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/validated-multi-select\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"aueHAlVJ\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"input validated-multi-select \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"hasContent\\\"]],\\\"focused\\\"],null],\\\" \\\",[33,[\\\"unless\\\"],[[28,[\\\"disabled\\\"]],\\\"focused-border\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"displaySelection\\\"]],\\\"active focused\\\"],null]]]],[16,\\\"onclick\\\",[33,[\\\"unless\\\"],[[28,[\\\"displaySelection\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleShowSelection\\\"],null]],null],null],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displaySelection\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/arrow-up.svg\\\"],[15,\\\"class\\\",\\\"arrow-up\\\"],[15,\\\"alt\\\",\\\"Arrow Up Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleShowSelection\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"selection\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"selection\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"selected-item button small green\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"removeItem\\\",[28,[\\\"item\\\"]]]],[13],[0,\\\"\\\\n          \\\"],[1,[33,[\\\"item-name\\\"],[[28,[\\\"item\\\"]]],null],false],[0,\\\" \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon-close\\\"],[15,\\\"src\\\",\\\"/assets/icons/close-white.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[13],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"item\\\"]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"x-select\\\"],null,[[\\\"name\\\",\\\"value\\\",\\\"multiple\\\",\\\"on-click\\\",\\\"disabled\\\",\\\"class\\\"],[[28,[\\\"name\\\"]],[28,[\\\"selection\\\"]],true,[33,[\\\"action\\\"],[[28,[null]],\\\"selectionsChanged\\\"],null],[28,[\\\"disabled\\\"]],[33,[\\\"concat\\\"],[[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isValid\\\"]],\\\"valid\\\"],null],\\\"select\\\"],null]]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"canSelectAll\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[6,[\\\"component\\\"],[[28,[\\\"xs\\\",\\\"option\\\"]]],[[\\\"value\\\"],[\\\"all\\\"]],{\\\"statements\\\":[[0,\\\"All \\\"],[1,[26,[\\\"selectionModel\\\"]],false]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"options\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[6,[\\\"component\\\"],[[28,[\\\"xs\\\",\\\"option\\\"]]],[[\\\"value\\\"],[[28,[\\\"option\\\"]]]],{\\\"statements\\\":[[1,[33,[\\\"item-name\\\"],[[28,[\\\"option\\\"]]],null],false]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"option\\\"]},null]],\\\"locals\\\":[\\\"xs\\\"]},null],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"class\\\",\\\"alert-icon\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/validated-multi-select.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/validated-select\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"W8iQszLN\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"input \\\",[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"validation-error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"hasContent\\\"]],\\\"focused\\\"],null],\\\" \\\",[33,[\\\"unless\\\"],[[28,[\\\"disabled\\\"]],\\\"focused-border\\\"],null]]]],[13],[0,\\\"\\\\n  \\\"],[11,\\\"label\\\",[]],[16,\\\"for\\\",[26,[\\\"name\\\"]],null],[15,\\\"class\\\",\\\"label label-animated\\\"],[13],[1,[26,[\\\"labelText\\\"]],false],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"x-select\\\"],null,[[\\\"name\\\",\\\"value\\\",\\\"on-change\\\",\\\"disabled\\\",\\\"class\\\"],[[28,[\\\"name\\\"]],[28,[\\\"value\\\"]],[33,[\\\"action\\\"],[[28,[null]],[33,[\\\"mut\\\"],[[28,[\\\"value\\\"]]],null]],null],[28,[\\\"disabled\\\"]],[33,[\\\"concat\\\"],[[33,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]],\\\"error\\\"],null],\\\" \\\",[33,[\\\"if\\\"],[[28,[\\\"isValid\\\"]],\\\"valid\\\"],null]],null]]],{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"option\\\",[]],[13],[14],[0,\\\"\\\\n\\\"],[6,[\\\"each\\\"],[[28,[\\\"options\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[6,[\\\"component\\\"],[[28,[\\\"xs\\\",\\\"option\\\"]]],[[\\\"value\\\"],[[28,[\\\"option\\\",\\\"value\\\"]]]],{\\\"statements\\\":[[1,[28,[\\\"option\\\",\\\"label\\\"]],false]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"option\\\"]},null]],\\\"locals\\\":[\\\"xs\\\"]},null],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"input-error\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showErrorMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"error\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-alert.svg\\\"],[15,\\\"class\\\",\\\"alert-icon\\\"],[15,\\\"alt\\\",\\\"Alert Icon\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"message\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showWarningMessage\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"warning\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"get\\\"],[[33,[\\\"get\\\"],[[28,[\\\"model\\\",\\\"validations\\\",\\\"attrs\\\"]],[28,[\\\"name\\\"]]],null],\\\"warningMessage\\\"],null],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/validated-select.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/components/wholesaler-info-banner\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"AAtxFDIk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/icon-information.svg\\\"],[15,\\\"alt\\\",\\\"Information Icon\\\"],[13],[14],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"label\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasNoPurchasingRights\\\"]]],null,{\\\"statements\\\":[[0,\\\"    Only admins or owners of CleverSparky accounts can check out a shopping cart.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"cannotCheckoutAsOrganisation\\\"]]],null,{\\\"statements\\\":[[0,\\\"    You need to select a preferred wholesaler before you can check out. To select a wholesaler, click on ‘Update Business Details’ in the drop down menu.\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"cannotCheckoutAsSelf\\\"]]],null,{\\\"statements\\\":[[0,\\\"    You need to select a preferred wholesaler before you can check out. To select a wholesaler, click on ‘Edit My Profile’ in the drop down menu.\\\\n  \\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/components/wholesaler-info-banner.hbs\" } });\n});","define('clever-sparky-frontend/templates/components/x-select', ['exports', 'emberx-select/templates/components/x-select'], function (exports, _xSelect) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _xSelect.default;\n    }\n  });\n});","define(\"clever-sparky-frontend/templates/edit\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"i/IpUio0\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"edit\\\"],[15,\\\"class\\\",\\\"page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[33,[\\\"can\\\"],[\\\"view user-management\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back-button\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],[[\\\"class\\\"],[\\\"header-action-styles\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon large\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"alt\\\",\\\"Back Icon\\\"],[13],[14],[0,\\\"\\\\n          Back to Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/edit.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/edit/organisation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"urFzu7GO\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/organisation-edit-form\\\"],null,[[\\\"organisation\\\",\\\"wholesalers\\\",\\\"save\\\",\\\"isEditing\\\",\\\"openDeleteAccountModal\\\",\\\"authenticateWholesaler\\\",\\\"isQueryPending\\\"],[[28,[\\\"organisation\\\"]],[28,[\\\"wholesalers\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isEditing\\\"]],[33,[\\\"route-action\\\"],[\\\"openDeleteAccountModal\\\"],null],[33,[\\\"route-action\\\"],[\\\"authenticateWholesaler\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDeleteAccountModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"delete-account-modal\\\"],null,[[\\\"account\\\",\\\"deleteAccount\\\",\\\"setCurrentOrganisation\\\",\\\"closeDeleteAccountModal\\\"],[[28,[\\\"organisation\\\"]],[33,[\\\"route-action\\\"],[\\\"deleteAccount\\\"],null],[33,[\\\"route-action\\\"],[\\\"setCurrentOrganisation\\\"],null],[33,[\\\"route-action\\\"],[\\\"closeDeleteAccountModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/edit/organisation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/edit/profile\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"NHGn+zTo\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/user-form\\\"],null,[[\\\"user\\\",\\\"wholesalers\\\",\\\"isEditing\\\",\\\"save\\\",\\\"openDeleteAccountModal\\\",\\\"authenticateWholesaler\\\",\\\"isQueryPending\\\"],[[28,[\\\"user\\\"]],[28,[\\\"wholesalers\\\"]],[28,[\\\"isEditing\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"openDeleteAccountModal\\\"],null],[33,[\\\"route-action\\\"],[\\\"authenticateWholesaler\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDeleteAccountModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"delete-account-modal\\\"],null,[[\\\"account\\\",\\\"deleteAccount\\\",\\\"closeDeleteAccountModal\\\"],[[28,[\\\"user\\\"]],[33,[\\\"route-action\\\"],[\\\"deleteAccount\\\"],null],[33,[\\\"route-action\\\"],[\\\"closeDeleteAccountModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/edit/profile.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/forgot-password\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"ti1QnpFG\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"forgot-password\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-white.svg\\\"],[15,\\\"class\\\",\\\"logo-large\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/forgot-password.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/forgot-password/index\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"RzXg44l1\", \"block\": \"{\\\"statements\\\":[[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"instruction\\\"],[13],[0,\\\"Enter your email below and we’ll send you instructions on how to reset your password.\\\"],[14],[0,\\\"\\\\n\\\"],[1,[33,[\\\"forms/forgot-password-form\\\"],null,[[\\\"requestPasswordReset\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"requestPasswordReset\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/forgot-password/index.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/forgot-password/success\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"DQiyGeVz\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"success\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"We’ve sent a reset password email to \\\"],[1,[26,[\\\"email\\\"]],false],[14],[0,\\\"\\\\n  \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"confirmation\\\"],[13],[0,\\\"Please check your email to change your password.\\\"],[14],[0,\\\"\\\\n  \\\"],[6,[\\\"link-to\\\"],[\\\"login\\\"],[[\\\"class\\\"],[\\\"button green large auth-submit\\\"]],{\\\"statements\\\":[[0,\\\"OK\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/forgot-password/success.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"i4hZ1wl/\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"group\\\"],[15,\\\"class\\\",\\\"page site-page\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-header\\\"],null,[[\\\"site\\\",\\\"address\\\",\\\"fileName\\\",\\\"progress\\\",\\\"uploadStatus\\\",\\\"uploadCsv\\\",\\\"cancelUpload\\\",\\\"closeErrorModal\\\",\\\"toggleReportModal\\\",\\\"dismissProgressBar\\\"],[[28,[\\\"site\\\"]],[28,[\\\"address\\\"]],[28,[\\\"csvFileName\\\"]],[28,[\\\"csvUploadProgress\\\"]],[28,[\\\"csvUploadStatus\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"uploadCsv\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"cancelUpload\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"dismissProgressBar\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"body\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-menu\\\"],null,[[\\\"site\\\",\\\"currentEmployment\\\",\\\"isGroupsActive\\\"],[[28,[\\\"site\\\"]],[28,[\\\"currentEmployment\\\"]],true]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReportModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[19,\\\"partials/report-modal\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayErrorModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"file-upload-error-modal\\\"],null,[[\\\"uploadErrors\\\",\\\"closeErrorModal\\\"],[[28,[\\\"uploadErrors\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"qsPQdiBb\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-index\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"fitting-table\\\"],null,[[\\\"site\\\",\\\"group\\\",\\\"fittings\\\",\\\"batchName\\\",\\\"isMovingFittings\\\",\\\"selectedFittings\\\",\\\"isDeletingFittings\\\",\\\"showFittingDetails\\\",\\\"SortList\\\",\\\"toggleAddFitting\\\",\\\"batchDeleteFittings\\\",\\\"batchMoveFittings\\\",\\\"infinityLoad\\\",\\\"commissioned\\\",\\\"setIsCommissionedFilter\\\",\\\"setIsNotCommissionedFilter\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\",\\\"backToFittingsIndex\\\",\\\"refreshRoute\\\"],[[28,[\\\"site\\\"]],[28,[\\\"group\\\"]],[28,[\\\"fittings\\\"]],\\\"fittings\\\",[28,[\\\"isMovingFittings\\\"]],[28,[\\\"selectedFittings\\\"]],[28,[\\\"isDeletingFittings\\\"]],\\\"showFittingDetails\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"SortList\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleAddFitting\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchDeleteFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchMoveFittings\\\"],null],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[28,[\\\"commissioned\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsCommissionedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsNotCommissionedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"addOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"removeOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"backToFittingsIndex\\\"],null],[33,[\\\"route-action\\\"],[\\\"refreshRoute\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddFittingModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add a Fitting\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleAddFitting\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/fittings-form-new\\\"],null,[[\\\"fitting\\\",\\\"isQueryPending\\\",\\\"addFitting\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"isQueryPending\\\"]],\\\"addFitting\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isDeletingFittings\\\"]]],null,{\\\"statements\\\":[[6,[\\\"batch-delete-confirmation\\\"],null,[[\\\"displayBatchConfirmationSuccessModal\\\",\\\"batch\\\",\\\"batchName\\\",\\\"confirmBatchDelete\\\",\\\"closeBatchConfirmationModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"displayBatchConfirmationSuccessModal\\\"]],[28,[\\\"selectedFittings\\\"]],\\\"fitting\\\",[33,[\\\"route-action\\\"],[\\\"confirmBatchDeleteFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]],{\\\"statements\\\":[[0,\\\"        Are you sure you want to delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\"?\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isMovingFittings\\\"]]],null,{\\\"statements\\\":[[6,[\\\"batch-move-confirmation\\\"],null,[[\\\"group\\\",\\\"groups\\\",\\\"batch\\\",\\\"isQueryPending\\\",\\\"displayBatchConfirmationSuccessModal\\\",\\\"confirmBatchMove\\\",\\\"closeBatchConfirmationModal\\\"],[[28,[\\\"group\\\"]],[28,[\\\"sitesGroups\\\"]],[28,[\\\"selectedFittings\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"displayBatchConfirmationSuccessModal\\\"]],[33,[\\\"route-action\\\"],[\\\"confirmBatchMoveFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchConfirmationModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"        Select a group to move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\" to and then tap the move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\" button below.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/delete-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"6jgLUlB7\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Group\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canDeleteGroup\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this group? Deleting can't be undone.\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red add-group-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteGroup\\\",[28,[\\\"group\\\"]]]],[13],[0,\\\"\\\\n          Delete Group\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"To delete this group, you’ll first need to move its fittings into other groups. \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],[[\\\"class\\\",\\\"tagName\\\"],[\\\"button standard blue\\\",\\\"button\\\"]],{\\\"statements\\\":[[0,\\\"          OK\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n     \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/delete-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/edit-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"ftlwdcSL\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Edit Group Name\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/group-form\\\"],null,[[\\\"group\\\",\\\"save\\\",\\\"canEdit\\\",\\\"isQueryPending\\\"],[[28,[\\\"group\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],true,[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/edit-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/show\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"KQ0HcaE7\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-details\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"fitting-panel\\\"],null,[[\\\"fitting\\\",\\\"showEdit\\\",\\\"showDelete\\\",\\\"showSuccess\\\",\\\"edit\\\",\\\"delete\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"showEdit\\\"]],[28,[\\\"showDelete\\\"]],[28,[\\\"showSuccess\\\"]],\\\"edit\\\",\\\"delete\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showDeleteModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"fitting-delete-confirmation\\\"],null,[[\\\"deleteFitting\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"deleteFitting\\\",[28,[\\\"fitting\\\"]]],null],\\\"closeDeleteModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/show.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/show/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"YyCVrdN+\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/fitting-details-form\\\"],null,[[\\\"fitting\\\",\\\"group\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"commission\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[33,[\\\"route-action\\\"],[\\\"commission\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/show/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/show/maintenance\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"tyRfWy2N\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"maintenance-rows\\\"],null,[[\\\"rows\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"maintenances\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showNew\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"forms/maintenance-form\\\"],null,[[\\\"rows\\\",\\\"maintenance\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"maintenances\\\"]],[28,[\\\"newMaintenance\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/show/maintenance.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/groups/fittings/show/test-and-status\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"RlXiAqzN\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"deleteTest\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"latestTest\\\"]],[28,[\\\"newTest\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[33,[\\\"route-action\\\"],[\\\"deleteTest\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/groups/fittings/show/test-and-status.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/index\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"5aqG8WVb\", \"block\": \"{\\\"statements\\\":[[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/index.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/invite\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"+UpSEsFk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"invite\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-white.svg\\\"],[15,\\\"class\\\",\\\"logo-large\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"title\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"assets/icons/invite.svg\\\"],[15,\\\"class\\\",\\\"invite-icon\\\"],[15,\\\"alt\\\",\\\"Icon Invite\\\"],[13],[14],[0,\\\"\\\\n      \\\"],[11,\\\"h3\\\",[]],[13],[0,\\\"Invite to \\\"],[1,[28,[\\\"organisation\\\",\\\"name\\\"]],false],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isInvitePending\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"You have been invited to a new organisation \\\"],[1,[28,[\\\"organisation\\\",\\\"name\\\"]],false],[0,\\\". \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Would you like to accept and join the team?\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isInviteExpired\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"This invite has expired.\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"isInviteAccepted\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"You've already accepted this invite.\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"mod\\\"]]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Site transfer from \\\"],[1,[28,[\\\"mod\\\",\\\"firstName\\\"]],false],[0,\\\" \\\"],[1,[28,[\\\"mod\\\",\\\"lastName\\\"]],false],[14],[0,\\\"\\\\n    You have been nominated to take ownership of the emergency lighting data for \\\"],[1,[26,[\\\"sitenametmp\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isInvitePending\\\"]]],null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"mod\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"acceptTranser\\\"]],[13],[0,\\\"Accept Transer\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button large auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"skip\\\"]],[13],[0,\\\"Skip\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"accept\\\"]],[13],[0,\\\"Accept Invite\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button large auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"skip\\\"]],[13],[0,\\\"Skip\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"mod\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"openTransferSiteToUserModal\\\"]],[13],[0,\\\"Accept Transfer\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button large auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"skip\\\"]],[13],[0,\\\"Skip\\\"],[14],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"skip\\\"]],[13],[0,\\\"Continue\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayTransferSitesModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[15,\\\"style\\\",\\\"color: black\\\"],[13],[0,\\\"Transfer Site\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeTransferSiteToUserModal\\\"]],[13],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[15,\\\"style\\\",\\\"color: black\\\"],[13],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasOrganisationsToTransferTo\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Select a business to transfer this site to.\\\"],[14],[0,\\\"\\\\n\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n              \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n                \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"allowNullValue\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"selectedAccount\\\",[28,[\\\"displayOrganisations\\\"]],[28,[\\\"organisationId\\\"]],true,[28,[\\\"didValidate\\\"]],\\\"Business\\\"]]],false],[0,\\\"\\\\n\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"You can only transfer sites to other businesses where you are an owner or administrator.\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasOrganisationsToTransferTo\\\"]]],null,{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"acceptTransfer\\\",[28,[\\\"site\\\"]],[28,[\\\"organisationId\\\"]]]],[13],[0,\\\"\\\\n              Transfer\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeTransferSiteToUserModal\\\"]],[13],[0,\\\"\\\\n              OK\\\\n            \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/invite.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/login\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"2RK6iR1K\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"login\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-white.svg\\\"],[15,\\\"class\\\",\\\"logo-large\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Log In\\\"],[14],[0,\\\"\\\\n\\\"],[4,\\\"<br>\\\"],[0,\\\"\\\\n    \\\"],[4,\\\"<div style=\\\\\\\"border: 5px solid white;border-color: white;border-radius: 5px;\\\\\\\">\\\"],[0,\\\"\\\\n      \\\"],[4,\\\"<center>Server Maintenance</center>\\\"],[0,\\\"\\\\n\\\"],[4,\\\"<br>\\\"],[0,\\\"\\\\n     \\\"],[4,\\\"On the 30th September 2018 between 9am-11am the server will be shut down for scheduled maintence.\\\"],[0,\\\"\\\\n    \\\"],[4,\\\"</div>\\\"],[0,\\\"\\\\n    \\\"],[4,\\\"<br>\\\"],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/login-form\\\"],null,[[\\\"authenticate\\\"],[[33,[\\\"route-action\\\"],[\\\"authenticate\\\"],null]]]],false],[0,\\\"\\\\n\\\\n    \\\"],[6,[\\\"link-to\\\"],[\\\"signup\\\"],[[\\\"class\\\"],[\\\"signup\\\"]],{\\\"statements\\\":[[0,\\\"Sign Up\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n    \\\"],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"http://www.clevertronics.com.au\\\"],[15,\\\"target\\\",\\\"_blank\\\"],[13],[0,\\\"\\\\n\\\\n\\\\n\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-clevertronics.svg\\\"],[15,\\\"class\\\",\\\"\\\"],[13],[14],[0,\\\"\\\\n    \\\"],[14],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n    Version: 88\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/login.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/logout\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"yCwGRgPq\", \"block\": \"{\\\"statements\\\":[[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/logout.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/new-organisation\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"PiOh0R9/\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"new-organisation\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h3\\\",[]],[13],[0,\\\"Create a new business by entering information in the fields below\\\"],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"forms/organisation-new-form\\\"],null,[[\\\"organisation\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"organisation\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/new-organisation.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/onboarding\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"VomMXDUA\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"page onboarding\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"pagination-control \\\",[33,[\\\"if\\\"],[[28,[\\\"isFirstSlide\\\"]],\\\"hidden\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"previous\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-left-navy.svg\\\"],[15,\\\"alt\\\",\\\"Left arrow\\\"],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"swiper-container\\\"],null,[[\\\"pagination\\\",\\\"currentSlide\\\"],[true,[28,[\\\"currentSlide\\\"]]]],{\\\"statements\\\":[[6,[\\\"swiper-slide\\\"],null,null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"onboarding-slide\\\"],null,[[\\\"imageSrc\\\",\\\"title\\\",\\\"text\\\",\\\"textStyleClass\\\",\\\"isLastSlide\\\",\\\"goToSites\\\"],[\\\"/assets/images/illus-fittings.svg\\\",\\\"Introducing CleverSparky\\\",\\\"CleverSparky is a compliance management and testing app for those installing or managing emergency lighting.\\\",\\\"wide\\\",[28,[\\\"isLastSlide\\\"]],[33,[\\\"route-action\\\"],[\\\"goToSites\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"swiper-slide\\\"],null,null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"onboarding-slide\\\"],null,[[\\\"imageSrc\\\",\\\"title\\\",\\\"text\\\",\\\"textStyleClass\\\",\\\"isLastSlide\\\",\\\"goToSites\\\"],[\\\"/assets/images/illus-team.svg\\\",\\\"Setting up a team\\\",\\\"If you would like to set up a team within CleverSparky to share site information with other users, you can do that from the menu in the top right of the screen.\\\",\\\"\\\",[28,[\\\"isLastSlide\\\"]],[33,[\\\"route-action\\\"],[\\\"goToSites\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[6,[\\\"swiper-slide\\\"],null,null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"onboarding-slide\\\"],null,[[\\\"imageSrc\\\",\\\"title\\\",\\\"text\\\",\\\"textStyleClass\\\",\\\"isLastSlide\\\",\\\"goToSites\\\"],[\\\"/assets/images/illus-web-mobile.svg\\\",\\\"Apps for web and mobile\\\",\\\"The CleverSparky Web app helps you manage your sites and fittings remotely, including uploading CSV files to populate fittings quickly and easily. While on site, you can use your mobile device to scan the encoded LED on Clevertest Plus fittings or manually enter fitting, test and maintenance information.\\\",\\\"extra-wide\\\",[28,[\\\"isLastSlide\\\"]],[33,[\\\"route-action\\\"],[\\\"goToSites\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"pagination-control \\\",[33,[\\\"if\\\"],[[28,[\\\"isLastSlide\\\"]],\\\"hidden\\\"],null]]]],[5,[\\\"action\\\"],[[28,[null]],\\\"next\\\"]],[13],[0,\\\"\\\\n    \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/images/icon-arrow-right-navy.svg\\\"],[15,\\\"alt\\\",\\\"Right arrow\\\"],[13],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/onboarding.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/order-item-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"5tPmGu6V\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event\\\"],[15,\\\"class\\\",\\\"page site-page\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-header\\\"],null,[[\\\"site\\\",\\\"address\\\",\\\"fileName\\\",\\\"progress\\\",\\\"uploadStatus\\\",\\\"uploadCsv\\\",\\\"cancelUpload\\\",\\\"closeErrorModal\\\",\\\"toggleReportModal\\\",\\\"dismissProgressBar\\\"],[[28,[\\\"site\\\"]],[28,[\\\"address\\\"]],[28,[\\\"csvFileName\\\"]],[28,[\\\"csvUploadProgress\\\"]],[28,[\\\"csvUploadStatus\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"uploadCsv\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"cancelUpload\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"dismissProgressBar\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"body\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-menu\\\"],null,[[\\\"site\\\",\\\"currentEmployment\\\",\\\"isShoppingCartActive\\\"],[[28,[\\\"site\\\"]],[28,[\\\"currentEmployment\\\"]],true]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReportModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[19,\\\"partials/report-modal\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayErrorModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"file-upload-error-modal\\\"],null,[[\\\"uploadErrors\\\",\\\"closeErrorModal\\\"],[[28,[\\\"uploadErrors\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/order-item-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/order-item-group/order-items\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"JAq6Avlw\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"shouldDisplayInfoBanner\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"wholesaler-info-banner\\\"],null,[[\\\"hasNoPurchasingRights\\\",\\\"cannotCheckoutAsOrganisation\\\",\\\"cannotCheckoutAsSelf\\\"],[[28,[\\\"hasNoPurchasingRights\\\"]],[28,[\\\"cannotCheckoutAsOrganisation\\\"]],[28,[\\\"cannotCheckoutAsSelf\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[1,[33,[\\\"order-item-table\\\"],null,[[\\\"orderItems\\\",\\\"site\\\",\\\"group\\\",\\\"selectedItems\\\",\\\"isDeletingItems\\\",\\\"isCheckoutDisabled\\\",\\\"infinityLoad\\\",\\\"batchDeleteItems\\\",\\\"showCheckoutConfirmationModal\\\"],[[28,[\\\"orderItems\\\"]],[28,[\\\"site\\\"]],[28,[\\\"group\\\"]],[28,[\\\"selectedItems\\\"]],[28,[\\\"isDeletingItems\\\"]],[28,[\\\"isCheckoutDisabled\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchDeleteItems\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showCheckoutConfirmationModal\\\"],null]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchDeleteConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"batch-delete-confirmation\\\"],null,[[\\\"batch\\\",\\\"batchName\\\",\\\"confirmBatchDelete\\\",\\\"closeBatchConfirmationModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedItems\\\"]],\\\"Order Item\\\",[33,[\\\"route-action\\\"],[\\\"confirmBatchDeleteItems\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchDeleteConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]],{\\\"statements\\\":[[0,\\\"      Are you sure you want to delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"order item\\\"],null],false],[0,\\\"? Deleting can’t be undone.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayCheckoutConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"checkout-confirmation\\\"],null,[[\\\"batch\\\",\\\"confirmCheckout\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedGroup\\\"]],[33,[\\\"route-action\\\"],[\\\"confirmCheckout\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeCheckoutConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/order-item-group/order-items.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/partials/report-modal\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"SjPDwGq4\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"unless\\\"],[[28,[\\\"displayReportSuccessModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Send Report\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content wide-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/report-form\\\"],null,[[\\\"groups\\\",\\\"testEvents\\\",\\\"downloadReport\\\",\\\"isQueryPending\\\"],[[28,[\\\"sitesGroups\\\"]],[28,[\\\"testEvents\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"downloadReport\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"\\\\n\\\"],[6,[\\\"modal-success\\\"],null,[[\\\"actionText\\\",\\\"action\\\"],[\\\"OK\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null]]],{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"currentSite\\\",\\\"adminEmail\\\"]]],null,{\\\"statements\\\":[[0,\\\"      You report was sent to \\\"],[1,[28,[\\\"currentSite\\\",\\\"adminEmail\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"        You report was sent to \\\"],[1,[28,[\\\"currentUser\\\",\\\"email\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/partials/report-modal.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/partials/terms\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"8JYo3CO2\", \"block\": \"{\\\"statements\\\":[[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"p1\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"CLEVERTRONICS Licence agreement \\\"],[14],[14],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"p2\\\"],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics Pty. Ltd. (ACN 136 264 349) of 195 Chesterville Road, Moorabbin, Victoria 3189 (\\\"],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics\\\"],[14],[0,\\\") provides the CleverSparky Application, which is an online application that allows users to upload, collect and view information in relation to tests which are conducted on exit signs and emergency lighting products including Clevertronics Products. \\\"],[14],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"p2\\\"],[13],[11,\\\"span\\\",[]],[13],[0,\\\"This document sets out the terms and conditions on which Clevertronics will grant a licence to use the CleverSparky Application and provide other ancillary services to a User who downloads or is otherwise provided with a copy of the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n\\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"p2\\\"],[13],[11,\\\"span\\\",[]],[13],[0,\\\"By downloading, installing, accessing or using the CleverSparky Application, the User agrees that it has read, understood and will be bound by this licence agreement.\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"  \\\"],[14],[0,\\\"If the User does not accept these terms and conditions, the User must not install or use the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"terms-page\\\"],[15,\\\"class\\\",\\\"terms-formatting\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"1.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Definitions and interpretation\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"1.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"\\\"],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Definitions\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[0,\\\"In this licence agreement, unless the context otherwise requires:\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Android Device\\\"],[14],[0,\\\" has the meaning given to the term ‘Device’ in the Google Play Developer Distribution Agreement.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Apple\\\"],[14],[0,\\\" means Apple Inc., a California corporation with its principal place of business at 1 Infinite Loop, Cupertino, California 95014, U.S.A. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Apple Device\\\"],[14],[0,\\\" means the iPhone, iPad or other authorised iOS devices.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Australian Consumer Law\\\"],[14],[0,\\\" means Schedule 2 of the \\\"],[11,\\\"em\\\",[]],[13],[0,\\\"Competition and Consumer Act 2010\\\"],[14],[0,\\\" (Cth) (or any equivalent State or Territory legislation).\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(e)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Business User\\\"],[14],[0,\\\" has the meaning given in the definition of ‘User’ in clause 1.1(aa); \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(f)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"CleverSparky Application\\\"],[14],[0,\\\" means the online application that allows users to upload, collect and view information in relation to tests which are conducted on exit signs and emergency lighting products including Clevertronics Products and which is downloaded by or otherwise provided to the User and licenced to the User pursuant to this licence agreement. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(g)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics \\\"],[14],[0,\\\"means Clevertronics Pty. Ltd. (ACN 136 264 349).\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(h)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics Generated Information\\\"],[14],[0,\\\" means the information and data generated by the CleverSparky Application (including as a result of data manually entered by the User) including information about faults, required maintenance and fitting status of exit signs and emergency lighting products including Clevertronics Products, and which is made available to the User through the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics Infrastructure\\\"],[14],[0,\\\" means the computer servers or other hardware used by Clevertronics in connection with its provision of the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(j)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics Products\\\"],[14],[0,\\\" means Clevertronics’ ’Clevertest’ range of single point unit emergency exit lighting solutions and any other products or services sold or promoted by Clevertronics and notified by Clevertronics to the User from time to time.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(k)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Commencement Date\\\"],[14],[0,\\\" means the earliest of the date the User clicks the ‘I accept’ button, installs the CleverSparky Application, first uses the CleverSparky Application or otherwise confirms the User’s acceptance of this licence agreement electronically. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(l)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Consequential Loss\\\"],[14],[0,\\\" means Loss beyond the normal measure of damages and includes indirect Loss, Loss of revenue, Loss of reputation, Loss of data, Loss of profits, Loss of actual or anticipated savings, Loss of bargain, lost opportunities, including opportunities to enter into arrangements with third parties, Loss of use, cost of capital or costs of substitute goods, facilities or services.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(m)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Device\\\"],[14],[0,\\\" means an Android Device or an Apple Device, as the context requires.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(n)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Documentation\\\"],[14],[0,\\\" means any manuals, guides, reference materials or other similar documents in any form made available by Clevertronics to the User in connection with the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(o)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Force Majeure Event\\\"],[14],[0,\\\" means the occurrence of an event or circumstances beyond the reasonable control of the party affected by it, including war (declared or undeclared) civil commotion, military action, or an act of sabotage, strike, lockout or industrial action, storm, tempest, fire, flood, earthquake or other natural calamity or an ongoing internet or telecommunications outage or impairment. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(p)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Google\\\"],[14],[0,\\\" means Google Inc., a Delaware corporation with its principal place of business at 1600 Amphitheatre Parkway, Mountain View, California 94043, U.S.A. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(q)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Google Play\\\"],[14],[0,\\\" means the digital distribution platform operated by Google for applications for the Android operating system.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(r)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Improvement \\\"],[14],[0,\\\"means any modification, alteration, development, new use or other change to the CleverSparky Application which makes it more accurate, more useful, more functional, more efficient, more cost effective or in any other way improves the performance of the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(s)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Indirect Tax\\\"],[14],[0,\\\" means a good and services tax, a value added tax, a consumption tax or a tax of a similar kind.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(t)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Intellectual Property\\\"],[14],[0,\\\" includes all patents, designs, copyright, trade marks or circuit layout rights and any right to apply for the registration or grant of any of the above. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(u)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Loss\\\"],[14],[0,\\\" means any loss, liability, cost, claim, expense, damage, charge, penalty, outgoing or payment however arising, whether present, unascertained, immediate, future or contingent and whether direct loss or Consequential Loss.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(v)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Permitted Purpose \\\"],[14],[0,\\\"means personally accessing and using the CleverSparky Application to upload (either manually or, where available, through a wireless connection with a Clevertronics Product) User Content to help enable the CleverSparky Application and the User to assess certain characteristics of exit signs and emergency lighting products including Clevertronics Products and to log and access and view Clevertronics Generated Information in accordance with this licence agreement and in accordance with and as permitted by:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"in respect of any use of the CleverSparky Application on an Apple Device, the Usage Rules set out in Apple’s App Store Terms of Service; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"in respect of any use of the CleverSparky Application on an Android Device, the Usage Rules set out in the Google Play Terms of Service.\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"  \\\"],[14],[0,\\\" \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(w)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Term\\\"],[14],[0,\\\" has the meaning given in clause 12.1 of this licence agreement.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(x)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Third Party Application\\\"],[14],[0,\\\" means any product, service, system, application or internet site that is integrated or interfaced with the CleverSparky Application or otherwise interacts with the CleverSparky Application and that is owned or operated by a third party.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(y)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Unacceptable Acts \\\"],[14],[0,\\\"means any acts which Clevertronics reasonably considers to be unacceptable, including, without limitation, any acts which:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"may impose a burden or make excessive traffic demands on the Clevertronics Infrastructure;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"may violate the rights of any person, including copyright, trade secret or privacy right; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"use any automated device, software, process or means to access, retrieve, scrape or index the CleverSparky Application or any content on the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(z)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Unacceptable Content\\\"],[14],[0,\\\" means any: \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"content which, in Clevertronics’ reasonably held opinion, is obscene, offensive, upsetting, defamatory, illegal or inappropriate, infringes or appears to infringe the intellectual property rights of any person or contravenes or appears to contravene any applicable laws, regulations or codes of conduct;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"content which is incorrect, false or misleading;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"files with any viruses, malicious code or other conditions which could damage or interfere with data, hardware or software; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iv)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any content that, in Clevertronics’ reasonably held opinion, is objectionable or which may expose Clevertronics, its affiliates or users to any harm or liability. \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(aa)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User\\\"],[14],[0,\\\" means the person who downloads, installs, accesses or uses the CleverSparky Application and who enters into this licence agreement. If the User creates a CleverSparky business account for and on behalf of another legal entity (\\\"],[11,\\\"strong\\\",[]],[13],[0,\\\"Business User\\\"],[14],[0,\\\"), references in this licence agreement to User will be taken to include the Business User. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(bb)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User Content\\\"],[14],[0,\\\" means all data, comments, text, or other material uploaded either manually or, where available, through a wireless connection with exit signs and emergency lighting products including the Clevertronics Products by or on behalf of the User via the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(cc)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User Data \\\"],[14],[0,\\\"means all information, communications and other data uploaded by the User or which is generated or comes into existence as a result of the User using the CleverSparky Application, including site data, test data, location data in respect of exit signs and emergency lighting products including Clevertronics Products, Clevertronics Generated Information and information and metadata but excludes the User Content.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"1.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Interpretation\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"In this licence agreement, headings are inserted for convenience only and do not affect the interpretation of this licence agreement and, unless the context otherwise requires:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the singular includes the plural and vice versa;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if a word or phrase is defined, its other grammatical forms have a corresponding meaning;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the meaning of general words is not limited by specific examples introduced by ‘includes’, ‘including’, ‘for example’, ‘such as’ or similar expressions; \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"a reference to a person includes an individual, a partnership, a corporation or other corporate body, a joint venture, a firm, a trustee, a trust, an association (whether incorporated or not), a government and a government authority or agency; and\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(e)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"no provision of this licence agreement will be construed to the disadvantage of a party merely because that party was responsible for the preparation of the licence agreement or the inclusion of the provision in the licence agreement. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"2.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Licence\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"2.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Grant of licence \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Subject to the restrictions set out in clause 2.2, Clevertronics grants the User a personal, non-exclusive, worldwide, non-transferable, not-for resale or sub license, restricted right to access and use the CleverSparky Application and any Clevertronics Generated Information, User Content and User Data for the Permitted Purpose during the Term on any Devices owned or controlled by the User. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"2.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Licence restrictions\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The licence granted to the User under clause 2.1 permits the User to access and use the CleverSparky Application solely for the Permitted Purpose and the User must not access or use the CleverSparky Application for any other purpose. Without limiting the above, the User must not:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"permit or allow any other person to use the CleverSparky Application through the User’s Device;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"make any copies of the CleverSparky Application (other than copies that are made to download the CleverSparky Application and install the CleverSparky Application for the Permitted Purpose on any Devices owned or controlled by the User as permitted by this licence agreement and by the provisions of Apple’s App Store Terms of Service or the Google Play Terms of Service (as applicable));\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"   \\\"],[14],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"modify, adapt, translate, reverse engineer, de-compile, disassemble or copy all or any part of the CleverSparky Application or otherwise interfere or attempt to interfere with the proper working of the CleverSparky Application;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"attempt to circumvent or break any licence keys or any other encryption, decryption or other security device or technological protection measure contained in the CleverSparky Application;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(e)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"distribute any part of the CleverSparky Application for commercial purposes or otherwise sub-licence or resell the CleverSparky Application;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(f)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"create derivative works from all or any part of the CleverSparky Application;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(g)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"transfer, assign, rent, lease, lend, sell or otherwise dispose of all or any part of the CleverSparky Application; and\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(h)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"publish, communicate or otherwise make any part of the CleverSparky Application publically available.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"2.3\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Protection measures\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges that the CleverSparky Application may contain licence keys or other technological protection measures and Clevertronics may use the licence keys or other protection measures to disable or suspend the User’s access to the CleverSparky Application:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"following the termination of this licence agreement; or\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the User breaches (or Clevertronics reasonably suspects the User has breached) any provision of this licence agreement. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"2.4\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Monitoring Use and Access\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"For security, statistical and other related purposes Clevertronics may monitor the User's access to and use of the CleverSparky Application and record or otherwise capture data or other information relating to the User's access to and use of the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"3.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics Generated Information\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"3.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User Acknowledgements \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges and agrees that:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics provides information that may assist the User in making decisions regarding whether and when to carry out maintenance on, or replace, Clevertronics Products or particular components of certain Clevertronics Products;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the Clevertronics Generated Information is indicative only and does not constitute a recommendation by Clevertronics or any other person regarding whether or not a User should carry out any maintenance on, or replace, any Clevertronics Products;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics does not guarantee the accuracy of any Clevertronics Generation Information;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics does not provide any warranties that use of the CleverSparky Application will have any particular outcome, benefit or result for the User;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(e)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics retains complete discretion regarding the type of Clevertronics Generated Information which will be made available through the CleverSparky Application and the format in which such Clevertronics Generated Information will be made available; \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(f)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the Clevertronics Generated Information can only be used by the User for the purpose of the User obtaining information about the test results of exit signs and emergency lighting products including Clevertronics Products and other characteristics of the relevant Clevertronics Products;\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"   \\\"],[14],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(g)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the only representations and warranties that Clevertronics makes in relation to the Clevertronics Products are those set out in the Clevertronics warranty statement which can be accessed via the Clevertronics website, www.clevertronics.com.au;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(h)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"without limiting clause 3.1(e) the User cannot use or attempt to use the Clevertronics Generated Information as the basis (whether wholly or partially) for:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the rejection of any Clevertronics Products; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any claim by the User that any Clevertronics Products do not comply with any standards, specifications or other requirements for Clevertronics Products; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"to the maximum extent permitted by law, Clevertronics makes no representations either expressly or impliedly concerning Clevertronics Products or any Clevertronics Generated Information and Clevertronics accepts no liability whatsoever in connection with any Clevertronics Products or any Clevertronics Generated Information.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"3.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Confidentiality\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"In return for Clevertronics allowing the User to access the CleverSparky Application the User agrees that it will:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"not make any use of Clevertronics Generated Information other than as expressly permitted under this licence agreement; \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"take all precautions necessary to prevent unauthorised persons from obtaining access to Clevertronics Generated Information by any direct or indirect means; and\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"immediately notify Clevertronics of any potential, suspected or actual unauthorised access, disclosure, copying or use of Clevertronics Generated Information.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"4.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Updates and support\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"4.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"No obligation to develop updates \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges that nothing in this licence agreement imposes obligations on Clevertronics to develop, release or install for the User any updates, upgrades, patches, bug fixes, new releases or new versions in respect of the CleverSparky Application or any Improvements (\\\"],[11,\\\"strong\\\",[]],[13],[0,\\\"Updates\\\"],[14],[0,\\\"), provided however that if Clevertronics does develop or release any Updates, it may require that all such Updates be downloaded and used by the User. The User also acknowledges that nothing in this licence agreement imposes obligations on Clevertronics to provide any services to the User in respect of the CleverSparky Application including (without limitation) development or customisation services, technical support, training or maintenance services.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"4.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"No obligation to provide new features\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges and agrees that Clevertronics retains the sole discretion regarding the features of the CleverSparky Application and nothing in this licence agreement requires Clevertronics to provide functions and other benefits of the CleverSparky Application or maintain any features, functions or other benefits in respect of the CleverSparky Application. The User also acknowledges and agrees that Clevertronics may discontinue or alter any such features, functions or other benefits as Clevertronics sees fit from time to time. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"5.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Documentation\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User must use only the most recent version of the Documentation provided or made available by Clevertronics, and must follow any directions in the Documentation regarding the use of the CleverSparky Application. The User must also ensure that its access to and use of the CleverSparky Application complies with all current Clevertronics Policies. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"6.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Third Party Applications\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges and agrees that the CleverSparky Application may interact with Third Party Applications or require Third Party Applications to be used to provide particular features or functionality. \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"  \\\"],[14],[0,\\\"Where such Third Party Applications are used, the User acknowledges and agrees that:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics makes no representations or warranties relating to the Third Party Applications;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics is not related or associated with the providers of any Third Party Applications;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the inclusion of any link to or integration with any Third Party Application does not constitute or imply any affiliation with, or sponsorship, endorsement or approval by Clevertronics of the Third Party Application or the provider of the Third Party Application;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iv)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the User will abide by any obligations imposed upon it by the provider of the Third Party Application; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iv)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"access to, and use of, Third Party Applications is at the User’s risk and Clevertronics will in no way be responsible for any Loss that may result from the User’s access to, and use of, any Third Party Application, notwithstanding that any such Third Party Application may interface or interact with the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If the User does not agree to use any Third Party Applications or the terms of service of such Third Party Applications, the User acknowledges and accepts that certain features of the CleverSparky Application may not be available to the User.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"7.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Improper use of the CleverSparky Application\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"7.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Improper use\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User must not upload or post any Unacceptable Content to the CleverSparky Application or Clevertronics Infrastructure or perform any Unacceptable Acts. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"7.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"No obligation to monitor\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Nothing in this licence agreement imposes obligations on Clevertronics to monitor the CleverSparky Application for Unacceptable Content or Unacceptable Acts and the User acknowledges and agrees that it is responsible for monitoring its own use of the CleverSparky Application.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"7.3\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics may remove User Content\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics may, in its absolute discretion, remove any User Content where Clevertronics reasonably considers the User Content to contain Unacceptable Content.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"8.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Intellectual Property\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"8.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics’s Intellectual Property\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges that, subject to clause 2.1, nothing in this licence agreement grants the User any ownership of or rights in respect of the Intellectual Property in the CleverSparky Application or any Documentation or any Improvements to the CleverSparky Application or any Documentation. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"8.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User Content\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics acknowledges that the User will retain ownership of its Intellectual Property in respect of the User Content.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"9.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Security of CleverSparky Application\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics does not guarantee the security and safety of the User Data, User Content or any other information regarding the User and Clevertronics will not be liable for any Loss suffered by the User which arises out of or in connection with:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any computer viruses being transferred by or obtained as a result of the use of the CleverSparky Application;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any hacking into or other similar attacks on the CleverSparky Application or the Clevertronics Infrastructure; or \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any other data security issues in respect of the CleverSparky Application or the Clevertronics Infrastructure. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"10.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Back ups\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User acknowledges that Clevertronics does not provide back up or other similar services in respect of the Clevertronics Generated Information, User Content and User Data and the User is responsible for implementing its own back up and data retrieval procedures in respect of the Clevertronics Generated Information, User Content and User Data. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"11.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Subcontractors\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User agrees and acknowledges that Clevertronics may subcontract the performance of any of its obligations or the exercise of any of its rights under this licence agreement to any sub-contractor without the User’s consent and on such terms and conditions as Clevertronics deems fit from time to time. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"12.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Term and termination\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"12.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Term\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"This licence agreement commences on the Commencement Date and will continue until terminated pursuant to this clause 12. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"12.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Termination\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics may terminate this licence agreement and the licence granted under clause 2.1 at any time effective immediately:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"by removing the CleverSparky Application from the Apple App Store or Google Play (as applicable);\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"by notification to the User;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the User requests a refund under clause 14.3;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iv)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the User uses the CleverSparky Application in any way which Clevertronics considers may damage the reputation, brand or goodwill of Clevertronics or the CleverSparky Application; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(v)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the CleverSparky Application is removed from the App Store by Apple or Google Play by Google (as applicable).\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Either party may terminate this licence agreement and the licence granted under clause 2.1 effective immediately:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the other party breaches a term or condition of this licence agreement and fails to remedy such breach within seven days after being provided with written notice of the breach by the terminating party; or\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the other party breaches a term or condition of this licence agreement which the terminating party considers cannot be remedied (including, without limitation, in the case of the User posting any Unacceptable Content or performing any Unacceptable Acts).\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"12.3\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Post termination obligations \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Immediately on termination of this licence agreement the User must:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"cease all use of the CleverSparky Application; and \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"permanently delete all copies of the CleverSparky Application from any devices in its possession, custody or control. \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"12.4\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Survival of certain terms\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The party’s obligations under clauses 2.2, 3.2, 7, 8, 12, 13, 14, 15, 16 and 17 of this licence agreement will survive notwithstanding any termination of this licence agreement.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"13.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Liability of Clevertronics\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics acknowledges that: \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"in respect of the goods or services supplied by Clevertronics under this licence agreement, the User may have certain rights under law (including the Australian Consumer Law) ; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"in respect of any Clevertronics Products supplied by Clevertronics to the User, the User may have certain rights pursuant to the agreement under which the Clevertronics Products were supplied and also under law (including the Australian Consumer Law),\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"and nothing in this licence agreement should be interpreted as attempting to exclude, restrict or modify the application of any such rights.\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"and nothing in this licence agreement should be interpreted as attempting to exclude, restrict or modify the application of any such rights.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If the User makes a claim against Clevertronics regarding the goods or services provided under this licence agreement in respect of a breach or alleged breach by Clevertronics of any consumer guarantees or implied warranties imposed under any consumer law (including, without limitation, the consumer guarantee provisions under the Australian Consumer Law), then to the extent permitted by that law and subject to clause 13(a), Clevertronics’ liability to the User for such breach will be limited, at the election and discretion of Clevertronics, to:\\\"],[14],[0,\\\"\\\\n\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if the breach relates to goods:\\\"],[14],[0,\\\"\\\\n                          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"capital-letter-table\\\"],[13],[0,\\\"\\\\n                            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(A)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the replacement of the goods or the supply of the equivalent goods;\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(B)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the repair of the goods;\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(C)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the payment of the cost of replacing the goods or of acquiring equivalent goods; or\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(D)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the payment of the cost of having the goods repaired (provided that, for the avoidance of doubt, nothing in this clause operates to make Clevertronics responsible for any labour costs incurred in having the goods repaired); or\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                            \\\"],[14],[0,\\\"\\\\n                          \\\"],[14],[0,\\\"\\\\n                        \\\"],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"it the breach relates to services:\\\"],[14],[0,\\\"\\\\n                          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"capital-letter-table\\\"],[13],[0,\\\"\\\\n                            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(A)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the supply of the services again; or\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"capital-letter-order\\\"],[13],[0,\\\"(B)\\\"],[14],[0,\\\"\\\\n                                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the payment of the cost of having the services supplied again.\\\"],[14],[14],[0,\\\"\\\\n                              \\\"],[14],[0,\\\"\\\\n                            \\\"],[14],[0,\\\"\\\\n                          \\\"],[14],[0,\\\"\\\\n                        \\\"],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Subject to clause 13(b), and notwithstanding any other provision of this licence agreement, the maximum aggregate liability of Clevertronics to the User under or in connection with this licence agreement (including for breach of this licence agreement by Clevertronics or any negligent act or omission of Clevertronics) shall be limited to greater of the total amount of the licence fees (if any) paid to Clevertronics by the User for the CleverSparky Application or the sum of AUD $100. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics will not be liable to the User for any Consequential Loss incurred by the User under or in connection with this licence agreement or as a result of the User’s use of the CleverSparky Application, even if Clevertronics has been advised of the possibility of such Consequential Loss being incurred. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"14.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Warranties and liability\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"14.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User warranties\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Where the User is an individual who creates a CleverSparky business account for and on behalf of a Business User, the User represents and warrants to Clevertronics that they have full legal authority to enter into this licence agreement on behalf of the Business User and bind the Business User to the terms of this licence agreement.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"14.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Clevertronics warranty exclusions\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics does not warrant that the CleverSparky Application or any portion of the CleverSparky Application will meet the User’s requirements, the operation of the CleverSparky Application will be uninterrupted or error-free, the CleverSparky Application will be compatible with the User’s other software or systems or that the Documentation will be error free. All express or implied warranties in relation to the CleverSparky Application are expressly excluded o the extent permitted by law. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"14.3\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Process for warranty claims\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Un the event of any failure of the CleverSparky Application to conform to any applicable warranty, the User may notify Apple or Google (as applicable), and Apple or Google (as applicable) may refund the purchase price for the CleverSparky Application to the User (if any) and, to the maximum extent permitted by applicable law, Apple or Google (as applicable) will have no other warranty obligation whatsoever with respect to the CleverSparky Application, and any other claim, losses, liabilities, damages, costs or expenses attributable to any failure to conform to any warranty will be the sole responsibility of Clevertronics (subject to clauses 13 and 14.1). \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"15.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Indemnity\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User will indemnify Clevertronics and each of its directors, officers, employees, agents, contractors and related bodies corporate (\\\"],[11,\\\"strong\\\",[]],[13],[0,\\\"Indemnified Parties\\\"],[14],[0,\\\"), and keep each of them indemnified, against any claim made against an Indemnified Party or Loss suffered or incurred by an Indemnified Party which arises from or in respect of the User’s use of the CleverSparky App including:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any breach by the User of this licence agreement; or\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any negligent, or wilful acts or omission, theft, misconduct, dishonesty or fraud committed by the User, its officers, directors, employees, agents, representatives, delegates or contractors. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"16.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Taxes\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Unless expressly stated otherwise, all fees and other amounts payable by the User under or in connection with this licence agreement have been calculated without regard to any Indirect Tax.\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"  \\\"],[14],[0,\\\"Notwithstanding anything to the contrary in this licence agreement, if Indirect Tax is imposed upon or is payable by Clevertronics under or in connection with this licence agreement, the User must pay to Clevertronics an amount equal to the Indirect Tax upon demand by Clevertronics. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"17.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"General Provisions\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.1\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Governing law\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"This licence agreement will be governed by and construed exclusively under the laws of the State of Victoria, Australia and the parties submit to the non-exclusive jurisdiction of the courts of the State of Victoria and the Federal Court of Australia. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.2\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"International conventions \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The United Nations Convention on the International Sale of Goods (the Vienna Convention) will not apply to this licence agreement or the subject matter hereof. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.3\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Privacy policy \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics will collect, handle and store information (including personal information regarding the User) in accordance with Clevertronics’ privacy policy, a copy of which is available at \\\"],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"http://clevertronics.com.au\\\"],[13],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"s4\\\"],[13],[0,\\\"http://clevertronics.com.au\\\"],[14],[14],[0,\\\" /privacy-policy/ or by requesting a copy from Clevertronics. \\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.4\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Assignment\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User may not assign or otherwise deal with any of its rights or obligations under this licence agreement without the prior written consent of Clevertronics.\\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"Apple-converted-space\\\"],[13],[0,\\\"  \\\"],[14],[0,\\\"Clevertronics may assign, novate or otherwise deal with its rights under this licence agreement at any time effective immediately upon Clevertronics notifying the User of the assignment or novation.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.5\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Entire agreement\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"This licence agreement constitutes the entire agreement between the parties with respect to its subject matter and supersedes all previous communications, representations, inducements, undertakings, agreements or arrangements between the parties or their respective officers, employees or agents.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.6\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Waiver and variation \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics may vary the terms of this licence agreement by publishing new terms via an update to the CleverSparky Application. No failure to exercise or delay in exercising any right given by or under this licence agreement to a party constitutes a waiver and the party may still exercise that right in the future.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.7\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Force Majeure Event\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If a party is prevented, hindered or delayed from performing its obligations under this licence agreement by a Force Majeure Event, then as long as that situation continues, that party will be excused from performance of the obligation to the extent it is so prevented, hindered or delayed, and the time for performance of the obligation will be extended accordingly. If a party is affected by a Force Majeure Event it will immediately give the other party a notice of its occurrence and its effect or likely effect, and use all reasonable endeavours to minimise the effect of the Force Majeure Event and to bring it to an end.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.8\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Liability of parties \\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If a party consists of more than one person:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"an obligation of those parties is a joint obligation of all of them and a several obligation of each of them;\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"a right given to those parties is a right given jointly and severally to each of them, and if exercised by one of them, is deemed to be exercised jointly; and\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"a representation, warranty or undertaking made by those parties Is made by each of them.\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.9\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"User’s Legal Compliance\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User represents and warrants that he or she is not:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"located in a country that is subject to a U.S. Government embargo, or that has been designated by the U.S. Government as a ‘terrorist supporting’ country; and\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"listed on any U.S. Government list of prohibited or restricted parties. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.10\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Severability\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If any provision of this licence agreement is invalid or not enforceable in accordance with its terms in any jurisdiction, it is to be read down, if possible, so as to be valid and enforceable and will otherwise be capable of being severed to the extent of the invalidity or unenforceability without affecting the remaining provisions of this licence agreement or affecting the validity or enforceability of that provision in any other jurisdiction.\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[15,\\\"class\\\",\\\"sub-heading-row\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"sub-heading-order\\\"],[13],[0,\\\"17.11\\\"],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"li2\\\"],[13],[11,\\\"span\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Contacting Clevertronics\\\"],[14],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"The User may contact Clevertronics by email or telephone. Any questions, complaints or claims with respect to this licence agreement or the CleverSparky Application should be directed to Clevertronics by phone on +61 3 9559 2700 or email at \\\"],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"mailto:support@cleversparky.com.au\\\"],[13],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"s4\\\"],[13],[0,\\\"support@cleversparky.com.au\\\"],[14],[14],[0,\\\".\\\"],[14],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"18.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Additional Apple Terms\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If the CleverSparky Application is downloaded from the App Store or is otherwise used on an Apple Device, the following clauses apply and are incorporated into this licence agreement in respect of the use of the CleverSparky Application on the Apple Device:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if there is any inconsistency between the provisions of this licence agreement and the provisions of Apple’s App Store Terms of Service, the provisions of Apple’s App Store Terms of Service will prevail to the extent of the inconsistency; \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics and the User acknowledge that: \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"this licence agreement is concluded between Clevertronics and the User only, and not with Apple; and \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics, and not Apple, is solely responsible for the CleverSparky Application and the content thereof;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the User and Clevertronics acknowledge that Apple has no obligation whatsoever to furnish any maintenance and support services with respect to the CleverSparky Application (whether under this licence agreement or pursuant to any applicable law);\\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(d)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics and the User acknowledge that, in the event of any third party claim that the CleverSparky Application or the User’s possession and use of the CleverSparky Application infringes that third party’s intellectual property rights, Clevertronics (and not Apple) will be solely responsible for the investigation, defence, settlement and discharge of any such intellectual property infringement claim; \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(e)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the User and Clevertronics acknowledge that Clevertronics (and not Apple) is responsible for addressing any claims of the User or any third party relating to the CleverSparky Application or the User’s possession and/or use of the CleverSparky Application, including, but not limited to:\\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"product liability claims;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any claim that the CleverSparky Application fails to conform to any applicable legal or regulatory requirement; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"any claim arising under consumer protection or other similar legislation; and \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(f)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics and the User acknowledge and agree that Apple, and Apple’s subsidiaries, are third party beneficiaries of this licence agreement and that, upon the User’s acceptance of the terms and conditions of this licence agreement, Apple will have the right (and will be deemed to have accepted the right) to enforce this licence agreement against the User as a third party beneficiary thereof. \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"term\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"thead\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[15,\\\"class\\\",\\\"heading-order\\\"],[13],[0,\\\"19.\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"th\\\",[]],[13],[11,\\\"strong\\\",[]],[13],[0,\\\"Additional Android Terms\\\"],[14],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[14],[0,\\\"\\\\n        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"If the CleverSparky Application is downloaded from Google Play or is otherwise used on an Android Device, the following clauses apply and are incorporated into this licence agreement in respect of the use of the CleverSparky Application on the Android Device:\\\"],[14],[0,\\\"\\\\n          \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"letter-table\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(a)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"if there is any inconsistency between the provisions of this licence agreement, the provisions of the Google Play Terms of Service and/or the provisions of the Google Play Developer Distribution Agreement, the following order of precedence shall apply to the extent of the inconsistency: \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the provisions of the Google Play Developer Distribution Agreement;\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the provisions of the Google Play Terms of Service; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(iii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the terms of this licence agreement; \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(b)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics and the User acknowledge that: \\\"],[14],[0,\\\"\\\\n                  \\\"],[11,\\\"table\\\",[]],[15,\\\"class\\\",\\\"numerals-table\\\"],[13],[0,\\\"\\\\n                    \\\"],[11,\\\"tbody\\\",[]],[13],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(i)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"this licence agreement is concluded between Clevertronics and the User only, and not with Google; and \\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                      \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"numeral-order\\\"],[13],[0,\\\"(ii)\\\"],[14],[0,\\\"\\\\n                        \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"Clevertronics, and not Google, is solely responsible for the CleverSparky Application and the content thereof; and\\\"],[14],[14],[0,\\\"\\\\n                      \\\"],[14],[0,\\\"\\\\n                    \\\"],[14],[0,\\\"\\\\n                  \\\"],[14],[0,\\\"\\\\n                \\\"],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n              \\\"],[11,\\\"tr\\\",[]],[13],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[15,\\\"class\\\",\\\"letter-order\\\"],[13],[0,\\\"(c)\\\"],[14],[0,\\\"\\\\n                \\\"],[11,\\\"td\\\",[]],[13],[11,\\\"span\\\",[]],[13],[0,\\\"the User and Clevertronics acknowledge that Google has no obligation whatsoever to furnish any maintenance and support services with respect to the CleverSparky Application (whether under this licence agreement or pursuant to any applicable law). \\\"],[14],[14],[0,\\\"\\\\n              \\\"],[14],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/partials/terms.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/reset-password\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"1pF/mmo0\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"reset-password\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"login\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-white.svg\\\"],[15,\\\"class\\\",\\\"logo-large\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/reset-password.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/reset-password/index\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"7ApMH9yT\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/reset-password-form\\\"],null,[[\\\"resetPassword\\\",\\\"token\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"resetPassword\\\"],null],[28,[\\\"token\\\"]],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/reset-password/index.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/reset-password/success\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"tUXMEwZk\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"success\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h1\\\",[]],[15,\\\"class\\\",\\\"success-heading\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/success-tick-white.svg\\\"],[15,\\\"class\\\",\\\"success-tick\\\"],[15,\\\"alt\\\",\\\"Success tick white\\\"],[13],[14],[0,\\\"Sucess!\\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"h3\\\",[]],[15,\\\"class\\\",\\\"success-message\\\"],[13],[0,\\\"Your password has been updated. \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"subheading\\\"],[13],[0,\\\"You can now use your new password to login to the CleverSparky Web and Mobile app.\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"userAgent\\\",\\\"device\\\",\\\"isMobile\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"a\\\",[]],[16,\\\"href\\\",[26,[\\\"loginRedirectUrl\\\"]],null],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[13],[0,\\\"Log In\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[6,[\\\"link-to\\\"],[\\\"login\\\"],[[\\\"tagName\\\",\\\"class\\\"],[\\\"button\\\",\\\"button large green auth-submit\\\"]],{\\\"statements\\\":[[0,\\\"      Log In\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]}],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/reset-password/success.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/signup\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Sxq1WoQW\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"signup\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back-bar\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"back\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/back.svg\\\"],[15,\\\"class\\\",\\\"icon-back\\\"],[15,\\\"alt\\\",\\\"Back icon\\\"],[13],[14],[0,\\\"Back\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[16,\\\"class\\\",[34,[\\\"content \\\",[33,[\\\"if\\\"],[[28,[\\\"isTermsRoute\\\"]],\\\"terms-content\\\"],null]]]],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"login\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/logo-white.svg\\\"],[15,\\\"class\\\",\\\"logo-large\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/signup.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/signup/business\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Td/KatUG\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/organisation-form\\\"],null,[[\\\"organisation\\\",\\\"next\\\"],[[28,[\\\"model\\\",\\\"organisation\\\"]],[33,[\\\"route-action\\\"],[\\\"next\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/signup/business.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/signup/terms\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"G/b02JLU\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"signup-terms\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"heading\\\"],[13],[0,\\\"Terms and Conditions\\\"],[14],[0,\\\"\\\\n  \\\"],[19,\\\"partials/terms\\\"],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"type\\\",\\\"button\\\"],[15,\\\"name\\\",\\\"button\\\"],[15,\\\"class\\\",\\\"button large green auth-submit terms-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"accept\\\"]],[13],[0,\\\"I Agree\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/signup/terms.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/signup/user\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"73vXissC\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/user-signup-form\\\"],null,[[\\\"user\\\",\\\"organisation\\\",\\\"isQueryPending\\\",\\\"submit\\\",\\\"isTechnicianSignup\\\"],[[28,[\\\"user\\\"]],[28,[\\\"organisation\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"submit\\\"],null],[28,[\\\"isTechnicianSignup\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/signup/user.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site-request\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"gescZ+F8\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-request\\\"],[15,\\\"class\\\",\\\"auth-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"title\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h3\\\",[]],[13],[0,\\\"Grant Access to Site\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Would you like to grant \\\"],[1,[28,[\\\"siteRequest\\\",\\\"user\\\",\\\"fullName\\\"]],false],[0,\\\" access to \\\"],[1,[28,[\\\"siteRequest\\\",\\\"site\\\",\\\"businessName\\\"]],false],[0,\\\" at \\\"],[1,[28,[\\\"siteRequest\\\",\\\"site\\\",\\\"address\\\"]],false],[0,\\\"?\\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"actions\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button green large auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"approve\\\"]],[13],[0,\\\"Grant Access\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button large text-red auth-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"decline\\\"]],[13],[0,\\\"Decline Access\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site-request.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site-requests\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"7Y0BNdhw\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site-requests\\\"],[15,\\\"class\\\",\\\"page main-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"Site Requests\\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-request-table\\\"],null,[[\\\"siteRequests\\\",\\\"isQueryPending\\\",\\\"infinityLoad\\\",\\\"approve\\\",\\\"decline\\\"],[[28,[\\\"siteRequests\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"route-action\\\"],[\\\"approve\\\"],null],[33,[\\\"route-action\\\"],[\\\"decline\\\"],null]]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site-requests.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"XFS6xzSj\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"site\\\"],[15,\\\"class\\\",\\\"page site-page\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-header\\\"],null,[[\\\"site\\\",\\\"address\\\",\\\"fileName\\\",\\\"progress\\\",\\\"uploadStatus\\\",\\\"uploadCsv\\\",\\\"cancelUpload\\\",\\\"closeErrorModal\\\",\\\"toggleReportModal\\\",\\\"dismissProgressBar\\\",\\\"viewSiteTourNames\\\"],[[28,[\\\"site\\\"]],[28,[\\\"address\\\"]],[28,[\\\"csvFileName\\\"]],[28,[\\\"csvUploadProgress\\\"]],[28,[\\\"csvUploadStatus\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"uploadCsv\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"cancelUpload\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"dismissProgressBar\\\"],null],[28,[\\\"viewSiteTourNames\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"body\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-menu\\\"],null,[[\\\"site\\\",\\\"currentEmployment\\\",\\\"viewSiteTourNames\\\"],[[28,[\\\"site\\\"]],[28,[\\\"currentEmployment\\\"]],[28,[\\\"viewSiteTourNames\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReportModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[19,\\\"partials/report-modal\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayErrorModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"file-upload-error-modal\\\"],null,[[\\\"uploadErrors\\\",\\\"closeErrorModal\\\"],[[28,[\\\"uploadErrors\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/deleted-fittings\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"WBP4L2Xr\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"Deleted Fittings\\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-index\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"deleted-fitting-table\\\"],null,[[\\\"deletedFittings\\\",\\\"showFittingDetails\\\",\\\"infinityLoad\\\"],[[28,[\\\"deletedFittings\\\"]],\\\"showFittingDetails\\\",[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/deleted-fittings.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/deleted-fittings/show\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"DWGpNm9W\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-details\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"fitting-panel\\\"],null,[[\\\"fitting\\\",\\\"showEdit\\\",\\\"showDelete\\\",\\\"showReinstate\\\",\\\"type\\\",\\\"reinstate\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"showEdit\\\"]],[28,[\\\"showDelete\\\"]],[28,[\\\"showReinstate\\\"]],\\\"deleted-fittings\\\",\\\"reinstate\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReinstateModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"fitting-reinstate-confirmation\\\"],null,[[\\\"reinstateFitting\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"reinstateFitting\\\",[28,[\\\"fitting\\\"]]],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeReinstateModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/deleted-fittings/show.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/deleted-fittings/show/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"O+stoREK\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/fitting-details-form\\\"],null,[[\\\"fitting\\\",\\\"group\\\",\\\"canEdit\\\",\\\"showMarkCommission\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],false,false]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/deleted-fittings/show/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/deleted-fittings/show/maintenance\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"SmFUajI9\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"maintenance-rows\\\"],null,[[\\\"rows\\\",\\\"canEdit\\\"],[[28,[\\\"maintenances\\\"]],false]]],false],[0,\\\"\\\\n\\\"],[1,[33,[\\\"forms/maintenance-form\\\"],null,[[\\\"rows\\\"],[[28,[\\\"maintenances\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/deleted-fittings/show/maintenance.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/deleted-fittings/show/test-and-status\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"vJCnaVEp\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"showAddNewTestButton\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"latestTest\\\"]],[28,[\\\"newTest\\\"]],false,false]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/deleted-fittings/show/test-and-status.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"z74US8D9\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"details\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-details-dropdown-menu\\\"],null,[[\\\"edit\\\",\\\"delete\\\",\\\"currentEmployment\\\",\\\"openTransferSiteModal\\\",\\\"openTransferSiteToUserModal\\\"],[[33,[\\\"action\\\"],[[28,[null]],\\\"edit\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"delete\\\"],null],[28,[\\\"currentEmployment\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"openTransferSiteModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"openTransferSiteToUserModal\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"forms/site-form\\\"],null,[[\\\"canEdit\\\",\\\"site\\\",\\\"save\\\",\\\"delete\\\",\\\"isQueryPending\\\"],[[28,[\\\"canEdit\\\"]],[28,[\\\"site\\\"]],\\\"save\\\",\\\"delete\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDeleteConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Site\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"cancel\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this site? Deleting can't be undone.\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard red add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"confirmDeleteSite\\\",[28,[\\\"site\\\"]]]],[13],[0,\\\"\\\\n          Delete Site\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayTransferSitesModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Transfer Site\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeTransferSiteModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasOrganisationsToTransferTo\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Select a business to transfer this site to.\\\"],[14],[0,\\\"\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n              \\\"],[1,[33,[\\\"form-validated-select\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"options\\\",\\\"value\\\",\\\"allowNullValue\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"selectedAccount\\\",[28,[\\\"displayOrganisations\\\"]],[28,[\\\"organisationId\\\"]],true,[28,[\\\"didValidate\\\"]],\\\"Business\\\"]]],false],[0,\\\"\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"You can only transfer sites to other businesses where you are an owner or administrator.\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasOrganisationsToTransferTo\\\"]]],null,{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transferSite\\\",[28,[\\\"site\\\"]],[28,[\\\"organisationId\\\"]]]],[13],[0,\\\"\\\\n            Transfer\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeTransferSiteModal\\\"]],[13],[0,\\\"\\\\n            OK\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}],[0,\\\"      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayTransferSitesToUserModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Transfer Site\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeTransferSiteToUserModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n\\\\n\\\\n          \\\"],[11,\\\"p\\\",[]],[15,\\\"class\\\",\\\"message\\\"],[13],[0,\\\"Transfer site to another user using their email address.\\\"],[14],[0,\\\"\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"form\\\"],[13],[0,\\\"\\\\n            \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"row row-animated\\\"],[13],[0,\\\"\\\\n\\\\n              \\\"],[1,[33,[\\\"form-validated-input\\\"],null,[[\\\"type\\\",\\\"model\\\",\\\"name\\\",\\\"value\\\",\\\"disabled\\\",\\\"didValidate\\\",\\\"labelText\\\"],[\\\"text\\\",[28,[\\\"model\\\"]],\\\"selectedAccount\\\",[28,[\\\"emailaddress\\\"]],[28,[\\\"inputsDisabled\\\"]],[28,[\\\"didValidate\\\"]],\\\"Email address\\\"]]],false],[0,\\\"\\\\n\\\\n\\\\n            \\\"],[14],[0,\\\"\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n\\\\n          \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button standard blue add-site-submit\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"transferSiteOwner\\\",[28,[\\\"site\\\"]],[28,[\\\"organisationId\\\"]],[28,[\\\"emailaddress\\\"]]]],[13],[0,\\\"\\\\n            Transfer\\\\n          \\\"],[14],[0,\\\"\\\\n\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/faults\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"BFZI1QGT\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"Faulty Fittings\\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-index\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"fault-table\\\"],null,[[\\\"faultyFittings\\\",\\\"showFittingDetails\\\",\\\"infinityLoad\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\",\\\"backToFaultFittingsIndex\\\",\\\"refreshRoute\\\"],[[28,[\\\"faults\\\"]],\\\"showFittingDetails\\\",[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"addOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"removeOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"backToFaultFittingsIndex\\\"],null],[33,[\\\"route-action\\\"],[\\\"refreshRoute\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/faults.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/faults/show\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Dq+kMFrU\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-details\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"fitting-panel\\\"],null,[[\\\"fitting\\\",\\\"showEdit\\\",\\\"showDelete\\\",\\\"type\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"showEdit\\\"]],[28,[\\\"showDelete\\\"]],\\\"faults\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/faults/show.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/faults/show/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"gdIDRroz\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/fitting-details-form\\\"],null,[[\\\"fitting\\\",\\\"group\\\",\\\"canEdit\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],false]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/faults/show/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/faults/show/maintenance\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"HqO6iJLB\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"maintenance-rows\\\"],null,[[\\\"rows\\\",\\\"canEdit\\\"],[[28,[\\\"maintenances\\\"]],false]]],false],[0,\\\"\\\\n\\\"],[1,[33,[\\\"forms/maintenance-form\\\"],null,[[\\\"rows\\\"],[[28,[\\\"maintenances\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/faults/show/maintenance.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/faults/show/test-and-status\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Dxv5Vq6D\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"showAddNewTestButton\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"latestTest\\\"]],[28,[\\\"newTest\\\"]],false,false]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/faults/show/test-and-status.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"q2hjQjHj\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-index\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"fitting-table\\\"],null,[[\\\"fittings\\\",\\\"site\\\",\\\"model\\\",\\\"group\\\",\\\"fittings\\\",\\\"batchName\\\",\\\"isMovingFittings\\\",\\\"selectedFittings\\\",\\\"isDeletingFittings\\\",\\\"showFittingDetails\\\",\\\"SortList\\\",\\\"toggleAddFitting\\\",\\\"batchDeleteFittings\\\",\\\"batchMoveFittings\\\",\\\"infinityLoad\\\",\\\"commissioned\\\",\\\"setIsCommissionedFilter\\\",\\\"setIsNotCommissionedFilter\\\",\\\"addOrderItem\\\",\\\"removeOrderItem\\\",\\\"backToFittingsIndex\\\",\\\"refreshRoute\\\"],[[28,[\\\"fittings\\\"]],[28,[\\\"site\\\"]],[28,[\\\"model\\\"]],[28,[\\\"group\\\"]],[28,[\\\"fittings\\\"]],\\\"fittings\\\",[28,[\\\"isMovingFittings\\\"]],[28,[\\\"selectedFittings\\\"]],[28,[\\\"isDeletingFittings\\\"]],\\\"showFittingDetails\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"SortList\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleAddFitting\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchDeleteFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchMoveFittings\\\"],null],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[28,[\\\"commissioned\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsCommissionedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsNotCommissionedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"addOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"removeOrderItem\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"backToFittingsIndex\\\"],null],[33,[\\\"route-action\\\"],[\\\"refreshRoute\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddFittingModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add a Fitting\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleAddFitting\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/fittings-form-new\\\"],null,[[\\\"fitting\\\",\\\"group\\\",\\\"isQueryPending\\\",\\\"addFitting\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],[28,[\\\"isQueryPending\\\"]],\\\"addFitting\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"isDeletingFittings\\\"]]],null,{\\\"statements\\\":[[6,[\\\"batch-delete-confirmation\\\"],null,[[\\\"displayBatchConfirmationSuccessModal\\\",\\\"batch\\\",\\\"batchName\\\",\\\"confirmBatchDelete\\\",\\\"closeBatchConfirmationModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"displayBatchConfirmationSuccessModal\\\"]],[28,[\\\"selectedFittings\\\"]],\\\"fitting\\\",[33,[\\\"route-action\\\"],[\\\"confirmBatchDeleteFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]],{\\\"statements\\\":[[0,\\\"        Are you sure you want to delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\"?\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"isMovingFittings\\\"]]],null,{\\\"statements\\\":[[6,[\\\"batch-move-confirmation\\\"],null,[[\\\"group\\\",\\\"groups\\\",\\\"batch\\\",\\\"isQueryPending\\\",\\\"displayBatchConfirmationSuccessModal\\\",\\\"confirmBatchMove\\\",\\\"closeBatchConfirmationModal\\\"],[[28,[\\\"group\\\"]],[28,[\\\"sitesGroups\\\"]],[28,[\\\"selectedFittings\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"displayBatchConfirmationSuccessModal\\\"]],[33,[\\\"route-action\\\"],[\\\"confirmBatchMoveFittings\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchConfirmationModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"        Select a group to move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\" to and then tap the move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"fitting\\\"],null],false],[0,\\\" button below.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/delete-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"971dhSc3\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete Group\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"canDeleteGroup\\\"]]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this group? Deleting can't be undone.\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"button small red add-group-submit\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteGroup\\\",[28,[\\\"group\\\"]]]],[13],[0,\\\"\\\\n          Delete Group\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n\\\"]],\\\"locals\\\":[]},{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"To delete this group, you’ll first need to move its fittings into other groups. \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions add-action\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],[[\\\"class\\\",\\\"tagName\\\"],[\\\"button standard blue\\\",\\\"button\\\"]],{\\\"statements\\\":[[0,\\\"          OK\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n     \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]}]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/delete-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/edit-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"xzzH5W5D\", \"block\": \"{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Edit Group Name\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"groups.fittings\\\"],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"forms/group-form\\\"],null,[[\\\"group\\\",\\\"save\\\",\\\"canEdit\\\",\\\"isQueryPending\\\"],[[28,[\\\"group\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],true,[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/edit-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/show\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"dg0Hsqwn\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-details\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"fitting-panelsite\\\"],null,[[\\\"fitting\\\",\\\"showEdit\\\",\\\"showDelete\\\",\\\"showSuccess\\\",\\\"edit\\\",\\\"delete\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"showEdit\\\"]],[28,[\\\"showDelete\\\"]],[28,[\\\"showSuccess\\\"]],\\\"edit\\\",\\\"delete\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showDeleteModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"fitting-delete-confirmation\\\"],null,[[\\\"deleteFitting\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"deleteFitting\\\",[28,[\\\"fitting\\\"]]],null],\\\"closeDeleteModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/show.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/show/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"LB5LmX6y\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/fitting-details-form\\\"],null,[[\\\"fitting\\\",\\\"group\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"commission\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[33,[\\\"route-action\\\"],[\\\"commission\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/show/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/show/maintenance\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"YCJZC4OM\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"maintenance-rows\\\"],null,[[\\\"rows\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"maintenances\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showNew\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"forms/maintenance-form\\\"],null,[[\\\"rows\\\",\\\"maintenance\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"maintenances\\\"]],[28,[\\\"newMaintenance\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/show/maintenance.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/fittings/show/test-and-status\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"yr//I6/B\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"deleteTest\\\",\\\"isQueryPending\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"latestTest\\\"]],[28,[\\\"newTest\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[33,[\\\"route-action\\\"],[\\\"deleteTest\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/fittings/show/test-and-status.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/groups\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Zb/eXzxU\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"group-table\\\"],null,[[\\\"groups\\\",\\\"selectedGroups\\\",\\\"isDeletingGroups\\\",\\\"infinityLoad\\\",\\\"toggleAddGroup\\\",\\\"batchDeleteGroups\\\",\\\"showGroupDetails\\\"],[[28,[\\\"groups\\\"]],[28,[\\\"selectedGroups\\\"]],[28,[\\\"isDeletingGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleAddGroup\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchDeleteGroups\\\"],null],\\\"showGroupDetails\\\"]]],false],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddGroupModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add a Group\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleAddGroup\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/group-form\\\"],null,[[\\\"group\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"group\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"batch-delete-confirmation\\\"],null,[[\\\"batch\\\",\\\"batchName\\\",\\\"confirmBatchDelete\\\",\\\"closeBatchConfirmationModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedGroups\\\"]],\\\"group\\\",[33,[\\\"route-action\\\"],[\\\"confirmBatchDeleteGroups\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]],{\\\"statements\\\":[[0,\\\"      Are you sure you want to delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"group\\\"],null],false],[0,\\\"? Deleting can’t be undone.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchErrorModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"batch-delete-error\\\"],null,[[\\\"batchName\\\",\\\"batchLength\\\",\\\"closeBatchErrorModal\\\"],[\\\"group\\\",[28,[\\\"batchLength\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchErrorModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"      To delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"group\\\"],null],false],[0,\\\", you’ll first need to move \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"its\\\"],null],false],[0,\\\" fittings into other groups.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/groups.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/shopping-cart\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"tXovrG1z\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"shouldDisplayInfoBanner\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"wholesaler-info-banner\\\"],null,[[\\\"hasNoPurchasingRights\\\",\\\"cannotCheckoutAsOrganisation\\\",\\\"cannotCheckoutAsSelf\\\"],[[28,[\\\"hasNoPurchasingRights\\\"]],[28,[\\\"cannotCheckoutAsOrganisation\\\"]],[28,[\\\"cannotCheckoutAsSelf\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[1,[33,[\\\"shopping-cart-group-table\\\"],null,[[\\\"currentOrderGroups\\\",\\\"selectedGroups\\\",\\\"isCheckingOut\\\",\\\"isCheckoutDisabled\\\",\\\"showOrderItems\\\",\\\"showCheckoutConfirmationModal\\\",\\\"downloadCartReport\\\"],[[28,[\\\"currentOrderGroups\\\"]],[28,[\\\"selectedGroups\\\"]],[28,[\\\"isCheckingOut\\\"]],[28,[\\\"isCheckoutDisabled\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showOrderItems\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showCheckoutConfirmationModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"downloadCartReport\\\"],null]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayCheckoutConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"checkout-confirmation\\\"],null,[[\\\"batch\\\",\\\"confirmCheckout\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"confirmCheckout\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeCheckoutConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDownloadReportSuccessModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"modal-success\\\"],null,[[\\\"actionText\\\",\\\"action\\\"],[\\\"OK\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"closeDownloadReportSuccessModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"      You report was sent to \\\"],[1,[28,[\\\"currentUser\\\",\\\"email\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/shopping-cart.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/site/test-events\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"GNCIabHF\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"test-event-table\\\"],null,[[\\\"testEvents\\\",\\\"isDeletingTestEvents\\\",\\\"openAddTestEventModal\\\",\\\"showTestEvent\\\",\\\"batchDeleteTestEvents\\\",\\\"infinityLoad\\\"],[[28,[\\\"testEvents\\\"]],[28,[\\\"isDeletingTestEvents\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"openAddTestEventModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showTestEvent\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"batchDeleteTestEvents\\\"],null],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null]]]],false],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddTestEventModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"create-test-event-modal\\\"],null,[[\\\"testEvent\\\",\\\"save\\\",\\\"isQueryPending\\\",\\\"closeModal\\\"],[[28,[\\\"testEvent\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeAddTestEventModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayBatchDeleteConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[6,[\\\"batch-delete-confirmation\\\"],null,[[\\\"batch\\\",\\\"batchName\\\",\\\"confirmBatchDelete\\\",\\\"closeBatchConfirmationModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"selectedTestEvents\\\"]],\\\"Test Event\\\",[33,[\\\"route-action\\\"],[\\\"confirmBatchDeleteTestEvents\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeBatchDeleteConfirmationModal\\\"],null],[28,[\\\"isQueryPending\\\"]]]],{\\\"statements\\\":[[0,\\\"      Are you sure you want to delete \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"this\\\"],null],false],[0,\\\" \\\"],[1,[33,[\\\"pluralizer\\\"],[[28,[\\\"batchLength\\\"]],\\\"test event\\\"],null],false],[0,\\\"? Deleting can’t be undone.\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/site/test-events.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/sites\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"26876zE1\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"sites\\\"],[15,\\\"class\\\",\\\"page main-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"\\\\n      Sites\\\\n\\\\n\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"page-header-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"hasSites\\\"]]],null,{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleAddSite\\\"]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Add Site\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[1,[33,[\\\"search-bar\\\"],null,[[\\\"search\\\",\\\"query\\\"],[[33,[\\\"action\\\"],[[28,[null]],\\\"setSitesSearchParam\\\"],null],[28,[\\\"query\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\\n\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"sitesTable\\\",[28,[\\\"postOnboardingTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"site-table\\\"],null,[[\\\"postOnboardingTourNames\\\",\\\"sites\\\",\\\"requestSiteAccess\\\",\\\"infinityLoad\\\",\\\"isQueryPending\\\",\\\"toggleAddSite\\\",\\\"showSiteDetails\\\",\\\"noSearchResults\\\",\\\"sort\\\"],[[28,[\\\"postOnboardingTourNames\\\"]],[28,[\\\"sites\\\"]],[33,[\\\"route-action\\\"],[\\\"requestSiteAccess\\\"],null],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleAddSite\\\"],null],\\\"showSiteDetails\\\",[28,[\\\"noSearchResults\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"setSitesSortParam\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddSiteModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add New Site\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"toggleAddSite\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/site-form-new\\\"],null,[[\\\"site\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"site\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[6,[\\\"if\\\"],[[28,[\\\"model\\\",\\\"admin\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"style\\\",\\\"padding: 100px;margin-top: -2%;\\\"],[13],[0,\\\"\\\\n    Welcome Back Admin\\\\n\\\\n    \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\\n    \\\"],[1,[33,[\\\"site-admin\\\"],null,[[\\\"postOnboardingTourNames\\\",\\\"sites\\\",\\\"requestSiteAccess\\\",\\\"infinityLoad\\\",\\\"isQueryPending\\\",\\\"toggleAddSite\\\",\\\"showAdminLogin\\\",\\\"showSiteDetails\\\",\\\"noSearchResults\\\",\\\"sort\\\"],[[28,[\\\"postOnboardingTourNames\\\"]],[28,[\\\"model\\\",\\\"userlist\\\"]],[33,[\\\"route-action\\\"],[\\\"requestSiteAccess\\\"],null],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleAddSite\\\"],null],\\\"showAdminLogin\\\",\\\"showSiteDetails\\\",[28,[\\\"noSearchResults\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"setSitesSortParam\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"br\\\",[]],[13],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/sites.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/support\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Tdos3kzX\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"support\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content page\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[33,[\\\"can\\\"],[\\\"view user-management\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back-button\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],[[\\\"class\\\"],[\\\"back-to-sites\\\"]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon large\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"alt\\\",\\\"Back Icon\\\"],[13],[14],[0,\\\"\\\\n          Back to Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"title\\\"],[13],[0,\\\"Support\\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"support-item\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"icon-container\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/icon-email.svg\\\"],[15,\\\"class\\\",\\\"icon icon-email\\\"],[15,\\\"alt\\\",\\\"email icon\\\"],[13],[14],[14],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"mailto:support@cleversparky.com.au\\\"],[13],[0,\\\"support@cleversparky.com.au\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"support-item\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"icon-container\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/icon-web-site.svg\\\"],[15,\\\"class\\\",\\\"icon icon-web-site\\\"],[15,\\\"alt\\\",\\\"website icon\\\"],[13],[14],[14],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"http://clevertronics.com.au/cleversparky\\\"],[15,\\\"target\\\",\\\"_blank\\\"],[13],[0,\\\"clevertronics.com.au/cleversparky\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"support-item\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"span\\\",[]],[15,\\\"class\\\",\\\"icon-container phone\\\"],[13],[11,\\\"img\\\",[]],[15,\\\"src\\\",\\\"/assets/icons/icon-phone.svg\\\"],[15,\\\"class\\\",\\\"icon icon-phone\\\"],[15,\\\"alt\\\",\\\"phone icon\\\"],[13],[14],[14],[11,\\\"a\\\",[]],[15,\\\"href\\\",\\\"https://itunes.apple.com/au/app/cleversparky/id1244793358?mt=8\\\"],[15,\\\"target\\\",\\\"_blank\\\"],[13],[0,\\\"Download the mobile app\\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/support.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/terms\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"QBW9A3M+\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"terms\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"unless\\\"],[[33,[\\\"can\\\"],[\\\"view user-management\\\",[28,[\\\"currentEmployment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"back-bar\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"link-to\\\"],[\\\"sites\\\"],[[\\\"class\\\"],[\\\"back header-action-styles\\\"]],{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon icon-back large\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-back.svg\\\"],[15,\\\"alt\\\",\\\"Back Icon\\\"],[13],[14],[0,\\\"\\\\n        Back to Sites\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"heading\\\"],[13],[0,\\\"Clevertronics licence agreement\\\"],[14],[0,\\\"\\\\n    \\\"],[19,\\\"partials/terms\\\"],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/terms.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"3bddUlc+\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event\\\"],[15,\\\"class\\\",\\\"page site-page\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-header\\\"],null,[[\\\"site\\\",\\\"address\\\",\\\"fileName\\\",\\\"progress\\\",\\\"uploadStatus\\\",\\\"uploadCsv\\\",\\\"cancelUpload\\\",\\\"closeErrorModal\\\",\\\"toggleReportModal\\\",\\\"dismissProgressBar\\\"],[[28,[\\\"site\\\"]],[28,[\\\"address\\\"]],[28,[\\\"csvFileName\\\"]],[28,[\\\"csvUploadProgress\\\"]],[28,[\\\"csvUploadStatus\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"uploadCsv\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"cancelUpload\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"dismissProgressBar\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"body\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-menu\\\"],null,[[\\\"site\\\",\\\"currentEmployment\\\",\\\"isTestEventsActive\\\"],[[28,[\\\"site\\\"]],[28,[\\\"currentEmployment\\\"]],true]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReportModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[19,\\\"partials/report-modal\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayErrorModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"file-upload-error-modal\\\"],null,[[\\\"uploadErrors\\\",\\\"closeErrorModal\\\"],[[28,[\\\"uploadErrors\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group/fittings\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"wapxolgj\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-index\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fittings-list\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"test-event-fitting-table\\\"],null,[[\\\"model\\\",\\\"testEvent\\\",\\\"testEventGroup\\\",\\\"testEventFittings\\\",\\\"infinityLoad\\\",\\\"showTestEventFittingDetails\\\",\\\"collected\\\",\\\"selectedTestEventFittings\\\",\\\"setIsCollectedFilter\\\",\\\"setIsNotCollectedFilter\\\",\\\"showAddFittingModal\\\",\\\"showQuickTestModal\\\",\\\"isSelectingTestEventFittings\\\",\\\"backToTestEventFittingsIndex\\\",\\\"showAddGroupsModal\\\",\\\"showRemoveGroupsModal\\\",\\\"showTestEventGroupDetails\\\",\\\"showEditDateRangeModal\\\",\\\"showDuplicateTestEventModal\\\",\\\"showArchiveConfirmationModal\\\",\\\"showQuickTestDefaultsModal\\\"],[[28,[\\\"model\\\"]],[28,[\\\"testEvent\\\"]],[28,[\\\"testEventGroup\\\"]],[28,[\\\"testEventFittings\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"route-action\\\"],[\\\"showTestEventFittingDetails\\\"],null],[28,[\\\"collected\\\"]],[28,[\\\"selectedTestEventFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsCollectedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"setIsNotCollectedFilter\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showAddFittingModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestModal\\\"],null],[28,[\\\"isSelectingTestEventFittings\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"backToTestEventFittingsIndex\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showAddGroupsModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showRemoveGroupsModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showTestEventGroupDetails\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showEditDateRangeModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showDuplicateTestEventModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showArchiveConfirmationModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestDefaultsModal\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddFittingModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add a Fitting\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeAddFittingModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/fittings-form-new\\\"],null,[[\\\"fitting\\\",\\\"testEvent\\\",\\\"isQueryPending\\\",\\\"addFitting\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"testEvent\\\"]],[28,[\\\"isQueryPending\\\"]],\\\"addFitting\\\"]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayQuickTestModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"\\\\n    \\\"],[1,[33,[\\\"quick-test-modal\\\"],null,[[\\\"testEvent\\\",\\\"isQuickTestPassModal\\\",\\\"isQueryPending\\\",\\\"closeModal\\\",\\\"save\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"isQuickTestPassModal\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeQuickTestModal\\\"],null],[33,[\\\"route-action\\\"],[\\\"batchSaveTestResults\\\"],null]]]],false],[0,\\\"\\\\n\\\\n\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddGroupsModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add Groups\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeAddGroupsModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/test-event-add-groups-form\\\"],null,[[\\\"groupOptions\\\",\\\"isQueryPending\\\",\\\"selectedGroups\\\",\\\"clickAction\\\"],[[28,[\\\"addGroupsOptions\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"selectedGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"batchAddGroups\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayRemoveGroupsModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Remove Groups\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeRemoveGroupsModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/test-event-remove-groups-form\\\"],null,[[\\\"groupOptions\\\",\\\"isQueryPending\\\",\\\"selectedGroups\\\",\\\"clickAction\\\"],[[28,[\\\"removeGroupsOptions\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"selectedGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"batchRemoveGroups\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayEditDateRangeModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"test-event-modal\\\"],null,[[\\\"type\\\",\\\"closeModal\\\"],[\\\"edit\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"closeEditDateRangeModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"forms/test-event-form\\\"],null,[[\\\"testEvent\\\",\\\"type\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"modal\\\",\\\"type\\\"]],[33,[\\\"route-action\\\"],[\\\"editDateRange\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"modal\\\"]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDuplicateTestEventModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"test-event-modal\\\"],null,[[\\\"type\\\",\\\"closeModal\\\"],[\\\"duplicate\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"closeDuplicateTestEventModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"forms/test-event-form\\\"],null,[[\\\"testEvent\\\",\\\"type\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"duplicatedTestEvent\\\"]],[28,[\\\"modal\\\",\\\"type\\\"]],[33,[\\\"route-action\\\"],[\\\"duplicate\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"modal\\\"]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayArchiveConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"test-event-archive-confirmation\\\"],null,[[\\\"archive\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"archive\\\"],null],\\\"closeArchiveConfirmationModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayQuickTestDefaultsModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"quick-test-defaults-modal\\\"],null,[[\\\"testEvent\\\",\\\"save\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[33,[\\\"route-action\\\"],[\\\"saveQuickTestDefaults\\\"],null],\\\"closeQuickTestDefaultsModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group/fittings.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group/fittings/show\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"46eLUS/a\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"fitting-details\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"fitting-panel\\\"],null,[[\\\"fitting\\\",\\\"showEdit\\\",\\\"showDelete\\\",\\\"showSuccess\\\",\\\"edit\\\",\\\"delete\\\",\\\"type\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"shouldShowEdit\\\"]],[28,[\\\"shouldShowDelete\\\"]],[28,[\\\"showSuccess\\\"]],\\\"edit\\\",\\\"delete\\\",\\\"test-event-fitting\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showDeleteModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"fitting-delete-confirmation\\\"],null,[[\\\"deleteFitting\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"deleteFitting\\\",[28,[\\\"fitting\\\"]]],null],\\\"closeDeleteModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group/fittings/show.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group/fittings/show/details\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"6+foEfXF\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"forms/fitting-details-form\\\"],null,[[\\\"testEvent\\\",\\\"fitting\\\",\\\"group\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"fitting\\\"]],[28,[\\\"group\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group/fittings/show/details.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group/fittings/show/maintenance\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"ycDWQ7mY\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"maintenance-rows\\\"],null,[[\\\"testEvent\\\",\\\"testEventFitting\\\",\\\"rows\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"testEventFitting\\\"]],[28,[\\\"maintenances\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"showNew\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"forms/maintenance-form\\\"],null,[[\\\"testEvent\\\",\\\"testEventFitting\\\",\\\"rows\\\",\\\"maintenance\\\",\\\"fitting\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"testEventFitting\\\"]],[28,[\\\"maintenances\\\"]],[28,[\\\"newMaintenance\\\"]],[28,[\\\"fitting\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"save\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group/fittings/show/maintenance.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event-group/fittings/show/test-and-status\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"lBw/I892\", \"block\": \"{\\\"statements\\\":[[6,[\\\"if\\\"],[[28,[\\\"shouldShowSeeLatestTest\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"see-latest-test\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small text-blue\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showLatestTestModal\\\"]],[13],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon delete-icon\\\"],[15,\\\"src\\\",\\\"/assets/icons/latest-test.svg\\\"],[15,\\\"alt\\\",\\\"Delete Icon\\\"],[13],[14],[0,\\\"\\\\n      See Latest Test\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"testEvent\\\",\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"save\\\",\\\"cancel\\\",\\\"edit\\\",\\\"deleteTest\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"fitting\\\"]],[28,[\\\"latestTest\\\"]],[28,[\\\"newTest\\\"]],[28,[\\\"canEdit\\\"]],[33,[\\\"route-action\\\"],[\\\"save\\\"],null],[33,[\\\"route-action\\\"],[\\\"cancel\\\"],null],[33,[\\\"route-action\\\"],[\\\"edit\\\"],null],[33,[\\\"route-action\\\"],[\\\"deleteTest\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddLatestTestModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,[[\\\"id\\\"],[\\\"latest-test-modal\\\"]],{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[1,[28,[\\\"fitting\\\",\\\"deviceReference\\\"]],false],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeLatestTestModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/test-and-status-form\\\"],null,[[\\\"fitting\\\",\\\"latestTest\\\",\\\"newTest\\\",\\\"canEdit\\\",\\\"showAddNewTestButton\\\",\\\"isShowingLatestTest\\\"],[[28,[\\\"fitting\\\"]],[28,[\\\"fittingLatestTest\\\"]],[28,[\\\"newTest\\\"]],false,false,true]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event-group/fittings/show/test-and-status.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"m1TmD2c1\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"test-event\\\"],[15,\\\"class\\\",\\\"page site-page\\\"],[13],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"site-header\\\"],null,[[\\\"site\\\",\\\"address\\\",\\\"fileName\\\",\\\"progress\\\",\\\"uploadStatus\\\",\\\"uploadCsv\\\",\\\"cancelUpload\\\",\\\"closeErrorModal\\\",\\\"toggleReportModal\\\",\\\"dismissProgressBar\\\"],[[28,[\\\"site\\\"]],[28,[\\\"address\\\"]],[28,[\\\"csvFileName\\\"]],[28,[\\\"csvUploadProgress\\\"]],[28,[\\\"csvUploadStatus\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"uploadCsv\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"cancelUpload\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"toggleReportModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"dismissProgressBar\\\"],null]]]],false],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"body\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"site-menu\\\"],null,[[\\\"site\\\",\\\"currentEmployment\\\",\\\"isTestEventsActive\\\"],[[28,[\\\"site\\\"]],[28,[\\\"currentEmployment\\\"]],true]]],false],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayReportModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[19,\\\"partials/report-modal\\\"],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayErrorModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"file-upload-error-modal\\\"],null,[[\\\"uploadErrors\\\",\\\"closeErrorModal\\\"],[[28,[\\\"uploadErrors\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"closeErrorModal\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":true}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/test-event/groups\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"Yd3tNogC\", \"block\": \"{\\\"statements\\\":[[1,[33,[\\\"test-event-group-table\\\"],null,[[\\\"site\\\",\\\"testEvent\\\",\\\"testEventGroups\\\",\\\"missingGroups\\\",\\\"infinityLoad\\\",\\\"showAddGroupsModal\\\",\\\"showRemoveGroupsModal\\\",\\\"showTestEventGroupDetails\\\",\\\"showEditDateRangeModal\\\",\\\"showDuplicateTestEventModal\\\",\\\"showArchiveConfirmationModal\\\",\\\"showQuickTestDefaultsModal\\\"],[[28,[\\\"site\\\"]],[28,[\\\"testEvent\\\"]],[28,[\\\"testEventGroups\\\"]],[28,[\\\"missingGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showAddGroupsModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showRemoveGroupsModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showTestEventGroupDetails\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showEditDateRangeModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showDuplicateTestEventModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showArchiveConfirmationModal\\\"],null],[33,[\\\"action\\\"],[[28,[null]],\\\"showQuickTestDefaultsModal\\\"],null]]]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayAddGroupsModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Add Groups\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeAddGroupsModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/test-event-add-groups-form\\\"],null,[[\\\"groupOptions\\\",\\\"isQueryPending\\\",\\\"selectedGroups\\\",\\\"clickAction\\\"],[[28,[\\\"addGroupsOptions\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"selectedGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"batchAddGroups\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayRemoveGroupsModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Remove Groups\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeRemoveGroupsModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/test-event-remove-groups-form\\\"],null,[[\\\"groupOptions\\\",\\\"isQueryPending\\\",\\\"selectedGroups\\\",\\\"clickAction\\\"],[[28,[\\\"removeGroupsOptions\\\"]],[28,[\\\"isQueryPending\\\"]],[28,[\\\"selectedGroups\\\"]],[33,[\\\"route-action\\\"],[\\\"batchRemoveGroups\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayEditDateRangeModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"test-event-modal\\\"],null,[[\\\"type\\\",\\\"closeModal\\\"],[\\\"edit\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"closeEditDateRangeModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"forms/test-event-form\\\"],null,[[\\\"testEvent\\\",\\\"type\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[28,[\\\"modal\\\",\\\"type\\\"]],[33,[\\\"route-action\\\"],[\\\"editDateRange\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"modal\\\"]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDuplicateTestEventModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"test-event-modal\\\"],null,[[\\\"type\\\",\\\"closeModal\\\"],[\\\"duplicate\\\",[33,[\\\"action\\\"],[[28,[null]],\\\"closeDuplicateTestEventModal\\\"],null]]],{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"forms/test-event-form\\\"],null,[[\\\"testEvent\\\",\\\"type\\\",\\\"save\\\",\\\"isQueryPending\\\"],[[28,[\\\"duplicatedTestEvent\\\"]],[28,[\\\"modal\\\",\\\"type\\\"]],[33,[\\\"route-action\\\"],[\\\"duplicate\\\"],null],[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[\\\"modal\\\"]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayArchiveConfirmationModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[1,[33,[\\\"test-event-archive-confirmation\\\"],null,[[\\\"archive\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[33,[\\\"route-action\\\"],[\\\"archive\\\"],null],\\\"closeArchiveConfirmationModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayQuickTestDefaultsModal\\\"]]],null,{\\\"statements\\\":[[0,\\\"  \\\"],[1,[33,[\\\"quick-test-defaults-modal\\\"],null,[[\\\"testEvent\\\",\\\"save\\\",\\\"closeModal\\\",\\\"isQueryPending\\\"],[[28,[\\\"testEvent\\\"]],[33,[\\\"route-action\\\"],[\\\"saveQuickTestDefaults\\\"],null],\\\"closeQuickTestDefaultsModal\\\",[28,[\\\"isQueryPending\\\"]]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/test-event/groups.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/user\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"o9Kzswcg\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"user-page\\\"],[15,\\\"class\\\",\\\"page main-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[13],[1,[28,[\\\"user\\\",\\\"fullName\\\"]],false],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"modify site-permissions\\\",[28,[\\\"employment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"page-header-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"inviteToSites\\\",[28,[\\\"viewUserDetailsTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"          \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showInviteToSitesModal\\\"]],[13],[0,\\\"\\\\n            \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n            Invite to Sites\\\\n          \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"      \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"user-content\\\"],[13],[0,\\\"\\\\n    \\\"],[1,[33,[\\\"user-panel\\\"],null,[[\\\"user\\\",\\\"employment\\\",\\\"deleteUser\\\",\\\"updatePurchasingRights\\\"],[[28,[\\\"user\\\"]],[28,[\\\"employment\\\"]],[33,[\\\"action\\\"],[[28,[null]],\\\"showDeleteUserModal\\\"],null],[33,[\\\"route-action\\\"],[\\\"updatePurchasingRights\\\"],null]]]],false],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[33,[\\\"can\\\"],[\\\"modify site-permissions\\\",[28,[\\\"employment\\\"]]],null]],null,{\\\"statements\\\":[[0,\\\"      \\\"],[1,[33,[\\\"site-permissions-panel\\\"],null,[[\\\"sitePermissions\\\",\\\"isQueryPending\\\",\\\"infinityLoad\\\",\\\"removeAccess\\\"],[[28,[\\\"sitePermissions\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],[33,[\\\"route-action\\\"],[\\\"removeAccess\\\"],null]]]],false],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"  \\\"],[14],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayInviteToSitesModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Grant Access to Sites\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeInviteToSitesModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/invite-to-site-form\\\"],null,[[\\\"user\\\",\\\"technicians\\\",\\\"selectedSites\\\",\\\"currentOrganisation\\\",\\\"usersRestrictedSites\\\",\\\"isQueryPending\\\",\\\"grantAccess\\\",\\\"copyPermissions\\\"],[[28,[\\\"user\\\"]],[28,[\\\"technicians\\\"]],[28,[\\\"selectedSites\\\"]],[28,[\\\"currentOrganisation\\\"]],[28,[\\\"usersRestrictedSites\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"grantAccess\\\"],null],[33,[\\\"route-action\\\"],[\\\"copyPermissions\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null],[0,\\\"\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayDeleteUserModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Delete User\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeDeleteUserModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"inner\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"p\\\",[]],[13],[0,\\\"Are you sure you want to delete this user? This will remove their access to all sites in your organisation.\\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-actions\\\"],[13],[0,\\\"\\\\n        \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"button small red\\\"],[16,\\\"disabled\\\",[26,[\\\"isQueryPending\\\"]],null],[5,[\\\"action\\\"],[[28,[null]],\\\"deleteUser\\\",[28,[\\\"employment\\\"]]]],[13],[0,\\\"\\\\n          Yes, Delete\\\\n        \\\"],[14],[0,\\\"\\\\n      \\\"],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/user.hbs\" } });\n});","define(\"clever-sparky-frontend/templates/users\", [\"exports\"], function (exports) {\n  \"use strict\";\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.default = Ember.HTMLBars.template({ \"id\": \"XcCRqoPx\", \"block\": \"{\\\"statements\\\":[[11,\\\"div\\\",[]],[15,\\\"id\\\",\\\"users\\\"],[15,\\\"class\\\",\\\"page main-page\\\"],[13],[0,\\\"\\\\n  \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"header\\\"],[13],[0,\\\"\\\\n    \\\"],[11,\\\"h2\\\",[]],[13],[0,\\\"Users\\\"],[14],[0,\\\"\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"page-header-actions\\\"],[13],[0,\\\"\\\\n\\\"],[6,[\\\"tours/sequence-element\\\"],null,[[\\\"stopName\\\",\\\"tourNames\\\"],[\\\"newUserAction\\\",[28,[\\\"viewUsersTourNames\\\"]]]],{\\\"statements\\\":[[0,\\\"        \\\"],[11,\\\"button\\\",[]],[15,\\\"class\\\",\\\"action button icon green\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"showInviteUserModal\\\"]],[13],[0,\\\"\\\\n          \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"icon\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-add-white.svg\\\"],[15,\\\"alt\\\",\\\"Add Icon\\\"],[13],[14],[0,\\\"\\\\n          Invite User\\\\n        \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null],[0,\\\"    \\\"],[14],[0,\\\"\\\\n  \\\"],[14],[0,\\\"\\\\n  \\\"],[1,[33,[\\\"employment-table\\\"],null,[[\\\"viewUsersTourNames\\\",\\\"employments\\\",\\\"isQueryPending\\\",\\\"infinityLoad\\\",\\\"showUserDetail\\\",\\\"cancelInvite\\\",\\\"changeUserType\\\"],[[28,[\\\"viewUsersTourNames\\\"]],[28,[\\\"employments\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"infinityLoad\\\"],null],\\\"showUserDetail\\\",\\\"cancelInvite\\\",\\\"changeUserType\\\"]]],false],[0,\\\"\\\\n\\\"],[14],[0,\\\"\\\\n\\\"],[1,[26,[\\\"outlet\\\"]],false],[0,\\\"\\\\n\\\\n\\\"],[6,[\\\"if\\\"],[[28,[\\\"displayInviteUserModal\\\"]]],null,{\\\"statements\\\":[[6,[\\\"modal-view\\\"],null,null,{\\\"statements\\\":[[0,\\\"    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-header\\\"],[13],[0,\\\"\\\\n      \\\"],[11,\\\"h2\\\",[]],[15,\\\"class\\\",\\\"form-heading\\\"],[13],[0,\\\"Invite User\\\"],[14],[0,\\\"\\\\n      \\\"],[11,\\\"img\\\",[]],[15,\\\"class\\\",\\\"modal-close\\\"],[15,\\\"src\\\",\\\"/assets/images/icon-close.svg\\\"],[15,\\\"alt\\\",\\\"Close Icon\\\"],[5,[\\\"action\\\"],[[28,[null]],\\\"closeInviteUserModal\\\"]],[13],[14],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\\n    \\\"],[11,\\\"div\\\",[]],[15,\\\"class\\\",\\\"modal-content\\\"],[13],[0,\\\"\\\\n      \\\"],[1,[33,[\\\"forms/invite-user-form\\\"],null,[[\\\"invite\\\",\\\"isQueryPending\\\",\\\"save\\\"],[[28,[\\\"invite\\\"]],[28,[\\\"isQueryPending\\\"]],[33,[\\\"route-action\\\"],[\\\"invite\\\"],null]]]],false],[0,\\\"\\\\n    \\\"],[14],[0,\\\"\\\\n\\\"]],\\\"locals\\\":[]},null]],\\\"locals\\\":[]},null]],\\\"locals\\\":[],\\\"named\\\":[],\\\"yields\\\":[],\\\"hasPartials\\\":false}\", \"meta\": { \"moduleName\": \"clever-sparky-frontend/templates/users.hbs\" } });\n});","define('clever-sparky-frontend/uploaders/csv', ['exports', 'ember', 'ember-uploader/uploaders/base'], function (exports, _ember, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  var $ = _ember.default.$,\n      get = _ember.default.get,\n      set = _ember.default.set,\n      RSVP = _ember.default.RSVP;\n  exports.default = _base.default.extend({\n    getBase64: function getBase64(file) {\n      return new RSVP.Promise(function (resolve, reject) {\n        var reader = new FileReader();\n        reader.readAsDataURL(file);\n        reader.onload = function () {\n          resolve(reader.result.split(',')[1]);\n        };\n        reader.onerror = function (error) {\n          reject(error);\n        };\n      });\n    },\n    ajax: function ajax(url) {\n      var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n      var _this = this;\n\n      var method = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.method;\n      var headers = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n      return this.ajaxPromise({\n        headers: headers,\n        xhr: function xhr() {\n          var xhr = $.ajaxSettings.xhr();\n          xhr.upload.onprogress = function (event) {\n            _this.didProgress(event);\n          };\n          _this.one('isAborting', function () {\n            return xhr.abort();\n          });\n          return xhr;\n        },\n        url: url,\n        contentType: 'application/json',\n        data: JSON.stringify(data),\n        method: method\n      });\n    },\n    upload: function upload(file) {\n      var _this2 = this;\n\n      var extra = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n      var url = get(this, 'url');\n      var method = get(this, 'method');\n\n      var site = extra.site;\n      var credentials = extra.credentials;\n\n\n      return this.getBase64(file).then(function (fileData) {\n        var csvData = {\n          data: {\n            type: 'fittings-uploads',\n            attributes: {\n              'csv-file': fileData\n            },\n            relationships: {\n              site: {\n                data: {\n                  type: 'sites',\n                  id: site.get('id')\n                }\n              }\n            }\n          }\n        };\n\n        set(_this2, 'isUploading', true);\n\n        return _this2.ajax(url, csvData, method, {\n          'X-Session-id': credentials.session_id,\n          'X-Session-Token': credentials.token\n        });\n      });\n    }\n  });\n});","define('clever-sparky-frontend/util-tests/collection-action', ['exports', 'ember-api-actions/util-tests/collection-action'], function (exports, _collectionAction) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _collectionAction.default;\n    }\n  });\n});","define('clever-sparky-frontend/util-tests/member-action', ['exports', 'ember-api-actions/util-tests/member-action'], function (exports, _memberAction) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _memberAction.default;\n    }\n  });\n});","define('clever-sparky-frontend/util/s3-client', ['module', '../config', 'aws-sdk'], function (module, config, aws) {\n  'use strict';\n\n  /* eslint-disable */\n  ENV['s3'] = {\n    accessKeyId: process.env['PRODUCTION_AWS_ACCESS_KEY_ID'],\n    secretAccessKey: process.env['PRODUCTION_AWS_SECRET_ACCESS_KEY'],\n    bucket: process.env['PRODUCTION_BUCKET_LOCATION_ASSETS'],\n    region: process.env['PRODUCTION_BUCKET_REGION']\n  };\n\n  aws.config.update(config.s3Options);\n  var client = new aws.S3();\n\n  module.exports = client;\n});","define('clever-sparky-frontend/util/s3-signed-url', ['exports', '../config', './s3-client'], function (exports, config, client) {\n  'use strict';\n\n  function _asyncToGenerator(fn) {\n    return function () {\n      var gen = fn.apply(this, arguments);\n      return new Promise(function (resolve, reject) {\n        function step(key, arg) {\n          try {\n            var info = gen[key](arg);\n            var value = info.value;\n          } catch (error) {\n            reject(error);\n            return;\n          }\n\n          if (info.done) {\n            resolve(value);\n          } else {\n            return Promise.resolve(value).then(function (value) {\n              step(\"next\", value);\n            }, function (err) {\n              step(\"throw\", err);\n            });\n          }\n        }\n\n        return step(\"next\");\n      });\n    };\n  }\n\n  exports.getUrl = function () {\n    var _ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee(fileName, fileType) {\n      return regeneratorRuntime.wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              return _context.abrupt('return', new Promise(function (resolve, reject) {\n                var bucket = config.s3Options.bucket;\n                var params = {\n                  Bucket: bucket,\n                  Key: fileName,\n                  Expires: 60,\n                  ContentType: fileType,\n                  ACL: 'public-read'\n                };\n\n                client.getSignedUrl('putObject', params, function (err, data) {\n                  if (err) {\n                    reject(err);\n                  }\n                  var returnData = {\n                    signedRequest: data,\n                    url: 'https://' + bucket + '.s3.amazonaws.com/' + fileName\n                  };\n                  resolve(returnData);\n                });\n              }));\n\n            case 1:\n            case 'end':\n              return _context.stop();\n          }\n        }\n      }, _callee, undefined);\n    }));\n\n    return function (_x, _x2) {\n      return _ref.apply(this, arguments);\n    };\n  }();\n});","define('clever-sparky-frontend/utils/can-use-dom', ['exports', 'ember-metrics/utils/can-use-dom'], function (exports, _canUseDom) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _canUseDom.default;\n    }\n  });\n});","define('clever-sparky-frontend/utils/i18n/compile-template', ['exports', 'ember-i18n/utils/i18n/compile-template'], function (exports, _compileTemplate) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _compileTemplate.default;\n    }\n  });\n});","define('clever-sparky-frontend/utils/i18n/missing-message', ['exports', 'ember-i18n/utils/i18n/missing-message'], function (exports, _missingMessage) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _missingMessage.default;\n    }\n  });\n});","define('clever-sparky-frontend/utils/object-transforms', ['exports', 'ember-metrics/utils/object-transforms'], function (exports, _objectTransforms) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _objectTransforms.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/alias', ['exports', 'ember-cp-validations/validators/alias'], function (exports, _alias) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _alias.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/array-length', ['exports', 'ember-cp-validations/validators/base'], function (exports, _base) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n\n\n  var ArrayLength = _base.default.extend({\n    validate: function validate(value, options) {\n      if (value.length >= options.min) {\n        return true;\n      } else {\n        return options.message;\n      }\n    }\n  });\n\n  ArrayLength.reopenClass({\n    getDependentsFor: function getDependentsFor() /* attribute, options */{\n      return [];\n    }\n  });\n\n  exports.default = ArrayLength;\n});","define('clever-sparky-frontend/validators/belongs-to', ['exports', 'ember-cp-validations/validators/belongs-to'], function (exports, _belongsTo) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _belongsTo.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/change-password-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.ChangePasswordValidations = undefined;\n  var ChangePasswordValidations = exports.ChangePasswordValidations = (0, _emberCpValidations.buildValidations)({\n    currentPassword: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your current password'\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Password must be at least 8 characters long'\n    })],\n\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your password'\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Password must be at least 8 characters long'\n    })],\n\n    passwordConfirmation: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please confirm your password'\n    }), (0, _emberCpValidations.validator)('confirmation', {\n      on: 'password',\n      message: 'Your passwords don’t match, please try again '\n    })]\n  });\n\n  exports.default = { ChangePasswordValidations: ChangePasswordValidations };\n});","define('clever-sparky-frontend/validators/collection', ['exports', 'ember-cp-validations/validators/collection'], function (exports, _collection) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _collection.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/confirmation', ['exports', 'ember-cp-validations/validators/confirmation'], function (exports, _confirmation) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _confirmation.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/date', ['exports', 'ember-cp-validations/validators/date'], function (exports, _date) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _date.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/dependent', ['exports', 'ember-cp-validations/validators/dependent'], function (exports, _dependent) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _dependent.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/ds-error', ['exports', 'ember-cp-validations/validators/ds-error'], function (exports, _dsError) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _dsError.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/exclusion', ['exports', 'ember-cp-validations/validators/exclusion'], function (exports, _exclusion) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _exclusion.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/forgot-password-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.ForgotPasswordValidations = undefined;\n  var ForgotPasswordValidations = exports.ForgotPasswordValidations = (0, _emberCpValidations.buildValidations)({\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your email address',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Please enter a valid email address'\n    })]\n  });\n\n  exports.default = { ForgotPasswordValidations: ForgotPasswordValidations };\n});","define('clever-sparky-frontend/validators/format', ['exports', 'ember-cp-validations/validators/format'], function (exports, _format) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _format.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/forms/batch-move-confirmation', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.BatchMoveValidations = undefined;\n  var BatchMoveValidations = exports.BatchMoveValidations = (0, _emberCpValidations.buildValidations)({\n    selectedGroup: (0, _emberCpValidations.validator)('presence', true)\n  });\n\n  exports.default = { BatchMoveValidations: BatchMoveValidations };\n});","define('clever-sparky-frontend/validators/forms/edit-user-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.EditUserValidations = undefined;\n  var EditUserValidations = exports.EditUserValidations = (0, _emberCpValidations.buildValidations)({\n    firstName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your first name'\n    }),\n\n    lastName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your last name'\n    }),\n\n    state: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your state'\n    }),\n\n    country: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your country'\n    }),\n\n    phone: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your mobile number'\n    }), (0, _emberCpValidations.validator)('number', {\n      allowString: true,\n      integer: true,\n      message: 'Phone number must only include numbers'\n    })],\n\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your email address'\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Please enter a valid email'\n    })]\n  });\n\n  exports.default = { EditUserValidations: EditUserValidations };\n});","define('clever-sparky-frontend/validators/forms/fitting', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.FittingValidations = undefined;\n  var FittingValidations = exports.FittingValidations = (0, _emberCpValidations.buildValidations)({\n    deviceReference: (0, _emberCpValidations.validator)('presence', true)\n  });\n\n  exports.default = { FittingValidations: FittingValidations };\n});","define('clever-sparky-frontend/validators/forms/invite-to-site-form-validator', ['exports', 'ember', 'ember-cp-validations'], function (exports, _ember, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.InviteToSiteFormValidations = undefined;\n  var computed = _ember.default.computed;\n  var InviteToSiteFormValidations = exports.InviteToSiteFormValidations = (0, _emberCpValidations.buildValidations)({\n    technicianId: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      disabled: computed.not('model.isCopyingSitePermission'),\n      message: 'Please select a user'\n    }),\n\n    selectedSites: (0, _emberCpValidations.validator)('array-length', {\n      min: 1,\n      disabled: computed.alias('model.isCopyingSitePermission'),\n      dependentKeys: ['model.selectedSites.[]'],\n      message: 'Please select a site'\n    })\n\n  });\n\n  exports.default = { InviteToSiteFormValidations: InviteToSiteFormValidations };\n});","define('clever-sparky-frontend/validators/forms/invite-user', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.InviteUserValidations = undefined;\n  var InviteUserValidations = exports.InviteUserValidations = (0, _emberCpValidations.buildValidations)({\n\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your email address',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Please enter a valid email'\n    })]\n\n  });\n\n  exports.default = { InviteUserValidations: InviteUserValidations };\n});","define('clever-sparky-frontend/validators/forms/ledtest', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.LEDTestValidations = undefined;\n  var LEDTestValidations = exports.LEDTestValidations = (0, _emberCpValidations.buildValidations)({\n    testStatus: [(0, _emberCpValidations.validator)('presence', true), (0, _emberCpValidations.validator)('inclusion', {\n      in: ['valid_pass', 'test_active', 'failed_unknown', 'failed_battery', 'failed_lamp', 'failed_control', 'failed_no_output'],\n      message: 'Test status can be one of either Valid Pass, Test Active, Failed Unknown, Failed Battery, Failed Lamp, Failed Control or Failed No Output'\n    })],\n    testDate: (0, _emberCpValidations.validator)('presence', true),\n    runTime: (0, _emberCpValidations.validator)('number', {\n      allowBlank: true,\n      allowString: true,\n      gte: 0,\n      lte: 254\n    }),\n    requiredDuration: (0, _emberCpValidations.validator)('inclusion', {\n      allowBlank: true,\n      in: [30, 90, 120],\n      message: 'Required duration can be either 90 or 120'\n    }),\n    batteryStatus: (0, _emberCpValidations.validator)('inclusion', {\n      allowBlank: true,\n      in: ['ok', 'faulty'],\n      message: 'Battery status can be either OK or Faulty'\n    }),\n    lampStatus: (0, _emberCpValidations.validator)('inclusion', {\n      allowBlank: true,\n      in: ['ok', 'faulty'],\n      message: 'Lamp status can be either OK or Faulty'\n    }),\n    controlGearStatus: (0, _emberCpValidations.validator)('inclusion', {\n      allowBlank: true,\n      in: ['ok', 'faulty'],\n      message: 'Control gear status can be either OK or Faulty'\n    })\n  });\n\n  exports.default = { LEDTestValidations: LEDTestValidations };\n});","define('clever-sparky-frontend/validators/forms/maintenance', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.MaintenanceValidations = undefined;\n  var MaintenanceValidations = exports.MaintenanceValidations = (0, _emberCpValidations.buildValidations)({\n    repairDate: (0, _emberCpValidations.validator)('presence', true),\n    repair: [(0, _emberCpValidations.validator)('presence', true), (0, _emberCpValidations.validator)('inclusion', {\n      in: ['battery', 'fitting', 'control_gear', 'lamp', 'other'],\n      message: 'Repair can be one of either Replaced battery, Replaced fitting, Replaced control gear, Replaced lamp or Other'\n    })]\n  });\n\n  exports.default = { MaintenanceValidations: MaintenanceValidations };\n});","define('clever-sparky-frontend/validators/forms/quick-test-defaults', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.QuickTestDefaultsValidations = undefined;\n  var QuickTestDefaultsValidations = exports.QuickTestDefaultsValidations = (0, _emberCpValidations.buildValidations)({\n    defaultTestDate: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter a date',\n      ignoreBlank: true\n    }),\n    defaultRunTime: (0, _emberCpValidations.validator)('number', {\n      allowBlank: true,\n      allowString: true,\n      gte: 0,\n      lte: 254\n    })\n  });\n\n  exports.default = { QuickTestDefaultsValidations: QuickTestDefaultsValidations };\n});","define('clever-sparky-frontend/validators/forms/report-form', ['exports', 'ember', 'ember-cp-validations'], function (exports, _ember, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.ReportValidations = undefined;\n  var computed = _ember.default.computed;\n  var ReportValidations = exports.ReportValidations = (0, _emberCpValidations.buildValidations)({\n\n    selectedTestEvent: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      disabled: computed.not('model.isSelectingTestEvents'),\n      message: 'Please select a test event',\n      ignoreBlank: true\n    }),\n\n    selectedGroups: (0, _emberCpValidations.validator)('array-length', {\n      min: 1,\n      disabled: computed.not('model.isSelectingGroups'),\n      dependentKeys: ['model.selectedGroups.[]'],\n      message: 'Please select one or more groups'\n    })\n\n  });\n\n  exports.default = { ReportValidations: ReportValidations };\n});","define('clever-sparky-frontend/validators/forms/site', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.SiteValidations = undefined;\n  var SiteValidations = exports.SiteValidations = (0, _emberCpValidations.buildValidations)({\n    address: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter an address',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('dependent', {\n      on: ['placeId'],\n      message: 'Please select a valid address from the dropdown'\n    })],\n\n    placeId: (0, _emberCpValidations.validator)('exclusion', {\n      in: [null]\n    }),\n\n    businessName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter a business name',\n      ignoreBlank: true\n    })\n  });\n\n  exports.default = { SiteValidations: SiteValidations };\n});","define('clever-sparky-frontend/validators/forms/test-event', ['exports', 'ember', 'ember-cp-validations'], function (exports, _ember, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.TestEventValidations = undefined;\n  var computed = _ember.default.computed;\n  var TestEventValidations = exports.TestEventValidations = (0, _emberCpValidations.buildValidations)({\n    startDate: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter a start date',\n      ignoreBlank: true\n    }),\n\n    endDate: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter an end date',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('date', {\n      after: computed.alias('model.startDate'),\n      precision: 'day',\n      format: 'YYY-M-D',\n      message: 'End date must be after start date'\n    })]\n  });\n\n  exports.default = { TestEventValidations: TestEventValidations };\n});","define('clever-sparky-frontend/validators/forms/update-fitting-details', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.FittingValidations = undefined;\n  var FittingValidations = exports.FittingValidations = (0, _emberCpValidations.buildValidations)({\n\n    installDate: (0, _emberCpValidations.validator)('presence', true)\n  });\n\n  exports.default = { FittingValidations: FittingValidations };\n});","define('clever-sparky-frontend/validators/group-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.GroupValidations = undefined;\n  var GroupValidations = exports.GroupValidations = (0, _emberCpValidations.buildValidations)({\n    name: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter a group name',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('length', {\n      max: 30,\n      message: 'Group name is too long. Please reduce to 30 characters including spaces.'\n    })]\n  });\n\n  exports.default = { GroupValidations: GroupValidations };\n});","define('clever-sparky-frontend/validators/has-many', ['exports', 'ember-cp-validations/validators/has-many'], function (exports, _hasMany) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _hasMany.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/inclusion', ['exports', 'ember-cp-validations/validators/inclusion'], function (exports, _inclusion) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _inclusion.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/length', ['exports', 'ember-cp-validations/validators/length'], function (exports, _length) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _length.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/login-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.LoginValidations = undefined;\n  var LoginValidations = exports.LoginValidations = (0, _emberCpValidations.buildValidations)({\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your password',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Password must be at least 8 characters long'\n    })],\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your email address',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Please enter a valid email address'\n    })]\n  });\n\n  exports.default = { LoginValidations: LoginValidations };\n});","define('clever-sparky-frontend/validators/messages', ['exports', 'ember-cp-validations/validators/messages'], function (exports, _messages) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _messages.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/number', ['exports', 'ember-cp-validations/validators/number'], function (exports, _number) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _number.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/organisation-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.OrganisationValidations = undefined;\n  var OrganisationValidations = exports.OrganisationValidations = (0, _emberCpValidations.buildValidations)({\n    name: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your business name',\n      ignoreBlank: true\n    }),\n\n    country: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your country',\n      ignoreBlank: true\n    }),\n\n    state: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your state',\n      ignoreBlank: true\n    })\n\n  });\n\n  exports.default = { OrganisationValidations: OrganisationValidations };\n});","define('clever-sparky-frontend/validators/presence', ['exports', 'ember-cp-validations/validators/presence'], function (exports, _presence) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(exports, 'default', {\n    enumerable: true,\n    get: function () {\n      return _presence.default;\n    }\n  });\n});","define('clever-sparky-frontend/validators/reset-password-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.ResetPasswordValidations = undefined;\n  var ResetPasswordValidations = exports.ResetPasswordValidations = (0, _emberCpValidations.buildValidations)({\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your password',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8\n    })],\n\n    passwordConfirmation: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please confirm your password',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('confirmation', {\n      on: 'password',\n      message: 'Your passwords don’t match, please try again '\n    })]\n  });\n\n  exports.default = { ResetPasswordValidations: ResetPasswordValidations };\n});","define('clever-sparky-frontend/validators/site-validator', ['exports', 'ember-cp-validations'], function (exports, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.SiteValidations = undefined;\n  var SiteValidations = exports.SiteValidations = (0, _emberCpValidations.buildValidations)({\n\n    address: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter an address',\n      ignoreBlank: true\n    }),\n\n    businessName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter a business name',\n      ignoreBlank: true\n    })\n\n  });\n\n  exports.default = { SiteValidations: SiteValidations };\n});","define('clever-sparky-frontend/validators/user-validator', ['exports', 'ember', 'ember-cp-validations'], function (exports, _ember, _emberCpValidations) {\n  'use strict';\n\n  Object.defineProperty(exports, \"__esModule\", {\n    value: true\n  });\n  exports.UserValidations = undefined;\n  var computed = _ember.default.computed;\n  var UserValidations = exports.UserValidations = (0, _emberCpValidations.buildValidations)({\n    firstName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your first name',\n      ignoreBlank: true\n    }),\n\n    lastName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your last name',\n      ignoreBlank: true\n    }),\n\n    userState: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your state',\n      ignoreBlank: true\n    }),\n\n    userCountry: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please select your country',\n      ignoreBlank: true\n    }),\n\n    phone: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your mobile number',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('number', {\n      allowString: true,\n      integer: true,\n      message: 'Phone number must only include numbers'\n    })],\n\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your password',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Password must be at least 8 characters long'\n    })],\n\n    passwordConfirmation: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please confirm your password',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('confirmation', {\n      on: 'password',\n      message: 'Your passwords don’t match, please try again '\n    })],\n\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: 'Please enter your email address',\n      ignoreBlank: true\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Please enter a valid email'\n    })],\n\n    organisationName: (0, _emberCpValidations.validator)('length', {\n      min: 0,\n      message: 'Please enter your business name',\n      ignoreBlank: true\n    }),\n\n    organisationCountry: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      disabled: computed.empty('model.businessName'),\n      message: 'Please select your business\\'s country',\n      ignoreBlank: true\n    }),\n\n    organisationState: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      disabled: computed.not('model.businessNameFilled'),\n      message: 'Please select your business\\'s state',\n      ignoreBlank: true\n    })\n  });\n\n  exports.default = { UserValidations: UserValidations };\n});","\n","define('clever-sparky-frontend/config/environment', ['ember'], function(Ember) {\n  var prefix = 'clever-sparky-frontend';\ntry {\n  var metaName = prefix + '/config/environment';\n  var rawConfig = document.querySelector('meta[name=\"' + metaName + '\"]').getAttribute('content');\n  var config = JSON.parse(unescape(rawConfig));\n\n  var exports = { 'default': config };\n\n  Object.defineProperty(exports, '__esModule', { value: true });\n\n  return exports;\n}\ncatch(err) {\n  throw new Error('Could not read config from meta tag with name \"' + metaName + '\".');\n}\n\n});\n","if (!runningTests) {\n  require(\"clever-sparky-frontend/app\")[\"default\"].create({\"name\":\"clever-sparky-frontend\",\"version\":\"0.0.0+fa2e8a7a\"});\n}\n"],"names":[],"mappings":"AAAA;AACA;AACA;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpEA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrLA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACPA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/KA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1FA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3FA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;","file":"clever-sparky-frontend.js"}