{"version":3,"sources":["vendor/ember-cli/app-prefix.js","b3i-analytics-web-app/adapters/-json-api.js","b3i-analytics-web-app/adapters/application.js","b3i-analytics-web-app/adapters/import-from-csv.js","b3i-analytics-web-app/adapters/principal-investigator.js","b3i-analytics-web-app/adapters/user-team-access.js","b3i-analytics-web-app/adapters/user.js","b3i-analytics-web-app/app.js","b3i-analytics-web-app/authenticators/oauth2.js","b3i-analytics-web-app/authenticators/saml.js","b3i-analytics-web-app/breakpoints.js","b3i-analytics-web-app/component-managers/glimmer.js","b3i-analytics-web-app/components/-dynamic-element-alt.js","b3i-analytics-web-app/components/-dynamic-element.js","b3i-analytics-web-app/components/as-scrollable.js","b3i-analytics-web-app/components/async-button.js","b3i-analytics-web-app/components/basic-dropdown-content.js","b3i-analytics-web-app/components/basic-dropdown-trigger.js","b3i-analytics-web-app/components/basic-dropdown.js","b3i-analytics-web-app/components/cell-check-status.js","b3i-analytics-web-app/components/cell-dropdown-effort.js","b3i-analytics-web-app/components/cell-dropdown-funded.js","b3i-analytics-web-app/components/cell-dropdown-mega-grants.js","b3i-analytics-web-app/components/cell-edit-institution.js","b3i-analytics-web-app/components/cell-edit-membership.js","b3i-analytics-web-app/components/cell-edit-user.js","b3i-analytics-web-app/components/cell-input-percentage.js","b3i-analytics-web-app/components/cell-label-column.js","b3i-analytics-web-app/components/cell-link-department.js","b3i-analytics-web-app/components/cell-link-is-new.js","b3i-analytics-web-app/components/cell-link.js","b3i-analytics-web-app/components/cell-mega-grant-variance.js","b3i-analytics-web-app/components/cell-money-one-decimal.js","b3i-analytics-web-app/components/cell-money.js","b3i-analytics-web-app/components/cell-non-escape.js","b3i-analytics-web-app/components/cell-percentage-non-bold.js","b3i-analytics-web-app/components/cell-percentage.js","b3i-analytics-web-app/components/cell-title-is-new.js","b3i-analytics-web-app/components/cell-user-admin.js","b3i-analytics-web-app/components/cell-variance-money.js","b3i-analytics-web-app/components/cell-variance-percentage.js","b3i-analytics-web-app/components/change-plus-minus.js","b3i-analytics-web-app/components/chart-loader.js","b3i-analytics-web-app/components/click-outside.js","b3i-analytics-web-app/components/column-at-risk.js","b3i-analytics-web-app/components/column-help-icon.js","b3i-analytics-web-app/components/commentary-drawer.js","b3i-analytics-web-app/components/commentary-list.js","b3i-analytics-web-app/components/comparative-faculty-summary-card.js","b3i-analytics-web-app/components/data-import-message.js","b3i-analytics-web-app/components/departments-summary-cards.js","b3i-analytics-web-app/components/dropdown-wrapper-multi-select.js","b3i-analytics-web-app/components/dropdown-wrapper-with-value.js","b3i-analytics-web-app/components/dropdown-wrapper.js","b3i-analytics-web-app/components/ember-chart.js","b3i-analytics-web-app/components/ember-popover.js","b3i-analytics-web-app/components/ember-scrollable.js","b3i-analytics-web-app/components/ember-scrollbar.js","b3i-analytics-web-app/components/ember-tooltip.js","b3i-analytics-web-app/components/ember-wormhole.js","b3i-analytics-web-app/components/error-message.js","b3i-analytics-web-app/components/forecast-modifier-controls-row.js","b3i-analytics-web-app/components/form-add-edit-institution-access.js","b3i-analytics-web-app/components/help-icon.js","b3i-analytics-web-app/components/investigator-plan.js","b3i-analytics-web-app/components/light-table.js","b3i-analytics-web-app/components/light-table/cells/base.js","b3i-analytics-web-app/components/light-table/columns/base.js","b3i-analytics-web-app/components/loading-animation.js","b3i-analytics-web-app/components/lt-body.js","b3i-analytics-web-app/components/lt-column-resizer.js","b3i-analytics-web-app/components/lt-foot.js","b3i-analytics-web-app/components/lt-head.js","b3i-analytics-web-app/components/lt-infinity.js","b3i-analytics-web-app/components/lt-row.js","b3i-analytics-web-app/components/lt-scaffolding-row.js","b3i-analytics-web-app/components/lt-scrollable.js","b3i-analytics-web-app/components/lt-spanned-row.js","b3i-analytics-web-app/components/masked-input.js","b3i-analytics-web-app/components/maybe-in-element.js","b3i-analytics-web-app/components/mega-grant-status-row.js","b3i-analytics-web-app/components/modal-add-institution-access.js","b3i-analytics-web-app/components/modal-add-user-admin.js","b3i-analytics-web-app/components/modal-add-user.js","b3i-analytics-web-app/components/modal-delete-institution.js","b3i-analytics-web-app/components/modal-delete-user-admin.js","b3i-analytics-web-app/components/modal-delete-user.js","b3i-analytics-web-app/components/modal-edit-institution.js","b3i-analytics-web-app/components/modal-edit-membership.js","b3i-analytics-web-app/components/modal-edit-user-admin.js","b3i-analytics-web-app/components/modal-edit-user.js","b3i-analytics-web-app/components/modal-team-switcher.js","b3i-analytics-web-app/components/modal-wrapper.js","b3i-analytics-web-app/components/money-text-input.js","b3i-analytics-web-app/components/multi-option-select.js","b3i-analytics-web-app/components/one-way-credit-card-mask.js","b3i-analytics-web-app/components/one-way-currency-mask.js","b3i-analytics-web-app/components/one-way-date-mask.js","b3i-analytics-web-app/components/one-way-email-mask.js","b3i-analytics-web-app/components/one-way-input-mask.js","b3i-analytics-web-app/components/one-way-number-mask.js","b3i-analytics-web-app/components/one-way-phone-mask.js","b3i-analytics-web-app/components/one-way-ssn-mask.js","b3i-analytics-web-app/components/one-way-zip-code-mask.js","b3i-analytics-web-app/components/pell-editor.js","b3i-analytics-web-app/components/percent-input-threshold.js","b3i-analytics-web-app/components/percent-text-input.js","b3i-analytics-web-app/components/pikaday-input.js","b3i-analytics-web-app/components/pikaday-inputless.js","b3i-analytics-web-app/components/power-select-multiple.js","b3i-analytics-web-app/components/power-select-multiple/trigger.js","b3i-analytics-web-app/components/power-select.js","b3i-analytics-web-app/components/power-select/before-options.js","b3i-analytics-web-app/components/power-select/no-matches-message.js","b3i-analytics-web-app/components/power-select/options.js","b3i-analytics-web-app/components/power-select/placeholder.js","b3i-analytics-web-app/components/power-select/power-select-group.js","b3i-analytics-web-app/components/power-select/search-message.js","b3i-analytics-web-app/components/power-select/trigger.js","b3i-analytics-web-app/components/print-this.js","b3i-analytics-web-app/components/projections-controls-row.js","b3i-analytics-web-app/components/projections-controls-table.js","b3i-analytics-web-app/components/projections-settings.js","b3i-analytics-web-app/components/radio-button.js","b3i-analytics-web-app/components/recruitment-faculty-table.js","b3i-analytics-web-app/components/resize-detector.js","b3i-analytics-web-app/components/row-expanded-active-mega.js","b3i-analytics-web-app/components/row-expanded-pending-mega.js","b3i-analytics-web-app/components/row-institution-access.js","b3i-analytics-web-app/components/scroll-content-element.js","b3i-analytics-web-app/components/scroll-to.js","b3i-analytics-web-app/components/select-dropdown.js","b3i-analytics-web-app/components/select-grouped-dropdown-wrapper.js","b3i-analytics-web-app/components/select-grouped-dropdown.js","b3i-analytics-web-app/components/slider-input.js","b3i-analytics-web-app/components/split-bar-chart.js","b3i-analytics-web-app/components/sticky-element.js","b3i-analytics-web-app/components/sticky-element/trigger.js","b3i-analytics-web-app/components/success-message.js","b3i-analytics-web-app/components/table-active-mega.js","b3i-analytics-web-app/components/table-base.js","b3i-analytics-web-app/components/table-comparative-departments.js","b3i-analytics-web-app/components/table-comparative-faculty.js","b3i-analytics-web-app/components/table-comparative-proposals-successes.js","b3i-analytics-web-app/components/table-comparative-statistics-pi.js","b3i-analytics-web-app/components/table-comparative-statistics-proposals.js","b3i-analytics-web-app/components/table-compensation-coverage.js","b3i-analytics-web-app/components/table-controls.js","b3i-analytics-web-app/components/table-core-detail.js","b3i-analytics-web-app/components/table-data-import.js","b3i-analytics-web-app/components/table-data-mining.js","b3i-analytics-web-app/components/table-grants.js","b3i-analytics-web-app/components/table-institutions.js","b3i-analytics-web-app/components/table-investigators.js","b3i-analytics-web-app/components/table-mega-grants-summary-spending.js","b3i-analytics-web-app/components/table-pending-mega.js","b3i-analytics-web-app/components/table-pi-projections.js","b3i-analytics-web-app/components/table-potential-to-spend.js","b3i-analytics-web-app/components/table-projections-core-mega-future.js","b3i-analytics-web-app/components/table-projections-core-mega-prior.js","b3i-analytics-web-app/components/table-projections-proposals-conversions.js","b3i-analytics-web-app/components/table-proposal-history.js","b3i-analytics-web-app/components/table-users-admin.js","b3i-analytics-web-app/components/table-users.js","b3i-analytics-web-app/components/table-wrapper.js","b3i-analytics-web-app/components/validated-date-input.js","b3i-analytics-web-app/components/validated-phone-number-input.js","b3i-analytics-web-app/components/validated-text-input.js","b3i-analytics-web-app/components/value-or-not-provided.js","b3i-analytics-web-app/components/vertical-collection.js","b3i-analytics-web-app/components/welcome-page.js","b3i-analytics-web-app/constants/errors.js","b3i-analytics-web-app/constants/hit-rate-options.js","b3i-analytics-web-app/constants/institution-properties.js","b3i-analytics-web-app/constants/roles.js","b3i-analytics-web-app/constants/sponsor-types.js","b3i-analytics-web-app/constants/tiers.js","b3i-analytics-web-app/constants/validations.js","b3i-analytics-web-app/controllers/admin.js","b3i-analytics-web-app/controllers/admin/institutions.js","b3i-analytics-web-app/controllers/admin/users/index.js","b3i-analytics-web-app/controllers/admin/users/user.js","b3i-analytics-web-app/controllers/app.js","b3i-analytics-web-app/controllers/app/comparative/departments.js","b3i-analytics-web-app/controllers/app/comparative/investigators.js","b3i-analytics-web-app/controllers/app/data-import.js","b3i-analytics-web-app/controllers/app/data-mining.js","b3i-analytics-web-app/controllers/app/departments.js","b3i-analytics-web-app/controllers/app/departments/department.js","b3i-analytics-web-app/controllers/app/departments/index.js","b3i-analytics-web-app/controllers/app/departments/principal-investigator.js","b3i-analytics-web-app/controllers/app/departments/principal-investigator/comparative-statistics.js","b3i-analytics-web-app/controllers/app/departments/principal-investigator/history.js","b3i-analytics-web-app/controllers/app/departments/principal-investigator/projections.js","b3i-analytics-web-app/controllers/app/insights.js","b3i-analytics-web-app/controllers/app/insights/comparative-proposals-successes.js","b3i-analytics-web-app/controllers/app/insights/core-detail.js","b3i-analytics-web-app/controllers/app/investigators.js","b3i-analytics-web-app/controllers/app/mega-grants.js","b3i-analytics-web-app/controllers/app/mega-grants/active.js","b3i-analytics-web-app/controllers/app/mega-grants/pending.js","b3i-analytics-web-app/controllers/app/mega-grants/summary.js","b3i-analytics-web-app/controllers/app/projections/forecast-modifier.js","b3i-analytics-web-app/controllers/app/projections/index.js","b3i-analytics-web-app/controllers/app/recruitment.js","b3i-analytics-web-app/controllers/app/settings.js","b3i-analytics-web-app/controllers/app/users.js","b3i-analytics-web-app/controllers/application.js","b3i-analytics-web-app/controllers/export-investigators/index.js","b3i-analytics-web-app/controllers/forgot-password.js","b3i-analytics-web-app/controllers/login.js","b3i-analytics-web-app/controllers/mfa-setup/request-verification.js","b3i-analytics-web-app/controllers/mfa-setup/verify.js","b3i-analytics-web-app/controllers/reset-password.js","b3i-analytics-web-app/controllers/saml-complete.js","b3i-analytics-web-app/controllers/sandbox.js","b3i-analytics-web-app/controllers/signup.js","b3i-analytics-web-app/data-adapter.js","b3i-analytics-web-app/helpers/-element.js","b3i-analytics-web-app/helpers/abs.js","b3i-analytics-web-app/helpers/acos.js","b3i-analytics-web-app/helpers/acosh.js","b3i-analytics-web-app/helpers/add.js","b3i-analytics-web-app/helpers/and.js","b3i-analytics-web-app/helpers/app-version.js","b3i-analytics-web-app/helpers/asin.js","b3i-analytics-web-app/helpers/asinh.js","b3i-analytics-web-app/helpers/assign.js","b3i-analytics-web-app/helpers/atan.js","b3i-analytics-web-app/helpers/atan2.js","b3i-analytics-web-app/helpers/atanh.js","b3i-analytics-web-app/helpers/camelize.js","b3i-analytics-web-app/helpers/cancel-all.js","b3i-analytics-web-app/helpers/capitalize.js","b3i-analytics-web-app/helpers/cbrt.js","b3i-analytics-web-app/helpers/ceil.js","b3i-analytics-web-app/helpers/classify.js","b3i-analytics-web-app/helpers/clz32.js","b3i-analytics-web-app/helpers/compute.js","b3i-analytics-web-app/helpers/cos.js","b3i-analytics-web-app/helpers/cosh.js","b3i-analytics-web-app/helpers/dasherize-string.js","b3i-analytics-web-app/helpers/dasherize.js","b3i-analytics-web-app/helpers/div.js","b3i-analytics-web-app/helpers/ember-power-select-is-group.js","b3i-analytics-web-app/helpers/ember-power-select-is-selected.js","b3i-analytics-web-app/helpers/eq.js","b3i-analytics-web-app/helpers/exp.js","b3i-analytics-web-app/helpers/expm1.js","b3i-analytics-web-app/helpers/floor.js","b3i-analytics-web-app/helpers/format-money.js","b3i-analytics-web-app/helpers/format-number.js","b3i-analytics-web-app/helpers/fround.js","b3i-analytics-web-app/helpers/gcd.js","b3i-analytics-web-app/helpers/gt.js","b3i-analytics-web-app/helpers/gte.js","b3i-analytics-web-app/helpers/html-safe.js","b3i-analytics-web-app/helpers/humanize.js","b3i-analytics-web-app/helpers/hypot.js","b3i-analytics-web-app/helpers/imul.js","b3i-analytics-web-app/helpers/is-after.js","b3i-analytics-web-app/helpers/is-array.js","b3i-analytics-web-app/helpers/is-before.js","b3i-analytics-web-app/helpers/is-between.js","b3i-analytics-web-app/helpers/is-empty.js","b3i-analytics-web-app/helpers/is-equal.js","b3i-analytics-web-app/helpers/is-same-or-after.js","b3i-analytics-web-app/helpers/is-same-or-before.js","b3i-analytics-web-app/helpers/is-same.js","b3i-analytics-web-app/helpers/lcm.js","b3i-analytics-web-app/helpers/log-e.js","b3i-analytics-web-app/helpers/log10.js","b3i-analytics-web-app/helpers/log1p.js","b3i-analytics-web-app/helpers/log2.js","b3i-analytics-web-app/helpers/lowercase.js","b3i-analytics-web-app/helpers/lt.js","b3i-analytics-web-app/helpers/lte.js","b3i-analytics-web-app/helpers/max.js","b3i-analytics-web-app/helpers/media.js","b3i-analytics-web-app/helpers/min.js","b3i-analytics-web-app/helpers/mod.js","b3i-analytics-web-app/helpers/moment-add.js","b3i-analytics-web-app/helpers/moment-calendar.js","b3i-analytics-web-app/helpers/moment-diff.js","b3i-analytics-web-app/helpers/moment-duration.js","b3i-analytics-web-app/helpers/moment-format.js","b3i-analytics-web-app/helpers/moment-from-now.js","b3i-analytics-web-app/helpers/moment-from.js","b3i-analytics-web-app/helpers/moment-subtract.js","b3i-analytics-web-app/helpers/moment-to-date.js","b3i-analytics-web-app/helpers/moment-to-now.js","b3i-analytics-web-app/helpers/moment-to.js","b3i-analytics-web-app/helpers/moment-unix.js","b3i-analytics-web-app/helpers/moment.js","b3i-analytics-web-app/helpers/mult.js","b3i-analytics-web-app/helpers/not-eq.js","b3i-analytics-web-app/helpers/not.js","b3i-analytics-web-app/helpers/now.js","b3i-analytics-web-app/helpers/or.js","b3i-analytics-web-app/helpers/perform.js","b3i-analytics-web-app/helpers/pluralize.js","b3i-analytics-web-app/helpers/pow.js","b3i-analytics-web-app/helpers/random.js","b3i-analytics-web-app/helpers/round.js","b3i-analytics-web-app/helpers/send.js","b3i-analytics-web-app/helpers/sign.js","b3i-analytics-web-app/helpers/sin.js","b3i-analytics-web-app/helpers/singularize.js","b3i-analytics-web-app/helpers/sqrt.js","b3i-analytics-web-app/helpers/sub.js","b3i-analytics-web-app/helpers/tan.js","b3i-analytics-web-app/helpers/tanh.js","b3i-analytics-web-app/helpers/task.js","b3i-analytics-web-app/helpers/titleize.js","b3i-analytics-web-app/helpers/trim.js","b3i-analytics-web-app/helpers/trunc.js","b3i-analytics-web-app/helpers/truncate.js","b3i-analytics-web-app/helpers/underscore.js","b3i-analytics-web-app/helpers/unix.js","b3i-analytics-web-app/helpers/uppercase.js","b3i-analytics-web-app/helpers/utc.js","b3i-analytics-web-app/helpers/w.js","b3i-analytics-web-app/helpers/xor.js","b3i-analytics-web-app/index.js","b3i-analytics-web-app/initializers/accounting.js","b3i-analytics-web-app/initializers/app-version.js","b3i-analytics-web-app/initializers/container-debug-adapter.js","b3i-analytics-web-app/initializers/debug.js","b3i-analytics-web-app/initializers/ember-concurrency.js","b3i-analytics-web-app/initializers/ember-data-data-adapter.js","b3i-analytics-web-app/initializers/ember-data.js","b3i-analytics-web-app/initializers/ember-responsive-breakpoints.js","b3i-analytics-web-app/initializers/ember-simple-auth.js","b3i-analytics-web-app/initializers/export-application-global.js","b3i-analytics-web-app/initializers/metrics.js","b3i-analytics-web-app/initializers/responsive.js","b3i-analytics-web-app/initializers/viewport-config.js","b3i-analytics-web-app/instance-initializers/ember-data.js","b3i-analytics-web-app/instance-initializers/ember-simple-auth.js","b3i-analytics-web-app/instance-initializers/raven-setup.js","b3i-analytics-web-app/mixins/admin-only-route.js","b3i-analytics-web-app/mixins/click-outside.js","b3i-analytics-web-app/mixins/current-year-projections.js","b3i-analytics-web-app/mixins/full-projections.js","b3i-analytics-web-app/mixins/investigator-projections-route.js","b3i-analytics-web-app/mixins/investigator-projections.js","b3i-analytics-web-app/mixins/model-cell-link-data.js","b3i-analytics-web-app/mixins/non-department-only-route.js","b3i-analytics-web-app/mixins/open-print-dialog.js","b3i-analytics-web-app/mixins/permissions-check.js","b3i-analytics-web-app/mixins/projection-filter-route.js","b3i-analytics-web-app/mixins/pts-summary-controller.js","b3i-analytics-web-app/mixins/recruitment-calculations.js","b3i-analytics-web-app/mixins/summary-data-rows.js","b3i-analytics-web-app/mixins/table-common.js","b3i-analytics-web-app/models/comparative-proposal-history.js","b3i-analytics-web-app/models/comparative-statistic.js","b3i-analytics-web-app/models/department.js","b3i-analytics-web-app/models/grant.js","b3i-analytics-web-app/models/import-from-csv.js","b3i-analytics-web-app/models/invitation.js","b3i-analytics-web-app/models/mega-grant.js","b3i-analytics-web-app/models/membership.js","b3i-analytics-web-app/models/principal-investigator.js","b3i-analytics-web-app/models/profile.js","b3i-analytics-web-app/models/projection.js","b3i-analytics-web-app/models/proposal.js","b3i-analytics-web-app/models/recruitment.js","b3i-analytics-web-app/models/sector.js","b3i-analytics-web-app/models/signup-code.js","b3i-analytics-web-app/models/sponsor.js","b3i-analytics-web-app/models/success.js","b3i-analytics-web-app/models/team.js","b3i-analytics-web-app/models/user-team-access.js","b3i-analytics-web-app/models/user.js","b3i-analytics-web-app/modifiers/did-insert.js","b3i-analytics-web-app/modifiers/did-update.js","b3i-analytics-web-app/modifiers/in-viewport.js","b3i-analytics-web-app/modifiers/on-click-outside.js","b3i-analytics-web-app/modifiers/will-destroy.js","b3i-analytics-web-app/router.js","b3i-analytics-web-app/routes/admin.js","b3i-analytics-web-app/routes/admin/institutions.js","b3i-analytics-web-app/routes/admin/users/index.js","b3i-analytics-web-app/routes/admin/users/user.js","b3i-analytics-web-app/routes/app.js","b3i-analytics-web-app/routes/app/commentary.js","b3i-analytics-web-app/routes/app/comparative.js","b3i-analytics-web-app/routes/app/comparative/departments.js","b3i-analytics-web-app/routes/app/comparative/index.js","b3i-analytics-web-app/routes/app/comparative/investigators.js","b3i-analytics-web-app/routes/app/data-import.js","b3i-analytics-web-app/routes/app/data-mining.js","b3i-analytics-web-app/routes/app/departments.js","b3i-analytics-web-app/routes/app/departments/department.js","b3i-analytics-web-app/routes/app/departments/index.js","b3i-analytics-web-app/routes/app/departments/principal-investigator.js","b3i-analytics-web-app/routes/app/departments/principal-investigator/comparative-statistics.js","b3i-analytics-web-app/routes/app/departments/principal-investigator/history.js","b3i-analytics-web-app/routes/app/departments/principal-investigator/index.js","b3i-analytics-web-app/routes/app/departments/principal-investigator/projections.js","b3i-analytics-web-app/routes/app/help.js","b3i-analytics-web-app/routes/app/help/glossary.js","b3i-analytics-web-app/routes/app/help/instructions.js","b3i-analytics-web-app/routes/app/help/introduction.js","b3i-analytics-web-app/routes/app/help/primer.js","b3i-analytics-web-app/routes/app/insights.js","b3i-analytics-web-app/routes/app/insights/comparative-proposals-successes.js","b3i-analytics-web-app/routes/app/insights/core-detail.js","b3i-analytics-web-app/routes/app/insights/index.js","b3i-analytics-web-app/routes/app/investigators.js","b3i-analytics-web-app/routes/app/mega-grants.js","b3i-analytics-web-app/routes/app/mega-grants/active.js","b3i-analytics-web-app/routes/app/mega-grants/index.js","b3i-analytics-web-app/routes/app/mega-grants/pending.js","b3i-analytics-web-app/routes/app/mega-grants/summary.js","b3i-analytics-web-app/routes/app/projections/forecast-modifier.js","b3i-analytics-web-app/routes/app/projections/index.js","b3i-analytics-web-app/routes/app/recruitment.js","b3i-analytics-web-app/routes/app/settings.js","b3i-analytics-web-app/routes/app/users.js","b3i-analytics-web-app/routes/application.js","b3i-analytics-web-app/routes/commentary.js","b3i-analytics-web-app/routes/export-investigators/index.js","b3i-analytics-web-app/routes/forgot-password-success.js","b3i-analytics-web-app/routes/forgot-password.js","b3i-analytics-web-app/routes/index.js","b3i-analytics-web-app/routes/login.js","b3i-analytics-web-app/routes/mfa-setup.js","b3i-analytics-web-app/routes/mfa-setup/request-verification.js","b3i-analytics-web-app/routes/mfa-setup/success.js","b3i-analytics-web-app/routes/mfa-setup/verify.js","b3i-analytics-web-app/routes/reset-password-success.js","b3i-analytics-web-app/routes/reset-password.js","b3i-analytics-web-app/routes/saml-complete.js","b3i-analytics-web-app/routes/saml-error.js","b3i-analytics-web-app/routes/sandbox.js","b3i-analytics-web-app/routes/signup.js","b3i-analytics-web-app/routes/welcome.js","b3i-analytics-web-app/serializers/-default.js","b3i-analytics-web-app/serializers/-json-api.js","b3i-analytics-web-app/serializers/-rest.js","b3i-analytics-web-app/serializers/application.js","b3i-analytics-web-app/serializers/mega-grant.js","b3i-analytics-web-app/serializers/membership.js","b3i-analytics-web-app/serializers/principal-investigator.js","b3i-analytics-web-app/serializers/team.js","b3i-analytics-web-app/serializers/user.js","b3i-analytics-web-app/services/-in-viewport.js","b3i-analytics-web-app/services/ajax.js","b3i-analytics-web-app/services/cookies.js","b3i-analytics-web-app/services/current-user.js","b3i-analytics-web-app/services/in-viewport.js","b3i-analytics-web-app/services/media.js","b3i-analytics-web-app/services/metrics.js","b3i-analytics-web-app/services/moment.js","b3i-analytics-web-app/services/print-this.js","b3i-analytics-web-app/services/raven.js","b3i-analytics-web-app/services/resize-detector.js","b3i-analytics-web-app/services/scrollbar-thickness.js","b3i-analytics-web-app/services/session.js","b3i-analytics-web-app/services/store.js","b3i-analytics-web-app/services/text-measurer.js","b3i-analytics-web-app/services/welcome.js","b3i-analytics-web-app/services/year.js","b3i-analytics-web-app/session-stores/application.js","b3i-analytics-web-app/templates/admin.js","b3i-analytics-web-app/templates/admin/institutions.js","b3i-analytics-web-app/templates/admin/users/index.js","b3i-analytics-web-app/templates/admin/users/user.js","b3i-analytics-web-app/templates/app.js","b3i-analytics-web-app/templates/app/commentary.js","b3i-analytics-web-app/templates/app/comparative.js","b3i-analytics-web-app/templates/app/comparative/departments.js","b3i-analytics-web-app/templates/app/comparative/investigators.js","b3i-analytics-web-app/templates/app/data-import.js","b3i-analytics-web-app/templates/app/data-mining.js","b3i-analytics-web-app/templates/app/departments.js","b3i-analytics-web-app/templates/app/departments/department.js","b3i-analytics-web-app/templates/app/departments/index.js","b3i-analytics-web-app/templates/app/departments/principal-investigator.js","b3i-analytics-web-app/templates/app/departments/principal-investigator/comparative-statistics.js","b3i-analytics-web-app/templates/app/departments/principal-investigator/history.js","b3i-analytics-web-app/templates/app/departments/principal-investigator/index.js","b3i-analytics-web-app/templates/app/departments/principal-investigator/projections.js","b3i-analytics-web-app/templates/app/help.js","b3i-analytics-web-app/templates/app/help/glossary.js","b3i-analytics-web-app/templates/app/help/instructions.js","b3i-analytics-web-app/templates/app/help/introduction.js","b3i-analytics-web-app/templates/app/help/primer.js","b3i-analytics-web-app/templates/app/insights.js","b3i-analytics-web-app/templates/app/insights/comparative-proposals-successes.js","b3i-analytics-web-app/templates/app/insights/core-detail.js","b3i-analytics-web-app/templates/app/insights/index.js","b3i-analytics-web-app/templates/app/investigators.js","b3i-analytics-web-app/templates/app/mega-grants.js","b3i-analytics-web-app/templates/app/mega-grants/active.js","b3i-analytics-web-app/templates/app/mega-grants/index.js","b3i-analytics-web-app/templates/app/mega-grants/pending.js","b3i-analytics-web-app/templates/app/mega-grants/summary.js","b3i-analytics-web-app/templates/app/projections/forecast-modifier.js","b3i-analytics-web-app/templates/app/projections/index.js","b3i-analytics-web-app/templates/app/recruitment.js","b3i-analytics-web-app/templates/app/settings.js","b3i-analytics-web-app/templates/app/users.js","b3i-analytics-web-app/templates/app/verify.js","b3i-analytics-web-app/templates/application.js","b3i-analytics-web-app/templates/commentary.js","b3i-analytics-web-app/templates/components/async-button.js","b3i-analytics-web-app/templates/components/basic-dropdown-content.js","b3i-analytics-web-app/templates/components/basic-dropdown-trigger.js","b3i-analytics-web-app/templates/components/basic-dropdown.js","b3i-analytics-web-app/templates/components/cell-check-status.js","b3i-analytics-web-app/templates/components/cell-dropdown-effort.js","b3i-analytics-web-app/templates/components/cell-dropdown-funded.js","b3i-analytics-web-app/templates/components/cell-dropdown-mega-grants.js","b3i-analytics-web-app/templates/components/cell-edit-institution.js","b3i-analytics-web-app/templates/components/cell-edit-membership.js","b3i-analytics-web-app/templates/components/cell-edit-user.js","b3i-analytics-web-app/templates/components/cell-input-percentage.js","b3i-analytics-web-app/templates/components/cell-label-column.js","b3i-analytics-web-app/templates/components/cell-link-department.js","b3i-analytics-web-app/templates/components/cell-link-is-new.js","b3i-analytics-web-app/templates/components/cell-link.js","b3i-analytics-web-app/templates/components/cell-mega-grant-variance.js","b3i-analytics-web-app/templates/components/cell-money-one-decimal.js","b3i-analytics-web-app/templates/components/cell-money.js","b3i-analytics-web-app/templates/components/cell-non-escape.js","b3i-analytics-web-app/templates/components/cell-percentage-non-bold.js","b3i-analytics-web-app/templates/components/cell-percentage.js","b3i-analytics-web-app/templates/components/cell-title-is-new.js","b3i-analytics-web-app/templates/components/cell-user-admin.js","b3i-analytics-web-app/templates/components/cell-variance-money.js","b3i-analytics-web-app/templates/components/cell-variance-percentage.js","b3i-analytics-web-app/templates/components/change-plus-minus.js","b3i-analytics-web-app/templates/components/chart-loader.js","b3i-analytics-web-app/templates/components/column-at-risk.js","b3i-analytics-web-app/templates/components/column-help-icon.js","b3i-analytics-web-app/templates/components/commentary-drawer.js","b3i-analytics-web-app/templates/components/commentary-list.js","b3i-analytics-web-app/templates/components/comparative-faculty-summary-card.js","b3i-analytics-web-app/templates/components/data-import-message.js","b3i-analytics-web-app/templates/components/departments-summary-cards.js","b3i-analytics-web-app/templates/components/dropdown-wrapper-multi-select.js","b3i-analytics-web-app/templates/components/dropdown-wrapper-with-value.js","b3i-analytics-web-app/templates/components/dropdown-wrapper.js","b3i-analytics-web-app/templates/components/error-message.js","b3i-analytics-web-app/templates/components/forecast-modifier-controls-row.js","b3i-analytics-web-app/templates/components/form-add-edit-institution-access.js","b3i-analytics-web-app/templates/components/help-icon.js","b3i-analytics-web-app/templates/components/investigator-plan.js","b3i-analytics-web-app/templates/components/loading-animation.js","b3i-analytics-web-app/templates/components/mega-grant-status-row.js","b3i-analytics-web-app/templates/components/modal-add-institution-access.js","b3i-analytics-web-app/templates/components/modal-add-user-admin.js","b3i-analytics-web-app/templates/components/modal-add-user.js","b3i-analytics-web-app/templates/components/modal-delete-institution.js","b3i-analytics-web-app/templates/components/modal-delete-user-admin.js","b3i-analytics-web-app/templates/components/modal-delete-user.js","b3i-analytics-web-app/templates/components/modal-edit-institution.js","b3i-analytics-web-app/templates/components/modal-edit-membership.js","b3i-analytics-web-app/templates/components/modal-edit-user-admin.js","b3i-analytics-web-app/templates/components/modal-edit-user.js","b3i-analytics-web-app/templates/components/modal-team-switcher.js","b3i-analytics-web-app/templates/components/modal-wrapper.js","b3i-analytics-web-app/templates/components/money-text-input.js","b3i-analytics-web-app/templates/components/multi-option-select.js","b3i-analytics-web-app/templates/components/percent-input-threshold.js","b3i-analytics-web-app/templates/components/percent-text-input.js","b3i-analytics-web-app/templates/components/projections-controls-row.js","b3i-analytics-web-app/templates/components/projections-controls-table.js","b3i-analytics-web-app/templates/components/projections-settings.js","b3i-analytics-web-app/templates/components/recruitment-faculty-table.js","b3i-analytics-web-app/templates/components/row-expanded-active-mega.js","b3i-analytics-web-app/templates/components/row-expanded-pending-mega.js","b3i-analytics-web-app/templates/components/row-institution-access.js","b3i-analytics-web-app/templates/components/select-dropdown.js","b3i-analytics-web-app/templates/components/select-grouped-dropdown-wrapper.js","b3i-analytics-web-app/templates/components/select-grouped-dropdown.js","b3i-analytics-web-app/templates/components/slider-input.js","b3i-analytics-web-app/templates/components/split-bar-chart.js","b3i-analytics-web-app/templates/components/success-message.js","b3i-analytics-web-app/templates/components/table-active-mega.js","b3i-analytics-web-app/templates/components/table-base.js","b3i-analytics-web-app/templates/components/table-comparative-departments.js","b3i-analytics-web-app/templates/components/table-comparative-faculty.js","b3i-analytics-web-app/templates/components/table-comparative-proposals-successes.js","b3i-analytics-web-app/templates/components/table-comparative-statistics-pi.js","b3i-analytics-web-app/templates/components/table-comparative-statistics-proposals.js","b3i-analytics-web-app/templates/components/table-compensation-coverage.js","b3i-analytics-web-app/templates/components/table-controls.js","b3i-analytics-web-app/templates/components/table-core-detail.js","b3i-analytics-web-app/templates/components/table-data-import.js","b3i-analytics-web-app/templates/components/table-data-mining.js","b3i-analytics-web-app/templates/components/table-grants.js","b3i-analytics-web-app/templates/components/table-institutions.js","b3i-analytics-web-app/templates/components/table-investigators.js","b3i-analytics-web-app/templates/components/table-mega-grants-summary-spending.js","b3i-analytics-web-app/templates/components/table-pending-mega.js","b3i-analytics-web-app/templates/components/table-pi-projections.js","b3i-analytics-web-app/templates/components/table-potential-to-spend.js","b3i-analytics-web-app/templates/components/table-projections-core-mega-future.js","b3i-analytics-web-app/templates/components/table-projections-core-mega-prior.js","b3i-analytics-web-app/templates/components/table-projections-core-mega.js","b3i-analytics-web-app/templates/components/table-projections-proposals-conversions.js","b3i-analytics-web-app/templates/components/table-proposal-history.js","b3i-analytics-web-app/templates/components/table-users-admin.js","b3i-analytics-web-app/templates/components/table-users.js","b3i-analytics-web-app/templates/components/table-wrapper.js","b3i-analytics-web-app/templates/components/validated-date-input.js","b3i-analytics-web-app/templates/components/validated-phone-number-input.js","b3i-analytics-web-app/templates/components/validated-text-input.js","b3i-analytics-web-app/templates/components/value-or-not-provided.js","b3i-analytics-web-app/templates/export-investigators/index.js","b3i-analytics-web-app/templates/export-investigators/loading.js","b3i-analytics-web-app/templates/forgot-password-success.js","b3i-analytics-web-app/templates/forgot-password.js","b3i-analytics-web-app/templates/index.js","b3i-analytics-web-app/templates/login.js","b3i-analytics-web-app/templates/mfa-setup.js","b3i-analytics-web-app/templates/mfa-setup/request-verification.js","b3i-analytics-web-app/templates/mfa-setup/success.js","b3i-analytics-web-app/templates/mfa-setup/verify.js","b3i-analytics-web-app/templates/reset-password-success.js","b3i-analytics-web-app/templates/reset-password.js","b3i-analytics-web-app/templates/saml-complete.js","b3i-analytics-web-app/templates/saml-error.js","b3i-analytics-web-app/templates/sandbox.js","b3i-analytics-web-app/templates/signup.js","b3i-analytics-web-app/templates/welcome.js","b3i-analytics-web-app/transforms/boolean.js","b3i-analytics-web-app/transforms/date-only.js","b3i-analytics-web-app/transforms/date.js","b3i-analytics-web-app/transforms/jsonstring.js","b3i-analytics-web-app/transforms/millions.js","b3i-analytics-web-app/transforms/number-not-null.js","b3i-analytics-web-app/transforms/number.js","b3i-analytics-web-app/transforms/percent.js","b3i-analytics-web-app/transforms/string.js","b3i-analytics-web-app/transforms/utc.js","b3i-analytics-web-app/utils/airtable-content-from-route.js","b3i-analytics-web-app/utils/calculate-position.js","b3i-analytics-web-app/utils/cell-link-data.js","b3i-analytics-web-app/utils/convert-to-fiscal-month.js","b3i-analytics-web-app/utils/display-value-from-new-value-sponsors.js","b3i-analytics-web-app/utils/display-value-from-sponsors.js","b3i-analytics-web-app/utils/format-m-currency.js","b3i-analytics-web-app/utils/format-mm-currency.js","b3i-analytics-web-app/utils/format-percentage.js","b3i-analytics-web-app/utils/future-mega-projection.js","b3i-analytics-web-app/utils/highlight-pts-cells.js","b3i-analytics-web-app/utils/highlight-pts-rows.js","b3i-analytics-web-app/utils/new-value-from-sponsors.js","b3i-analytics-web-app/utils/object-transforms.js","b3i-analytics-web-app/utils/original-sponsor-for-type.js","b3i-analytics-web-app/utils/percentiles-from-quartile.js","b3i-analytics-web-app/utils/pts-ammortization.js","b3i-analytics-web-app/utils/pts-renewal-ammortization.js","b3i-analytics-web-app/utils/remove-from-dom.js","b3i-analytics-web-app/utils/sort-string-with-plan.js","b3i-analytics-web-app/utils/title-case.js","b3i-analytics-web-app/utils/titleize.js","b3i-analytics-web-app/utils/uuid-generator.js","b3i-analytics-web-app/validators/alias.js","b3i-analytics-web-app/validators/belongs-to.js","b3i-analytics-web-app/validators/collection.js","b3i-analytics-web-app/validators/confirmation.js","b3i-analytics-web-app/validators/date.js","b3i-analytics-web-app/validators/dependent.js","b3i-analytics-web-app/validators/ds-error.js","b3i-analytics-web-app/validators/exclusion.js","b3i-analytics-web-app/validators/format.js","b3i-analytics-web-app/validators/has-many.js","b3i-analytics-web-app/validators/inclusion.js","b3i-analytics-web-app/validators/length.js","b3i-analytics-web-app/validators/messages.js","b3i-analytics-web-app/validators/number.js","b3i-analytics-web-app/validators/presence.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(\"b3i-analytics-web-app/adapters/-json-api\", [\"exports\", \"@ember-data/adapter/json-api\"], function (_exports, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _jsonApi.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/adapters/application\", [\"exports\", \"@ember-data/adapter/json-api\", \"ember-simple-auth/mixins/data-adapter-mixin\", \"ember-inflector\", \"b3i-analytics-web-app/config/environment\", \"ember-ajax/mixins/ajax-support\"], function (_exports, _jsonApi, _dataAdapterMixin, _emberInflector, _environment, _ajaxSupport) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var Application = classic(_class = (_temp = /*#__PURE__*/function (_JSONAPIAdapter$exten) {\n    _inherits(Application, _JSONAPIAdapter$exten);\n\n    var _super = _createSuper(Application);\n\n    function Application() {\n      var _this;\n\n      _classCallCheck(this, Application);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"host\", _environment.default.host);\n\n      _defineProperty(_assertThisInitialized(_this), \"namespace\", _environment.default.namespace);\n\n      return _this;\n    }\n\n    _createClass(Application, [{\n      key: \"isInvalid\",\n      value: function isInvalid(status) {\n        return status === 422 || status === 400;\n      }\n    }, {\n      key: \"authorize\",\n      value: function authorize(xhr) {\n        var _this$get = this.get('session.data.authenticated'),\n            access_token = _this$get.access_token;\n\n        if (Ember.isPresent(access_token)) {\n          xhr.setRequestHeader('Authorization', \"Bearer \".concat(access_token));\n        }\n      }\n    }, {\n      key: \"pathForType\",\n      value: function pathForType(type) {\n        var plural = (0, _emberInflector.pluralize)(type);\n        return Ember.String.underscore(plural);\n      }\n    }, {\n      key: \"buildURL\",\n      value: function buildURL(modelName, id, snapshot, requestType, query) {\n        //call the default buildURL and then append a slash\n        return _get(_getPrototypeOf(Application.prototype), \"buildURL\", this).call(this, modelName, id, snapshot, requestType, query) + '/';\n      }\n    }]);\n\n    return Application;\n  }(_jsonApi.default.extend(_dataAdapterMixin.default, _ajaxSupport.default)), _temp)) || _class;\n\n  _exports.default = Application;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/adapters/import-from-csv\", [\"exports\", \"b3i-analytics-web-app/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ImportFromCsv = classic(_class = /*#__PURE__*/function (_ApplicationAdapter) {\n    _inherits(ImportFromCsv, _ApplicationAdapter);\n\n    var _super = _createSuper(ImportFromCsv);\n\n    function ImportFromCsv() {\n      _classCallCheck(this, ImportFromCsv);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(ImportFromCsv, [{\n      key: \"pathForType\",\n      value: function pathForType(type) {\n        return Ember.String.underscore(type);\n      }\n    }]);\n\n    return ImportFromCsv;\n  }(_application.default)) || _class;\n\n  _exports.default = ImportFromCsv;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/adapters/principal-investigator\", [\"exports\", \"b3i-analytics-web-app/adapters/application\", \"@ember-data/adapter\", \"jquery\"], function (_exports, _application, _adapter, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var PrincipalInvestigator = classic(_class = /*#__PURE__*/function (_ApplicationAdapter$e) {\n    _inherits(PrincipalInvestigator, _ApplicationAdapter$e);\n\n    var _super = _createSuper(PrincipalInvestigator);\n\n    function PrincipalInvestigator() {\n      _classCallCheck(this, PrincipalInvestigator);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(PrincipalInvestigator, [{\n      key: \"shouldReloadRecord\",\n      //TODO: To improve performance, check if included attributes are loaded before reloading\n      value: function shouldReloadRecord() {\n        return true;\n      }\n    }, {\n      key: \"query\",\n      value: function query(store, modelClass, _query) {\n        var url;\n\n        if (_query.exportPlans) {\n          delete _query['exportPlans'];\n          url = \"\".concat(this.urlPrefix(), \"/principal_investigators/printable_plans/?\").concat(_jquery.default.param(_query));\n        } else {\n          url = \"\".concat(this.urlPrefix(), \"/principal_investigators/?\").concat(_jquery.default.param(_query));\n        }\n\n        return this.ajax(url, 'GET');\n      }\n    }]);\n\n    return PrincipalInvestigator;\n  }(_application.default.extend(_adapter.BuildURLMixin))) || _class;\n\n  _exports.default = PrincipalInvestigator;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/adapters/user-team-access\", [\"exports\", \"b3i-analytics-web-app/adapters/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var UserTeamAccessAdapter = /*#__PURE__*/function (_ApplicationAdapter) {\n    _inherits(UserTeamAccessAdapter, _ApplicationAdapter);\n\n    var _super = _createSuper(UserTeamAccessAdapter);\n\n    function UserTeamAccessAdapter() {\n      _classCallCheck(this, UserTeamAccessAdapter);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(UserTeamAccessAdapter, [{\n      key: \"buildURL\",\n      value: function buildURL(modelName, id, snapshot, requestType, query) {\n        if (query && query.adapterOptions && query.adapterOptions.institution_access) {\n          var url;\n\n          if (query.adapterOptions.user) {\n            url = _get(_getPrototypeOf(UserTeamAccessAdapter.prototype), \"buildURL\", this).call(this, \"user\", query.adapterOptions.user, null, null, null) + 'institution_access/';\n          } else if (query.adapterOptions.team) {\n            url = _get(_getPrototypeOf(UserTeamAccessAdapter.prototype), \"buildURL\", this).call(this, \"team\", query.adapterOptions.team, null, null, null) + 'institution_access/';\n          }\n\n          if (url) {\n            delete query.adapterOptions;\n            return url;\n          }\n        } //call the default buildURL and then append a slash\n\n\n        return _get(_getPrototypeOf(UserTeamAccessAdapter.prototype), \"buildURL\", this).call(this, modelName, id, snapshot, requestType, query);\n      }\n    }]);\n\n    return UserTeamAccessAdapter;\n  }(_application.default);\n\n  _exports.default = UserTeamAccessAdapter;\n\n  window.__CLASSIC_OWN_CLASSES__.set(UserTeamAccessAdapter, true);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/adapters/user\", [\"exports\", \"b3i-analytics-web-app/adapters/application\", \"ember-data\"], function (_exports, _application, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var User = classic(_class = /*#__PURE__*/function (_ApplicationAdapter$e) {\n    _inherits(User, _ApplicationAdapter$e);\n\n    var _super = _createSuper(User);\n\n    function User() {\n      _classCallCheck(this, User);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(User, [{\n      key: \"queryRecord\",\n      value: function queryRecord(store, modelClass, query) {\n        var url = this.buildURL('user', null, null, 'queryRecord', query) + '0/';\n        return this.ajax(url, 'GET');\n      }\n    }, {\n      key: \"buildURL\",\n      value: function buildURL(modelName, id, snapshot, requestType, query) {\n        if (snapshot && snapshot.adapterOptions && snapshot.adapterOptions.admin) {\n          return _get(_getPrototypeOf(User.prototype), \"buildURL\", this).call(this, modelName, id, snapshot, requestType, query) + '?admin=true';\n        } //call the default buildURL and then append a slash\n\n\n        return _get(_getPrototypeOf(User.prototype), \"buildURL\", this).call(this, modelName, id, snapshot, requestType, query);\n      }\n    }]);\n\n    return User;\n  }(_application.default.extend(_emberData.default))) || _class;\n\n  _exports.default = User;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/app\", [\"exports\", \"ember-resolver\", \"ember-load-initializers\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _emberResolver, _emberLoadInitializers, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var App = /*#__PURE__*/function (_Ember$Application) {\n    _inherits(App, _Ember$Application);\n\n    var _super = _createSuper(App);\n\n    function App() {\n      var _this;\n\n      _classCallCheck(this, App);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"modulePrefix\", _environment.default.modulePrefix);\n\n      _defineProperty(_assertThisInitialized(_this), \"podModulePrefix\", _environment.default.podModulePrefix);\n\n      _defineProperty(_assertThisInitialized(_this), \"Resolver\", _emberResolver.default);\n\n      return _this;\n    }\n\n    return App;\n  }(Ember.Application);\n\n  _exports.default = App;\n\n  window.__CLASSIC_OWN_CLASSES__.set(App, true);\n\n  (0, _emberLoadInitializers.default)(App, _environment.default.modulePrefix);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/authenticators/oauth2\", [\"exports\", \"ember-simple-auth/authenticators/oauth2-password-grant\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _oauth2PasswordGrant, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Oauth2 = (_dec = Ember.computed('clientId'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_OAuth2PasswordGrant) {\n    _inherits(Oauth2, _OAuth2PasswordGrant);\n\n    var _super = _createSuper(Oauth2);\n\n    function Oauth2() {\n      var _this;\n\n      _classCallCheck(this, Oauth2);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"serverTokenEndpoint\", \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/oauth/token/\"));\n\n      _defineProperty(_assertThisInitialized(_this), \"serverTokenRevocationEndpoint\", \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/oauth/revoke_token/\"));\n\n      return _this;\n    }\n\n    _createClass(Oauth2, [{\n      key: \"authenticate\",\n      value: function authenticate(identification, password) {\n        var _this2 = this;\n\n        var scope = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n        var headers = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n        var mfa_code = arguments.length > 4 ? arguments[4] : undefined;\n        return new Ember.RSVP.Promise(function (resolve, reject) {\n          var data = {\n            'grant_type': 'password',\n            username: identification,\n            password: password\n          };\n\n          if (mfa_code) {\n            data.mfa_code = mfa_code;\n          }\n\n          var serverTokenEndpoint = _this2.serverTokenEndpoint;\n          var useResponse = _this2.rejectWithResponse;\n          var scopesString = Ember.makeArray(scope).join(' ');\n\n          if (!Ember.isEmpty(scopesString)) {\n            data.scope = scopesString;\n          }\n\n          _this2.makeRequest(serverTokenEndpoint, data, headers).then(function (response) {\n            Ember.run(function () {\n              if (response['mfa_required']) {\n                reject('mfa is required');\n              }\n\n              if (!_this2._validate(response)) {\n                reject('access_token is missing in server response');\n              }\n\n              var expiresAt = _this2._absolutizeExpirationTime(response['expires_in']);\n\n              _this2._scheduleAccessTokenRefresh(response['expires_in'], expiresAt, response['refresh_token']);\n\n              if (!Ember.isEmpty(expiresAt)) {\n                response = Ember.assign(response, {\n                  'expires_at': expiresAt\n                });\n              }\n\n              resolve(response);\n            });\n          }, function (response) {\n            Ember.run(null, reject, useResponse ? response : response.responseJSON || response.responseText);\n          });\n        });\n      }\n    }, {\n      key: \"_clientIdHeader\",\n      get: function get() {\n        var clientId = _environment.default.clientId;\n        var clientSecret = _environment.default.clientSecret;\n\n        if (!Ember.isEmpty(clientId)) {\n          var base64ClientId = window.btoa(clientId + ':' + clientSecret);\n          return {\n            Authorization: \"Basic \".concat(base64ClientId)\n          };\n        }\n\n        return null;\n      }\n    }]);\n\n    return Oauth2;\n  }(_oauth2PasswordGrant.default), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"_clientIdHeader\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"_clientIdHeader\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = Oauth2;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/authenticators/saml\", [\"exports\", \"b3i-analytics-web-app/authenticators/oauth2\"], function (_exports, _oauth) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var assign = Ember.assign || Ember.merge;\n\n  var Saml = classic(_class = /*#__PURE__*/function (_OAuth2PasswordGrant) {\n    _inherits(Saml, _OAuth2PasswordGrant);\n\n    var _super = _createSuper(Saml);\n\n    function Saml() {\n      _classCallCheck(this, Saml);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(Saml, [{\n      key: \"authenticate\",\n      value: function authenticate(response) {\n        var _this = this;\n\n        return new Ember.RSVP.Promise(function (resolve, reject) {\n          Ember.run(function () {\n            if (!_this._validate(response)) {\n              reject('access_token is missing in server response');\n            }\n\n            var expiresAt = _this._absolutizeExpirationTime(response['expires_in']);\n\n            _this._scheduleAccessTokenRefresh(response['expires_in'], expiresAt, response['refresh_token']);\n\n            if (!Ember.isEmpty(expiresAt)) {\n              response = assign(response, {\n                'expires_at': expiresAt\n              });\n            }\n\n            resolve(response);\n          });\n        });\n      }\n    }]);\n\n    return Saml;\n  }(_oauth.default)) || _class;\n\n  _exports.default = Saml;\n});","define(\"b3i-analytics-web-app/breakpoints\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    mobile: '(max-width: 767px)',\n    tablet: '(min-width: 768px) and (max-width: 991px)',\n    desktop: '(min-width: 992px) and (max-width: 1200px)'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/component-managers/glimmer\", [\"exports\", \"@glimmer/component/-private/ember-component-manager\"], function (_exports, _emberComponentManager) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberComponentManager.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/-dynamic-element-alt\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  // avoiding reexport directly here because in some circumstances (ember-engines\n  // for example) a simple reexport is transformed to `define.alias`,\n  // unfortunately at the moment (ember-source@3.13) there is no _actual_\n  // `@ember/component` module to alias so this causes issues\n  //\n  // tldr; we can replace this with a simple reexport when we can rely on Ember\n  // actually providing a `@ember/component` module\n  var _default = Ember.Component.extend();\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/-dynamic-element\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  // avoiding reexport directly here because in some circumstances (ember-engines\n  // for example) a simple reexport is transformed to `define.alias`,\n  // unfortunately at the moment (ember-source@3.13) there is no _actual_\n  // `@ember/component` module to alias so this causes issues\n  //\n  // tldr; we can replace this with a simple reexport when we can rely on Ember\n  // actually providing a `@ember/component` module\n  var _default = Ember.Component.extend();\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/as-scrollable\", [\"exports\", \"ember-scrollable/components/ember-scrollable\"], function (_exports, _emberScrollable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberScrollable.default.extend({\n    classNames: 'as-scrollable'\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/async-button\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNameBindings: ['isInline'],\n    actions: {\n      submitAction: function submitAction() {\n        this.set('isPending', true);\n\n        var _this = this;\n\n        this.submitAction().then(function () {\n          if (_this && !_this.isDestroyed) {\n            _this.set('isPending', false);\n          }\n        }).catch(function () {\n          if (_this && !_this.isDestroyed) {\n            _this.set('isPending', false);\n          }\n        });\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/basic-dropdown-content\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown-content\"], function (_exports, _basicDropdownContent) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdownContent.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/basic-dropdown-trigger\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown-trigger\"], function (_exports, _basicDropdownTrigger) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdownTrigger.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/basic-dropdown\", [\"exports\", \"ember-basic-dropdown/components/basic-dropdown\"], function (_exports, _basicDropdown) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdown.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-check-status\", [\"exports\", \"jquery\"], function (_exports, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var CellCheckStatus = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellCheckStatus, _Ember$Component);\n\n    var _super = _createSuper(CellCheckStatus);\n\n    function CellCheckStatus() {\n      _classCallCheck(this, CellCheckStatus);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellCheckStatus, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellCheckStatus.prototype), \"init\", this).apply(this, arguments);\n\n        (0, _jquery.default)('a').click(function (e) {\n          e.stopPropagation();\n        });\n      }\n    }]);\n\n    return CellCheckStatus;\n  }(Ember.Component)) || _class;\n\n  _exports.default = CellCheckStatus;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-dropdown-effort\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellDropdownEffort = (_dec = Ember.computed, _dec2 = Ember.computed('row.funded'), _dec3 = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellDropdownEffort, _Ember$Component);\n\n    var _super = _createSuper(CellDropdownEffort);\n\n    function CellDropdownEffort() {\n      _classCallCheck(this, CellDropdownEffort);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellDropdownEffort, [{\n      key: \"optionChanged\",\n      value: function optionChanged(value) {\n        this.set('row.effort', parseInt(value));\n      }\n    }, {\n      key: \"options\",\n      get: function get() {\n        return ['0%', '5%', '10%', '15%', '20%', '25%', '30%', '35%', '40%', '45%', '50%', '55%', '60%', '65%', '70%', '75%', '80%', '85%', '90%', '95%', '100%'];\n      }\n    }, {\n      key: \"isHidden\",\n      get: function get() {\n        if (this.get('row.status') === 'funded') {\n          return false;\n        }\n\n        return this.get('row.funded') === 'No' || this.get('row.funded') === 'Don\\'t Know';\n      }\n    }]);\n\n    return CellDropdownEffort;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"options\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"options\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isHidden\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isHidden\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"optionChanged\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"optionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellDropdownEffort;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-dropdown-funded\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellDropdownFunded = (_dec = Ember.computed, _dec2 = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellDropdownFunded, _Ember$Component);\n\n    var _super = _createSuper(CellDropdownFunded);\n\n    function CellDropdownFunded() {\n      _classCallCheck(this, CellDropdownFunded);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellDropdownFunded, [{\n      key: \"optionChanged\",\n      value: function optionChanged(value) {\n        this.set('rawValue', value);\n\n        if (this.get('tableActions.onGrantChange')) {\n          this.get('tableActions.onGrantChange')(this.row);\n        }\n      }\n    }, {\n      key: \"options\",\n      get: function get() {\n        return ['No', 'Don\\'t Know', 'Yes'];\n      }\n    }]);\n\n    return CellDropdownFunded;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"options\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"options\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"optionChanged\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"optionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellDropdownFunded;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-dropdown-mega-grants\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellDropdownMegaGrants = (_dec = Ember.computed, _dec2 = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellDropdownMegaGrants, _Ember$Component);\n\n    var _super = _createSuper(CellDropdownMegaGrants);\n\n    function CellDropdownMegaGrants() {\n      _classCallCheck(this, CellDropdownMegaGrants);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellDropdownMegaGrants, [{\n      key: \"optionChanged\",\n      value: function optionChanged(value) {\n        this.set('rawValue', value === 'Yes');\n      }\n    }, {\n      key: \"options\",\n      get: function get() {\n        return ['No', 'Yes'];\n      }\n    }]);\n\n    return CellDropdownMegaGrants;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"options\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"options\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"optionChanged\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"optionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellDropdownMegaGrants;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-edit-institution\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellEditInstitution = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, _dec4 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellEditInstitution, _Ember$Component);\n\n    var _super = _createSuper(CellEditInstitution);\n\n    function CellEditInstitution() {\n      var _this;\n\n      _classCallCheck(this, CellEditInstitution);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingEditModal\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(CellEditInstitution, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellEditInstitution.prototype), \"init\", this).apply(this, arguments);\n\n        var value = this.value;\n\n        if (value) {\n          var team = this.store.peekRecord('team', value);\n          this.set('team', team);\n        }\n      }\n    }, {\n      key: \"toggleEditModal\",\n      value: function toggleEditModal() {\n        if (this.tableActions && this.tableActions.onEditInstitution) {\n          this.tableActions.onEditInstitution(this.team);\n        }\n      }\n    }, {\n      key: \"deleteAction\",\n      value: function deleteAction() {\n        if (this.get('tableActions.onDeleteInstitution')) {\n          this.get('tableActions.onDeleteInstitution')(this.team);\n        }\n      }\n    }, {\n      key: \"viewAction\",\n      value: function viewAction() {\n        if (this.get('tableActions.onViewInstitution')) {\n          this.get('tableActions.onViewInstitution')(this.team);\n        }\n      }\n    }]);\n\n    return CellEditInstitution;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"toggleEditModal\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleEditModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"deleteAction\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"deleteAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"viewAction\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"viewAction\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellEditInstitution;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-edit-membership\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellEditMembership = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, _dec4 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellEditMembership, _Ember$Component);\n\n    var _super = _createSuper(CellEditMembership);\n\n    function CellEditMembership() {\n      var _this;\n\n      _classCallCheck(this, CellEditMembership);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingEditeModal\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"successMessage\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"errors\", null);\n\n      return _this;\n    }\n\n    _createClass(CellEditMembership, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellEditMembership.prototype), \"init\", this).apply(this, arguments);\n\n        var value = this.value;\n\n        if (value) {\n          var membership = this.store.peekRecord('membership', value);\n          this.set('membership', membership);\n        }\n      }\n    }, {\n      key: \"toggleEditModal\",\n      value: function toggleEditModal() {\n        if (this.get('tableActions.onEditMembership')) {\n          this.get('tableActions.onEditMembership')(this.membership);\n        }\n      }\n    }, {\n      key: \"deleteAction\",\n      value: function deleteAction() {\n        if (this.get('tableActions.onDeleteUser')) {\n          this.get('tableActions.onDeleteUser')(this.membership);\n        }\n      }\n    }, {\n      key: \"resendInvitation\",\n      value: function resendInvitation() {\n        var _this2 = this;\n\n        this.set('successMessage', null);\n        this.set('errors', null);\n        var result = Ember.RSVP.defer();\n        var membership = this.membership;\n        this.get('tableActions.onResendInvitation')(membership, result);\n        result.promise.then(function () {\n          _this2.set('successMessage', 'Invitation sent!');\n        }).catch(function (errors) {\n          _this2.set('errors', errors);\n        });\n      }\n    }]);\n\n    return CellEditMembership;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"toggleEditModal\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleEditModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"deleteAction\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"deleteAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"resendInvitation\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"resendInvitation\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellEditMembership;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-edit-user\", [\"exports\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellEditUser = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, _dec4 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellEditUser, _Ember$Component);\n\n    var _super = _createSuper(CellEditUser);\n\n    function CellEditUser() {\n      var _this2;\n\n      _classCallCheck(this, CellEditUser);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this2 = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this2), \"isShowingDeleteModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this2), \"isShowingEditeModal\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"store\", _descriptor, _assertThisInitialized(_this2));\n\n      return _this2;\n    }\n\n    _createClass(CellEditUser, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellEditUser.prototype), \"init\", this).apply(this, arguments);\n\n        var value = this.value;\n\n        if (value) {\n          var access = this.store.peekRecord('user-team-access', value);\n          this.set('access', access);\n        }\n      }\n    }, {\n      key: \"toggleDeleteModal\",\n      value: function toggleDeleteModal() {\n        if (this.get('tableActions.onDeleteUser')) {\n          this.get('tableActions.onDeleteUser')(this.access);\n        }\n      }\n    }, {\n      key: \"toggleEditModal\",\n      value: function toggleEditModal() {\n        if (this.get('tableActions.onEditUser')) {\n          this.get('tableActions.onEditUser')(this.access);\n        }\n      }\n    }, {\n      key: \"saveAction\",\n      value: function saveAction(accessModel, newAccess) {\n        var department = parseInt(newAccess.get('department'));\n\n        if (department < 1) {\n          department = null;\n        }\n\n        var _this = this; // Lookup the user\n\n\n        var user = this.store.peekRecord('user', accessModel.get('user.id')); // Set all the updated attributes on the user\n\n        user.set('email', newAccess.get('email')); // Save the user\n\n        user.save().then(function () {\n          _this.set('isShowingEditModal', false);\n        }).catch(function (response) {\n          _this.set('errors', _errors.default.mapResponseErrors(response));\n        }); // Lookup the membership\n\n        var access = this.store.peekRecord('user-team-access', accessModel.get('id')); // Set all the updated attributes on the membership\n\n        access.set('position', newAccess.get('position'));\n        access.set('role', newAccess.get('role').toLowerCase());\n        access.set('departmentId', department); // Save the membership\n\n        access.save().then(function () {\n          _this.set('isShowingEditModal', false);\n        }).catch(function (response) {\n          _this.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }]);\n\n    return CellEditUser;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"toggleDeleteModal\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleDeleteModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleEditModal\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleEditModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveAction\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveAction\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellEditUser;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-input-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellInputPercentage = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellInputPercentage, _Ember$Component);\n\n    var _super = _createSuper(CellInputPercentage);\n\n    function CellInputPercentage() {\n      _classCallCheck(this, CellInputPercentage);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellInputPercentage, [{\n      key: \"onPercentageChanged\",\n      value: function onPercentageChanged(value) {\n        this.set('rawValue', parseInt(value));\n      }\n    }]);\n\n    return CellInputPercentage;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"onPercentageChanged\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"onPercentageChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellInputPercentage;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-label-column\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var CellLabelColumn = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellLabelColumn, _Ember$Component);\n\n    var _super = _createSuper(CellLabelColumn);\n\n    function CellLabelColumn() {\n      _classCallCheck(this, CellLabelColumn);\n\n      return _super.apply(this, arguments);\n    }\n\n    return CellLabelColumn;\n  }(Ember.Component)) || _class;\n\n  _exports.default = CellLabelColumn;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-link-department\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellLinkDepartment = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellLinkDepartment, _Ember$Component);\n\n    var _super = _createSuper(CellLinkDepartment);\n\n    function CellLinkDepartment() {\n      _classCallCheck(this, CellLinkDepartment);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellLinkDepartment, [{\n      key: \"linkClicked\",\n      value: function linkClicked() {\n        if (this.get('tableActions.onDepartmentClicked')) {\n          this.get('tableActions.onDepartmentClicked')(this.value);\n        }\n      }\n    }]);\n\n    return CellLinkDepartment;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"linkClicked\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"linkClicked\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellLinkDepartment;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-link-is-new\", [\"exports\", \"@ember-decorators/component\", \"jquery\"], function (_exports, _component, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellLinkIsNew = (_dec = (0, _component.classNames)('cell-link-is-new'), classic(_class = _dec(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellLinkIsNew, _Ember$Component);\n\n    var _super = _createSuper(CellLinkIsNew);\n\n    function CellLinkIsNew() {\n      _classCallCheck(this, CellLinkIsNew);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellLinkIsNew, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellLinkIsNew.prototype), \"init\", this).apply(this, arguments);\n\n        (0, _jquery.default)('a').click(function (e) {\n          e.stopPropagation();\n        });\n      }\n    }]);\n\n    return CellLinkIsNew;\n  }(Ember.Component)) || _class) || _class);\n  _exports.default = CellLinkIsNew;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-link\", [\"exports\", \"jquery\"], function (_exports, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var CellLink = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellLink, _Ember$Component);\n\n    var _super = _createSuper(CellLink);\n\n    function CellLink() {\n      _classCallCheck(this, CellLink);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellLink, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellLink.prototype), \"init\", this).apply(this, arguments);\n\n        (0, _jquery.default)('a').click(function (e) {\n          e.stopPropagation();\n        });\n      }\n    }]);\n\n    return CellLink;\n  }(Ember.Component)) || _class;\n\n  _exports.default = CellLink;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-mega-grant-variance\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellMegaGrantVariance = (_dec = (0, _component.classNames)('cell-mega-grant-variance'), _dec2 = Ember.computed('value.variance'), _dec3 = Ember.computed('value.variance'), _dec4 = Ember.computed('value.variance'), classic(_class = _dec(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellMegaGrantVariance, _Ember$Component);\n\n    var _super = _createSuper(CellMegaGrantVariance);\n\n    function CellMegaGrantVariance() {\n      _classCallCheck(this, CellMegaGrantVariance);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellMegaGrantVariance, [{\n      key: \"isNegative\",\n      get: function get() {\n        return this.get('value.variance') < 0;\n      }\n    }, {\n      key: \"isPositive\",\n      get: function get() {\n        return this.get('value.variance') > 0;\n      }\n    }, {\n      key: \"showVariance\",\n      get: function get() {\n        return this.get('value.variance');\n      }\n    }]);\n\n    return CellMegaGrantVariance;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isNegative\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNegative\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isPositive\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"isPositive\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showVariance\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"showVariance\"), _class2.prototype)), _class2)) || _class) || _class);\n  _exports.default = CellMegaGrantVariance;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-money-one-decimal\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellMoneyOneDecimal = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellMoneyOneDecimal, _Ember$Component);\n\n    var _super = _createSuper(CellMoneyOneDecimal);\n\n    function CellMoneyOneDecimal() {\n      _classCallCheck(this, CellMoneyOneDecimal);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellMoneyOneDecimal, [{\n      key: \"isNegative\",\n      get: function get() {\n        return this.value < 0;\n      }\n    }, {\n      key: \"showValue\",\n      get: function get() {\n        var value = this.value;\n        return value !== undefined && value !== null;\n      }\n    }]);\n\n    return CellMoneyOneDecimal;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isNegative\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNegative\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showValue\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"showValue\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellMoneyOneDecimal;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-money\", [\"exports\", \"accounting/format-money\", \"b3i-analytics-web-app/utils/format-percentage\"], function (_exports, _formatMoney, _formatPercentage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellMoney = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), _dec3 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellMoney, _Ember$Component);\n\n    var _super = _createSuper(CellMoney);\n\n    function CellMoney() {\n      _classCallCheck(this, CellMoney);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellMoney, [{\n      key: \"isNegative\",\n      get: function get() {\n        return this.value < 0;\n      }\n    }, {\n      key: \"formattedValue\",\n      get: function get() {\n        if (isNaN(this.value)) {\n          return this.value;\n        } // Special case where one percentage row is needed in a table of dollars\n\n\n        if (this.row && this.row.content && this.row.content.is_percentage) {\n          return \"\".concat((0, _formatPercentage.default)(this.value, 0), \"%\");\n        }\n\n        return (0, _formatMoney.default)(this.value);\n      }\n    }, {\n      key: \"showValue\",\n      get: function get() {\n        return this.value !== undefined && this.value;\n      }\n    }]);\n\n    return CellMoney;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isNegative\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNegative\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"formattedValue\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"formattedValue\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showValue\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"showValue\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellMoney;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-non-escape\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var CellNonEscape = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellNonEscape, _Ember$Component);\n\n    var _super = _createSuper(CellNonEscape);\n\n    function CellNonEscape() {\n      _classCallCheck(this, CellNonEscape);\n\n      return _super.apply(this, arguments);\n    }\n\n    return CellNonEscape;\n  }(Ember.Component)) || _class;\n\n  _exports.default = CellNonEscape;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-percentage-non-bold\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellPercentageNonBold = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellPercentageNonBold, _Ember$Component);\n\n    var _super = _createSuper(CellPercentageNonBold);\n\n    function CellPercentageNonBold() {\n      _classCallCheck(this, CellPercentageNonBold);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellPercentageNonBold, [{\n      key: \"formattedValue\",\n      get: function get() {\n        var value = this.value;\n\n        if (isNaN(value) || !value || value === Infinity) {\n          return '-';\n        }\n\n        return \"\".concat(value, \"%\");\n      }\n    }, {\n      key: \"isValid\",\n      get: function get() {\n        return !isNaN(this.value);\n      }\n    }]);\n\n    return CellPercentageNonBold;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"formattedValue\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"formattedValue\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isValid\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isValid\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellPercentageNonBold;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellPercentage = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellPercentage, _Ember$Component);\n\n    var _super = _createSuper(CellPercentage);\n\n    function CellPercentage() {\n      _classCallCheck(this, CellPercentage);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellPercentage, [{\n      key: \"isBold\",\n      get: function get() {\n        return this.value > 0;\n      }\n    }, {\n      key: \"isValid\",\n      get: function get() {\n        return !isNaN(this.value);\n      }\n    }]);\n\n    return CellPercentage;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isBold\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isBold\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isValid\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isValid\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellPercentage;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-title-is-new\", [\"exports\", \"b3i-analytics-web-app/utils/title-case\"], function (_exports, _titleCase) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellTitleIsNew = (_dec = Ember.computed('value.title'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellTitleIsNew, _Ember$Component);\n\n    var _super = _createSuper(CellTitleIsNew);\n\n    function CellTitleIsNew() {\n      _classCallCheck(this, CellTitleIsNew);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellTitleIsNew, [{\n      key: \"formattedTitle\",\n      get: function get() {\n        if (!this.value || !this.value.title) {\n          return null;\n        }\n\n        return (0, _titleCase.default)(this.value.title);\n      }\n    }]);\n\n    return CellTitleIsNew;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"formattedTitle\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"formattedTitle\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellTitleIsNew;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellEditUser = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellEditUser, _Ember$Component);\n\n    var _super = _createSuper(CellEditUser);\n\n    function CellEditUser() {\n      var _this;\n\n      _classCallCheck(this, CellEditUser);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingEditModal\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(CellEditUser, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CellEditUser.prototype), \"init\", this).apply(this, arguments);\n\n        var value = this.value;\n\n        if (value) {\n          var user = this.store.peekRecord('user', value);\n          this.set('user', user);\n        }\n      } // @action\n      // resendInvitation() {\n      //   if (this.tableActions && this.tableActions.onResendInvitation) {\n      //     this.tableActions.onResendInvitation(this.user)\n      //   }\n      // }\n\n    }, {\n      key: \"deleteAction\",\n      value: function deleteAction() {\n        if (this.tableActions && this.tableActions.onDeleteUser) {\n          this.tableActions.onDeleteUser(this.user);\n        }\n      }\n    }, {\n      key: \"viewAction\",\n      value: function viewAction() {\n        if (this.tableActions && this.tableActions.onViewUser) {\n          this.tableActions.onViewUser(this.user);\n        }\n      }\n    }]);\n\n    return CellEditUser;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"deleteAction\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"deleteAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"viewAction\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"viewAction\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellEditUser;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-variance-money\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellVarianceMoney = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), _dec3 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellVarianceMoney, _Ember$Component);\n\n    var _super = _createSuper(CellVarianceMoney);\n\n    function CellVarianceMoney() {\n      _classCallCheck(this, CellVarianceMoney);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellVarianceMoney, [{\n      key: \"isNegative\",\n      get: function get() {\n        return this.value < 0;\n      }\n    }, {\n      key: \"isPositive\",\n      get: function get() {\n        return this.value > 0;\n      }\n    }, {\n      key: \"showValue\",\n      get: function get() {\n        return this.value !== undefined && this.value !== null;\n      }\n    }]);\n\n    return CellVarianceMoney;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isNegative\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNegative\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isPositive\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isPositive\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showValue\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"showValue\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellVarianceMoney;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/cell-variance-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CellVariancePercentage = (_dec = Ember.computed('value'), _dec2 = Ember.computed('value'), _dec3 = Ember.computed('value'), _dec4 = Ember.computed('value'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CellVariancePercentage, _Ember$Component);\n\n    var _super = _createSuper(CellVariancePercentage);\n\n    function CellVariancePercentage() {\n      _classCallCheck(this, CellVariancePercentage);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CellVariancePercentage, [{\n      key: \"isNegative\",\n      get: function get() {\n        var value = parseFloat(this.value);\n        return value < 0;\n      }\n    }, {\n      key: \"isPositive\",\n      get: function get() {\n        var value = parseFloat(this.value);\n        return value > 0;\n      }\n    }, {\n      key: \"isValid\",\n      get: function get() {\n        return !isNaN(this.value);\n      }\n    }, {\n      key: \"showValue\",\n      get: function get() {\n        return this.value !== undefined && this.value !== null;\n      }\n    }]);\n\n    return CellVariancePercentage;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"isNegative\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNegative\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isPositive\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"isPositive\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isValid\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"isValid\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showValue\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"showValue\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CellVariancePercentage;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/change-plus-minus\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ChangePlusMinus = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ChangePlusMinus, _Ember$Component);\n\n    var _super = _createSuper(ChangePlusMinus);\n\n    function ChangePlusMinus() {\n      _classCallCheck(this, ChangePlusMinus);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ChangePlusMinus;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ChangePlusMinus;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/chart-loader\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ChartLoader = (_dec = (0, _component.classNames)('chart-loader'), classic(_class = _dec(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ChartLoader, _Ember$Component);\n\n    var _super = _createSuper(ChartLoader);\n\n    function ChartLoader() {\n      _classCallCheck(this, ChartLoader);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ChartLoader;\n  }(Ember.Component)) || _class) || _class);\n  _exports.default = ChartLoader;\n});","define(\"b3i-analytics-web-app/components/click-outside\", [\"exports\", \"ember-click-outside/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _component.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/column-at-risk\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ColumnAtRisk = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ColumnAtRisk, _Ember$Component);\n\n    var _super = _createSuper(ColumnAtRisk);\n\n    function ColumnAtRisk() {\n      _classCallCheck(this, ColumnAtRisk);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ColumnAtRisk;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ColumnAtRisk;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/column-help-icon\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ColumnHelpIcon = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ColumnHelpIcon, _Ember$Component);\n\n    var _super = _createSuper(ColumnHelpIcon);\n\n    function ColumnHelpIcon() {\n      _classCallCheck(this, ColumnHelpIcon);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ColumnHelpIcon;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ColumnHelpIcon;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/commentary-drawer\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CommentaryDrawer = (_dec = (0, _component.classNameBindings)('showList'), _dec2 = Ember._action, classic(_class = _dec(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CommentaryDrawer, _Ember$Component);\n\n    var _super = _createSuper(CommentaryDrawer);\n\n    function CommentaryDrawer() {\n      var _this;\n\n      _classCallCheck(this, CommentaryDrawer);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"showList\", false);\n\n      return _this;\n    }\n\n    _createClass(CommentaryDrawer, [{\n      key: \"toggleShowList\",\n      value: function toggleShowList() {\n        this.toggleProperty('showList');\n      }\n    }]);\n\n    return CommentaryDrawer;\n  }(Ember.Component), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"toggleShowList\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleShowList\"), _class2.prototype)), _class2)) || _class) || _class);\n  _exports.default = CommentaryDrawer;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/commentary-list\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CommentaryList = (_dec = (0, _component.classNames)('commentary-list'), classic(_class = _dec(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(CommentaryList, _Ember$Component);\n\n    var _super = _createSuper(CommentaryList);\n\n    function CommentaryList() {\n      _classCallCheck(this, CommentaryList);\n\n      return _super.apply(this, arguments);\n    }\n\n    return CommentaryList;\n  }(Ember.Component)) || _class) || _class);\n  _exports.default = CommentaryList;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/comparative-faculty-summary-card\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ComparativeFacultySummaryCard = (_dec = Ember.inject.service, _dec2 = Ember.computed('groupType'), _dec3 = Ember.computed('isLoading', 'selectedComparisonGroup', 'groupType'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ComparativeFacultySummaryCard, _Ember$Component);\n\n    var _super = _createSuper(ComparativeFacultySummaryCard);\n\n    function ComparativeFacultySummaryCard() {\n      var _this;\n\n      _classCallCheck(this, ComparativeFacultySummaryCard);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ComparativeFacultySummaryCard, [{\n      key: \"borderClassName\",\n      get: function get() {\n        var groupType = this.groupType;\n\n        if (groupType === 'Selected') {\n          return 'border-left-blue';\n        } else if (groupType === 'Comparison') {\n          return 'border-left-grey';\n        }\n\n        return '';\n      }\n    }, {\n      key: \"disableControls\",\n      get: function get() {\n        if (this.isLoading) {\n          return true;\n        }\n\n        return this.groupType === 'Comparison' && this.selectedComparisonGroup === 'External';\n      }\n    }]);\n\n    return ComparativeFacultySummaryCard;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"borderClassName\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"borderClassName\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"disableControls\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"disableControls\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ComparativeFacultySummaryCard;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/data-import-message\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DataImportMessage = (_dec = Ember.computed('meta'), _dec2 = Ember.computed('meta'), _dec3 = Ember.computed('meta.errors'), _dec4 = Ember.computed('ignoredRowsString'), _dec5 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(DataImportMessage, _Ember$Component);\n\n    var _super = _createSuper(DataImportMessage);\n\n    function DataImportMessage() {\n      var _this;\n\n      _classCallCheck(this, DataImportMessage);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"showMore\", false);\n\n      return _this;\n    }\n\n    _createClass(DataImportMessage, [{\n      key: \"toggleShowMore\",\n      value: function toggleShowMore() {\n        this.toggleProperty('showMore');\n      }\n    }, {\n      key: \"ignoredRowsString\",\n      get: function get() {\n        var ignoredRows = this.get('meta.rows_ignored');\n\n        if (ignoredRows) {\n          return ignoredRows.toString();\n        }\n\n        return null;\n      }\n    }, {\n      key: \"allRowsImported\",\n      get: function get() {\n        var ignoredRows = this.get('meta.rows_ignored');\n        return ignoredRows.length <= 0;\n      }\n    }, {\n      key: \"invalidValues\",\n      get: function get() {\n        var invalidValues = this.get('meta.errors');\n        var invalidValuesArray = [];\n        Object.keys(invalidValues).forEach(function (key) {\n          var error = {\n            error: key,\n            rows: invalidValues[key]\n          };\n          invalidValuesArray.pushObject(error);\n        });\n        return invalidValuesArray;\n      }\n    }, {\n      key: \"showShowMore\",\n      get: function get() {\n        var ignoredRows = this.ignoredRowsString;\n\n        if (ignoredRows && ignoredRows.length > 93) {\n          return true;\n        } else {\n          return false;\n        }\n      }\n    }]);\n\n    return DataImportMessage;\n  }(Ember.Component), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"ignoredRowsString\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"ignoredRowsString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"allRowsImported\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"allRowsImported\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"invalidValues\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"invalidValues\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showShowMore\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"showShowMore\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleShowMore\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleShowMore\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DataImportMessage;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/departments-summary-cards\", [\"exports\", \"@ember-decorators/object\", \"accounting/format-number\", \"moment\", \"b3i-analytics-web-app/utils/format-percentage\"], function (_exports, _object, _formatNumber, _moment, _formatPercentage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DepartmentsSummaryCards = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.computed('extrapolationFactor', 'max', 'min'), _dec4 = (0, _object.observes)('extrapolationFactor'), _dec5 = Ember.computed('extrapolationFactor'), _dec6 = Ember.computed('uploadFiscalMonth', 'extrapolationFactor'), _dec7 = Ember.computed('currentUser.team.cutoffDateForPendingProposals', 'year.{fiscalYear,fiscalStartMonth}'), _dec8 = Ember.computed('pendingCurrentYearIndirects', 'potentialDeclineDirects'), _dec9 = Ember.computed('pendingCurrentYearIndirects', 'potentialDeclineIndirects'), _dec10 = Ember.computed('pendingCurrentYearDirects', 'model.endingGrantsDirectsNoMega'), _dec11 = Ember.computed('pendingCurrentYearIndirects', 'model.endingGrantsIndirectsNoMega'), _dec12 = Ember.computed('model.ytdActualsDirects', 'uploadFiscalMonth', 'extrapolationFactor'), _dec13 = Ember.computed('model.ytdActualIndirects', 'uploadFiscalMonth', 'extrapolationFactor'), _dec14 = Ember.computed('currentUser.asOfDate'), _dec15 = Ember.computed('model.{ptsCurrentYearDirects,actualsOneYearAgoDirects}'), _dec16 = Ember.computed('model.{ptsCurrentYearIndirects,actualsOneYearAgoIndirects}'), _dec17 = Ember.computed('includeMega', 'model.{pendingCurrentYearDirects,pendingCurrentYearDirectsNoMega}'), _dec18 = Ember.computed('includeMega', 'model.{pendingCurrentYearIndirects,pendingCurrentYearIndirectsNoMega}'), _dec19 = Ember.computed('includeMega', 'model.{pendingCurrentYearCount,pendingCurrentYearCountNoMega}'), _dec20 = Ember.computed('model.{actualsOneYearAgoYtd,actualsTwoYearsAgoYtd,actualsThreeYearsAgoYtd,actualsFourYearsAgoYtd,actualsFiveYearsAgoYtd}', 'uploadFiscalMonth'), _dec21 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(DepartmentsSummaryCards, _Ember$Component);\n\n    var _super = _createSuper(DepartmentsSummaryCards);\n\n    function DepartmentsSummaryCards() {\n      var _this;\n\n      _classCallCheck(this, DepartmentsSummaryCards);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor2, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"extrapolationFactor\", 0);\n\n      _defineProperty(_assertThisInitialized(_this), \"max\", .1);\n\n      _defineProperty(_assertThisInitialized(_this), \"step\", 0.001);\n\n      _defineProperty(_assertThisInitialized(_this), \"min\", -.1);\n\n      return _this;\n    }\n\n    _createClass(DepartmentsSummaryCards, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(DepartmentsSummaryCards.prototype), \"init\", this).apply(this, arguments);\n\n        var savedExtrapolationFactor = window.sessionStorage.getItem('extrapolationFactor');\n\n        if (savedExtrapolationFactor) {\n          var factor = parseFloat(savedExtrapolationFactor);\n\n          if (factor < -0.1 || factor > 0.1) {\n            factor = 0;\n          }\n\n          this.set('extrapolationFactor', factor);\n        }\n      }\n    }, {\n      key: \"extrapolationFactorObserver\",\n      value: function extrapolationFactorObserver() {\n        window.sessionStorage.setItem('extrapolationFactor', this.extrapolationFactor.toString());\n      }\n    }, {\n      key: \"projectedYearEnd\",\n      value: function projectedYearEnd(amount, fiscalMonth) {\n        //Dont apply the 2% discount if its the last month of the year\n        if (fiscalMonth === 12) {\n          return amount;\n        }\n\n        var extrapolationFactor = parseFloat(this.extrapolationFactor);\n        return amount / (fiscalMonth / 12 + extrapolationFactor);\n      }\n    }, {\n      key: \"generateExtrapolationDifferenceForYear\",\n      value: function generateExtrapolationDifferenceForYear(ytd, total, month) {\n        var cumulative = ytd / total;\n        var straightLine = 1 / 12 * month;\n        return cumulative - straightLine;\n      }\n    }, {\n      key: \"coverageRatioCalculation\",\n      value: function coverageRatioCalculation(pendingCurrentYear, potentialDecline) {\n        //Return 0 if there is no decline\n        if (potentialDecline > 0) {\n          return '-';\n        }\n\n        return (0, _formatNumber.default)(-(pendingCurrentYear / potentialDecline), 0);\n      }\n    }, {\n      key: \"whatsThisClicked\",\n      value: function whatsThisClicked() {\n        if (this.extrapolationHelpModalAction) {\n          this.extrapolationHelpModalAction();\n        }\n      }\n    }, {\n      key: \"rangePercent\",\n      get: function get() {\n        var value = parseFloat(this.extrapolationFactor);\n        var max = this.max;\n        var min = this.min;\n        var scaleShift = 0 - min;\n        return Math.floor((value + scaleShift) / (max + scaleShift) * 100);\n      }\n    }, {\n      key: \"extrapolationFactorDisplay\",\n      get: function get() {\n        return \"\".concat((0, _formatPercentage.default)(this.extrapolationFactor, 1), \"%\");\n      }\n    }, {\n      key: \"resultingExtrapolationPercentage\",\n      get: function get() {\n        var uploadFiscalMonth = this.uploadFiscalMonth;\n        var extrapolationFactor = parseFloat(this.extrapolationFactor);\n        var percentage = uploadFiscalMonth / 12 + extrapolationFactor;\n        return \"\".concat((0, _formatPercentage.default)(percentage, 2), \"%\");\n      }\n    }, {\n      key: \"betweenDatesLabel\",\n      get: function get() {\n        var firstDate = (0, _moment.default)(this.get('currentUser.team.cutoffDateForPendingProposals')).add(1, 'days');\n        var secondDate = (0, _moment.default)().set({\n          'year': this.get('year.fiscalYear'),\n          'month': this.get('year.startFiscalMonth') - 1,\n          'date': 1\n        }).subtract(1, 'days');\n        return \"between \".concat(firstDate.format('MM/DD/YYYY'), \" and \").concat(secondDate.format('MM/DD/YYYY'));\n      }\n    }, {\n      key: \"directsCoverageRatio\",\n      get: function get() {\n        return this.coverageRatioCalculation(this.pendingCurrentYearDirects, this.potentialDeclineDirects);\n      }\n    }, {\n      key: \"indirectsCoverageRatio\",\n      get: function get() {\n        return this.coverageRatioCalculation(this.pendingCurrentYearIndirects, this.potentialDeclineIndirects);\n      }\n    }, {\n      key: \"directsPendingToEndingRatio\",\n      get: function get() {\n        if (this.get('model.endingGrantsDirectsNoMega') === 0) {\n          return 0;\n        }\n\n        return this.pendingCurrentYearDirects / this.get('model.endingGrantsDirectsNoMega');\n      }\n    }, {\n      key: \"indirectsPendingToEndingRatio\",\n      get: function get() {\n        if (this.get('model.endingGrantsIndirects') === 0) {\n          return 0;\n        }\n\n        return this.pendingCurrentYearIndirects / this.get('model.endingGrantsIndirectsNoMega');\n      }\n    }, {\n      key: \"projectedYearEndDirects\",\n      get: function get() {\n        var uploadFiscalMonth = this.uploadFiscalMonth;\n\n        if (!uploadFiscalMonth) {\n          return null;\n        }\n\n        return this.projectedYearEnd(this.get('model.ytdActualsDirects'), uploadFiscalMonth);\n      }\n    }, {\n      key: \"projectedYearEndIndirects\",\n      get: function get() {\n        var uploadFiscalMonth = this.uploadFiscalMonth;\n\n        if (!uploadFiscalMonth) {\n          return null;\n        }\n\n        return this.projectedYearEnd(this.get('model.ytdActualsIndirects'), uploadFiscalMonth);\n      }\n    }, {\n      key: \"uploadFiscalMonth\",\n      get: function get() {\n        var lastImported = this.get('currentUser.asOfDate');\n\n        if (!lastImported) {\n          return null;\n        }\n\n        var month = parseInt((0, _moment.default)(lastImported).format('M'));\n        return this.year.calculateFiscalMonth(this.get('year.startFiscalMonth'), month);\n      }\n    }, {\n      key: \"potentialDeclineDirects\",\n      get: function get() {\n        return this.get('model.ptsCurrentYearDirects') - this.get('model.actualsOneYearAgoDirects');\n      }\n    }, {\n      key: \"potentialDeclineIndirects\",\n      get: function get() {\n        return this.get('model.ptsCurrentYearIndirects') - this.get('model.actualsOneYearAgoIndirects');\n      }\n    }, {\n      key: \"pendingCurrentYearDirects\",\n      get: function get() {\n        return this.includeMega ? this.get('model.pendingCurrentYearDirects') : this.get('model.pendingCurrentYearDirectsNoMega');\n      }\n    }, {\n      key: \"pendingCurrentYearIndirects\",\n      get: function get() {\n        return this.includeMega ? this.get('model.pendingCurrentYearIndirects') : this.get('model.pendingCurrentYearIndirectsNoMega');\n      }\n    }, {\n      key: \"pendingCurrentYearCount\",\n      get: function get() {\n        return this.includeMega ? this.get('model.pendingCurrentYearCount') : this.get('model.pendingCurrentYearTotalNoMega');\n      }\n    }, {\n      key: \"extrapolationData\",\n      get: function get() {\n        var extrapolationData = {};\n        var month = this.uploadFiscalMonth;\n        var sum = 0;\n        var count = 0;\n\n        if (this.get('model.actualsOneYearAgoYtd')) {\n          var data = this.generateExtrapolationDifferenceForYear(this.get('model.actualsOneYearAgoYtd'), this.get('model.actualsOneYearAgoTotal'), month);\n          sum += data;\n          count += 1;\n          extrapolationData[this.get('year.lastFiscalYear')] = \"\".concat((0, _formatPercentage.default)(data, 1), \"%\");\n        }\n\n        if (this.get('model.actualsTwoYearsAgoYtd')) {\n          var _data = this.generateExtrapolationDifferenceForYear(this.get('model.actualsTwoYearsAgoYtd'), this.get('model.actualsTwoYearsAgoTotal'), month);\n\n          sum += _data;\n          count += 1;\n          extrapolationData[this.get('year.fiscalYearTwoYearsAgo')] = \"\".concat((0, _formatPercentage.default)(_data, 1), \"%\");\n        }\n\n        if (this.get('model.actualsThreeYearsAgoYtd')) {\n          var _data2 = this.generateExtrapolationDifferenceForYear(this.get('model.actualsThreeYearsAgoYtd'), this.get('model.actualsThreeYearsAgoTotal'), month);\n\n          sum += _data2;\n          count += 1;\n          extrapolationData[this.get('year.fiscalYearThreeYearsAgo')] = \"\".concat((0, _formatPercentage.default)(_data2, 1), \"%\");\n        }\n\n        if (this.get('model.actualsFourYearsAgoYtd')) {\n          var _data3 = this.generateExtrapolationDifferenceForYear(this.get('model.actualsFourYearsAgoYtd'), this.get('model.actualsFourYearsAgoTotal'), month);\n\n          sum += _data3;\n          count += 1;\n          extrapolationData[this.get('year.fiscalYearFourYearsAgo')] = \"\".concat((0, _formatPercentage.default)(_data3, 1), \"%\");\n        }\n\n        if (this.get('model.actualsFiveYearsAgoYtd')) {\n          var _data4 = this.generateExtrapolationDifferenceForYear(this.get('model.actualsFiveYearsAgoYtd'), this.get('model.actualsFiveYearsAgoTotal'), month);\n\n          sum += _data4;\n          count += 1;\n          extrapolationData[this.get('year.fiscalYearFiveYearsAgo')] = \"\".concat((0, _formatPercentage.default)(_data4, 1), \"%\");\n        }\n\n        if (count) {\n          extrapolationData['Average'] = \"\".concat((0, _formatPercentage.default)(sum / count, 1), \"%\");\n        }\n\n        return extrapolationData;\n      }\n    }]);\n\n    return DepartmentsSummaryCards;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"rangePercent\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"rangePercent\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"extrapolationFactorObserver\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"extrapolationFactorObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"extrapolationFactorDisplay\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"extrapolationFactorDisplay\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"resultingExtrapolationPercentage\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"resultingExtrapolationPercentage\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"betweenDatesLabel\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"betweenDatesLabel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"directsCoverageRatio\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"directsCoverageRatio\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"indirectsCoverageRatio\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"indirectsCoverageRatio\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"directsPendingToEndingRatio\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"directsPendingToEndingRatio\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"indirectsPendingToEndingRatio\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"indirectsPendingToEndingRatio\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"projectedYearEndDirects\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"projectedYearEndDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"projectedYearEndIndirects\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"projectedYearEndIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"uploadFiscalMonth\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"uploadFiscalMonth\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"potentialDeclineDirects\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"potentialDeclineDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"potentialDeclineIndirects\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"potentialDeclineIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirects\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"pendingCurrentYearDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirects\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"pendingCurrentYearIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCount\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"pendingCurrentYearCount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"extrapolationData\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"extrapolationData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"whatsThisClicked\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"whatsThisClicked\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DepartmentsSummaryCards;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/dropdown-wrapper-multi-select\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var DropdownWrapperMultiSelect = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(DropdownWrapperMultiSelect, _Ember$Component);\n\n    var _super = _createSuper(DropdownWrapperMultiSelect);\n\n    function DropdownWrapperMultiSelect() {\n      _classCallCheck(this, DropdownWrapperMultiSelect);\n\n      return _super.apply(this, arguments);\n    }\n\n    return DropdownWrapperMultiSelect;\n  }(Ember.Component)) || _class;\n\n  _exports.default = DropdownWrapperMultiSelect;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/dropdown-wrapper-with-value\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var DropdownWrapperWithValue = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(DropdownWrapperWithValue, _Ember$Component);\n\n    var _super = _createSuper(DropdownWrapperWithValue);\n\n    function DropdownWrapperWithValue() {\n      _classCallCheck(this, DropdownWrapperWithValue);\n\n      return _super.apply(this, arguments);\n    }\n\n    return DropdownWrapperWithValue;\n  }(Ember.Component)) || _class;\n\n  _exports.default = DropdownWrapperWithValue;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/dropdown-wrapper\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DropdownWrapper = (_dec = (0, _component.classNameBindings)('stacked', 'fullWidth:full-width'), classic(_class = _dec(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(DropdownWrapper, _Ember$Component);\n\n    var _super = _createSuper(DropdownWrapper);\n\n    function DropdownWrapper() {\n      _classCallCheck(this, DropdownWrapper);\n\n      return _super.apply(this, arguments);\n    }\n\n    return DropdownWrapper;\n  }(Ember.Component)) || _class) || _class);\n  _exports.default = DropdownWrapper;\n});","define(\"b3i-analytics-web-app/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 = void 0;\n  var _default = _emberChart.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/ember-popover\", [\"exports\", \"ember-tooltips/components/ember-popover\"], function (_exports, _emberPopover) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberPopover.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/ember-scrollable\", [\"exports\", \"ember-scrollable/components/ember-scrollable\"], function (_exports, _emberScrollable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberScrollable.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/ember-scrollbar\", [\"exports\", \"ember-scrollable/components/ember-scrollbar\"], function (_exports, _emberScrollbar) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberScrollbar.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/ember-tooltip\", [\"exports\", \"ember-tooltips/components/ember-tooltip\"], function (_exports, _emberTooltip) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberTooltip.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/ember-wormhole\", [\"exports\", \"ember-wormhole/components/ember-wormhole\"], function (_exports, _emberWormhole) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberWormhole.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/error-message\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ErrorMessage = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ErrorMessage, _Ember$Component);\n\n    var _super = _createSuper(ErrorMessage);\n\n    function ErrorMessage() {\n      _classCallCheck(this, ErrorMessage);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ErrorMessage;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ErrorMessage;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/forecast-modifier-controls-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ForecastModifierControlsRow = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ForecastModifierControlsRow, _Ember$Component);\n\n    var _super = _createSuper(ForecastModifierControlsRow);\n\n    function ForecastModifierControlsRow() {\n      _classCallCheck(this, ForecastModifierControlsRow);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ForecastModifierControlsRow;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ForecastModifierControlsRow;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/form-add-edit-institution-access\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RowInstitutionAccessComponent = (_dec = Ember.inject.service, _dec2 = Ember.computed('departments', 'disableDepartmentSelect'), _dec3 = Ember.computed('sectors', 'disableSectorSelect'), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(RowInstitutionAccessComponent, _Ember$Component);\n\n    var _super = _createSuper(RowInstitutionAccessComponent);\n\n    function RowInstitutionAccessComponent() {\n      var _this;\n\n      _classCallCheck(this, RowInstitutionAccessComponent);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(RowInstitutionAccessComponent, [{\n      key: \"init\",\n      value: function init() {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(RowInstitutionAccessComponent.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedSectors', []);\n        this.set('roleOptions', ['Admin', 'Executive', 'Sector', 'Department']);\n        this.set('disableDepartmentSelect', true);\n        this.set('disableSectorSelect', true);\n\n        if (this.isNew) {\n          this.ajax.request(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/teams/\")).then(function (response) {\n            _this2.store.pushPayload('team', response);\n\n            var teamOptions = response.data.map(function (team) {\n              return {\n                value: team.id,\n                display: team.attributes.name\n              };\n            }).sort(function (a, b) {\n              return a.display > b.display;\n            });\n\n            _this2.set('teamOptions', teamOptions);\n\n            _this2.teamOptionChanged(teamOptions[0][\"value\"]);\n          });\n        } else {\n          if (this.model.role === 'department') {\n            this.set('disableDepartmentSelect', false);\n            this.set('disableSectorSelect', true);\n          } else if (this.model.role === 'sector') {\n            this.set('disableSectorSelect', false);\n            this.set('disableDepartmentSelect', true);\n            this.set('selectedSectors', this.model.sectors.map(function (sector) {\n              return sector.name;\n            }));\n          }\n\n          this.teamOptionChanged(this.model.get('team.id'));\n        }\n      }\n    }, {\n      key: \"departmentOptionChanged\",\n      value: function departmentOptionChanged(value) {\n        if (value === 'All Departments') {\n          this.set('model.department', '0');\n          this.set('model.departmentId', null);\n          this.set('model.departmentName', null);\n        } else {\n          this.set('model.departmentId', value);\n        }\n      }\n    }, {\n      key: \"getSectorObjectFromName\",\n      value: function getSectorObjectFromName(sectorName) {\n        var sectors = this.store.peekAll('sector');\n        var results = sectors.filterBy('name', sectorName).filterBy('team.id', this.model.get('team.id')); //console.log(results[0].team.id)\n\n        if (results.length === 1) {\n          return results[0];\n        }\n\n        return null;\n      }\n    }, {\n      key: \"saveAction\",\n      value: function saveAction() {\n        var _this3 = this;\n\n        if (this.selectedSectors.length > 0) {\n          var sectors = this.selectedSectors.map(function (sectorName) {\n            return _this3.getSectorObjectFromName(sectorName);\n          });\n          this.set('model.sectors', sectors);\n        } else {\n          this.set('model.sectors', []);\n        }\n\n        return this.save(this.model);\n      }\n    }, {\n      key: \"sectorOptionChanged\",\n      value: function sectorOptionChanged(value) {\n        this.set('selectedSectors', value);\n      }\n    }, {\n      key: \"roleOptionChanged\",\n      value: function roleOptionChanged(value) {\n        this.set('model.role', value);\n\n        if (value === 'Executive' || value === \"Admin\") {\n          this.set('model.department', '0');\n          this.set('disableDepartmentSelect', true);\n          this.set('disableSectorSelect', true);\n          this.set('selectedSectors', []);\n        } else if (value === 'Department') {\n          this.set('disableDepartmentSelect', false);\n          this.set('disableSectorSelect', true);\n          this.set('selectedSectors', []);\n          var departments = this.departments;\n\n          if (departments && departments.objectAt(0).display === 'All Departments') {\n            departments.removeAt(0); //Select first department\n\n            this.set('model.department', this.departmentsList[0].value);\n          }\n        } else if (value === 'Sector') {\n          this.set('disableSectorSelect', false);\n          this.set('disableDepartmentSelect', true);\n        }\n      }\n    }, {\n      key: \"teamOptionChanged\",\n      value: function teamOptionChanged(value) {\n        var _this4 = this;\n\n        if (this.model && this.isNew) {\n          var team = this.store.peekRecord('team', value);\n          this.set('model.team', team);\n          this.set('model.departmentId', null);\n          this.set('model.departmentName', null);\n          this.set('selectedSectors', []);\n        } //Fetch sectors and departments\n\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/?team_id=\").concat(value);\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            _this4.store.pushPayload('department', response);\n\n            var departments = _this4.store.peekAll('department').filter(function (dept) {\n              return dept.get('team.id') === _this4.model.get(\"team.id\");\n            });\n\n            var departmentsList = [];\n\n            if (_this4.model.role.toLowerCase() !== \"department\") {\n              departmentsList.push({\n                value: '0',\n                display: 'All Departments'\n              });\n            }\n\n            var sectorDict = {};\n            departments.forEach(function (department) {\n              var sector = department.get('sector.name');\n              sectorDict[sector] = 1;\n              departmentsList.pushObject({\n                value: department.get('id'),\n                display: department.get('name')\n              });\n            });\n            var orderedSectorArray = [];\n            Object.keys(sectorDict).sort().forEach(function (key) {\n              orderedSectorArray.push(key);\n            });\n\n            _this4.set('sectors', orderedSectorArray);\n\n            _this4.set('departments', departmentsList);\n\n            if (!_this4.isNew) {\n              _this4.set('model.department', _this4.model.departmentId);\n            }\n          }\n        });\n      }\n    }, {\n      key: \"departmentsList\",\n      get: function get() {\n        if (this.disableDepartmentSelect) {\n          return [{\n            value: '0',\n            display: 'All Departments'\n          }];\n        } else {\n          return this.departments;\n        }\n      }\n    }, {\n      key: \"sectorsList\",\n      get: function get() {\n        return this.sectors;\n      }\n    }]);\n\n    return RowInstitutionAccessComponent;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"departmentsList\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentsList\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sectorsList\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorsList\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"departmentOptionChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveAction\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sectorOptionChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"roleOptionChanged\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"roleOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"teamOptionChanged\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"teamOptionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RowInstitutionAccessComponent;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/help-icon\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var HelpIcon = (_dec = (0, _component.classNames)('inline'), classic(_class = _dec(_class = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(HelpIcon, _Ember$Component);\n\n    var _super = _createSuper(HelpIcon);\n\n    function HelpIcon() {\n      var _this;\n\n      _classCallCheck(this, HelpIcon);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"side\", 'top');\n\n      return _this;\n    }\n\n    return HelpIcon;\n  }(Ember.Component), _temp)) || _class) || _class);\n  _exports.default = HelpIcon;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/investigator-plan\", [\"exports\", \"@ember-decorators/component\", \"b3i-analytics-web-app/mixins/investigator-projections\", \"b3i-analytics-web-app/mixins/recruitment-calculations\", \"b3i-analytics-web-app/constants/hit-rate-options\"], function (_exports, _component, _investigatorProjections, _recruitmentCalculations, _hitRateOptions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var InvestigatorPlan = (_dec = (0, _component.classNames)('investigator-plan'), _dec2 = Ember.computed('selectedHitRateOption', function () {\n    if (this.selectedHitRateOption === _hitRateOptions.default.THREE_YEAR) {\n      return \"PI’s 3 Yr. Historic Hit Rate\";\n    }\n\n    if (this.selectedHitRateOption === _hitRateOptions.default.FIVE_YEAR) {\n      return \"PI’s 5 Yr. Historic Hit Rate\";\n    }\n\n    return \"PI’s Historic Hit Rate\";\n  }), classic(_class = _dec(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(InvestigatorPlan, _Ember$Component$exte);\n\n    var _super = _createSuper(InvestigatorPlan);\n\n    function InvestigatorPlan() {\n      var _this;\n\n      _classCallCheck(this, InvestigatorPlan);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"selectedHitRateOptionHeader\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(InvestigatorPlan, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(InvestigatorPlan.prototype), \"init\", this).apply(this, arguments);\n\n        this.initGrantProjections();\n\n        if (this.props) {\n          for (var key in this.props) {\n            if (this.props.hasOwnProperty(key)) {\n              if (key === \"projection\") {\n                if (!this.model) {\n                  this.set('model', {});\n                }\n\n                this.set('model.projection', this.props[key]);\n              }\n\n              this.set(key, this.props[key]);\n            }\n          }\n\n          this.updateProjectedGrants();\n        }\n      }\n    }]);\n\n    return InvestigatorPlan;\n  }(Ember.Component.extend(_investigatorProjections.default, _recruitmentCalculations.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"selectedHitRateOptionHeader\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class) || _class);\n  _exports.default = InvestigatorPlan;\n});","define(\"b3i-analytics-web-app/components/light-table\", [\"exports\", \"ember-light-table/components/light-table\"], function (_exports, _lightTable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _lightTable.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/light-table/cells/base\", [\"exports\", \"ember-light-table/components/cells/base\"], function (_exports, _base) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _base.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/light-table/columns/base\", [\"exports\", \"ember-light-table/components/columns/base\"], function (_exports, _base) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _base.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/loading-animation\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var LoadingAnimation = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(LoadingAnimation, _Ember$Component);\n\n    var _super = _createSuper(LoadingAnimation);\n\n    function LoadingAnimation() {\n      _classCallCheck(this, LoadingAnimation);\n\n      return _super.apply(this, arguments);\n    }\n\n    return LoadingAnimation;\n  }(Ember.Component)) || _class;\n\n  _exports.default = LoadingAnimation;\n});","define(\"b3i-analytics-web-app/components/lt-body\", [\"exports\", \"ember-light-table/components/lt-body\"], function (_exports, _ltBody) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltBody.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-column-resizer\", [\"exports\", \"ember-light-table/components/lt-column-resizer\"], function (_exports, _ltColumnResizer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltColumnResizer.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-foot\", [\"exports\", \"ember-light-table/components/lt-foot\"], function (_exports, _ltFoot) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltFoot.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-head\", [\"exports\", \"ember-light-table/components/lt-head\"], function (_exports, _ltHead) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltHead.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-infinity\", [\"exports\", \"ember-light-table/components/lt-infinity\"], function (_exports, _ltInfinity) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltInfinity.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-row\", [\"exports\", \"ember-light-table/components/lt-row\"], function (_exports, _ltRow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltRow.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-scaffolding-row\", [\"exports\", \"ember-light-table/components/lt-scaffolding-row\"], function (_exports, _ltScaffoldingRow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltScaffoldingRow.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-scrollable\", [\"exports\", \"ember-light-table/components/lt-scrollable\"], function (_exports, _ltScrollable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltScrollable.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/lt-spanned-row\", [\"exports\", \"ember-light-table/components/lt-spanned-row\"], function (_exports, _ltSpannedRow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ltSpannedRow.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/masked-input\", [\"exports\", \"ember-text-mask/components/masked-input\"], function (_exports, _maskedInput) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _maskedInput.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/maybe-in-element\", [\"exports\", \"ember-maybe-in-element/components/maybe-in-element\"], function (_exports, _maybeInElement) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _maybeInElement.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/mega-grant-status-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var MegaGrantStatusRow = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(MegaGrantStatusRow, _Ember$Component);\n\n    var _super = _createSuper(MegaGrantStatusRow);\n\n    function MegaGrantStatusRow() {\n      _classCallCheck(this, MegaGrantStatusRow);\n\n      return _super.apply(this, arguments);\n    }\n\n    return MegaGrantStatusRow;\n  }(Ember.Component)) || _class;\n\n  _exports.default = MegaGrantStatusRow;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-add-institution-access\", [\"exports\", \"@glimmer/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var ModalAddInstitutionAccessComponent = /*#__PURE__*/function (_Component) {\n    _inherits(ModalAddInstitutionAccessComponent, _Component);\n\n    var _super = _createSuper(ModalAddInstitutionAccessComponent);\n\n    function ModalAddInstitutionAccessComponent() {\n      _classCallCheck(this, ModalAddInstitutionAccessComponent);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ModalAddInstitutionAccessComponent;\n  }(_component.default);\n\n  _exports.default = ModalAddInstitutionAccessComponent;\n\n  window.__CLASSIC_OWN_CLASSES__.set(ModalAddInstitutionAccessComponent, true);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-add-user-admin\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _class, _class2, _descriptor, _temp;\n\n  function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ModalAddUserAdminComponent = (_dec = Ember.inject.service, _dec2 = Ember.computed('departments', 'disableDepartmentSelect'), _dec3 = Ember.computed('sectors', 'disableSectorSelect'), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ModalAddUserAdminComponent, _Ember$Component);\n\n    var _super = _createSuper(ModalAddUserAdminComponent);\n\n    function ModalAddUserAdminComponent() {\n      var _this;\n\n      _classCallCheck(this, ModalAddUserAdminComponent);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"role\", 'Admin');\n\n      _defineProperty(_assertThisInitialized(_this), \"systemRole\", 'Huron Admin');\n\n      _defineProperty(_assertThisInitialized(_this), \"teams\", {});\n\n      return _this;\n    }\n\n    _createClass(ModalAddUserAdminComponent, [{\n      key: \"init\",\n      value: function init() {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(ModalAddUserAdminComponent.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedSectors', []);\n        this.set('roleOptions', ['Admin', 'Executive', 'Sector', 'Department']);\n        this.set('systemRoleOptions', [\"Huron Admin\", \"Huron Executive\", \"User\"]);\n        this.set('disableDepartmentSelect', true);\n        this.set('disableSectorSelect', true);\n        this.ajax.request(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/teams/\")).then(function (response) {\n          _this2.store.pushPayload('team', response);\n\n          var teamOptions = response.data.map(function (team) {\n            return {\n              value: team.id,\n              display: team.attributes.name\n            };\n          }).sort(function (a, b) {\n            return a.display > b.display;\n          });\n          _this2.teams = {};\n\n          var _iterator = _createForOfIteratorHelper(response.data),\n              _step;\n\n          try {\n            for (_iterator.s(); !(_step = _iterator.n()).done;) {\n              var team = _step.value;\n              _this2.teams[team.id] = team.attributes;\n            }\n          } catch (err) {\n            _iterator.e(err);\n          } finally {\n            _iterator.f();\n          }\n\n          _this2.set('teamOptions', teamOptions);\n\n          _this2.teamOptionChanged(teamOptions[0][\"value\"]);\n        });\n      }\n    }, {\n      key: \"departmentOptionChanged\",\n      value: function departmentOptionChanged(value) {\n        if (value === 'All Departments') {\n          this.set('selectedDepartment', '0');\n        } else {\n          this.set('selectedDepartment', value);\n        }\n      }\n    }, {\n      key: \"save\",\n      value: function save() {\n        var data = {\n          email: this.email,\n          system_role: Ember.String.underscore(this.systemRole)\n        };\n\n        if (this.systemRole === \"User\") {\n          data.position = this.position;\n          data.role = Ember.String.underscore(this.role);\n          data.saml_key = this.samlAttr;\n\n          if (this.selectedDepartment) {\n            data.department_id = this.selectedDepartment;\n          } else if (this.selectedSectors.length > 0) {\n            data.sectors = this.selectedSectors;\n          }\n        }\n\n        var team = this.selectedTeam ? this.selectedTeam : '0';\n        return this.saveAction(data, team);\n      }\n    }, {\n      key: \"sectorOptionChanged\",\n      value: function sectorOptionChanged(value) {\n        this.set('selectedSectors', value);\n      }\n    }, {\n      key: \"systemRoleOptionChanged\",\n      value: function systemRoleOptionChanged(value) {\n        this.set('systemRole', value);\n      }\n    }, {\n      key: \"roleOptionChanged\",\n      value: function roleOptionChanged(value) {\n        this.set('selectedRole', value);\n\n        if (value === 'Executive' || value === \"Admin\") {\n          this.set('selectedDepartment', '0');\n          this.set('disableDepartmentSelect', true);\n          this.set('disableSectorSelect', true);\n          this.set('selectedSectors', []);\n        } else if (value === 'Department') {\n          this.set('disableDepartmentSelect', false);\n          this.set('disableSectorSelect', true);\n          this.set('selectedSectors', []);\n          var departments = this.departments;\n\n          if (departments && departments.objectAt(0).display === 'All Departments') {\n            departments.removeAt(0); //Select first department\n\n            this.set('selectedDepartment', this.departmentsList[0].value);\n          }\n        } else if (value === 'Sector') {\n          this.set('disableSectorSelect', false);\n          this.set('disableDepartmentSelect', true);\n        }\n      }\n    }, {\n      key: \"teamOptionChanged\",\n      value: function teamOptionChanged(value) {\n        var _this3 = this;\n\n        this.set('team', this.teams[value]);\n        this.set('selectedTeam', value);\n        this.set('selectedDepartment', null);\n        this.set('selectedSectors', []); //Fetch sectors and departments\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/?team_id=\").concat(value);\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            _this3.store.pushPayload('department', response);\n\n            var departments = _this3.store.peekAll('department').filter(function (dept) {\n              return dept.get('team.id') === _this3.selectedTeam;\n            });\n\n            var departmentsList = [];\n\n            if (_this3.role && _this3.role.toLowerCase() !== \"department\") {\n              departmentsList.push({\n                value: '0',\n                display: 'All Departments'\n              });\n            }\n\n            var sectorDict = {};\n            departments.forEach(function (department) {\n              var sector = department.get('sector.name');\n              sectorDict[sector] = 1;\n              departmentsList.pushObject({\n                value: department.get('id'),\n                display: department.get('name')\n              });\n            });\n            var orderedSectorArray = [];\n            Object.keys(sectorDict).sort().forEach(function (key) {\n              orderedSectorArray.push(key);\n            });\n\n            _this3.set('sectors', orderedSectorArray);\n\n            _this3.set('departments', departmentsList);\n          }\n        });\n      }\n    }, {\n      key: \"departmentsList\",\n      get: function get() {\n        if (this.disableDepartmentSelect) {\n          return [{\n            value: '0',\n            display: 'All Departments'\n          }];\n        } else {\n          return this.departments;\n        }\n      }\n    }, {\n      key: \"sectorsList\",\n      get: function get() {\n        return this.sectors;\n      }\n    }]);\n\n    return ModalAddUserAdminComponent;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"departmentsList\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentsList\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sectorsList\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorsList\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"departmentOptionChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"save\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"save\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sectorOptionChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"systemRoleOptionChanged\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"systemRoleOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"roleOptionChanged\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"roleOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"teamOptionChanged\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"teamOptionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ModalAddUserAdminComponent;\n});","define(\"b3i-analytics-web-app/components/modal-add-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    departmentsList: Ember.computed('departments', 'disableDepartmentSelect', function () {\n      if (this.disableDepartmentSelect) {\n        return [{\n          value: '0',\n          display: 'All Departments'\n        }];\n      } else {\n        return this.departments;\n      }\n    }),\n    sectorList: Ember.computed('sectors', 'disableSectorSelect', function () {\n      return this.sectors;\n    }),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('user', []);\n      this.set('roleOptions', ['Department', 'Sector', 'Executive', 'Admin']);\n      this.set('user.role', 'Executive');\n      this.set('user.sectors', []);\n      this.set('disableDepartmentSelect', true);\n      this.set('disableSectorSelect', true);\n    },\n    descriptionTextRole: Ember.computed('user.role', function () {\n      var role = this.get('user.role');\n\n      if (role === 'Executive') {\n        return 'This role designation will give this user access to all Department and PI pages but not to application administration pages.';\n      } else if (role === 'Admin') {\n        return 'This role designation will give this user access to all Department, PI pages plus the Huron Analytics application administration pages including “Users”, “Settings”, and “Data Import”.';\n      } else if (role === 'Department') {\n        return 'This role designation will only give this user access to one Department, including the Department’s PI Pages, designated below.';\n      } else if (role === 'Sector') {\n        return 'This role designation will only give this user access to to the Sector or Sectors listed below.';\n      } else {\n        return null;\n      }\n    }),\n    actions: {\n      saveAction: function saveAction() {\n        var user = this.user;\n        user.saml_key = this.samlAttr;\n        this.saveAction(user);\n      },\n      departmentOptionChanged: function departmentOptionChanged(value) {\n        if (value === 'All Departments') {\n          this.set('user.department', '0');\n        } else {\n          this.set('user.department', value);\n        }\n      },\n      roleOptionChanged: function roleOptionChanged(value) {\n        this.set('user.role', value);\n\n        if (value === 'Executive' || value === \"Admin\") {\n          this.set('user.department', '0');\n          this.set('disableDepartmentSelect', true);\n          this.set('disableSectorSelect', true);\n          this.set('user.sectors', null);\n        } else if (value === 'Department') {\n          this.set('disableDepartmentSelect', false);\n          this.set('disableSectorSelect', true);\n          this.set('user.sectors', null);\n          var departments = this.departments;\n\n          if (departments.objectAt(0).display === 'All Departments') {\n            departments.removeAt(0);\n          } //Select first department\n\n\n          this.set('user.department', this.departmentsList[0].value);\n        } else if (value === 'Sector') {\n          this.set('disableSectorSelect', false);\n          this.set('disableDepartmentSelect', true);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-delete-institution\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ModalDeleteInstitutionComponent = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ModalDeleteInstitutionComponent, _Ember$Component);\n\n    var _super = _createSuper(ModalDeleteInstitutionComponent);\n\n    function ModalDeleteInstitutionComponent() {\n      _classCallCheck(this, ModalDeleteInstitutionComponent);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ModalDeleteInstitutionComponent;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ModalDeleteInstitutionComponent;\n});","define(\"b3i-analytics-web-app/components/modal-delete-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({});\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/modal-delete-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      deleteAction: function deleteAction() {\n        var user = this.user;\n        this.deleteAction(user);\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-edit-institution\", [\"exports\", \"b3i-analytics-web-app/constants/institution-properties\", \"moment\"], function (_exports, _institutionProperties, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var ModalEditInstitutionComponent = (_dec = Ember.computed(\"institution.isNew\", \"createdInstitution\"), _dec2 = Ember.computed('institution.isPublic'), _dec3 = Ember.computed(), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, (_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ModalEditInstitutionComponent, _Ember$Component);\n\n    var _super = _createSuper(ModalEditInstitutionComponent);\n\n    function ModalEditInstitutionComponent() {\n      _classCallCheck(this, ModalEditInstitutionComponent);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(ModalEditInstitutionComponent, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ModalEditInstitutionComponent.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('typeOptions', _institutionProperties.default.TYPE_OPTIONS);\n        this.set('publicOptions', _institutionProperties.default.PUBLIC_OPTIONS);\n        this.set('stateOptions', _institutionProperties.default.STATES);\n        var fiscalYearEndIndex = this.institution.fiscalYearStartMonth - 2;\n\n        if (fiscalYearEndIndex < 0) {\n          fiscalYearEndIndex = 11;\n        }\n\n        this.set('selectedFiscalYearEnd', this.fiscalYearEndOptions[fiscalYearEndIndex]);\n      }\n    }, {\n      key: \"fiscalYearOptionChanged\",\n      value: function fiscalYearOptionChanged(option) {\n        this.set('selectedFiscalYearEnd', option);\n        var fiscalYearMonth = this.fiscalYearEndOptions.indexOf(option) + 2;\n\n        if (fiscalYearMonth > 12) {\n          fiscalYearMonth = 1;\n        }\n\n        this.set('institution.fiscalYearStartMonth', fiscalYearMonth);\n      }\n    }, {\n      key: \"typeOptionChanged\",\n      value: function typeOptionChanged(type) {\n        this.set('institution.type', type);\n      }\n    }, {\n      key: \"stateOptionChanged\",\n      value: function stateOptionChanged(state) {\n        this.set('institution.state', state);\n      }\n    }, {\n      key: \"publicOptionChanged\",\n      value: function publicOptionChanged(option) {\n        this.set('institution.isPublic', option === \"Public\");\n      }\n    }, {\n      key: \"title\",\n      get: function get() {\n        return this.institution.isNew || this.createdInstitution ? \"Add an Institution\" : \"Edit Institution\";\n      }\n    }, {\n      key: \"selectedPublicOption\",\n      get: function get() {\n        if (this.institution) {\n          return this.institution.isPublic ? \"Public\" : \"Private\";\n        }\n\n        return null;\n      }\n    }, {\n      key: \"fiscalYearEndOptions\",\n      get: function get() {\n        var options = [];\n\n        for (var i = 0; i < 12; i++) {\n          var date = (0, _moment.default)().startOf('year').add(i, 'month').endOf('month').format('MM/DD');\n          options.push(date);\n        }\n\n        return options;\n      }\n    }]);\n\n    return ModalEditInstitutionComponent;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class.prototype, \"title\", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, \"title\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"selectedPublicOption\", [_dec2], Object.getOwnPropertyDescriptor(_class.prototype, \"selectedPublicOption\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"fiscalYearEndOptions\", [_dec3], Object.getOwnPropertyDescriptor(_class.prototype, \"fiscalYearEndOptions\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"fiscalYearOptionChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, \"fiscalYearOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"typeOptionChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, \"typeOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"stateOptionChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, \"stateOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"publicOptionChanged\", [_dec7], Object.getOwnPropertyDescriptor(_class.prototype, \"publicOptionChanged\"), _class.prototype)), _class));\n  _exports.default = ModalEditInstitutionComponent;\n});","define(\"b3i-analytics-web-app/components/modal-edit-membership\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    departments: null,\n    departmentsList: Ember.computed('departments', 'disableDepartmentSelect', function () {\n      if (this.disableDepartmentSelect) {\n        return [{\n          value: '0',\n          display: 'All Departments'\n        }];\n      } else {\n        return this.departments;\n      }\n    }),\n    currentUser: Ember.inject.service(),\n    store: Ember.inject.service(),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('newMembership', Ember.Object.create());\n      var membership = this.membership;\n      this.set('roleOptions', ['Department', 'Sector', 'Executive', 'Admin']);\n\n      if (membership) {\n        var userRole = membership.get('role').capitalize();\n        var userDepartment = membership.get('departmentId');\n        var userSectors = membership.get('sectors');\n        this.set('newMembership.email', membership.get('invitation.signupCode.email'));\n        this.set('newMembership.position', membership.get('position'));\n\n        if (userDepartment) {\n          this.set('newMembership.department', userDepartment);\n        } else {\n          this.set('newMembership.department', '0');\n        }\n\n        if (userSectors) {\n          this.set('newMembership.sectors', userSectors.map(function (sector) {\n            return sector.get('name');\n          }));\n        } else {\n          this.set('newMembership.sectors', null);\n        }\n\n        if (userRole) {\n          this.set('newMembership.role', userRole);\n\n          if (userRole !== 'Department') {\n            this.set('disableDepartmentSelect', true);\n          }\n\n          if (userRole !== 'Sector') {\n            this.set('disableSectorSelect', true);\n          }\n        }\n      }\n    },\n    actions: {\n      saveAction: function saveAction() {\n        var newMembership = this.newMembership;\n        this.saveAction(newMembership);\n      },\n      departmentOptionChanged: function departmentOptionChanged(value) {\n        if (value === 'All Departments') {\n          this.set('newMembership.department', '0');\n        } else {\n          this.set('newMembership.department', value);\n        }\n      },\n      roleOptionChanged: function roleOptionChanged(value) {\n        this.set('newMembership.role', value);\n        var departments = this.departments;\n\n        if (value === 'Executive' || value === 'Admin') {\n          this.set('newMembership.department', '0');\n          this.set('disableDepartmentSelect', true);\n          this.set('disableSectorSelect', true);\n          this.set('newMembership.sectors', null);\n        } else if (value === 'Department') {\n          this.set('disableDepartmentSelect', false);\n          this.set('disableSectorSelect', true);\n\n          if (departments.objectAt(0).display === 'All Departments') {\n            departments.removeAt(0);\n          }\n\n          this.set('newMembership.sectors', null);\n          this.set('newMembership.department', this.departmentsList[0].value);\n        } else if (value === 'Sector') {\n          this.set('disableSectorSelect', false);\n          this.set('disableDepartmentSelect', true);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/modal-edit-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('roleOptions', [\"Huron Admin\", \"Huron Executive\", \"User\"]);\n    },\n    actions: {\n      roleOptionChanged: function roleOptionChanged(value) {\n        this.set('systemRole', value);\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/modal-edit-user\", [\"exports\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    departments: null,\n    departmentsList: Ember.computed('departments', 'disableDepartmentSelect', function () {\n      if (this.disableDepartmentSelect) {\n        return [{\n          value: '0',\n          display: 'All Departments'\n        }];\n      } else {\n        return this.departments;\n      }\n    }),\n    currentUser: Ember.inject.service(),\n    store: Ember.inject.service(),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('newUser', Ember.Object.create());\n      var access = this.access;\n      this.set('roleOptions', ['Department', 'Sector', 'Executive', 'Admin']);\n      this.selectedRoleObserver;\n\n      if (access) {\n        var userRole = access.get('role').capitalize();\n        var userDepartment = access.get('departmentId');\n        var userSectors = access.get('sectors');\n        this.set('newUser.name', access.get('user.name'));\n        this.set('newUser.email', access.get('user.email'));\n        this.set('newUser.position', access.get('position'));\n\n        if (userDepartment) {\n          this.set('newUser.department', userDepartment);\n        } else {\n          this.set('newUser.department', '0');\n        }\n\n        if (userSectors) {\n          this.set('newUser.sectors', userSectors.map(function (sector) {\n            return sector.get('name');\n          }));\n        } else {\n          this.set('newUser.sectors', null);\n        }\n\n        if (userRole) {\n          this.set('newUser.role', userRole);\n\n          if (userRole !== 'Department') {\n            this.set('disableDepartmentSelect', true);\n          }\n\n          if (userRole !== 'Sector') {\n            this.set('disableSectorSelect', true);\n          }\n        }\n      }\n    },\n    actions: {\n      saveAction: function saveAction() {\n        var newUser = this.newUser;\n        var user = this.access.get('user');\n        var membership = {\n          position: newUser.get('position'),\n          role: newUser.get('role'),\n          departmentId: newUser.get('department'),\n          sectors: newUser.get('sectors'),\n          id: this.access.get('id')\n        };\n        user.set('name', newUser.get('name'));\n        user.set('email', newUser.get('email'));\n        this.saveAction(user, membership);\n      },\n      departmentOptionChanged: function departmentOptionChanged(value) {\n        if (value === 'All Departments') {\n          this.set('newUser.department', '0');\n        } else {\n          this.set('newUser.department', value);\n        }\n      },\n      roleOptionChanged: function roleOptionChanged(value) {\n        this.set('newUser.role', value);\n\n        if (value === 'Executive' || value === \"Admin\") {\n          this.set('newUser.department', '0');\n          this.set('newUser.sectors', null);\n          this.set('disableDepartmentSelect', true);\n          this.set('disableSectorSelect', true);\n          this.set('newUser.sectors', null);\n        } else if (value === 'Department') {\n          this.set('disableDepartmentSelect', false);\n          this.set('disableSectorSelect', true);\n          var departments = this.departments;\n\n          if (departments.objectAt(0).display === 'All Departments') {\n            departments.removeAt(0);\n          }\n\n          this.set('newUser.sectors', null); //Select first department\n\n          if (this.departmentsList[0]) {\n            this.set('newUser.department', this.departmentsList[0].value);\n          }\n        } else if (value === 'Sector') {\n          this.set('disableSectorSelect', false);\n          this.set('disableDepartmentSelect', true);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-team-switcher\", [\"exports\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _errors, _environment, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ModalTeamSwitcher = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = Ember._action, _dec5 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ModalTeamSwitcher, _Ember$Component);\n\n    var _super = _createSuper(ModalTeamSwitcher);\n\n    function ModalTeamSwitcher() {\n      var _this;\n\n      _classCallCheck(this, ModalTeamSwitcher);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"departments\", null);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor3, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ModalTeamSwitcher, [{\n      key: \"init\",\n      value: function init() {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(ModalTeamSwitcher.prototype), \"init\", this).apply(this, arguments);\n\n        this.ajax.request(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/teams/\")).then(function (response) {\n          var teamOptions = response.data.map(function (team) {\n            return {\n              value: team.id,\n              display: team.attributes.name\n            };\n          }).sort(function (a, b) {\n            return a.display > b.display;\n          });\n\n          _this2.set('teamOptions', teamOptions);\n\n          var team = _this2.currentUser.team;\n\n          _this2.set('selectedTeamOption', team.id);\n        });\n      }\n    }, {\n      key: \"teamOptionChanged\",\n      value: function teamOptionChanged(value) {\n        this.set('selectedTeamOption', value);\n      }\n    }, {\n      key: \"saveAction\",\n      value: function saveAction() {\n        var _this3 = this;\n\n        var membership = this.store.peekRecord(\"membership\", this.membership.get(\"id\"));\n        var data = membership.serialize();\n        data[\"data\"][\"relationships\"][\"team\"] = {\n          data: {\n            id: this.selectedTeamOption,\n            type: \"teams\"\n          }\n        };\n        data[\"data\"][\"id\"] = this.membership.get(\"id\");\n        this.ajax.patch(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/memberships/\").concat(this.membership.get(\"id\"), \"/\"), {\n          headers: {\n            'Content-Type': 'application/vnd.api+json'\n          },\n          data: data\n        }).then(function () {\n          //Clear out the session storage\n          window.sessionStorage.clear(); //Clear all records\n\n          _this3.store.unloadAll();\n\n          window.location.replace('/app/projections');\n        }).catch(function (response) {\n          _this3.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }]);\n\n    return ModalTeamSwitcher;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"teamOptionChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"teamOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveAction\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveAction\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ModalTeamSwitcher;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/modal-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ModalWrapper = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ModalWrapper, _Ember$Component);\n\n    var _super = _createSuper(ModalWrapper);\n\n    function ModalWrapper() {\n      _classCallCheck(this, ModalWrapper);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ModalWrapper;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ModalWrapper;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/money-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var MoneyTextInput = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(MoneyTextInput, _Ember$Component);\n\n    var _super = _createSuper(MoneyTextInput);\n\n    function MoneyTextInput() {\n      _classCallCheck(this, MoneyTextInput);\n\n      return _super.apply(this, arguments);\n    }\n\n    return MoneyTextInput;\n  }(Ember.Component)) || _class;\n\n  _exports.default = MoneyTextInput;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/multi-option-select\", [\"exports\", \"@ember-decorators/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var MultiOptionSelect = (_dec = (0, _object.observes)('selectedOption'), _dec2 = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(MultiOptionSelect, _Ember$Component);\n\n    var _super = _createSuper(MultiOptionSelect);\n\n    function MultiOptionSelect() {\n      _classCallCheck(this, MultiOptionSelect);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(MultiOptionSelect, [{\n      key: \"selectedIndexObserver\",\n      value: function selectedIndexObserver() {\n        if (this.onChange) {\n          this.onChange(this.selectedOption);\n        }\n      }\n    }, {\n      key: \"optionClicked\",\n      value: function optionClicked(value) {\n        this.set('selectedOption', value);\n      }\n    }]);\n\n    return MultiOptionSelect;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"selectedIndexObserver\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedIndexObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"optionClicked\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"optionClicked\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = MultiOptionSelect;\n});","define(\"b3i-analytics-web-app/components/one-way-credit-card-mask\", [\"exports\", \"ember-inputmask/components/one-way-credit-card-mask\"], function (_exports, _oneWayCreditCardMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayCreditCardMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-currency-mask\", [\"exports\", \"ember-inputmask/components/one-way-currency-mask\"], function (_exports, _oneWayCurrencyMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayCurrencyMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-date-mask\", [\"exports\", \"ember-inputmask/components/one-way-date-mask\"], function (_exports, _oneWayDateMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayDateMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-email-mask\", [\"exports\", \"ember-inputmask/components/one-way-email-mask\"], function (_exports, _oneWayEmailMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayEmailMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-input-mask\", [\"exports\", \"ember-inputmask/components/one-way-input-mask\"], function (_exports, _oneWayInputMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _oneWayInputMask.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/one-way-number-mask\", [\"exports\", \"ember-inputmask/components/one-way-number-mask\"], function (_exports, _oneWayNumberMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayNumberMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-phone-mask\", [\"exports\", \"ember-inputmask/components/one-way-phone-mask\"], function (_exports, _oneWayPhoneMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayPhoneMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-ssn-mask\", [\"exports\", \"ember-inputmask/components/one-way-ssn-mask\"], function (_exports, _oneWaySsnMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWaySsnMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/one-way-zip-code-mask\", [\"exports\", \"ember-inputmask/components/one-way-zip-code-mask\"], function (_exports, _oneWayZipCodeMask) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _oneWayZipCodeMask.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/pell-editor\", [\"exports\", \"ember-pell/components/pell-editor\"], function (_exports, _pellEditor) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _pellEditor.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/percent-input-threshold\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    classNames: ['percent-input-wrapper percent-threshold'],\n    actions: {\n      onValueChanged: function onValueChanged(value) {\n        this.set('value', value);\n\n        if (this.onValueChanged) {\n          this.onValueChanged(value);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/percent-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      onValueChanged: function onValueChanged(value) {\n        this.set('value', value);\n\n        if (this.onValueChanged) {\n          this.onValueChanged(value);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/pikaday-input\", [\"exports\", \"ember-pikaday/components/pikaday-input\"], function (_exports, _pikadayInput) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _pikadayInput.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/pikaday-inputless\", [\"exports\", \"ember-pikaday/components/pikaday-inputless\"], function (_exports, _pikadayInputless) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _pikadayInputless.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select-multiple\", [\"exports\", \"ember-power-select/components/power-select-multiple\"], function (_exports, _powerSelectMultiple) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _powerSelectMultiple.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select-multiple/trigger\", [\"exports\", \"ember-power-select/components/power-select-multiple/trigger\"], function (_exports, _trigger) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _trigger.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select\", [\"exports\", \"ember-power-select/components/power-select\"], function (_exports, _powerSelect) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _powerSelect.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/before-options\", [\"exports\", \"ember-power-select/components/power-select/before-options\"], function (_exports, _beforeOptions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _beforeOptions.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/no-matches-message\", [\"exports\", \"ember-power-select/components/power-select/no-matches-message\"], function (_exports, _noMatchesMessage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _noMatchesMessage.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/options\", [\"exports\", \"ember-power-select/components/power-select/options\"], function (_exports, _options) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _options.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/placeholder\", [\"exports\", \"ember-power-select/components/power-select/placeholder\"], function (_exports, _placeholder) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _placeholder.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/power-select-group\", [\"exports\", \"ember-power-select/components/power-select/power-select-group\"], function (_exports, _powerSelectGroup) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _powerSelectGroup.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/search-message\", [\"exports\", \"ember-power-select/components/power-select/search-message\"], function (_exports, _searchMessage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _searchMessage.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/power-select/trigger\", [\"exports\", \"ember-power-select/components/power-select/trigger\"], function (_exports, _trigger) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _trigger.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/print-this\", [\"exports\", \"ember-print-this/components/print-this\"], function (_exports, _printThis) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _printThis.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/projections-controls-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    currentUser: Ember.inject.service('current-user'),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('open2018Options', ['Prior Yr', '2 Yr Avg', '3 Yr Avg']);\n      this.set('2018RevisedOptions', ['Stay', 'YTD', 'Revert']);\n      this.set('2019TransitionOptions', ['Stay', 'Split', 'Revert']);\n    },\n    sponsorExists: Ember.computed('sponsorType', function () {\n      var sponsors = this.currentUser.sponsorlist;\n\n      if (sponsors.includes(this.sponsorType)) {\n        return true;\n      } else {\n        return false;\n      } // return true;\n\n    }),\n    notSelectedSponsor: Ember.computed('selectedSponsor', 'sponsorType', function () {\n      return this.selectedSponsor !== this.sponsorType && this.selectedSponsor !== 'All Sponsor Types';\n    }),\n    actions: {\n      openOptionChanged: function openOptionChanged(value) {\n        if (this.openOptionChanged) {\n          this.openOptionChanged(value);\n        }\n      },\n      revisedOptionChanged: function revisedOptionChanged(value) {\n        if (this.revisedOptionChanged) {\n          this.revisedOptionChanged(value);\n        }\n      },\n      transitionOptionChanged: function transitionOptionChanged(value) {\n        if (this.transitionOptionChanged) {\n          this.transitionOptionChanged(value);\n        }\n      },\n      oneYearAheadDirectsChanged: function oneYearAheadDirectsChanged(value) {\n        if (this.oneYearAheadDirectsChanged) {\n          this.oneYearAheadDirectsChanged(value / 100);\n        }\n      },\n      oneYearAheadIndirectsChanged: function oneYearAheadIndirectsChanged(value) {\n        if (this.oneYearAheadIndirectsChanged) {\n          this.oneYearAheadIndirectsChanged(value / 100);\n        }\n      },\n      twoYearsAheadDirectsChanged: function twoYearsAheadDirectsChanged(value) {\n        if (this.twoYearsAheadDirectsChanged) {\n          this.twoYearsAheadDirectsChanged(value / 100);\n        }\n      },\n      twoYearsAheadIndirectsChanged: function twoYearsAheadIndirectsChanged(value) {\n        if (this.twoYearsAheadIndirectsChanged) {\n          this.twoYearsAheadIndirectsChanged(value / 100);\n        }\n      },\n      threeYearsAheadDirectsChanged: function threeYearsAheadDirectsChanged(value) {\n        if (this.threeYearsAheadDirectsChanged) {\n          this.threeYearsAheadDirectsChanged(value / 100);\n        }\n      },\n      threeYearsAheadIndirectsChanged: function threeYearsAheadIndirectsChanged(value) {\n        if (this.threeYearsAheadIndirectsChanged) {\n          this.threeYearsAheadIndirectsChanged(value / 100);\n        }\n      },\n      fourYearsAheadDirectsChanged: function fourYearsAheadDirectsChanged(value) {\n        if (this.fourYearsAheadDirectsChanged) {\n          this.fourYearsAheadDirectsChanged(value / 100);\n        }\n      },\n      fourYearsAheadIndirectsChanged: function fourYearsAheadIndirectsChanged(value) {\n        if (this.fourYearsAheadIndirectsChanged) {\n          this.fourYearsAheadIndirectsChanged(value / 100);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/projections-controls-table\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ProjectionsControlsTable = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ProjectionsControlsTable, _Ember$Component);\n\n    var _super = _createSuper(ProjectionsControlsTable);\n\n    function ProjectionsControlsTable() {\n      _classCallCheck(this, ProjectionsControlsTable);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ProjectionsControlsTable;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ProjectionsControlsTable;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/projections-settings\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CONTROLS_CONVERSION = \"conversion\";\n  var CONTROLS_PROPOSALS = \"proposals\";\n  var ProjectionsSettings = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ProjectionsSettings, _Ember$Component);\n\n    var _super = _createSuper(ProjectionsSettings);\n\n    function ProjectionsSettings() {\n      var _this;\n\n      _classCallCheck(this, ProjectionsSettings);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor2, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"CONTROLS_CONVERSION\", CONTROLS_CONVERSION);\n\n      _defineProperty(_assertThisInitialized(_this), \"CONTROLS_PROPOSALS\", CONTROLS_PROPOSALS);\n\n      _defineProperty(_assertThisInitialized(_this), \"activeProjectionsControls\", CONTROLS_CONVERSION);\n\n      return _this;\n    }\n\n    _createClass(ProjectionsSettings, [{\n      key: \"setActiveProjectionsControls\",\n      value: function setActiveProjectionsControls(value) {\n        this.set('activeProjectionsControls', value);\n      }\n    }]);\n\n    return ProjectionsSettings;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"setActiveProjectionsControls\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"setActiveProjectionsControls\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ProjectionsSettings;\n});","define(\"b3i-analytics-web-app/components/radio-button\", [\"exports\", \"ember-radio-buttons/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 get() {\n      return _radioButton.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/recruitment-faculty-table\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RecruitmentFacultyTable = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(RecruitmentFacultyTable, _Ember$Component);\n\n    var _super = _createSuper(RecruitmentFacultyTable);\n\n    function RecruitmentFacultyTable() {\n      _classCallCheck(this, RecruitmentFacultyTable);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(RecruitmentFacultyTable, [{\n      key: \"updatePI\",\n      value: function updatePI(value) {\n        return value;\n      }\n    }]);\n\n    return RecruitmentFacultyTable;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"updatePI\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"updatePI\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RecruitmentFacultyTable;\n});","define(\"b3i-analytics-web-app/components/resize-detector\", [\"exports\", \"ember-element-resize-detector/components/resize-detector\"], function (_exports, _resizeDetector) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _resizeDetector.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/row-expanded-active-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RowExpandedActiveMega = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(RowExpandedActiveMega, _Ember$Component);\n\n    var _super = _createSuper(RowExpandedActiveMega);\n\n    function RowExpandedActiveMega() {\n      var _this;\n\n      _classCallCheck(this, RowExpandedActiveMega);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return RowExpandedActiveMega;\n  }(Ember.Component), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = RowExpandedActiveMega;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/row-expanded-pending-mega\", [\"exports\", \"@ember-decorators/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RowExpandedPendingMega = (_dec = (0, _object.observes)('row.megaGrants.@each.excludeFromHedgeChallenge'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(RowExpandedPendingMega, _Ember$Component);\n\n    var _super = _createSuper(RowExpandedPendingMega);\n\n    function RowExpandedPendingMega() {\n      _classCallCheck(this, RowExpandedPendingMega);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(RowExpandedPendingMega, [{\n      key: \"megaGrantChangeObserver\",\n      value: function megaGrantChangeObserver() {// this.updateMegaGrants();\n      }\n    }, {\n      key: \"updateMegaGrants\",\n      value: function updateMegaGrants() {\n        var grantsToUpdate = this.get('row.megaGrants').filterBy('hasDirtyAttributes', true);\n        var promises = grantsToUpdate.map(function (grant) {\n          grant.save();\n        });\n        Ember.RSVP.all(promises).then(function () {}).catch(function () {});\n      }\n    }]);\n\n    return RowExpandedPendingMega;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"megaGrantChangeObserver\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantChangeObserver\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RowExpandedPendingMega;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/row-institution-access\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RowInstitutionAccessComponent = (_dec = Ember._action, _dec2 = Ember._action, _dec3 = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(RowInstitutionAccessComponent, _Ember$Component);\n\n    var _super = _createSuper(RowInstitutionAccessComponent);\n\n    function RowInstitutionAccessComponent() {\n      _classCallCheck(this, RowInstitutionAccessComponent);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(RowInstitutionAccessComponent, [{\n      key: \"toggleIsRemoving\",\n      value: function toggleIsRemoving() {\n        this.toggleProperty(\"isRemoving\");\n      }\n    }, {\n      key: \"toggleIsEditing\",\n      value: function toggleIsEditing() {\n        this.toggleProperty(\"isEditing\");\n      }\n    }, {\n      key: \"saveModel\",\n      value: function saveModel() {\n        this.toggleProperty(\"isEditing\");\n        return this.save(this.model);\n      }\n    }]);\n\n    return RowInstitutionAccessComponent;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"toggleIsRemoving\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleIsRemoving\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleIsEditing\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleIsEditing\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveModel\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveModel\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RowInstitutionAccessComponent;\n});","define(\"b3i-analytics-web-app/components/scroll-content-element\", [\"exports\", \"ember-scrollable/components/scroll-content-element\"], function (_exports, _scrollContentElement) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _scrollContentElement.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/scroll-to\", [\"exports\", \"ember-scroll-to-mk2/components/scroll-to\"], function (_exports, _scrollTo) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _scrollTo.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/select-dropdown\", [\"exports\", \"jquery\"], function (_exports, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      (0, _jquery.default)('select').click(function (e) {\n        e.stopPropagation();\n      });\n    },\n    actions: {\n      optionChanged: function optionChanged(val) {\n        if (this.optionChanged) {\n          this.optionChanged(val);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/select-grouped-dropdown-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var SelectGroupedDropdownWrapper = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(SelectGroupedDropdownWrapper, _Ember$Component);\n\n    var _super = _createSuper(SelectGroupedDropdownWrapper);\n\n    function SelectGroupedDropdownWrapper() {\n      _classCallCheck(this, SelectGroupedDropdownWrapper);\n\n      return _super.apply(this, arguments);\n    }\n\n    return SelectGroupedDropdownWrapper;\n  }(Ember.Component)) || _class;\n\n  _exports.default = SelectGroupedDropdownWrapper;\n});","define(\"b3i-analytics-web-app/components/select-grouped-dropdown\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    showOptions: false,\n    actions: {\n      optionChanged: function optionChanged(option) {\n        this.set('selectedOption', option.value);\n\n        if (this.optionChanged) {\n          this.optionChanged(option);\n        }\n\n        this.toggleProperty('showOptions');\n      },\n      toggleShowOptions: function toggleShowOptions() {\n        this.set('showOptions', !this.disabled && !this.showOptions);\n      },\n      hideOptions: function hideOptions() {\n        this.set('showOptions', false);\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/slider-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SliderInput = (_dec = Ember.computed('value', 'max', 'min'), _dec2 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(SliderInput, _Ember$Component);\n\n    var _super = _createSuper(SliderInput);\n\n    function SliderInput() {\n      var _this;\n\n      _classCallCheck(this, SliderInput);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"max\", 100);\n\n      _defineProperty(_assertThisInitialized(_this), \"step\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"value\", 50);\n\n      _defineProperty(_assertThisInitialized(_this), \"min\", 0);\n\n      return _this;\n    }\n\n    _createClass(SliderInput, [{\n      key: \"changedSlider\",\n      value: function changedSlider() {\n        var slider = document.getElementById('rangeInput');\n        var sliderValue = slider.value;\n        var range = this.value;\n        var sliderFill = Math.floor(sliderValue / range * 100) + \"%\";\n        this.set('value', sliderValue);\n        this.set('sliderValue', sliderFill);\n      }\n    }, {\n      key: \"rangePercent\",\n      get: function get() {\n        var value = parseFloat(this.value);\n        var max = this.max;\n        var min = this.min;\n        var scaleShift = 0 - min;\n        return Math.floor((value + scaleShift) / (max + scaleShift) * 100);\n      }\n    }]);\n\n    return SliderInput;\n  }(Ember.Component), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"rangePercent\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"rangePercent\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"changedSlider\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"changedSlider\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SliderInput;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/split-bar-chart\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var SplitBarChart = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(SplitBarChart, _Ember$Component);\n\n    var _super = _createSuper(SplitBarChart);\n\n    function SplitBarChart() {\n      _classCallCheck(this, SplitBarChart);\n\n      return _super.apply(this, arguments);\n    }\n\n    return SplitBarChart;\n  }(Ember.Component)) || _class;\n\n  _exports.default = SplitBarChart;\n});","define(\"b3i-analytics-web-app/components/sticky-element\", [\"exports\", \"ember-sticky-element/components/sticky-element\"], function (_exports, _stickyElement) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _stickyElement.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/components/sticky-element/trigger\", [\"exports\", \"ember-sticky-element/components/sticky-element/trigger\"], function (_exports, _trigger) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _trigger.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/success-message\", [\"exports\", \"@ember-decorators/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SuccessMessage = (_dec = (0, _component.classNames)('success-message'), classic(_class = _dec(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(SuccessMessage, _Ember$Component);\n\n    var _super = _createSuper(SuccessMessage);\n\n    function SuccessMessage() {\n      _classCallCheck(this, SuccessMessage);\n\n      return _super.apply(this, arguments);\n    }\n\n    return SuccessMessage;\n  }(Ember.Component)) || _class) || _class);\n  _exports.default = SuccessMessage;\n});","define(\"b3i-analytics-web-app/components/table-active-mega\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    columns: Ember.computed(function () {\n      return [{\n        label: 'Investigator',\n        cellComponent: 'cell-link-is-new',\n        valuePath: 'cellLinkData',\n        width: '200px'\n      }, {\n        label: 'Department',\n        valuePath: 'departmentName',\n        width: '150px'\n      }, {\n        label: 'ID',\n        sortable: false,\n        valuePath: 'success.grantId',\n        width: '100px'\n      }, {\n        label: 'Title',\n        sortable: false,\n        valuePath: 'success.title',\n        width: '150px'\n      }, {\n        align: 'right',\n        label: 'Start',\n        valuePath: 'success.startFiscalYear',\n        width: '60px'\n      }, {\n        align: 'right',\n        label: 'End',\n        valuePath: 'success.endFiscalYear',\n        width: '60px'\n      }, {\n        align: 'right',\n        label: 'Duration',\n        valuePath: 'duration',\n        width: '80px'\n      }, {\n        align: 'right',\n        label: 'Directs',\n        cellComponent: 'cell-mega-grant-variance',\n        valuePath: 'directsTableValue',\n        width: '95px'\n      }, {\n        align: 'right',\n        label: 'Indirects',\n        cellComponent: 'cell-mega-grant-variance',\n        valuePath: 'indirectsTableValue',\n        width: '95px'\n      }, {\n        align: 'right',\n        label: 'Total',\n        cellComponent: 'cell-mega-grant-variance',\n        valuePath: 'totalTableValue',\n        width: '95px'\n      }, {\n        label: 'Renew?',\n        sortable: false,\n        cellComponent: 'cell-dropdown-mega-grants',\n        valuePath: 'renews',\n        width: '70px',\n        extra: {\n          disabled: this.disableDropdowns\n        }\n      }, {\n        label: 'Override?',\n        sortable: false,\n        cellComponent: 'cell-dropdown-mega-grants',\n        width: '70px',\n        valuePath: 'isOverride',\n        extra: {\n          disabled: this.disableDropdowns\n        }\n      }];\n    }),\n    tableRows: Ember.computed('table', function () {\n      var rows = this.get('table.rows');\n      return rows;\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table', 'tableRows.@each', 'tableRows.@each.renews', 'tableRows.@each.isOverride', 'tableRows.@each.excludeFromHedgeChallenge', 'tableRows', function () {\n      var tableRows = this.tableRows;\n      tableRows.forEach(function (row) {\n        // Highlight rows if any defaults change\n        if (!row.get('renews') || row.get('isOverride') || row.get('excludeFromHedgeChallenge')) {\n          Ember.set(row, 'classNames', 'row-mega-changed');\n        } else {\n          Ember.set(row, 'classNames', '');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-base\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend({\n    actions: {\n      onScrolledToBottom: function onScrolledToBottom() {\n        if (this.onScrolledToBottom) {\n          this.onScrolledToBottom();\n        }\n      },\n      onColumnClick: function onColumnClick(column) {\n        if (this.onColumnClick) {\n          this.onColumnClick(column);\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-comparative-departments\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"b3i-analytics-web-app/utils/format-percentage\", \"b3i-analytics-web-app/utils/format-m-currency\"], function (_exports, _tableCommon, _formatPercentage, _formatMCurrency) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    columns: Ember.computed('columnNames', 'extra', function () {\n      var columnNames = this.columnNames;\n      var headerColumnNames = Object.keys(columnNames);\n      return [{\n        width: '200px',\n        sortable: false,\n        subColumns: [{\n          label: 'Department',\n          sortable: true,\n          valuePath: 'cellDeptData',\n          width: '200px',\n          cellComponent: 'cell-link-department'\n        }]\n      }, {\n        label: headerColumnNames[0],\n        sortable: false,\n        subColumns: [{\n          label: columnNames[headerColumnNames[0]][0].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[0]][0].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[0]][0].valuePath))\n        }, {\n          label: columnNames[headerColumnNames[0]][1].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[0]][1].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[0]][1].valuePath))\n        }, {\n          label: columnNames[headerColumnNames[0]][2].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          cellComponent: 'cell-percentage-non-bold',\n          valuePath: columnNames[headerColumnNames[0]][2].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[0]][2].valuePath)),\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatPercentage.default)(value, 0);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[0]][3].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[0]][3].valuePath,\n          cellClassNames: \"\".concat(Ember.String.dasherize(columnNames[headerColumnNames[0]][3].valuePath))\n        }]\n      }, {\n        label: headerColumnNames[1],\n        sortable: false,\n        subColumns: [{\n          label: columnNames[headerColumnNames[1]][0].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[1]][0].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[1]][0].valuePath)),\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return value.toFixed(1);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[1]][1].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[1]][1].valuePath,\n          cellClassNames: \"column-group-right \".concat(Ember.String.dasherize(columnNames[headerColumnNames[1]][1].valuePath))\n        }, {\n          label: columnNames[headerColumnNames[1]][2].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          cellComponent: 'cell-percentage-non-bold',\n          valuePath: columnNames[headerColumnNames[1]][2].valuePath,\n          cellClassNames: \"\".concat(Ember.String.dasherize(columnNames[headerColumnNames[1]][2].valuePath)),\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatPercentage.default)(value, 0);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[1]][3].name,\n          sortable: true,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[1]][3].valuePath,\n          cellClassNames: \"\".concat(Ember.String.dasherize(columnNames[headerColumnNames[1]][3].valuePath))\n        }]\n      }, {\n        label: headerColumnNames[2],\n        sortable: false,\n        subColumns: [{\n          label: columnNames[headerColumnNames[2]][0].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[2]][0].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[2]][0].valuePath)),\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return value.toFixed(1);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[2]][1].name,\n          sortable: true,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[2]][1].valuePath,\n          cellClassNames: Ember.String.dasherize(columnNames[headerColumnNames[2]][0].valuePath)\n        }]\n      }, {\n        label: \"\".concat(headerColumnNames[3], \" Sponsor Sub-Totals are not Available\"),\n        sortable: false,\n        cellClassNames: 'column-group-left',\n        subColumns: [{\n          label: columnNames[headerColumnNames[3]][0].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[3]][0].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[3]][0].valuePath)),\n          cellComponent: 'cell-money',\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatMCurrency.default)(value);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[3]][1].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[3]][1].valuePath,\n          cellComponent: 'cell-money',\n          cellClassNames: \"\".concat(Ember.String.dasherize(columnNames[headerColumnNames[3]][1].valuePath)),\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatMCurrency.default)(value);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[3]][2].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[3]][2].valuePath,\n          cellClassNames: \"column-group-left \".concat(Ember.String.dasherize(columnNames[headerColumnNames[3]][2].valuePath)),\n          cellComponent: 'cell-money',\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatMCurrency.default)(value);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          label: columnNames[headerColumnNames[3]][3].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[3]][3].valuePath,\n          cellClassNames: \"column-group-right  \".concat(Ember.String.dasherize(columnNames[headerColumnNames[3]][3].valuePath))\n        }, {\n          label: columnNames[headerColumnNames[3]][4].name,\n          sortable: true,\n          ascending: false,\n          align: 'center',\n          valuePath: columnNames[headerColumnNames[3]][4].valuePath,\n          cellClassNames: \"column-group-left  \".concat(Ember.String.dasherize(columnNames[headerColumnNames[3]][4].valuePath)),\n          cellComponent: 'cell-percentage-non-bold',\n          format: function format(value) {\n            if (value !== undefined && value) {\n              if (value === '-') {\n                return '-';\n              }\n\n              return (0, _formatPercentage.default)(value);\n            } else {\n              return null;\n            }\n          }\n        }]\n      }];\n    }),\n    extraObserver: Ember.observer('extra', 'model', function () {\n      var extra = this.extra;\n\n      if (extra) {\n        var table = this.table;\n        var rows = table.get('rows');\n        var columns = table.get('columns');\n\n        if (rows.length > 0) {\n          this.highlightColumns(rows, columns, extra);\n        }\n      }\n    }).on('init'),\n    highlightColumns: function highlightColumns(rows, columns, extra) {\n      var _this = this;\n\n      var declineMultiplier = extra.highlightLessThan / 100;\n      var gainMultiplier = extra.highlightGreaterThan / 100;\n      var totalOrAverageRow = null;\n\n      var _loop = function _loop(i) {\n        var classNamesString = 'dark-grey-text';\n        var row = rows[i];\n\n        if (i === 0) {\n          classNamesString = 'dark-grey-bg dark-grey-text row-border-bottom';\n          totalOrAverageRow = row.content;\n        }\n\n        var content = row.content;\n        extra.columnsToHighlight.forEach(function (columnName) {\n          // First row should be highlighted neutral\n          if (i === 0) {\n            classNamesString += \" highlight-neutral-\".concat(Ember.String.dasherize(columnName));\n          } else {\n            classNamesString = _this.highlightColumnClassNames(gainMultiplier, declineMultiplier, totalOrAverageRow, extra.deptCount, content, columnName, classNamesString);\n          } //Highlight the header of the column\n\n\n          columns.forEach(function (column) {\n            column.subColumns.forEach(function (subColumn) {\n              //Highlight the exact column or the associated rank column for proposal, success, actuals, and hit rates\n              if (subColumn.valuePath === columnName || subColumn.valuePath.includes(columnName) && subColumn.valuePath.includes('proposal') || subColumn.valuePath.includes(columnName) && subColumn.valuePath.includes('success') || subColumn.valuePath.includes(columnName) && subColumn.valuePath.includes('hit_rate') || subColumn.valuePath.includes(columnName) && subColumn.valuePath.includes('actuals')) {\n                subColumn.set('classNames', ['highlight']);\n              }\n            });\n          });\n        });\n        row.set('classNames', [classNamesString]);\n      };\n\n      for (var i = 0; i < rows.length; i++) {\n        _loop(i);\n      }\n    },\n    highlightColumnClassNames: function highlightColumnClassNames(gainMultiplier, declineMultiplier, totalOrAverageRow, deptCount, content, columnName, classNamesString) {\n      var avgValue = totalOrAverageRow[columnName]; //Certain columns are totals though we need averages to highlight\n\n      if (columnName === 'pi_count_tier') {\n        avgValue = totalOrAverageRow[columnName] / deptCount;\n      } else if (columnName === 'rank_pi_tier_dept') {\n        avgValue = deptCount / 2;\n      }\n\n      var shouldHighlightDecline = content[columnName] < declineMultiplier * avgValue;\n      var shouldHighlightGain = content[columnName] > gainMultiplier * avgValue; // Highlighting is reversed (lower number should be a \"gain\")\n\n      if (columnName.includes('rank')) {\n        shouldHighlightDecline = content[columnName] > declineMultiplier * avgValue;\n        shouldHighlightGain = content[columnName] < gainMultiplier * avgValue; //If both are true then this should be neutral\n\n        if (shouldHighlightDecline && shouldHighlightGain) {\n          shouldHighlightDecline = false;\n          shouldHighlightGain = false;\n        }\n      }\n\n      if (shouldHighlightDecline) {\n        classNamesString += \" highlight-decline-\".concat(Ember.String.dasherize(columnName));\n      } else if (shouldHighlightGain) {\n        classNamesString += \" highlight-gain-\".concat(Ember.String.dasherize(columnName));\n      } else {\n        classNamesString += \" highlight-neutral-\".concat(Ember.String.dasherize(columnName));\n      }\n\n      return classNamesString;\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-comparative-faculty\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableComparativeFaculty = (_dec = Ember.inject.service, _dec2 = Ember.computed, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableComparativeFaculty, _Ember$Component$exte);\n\n    var _super = _createSuper(TableComparativeFaculty);\n\n    function TableComparativeFaculty() {\n      var _this;\n\n      _classCallCheck(this, TableComparativeFaculty);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"sortValuePath\", 'actuals_one_year_ago_total');\n\n      return _this;\n    }\n\n    _createClass(TableComparativeFaculty, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: 'Faculty',\n          sortable: false,\n          width: '450px',\n          subColumns: [{\n            label: 'Category',\n            sortable: true,\n            valuePath: 'classify',\n            width: '75px',\n            cellClassNames: 'column-group-left',\n            format: function format(value) {\n              if (value === null || value === '') {\n                return 'Not Provided';\n              }\n\n              return value;\n            }\n          }, {\n            label: 'Department',\n            sortable: true,\n            valuePath: 'department',\n            width: '150px'\n          }, {\n            label: 'Hire Year',\n            sortable: true,\n            valuePath: 'hire_year',\n            width: '75px',\n            format: function format(value) {\n              if (value === null || value === undefined) {\n                return 'Not Provided';\n              }\n\n              return value;\n            }\n          }, {\n            label: 'Name',\n            sortable: true,\n            valuePath: 'cellLinkData',\n            width: '150px',\n            cellComponent: 'cell-link'\n          }]\n        }, {\n          label: \"Proposals \".concat(this.get('year.fiscalYear') - 5, \" to \").concat(this.get('year.fiscalYear') - 1),\n          sortable: false,\n          width: '300px',\n          subColumns: [{\n            align: 'right',\n            label: 'Avg/Year',\n            sortable: true,\n            valuePath: 'avg_proposals_per_year',\n            format: function format(value) {\n              if (value === null || value === undefined) {\n                return 'N/A';\n              } else if (value === 0) {\n                return 0;\n              }\n\n              return value.toFixed(1);\n            },\n            width: '75px',\n            cellClassNames: 'column-group-left'\n          }, {\n            align: 'right',\n            label: 'Funded',\n            sortable: true,\n            valuePath: 'funded_count',\n            width: '75px'\n          }, {\n            align: 'right',\n            label: 'Not Funded',\n            sortable: true,\n            valuePath: 'not_funded_count',\n            width: '75px'\n          }, {\n            align: 'right',\n            label: 'Hit Rate',\n            sortable: true,\n            valuePath: 'hit_rate',\n            format: function format(value) {\n              if (!value) {\n                return 0;\n              }\n\n              return (value * 100).toFixed(1);\n            },\n            cellComponent: 'cell-percentage-non-bold',\n            width: '75px'\n          }]\n        }, {\n          label: \"Actuals (m) \".concat(this.get('year.lastFiscalYear')),\n          sortable: false,\n          width: '225px',\n          subColumns: [{\n            align: 'right',\n            sortable: true,\n            label: 'Directs',\n            valuePath: 'actuals_one_year_ago_directs',\n            format: function format(value) {\n              if (!value) {\n                return 0;\n              }\n\n              return value / 1000;\n            },\n            cellComponent: 'cell-money-one-decimal',\n            width: '75px',\n            cellClassNames: 'column-group-left actuals'\n          }, {\n            align: 'right',\n            sortable: true,\n            label: 'Indirects',\n            format: function format(value) {\n              if (!value) {\n                return 0;\n              }\n\n              return value / 1000;\n            },\n            valuePath: 'actuals_one_year_ago_indirects',\n            cellComponent: 'cell-money-one-decimal',\n            cellClassNames: 'actuals',\n            width: '75px'\n          }, {\n            align: 'right',\n            sortable: true,\n            label: 'Total',\n            format: function format(value) {\n              if (!value) {\n                return 0;\n              }\n\n              return value / 1000;\n            },\n            valuePath: 'actuals_one_year_ago_total',\n            cellComponent: 'cell-money-one-decimal',\n            cellClassNames: 'actuals',\n            width: '75px'\n          }]\n        }];\n      }\n    }]);\n\n    return TableComparativeFaculty;\n  }(Ember.Component.extend(_tableCommon.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableComparativeFaculty;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-comparative-proposals-successes\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"b3i-analytics-web-app/utils/format-mm-currency\"], function (_exports, _tableCommon, _formatMmCurrency) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var columnWidth = '60px';\n  var TableComparativeProposalsSuccesses = (_dec = Ember.computed('selectedView'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableComparativeProposalsSuccesses, _Ember$Component$exte);\n\n    var _super = _createSuper(TableComparativeProposalsSuccesses);\n\n    function TableComparativeProposalsSuccesses() {\n      _classCallCheck(this, TableComparativeProposalsSuccesses);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableComparativeProposalsSuccesses, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          sortable: false,\n          width: '50px',\n          subColumns: [{\n            sortable: false,\n            label: 'FY',\n            valuePath: 'label',\n            width: '50px',\n            cellComponent: 'cell-label-column',\n            cellClassNames: 'grey-bg column-group-right row-label',\n            classNames: 'column-group-right'\n          }]\n        }, {\n          label: 'Month',\n          sortable: false,\n          subColumns: [{\n            align: 'right',\n            label: '1',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            cellClassNames: 'column-group-left',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[0]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '2',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[1]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '3',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[2]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '4',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[3]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '5',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[4]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '6',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[5]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '7',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[6]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '8',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[7]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '9',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[8]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '10',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[9]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '11',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[10]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }, {\n            align: 'right',\n            label: '12',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[11]);\n              } else {\n                return null;\n              }\n            },\n            width: columnWidth\n          }]\n        }, {\n          cellClassNames: 'column-group-left',\n          classNames: 'column-group-left',\n          sortable: false,\n          subColumns: [{\n            align: 'right',\n            label: 'YTD',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            cellClassNames: 'column-group-left',\n            classNames: 'column-group-left',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[12]);\n              } else {\n                return null;\n              }\n            },\n            width: '70px'\n          }, {\n            align: 'right',\n            label: 'Total',\n            valuePath: 'rowData',\n            cellComponent: 'cell-money-one-decimal',\n            sortable: false,\n            format: function format(value) {\n              if (value !== undefined) {\n                return (0, _formatMmCurrency.default)(value[13]);\n              } else {\n                return null;\n              }\n            },\n            width: '65px'\n          }]\n        }];\n      }\n    }]);\n\n    return TableComparativeProposalsSuccesses;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableComparativeProposalsSuccesses;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-comparative-statistics-pi\", [\"exports\", \"accounting/format-number\", \"accounting/format-money\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _formatNumber, _formatMoney, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableComparativeStatisticsPi = (_dec = Ember.inject.service, _dec2 = Ember.computed('selectedView'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableComparativeStatisticsPi, _Ember$Component$exte);\n\n    var _super = _createSuper(TableComparativeStatisticsPi);\n\n    function TableComparativeStatisticsPi() {\n      var _this;\n\n      _classCallCheck(this, TableComparativeStatisticsPi);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(TableComparativeStatisticsPi, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: '',\n          sortable: false,\n          valuePath: 'title',\n          width: '140px'\n        }, {\n          label: 'Rank',\n          sortable: false,\n          valuePath: 'rank',\n          width: '100px'\n        }, {\n          label: 'Department',\n          sortable: false,\n          valuePath: 'department',\n          width: '130px'\n        }, {\n          label: 'Sector',\n          sortable: false,\n          valuePath: 'sector.name',\n          width: '100px'\n        }, {\n          label: 'Sample',\n          sortable: false,\n          format: function format(value) {\n            if (value === 0) {\n              return '-';\n            }\n\n            return (0, _formatNumber.default)(value);\n          },\n          valuePath: 'sample',\n          align: 'right',\n          width: '40px'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear'), \" Directs\"),\n          sortable: false,\n          cellComponent: 'cell-money',\n          valuePath: 'directs',\n          width: '100px'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear'), \" MTDC\"),\n          sortable: false,\n          component: 'column-help-icon',\n          format: function format(value) {\n            if (value === 0) {\n              return 'Not Available';\n            }\n\n            return (0, _formatMoney.default)(value);\n          },\n          valuePath: 'modifiedDirects',\n          width: '120px',\n          extra: \"MTDC stands for Modified Total Direct Costs.  This metric excludes capital equipment purchases and sub-contracts from the expression of Direct Costs.  MTDC, if available, provides a more accurate measure of the direct research costs associated with the use of the PI's assigned lab space.  If MTDC is not available, Direct Costs/Sq. Ft. provides a measure that is not as reliable for comparative purposes.\"\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear'), \" Indirects\"),\n          sortable: false,\n          cellComponent: 'cell-money',\n          valuePath: 'indirects',\n          width: '110px',\n          cellClassNames: 'column-group-right',\n          classNames: 'column-group-right'\n        }, {\n          align: 'right',\n          label: 'Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value || value === Infinity) {\n              return 'Not Available';\n            }\n\n            return (0, _formatNumber.default)(value);\n          },\n          valuePath: 'squareFootage'\n        }, {\n          align: 'right',\n          label: 'Directs/Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value || value === Infinity) {\n              return 'Not Available';\n            }\n\n            return (0, _formatMoney.default)(value);\n          },\n          valuePath: 'directsPerSquareFoot'\n        }, {\n          align: 'right',\n          label: 'MTDC/Sq. Ft.',\n          sortable: false,\n          format: function format(value) {\n            if (Number.isNaN(value) || !value || value === Infinity) {\n              return 'Not Available';\n            }\n\n            return (0, _formatMoney.default)(value);\n          },\n          hidden: this.selectedView !== 'Dollar Density',\n          valuePath: 'modifiedDirectsPerSquareFoot'\n        }, {\n          align: 'right',\n          label: 'Indirects/Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value || value === Infinity) {\n              return 'Not Available';\n            }\n\n            return (0, _formatMoney.default)(value);\n          },\n          valuePath: 'indirectsPerSquareFoot'\n        }, {\n          align: 'right',\n          label: 'Directs/Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          cellComponent: 'cell-percentage-non-bold',\n          valuePath: 'directsComparison'\n        }, {\n          align: 'right',\n          label: 'MTDC/Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          valuePath: 'modifiedDirectsComparison',\n          cellComponent: 'cell-percentage-non-bold'\n        }, {\n          align: 'right',\n          label: 'Indirects/Sq. Ft.',\n          sortable: false,\n          hidden: this.selectedView !== 'Dollar Density',\n          cellComponent: 'cell-percentage-non-bold',\n          valuePath: 'indirectsComparison'\n        }, {\n          align: 'right',\n          label: 'Current 1.0 FTE Salary',\n          sortable: false,\n          hidden: this.selectedView !== 'Compensation',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value || value === Infinity) {\n              return 'Not Available';\n            }\n\n            return (0, _formatMoney.default)(value);\n          },\n          valuePath: 'salary'\n        }, {\n          align: 'right',\n          label: 'Comparative',\n          sortable: false,\n          hidden: this.selectedView !== 'Compensation',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value) {\n              return '-';\n            }\n\n            return \"\".concat(value, \"%\");\n          },\n          valuePath: 'compensationPercentile'\n        }, {\n          align: 'right',\n          label: 'Compensation Coverage',\n          sortable: false,\n          hidden: this.selectedView !== 'Compensation',\n          format: function format(value) {\n            if (Number.isNaN(value) || !value) {\n              return '-';\n            }\n\n            return \"\".concat(value, \"%\");\n          },\n          valuePath: 'averageCoverage'\n        }];\n      }\n    }]);\n\n    return TableComparativeStatisticsPi;\n  }(Ember.Component.extend(_tableCommon.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableComparativeStatisticsPi;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-comparative-statistics-proposals\", [\"exports\", \"accounting/format-number\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _formatNumber, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableComparativeStatisticsProposals = (_dec = Ember.computed, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableComparativeStatisticsProposals, _Ember$Component$exte);\n\n    var _super = _createSuper(TableComparativeStatisticsProposals);\n\n    function TableComparativeStatisticsProposals() {\n      _classCallCheck(this, TableComparativeStatisticsProposals);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableComparativeStatisticsProposals, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: '',\n          sortable: false,\n          subColumns: [{\n            label: '',\n            sortable: false,\n            width: '125px',\n            valuePath: 'name'\n          }]\n        }, {\n          label: '',\n          sortable: false,\n          classNames: 'column-group-left column-group-right',\n          cellClassNames: 'column-group-left',\n          subColumns: [{\n            label: 'Rank',\n            sortable: false,\n            valuePath: 'rank',\n            classNames: 'column-group-left',\n            cellClassNames: 'column-group-left'\n          }, {\n            label: 'Department',\n            sortable: false,\n            width: '150px',\n            valuePath: 'department'\n          }, {\n            label: 'Sector',\n            sortable: false,\n            valuePath: 'sector.name'\n          }, {\n            align: 'right',\n            label: 'Sample',\n            sortable: false,\n            format: function format(value) {\n              if (value === 0) {\n                return '-';\n              }\n\n              return (0, _formatNumber.default)(value);\n            },\n            valuePath: 'sample',\n            classNames: 'column-group-right',\n            cellClassNames: 'column-group-right'\n          }]\n        }, {\n          label: 'Avg Proposed/Year',\n          classNames: 'column-group-right',\n          sortable: false,\n          cellClassNames: 'column-group-right',\n          subColumns: [{\n            align: 'right',\n            label: 'Count',\n            sortable: false,\n            format: function format(value) {\n              return value.toFixed(1);\n            },\n            valuePath: 'proposedCount'\n          }, {\n            align: 'right',\n            label: 'Total',\n            sortable: false,\n            cellComponent: 'cell-money',\n            valuePath: 'proposedTotal',\n            classNames: 'column-group-right',\n            cellClassNames: 'column-group-right'\n          }]\n        }, {\n          label: 'Avg. Funded/Year',\n          sortable: false,\n          classNames: 'column-group-right',\n          cellClassNames: 'column-group-right',\n          subColumns: [{\n            align: 'right',\n            label: 'Count',\n            sortable: false,\n            format: function format(value) {\n              return value.toFixed(1);\n            },\n            valuePath: 'fundedCount'\n          }, {\n            align: 'right',\n            label: 'Total',\n            cellComponent: 'cell-money',\n            sortable: false,\n            valuePath: 'fundedTotal',\n            classNames: 'column-group-right',\n            cellClassNames: 'column-group-right'\n          }]\n        }, {\n          label: '',\n          sortable: false,\n          subColumns: [{\n            align: 'right',\n            label: 'Hit Rate',\n            sortable: false,\n            component: 'column-help-icon',\n            cellComponent: 'cell-percentage-non-bold',\n            extra: 'This is the simple ratio of proposals funded to proposals submitted. It is not sensitive to the dollar ' + 'value of proposals submitted and funded.',\n            valuePath: 'hitRate'\n          }, {\n            align: 'right',\n            label: 'Conversion Ratio',\n            component: 'column-help-icon',\n            sortable: false,\n            cellComponent: 'cell-percentage-non-bold',\n            valuePath: 'conversationRatio',\n            extra: 'This is the ratio of the dollar value of successes to the dollar value of the proposed from which those ' + 'successes have been derived.',\n            width: '160px'\n          }]\n        }];\n      }\n    }]);\n\n    return TableComparativeStatisticsProposals;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableComparativeStatisticsProposals;\n});","define(\"b3i-analytics-web-app/components/table-compensation-coverage\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"moment\"], function (_exports, _tableCommon, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    columns: Ember.computed(function () {\n      return [{\n        label: 'Category',\n        valuePath: 'category',\n        sortable: false,\n        cellClassNames: 'column-group-right'\n      }, {\n        label: 'ID',\n        sortable: false,\n        valuePath: 'grantId'\n      }, {\n        label: 'Start',\n        sortable: false,\n        valuePath: 'startDate',\n        format: function format(value) {\n          if (value !== undefined) {\n            return (0, _moment.default)(value).format('MM/DD/YY');\n          }\n\n          return '';\n        }\n      }, {\n        label: 'End',\n        sortable: false,\n        valuePath: 'endDate',\n        format: function format(value) {\n          //For total row\n          if (value === 'Coverage') {\n            return 'Coverage';\n          }\n\n          return (0, _moment.default)(value).format('MM/DD/YY');\n        },\n        cellClassNames: 'column-group-right coverage-total'\n      }, {\n        label: 'Current %',\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'annual',\n        align: 'right'\n      }, {\n        label: 'Future %',\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'future',\n        align: 'right'\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear')),\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'coverageCurrentYear',\n        align: 'right'\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 1),\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'coverageOneYearAhead',\n        align: 'right'\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 2),\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'coverageTwoYearsAhead',\n        align: 'right'\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 3),\n        cellComponent: 'cell-percentage',\n        sortable: false,\n        valuePath: 'coverageThreeYearsAhead',\n        align: 'right'\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      var length = table.get('rows.length');\n      rows.forEach(function (row, index) {\n        if (index === length - 1) {\n          Ember.set(row, 'classNames', 'row-grey-bg row-border-top');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-controls\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var TableControls = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(TableControls, _Ember$Component);\n\n    var _super = _createSuper(TableControls);\n\n    function TableControls() {\n      _classCallCheck(this, TableControls);\n\n      return _super.apply(this, arguments);\n    }\n\n    return TableControls;\n  }(Ember.Component)) || _class;\n\n  _exports.default = TableControls;\n});","define(\"b3i-analytics-web-app/components/table-core-detail\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"b3i-analytics-web-app/utils/format-percentage\", \"b3i-analytics-web-app/utils/format-mm-currency\"], function (_exports, _tableCommon, _formatPercentage, _formatMmCurrency) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    columns: Ember.computed('selectedView', function () {\n      return [{\n        sortable: false,\n        width: '40px',\n        classNames: 'column-group-right',\n        subColumns: [{\n          sortable: false,\n          label: 'Grant Type',\n          valuePath: 'label',\n          width: '130px',\n          cellComponent: 'cell-label-column',\n          cellClassNames: 'grey-bg column-group-right row-label',\n          classNames: 'column-group-right'\n        }]\n      }, {\n        label: 'Proposals (mm)',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearFourYearsAgo')),\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-left',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[0]) {\n              if (isNaN(value[0])) {\n                return value[0];\n              }\n\n              return (0, _formatMmCurrency.default)(value[0]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearThreeYearsAgo')),\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[1]) {\n              if (isNaN(value[1])) {\n                return \"<span class=\\\"scenario-label\\\">\".concat(value[1], \"</span>\");\n              }\n\n              return (0, _formatMmCurrency.default)(value[1]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearTwoYearsAgo')),\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[2]) {\n              if (isNaN(value[2])) {\n                return value[2];\n              }\n\n              return (0, _formatMmCurrency.default)(value[2]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear')),\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[3]) {\n              if (isNaN(value[3])) {\n                return value[3];\n              }\n\n              return (0, _formatMmCurrency.default)(value[3]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear'), \" (P)\"),\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[4]) {\n              if (isNaN(value[4])) {\n                return \"<span class=\\\"scenario-label\\\">\".concat(value[4], \"</span>\");\n              }\n\n              return (0, _formatMmCurrency.default)(value[4]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          width: '70px',\n          label: 'Var',\n          valuePath: 'rowData.proposals',\n          cellComponent: 'cell-variance-money',\n          cellClassNames: 'column-group-right',\n          classNames: 'column-group-right',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              if (isNaN(value[5])) {\n                return value[5];\n              }\n\n              return (0, _formatMmCurrency.default)(value[5]);\n            } else {\n              return null;\n            }\n          }\n        }]\n      }, {\n        sortable: false,\n        width: '40px',\n        classNames: 'column-group-right',\n        subColumns: [{\n          sortable: false,\n          label: 'Grant Type',\n          valuePath: 'label',\n          width: '130px',\n          cellComponent: 'cell-label-column',\n          cellClassNames: 'grey-bg column-group-right row-label',\n          classNames: 'column-group-right',\n          format: function format(value) {\n            if (value.hideTotals) {\n              return null;\n            }\n\n            return value;\n          }\n        }]\n      }, {\n        label: 'Conversion',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearThreeYearsAgo')),\n          valuePath: 'rowData.conversion_ratio',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[0]) {\n              if (value[0] === '-') {\n                return '-';\n              }\n\n              return \"\".concat((0, _formatPercentage.default)(value[0], 1), \"%\");\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearTwoYearsAgo')),\n          valuePath: 'rowData.conversion_ratio',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[1]) {\n              if (value[1] === '-') {\n                return '-';\n              }\n\n              if (isNaN(value[1])) {\n                return value[1];\n              } else {\n                return \"\".concat((0, _formatPercentage.default)(value[1], 1), \"%\");\n              }\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear')),\n          valuePath: 'rowData.conversion_ratio',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[2]) {\n              if (value[2] === '-') {\n                return '-';\n              }\n\n              return \"\".concat((0, _formatPercentage.default)(value[2], 1), \"%\");\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear'), \" (P)\"),\n          valuePath: 'rowData.conversion_ratio',\n          cellComponent: 'cell-non-escape',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined && value[3]) {\n              if (value[3] === '-') {\n                return '-';\n              }\n\n              if (isNaN(value[3])) {\n                return Ember.String.htmlSafe(\"<span class=\\\"scenario-label\\\">\".concat(value[3], \"</span>\"));\n              } else {\n                return \"\".concat((0, _formatPercentage.default)(value[3], 1), \"%\");\n              }\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          width: '70px',\n          label: 'Var',\n          valuePath: 'rowData.conversion_ratio',\n          cellComponent: 'cell-variance-percentage',\n          cellClassNames: 'column-group-right',\n          classNames: 'column-group-right',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              if (value[4] === '-') {\n                return '-';\n              }\n\n              if (isNaN(value[4])) {\n                return value[4];\n              } else {\n                return \"\".concat((0, _formatPercentage.default)(value[4], 1), \"%\");\n              }\n            } else {\n              return null;\n            }\n          }\n        }]\n      }, {\n        sortable: false,\n        width: '40px',\n        classNames: 'column-group-right',\n        cellClassNames: 'column-group-right',\n        subColumns: [{\n          sortable: false,\n          label: 'Grant Type',\n          valuePath: 'label',\n          width: '130px',\n          cellComponent: 'cell-label-column',\n          cellClassNames: 'grey-bg column-group-right row-label',\n          classNames: 'column-group-right'\n        }]\n      }, {\n        label: 'Successes (mm)',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearThreeYearsAgo')),\n          valuePath: 'rowData.successes',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _formatMmCurrency.default)(value[0]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYearTwoYearsAgo')),\n          valuePath: 'rowData.successes',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _formatMmCurrency.default)(value[1]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.lastFiscalYear')),\n          valuePath: 'rowData.successes',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _formatMmCurrency.default)(value[2]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear'), \" (P)\"),\n          valuePath: 'rowData.successes',\n          cellComponent: 'cell-money',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _formatMmCurrency.default)(value[3]);\n            } else {\n              return null;\n            }\n          }\n        }, {\n          align: 'right',\n          width: '70px',\n          label: 'Var',\n          valuePath: 'rowData.successes',\n          cellComponent: 'cell-variance-money',\n          cellClassNames: 'column-group-right',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _formatMmCurrency.default)(value[4]);\n            } else {\n              return null;\n            }\n          }\n        }]\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      rows.forEach(function (row) {\n        var label = row.get('label');\n\n        if (label === 'Non Fed') {\n          Ember.set(row, 'classNames', 'row-border-top');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-data-import\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"moment\"], function (_exports, _tableCommon, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableDataImport = (_dec = Ember.computed, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableDataImport, _Ember$Component$exte);\n\n    var _super = _createSuper(TableDataImport);\n\n    function TableDataImport() {\n      _classCallCheck(this, TableDataImport);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableDataImport, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: 'Import Date',\n          valuePath: 'createdAt',\n          width: '80px',\n          sortable: false,\n          format: function format(value) {\n            if (value !== undefined) {\n              return (0, _moment.default)(value).format('MM/DD/YY');\n            }\n\n            return '';\n          }\n        }, {\n          label: 'Imported By',\n          valuePath: 'user.name',\n          width: '120px',\n          classNames: 'column-group-right',\n          cellClassNames: 'column-group-right',\n          sortable: false\n        }, {\n          label: 'Faculty',\n          valuePath: 'faculty',\n          width: '80px',\n          classNames: 'column-group-left',\n          cellClassNames: 'column-group-left',\n          sortable: false\n        }, {\n          label: 'Proposals',\n          valuePath: 'proposals',\n          width: '80px',\n          sortable: false\n        }, {\n          label: 'Successes',\n          valuePath: 'successes',\n          width: '80px',\n          sortable: false\n        }, {\n          label: 'Actuals',\n          valuePath: 'actuals',\n          width: '80px',\n          sortable: false\n        }, {\n          label: 'Co-PI',\n          valuePath: 'coPis',\n          width: '80px',\n          sortable: false\n        }];\n      }\n    }]);\n\n    return TableDataImport;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableDataImport;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-data-mining\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableDataMining = (_dec = Ember.computed('selectedView', 'hideStatusColumn'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableDataMining, _Ember$Component$exte);\n\n    var _super = _createSuper(TableDataMining);\n\n    function TableDataMining() {\n      _classCallCheck(this, TableDataMining);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableDataMining, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: 'Investigator',\n          sortable: true,\n          valuePath: 'principalInvestigator.cellLinkData',\n          cellComponent: 'cell-link',\n          width: '120px'\n        }, {\n          label: 'PI ID',\n          sortable: true,\n          valuePath: 'principalInvestigator.upi'\n        }, {\n          label: 'Faculty Rank',\n          sortable: true,\n          valuePath: 'principalInvestigator.classify',\n          width: '100px'\n        }, {\n          label: 'Department',\n          sortable: true,\n          valuePath: 'department.name',\n          width: '150px'\n        }, {\n          label: 'Sponsor',\n          sortable: true,\n          cellClassNames: 'column-group-left',\n          classNames: 'column-group-left',\n          valuePath: 'sponsorTypeDisplay'\n        }, {\n          label: 'Short Title',\n          sortable: true,\n          valuePath: 'title',\n          width: '200px'\n        }, {\n          label: 'ID',\n          sortable: true,\n          valuePath: 'grantId'\n        }, {\n          label: 'FY Start',\n          sortable: true,\n          valuePath: 'startFiscalYear',\n          width: '70px'\n        }, {\n          label: 'Month',\n          sortable: true,\n          valuePath: 'startFiscalMonth',\n          width: '70px'\n        }, {\n          label: 'FY End',\n          sortable: true,\n          valuePath: 'endFiscalYear',\n          width: '70px'\n        }, {\n          label: 'Status',\n          sortable: true,\n          valuePath: 'status',\n          hidden: this.hideStatusColumn,\n          format: function format(value) {\n            if (value) {\n              var formatted = value.charAt(0).toUpperCase() + value.slice(1);\n              return formatted.replace('_', ' ');\n            }\n          }\n        }, {\n          label: 'Supplement',\n          sortable: true,\n          valuePath: 'supplement',\n          hidden: this.hideStatusColumn,\n          width: '100px',\n          format: function format(value) {\n            if (value) {\n              return 'Yes';\n            }\n\n            return 'No';\n          }\n        }, {\n          label: 'Directs',\n          align: 'right',\n          sortable: true,\n          cellClassNames: 'column-group-left',\n          classNames: 'column-group-left',\n          valuePath: 'directs',\n          cellComponent: 'cell-money'\n        }, {\n          label: 'Indirects',\n          align: 'right',\n          sortable: true,\n          valuePath: 'indirects',\n          cellComponent: 'cell-money'\n        }, {\n          label: 'Total',\n          align: 'right',\n          sortable: true,\n          valuePath: 'total',\n          cellComponent: 'cell-money'\n        }];\n      }\n    }]);\n\n    return TableDataMining;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableDataMining;\n});","define(\"b3i-analytics-web-app/components/table-grants\", [\"exports\", \"moment\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _moment, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    renewHelpText: Ember.computed('isActiveGrants', 'isCoPi', function () {\n      if (this.isActiveGrants) {\n        return \"If you have good reason to believe that this active grant will renew in your name as contact PI, select \\\"Yes\\\".  If you are certain this active grant will not renew, select \\\"No\\\". If there is a possibility that this grant might renew but it is too soon to say so with certainty, select \\\"Don’t Know\\\".\";\n      } else if (this.isCoPi) {\n        return \"If you have good reason to believe that this active grant will renew, select \\\"Yes\\\".  If you are certain this active grant will not renew, select \\\"No\\\". If there is a possibility that this grant might renew but it is too soon to say so with certainty, select \\\"Don’t Know\\\".\";\n      } else {\n        return \"If funding is certain based on priority score, status in Commons, or any other factor, note \\\"Yes\\\". If the proposal was not discussed or, for any other reason, is certain not to be funded note \\\"No\\\". If it is too soon to tell if a proposal is likely or unlikely to be funded, note \\\"Don't Know\\\".\";\n      }\n    }),\n    columns: Ember.computed('isExporting', function () {\n      return [{\n        label: 'Title',\n        cellComponent: 'cell-title-is-new',\n        valuePath: 'cellTitleData',\n        sortable: false,\n        //width: this.isExporting? '75px': '200px',\n        width: '200px'\n      }, {\n        label: 'ID',\n        valuePath: 'grantId',\n        sortable: false,\n        //width: this.isExporting ? '50px': '90px'\n        width: '90px'\n      }, {\n        label: 'Start',\n        valuePath: 'startDate',\n        sortable: false,\n        //width: this.isExporting? '50px': '75px',\n        width: '75px',\n        format: function format(value) {\n          return (0, _moment.default)(value).format('MM/DD/YY');\n        }\n      }, {\n        label: 'End',\n        valuePath: 'endDate',\n        sortable: false,\n        //width: this.isExporting ? '50px': '75px',\n        width: '75px',\n        format: function format(value) {\n          return (0, _moment.default)(value).format('MM/DD/YY');\n        }\n      }, {\n        label: 'Sponsor',\n        valuePath: 'sponsorTypeDisplay',\n        sortable: false,\n        //width: this.isExporting ? '65px': '100px'\n        width: '100px'\n      }, {\n        label: 'Renewal?',\n        valuePath: 'renewal',\n        sortable: false,\n        //width: this.isExporting? '40px': '95px',\n        width: '95px',\n        component: this.isExporting ? null : 'column-help-icon',\n        align: this.isExporting ? 'center' : null,\n        extra: 'If a competing renewal proposal appears and the ending grant it would renew also appears, it is important to take care not to duplicate by selecting “Yes” for both “Funded?” and “Renew?”.  If the funding for the competing proposal and the success it is renewing are about the same, it makes little difference which is selected except that the renewal proposal will be discounted a bit and the success will not.  If the competing renewal requests a significant increase in funding and the increase in funding is uncertain, it might be more appropriate to respond “No” for “Funded?” and “Yes” for “Renew?”.',\n        hidden: this.isActiveGrants || this.isCoPi,\n        format: function format(value) {\n          return value ? 'Yes' : 'No';\n        }\n      }, {\n        label: 'Directs',\n        valuePath: 'directs',\n        cellComponent: 'cell-money',\n        sortable: false,\n        //width: this.isExporting ? '50px': '100px',\n        width: '100px',\n        align: 'right'\n      }, {\n        label: 'Indirects',\n        valuePath: 'indirects',\n        cellComponent: 'cell-money',\n        sortable: false,\n        //width: this.isExporting ? '50px': '100px',\n        width: '100px',\n        align: 'right'\n      }, {\n        label: 'Total',\n        valuePath: 'total',\n        cellComponent: 'cell-money',\n        sortable: false,\n        //width: this.isExporting ? '50px': '100px',\n        width: '100px',\n        align: 'right'\n      }, {\n        label: \"\".concat(this.isActiveGrants || this.isCoPi ? 'Renew?' : 'Funded?'),\n        valuePath: \"\".concat(this.isActiveGrants || this.isCoPi ? 'renewProjection' : 'funded'),\n        //width: this.isExporting ? '50px': '90px',\n        width: '90px',\n        component: this.isExporting ? null : 'column-help-icon',\n        cellComponent: this.isExporting ? null : 'cell-dropdown-funded',\n        align: this.isExporting ? 'center' : null,\n        sortable: false,\n        extra: this.renewHelpText\n      }, {\n        label: 'Effort?',\n        valuePath: 'effort',\n        component: this.isExporting ? null : 'column-help-icon',\n        cellComponent: this.isExporting ? null : 'cell-dropdown-effort',\n        sortable: false,\n        extra: \"Note the approximate level of effort, and, therefore, percentage of compensation that will be charged to\\n        this grant if you have noted \\\"Yes\\\" for \".concat(this.isActiveGrants ? 'renewal' : 'funding', \". A reasonable estimate is perfectly acceptable for this purpose.\"),\n        //width: this.isExporting ? '50px': '90px',\n        width: '90px',\n        align: this.isExporting ? 'center' : null,\n        format: function format(value) {\n          return \"\".concat(value, \"%\");\n        }\n      }];\n    }),\n    tableRows: Ember.computed('table', function () {\n      var rows = this.get('table.rows');\n      return rows;\n    }),\n    // Add classes to grants table for styling\n    rowObserver: Ember.observer('tableRows', 'tableRows.@each.renews', 'tableRows.@each.funded', 'tableRows.@each.renewProjection', function () {\n      var tableRows = this.tableRows;\n      tableRows.forEach(function (row) {\n        if (row.get('renews') || row.get('funded') === 'Yes' || row.get('renewProjection') === 'Yes') {\n          Ember.set(row, 'classNames', 'row-pi-grant-changed');\n        } else {\n          Ember.set(row, 'classNames', '');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-institutions\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"moment\"], function (_exports, _tableCommon, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _obj;\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var _default = Ember.Component.extend(_tableCommon.default, (_dec = Ember.computed(), (_obj = {\n    get columns() {\n      return [{\n        label: 'Name',\n        sortable: false,\n        valuePath: 'name',\n        width: '200px'\n      }, {\n        label: 'Type',\n        sortable: false,\n        valuePath: 'type',\n        width: '200px'\n      }, {\n        label: 'Public/Private',\n        sortable: false,\n        valuePath: 'isPublicString',\n        width: '120px'\n      }, {\n        label: 'Medical School?',\n        sortable: false,\n        valuePath: 'isMedicalSchoolString',\n        width: '120px'\n      }, {\n        label: 'Fiscal Year End',\n        sortable: false,\n        valuePath: 'fiscalYearStartMonth',\n        format: function format(value) {\n          var endMonth = value - 2;\n\n          if (endMonth < 0) {\n            endMonth === 11;\n          }\n\n          return (0, _moment.default)().startOf('year').add(endMonth, 'month').endOf('month').format('MM/DD');\n        },\n        width: '100px'\n      }, {\n        label: 'State',\n        sortable: false,\n        cellClassNames: 'column-group-left',\n        valuePath: 'state',\n        width: '40px'\n      }, {\n        label: 'Region',\n        sortable: false,\n        valuePath: 'region',\n        width: '140px'\n      }, {\n        label: '',\n        cellClassNames: 'edit-user column-group-left',\n        sortable: false,\n        align: 'center',\n        valuePath: 'id',\n        cellComponent: 'cell-edit-institution',\n        width: '200px'\n      }];\n    }\n\n  }, (_applyDecoratedDescriptor(_obj, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_obj, \"columns\"), _obj)), _obj)));\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-investigators\", [\"exports\", \"b3i-analytics-web-app/utils/highlight-pts-cells\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _highlightPtsCells, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var subColumnWidth = '90px';\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    isMega: false,\n    columns: Ember.computed('modelLength', 'riskDeclineNum', 'riskLapseNum', 'extra.includePlanPts', function () {\n      var includePlanPts;\n\n      if (this.extra) {\n        includePlanPts = this.extra.includePlanPts;\n      }\n\n      return [{\n        sortable: false,\n        component: 'column-at-risk',\n        classNames: 'column-no-padding',\n        subColumns: [{\n          label: \"\".concat(this.modelLength === undefined ? 0 : this.modelLength, \" \").concat(this.displayType),\n          valuePath: 'cellLinkData',\n          width: '150px',\n          cellComponent: 'cell-link'\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYearTwoYearsAgo'), \" Actuals\"),\n        sortable: false,\n        width: '200px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'actualsTwoYearsAgoDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'actualsTwoYearsAgoIndirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.lastFiscalYear'), \" Actuals\"),\n        sortable: false,\n        width: '200px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'actualsOneYearAgoDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left actuals'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'actualsOneYearAgoIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'actuals',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear'), \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanCurrentYearDirects' : 'ptsCurrentYearDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left current-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanCurrentYearIndirects' : 'ptsCurrentYearIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right current-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 1, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanOneYearAheadDirects' : 'ptsOneYearAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left one-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanOneYearAheadIndirects' : 'ptsOneYearAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right one-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 2, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanTwoYearsAheadDirects' : 'ptsTwoYearsAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left two-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanTwoYearsAheadIndirects' : 'ptsTwoYearsAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right two-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 3, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanThreeYearsAheadDirects' : 'ptsThreeYearsAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left two-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanThreeYearsAheadIndirects' : 'ptsThreeYearsAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right two-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: 'Pending Proposals',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'pendingAllYearsDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'pendingAllYearsIndirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth\n        }]\n      }];\n    }),\n    riskDeclineNum: 0,\n    riskLapseNum: 0,\n    extraObserver: Ember.observer('extra', 'model', 'table.rows.[]', function () {\n      var extra = this.extra;\n\n      if (extra) {\n        if (extra.nearTermDecline) {\n          var table = this.table;\n          var rows = table.get('rows');\n\n          if (rows && rows.length > 0) {\n            (0, _highlightPtsCells.default)(rows, extra.nearTermDecline, extra.includePlanPts); //Add a dark grey background to the first three rows\n\n            this.addDarkBackgroundToRow(rows[0]);\n            this.addDarkBackgroundToRow(rows[1]);\n            this.addDarkBackgroundToRow(rows[2]);\n\n            if (extra.showingSubtotals) {\n              this.addDarkBackgroundToRow(rows[3]);\n              this.addDarkBackgroundToRow(rows[4]);\n            }\n\n            var includePlanPts = this.extra.includePlanPts;\n\n            if (includePlanPts) {\n              for (var i = 0; i < this.model.length; i++) {\n                var row = rows[i]; // Highlight rows for pis that have plans when filter is enabled\n\n                if (!includePlanPts) {\n                  Ember.set(row, 'classNames', row.get('classNames').replace('row-pi-grant-changed', ''));\n                } else {\n                  if (row.get('plan')) {\n                    Ember.set(row, 'classNames', \"\".concat(row.get('classNames'), \" row-pi-grant-changed\"));\n                  } else {\n                    Ember.set(row, 'classNames', row.get('classNames').replace('row-pi-grant-changed', ''));\n                  }\n                }\n              }\n            }\n          }\n        }\n\n        if (extra.modelLength) {\n          this.set('modelLength', extra.modelLength);\n        }\n      }\n    }).on('init'),\n    tableRows: Ember.computed('table', function () {\n      var rows = this.get('table.rows');\n      return rows;\n    }),\n    addDarkBackgroundToRow: function addDarkBackgroundToRow(row) {\n      var rowClassNames = row.get('classNames');\n      rowClassNames[0] += ' dark-grey-bg row-border-bottom';\n      row.set('classNames', rowClassNames);\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-mega-grants-summary-spending\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableMegaGrantsSummarySpending = (_dec = Ember.inject.service, _dec2 = Ember.computed('historicColumnsClass'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableMegaGrantsSummarySpending, _Ember$Component$exte);\n\n    var _super = _createSuper(TableMegaGrantsSummarySpending);\n\n    function TableMegaGrantsSummarySpending() {\n      var _this;\n\n      _classCallCheck(this, TableMegaGrantsSummarySpending);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(TableMegaGrantsSummarySpending, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: '',\n          sortable: false,\n          valuePath: 'directsOrIndirects'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear')),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsCurrentYear'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear') + 1),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsOneYearAhead'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear') + 2),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsTwoYearsAhead'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear') + 3),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsThreeYearsAhead'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear') + 4),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsFourYearsAhead'\n        }, {\n          align: 'right',\n          label: \"\".concat(this.get('year.fiscalYear') + 5),\n          sortable: false,\n          cellComponent: 'cell-money-one-decimal',\n          valuePath: 'ptsFiveYearsAhead'\n        }];\n      }\n    }]);\n\n    return TableMegaGrantsSummarySpending;\n  }(Ember.Component.extend(_tableCommon.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableMegaGrantsSummarySpending;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-pending-mega\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TablePendingMega = (_dec = Ember.computed, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TablePendingMega, _Ember$Component$exte);\n\n    var _super = _createSuper(TablePendingMega);\n\n    function TablePendingMega() {\n      _classCallCheck(this, TablePendingMega);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TablePendingMega, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: 'Start',\n          sortable: false,\n          valuePath: 'start'\n        }, {\n          align: 'right',\n          cellComponent: 'cell-money',\n          label: 'Directs',\n          sortable: false,\n          valuePath: 'directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          cellComponent: 'cell-money',\n          sortable: false,\n          valuePath: 'indirects'\n        }, {\n          align: 'right',\n          label: 'Total',\n          cellComponent: 'cell-money',\n          sortable: false,\n          valuePath: 'total'\n        }, {\n          align: 'right',\n          label: 'Count',\n          sortable: false,\n          valuePath: 'count'\n        }];\n      }\n    }]);\n\n    return TablePendingMega;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TablePendingMega;\n});","define(\"b3i-analytics-web-app/components/table-pi-projections\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    currentUser: Ember.inject.service('current-user'),\n    columns: Ember.computed(function () {\n      return [{\n        label: '',\n        sortable: false,\n        subColumns: [{\n          label: '',\n          sortable: false,\n          valuePath: 'grantType',\n          cellClassNames: 'grey-bg row-label',\n          width: this.isExporting ? '100px' : '150px'\n        }, {\n          label: '',\n          sortable: false,\n          valuePath: 'directsOrIndirects',\n          cellClassNames: 'column-group-right grey-bg row-label'\n        }]\n      }, {\n        label: 'Actual',\n        sortable: false,\n        subColumns: [{\n          label: \"\".concat(this.get('year.fiscalYear') - 5),\n          sortable: false,\n          valuePath: 'actualsFiveYearsAgo',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-left',\n          align: 'right'\n        }, {\n          label: \"\".concat(this.get('year.fiscalYear') - 4),\n          sortable: false,\n          valuePath: 'actualsFourYearsAgo',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(this.get('year.fiscalYear') - 3),\n          sortable: false,\n          valuePath: 'actualsThreeYearsAgo',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(this.get('year.fiscalYear') - 2),\n          sortable: false,\n          valuePath: 'actualsTwoYearsAgo',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(this.get('year.fiscalYear') - 1),\n          sortable: false,\n          valuePath: 'actualsOneYearAgo',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right',\n          align: 'right'\n        }]\n      }, {\n        label: \"Potential to Spend and Earn Indirects as of \".concat(this.get('currentUser.asOfDate')),\n        sortable: false,\n        subColumns: [{\n          label: \"\".concat(this.get('year.fiscalYear')),\n          sortable: false,\n          valuePath: 'ptsCurrentYear',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-left',\n          align: 'right'\n        }, {\n          label: \"\".concat(parseInt(this.get('year.fiscalYear')) + 1),\n          sortable: false,\n          valuePath: 'ptsOneYearAhead',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(parseInt(this.get('year.fiscalYear')) + 2),\n          sortable: false,\n          valuePath: 'ptsTwoYearsAhead',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(parseInt(this.get('year.fiscalYear')) + 3),\n          sortable: false,\n          valuePath: 'ptsThreeYearsAhead',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }, {\n          label: \"\".concat(parseInt(this.get('year.fiscalYear')) + 4),\n          sortable: false,\n          valuePath: 'ptsFourYearsAhead',\n          cellComponent: 'cell-money',\n          align: 'right'\n        }]\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      rows.forEach(function (row, index) {\n        if (index % 2 === 0) {\n          Ember.set(row, 'classNames', 'top-row');\n        } else {\n          Ember.set(row, 'classNames', 'bottom-row');\n        }\n\n        if (index < 2 || index > 7) {\n          if (index % 2 === 0) {\n            Ember.set(row, 'classNames', 'row-grey-bg top-row');\n          } else {\n            Ember.set(row, 'classNames', 'row-grey-bg bottom-row');\n          }\n        }\n\n        if (index === 1) {\n          Ember.set(row, 'classNames', 'row-grey-bg row-border-bottom bottom-row');\n        }\n\n        if (index === 8) {\n          Ember.set(row, 'classNames', 'row-grey-bg row-border-top top-row');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-potential-to-spend\", [\"exports\", \"b3i-analytics-web-app/utils/highlight-pts-cells\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _highlightPtsCells, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var subColumnWidth = '90px';\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    currentUser: Ember.inject.service('current-user'),\n    isMega: false,\n    columns: Ember.computed('modelLength', 'extra.includePlanPts', function () {\n      var includePlanPts;\n\n      if (this.extra) {\n        includePlanPts = this.extra.includePlanPts;\n      }\n\n      return [{\n        sortable: false,\n        component: 'column-at-risk',\n        classNames: 'column-no-padding',\n        subColumns: [{\n          label: \"\".concat(this.modelLength === undefined ? 0 : this.modelLength, \" \").concat(this.displayType),\n          valuePath: 'cellLinkData',\n          width: '150px',\n          cellComponent: 'cell-link',\n          cellClassNames: 'highlight-root-cell',\n          classNames: 'investigator-column'\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYearTwoYearsAgo'), \" Actuals\"),\n        sortable: false,\n        width: '200px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'actualsTwoYearsAgoDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'actualsTwoYearsAgoIndirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.lastFiscalYear'), \" Actuals\"),\n        sortable: false,\n        width: '200px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'actualsOneYearAgoDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left actuals'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'actualsOneYearAgoIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'actuals',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear'), \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanCurrentYearDirects' : 'ptsCurrentYearDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left current-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanCurrentYearIndirects' : 'ptsCurrentYearIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right current-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 1, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanOneYearAheadDirects' : 'ptsOneYearAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left one-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanOneYearAheadIndirects' : 'ptsOneYearAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right one-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 2, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanTwoYearsAheadDirects' : 'ptsTwoYearsAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left two-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanTwoYearsAheadIndirects' : 'ptsTwoYearsAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right two-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 3, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanThreeYearsAheadDirects' : 'ptsThreeYearsAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left two-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanThreeYearsAheadIndirects' : 'ptsThreeYearsAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right two-year-indirects',\n          width: subColumnWidth\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear') + 4, \" Potential Excluding Pending Proposals\"),\n        width: '350px',\n        sortable: false,\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: includePlanPts ? 'ptsWithPlanFourYearsAheadDirects' : 'ptsFourYearsAheadDirects',\n          cellComponent: 'cell-money',\n          width: subColumnWidth,\n          cellClassNames: 'column-group-left two-year-directs'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: includePlanPts ? 'ptsWithPlanFourYearsAheadIndirects' : 'ptsFourYearsAheadIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right two-year-indirects',\n          width: subColumnWidth\n        }]\n      }];\n    }),\n    extraObserver: Ember.observer('extra', 'model', function () {\n      var extra = this.extra;\n\n      if (extra) {\n        if (extra.nearTermDecline) {\n          var table = this.table;\n          var rows = table.get('rows');\n\n          if (rows.length > 0) {\n            (0, _highlightPtsCells.default)(rows, extra.nearTermDecline, extra.includePlanPts); //Highlight the institutional total row\n\n            if (this.displayType === \"Investigators\") {\n              this.addDarkBackgroundToRow(rows[0]);\n              this.addDarkBackgroundToRow(rows[1]);\n              this.addDarkBackgroundToRow(rows[2]);\n            } else {\n              this.addDarkBackgroundToRow(rows[0]);\n            }\n\n            var includePlanPts = extra.includePlanPts;\n\n            if (includePlanPts) {\n              for (var i = 0; i < this.model.length; i++) {\n                var row = rows[i]; // Highlight rows for pis that have plans when filter is enabled\n\n                if (!includePlanPts) {\n                  Ember.set(row, 'classNames', row.get('classNames').replace('row-pi-grant-changed', ''));\n                } else {\n                  if (row.get('plan')) {\n                    Ember.set(row, 'classNames', \"\".concat(row.get('classNames'), \" row-pi-grant-changed\"));\n                  } else {\n                    Ember.set(row, 'classNames', row.get('classNames').replace('row-pi-grant-changed', ''));\n                  }\n                }\n              }\n            }\n          }\n        }\n\n        if (extra.modelLength) {\n          this.set('modelLength', extra.modelLength);\n        }\n      }\n    }).on('init'),\n    addDarkBackgroundToRow: function addDarkBackgroundToRow(row) {\n      var rowClassNames = row.get('classNames');\n      rowClassNames[0] += ' dark-grey-bg row-border-bottom';\n      row.set('classNames', rowClassNames);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-projections-core-mega-future\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    columns: Ember.computed('startYear', function () {\n      //Use a static start year or use the FY for the school\n      var startYear = this.startYear ? this.startYear : this.get('year.fiscalYear');\n      return [{\n        label: '',\n        sortable: false,\n        valuePath: 'type'\n      }, {\n        label: '',\n        sortable: false,\n        valuePath: 'directsOrIndirects'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsCurrentYear'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 1),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsOneYearAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 2),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsTwoYearsAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 3),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsThreeYearsAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 4),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsFourYearsAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 5),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsFiveYearsAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 6),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsSixYearsAhead'\n      }, {\n        align: 'right',\n        label: \"\".concat(startYear + 7),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsSevenYearsAhead'\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table.rows.@each', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      rows.forEach(function (row, index) {\n        var rowClass = '';\n\n        if (index === 2 || index === 4) {\n          rowClass += ' row-border-top';\n        }\n\n        Ember.set(row, 'classNames', rowClass);\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-projections-core-mega-prior\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    year: Ember.inject.service(),\n    columns: Ember.computed(function () {\n      return [{\n        label: '',\n        sortable: false,\n        valuePath: 'type'\n      }, {\n        label: '',\n        sortable: false,\n        valuePath: 'directsOrIndirects'\n      }, {\n        align: 'right',\n        label: \"\".concat(this.get('year.fiscalYear') - 5),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsFiveYearsAgo'\n      }, {\n        align: 'right',\n        label: \"\".concat(this.get('year.fiscalYear') - 4),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsFourYearsAgo'\n      }, {\n        align: 'right',\n        label: \"\".concat(this.get('year.fiscalYear') - 3),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsThreeYearsAgo'\n      }, {\n        align: 'right',\n        label: \"\".concat(this.get('year.fiscalYear') - 2),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsTwoYearsAgo'\n      }, {\n        align: 'right',\n        label: \"\".concat(this.get('year.fiscalYear') - 1),\n        sortable: false,\n        cellComponent: 'cell-money-one-decimal',\n        valuePath: 'ptsOneYearAgo'\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table.rows.@each', 'selectedGrantType', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      var grant = this.selectedGrantType.toLowerCase();\n      rows.forEach(function (row, index) {\n        var rowClass = '';\n\n        if (index === 2 || index === 4) {\n          rowClass += ' row-border-top';\n        }\n\n        if (grant !== 'all') {\n          if (index > 1) {\n            rowClass += ' dark-grey-bg dark-grey-text';\n          }\n        }\n\n        Ember.set(row, 'classNames', rowClass);\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-projections-proposals-conversions\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableProjectionsProposalsConversions = (_dec = Ember.inject.service, _dec2 = Ember.computed, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableProjectionsProposalsConversions, _Ember$Component$exte);\n\n    var _super = _createSuper(TableProjectionsProposalsConversions);\n\n    function TableProjectionsProposalsConversions() {\n      var _this;\n\n      _classCallCheck(this, TableProjectionsProposalsConversions);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(TableProjectionsProposalsConversions, [{\n      key: \"columns\",\n      get: function get() {\n        return [{\n          label: '',\n          sortable: false,\n          subColumns: [{\n            label: 'Grant Types',\n            sortable: false,\n            valuePath: 'grantType'\n          }]\n        }, {\n          label: '',\n          sortable: false,\n          subColumns: [{\n            label: \"\".concat(this.get('year.fiscalYear') - 1, \"(mm)\"),\n            sortable: false,\n            align: 'right',\n            valuePath: 'proposalsOneYearAgo'\n          }]\n        }, {\n          label: 'Core Proposals % Change',\n          sortable: false,\n          subColumns: [{\n            label: \"\".concat(this.get('year.fiscalYear')),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'proposalsChangeCurrentYear'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 1),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'proposalsChangeOneYearAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 2),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'proposalsChangeTwoYearsAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 3),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'proposalsChangeThreeYearsAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 4),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'proposalsChangeFourYearsAhead'\n          }]\n        }, {\n          label: '',\n          sortable: false,\n          subColumns: [{\n            label: \"\".concat(this.get('year.fiscalYear') - 1, \"(%)\"),\n            align: 'right',\n            sortable: false,\n            valuePath: 'conversationRatioOneYearAgo'\n          }]\n        }, {\n          label: 'Core Conversion Ratio % Change',\n          sortable: false,\n          subColumns: [{\n            label: \"\".concat(this.get('year.fiscalYear')),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'conversionRatioChangeCurrentYear'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 1),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'conversionRatioChangeOneYearAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 2),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'conversionRatioChangeTwoYearsAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 3),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'conversionRatioChangeThreeYearsAhead'\n          }, {\n            label: \"\".concat(this.get('year.fiscalYear') + 4),\n            sortable: false,\n            cellComponent: 'cell-input-percentage',\n            valuePath: 'conversionRatioChangeFourYearsAhead'\n          }]\n        }];\n      }\n    }]);\n\n    return TableProjectionsProposalsConversions;\n  }(Ember.Component.extend(_tableCommon.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableProjectionsProposalsConversions;\n});","define(\"b3i-analytics-web-app/components/table-proposal-history\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"b3i-analytics-web-app/utils/title-case\"], function (_exports, _tableCommon, _titleCase) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Component.extend(_tableCommon.default, {\n    columns: Ember.computed('selectedView', function () {\n      return [{\n        label: 'FY',\n        sortable: false,\n        valuePath: 'displayYear',\n        width: '50px',\n        cellClassNames: 'grey-bg column-group-right row-label',\n        classNames: 'column-group-right'\n      }, {\n        label: 'Sponsor',\n        sortable: false,\n        valuePath: 'sponsorTypeDisplay',\n        width: '120px'\n      }, {\n        label: 'Title',\n        sortable: false,\n        valuePath: 'title',\n        width: '200px',\n        format: function format(value) {\n          return (0, _titleCase.default)(value);\n        },\n        cellClassNames: 'column-group-right',\n        classNames: 'column-group-right'\n      }, {\n        label: 'ID',\n        sortable: false,\n        valuePath: 'grantId',\n        width: '100px'\n      }, {\n        label: 'Status',\n        sortable: false,\n        valuePath: 'status',\n        width: '110px',\n        component: 'column-help-icon',\n        extra: \"The administrator of this application has set 12/1/2017 as the cutoff date for pending proposals.  \" + \"Proposals with start dates prior to this date are classified as “Not Funded” even if the proposal database still \" + \"lists them as Pending. If proposals that are reclassified in this manner are, in fact, subsequently funded, that \" + \"change in status will be noted when the proposal data is posted.\",\n        cellClassNames: 'column-group-right',\n        classNames: 'column-group-right',\n        format: function format(value) {\n          if (value === 'not_funded') {\n            return 'Not Funded';\n          }\n\n          return value.charAt(0).toUpperCase() + value.slice(1);\n        }\n      }, {\n        label: 'Directs',\n        sortable: false,\n        valuePath: 'directs',\n        cellComponent: 'cell-money',\n        align: 'right',\n        width: '100px'\n      }, {\n        label: 'Indirects',\n        sortable: false,\n        valuePath: 'indirects',\n        cellComponent: 'cell-money',\n        align: 'right',\n        width: '100px'\n      }, {\n        label: 'Total',\n        sortable: false,\n        valuePath: 'total',\n        cellComponent: 'cell-money',\n        align: 'right',\n        cellClassNames: 'column-group-right',\n        classNames: 'column-group-right',\n        width: '100px'\n      }, {\n        label: 'Funded Directs',\n        sortable: false,\n        valuePath: 'fundedDirects',\n        cellComponent: 'cell-money',\n        align: 'right',\n        width: '100px'\n      }, {\n        label: 'Funded Indirects',\n        sortable: false,\n        valuePath: 'fundedIndirects',\n        cellComponent: 'cell-money',\n        align: 'right',\n        width: '100px'\n      }, {\n        label: 'Funded Total',\n        sortable: false,\n        valuePath: 'fundedTotal',\n        cellComponent: 'cell-money',\n        align: 'right',\n        width: '100px'\n      }];\n    }),\n    // Add classes to projections table for styling\n    rowObserver: Ember.observer('table', function () {\n      var table = this.table;\n      var rows = table.get('rows');\n      rows.forEach(function (row, index) {\n        var fy = row.get('displayYear');\n\n        if (fy && index > 0) {\n          Ember.set(row, 'classNames', 'row-border-top');\n        }\n      });\n    }).on('init')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/components/table-users-admin\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\", \"moment\"], function (_exports, _tableCommon, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _obj;\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var _default = Ember.Component.extend(_tableCommon.default, (_dec = Ember.computed(), (_obj = {\n    get columns() {\n      return [{\n        label: 'Name',\n        sortable: false,\n        valuePath: 'nameComma',\n        width: '200px' //valuePath: 'cellLinkData',\n        //width: '150px',\n        //cellComponent: 'cell-link'\n\n      }, {\n        label: 'Email',\n        sortable: false,\n        valuePath: 'email',\n        width: '220px'\n      }, {\n        label: 'System Role',\n        sortable: false,\n        valuePath: 'systemRoleString',\n        width: '120px'\n      }, {\n        label: 'Instance Access',\n        sortable: false,\n        valuePath: 'instanceAccessCount',\n        width: '120px'\n      }, {\n        label: 'Last Activity',\n        sortable: false,\n        valuePath: 'lastActivity',\n        width: '100px',\n        format: function format(value) {\n          if (value) {\n            return (0, _moment.default)(value).format('MM-DD-YY HH:mm:ss');\n          }\n        }\n      }, {\n        label: '',\n        cellClassNames: 'edit-user',\n        sortable: false,\n        align: 'center',\n        valuePath: 'id',\n        cellComponent: 'cell-user-admin',\n        width: '200px'\n      }];\n    }\n\n  }, (_applyDecoratedDescriptor(_obj, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_obj, \"columns\"), _obj)), _obj)));\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-users\", [\"exports\", \"b3i-analytics-web-app/mixins/table-common\"], function (_exports, _tableCommon) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableUsers = (_dec = Ember.computed('typeSelection'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component$exte) {\n    _inherits(TableUsers, _Ember$Component$exte);\n\n    var _super = _createSuper(TableUsers);\n\n    function TableUsers() {\n      _classCallCheck(this, TableUsers);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableUsers, [{\n      key: \"columns\",\n      get: function get() {\n        if (this.typeSelection === 'membership') {\n          return [{\n            label: 'Email',\n            sortable: true,\n            valuePath: 'invitation.signupCode.email',\n            width: '220px'\n          }, {\n            label: 'Position',\n            sortable: true,\n            valuePath: 'position',\n            width: '150px'\n          }, {\n            label: 'Role',\n            sortable: true,\n            valuePath: 'role',\n            format: function format(value) {\n              if (value) {\n                return value.capitalize();\n              }\n            },\n            width: '150px'\n          }, {\n            label: 'Sector',\n            sortable: true,\n            valuePath: 'sectorNameDisplay',\n            width: '120px'\n          }, {\n            label: 'Department',\n            sortable: true,\n            valuePath: 'departmentNameDisplay',\n            width: '120px'\n          }, {\n            align: 'right',\n            sortable: false,\n            valuePath: 'id',\n            width: '300px',\n            cellClassNames: 'edit-user',\n            cellComponent: 'cell-edit-membership'\n          }];\n        } else {\n          return [{\n            label: 'Name',\n            sortable: true,\n            valuePath: 'user.nameComma',\n            width: '200px'\n          }, {\n            label: 'Email',\n            sortable: true,\n            valuePath: 'user.email',\n            width: '220px'\n          }, {\n            label: 'Position',\n            sortable: true,\n            valuePath: 'position',\n            width: '150px'\n          }, {\n            label: 'Role',\n            sortable: true,\n            valuePath: 'role',\n            format: function format(value) {\n              if (value) {\n                return value.capitalize();\n              }\n            },\n            width: '150px'\n          }, {\n            label: 'Sector',\n            sortable: true,\n            valuePath: 'sectorNameDisplay',\n            width: '120px'\n          }, {\n            label: 'Department',\n            sortable: true,\n            valuePath: 'departmentNameDisplay',\n            width: '120px'\n          }, {\n            align: 'right',\n            sortable: false,\n            valuePath: 'id',\n            width: '120px',\n            cellClassNames: 'edit-user',\n            cellComponent: 'cell-edit-user'\n          }];\n        }\n      }\n    }]);\n\n    return TableUsers;\n  }(Ember.Component.extend(_tableCommon.default)), (_applyDecoratedDescriptor(_class2.prototype, \"columns\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"columns\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableUsers;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/table-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var TableWrapper = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(TableWrapper, _Ember$Component);\n\n    var _super = _createSuper(TableWrapper);\n\n    function TableWrapper() {\n      _classCallCheck(this, TableWrapper);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(TableWrapper, [{\n      key: \"switchSelectedView\",\n      value: function switchSelectedView(option) {\n        this.switchAction(option);\n      }\n    }]);\n\n    return TableWrapper;\n  }(Ember.Component), (_applyDecoratedDescriptor(_class2.prototype, \"switchSelectedView\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"switchSelectedView\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = TableWrapper;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/validated-date-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ValidatedDateInput = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ValidatedDateInput, _Ember$Component);\n\n    var _super = _createSuper(ValidatedDateInput);\n\n    function ValidatedDateInput() {\n      _classCallCheck(this, ValidatedDateInput);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ValidatedDateInput;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ValidatedDateInput;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/validated-phone-number-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ValidatedPhoneNumberInput = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ValidatedPhoneNumberInput, _Ember$Component);\n\n    var _super = _createSuper(ValidatedPhoneNumberInput);\n\n    function ValidatedPhoneNumberInput() {\n      _classCallCheck(this, ValidatedPhoneNumberInput);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(ValidatedPhoneNumberInput, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ValidatedPhoneNumberInput.prototype), \"init\", this).apply(this, arguments);\n\n        var mask = ['(', /[1-9]/, /\\d/, /\\d/, ')', ' ', /\\d/, /\\d/, /\\d/, '-', /\\d/, /\\d/, /\\d/, /\\d/];\n        this.set('mask', mask);\n      }\n    }]);\n\n    return ValidatedPhoneNumberInput;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ValidatedPhoneNumberInput;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/validated-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ValidatedTextInput = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ValidatedTextInput, _Ember$Component);\n\n    var _super = _createSuper(ValidatedTextInput);\n\n    function ValidatedTextInput() {\n      _classCallCheck(this, ValidatedTextInput);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ValidatedTextInput;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ValidatedTextInput;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/components/value-or-not-provided\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ValueOrNotProvided = classic(_class = /*#__PURE__*/function (_Ember$Component) {\n    _inherits(ValueOrNotProvided, _Ember$Component);\n\n    var _super = _createSuper(ValueOrNotProvided);\n\n    function ValueOrNotProvided() {\n      _classCallCheck(this, ValueOrNotProvided);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ValueOrNotProvided;\n  }(Ember.Component)) || _class;\n\n  _exports.default = ValueOrNotProvided;\n});","define(\"b3i-analytics-web-app/components/vertical-collection\", [\"exports\", \"@html-next/vertical-collection/components/vertical-collection/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _component.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _welcomePage.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/constants/errors\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    mapResponseErrors: function mapResponseErrors(response) {\n      var errors = [];\n\n      if (!response) {\n        return [\"Unknown error. Please try again later\"];\n      }\n\n      if (response.error) {\n        if (response.error === 'invalid_grant') {\n          return [\"Your username and password combination is not correct. Please try again.\"];\n        }\n      }\n\n      if (response.isAdapterError) {\n        errors = response.errors;\n      } else {\n        if (response.responseJSON) {\n          if (response.responseJSON.errors) {\n            errors = response.responseJSON.errors;\n          } else {\n            for (var key in response.responseJSON) {\n              if (response.responseJSON.hasOwnProperty(key)) {\n                errors.push(response.responseJSON[key]);\n              }\n            }\n\n            return [].concat.apply([], errors);\n          }\n        } else if (response.payload) {\n          if (response.payload.errors) {\n            errors = response.payload.errors;\n          }\n        } else {\n          return [\"Server error. Please try again later\"];\n        }\n      }\n\n      return errors.map(function (error) {\n        return error.detail;\n      });\n    },\n    presenceError: '{description} is a required field.'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/hit-rate-options\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    FIVE_YEAR: '5 Yr. Hit Rate',\n    THREE_YEAR: '3 Yr. Hit Rate'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/institution-properties\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var STATES = ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL', 'GA', 'HI', 'ID', 'IL', 'IN', 'IA', 'KS', 'KY', 'LA', 'ME', 'MD', 'MA', 'MI', 'MN', 'MS', 'MO', 'MT', 'NE', 'NV', 'NH', 'NJ', 'NM', 'NY', 'NC', 'ND', 'OH', 'OK', 'OR', 'PA', 'RI', 'SC', 'SD', 'TN', 'TX', 'UT', 'VT', 'VA', 'WA', 'WV', 'WI', 'WY', 'Wyoming', 'AS', 'GU', 'MP', 'PR', 'VI', 'INT'];\n  var TYPE_ACADEMIC = 'Academic Medical Center';\n  var TYPE_CHILDRENS = 'Children\\'s Hospital';\n  var TYPE_HIGHER_ED = 'Higher Education / University';\n  var TYPE_NON_ACADEMIC = 'Non-Academic Hospital';\n  var TYPE_OPTIONS = [TYPE_ACADEMIC, TYPE_CHILDRENS, TYPE_HIGHER_ED, TYPE_NON_ACADEMIC];\n  var PUBLIC_OPTIONS = ['Public', 'Private'];\n  var REGION_OPTIONS = ['South', 'West', 'Northeast', 'Midwest', 'International'];\n  var _default = {\n    TYPE_ACADEMIC: TYPE_ACADEMIC,\n    TYPE_CHILDRENS: TYPE_CHILDRENS,\n    TYPE_HIGHER_ED: TYPE_HIGHER_ED,\n    TYPE_NON_ACADEMIC: TYPE_NON_ACADEMIC,\n    TYPE_OPTIONS: TYPE_OPTIONS,\n    PUBLIC_OPTIONS: PUBLIC_OPTIONS,\n    REGION_OPTIONS: REGION_OPTIONS,\n    STATES: STATES\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/roles\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    ADMIN: 'admin',\n    EXECUTIVE: 'executive',\n    SECTOR: 'sector',\n    DEPARTMENT: 'department',\n    SYSTEM_ROLE_HURON_ADMIN: 'huron_admin',\n    SYSTEM_ROLE_HURON_EXEC: 'huron_executive',\n    SYSTEM_ROLE_USER: 'user'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/sponsor-types\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    NIH: 'NIH',\n    FFT: 'Fed Flow Thru',\n    NonFed: 'Non Fed',\n    OtherFed: 'Other Fed',\n    Sponsor5: 'Sponsor 5',\n    Sponsor6: 'Sponsor 6',\n    Sponsor7: 'Sponsor 7'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/tiers\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    QUARTILE_OPTION_TOP_10: 'Top 10%',\n    QUARTILE_OPTION_TOP_25: 'Top 25%',\n    QUARTILE_OPTION_MID_TIER: 'Mid Tier (26% - 74%)',\n    QUARTILE_OPTION_LOW_TIER: 'Lower Tier (0% to 25%)'\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/constants/validations\", [\"exports\", \"b3i-analytics-web-app/constants/errors\", \"ember-cp-validations\"], function (_exports, _errors, _emberCpValidations) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var password = {\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Password'\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Your password must be at least 8 characters.'\n    })],\n    confirmPassword: (0, _emberCpValidations.validator)('confirmation', {\n      on: 'password',\n      message: 'Passwords do not match.'\n    })\n  };\n  var _default = {\n    Password: password\n  };\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var AdminController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember._action, _dec4 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(AdminController, _Ember$Controller);\n\n    var _super = _createSuper(AdminController);\n\n    function AdminController() {\n      var _this;\n\n      _classCallCheck(this, AdminController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(AdminController, [{\n      key: \"toggleAccountDropdown\",\n      value: function toggleAccountDropdown() {\n        this.toggleProperty('isShowingAccountDropdown');\n      }\n    }, {\n      key: \"logout\",\n      value: function logout() {\n        this.session.invalidate();\n      }\n    }]);\n\n    return AdminController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"toggleAccountDropdown\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleAccountDropdown\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"logout\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"logout\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = AdminController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/admin/institutions\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/institution-properties\"], function (_exports, _object, _errors, _environment, _institutionProperties) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _class, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var AdminInstitutionsController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = (0, _object.observes)('typeSelection', 'roleSelection', 'searchTerm', 'publicSelection', 'medicalSelection', 'regionSelection'), _dec5 = (0, _object.observes)('search'), _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, (_class = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(AdminInstitutionsController, _Ember$Controller);\n\n    var _super = _createSuper(AdminInstitutionsController);\n\n    function AdminInstitutionsController() {\n      var _this;\n\n      _classCallCheck(this, AdminInstitutionsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"router\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor3, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"typeSelection\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"publicSelection\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"medicalSelection\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"regionSelection\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"searchTerm\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"search\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", 'name');\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingEditModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingAddModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      return _this;\n    }\n\n    _createClass(AdminInstitutionsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(AdminInstitutionsController.prototype), \"init\", this).apply(this, arguments); //Setup the filter options\n\n\n        this.set('typeOptions', ['All'].concat(_institutionProperties.default.TYPE_OPTIONS));\n        this.set('publicOptions', ['All'].concat(_institutionProperties.default.PUBLIC_OPTIONS));\n        this.set('medicalOptions', ['All', 'Yes', 'No']);\n        this.set('regionOptions', ['All'].concat(_institutionProperties.default.REGION_OPTIONS));\n      }\n    }, {\n      key: \"queryChanged\",\n      value: function queryChanged() {\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"searchChanged\",\n      value: function searchChanged() {\n        Ember.run.debounce(this, this.setSearchTerm, 500);\n      }\n    }, {\n      key: \"setSearchTerm\",\n      value: function setSearchTerm() {\n        this.set('searchTerm', this.search);\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData() {\n        var _this2 = this;\n\n        this.set('isLoading', true);\n        var queryParams = {};\n        var type = this.typeSelection;\n        var search = this.searchTerm;\n        var publicSelection = this.publicSelection;\n        var medical = this.medicalSelection;\n        var region = this.regionSelection;\n        this.set('model', []);\n\n        if (search.length) {\n          queryParams.search = search;\n        }\n\n        if (type !== 'All') {\n          queryParams.type = type;\n        }\n\n        if (publicSelection !== 'All') {\n          queryParams.is_public = publicSelection === 'Public';\n        }\n\n        if (medical !== 'All') {\n          queryParams.is_medical_school = medical === \"Yes\";\n        }\n\n        if (region !== 'All') {\n          queryParams.region = region;\n        }\n\n        this.set('queryParams', queryParams);\n        this.store.query('team', queryParams).then(function (teams) {\n          _this2.set('model', teams.toArray());\n\n          _this2.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"toggleAddModal\",\n      value: function toggleAddModal(isClearing) {\n        //Create a new record and show the add/edit modal\n        var newInstitution = this.store.createRecord('team', {\n          fiscalYearStartMonth: 7,\n          state: 'AL',\n          isPublic: true,\n          isMedicalSchool: true,\n          type: _institutionProperties.default.TYPE_ACADEMIC\n        });\n        this.set('selectedInstitution', newInstitution);\n        this.set(\"createdInstitution\", false);\n\n        if (!isClearing) {\n          this.toggleProperty('isShowingEditModal');\n        }\n\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleEditModal\",\n      value: function toggleEditModal(institution) {\n        if (institution) {\n          this.set('selectedInstitution', institution);\n        }\n\n        this.toggleProperty('isShowingEditModal');\n        this.set(\"createdInstitution\", false);\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleDeleteModal\",\n      value: function toggleDeleteModal(institution) {\n        if (institution) {\n          this.set('selectedInstitution', institution);\n        }\n\n        this.toggleProperty('isShowingDeleteModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"typeOptionChanged\",\n      value: function typeOptionChanged(value) {\n        this.set('typeSelection', value);\n      }\n    }, {\n      key: \"publicOptionChanged\",\n      value: function publicOptionChanged(value) {\n        this.set('publicSelection', value);\n      }\n    }, {\n      key: \"medicalOptionChanged\",\n      value: function medicalOptionChanged(value) {\n        this.set('medicalSelection', value);\n      }\n    }, {\n      key: \"regionOptionChanged\",\n      value: function regionOptionChanged(value) {\n        this.set('regionSelection', value);\n      }\n    }, {\n      key: \"deleteInstitution\",\n      value: function deleteInstitution() {\n        var _this3 = this;\n\n        return this.selectedInstitution.destroyRecord().then(function () {\n          _this3.model.removeObject(_this3.selectedInstitution);\n\n          _this3.set('selectedInstitution', null);\n\n          _this3.set('isShowingDeleteModal', false);\n        }).catch(function (response) {\n          _this3.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"viewInstitution\",\n      value: function viewInstitution(institution, route) {\n        var _this4 = this;\n\n        //Switch the requesting admin's membership to the selected instiution\n        var membershipId = this.currentUser.user.membership.get(\"id\");\n        var membership = this.store.peekRecord(\"membership\", membershipId);\n        var data = membership.serialize();\n        data[\"data\"][\"relationships\"][\"team\"] = {\n          data: {\n            id: institution.id,\n            type: \"teams\"\n          }\n        };\n        data[\"data\"][\"id\"] = membership.get(\"id\");\n        this.ajax.patch(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/memberships/\").concat(membership.get(\"id\"), \"/\"), {\n          headers: {\n            'Content-Type': 'application/vnd.api+json'\n          },\n          data: data\n        }).then(function () {\n          //Clear out the session storage\n          window.sessionStorage.clear();\n\n          _this4.currentUser.load(); //View the institution in a new tab\n\n\n          var defaultRoute = 'app.projections.index';\n\n          var url = _this4.router.urlFor(route ? route : defaultRoute);\n\n          window.open(url);\n        }).catch(function (response) {\n          console.log(response);\n\n          _this4.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"saveAction\",\n      value: function saveAction(institution) {\n        var _this5 = this;\n\n        var isNew = institution.isNew;\n        this.set('errors', null);\n        this.set('showError', true);\n\n        if (!institution.name) {\n          this.set(\"errors\", [\"A name is required.\"]);\n          return Ember.RSVP.reject();\n        }\n\n        return institution.save().then(function () {\n          _this5.fetchFilteredData();\n\n          if (isNew) {\n            _this5.set(\"createdInstitution\", true);\n          } else {\n            _this5.set('isShowingEditModal', false);\n          }\n        }).catch(function (response) {\n          _this5.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }]);\n\n    return AdminInstitutionsController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"router\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"ajax\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class.prototype, \"queryChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, \"queryChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"searchChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, \"searchChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleAddModal\", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleAddModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleEditModal\", [_dec7], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleEditModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleDeleteModal\", [_dec8], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleDeleteModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"typeOptionChanged\", [_dec9], Object.getOwnPropertyDescriptor(_class.prototype, \"typeOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"publicOptionChanged\", [_dec10], Object.getOwnPropertyDescriptor(_class.prototype, \"publicOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"medicalOptionChanged\", [_dec11], Object.getOwnPropertyDescriptor(_class.prototype, \"medicalOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"regionOptionChanged\", [_dec12], Object.getOwnPropertyDescriptor(_class.prototype, \"regionOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"deleteInstitution\", [_dec13], Object.getOwnPropertyDescriptor(_class.prototype, \"deleteInstitution\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"viewInstitution\", [_dec14], Object.getOwnPropertyDescriptor(_class.prototype, \"viewInstitution\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"saveAction\", [_dec15], Object.getOwnPropertyDescriptor(_class.prototype, \"saveAction\"), _class.prototype)), _class));\n  _exports.default = AdminInstitutionsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/admin/users/index\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _object, _errors, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _class, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var AdminUsersController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = (0, _object.observes)('systemRoleSelection', 'institutionSelection', 'searchTerm'), _dec5 = (0, _object.observes)('search'), _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, (_class = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(AdminUsersController, _Ember$Controller);\n\n    var _super = _createSuper(AdminUsersController);\n\n    function AdminUsersController() {\n      var _this;\n\n      _classCallCheck(this, AdminUsersController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"router\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor3, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"systemRoleSelection\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"institutionSelection\", '0');\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"searchTerm\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"search\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingAddModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      return _this;\n    }\n\n    _createClass(AdminUsersController, [{\n      key: \"init\",\n      value: function init() {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(AdminUsersController.prototype), \"init\", this).apply(this, arguments); //Setup the filter options\n\n\n        this.set('systemRoleOptions', ['All'].concat(\"Huron Admin\", \"Huron Executive\", \"User\")); // For now\n\n        this.set('institutionOptions', [{\n          value: '0',\n          display: 'All Institutions'\n        }]);\n        this.ajax.request(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/teams/\")).then(function (response) {\n          _this2.store.pushPayload('team', response);\n\n          var teamOptions = response.data.map(function (team) {\n            return {\n              value: team.id,\n              display: team.attributes.name\n            };\n          }).sort(function (a, b) {\n            return a.display > b.display;\n          });\n\n          _this2.set('institutionOptions', [{\n            value: '0',\n            display: 'All Institutions'\n          }].concat(teamOptions));\n        });\n      }\n    }, {\n      key: \"queryChanged\",\n      value: function queryChanged() {\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"searchChanged\",\n      value: function searchChanged() {\n        Ember.run.debounce(this, this.setSearchTerm, 500);\n      }\n    }, {\n      key: \"setSearchTerm\",\n      value: function setSearchTerm() {\n        this.set('searchTerm', this.search);\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData() {\n        var _this3 = this;\n\n        this.set('isLoading', true);\n        var queryParams = {\n          admin: true\n        };\n        var systemRole = this.systemRoleSelection;\n        var institution = this.institutionSelection;\n        var search = this.searchTerm;\n        this.set('model', []);\n\n        if (search.length) {\n          queryParams.search = search;\n        }\n\n        if (systemRole !== 'All') {\n          queryParams.system_role = Ember.String.underscore(systemRole.toLowerCase());\n        }\n\n        if (institution && institution !== '0') {\n          queryParams.team_id = institution;\n        }\n\n        queryParams.page = 1;\n        this.set('queryParams', queryParams);\n        return this.store.query('user', queryParams).then(function (users) {\n          _this3.set('model', users.toArray());\n\n          _this3.set('meta', users.get('meta'));\n\n          _this3.set('isLoading', false);\n\n          _this3.set('page', 1);\n        });\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this4 = this;\n\n        var pagination = this.get('meta.pagination');\n        var queryParams = this.queryParams; //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.set('isLoading', true);\n            var params = queryParams;\n            params.page = params.page + 1;\n            this.store.query('user', params).then(function (users) {\n              _this4.incrementProperty('page');\n\n              _this4.model.pushObjects(users.toArray());\n\n              _this4.set('meta', users.get('meta'));\n\n              _this4.set('isLoading', false);\n            }).catch(function () {\n              //TODO: Handle error\n              _this4.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"toggleAddModal\",\n      value: function toggleAddModal() {\n        this.toggleProperty('isShowingAddModal');\n      }\n    }, {\n      key: \"toggleDeleteModal\",\n      value: function toggleDeleteModal(user) {\n        if (user) {\n          this.set('selectedUser', user);\n        }\n\n        this.toggleProperty('isShowingDeleteModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"systemRoleOptionChanged\",\n      value: function systemRoleOptionChanged(value) {\n        this.set('systemRoleSelection', value);\n      }\n    }, {\n      key: \"institutionOptionChanged\",\n      value: function institutionOptionChanged(value) {\n        this.set('institutionSelection', value);\n      }\n    }, {\n      key: \"resendInvitation\",\n      value: function resendInvitation() {//TODO\n        //this.set('publicSelection', value);\n      }\n    }, {\n      key: \"deleteUser\",\n      value: function deleteUser() {\n        var _this5 = this;\n\n        return this.selectedUser.destroyRecord().then(function () {\n          _this5.model.removeObject(_this5.selectedUser);\n\n          _this5.set('selectedUser', null);\n\n          _this5.set('isShowingDeleteModal', false);\n        }).catch(function (response) {\n          _this5.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"viewUser\",\n      value: function viewUser(user) {\n        var _this6 = this;\n\n        Ember.run(function () {\n          _this6.transitionToRoute('admin.users.user', user.id);\n        });\n      }\n    }, {\n      key: \"createUser\",\n      value: function createUser(data, team) {\n        var _this7 = this;\n\n        return this.ajax.post(\"\".concat(_environment.default.host, \"/api/v1/teams/\").concat(team, \"/invite-user/\"), {\n          contentType: 'application/json',\n          dataType: 'json',\n          data: JSON.stringify(data)\n        }).then(function () {\n          _this7.toggleAddModal();\n\n          _this7.model.reload();\n        }).catch(function (response) {\n          _this7.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }]);\n\n    return AdminUsersController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"router\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"ajax\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class.prototype, \"queryChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, \"queryChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"searchChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, \"searchChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"handlePagination\", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, \"handlePagination\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleAddModal\", [_dec7], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleAddModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleDeleteModal\", [_dec8], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleDeleteModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"systemRoleOptionChanged\", [_dec9], Object.getOwnPropertyDescriptor(_class.prototype, \"systemRoleOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"institutionOptionChanged\", [_dec10], Object.getOwnPropertyDescriptor(_class.prototype, \"institutionOptionChanged\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"resendInvitation\", [_dec11], Object.getOwnPropertyDescriptor(_class.prototype, \"resendInvitation\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"deleteUser\", [_dec12], Object.getOwnPropertyDescriptor(_class.prototype, \"deleteUser\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"viewUser\", [_dec13], Object.getOwnPropertyDescriptor(_class.prototype, \"viewUser\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"createUser\", [_dec14], Object.getOwnPropertyDescriptor(_class.prototype, \"createUser\"), _class.prototype)), _class));\n  _exports.default = AdminUsersController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/admin/users/user\", [\"exports\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _errors, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var AdminUsersUserController = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, (_class = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(AdminUsersUserController, _Ember$Controller);\n\n    var _super = _createSuper(AdminUsersUserController);\n\n    function AdminUsersUserController() {\n      var _this;\n\n      _classCallCheck(this, AdminUsersUserController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingEditModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDeleteModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isLoading\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(AdminUsersUserController, [{\n      key: \"toggleEditUserModal\",\n      value: function toggleEditUserModal() {\n        this.toggleProperty('isShowingEditUserModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleDeleteUserModal\",\n      value: function toggleDeleteUserModal() {\n        this.toggleProperty('isShowingDeleteUserModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleIsShowingAddAccess\",\n      value: function toggleIsShowingAddAccess() {\n        if (!this.isShowingAddAccess) {\n          this.set('newAccess', this.store.createRecord('user-team-access', {\n            'user': this.model.user,\n            'role': 'admin',\n            'sectors': []\n          }));\n        }\n\n        this.toggleProperty('isShowingAddAccess');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleEditAccessModal\",\n      value: function toggleEditAccessModal() {\n        this.toggleProperty('isShowingEditAccessModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"toggleDeleteAccessModal\",\n      value: function toggleDeleteAccessModal() {\n        this.toggleProperty('isShowingDeleteAccessModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"saveNewAccess\",\n      value: function saveNewAccess() {\n        var _this2 = this;\n\n        // Set the team to the first option if the user never selected one\n        if (!this.newAccess.team) {\n          var team = this.store.peekRecord('team', this.teamOptions[0][\"value\"]);\n          this.set('newAccess.team', team);\n        } //Role should be lowercased\n\n\n        this.set('newAccess.role', this.newAccess.role.toLowerCase());\n        return this.newAccess.save().then(function () {\n          _this2.toggleProperty('isShowingAddAccess');\n\n          _this2.set('model.userTeamAccess', _this2.store.query('user-team-access', {\n            adapterOptions: {\n              user: _this2.model.user.get(\"id\"),\n              institution_access: true\n            }\n          }));\n        }).catch(function (response) {\n          _this2.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"saveAccess\",\n      value: function saveAccess(access) {\n        var _this3 = this;\n\n        //Role should be lowercased\n        access.set('role', access.role.toLowerCase());\n        return access.save().then(function () {\n          _this3.model.userTeamAccess.reload();\n        }).catch(function (response) {\n          _this3.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"deleteAccess\",\n      value: function deleteAccess(access) {\n        var _this4 = this;\n\n        return access.destroyRecord().then(function () {\n          _this4.model.userTeamAccess.reload();\n        }).catch(function (response) {\n          _this4.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"saveUser\",\n      value: function saveUser(name, email, systemRole) {\n        var _this5 = this;\n\n        var firstName = name.substr(0, name.indexOf(' '));\n        var lastName = name.substr(name.indexOf(' ') + 1);\n        var data = {\n          first_name: firstName,\n          last_name: lastName,\n          system_role: Ember.String.underscore(systemRole),\n          email: email\n        };\n        this.set('errors', null);\n        return this.ajax.patch(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/users/\").concat(this.model.user.get(\"id\"), \"/?admin=true\"), {\n          headers: {\n            'Content-Type': 'application/json'\n          },\n          data: data\n        }).then(function () {\n          _this5.set('isShowingEditUserModal', false);\n\n          _this5.model.user.reload({\n            adapterOptions: {\n              admin: true\n            }\n          });\n\n          _this5.model.userTeamAccess.reload();\n        }).catch(function (response) {\n          _this5.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"deleteUser\",\n      value: function deleteUser() {\n        var _this6 = this;\n\n        return this.model.user.destroyRecord().then(function () {\n          _this6.set('isShowingDeleteUserModal', false);\n\n          _this6.transitionToRoute('admin.users');\n        }).catch(function (response) {\n          _this6.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }]);\n\n    return AdminUsersUserController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class.prototype, \"toggleEditUserModal\", [_dec2], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleEditUserModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleDeleteUserModal\", [_dec3], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleDeleteUserModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleIsShowingAddAccess\", [_dec4], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleIsShowingAddAccess\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleEditAccessModal\", [_dec5], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleEditAccessModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"toggleDeleteAccessModal\", [_dec6], Object.getOwnPropertyDescriptor(_class.prototype, \"toggleDeleteAccessModal\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"saveNewAccess\", [_dec7], Object.getOwnPropertyDescriptor(_class.prototype, \"saveNewAccess\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"saveAccess\", [_dec8], Object.getOwnPropertyDescriptor(_class.prototype, \"saveAccess\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"deleteAccess\", [_dec9], Object.getOwnPropertyDescriptor(_class.prototype, \"deleteAccess\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"saveUser\", [_dec10], Object.getOwnPropertyDescriptor(_class.prototype, \"saveUser\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"deleteUser\", [_dec11], Object.getOwnPropertyDescriptor(_class.prototype, \"deleteUser\"), _class.prototype)), _class));\n  _exports.default = AdminUsersUserController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/mixins/permissions-check\", \"b3i-analytics-web-app/utils/airtable-content-from-route\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _object, _permissionsCheck, _airtableContentFromRoute, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var AppController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = Ember.computed('welcome.firstTime'), _dec5 = Ember.computed('currentUser.asOfQueryString'), _dec6 = Ember.computed('currentUser.team.logo'), _dec7 = Ember.computed('currentUser.team.name'), _dec8 = Ember.computed('currentUser.team.logo'), _dec9 = Ember.computed('currentUser.user.teamsAccess'), _dec10 = Ember.inject.service, _dec11 = (0, _object.observes)('router.currentRoute.name', 'commentaryContent', 'routesArray'), _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(AppController, _Ember$Controller$ext);\n\n    var _super = _createSuper(AppController);\n\n    function AppController() {\n      var _this;\n\n      _classCallCheck(this, AppController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"welcome\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"router\", _descriptor3, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingTeamSwitcherModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingAccountDropdown\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor4, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(AppController, [{\n      key: \"findCommentaryContentForRoute\",\n      value: function findCommentaryContentForRoute() {\n        var content = this.commentaryContent;\n        var currentRoute = this.router.currentRoute.name;\n        var routesArray = this.routesArray;\n\n        if (content && currentRoute && routesArray) {\n          this.set('filteredCommentaryContent', (0, _airtableContentFromRoute.default)(content, routesArray, currentRoute));\n        }\n      }\n    }, {\n      key: \"commentaryObserver\",\n      value: function commentaryObserver() {\n        this.router.currentURL;\n        this.findCommentaryContentForRoute();\n      }\n    }, {\n      key: \"adminPanelClicked\",\n      value: function adminPanelClicked() {\n        this.transitionToRoute('admin.institutions');\n      }\n    }, {\n      key: \"toggleAccountDropdown\",\n      value: function toggleAccountDropdown() {\n        this.toggleProperty('isShowingAccountDropdown');\n      }\n    }, {\n      key: \"toggleTeamSwitcherModal\",\n      value: function toggleTeamSwitcherModal() {\n        this.toggleProperty('isShowingTeamSwitcherModal');\n      }\n    }, {\n      key: \"closeWelcomeModal\",\n      value: function closeWelcomeModal() {\n        this.set('welcome.firstTime', false);\n      }\n    }, {\n      key: \"helpLinkClicked\",\n      value: function helpLinkClicked() {\n        this.set('welcome.firstTime', false);\n        this.transitionToRoute('app.help.introduction');\n      }\n    }, {\n      key: \"logout\",\n      value: function logout() {\n        this.session.invalidate();\n      }\n    }, {\n      key: \"showWelcomeModal\",\n      get: function get() {\n        return this.welcome.firstTime;\n      }\n    }, {\n      key: \"lastImportedString\",\n      get: function get() {\n        var asOfQueryString = this.currentUser.asOfQueryString;\n\n        if (asOfQueryString) {\n          return asOfQueryString;\n        }\n\n        return 'No data imported';\n      }\n    }, {\n      key: \"institutionLogo\",\n      get: function get() {\n        var logo = this.currentUser.team.logo;\n        if (logo) return logo;else return \"/img/huron-logo-horizontal.svg\";\n      }\n    }, {\n      key: \"institutionLogoName\",\n      get: function get() {\n        if (this.currentUser.team.logo) return this.currentUser.team.name;else return \"Huron Analytics\";\n      }\n    }, {\n      key: \"institutionLogoClasses\",\n      get: function get() {\n        var logo = this.currentUser.team.logo;\n        if (logo) return \"logo-nav custom\";else return \"logo-nav\";\n      }\n    }, {\n      key: \"showTeamSwitcherOption\",\n      get: function get() {\n        var systemRole = this.currentUser.user.get('profile.systemRole');\n\n        if (systemRole === _roles.default.SYSTEM_ROLE_HURON_ADMIN || systemRole === _roles.default.SYSTEM_ROLE_HURON_EXEC) {\n          return true;\n        }\n\n        return this.currentUser.user.instanceAccessCount > 1;\n      }\n    }]);\n\n    return AppController;\n  }(Ember.Controller.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"welcome\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"router\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"showWelcomeModal\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"showWelcomeModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"lastImportedString\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"lastImportedString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"institutionLogo\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"institutionLogo\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"institutionLogoName\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"institutionLogoName\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"institutionLogoClasses\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"institutionLogoClasses\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showTeamSwitcherOption\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"showTeamSwitcherOption\"), _class2.prototype), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec10], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"commentaryObserver\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"commentaryObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"adminPanelClicked\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"adminPanelClicked\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleAccountDropdown\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleAccountDropdown\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleTeamSwitcherModal\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleTeamSwitcherModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"closeWelcomeModal\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"closeWelcomeModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"helpLinkClicked\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"helpLinkClicked\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"logout\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"logout\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = AppController;\n});","define(\"b3i-analytics-web-app/controllers/app/comparative/departments\", [\"exports\", \"b3i-analytics-web-app/mixins/permissions-check\", \"jquery\", \"b3i-analytics-web-app/utils/percentiles-from-quartile\", \"b3i-analytics-web-app/constants/tiers\"], function (_exports, _permissionsCheck, _jquery, _percentilesFromQuartile, _tiers) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\n  function _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\n  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  var DEFAULT_HIRE_YEAR = '------';\n  var DEFAULT_HIGHLIGHT_COLUMN = {\n    value: 'Select column',\n    valuePath: ''\n  };\n  var QUARTILE_OPTION_NO_ACTIVITY = 'No {year} Activity';\n  var NO_SCENARIO = {\n    id: 0,\n    name: 'No scenario'\n  };\n\n  var _default = Ember.Controller.extend(_permissionsCheck.default, {\n    ajax: Ember.inject.service(),\n    currentUser: Ember.inject.service(),\n    year: Ember.inject.service(),\n    page: 1,\n    selectedClassify: 'All',\n    selectedQuartile: _tiers.default.QUARTILE_OPTION_TOP_25,\n    selectedSponsorType: 'All',\n    selectedHireYearFilter: 'All',\n    selectedHireYear: DEFAULT_HIRE_YEAR,\n    sortString: 'department_name',\n    highlightLessThan: 80,\n    highlightGreaterThan: 120,\n    selectedHighlightColumn1: DEFAULT_HIGHLIGHT_COLUMN,\n    selectedHighlightColumn2: DEFAULT_HIGHLIGHT_COLUMN,\n    selectedHighlightColumn3: DEFAULT_HIGHLIGHT_COLUMN,\n    // eslint-disable-next-line ember/avoid-leaking-state-in-ember-objects\n    defaultAllSectorOption: {\n      isGroupName: true,\n      value: 'All Sectors'\n    },\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      if (!this.selectedSector) {\n        this.set('selectedSector', this.defaultAllSectorOption);\n      }\n\n      this.set('sponsorTypeOptions', this.currentUser.sponsorlist);\n      this.set('classifyOptions', ['All', 'Junior', 'Senior', 'Other']);\n      QUARTILE_OPTION_NO_ACTIVITY = QUARTILE_OPTION_NO_ACTIVITY.replace('{year}', this.year.lastFiscalYear);\n      this.set('quartileOptions', [_tiers.default.QUARTILE_OPTION_TOP_10, _tiers.default.QUARTILE_OPTION_TOP_25, _tiers.default.QUARTILE_OPTION_MID_TIER, _tiers.default.QUARTILE_OPTION_LOW_TIER, QUARTILE_OPTION_NO_ACTIVITY]); // Set hire year options\n\n      if (this.get('currentUser.team.hasHireDate')) {\n        this.set('hireYearOptions', ['All', 'Before', 'In', 'After']); // Generate the last 40 years as options for the hire year dropdown\n\n        var range = _toConsumableArray(Array(41).keys());\n\n        var currentYear = this.year.fiscalYear;\n        this.set('hireYearListOptions', [DEFAULT_HIRE_YEAR].concat(range.map(function (i) {\n          return (currentYear - i).toString();\n        })));\n        this.set('disableHireYearOptions', false);\n      } else {\n        this.set('hireYearOptions', ['All']);\n        this.set('hireYearOptionsDisabled', true);\n      }\n\n      var scenarioOptions = [NO_SCENARIO, {\n        id: -1,\n        name: null\n      }, {\n        id: 1,\n        name: 'Proposal Count and Hit Rates',\n        indexes: [3, 4],\n        sortString: 'proposal_count_per_year'\n      }, {\n        id: 2,\n        name: 'Proposal Count and 2019 Total $$',\n        indexes: [3, 8],\n        sortString: 'proposal_count_per_year'\n      }, {\n        id: 3,\n        name: 'Proposal Count and Success Count',\n        indexes: [3, 5],\n        sortString: 'proposal_count_per_year'\n      }, {\n        id: 4,\n        name: 'Proposal Count and Tier % Rank',\n        indexes: [3, 2],\n        sortString: 'proposal_count_per_year'\n      }, {\n        id: 5,\n        name: 'Hit Rate and 2019 Total $$',\n        indexes: [4, 8],\n        sortString: 'proposal_hit_rate_avg'\n      }, {\n        id: 6,\n        name: 'Hit Rate and Tier % Rank',\n        indexes: [4, 2],\n        sortString: 'proposal_hit_rate_avg'\n      }, {\n        id: 7,\n        name: 'Hit Rate and Success Count',\n        indexes: [4, 5],\n        sortString: 'proposal_hit_rate_avg'\n      }, {\n        id: 8,\n        name: 'Success Count and Tier % Rank',\n        indexes: [5, 2],\n        sortString: 'success_count_per_year'\n      }, {\n        id: 9,\n        name: 'Success Count and 2019 Total $$',\n        indexes: [5, 8],\n        sortString: 'success_count_per_year'\n      }, {\n        id: 10,\n        name: 'Tier % Rank and 2019 Total $$',\n        indexes: [2, 8],\n        sortString: 'rank_pi_tier_dept'\n      }];\n\n      if (!this.selectedScenarioId) {\n        //Highlight + sort total last year actuals\n        this.send('highlightColumnChanged', 1, this.columnNamesForHighlighting[3]);\n        this.send('highlightColumnChanged', 2, this.columnNamesForHighlighting[4]);\n        this.send('highlightColumnChanged', 3, this.columnNamesForHighlighting[8]);\n        this.set('sortString', '-actuals_last_year_avg_total');\n        this.set('sortValuePath', 'actuals_last_year_avg_total');\n      } else {\n        this.set('selectedScenarioId', -1000);\n      }\n\n      this.set('scenarioOptions', scenarioOptions);\n    },\n    columnNames: Ember.computed('selectedQuartile', function () {\n      var tierColumnName;\n      var lastYear = this.year.lastFiscalYear;\n\n      switch (this.selectedQuartile) {\n        case _tiers.default.QUARTILE_OPTION_TOP_10:\n          tierColumnName = 'Top 10%';\n          break;\n\n        case _tiers.default.QUARTILE_OPTION_TOP_25:\n          tierColumnName = 'Top 25%';\n          break;\n\n        case _tiers.default.QUARTILE_OPTION_MID_TIER:\n          tierColumnName = 'Mid 26% - 74%';\n          break;\n\n        case _tiers.default.QUARTILE_OPTION_LOW_TIER:\n          tierColumnName = 'Low 0% - 25%';\n          break;\n\n        case QUARTILE_OPTION_NO_ACTIVITY:\n          tierColumnName = \"No \".concat(this.year.lastFiscalYear, \" Activity\");\n          break;\n\n        case 'All':\n          tierColumnName = 'All';\n          break;\n\n        default:\n          tierColumnName = 'Top 10%';\n      }\n\n      var actualsColumnName = \"Actuals Median \".concat(lastYear, \" (m)\");\n      var dict = {\n        'PI Counts': [{\n          name: 'Total',\n          valuePath: 'pi_count_dept_total',\n          highlightable: false\n        }, {\n          name: \"In \".concat(tierColumnName),\n          valuePath: 'pi_count_tier',\n          highlightable: false\n        }, {\n          name: \"% \".concat(tierColumnName),\n          valuePath: 'pi_tier_dept_total_percentage',\n          highlightable: true\n        }, {\n          name: 'Rank',\n          valuePath: 'rank_pi_tier_dept',\n          highlightable: true\n        }],\n        'Proposal Averages': [{\n          name: 'Count/Yr',\n          valuePath: 'proposal_count_per_year',\n          highlightable: true\n        }, {\n          name: 'Rank',\n          valuePath: 'rank_proposal_count_per_year',\n          highlightable: false\n        }, {\n          name: 'Hit Rate',\n          valuePath: 'proposal_hit_rate_avg',\n          highlightable: true\n        }, {\n          name: 'Rank',\n          valuePath: 'rank_proposal_hit_rate_avg',\n          highlightable: false\n        }],\n        'Success Averages': [{\n          name: 'Count/Yr',\n          valuePath: 'success_count_per_year',\n          highlightable: true\n        }, {\n          name: 'Rank',\n          valuePath: 'rank_success_count_per_year',\n          highlightable: false\n        }]\n      };\n      dict[actualsColumnName] = [{\n        name: 'Directs',\n        valuePath: 'actuals_last_year_avg_directs',\n        highlightable: true\n      }, {\n        name: 'Indirects',\n        valuePath: 'actuals_last_year_avg_indirects',\n        highlightable: true\n      }, {\n        name: 'Total',\n        valuePath: 'actuals_last_year_avg_total',\n        highlightable: true\n      }, {\n        name: 'Rank',\n        valuePath: 'rank_actuals_last_year_avg_total',\n        highlightable: false\n      }, {\n        name: 'ICR',\n        valuePath: 'actuals_last_year_icr',\n        highlightable: true\n      }];\n      return dict;\n    }),\n    columnNamesForHighlighting: Ember.computed('columnNames', function () {\n      var _this = this;\n\n      var columnNamesForHighlight = [];\n      Object.keys(this.columnNames).forEach(function (header) {\n        _this.columnNames[header].forEach(function (column) {\n          if (column.highlightable) {\n            columnNamesForHighlight.push({\n              value: \"\".concat(header, \" - \").concat(column.name),\n              valuePath: column.valuePath\n            });\n          }\n        });\n      });\n      columnNamesForHighlight.unshift(DEFAULT_HIGHLIGHT_COLUMN);\n      return columnNamesForHighlight;\n    }),\n    isSelectHighlightColumnsDisabled: Ember.computed('selectedScenarioId', function () {\n      return this.selectedScenario && this.selectedScenario.id !== 0;\n    }),\n    scenarioObserver: Ember.observer('selectedScenarioId', function () {\n      var _this2 = this;\n\n      if (this.selectedScenarioId) {\n        this.set('selectedHighlightColumn1', DEFAULT_HIGHLIGHT_COLUMN);\n        this.set('selectedHighlightColumn2', DEFAULT_HIGHLIGHT_COLUMN);\n        this.set('selectedHighlightColumn3', DEFAULT_HIGHLIGHT_COLUMN);\n\n        if (this.selectedScenarioId > 0) {\n          var selectedScenario = this.scenarioOptions.find(function (option) {\n            return option.id === _this2.selectedScenarioId;\n          });\n\n          for (var i = 0; i < selectedScenario.indexes.length; i++) {\n            var index = selectedScenario.indexes[i];\n            this.set(\"selectedHighlightColumn\".concat(i + 1), this.columnNamesForHighlighting[index]);\n          }\n\n          if (selectedScenario.sortString && !Ember.testing) {\n            this.set('sortString', \"-\".concat(selectedScenario.sortString));\n            this.set('sortValuePath', selectedScenario.sortString);\n            this.fetchData();\n          }\n        }\n\n        this.saveSettings();\n      }\n    }).on('init'),\n    selectedColumnsHighlighted: Ember.computed('selectedHighlightColumn1.value', 'selectedHighlightColumn2.value', 'selectedHighlightColumn3.value', function () {\n      var columnsToHighlight = [];\n\n      if (this.selectedHighlightColumn1 && this.selectedHighlightColumn1.value !== DEFAULT_HIGHLIGHT_COLUMN.value) {\n        columnsToHighlight.push(this.selectedHighlightColumn1.valuePath);\n      }\n\n      if (this.selectedHighlightColumn2 && this.selectedHighlightColumn2.value !== DEFAULT_HIGHLIGHT_COLUMN.value) {\n        columnsToHighlight.push(this.selectedHighlightColumn2.valuePath);\n      }\n\n      if (this.selectedHighlightColumn3 && this.selectedHighlightColumn3.value !== DEFAULT_HIGHLIGHT_COLUMN.value) {\n        columnsToHighlight.push(this.selectedHighlightColumn3.valuePath);\n      }\n\n      return columnsToHighlight;\n    }),\n    tableExtra: Ember.computed('highlightLessThan', 'highlightGreaterThan', 'selectedColumnsHighlighted.[]', 'departments', function () {\n      return {\n        highlightLessThan: this.highlightLessThan,\n        highlightGreaterThan: this.highlightGreaterThan,\n        columnsToHighlight: this.selectedColumnsHighlighted,\n        deptCount: this.departments ? this.departments.length : 0\n      };\n    }),\n    hireYearFieldDisabled: Ember.computed('selectedHireYearFilter', 'hireYearOptionsDisabled', function () {\n      return this.hireYearOptionsDisabled || this.selectedHireYearFilter === 'All';\n    }),\n    fetchData: function fetchData() {\n      var _this3 = this;\n\n      this.set('isLoading', true);\n      var queryParams = {};\n\n      if (this.selectedSector.value !== 'All Sectors') {\n        queryParams.sector = this.selectedSector.value;\n      }\n\n      if (this.sortString) {\n        queryParams.ordering = this.sortString;\n      }\n\n      if (this.selectedSponsorType !== 'All') queryParams.sponsor_type = queryParams.sponsor_type = this.currentUser.getSponsorFilterValueForDisplayValue(this.selectedSponsorType);\n\n      if (this.selectedClassify !== 'All') {\n        queryParams.classify = this.selectedClassify;\n      }\n\n      if (this.selectedQuartile !== 'All') {\n        if (this.selectedQuartile === QUARTILE_OPTION_NO_ACTIVITY) {\n          queryParams.tier_no_actuals_last_year = true;\n        } else {\n          queryParams = Object.assign({}, queryParams, (0, _percentilesFromQuartile.default)(this.selectedQuartile));\n        }\n      }\n\n      if (this.selectedHireYearFilter !== 'All' && this.selectedHireYear !== DEFAULT_HIRE_YEAR) {\n        if (this.selectedHireYearFilter === 'Before') {\n          queryParams.hire_year_before = this.selectedHireYear;\n        } else if (this.selectedHireYearFilter === 'After') {\n          queryParams.hire_year_after = this.selectedHireYear;\n        } else if (this.selectedHireYearFilter === 'In') {\n          queryParams.hire_year = this.selectedHireYear;\n        }\n      }\n\n      this.ajax.request(\"departments_comparative/?\".concat(_jquery.default.param(queryParams)), {\n        headers: {\n          'Accept': 'application/vnd.api+json'\n        }\n      }).then(function (resp) {\n        _this3.set('departments', resp.data); //Add cell link data for table display\n\n\n        _this3.departments.forEach(function (department) {\n          department.cellDeptData = {\n            id: department.department_id,\n            name: department.department_name\n          };\n        });\n\n        _this3.set('isLoading', false);\n      });\n    },\n    saveSettings: function saveSettings() {\n      var settings = {\n        selectedClassify: this.selectedClassify,\n        selectedQuartile: this.selectedQuartile,\n        selectedSponsorType: this.selectedSponsorType,\n        selectedHireYearFilter: this.selectedHireYearFilter,\n        selectedHireYear: this.selectedHireYear,\n        selectedSector: this.selectedSector,\n        sortString: this.sortString,\n        sortValuePath: this.sortValuePath,\n        selectedScenarioId: this.selectedScenarioId,\n        highlightLessThan: this.highlightLessThan,\n        highlightGreaterThan: this.highlightGreaterThan,\n        selectedHighlightColumn1: this.selectedHighlightColumn1,\n        selectedHighlightColumn2: this.selectedHighlightColumn2,\n        selectedHighlightColumn3: this.selectedHighlightColumn3\n      };\n      window.sessionStorage.setItem('comparativeDepartmentSettings', JSON.stringify(settings));\n    },\n    saveAndUpdateSetting: function saveAndUpdateSetting(option, value) {\n      this.set(option, value);\n      this.fetchData();\n      Ember.run.debounce(this, this.saveSettings, 250);\n    },\n    actions: {\n      selectedHireYearChanged: function selectedHireYearChanged(year) {\n        this.saveAndUpdateSetting('selectedHireYear', year);\n      },\n      sectorChanged: function sectorChanged(sector) {\n        this.saveAndUpdateSetting('selectedSector', sector);\n      },\n      sponsorTypeChanged: function sponsorTypeChanged(type) {\n        this.saveAndUpdateSetting('selectedSponsorType', type);\n      },\n      hireYearFilterChanged: function hireYearFilterChanged(hireYearFilter) {\n        this.saveAndUpdateSetting('selectedHireYearFilter', hireYearFilter);\n      },\n      classifyChanged: function classifyChanged(classify) {\n        this.saveAndUpdateSetting('selectedClassify', classify);\n      },\n      quartileChanged: function quartileChanged(option) {\n        this.saveAndUpdateSetting('selectedQuartile', option);\n      },\n      highlightColumnChanged: function highlightColumnChanged(num, option) {\n        this.set(\"selectedHighlightColumn\".concat(num), option);\n      },\n      toggleHelp: function toggleHelp() {\n        this.toggleProperty('isShowingHelp');\n      },\n      departmentClicked: function departmentClicked(dept) {\n        var _this4 = this;\n\n        this.transitionToRoute('app.comparative.investigators').then(function (route) {\n          var opts = {\n            deptId: dept.id.toString()\n          };\n\n          if (_this4.selectedClassify !== 'All') {\n            opts.classify = _this4.selectedClassify;\n          }\n\n          if (_this4.selectedQuartile !== 'All') {\n            opts.quartile = _this4.selectedQuartile;\n          }\n\n          route.set('filtersFromAnotherRoute', opts);\n        });\n      },\n      resetScenario: function resetScenario() {\n        this.set('selectedScenarioId', NO_SCENARIO.id);\n        this.set('selectedHighlightColumn1', DEFAULT_HIGHLIGHT_COLUMN);\n        this.set('selectedHighlightColumn2', DEFAULT_HIGHLIGHT_COLUMN);\n        this.set('selectedHighlightColumn3', DEFAULT_HIGHLIGHT_COLUMN);\n      },\n      handleSortChange: function handleSortChange(sortDirection, sortColumn) {\n        var sortString = \"\".concat(sortDirection).concat(sortColumn);\n        this.set('sortString', sortString);\n        this.set('sortValuePath', sortColumn);\n        this.fetchData();\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/comparative/investigators\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/utils/cell-link-data\", \"b3i-analytics-web-app/utils/format-percentage\", \"accounting/format-money\", \"jquery\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/utils/percentiles-from-quartile\", \"b3i-analytics-web-app/mixins/permissions-check\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"b3i-analytics-web-app/constants/tiers\"], function (_exports, _object, _cellLinkData, _formatPercentage, _formatMoney, _jquery, _environment, _percentilesFromQuartile, _permissionsCheck, _openPrintDialog, _tiers) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var QUARTILE_OPTION_NO_ACTIVITY = 'No {year} Activity';\n  var DISPLAY_TYPE_MONEY = 'money';\n  var DISPLAY_TYPE_PERCENTAGE = 'percentage';\n  var DISPLAY_TYPE_NUMBER = 'number';\n  var SELECTED_LIGHT_COLOR = '#71c5e8';\n  var SELECTED_DARK_COLOR = '#219bce';\n  var COMPARISON_LIGHT_COLOR = '#EDF3F5';\n  var COMPARISON_DARK_COLOR = '#9CB0C0';\n  var InvestigatorsController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = (0, _object.observes)('selectedComparisonGroup', 'selectedSelectedHireYear', 'selectedSelectedQuartile', 'selectedSelectedClassify', 'selectedSelectedCategory'), _dec5 = Ember.computed('selectedBoxPlotLists.count_per_pi_average', 'comparisonBoxPlotLists.count_per_pi_average'), _dec6 = Ember.computed('selectedBoxPlotLists.directs_per_pi_last_year', 'comparisonBoxPlotLists.directs_per_pi_last_year'), _dec7 = Ember.computed('selectedBoxPlotLists.indirects_per_pi_last_year', 'comparisonBoxPlotLists.indirects_per_pi_last_year'), _dec8 = Ember.computed('selectedBoxPlotLists.total_per_pi_average', 'comparisonBoxPlotLists.total_per_pi_average'), _dec9 = Ember.computed('selectedBoxPlotLists.hit_rate_per_pi_average', 'comparisonBoxPlotLists.hit_rate_per_pi_average'), _dec10 = Ember.computed('nihHitRates'), _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, _dec21 = Ember._action, _dec22 = Ember._action, _dec23 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(InvestigatorsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(InvestigatorsController);\n\n    function InvestigatorsController() {\n      var _this;\n\n      _classCallCheck(this, InvestigatorsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedSelectedCategory\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedSelectedHireYear\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedSelectedQuartile\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", '-actuals_one_year_ago_total');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedComparisonCategory\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedComparisonHireYear\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedComparisonQuartile\", 'All');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedComparisonGroup\", 'Internal');\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor3, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(InvestigatorsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(InvestigatorsController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('classifyOptions', ['All', 'Junior', 'Senior', 'Other']);\n        this.set('selectedPiList', []);\n        var currentYear = this.get('year.fiscalYear');\n        var yearsArray = [currentYear, currentYear - 1, currentYear - 2, currentYear - 3, currentYear - 4, currentYear - 5].map(function (year) {\n          return year.toString();\n        });\n        this.set('selectedHireYearOptions', ['All', 'Base', 'New'].concat(yearsArray));\n        this.set('comparisonHireYearOptions', ['All', 'Same', 'Base', 'New'].concat(yearsArray));\n        this.set('departmentOptions', ['All']);\n        this.set('selectedSelectedDepartment', {\n          isGroupName: true,\n          value: 'All'\n        });\n        this.set('selectedComparisonDepartment', {\n          isGroupName: true,\n          value: 'All'\n        });\n        QUARTILE_OPTION_NO_ACTIVITY = QUARTILE_OPTION_NO_ACTIVITY.replace('{year}', this.year.lastFiscalYear);\n        this.set('quartileOptions', ['All', _tiers.default.QUARTILE_OPTION_TOP_10, _tiers.default.QUARTILE_OPTION_TOP_25, _tiers.default.QUARTILE_OPTION_MID_TIER, _tiers.default.QUARTILE_OPTION_LOW_TIER, QUARTILE_OPTION_NO_ACTIVITY]);\n        this.set('comparisonGroupOptions', ['Internal', 'External']);\n        var chartOptions = {\n          scales: {\n            xAxes: [{\n              gridLines: {\n                display: false\n              },\n              ticks: {\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold',\n                minStats: 'whiskerMin',\n                maxStats: 'whiskerMax',\n                callback: function callback(value) {\n                  var datasets = this.chart.config.data.datasets;\n\n                  if (!datasets.length) {\n                    return value;\n                  }\n\n                  var type = datasets[0].data[0].display_type;\n\n                  switch (type) {\n                    case DISPLAY_TYPE_MONEY:\n                      return (0, _formatMoney.default)(value);\n\n                    case DISPLAY_TYPE_NUMBER:\n                      return value.toFixed(1);\n\n                    case DISPLAY_TYPE_PERCENTAGE:\n                      return \"\".concat((0, _formatPercentage.default)(value), \"%\");\n                  }\n                }\n              }\n            }],\n            yAxes: [{\n              gridLines: {\n                display: false\n              }\n            }]\n          },\n          legend: {\n            position: 'top',\n            reverse: false,\n            labels: {\n              boxWidth: 10,\n              fontColor: '#416477',\n              fontFamily: 'Lato',\n              fontSize: 11,\n              fontStyle: 'bold',\n              reverse: false,\n              usePointStyle: false,\n              fillStyle: '#FFFFFF'\n            }\n          },\n          title: {\n            display: false\n          },\n          tooltipDecimals: 2,\n          tooltips: {\n            callbacks: {\n              title: function title() {\n                return '';\n              }\n            }\n          },\n          plugins: {\n            datalabels: {\n              display: true,\n              align: 'right',\n              color: 'rgba(0,0,0,0.9)',\n              font: {\n                family: 'Lato',\n                size: 11,\n                weight: 900\n              },\n              formatter: function formatter(value) {\n                var type = value.display_type;\n\n                if (!value.median) {\n                  return '';\n                }\n\n                switch (type) {\n                  case DISPLAY_TYPE_MONEY:\n                    return (0, _formatMoney.default)(value.median);\n\n                  case DISPLAY_TYPE_NUMBER:\n                    return value.median.toFixed(1);\n\n                  case DISPLAY_TYPE_PERCENTAGE:\n                    return \"\".concat((0, _formatPercentage.default)(value.median), \"%\");\n                }\n              }\n            }\n          }\n        };\n        var barChartOptions = {\n          scales: {\n            yAxes: [{\n              ticks: {\n                display: false,\n                beginAtZero: true\n              },\n              gridLines: {\n                display: false\n              }\n            }],\n            xAxes: [{\n              stacked: false,\n              maxBarThickness: 20,\n              gridLines: {\n                display: false\n              },\n              ticks: {\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              }\n            }]\n          },\n          legend: {\n            position: 'top',\n            reverse: false,\n            labels: {\n              boxWidth: 10,\n              fontColor: '#416477',\n              fontFamily: 'Lato',\n              fontSize: 11,\n              fontStyle: 'bold',\n              reverse: false,\n              usePointStyle: false,\n              fillStyle: '#FFFFFF'\n            }\n          },\n          tooltips: {\n            backgroundColor: '#FAFBFB',\n            bodyFontColor: '#416477',\n            bodyFontFamily: 'Lato',\n            bodySpacing: 6,\n            enabled: false,\n            position: 'nearest',\n            intersect: true,\n            footerMarginBottom: 10,\n            mode: 'index',\n            titleFontColor: '#416477',\n            titleMarginBottom: 6,\n            xPadding: 8,\n            yPadding: 8,\n            yAlign: 'bottom',\n            callbacks: {\n              label: function label(tooltipItem, data) {\n                var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n                if (label) {\n                  label += ': ';\n                }\n\n                label += \"\".concat(Math.round(tooltipItem.yLabel * 100) / 100, \"%\");\n                return label;\n              }\n            }\n          },\n          plugins: {\n            datalabels: {\n              display: true,\n              align: 'top',\n              anchor: 'end',\n              padding: '-5',\n              font: {\n                family: 'Lato',\n                size: 8,\n                weight: 900\n              },\n              formatter: function formatter(value) {\n                return \"\".concat(Math.round(value * 10) / 10, \"%\");\n              }\n            }\n          },\n          title: {\n            display: true,\n            padding: 5,\n            text: '5 Year NIH Hit Rates',\n            wrap: true,\n            fontStyle: 'normal',\n            fontColor: '#416477',\n            fontSize: 13\n          }\n        };\n        this.set('lineChartOptions', barChartOptions);\n        this.set('proposalChartOptions', chartOptions);\n        this.set('currentXhrRequests', []);\n      }\n    }, {\n      key: \"saveSettings\",\n      value: function saveSettings() {\n        var settings = {\n          selectedSelectedCategory: this.selectedSelectedCategory,\n          selectedSelectedHireYear: this.selectedSelectedHireYear,\n          selectedSelectedQuartile: this.selectedSelectedQuartile,\n          selectedSelectedClassify: this.selectedSelectedClassify,\n          selectedSelectedDepartment: this.selectedSelectedDepartment,\n          selectedComparisonQuartile: this.selectedComparisonQuartile,\n          selectedComparisonCategory: this.selectedComparisonCategory,\n          selectedComparisonHireYear: this.selectedComparisonHireYear,\n          selectedComparisonDepartment: this.selectedComparisonDepartment,\n          selectedComparisonClassify: this.selectedComparisonClassify,\n          selectedComparisonGroup: this.selectedComparisonGroup\n        };\n        window.sessionStorage.setItem('comparativePiSettings', JSON.stringify(settings));\n      }\n    }, {\n      key: \"getQueryParams\",\n      value: function getQueryParams() {\n        var queryParams = {};\n        var selectedDepartment = this.selectedSelectedDepartment; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (selectedDepartment.id) {\n          queryParams['selected_department_id'] = selectedDepartment.id;\n        } else {\n          if (selectedDepartment.value !== 'All') {\n            queryParams['selected_sector'] = selectedDepartment.value;\n          }\n        }\n\n        if (this.selectedSelectedClassify && this.selectedSelectedClassify !== 'All') {\n          queryParams['selected_classify'] = this.selectedSelectedClassify;\n        }\n\n        var selectedHireYear = this.selectedSelectedHireYear;\n\n        if (selectedHireYear !== 'All') {\n          //These are category filters\n          if (selectedHireYear === 'New' || selectedHireYear === 'Base') {\n            queryParams['selected_category'] = selectedHireYear;\n          } else {\n            queryParams['selected_hire_year'] = selectedHireYear;\n          }\n        }\n\n        if (this.selectedComparisonClassify && this.selectedComparisonClassify !== 'All') {\n          queryParams['comparison_classify'] = this.selectedComparisonClassify;\n        }\n\n        if (this.selectedSelectedQuartile !== 'All') {\n          if (this.selectedSelectedQuartile === QUARTILE_OPTION_NO_ACTIVITY) {\n            queryParams.selected_tier_no_actuals_last_year = true;\n          } else {\n            var percentiles = (0, _percentilesFromQuartile.default)(this.selectedSelectedQuartile);\n            Object.keys(percentiles).forEach(function (key) {\n              queryParams[\"selected_\".concat(key)] = percentiles[key];\n            });\n          }\n        }\n\n        if (this.selectedComparisonQuartile !== 'All') {\n          if (this.selectedComparisonQuartile === QUARTILE_OPTION_NO_ACTIVITY) {\n            queryParams.comparison_tier_no_actuals_last_year = true;\n          } else {\n            var _percentiles = (0, _percentilesFromQuartile.default)(this.selectedComparisonQuartile);\n\n            Object.keys(_percentiles).forEach(function (key) {\n              queryParams[\"comparison_\".concat(key)] = _percentiles[key];\n            });\n          }\n        }\n\n        var comparisonHireYear = this.selectedComparisonHireYear;\n\n        if (comparisonHireYear !== 'All') {\n          //These are category filters\n          if (comparisonHireYear === 'Base' || comparisonHireYear === 'New') {\n            queryParams['comparison_category'] = comparisonHireYear;\n          } else if (comparisonHireYear === 'Same') {\n            if (queryParams['selected_category']) {\n              queryParams['comparison_category'] = queryParams['selected_category'];\n            }\n\n            if (queryParams['selected_hire_year']) {\n              queryParams['comparison_hire_year'] = queryParams['selected_hire_year'];\n            }\n          } else {\n            queryParams['comparison_hire_year'] = comparisonHireYear;\n          }\n        }\n\n        var comparisonDepartment = this.selectedComparisonDepartment; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (comparisonDepartment.id) {\n          queryParams['comparison_department_id'] = comparisonDepartment.id;\n        } else {\n          if (comparisonDepartment.value !== 'All') {\n            queryParams['comparison_sector'] = comparisonDepartment.value;\n          }\n        }\n\n        if (this.sortString !== null) {\n          queryParams['sort'] = this.sortString;\n        }\n\n        queryParams['page'] = this.page;\n        return queryParams;\n      }\n    }, {\n      key: \"fetchData\",\n      value: function fetchData() {\n        var _this2 = this;\n\n        var queryParams = this.getQueryParams();\n\n        if (!this.pagination) {\n          this.set('isLoading', true);\n        } else {\n          //We've hit the end of the list so dont keep loading more\n          if (this.page > this.pagination.pages) {\n            this.set('isLoading', false);\n            return;\n          }\n        }\n\n        this.set('isLoading', true);\n        var request = this.ajax.request('principal_investigators_comparative/', {\n          headers: {\n            'Accept': 'application/vnd.api+json'\n          },\n          data: queryParams\n        }).then(function (resp) {\n          var data = resp['data'];\n\n          _this2.incrementProperty('page');\n\n          _this2.set('pagination', data['pagination']); // If the current page is greater than the max, then dont load the data\n\n\n          if (data.pagination && data.pagination.page > data.pagination.pages) {\n            return;\n          }\n\n          var selectedGroup = data['selected_group'];\n          var comparisonGroup = {};\n\n          if (_this2.selectedComparisonGroup === 'External') {\n            //External comparisons is not ready so return empty data\n            comparisonGroup = {\n              \"totals\": {\n                \"actuals_one_year_ago_directs\": 0,\n                \"actuals_one_year_ago_indirects\": 0,\n                \"total_pi_count\": 0\n              },\n              \"nih_hit_rates\": [0, 0, 0, 0, 0],\n              \"box_plot_lists\": {\n                \"count_per_pi_average\": {\n                  \"min\": 0,\n                  \"max\": 0,\n                  \"median\": 0,\n                  \"q1\": 0,\n                  \"q3\": 0,\n                  \"outliers\": null\n                },\n                \"hit_rate_per_pi_average\": {\n                  \"min\": 0,\n                  \"max\": 0,\n                  \"median\": 0,\n                  \"q1\": 0,\n                  \"q3\": 0,\n                  \"outliers\": null\n                },\n                \"total_per_pi_average\": {\n                  \"min\": 0,\n                  \"max\": 0,\n                  \"median\": 0,\n                  \"q1\": 0,\n                  \"q3\": 0,\n                  \"outliers\": null\n                },\n                \"directs_per_pi_last_year\": {\n                  \"min\": 0,\n                  \"max\": 0,\n                  \"median\": 0,\n                  \"q1\": 0,\n                  \"q3\": 0,\n                  \"outliers\": null\n                },\n                \"indirects_per_pi_last_year\": {\n                  \"min\": 0,\n                  \"max\": 0,\n                  \"median\": 0,\n                  \"q1\": 0,\n                  \"q3\": 0,\n                  \"outliers\": null\n                }\n              },\n              \"pis\": []\n            };\n          } else {\n            comparisonGroup = data['comparison_group'];\n          } //Add cell link data for table display\n\n\n          var selectedPiList = selectedGroup['pis'];\n          selectedPiList.forEach(function (pi) {\n            pi.cellLinkData = (0, _cellLinkData.default)(pi.id, \"\".concat(pi.last_name, \", \").concat(pi.first_name), 'principal-investigator');\n          });\n\n          _this2.selectedPiList.pushObjects(selectedPiList);\n\n          _this2.set('selectedSummaryData', selectedGroup['totals']);\n\n          _this2.set('selectedBoxPlotLists', selectedGroup['box_plot_lists']);\n\n          _this2.set('comparisonPiList', comparisonGroup['pis']);\n\n          _this2.set('comparisonSummaryData', comparisonGroup['totals']);\n\n          _this2.set('comparisonBoxPlotLists', comparisonGroup['box_plot_lists']);\n\n          var allNihData = data['nih_hit_rates'].map(function (rate) {\n            return rate ? rate * 100 : null;\n          });\n          var selectedNihData = selectedGroup['nih_hit_rates'].map(function (rate) {\n            return rate * 100;\n          });\n          var comparisonNihData = comparisonGroup['nih_hit_rates'].map(function (rate) {\n            return rate * 100;\n          });\n\n          _this2.set('nihHitRates', {\n            all: allNihData,\n            selected: selectedNihData,\n            comparison: comparisonNihData\n          });\n\n          _this2.set('isLoading', false);\n        });\n        this.currentXhrRequests.pushObject(request);\n      }\n    }, {\n      key: \"comparisonGroupObserver\",\n      value: function comparisonGroupObserver() {\n        if (this.selectedComparisonGroup === 'External') {\n          this.set('selectedComparisonHireYear', this.selectedSelectedHireYear);\n          this.set('selectedComparisonQuartile', this.selectedSelectedQuartile);\n          this.set('selectedComparisonClassify', this.selectedSelectedClassify);\n          this.set('selectedComparisonCategory', this.selectedSelectedCategory);\n          this.set('selectedComparisonDepartment', {\n            isGroupName: true,\n            value: 'All'\n          });\n          this.set('selectedSelectedDepartment', {\n            isGroupName: true,\n            value: 'All'\n          });\n          this.fetchData();\n        }\n      }\n    }, {\n      key: \"saveAndUpdateSetting\",\n      value: function saveAndUpdateSetting(attributeName, data) {\n        this.set(attributeName, data);\n        this.currentXhrRequests.forEach(function (r) {\n          r.xhr.abort();\n        });\n        this.set('currentXhrRequests', []);\n        this.set('page', 1);\n        this.set('selectedPiList', []);\n        this.set('pagination', null);\n        this.fetchData();\n        Ember.run.debounce(this, this.saveSettings, 250);\n      }\n    }, {\n      key: \"selectedClassifyChanged\",\n      value: function selectedClassifyChanged(value) {\n        this.saveAndUpdateSetting('selectedSelectedClassify', value);\n      }\n    }, {\n      key: \"selectedHireYearChanged\",\n      value: function selectedHireYearChanged(value) {\n        this.saveAndUpdateSetting('selectedSelectedHireYear', value);\n      }\n    }, {\n      key: \"selectedQuartileChanged\",\n      value: function selectedQuartileChanged(value) {\n        this.saveAndUpdateSetting('selectedSelectedQuartile', value);\n      }\n    }, {\n      key: \"selectedDepartmentChanged\",\n      value: function selectedDepartmentChanged(value) {\n        this.saveAndUpdateSetting('selectedSelectedDepartment', value);\n      }\n    }, {\n      key: \"comparisonClassifyChanged\",\n      value: function comparisonClassifyChanged(value) {\n        this.saveAndUpdateSetting('selectedComparisonClassify', value);\n      }\n    }, {\n      key: \"comparisonQuartileChanged\",\n      value: function comparisonQuartileChanged(value) {\n        this.saveAndUpdateSetting('selectedComparisonQuartile', value);\n      }\n    }, {\n      key: \"comparisonHireYearChanged\",\n      value: function comparisonHireYearChanged(value) {\n        this.saveAndUpdateSetting('selectedComparisonHireYear', value);\n      }\n    }, {\n      key: \"comparisonDepartmentChanged\",\n      value: function comparisonDepartmentChanged(value) {\n        this.saveAndUpdateSetting('selectedComparisonDepartment', value);\n      }\n    }, {\n      key: \"comparisonGroupChanged\",\n      value: function comparisonGroupChanged(value) {\n        this.saveAndUpdateSetting('selectedComparisonGroup', value);\n      }\n    }, {\n      key: \"toggleHelp\",\n      value: function toggleHelp() {\n        this.toggleProperty('isShowingHelp');\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        Ember.run.debounce(this, this.fetchData, 250);\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        this.currentXhrRequests.forEach(function (r) {\n          r.xhr.abort();\n        });\n        this.set('currentXhrRequests', []); //cellLinkData should be last_name\n\n        if (sortColumn === 'cellLinkData') {\n          sortColumn = 'last_name';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(sortColumn);\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.set('selectedPiList', []);\n        this.set('pagination', null);\n        this.fetchData();\n      }\n    }, {\n      key: \"exportData\",\n      value: function exportData() {\n        //Store the controller scope so we can set the comparative data on response\n        var queryParams = this.getQueryParams();\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/principal_investigators_comparative/download/?\").concat(_jquery.default.param(queryParams));\n\n        _jquery.default.ajaxSetup({\n          beforeSend: function beforeSend(jqXHR, settings) {\n            if (settings.dataType === 'binary') {\n              settings.xhr().responseType = 'arraybuffer';\n              settings.processData = false;\n            }\n          }\n        });\n\n        return this.ajax.raw(url, {\n          processData: false,\n          dataType: 'binary',\n          headers: {\n            'Accept': 'text/csv'\n          },\n          crossDomain: true,\n          xhr: function xhr() {\n            var xhr = new XMLHttpRequest();\n            xhr.responseType = 'blob';\n            return xhr;\n          }\n        }).then(function (result) {\n          var blob = result.payload;\n          var xhr = result.jqXHR;\n          var filename = \"export-principal-investigators.csv\"; //Try to get filename from disposition header\n\n          var disposition = xhr.getResponseHeader('content-disposition');\n\n          if (disposition && disposition.indexOf('attachment') !== -1) {\n            var filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\n            var matches = filenameRegex.exec(disposition);\n\n            if (matches != null && matches[1]) {\n              filename = matches[1].replace(/['\"]/g, '');\n            }\n          }\n\n          var url = window.URL.createObjectURL(blob);\n          var a = document.createElement('a');\n          a.style.display = 'none';\n          a.href = url; // the filename you want\n\n          a.download = filename;\n          document.body.appendChild(a);\n          a.click();\n          window.URL.revokeObjectURL(url);\n        });\n      }\n    }, {\n      key: \"proposalCountChartData\",\n      get: function get() {\n        var selectedLists = this.selectedBoxPlotLists;\n        var comparisonLists = this.comparisonBoxPlotLists;\n        var selected = [];\n        var comparison = [];\n\n        if (selectedLists) {\n          selected = selectedLists['count_per_pi_average'];\n          selected['display_type'] = DISPLAY_TYPE_NUMBER;\n        }\n\n        if (comparisonLists) {\n          comparison = comparisonLists['count_per_pi_average'];\n          comparison['display_type'] = DISPLAY_TYPE_NUMBER;\n        }\n\n        return {\n          labels: [''],\n          datasets: [{\n            label: 'Selected',\n            backgroundColor: SELECTED_LIGHT_COLOR,\n            data: [selected],\n            outlierColor: SELECTED_LIGHT_COLOR,\n            borderColor: SELECTED_DARK_COLOR,\n            medianColor: SELECTED_DARK_COLOR\n          }, {\n            label: 'Comparison',\n            backgroundColor: COMPARISON_LIGHT_COLOR,\n            outlierColor: COMPARISON_DARK_COLOR,\n            borderColor: COMPARISON_DARK_COLOR,\n            medianColor: COMPARISON_DARK_COLOR,\n            data: [comparison]\n          }]\n        };\n      }\n    }, {\n      key: \"proposalDirectsChartData\",\n      get: function get() {\n        var selectedLists = this.selectedBoxPlotLists;\n        var comparisonLists = this.comparisonBoxPlotLists;\n        var selected = [];\n        var comparison = [];\n\n        if (selectedLists) {\n          selected = selectedLists['directs_per_pi_last_year'];\n          selected['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        if (comparisonLists) {\n          comparison = comparisonLists['directs_per_pi_last_year'];\n          comparison['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        return {\n          labels: [''],\n          datasets: [{\n            label: 'Selected',\n            backgroundColor: SELECTED_LIGHT_COLOR,\n            data: [selected],\n            outlierColor: SELECTED_LIGHT_COLOR,\n            borderColor: SELECTED_DARK_COLOR,\n            medianColor: SELECTED_DARK_COLOR\n          }, {\n            label: 'Comparison',\n            backgroundColor: COMPARISON_LIGHT_COLOR,\n            outlierColor: COMPARISON_DARK_COLOR,\n            borderColor: COMPARISON_DARK_COLOR,\n            medianColor: COMPARISON_DARK_COLOR,\n            data: [comparison]\n          }]\n        };\n      }\n    }, {\n      key: \"proposalIndirectsChartData\",\n      get: function get() {\n        var selectedLists = this.selectedBoxPlotLists;\n        var comparisonLists = this.comparisonBoxPlotLists;\n        var selected = [];\n        var comparison = [];\n\n        if (selectedLists) {\n          selected = selectedLists['indirects_per_pi_last_year'];\n          selected['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        if (comparisonLists) {\n          comparison = comparisonLists['indirects_per_pi_last_year'];\n          comparison['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        return {\n          labels: [''],\n          datasets: [{\n            label: 'Selected',\n            backgroundColor: SELECTED_LIGHT_COLOR,\n            data: [selected],\n            outlierColor: SELECTED_LIGHT_COLOR,\n            borderColor: SELECTED_DARK_COLOR,\n            medianColor: SELECTED_DARK_COLOR\n          }, {\n            label: 'Comparison',\n            backgroundColor: COMPARISON_LIGHT_COLOR,\n            outlierColor: COMPARISON_DARK_COLOR,\n            borderColor: COMPARISON_DARK_COLOR,\n            medianColor: COMPARISON_DARK_COLOR,\n            data: [comparison]\n          }]\n        };\n      }\n    }, {\n      key: \"proposalTotalChartData\",\n      get: function get() {\n        var selectedLists = this.selectedBoxPlotLists;\n        var comparisonLists = this.comparisonBoxPlotLists;\n        var selected = [];\n        var comparison = [];\n\n        if (selectedLists) {\n          selected = selectedLists['total_per_pi_average'];\n          selected['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        if (comparisonLists) {\n          comparison = comparisonLists['total_per_pi_average'];\n          comparison['display_type'] = DISPLAY_TYPE_MONEY;\n        }\n\n        return {\n          labels: [''],\n          datasets: [{\n            label: 'Selected',\n            backgroundColor: SELECTED_LIGHT_COLOR,\n            data: [selected],\n            outlierColor: SELECTED_LIGHT_COLOR,\n            borderColor: SELECTED_DARK_COLOR,\n            medianColor: SELECTED_DARK_COLOR\n          }, {\n            label: 'Comparison',\n            backgroundColor: COMPARISON_LIGHT_COLOR,\n            outlierColor: COMPARISON_DARK_COLOR,\n            borderColor: COMPARISON_DARK_COLOR,\n            medianColor: COMPARISON_DARK_COLOR,\n            data: [comparison]\n          }]\n        };\n      }\n    }, {\n      key: \"hitRateChartData\",\n      get: function get() {\n        var selectedLists = this.selectedBoxPlotLists;\n        var comparisonLists = this.comparisonBoxPlotLists;\n        var selected = [];\n        var comparison = [];\n\n        if (selectedLists) {\n          selected = selectedLists['hit_rate_per_pi_average'];\n          selected['display_type'] = DISPLAY_TYPE_PERCENTAGE;\n        }\n\n        if (comparisonLists) {\n          comparison = comparisonLists['hit_rate_per_pi_average'];\n          comparison['display_type'] = DISPLAY_TYPE_PERCENTAGE;\n        }\n\n        return {\n          labels: [''],\n          datasets: [{\n            label: 'Selected',\n            backgroundColor: SELECTED_LIGHT_COLOR,\n            data: [selected],\n            outlierColor: SELECTED_LIGHT_COLOR,\n            borderColor: SELECTED_DARK_COLOR,\n            medianColor: SELECTED_DARK_COLOR\n          }, {\n            label: 'Comparison',\n            backgroundColor: COMPARISON_LIGHT_COLOR,\n            outlierColor: COMPARISON_DARK_COLOR,\n            borderColor: COMPARISON_DARK_COLOR,\n            medianColor: COMPARISON_DARK_COLOR,\n            data: [comparison]\n          }]\n        };\n      }\n    }, {\n      key: \"lineChartData\",\n      get: function get() {\n        var data = this.nihHitRates;\n\n        if (!data) {\n          return null;\n        }\n\n        var currentYear = this.get('year.fiscalYear');\n        var dataLabels = [currentYear - 5, currentYear - 4, currentYear - 3, currentYear - 2, currentYear - 1];\n        var datasets = [{\n          label: 'Selected',\n          data: data.selected,\n          borderColor: SELECTED_LIGHT_COLOR,\n          fill: true,\n          backgroundColor: SELECTED_LIGHT_COLOR,\n          pointStyle: 'circle',\n          borderWidth: 1,\n          labels: dataLabels\n        }, {\n          label: 'Comparison',\n          data: data.comparison,\n          borderColor: COMPARISON_DARK_COLOR,\n          fill: true,\n          backgroundColor: COMPARISON_LIGHT_COLOR,\n          pointStyle: 'circle',\n          borderWidth: 1,\n          labels: dataLabels,\n          datalabels: {\n            display: true,\n            align: 'center',\n            anchor: 'center'\n          }\n        }, {\n          label: 'NIH',\n          data: data.all,\n          borderColor: '#F1BE48',\n          fill: true,\n          backgroundColor: '#F1BE48',\n          pointStyle: 'circle',\n          borderWidth: 1,\n          labels: dataLabels\n        }];\n        return {\n          labels: dataLabels,\n          datasets: datasets\n        };\n      }\n    }]);\n\n    return InvestigatorsController;\n  }(Ember.Controller.extend(_openPrintDialog.default, _permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"comparisonGroupObserver\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonGroupObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalCountChartData\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalCountChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalDirectsChartData\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalDirectsChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalIndirectsChartData\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalIndirectsChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalTotalChartData\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalTotalChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hitRateChartData\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"hitRateChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"lineChartData\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"lineChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedClassifyChanged\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedClassifyChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedHireYearChanged\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedHireYearChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedQuartileChanged\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedQuartileChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedDepartmentChanged\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedDepartmentChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"comparisonClassifyChanged\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonClassifyChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"comparisonQuartileChanged\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonQuartileChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"comparisonHireYearChanged\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonHireYearChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"comparisonDepartmentChanged\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonDepartmentChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"comparisonGroupChanged\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"comparisonGroupChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleHelp\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleHelp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"exportData\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"exportData\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = InvestigatorsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/data-import\", [\"exports\", \"moment\", \"jquery\"], function (_exports, _moment, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DataImportController = (_dec = Ember.computed('hasUploaded'), _dec2 = Ember.inject.service('current-user'), _dec3 = Ember.computed('queryDate'), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(DataImportController, _Ember$Controller);\n\n    var _super = _createSuper(DataImportController);\n\n    function DataImportController() {\n      var _this;\n\n      _classCallCheck(this, DataImportController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"acceptFileTypes\", '.xlsx,.xls,.csv');\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingImportModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"hasUploaded\", false);\n\n      return _this;\n    }\n\n    _createClass(DataImportController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(DataImportController.prototype), \"init\", this).apply(this, arguments);\n\n        var fd = new FormData();\n        this.set('fd', fd);\n      }\n    }, {\n      key: \"queryDateChanged\",\n      value: function queryDateChanged(date) {\n        this.set('queryDate', _moment.default.utc(date).format('YYYY-MM-DD'));\n      }\n    }, {\n      key: \"cutoffDateForPendingProposalsChanged\",\n      value: function cutoffDateForPendingProposalsChanged(date) {\n        this.set('currentUser.team.cutoffDateForPendingProposals', _moment.default.utc(date).format('YYYY-MM-DD'));\n      }\n    }, {\n      key: \"showFacultyFilePicker\",\n      value: function showFacultyFilePicker() {\n        (0, _jquery.default)('#faculty_uploader').click();\n      }\n    }, {\n      key: \"showProposalsFilePicker\",\n      value: function showProposalsFilePicker() {\n        (0, _jquery.default)('#proposals_uploader').click();\n      }\n    }, {\n      key: \"showSuccessesFilePicker\",\n      value: function showSuccessesFilePicker() {\n        (0, _jquery.default)('#successes_uploader').click();\n      }\n    }, {\n      key: \"showActualsFilePicker\",\n      value: function showActualsFilePicker() {\n        (0, _jquery.default)('#actuals_uploader').click();\n      }\n    }, {\n      key: \"showCoPiFilePicker\",\n      value: function showCoPiFilePicker() {\n        (0, _jquery.default)('#co_pis_uploader').click();\n      }\n    }, {\n      key: \"showSectorDepartmentFilePicker\",\n      value: function showSectorDepartmentFilePicker() {\n        (0, _jquery.default)('#sector_department_uploader').click();\n      }\n    }, {\n      key: \"removeFile\",\n      value: function removeFile(type) {\n        var fd = this.fd;\n        fd.delete(\"\".concat(type, \"_csv\"));\n        this.set(\"\".concat(Ember.String.camelize(type), \"FileName\"), null);\n        (0, _jquery.default)(\"#\".concat(type, \"_uploader\")).val(null);\n      }\n    }, {\n      key: \"setFacultyData\",\n      value: function setFacultyData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('faculty_csv');\n        fd.append('faculty_csv', file, file.name);\n        this.set('facultyFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"setProposalsData\",\n      value: function setProposalsData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('proposals_csv');\n        fd.append('proposals_csv', file, file.name);\n        this.set('proposalsFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"setSuccessesData\",\n      value: function setSuccessesData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('successes_csv');\n        fd.append('successes_csv', file, file.name);\n        this.set('successesFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"setActualsData\",\n      value: function setActualsData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('actuals_csv');\n        fd.append('actuals_csv', file, file.name);\n        this.set('actualsFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"setCoPiData\",\n      value: function setCoPiData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('co_pis_csv');\n        fd.append('co_pis_csv', file, file.name);\n        this.set('coPisFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"setSectorDepartmentData\",\n      value: function setSectorDepartmentData(e) {\n        var fd = this.fd;\n        var file = e.target.files[0];\n        fd.delete('sectors_departments_csv');\n        fd.append('sectors_departments_csv', file, file.name);\n        this.set('sectorsDepartmentsFileName', file.name);\n        this.set('hasUploaded', false);\n      }\n    }, {\n      key: \"uploadDataButtonPressed\",\n      value: function uploadDataButtonPressed() {\n        if (this.hasUploaded) {\n          //Reload the page to clear old data.\n          window.location.reload(true);\n          return;\n        }\n\n        var fd = this.fd; //Grab the date part\n\n        var queryDate = this.queryDate;\n\n        if (queryDate) {\n          if (queryDate === 'Invalid date') {\n            this.set('errors', ['The query date is invalid.']);\n            return;\n          } //Dont duplicate the query date key\n\n\n          fd.delete('query_date');\n          fd.append('query_date', queryDate);\n          this.send('uploadData', fd);\n          this.set('errors', null);\n        } else {\n          this.set('errors', ['You must set a query date for the data.']);\n          this.set('isLoading', false);\n        }\n      }\n    }, {\n      key: \"toggleFormattingHelp\",\n      value: function toggleFormattingHelp() {\n        this.toggleProperty('isShowingFormattingHelp');\n      }\n    }, {\n      key: \"buttonText\",\n      get: function get() {\n        return this.hasUploaded ? 'Done' : 'Upload';\n      }\n    }, {\n      key: \"asOfDate\",\n      get: function get() {\n        var qd = this.queryDate;\n\n        if (!qd) {\n          return null;\n        }\n\n        var queryDate = _moment.default.utc(this.queryDate);\n\n        if (!queryDate.isValid()) {\n          return null;\n        }\n\n        return queryDate.subtract(1, 'months').endOf('month').format('MM/DD/YYYY');\n      }\n    }]);\n\n    return DataImportController;\n  }(Ember.Controller), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"buttonText\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"buttonText\"), _class2.prototype), _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"asOfDate\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"asOfDate\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"queryDateChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"queryDateChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"cutoffDateForPendingProposalsChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"cutoffDateForPendingProposalsChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showFacultyFilePicker\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"showFacultyFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showProposalsFilePicker\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"showProposalsFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showSuccessesFilePicker\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"showSuccessesFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showActualsFilePicker\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"showActualsFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showCoPiFilePicker\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"showCoPiFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showSectorDepartmentFilePicker\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"showSectorDepartmentFilePicker\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"removeFile\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"removeFile\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setFacultyData\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"setFacultyData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setProposalsData\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"setProposalsData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setSuccessesData\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"setSuccessesData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setActualsData\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"setActualsData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setCoPiData\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"setCoPiData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setSectorDepartmentData\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"setSectorDepartmentData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"uploadDataButtonPressed\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"uploadDataButtonPressed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleFormattingHelp\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleFormattingHelp\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DataImportController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/data-mining\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"jquery\", \"b3i-analytics-web-app/mixins/permissions-check\", \"b3i-analytics-web-app/utils/percentiles-from-quartile\", \"b3i-analytics-web-app/constants/tiers\"], function (_exports, _object, _environment, _openPrintDialog, _jquery, _permissionsCheck, _percentilesFromQuartile, _tiers) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _temp;\n\n  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\n  function _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\n  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var QUARTILE_OPTION_NO_ACTIVITY = 'No {year} Activity';\n  var DataMiningController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service('current-user'), _dec4 = Ember.computed('selectedView', function () {\n    return this.get('selectedView') === 'Proposals';\n  }), _dec5 = (0, _object.observes)('searchValue'), _dec6 = (0, _object.observes)('selectedStartMonths.[]'), _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, _dec21 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(DataMiningController, _Ember$Controller$ext);\n\n    var _super = _createSuper(DataMiningController);\n\n    function DataMiningController() {\n      var _this;\n\n      _classCallCheck(this, DataMiningController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", 'principal_investigator__last_name');\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isProposals\", _descriptor4, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(DataMiningController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(DataMiningController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedSector', {\n          isGroupName: true,\n          value: 'All Sectors'\n        });\n        this.set('selectedView', 'Proposals');\n        this.set('viewOptions', ['Proposals', 'Successes']);\n\n        if (this.get('currentUser.team.hasClassifyInfo')) {\n          this.set('classifyOptions', ['All', 'Junior', 'Senior', 'Other']);\n          this.set('classifyOptionsDisabled', false);\n        } else {\n          this.set('classifyOptions', ['All']);\n          this.set('classifyOptionsDisabled', true);\n        }\n\n        this.set('selectedClassify', 'All');\n        var currentYear = this.get('currentUser.team.currentFiscalYear');\n        var hireYearOptions = ['All', 'New', 'Base'].concat([0, 1, 2, 3, 4, 5].map(function (ago) {\n          return (currentYear - ago).toString();\n        })).concat('Prior');\n        this.set('hireYearOptions', hireYearOptions);\n        this.set('selectedHireYear', 'All');\n        this.set('selectedGrantType', 'All');\n        this.set('grantTypeOptions', ['Core', 'Mega', 'All']);\n        this.set('sponsorOptions', this.currentUser.sponsorlist);\n        this.set('selectedSponsor', 'All Sponsor Types');\n        this.set('supplementOptions', ['All', 'Yes', 'No']);\n        this.set('selectedSupplement', 'All');\n        var startYearOptions = ['All'].concat([-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10].map(function (ago) {\n          return (currentYear - ago).toString();\n        })).concat('Prior');\n        this.set('startYearOptions', startYearOptions);\n        this.set('selectedStartYear', 'All');\n        var startMonthOptions = ['All'].concat(_toConsumableArray(Array(13).keys()).slice(1));\n        this.set('startMonthOptions', startMonthOptions);\n        this.set('selectedStartMonths', ['All']);\n        var endYearOptions = ['All'].concat([0, 1, 2, 3, 4, 5, 6, 7].map(function (ago) {\n          return (currentYear + ago).toString();\n        }));\n        this.set('endYearOptions', endYearOptions);\n        this.set('selectedEndYear', 'All');\n        this.set('statusOptions', ['All', 'Pending', 'Funded', 'Not Funded']);\n        this.set('selectedStatus', 'All');\n        var submittedOptions = ['All', 'YTD'].concat([1, 2, 3, 4, 5].map(function (ago) {\n          return (currentYear - ago).toString();\n        })).concat('Prior');\n        this.set('submittedOptions', submittedOptions);\n        this.set('selectedSubmitted', 'All');\n        QUARTILE_OPTION_NO_ACTIVITY = QUARTILE_OPTION_NO_ACTIVITY.replace('{year}', this.year.lastFiscalYear);\n        this.set('quartileOptions', ['All', _tiers.default.QUARTILE_OPTION_TOP_10, _tiers.default.QUARTILE_OPTION_TOP_25, _tiers.default.QUARTILE_OPTION_MID_TIER, _tiers.default.QUARTILE_OPTION_LOW_TIER, QUARTILE_OPTION_NO_ACTIVITY]);\n        this.set('selectedQuartile', 'All');\n      }\n    }, {\n      key: \"searchChanged\",\n      value: function searchChanged() {\n        Ember.run.debounce(this, this.fetchNewData, 500);\n      }\n    }, {\n      key: \"startMonthsChanged\",\n      value: function startMonthsChanged() {\n        var months = this.selectedStartMonths;\n\n        if (!months.length) {\n          months.push('All');\n        } else if (months.length >= 2 && months.includes('All')) {\n          // If All is not the last item (newly added) then clear it\n          if (months.indexOf('All') !== months.length - 1) {\n            months.removeObject('All');\n          } else {\n            //Otherwise remove all other elements if all was selected\n            months.splice(0, months.length - 1);\n          }\n        }\n\n        Ember.run.debounce(this, this.fetchNewData, 500);\n      }\n    }, {\n      key: \"fetchNewData\",\n      value: function fetchNewData() {\n        this.set('model', []);\n        this.set('page', 1);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"setQueryParams\",\n      value: function setQueryParams() {\n        // Set up queryParams to be added to\n        var queryParams = {}; // Sector/Department\n        // Setup the sector options as if it's a sector\n\n        var sectorObject = this.selectedSector;\n        var sector = sectorObject.value;\n        var isSector = true;\n        var department = null; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (sectorObject.id) {\n          department = sectorObject.id;\n          isSector = false;\n        } // Add the sector or department query\n\n\n        if (isSector && sector && sector !== 'All Sectors') {\n          queryParams.sector = sector;\n        } else if (!isSector && department) {\n          queryParams.department_id = department;\n        } // Classify\n\n\n        var selectedClassify = this.selectedClassify;\n\n        if (selectedClassify !== 'All') {\n          queryParams.classify = selectedClassify;\n        } // Hire Year\n\n\n        var selectedHireYear = this.selectedHireYear;\n\n        if (selectedHireYear !== 'All') {\n          //These are category filters\n          if (selectedHireYear === 'New' || selectedHireYear === 'Base') {\n            queryParams.category = selectedHireYear;\n          } else {\n            queryParams.hire_year = selectedHireYear;\n          }\n        } // Core/Mega Grant\n\n\n        var selectedGrantType = this.selectedGrantType;\n\n        if (selectedGrantType !== 'All') {\n          queryParams.is_mega = selectedGrantType === 'Mega';\n        } // Sponsor Type\n\n\n        var selectedSponsor = this.selectedSponsor;\n\n        if (selectedSponsor !== 'All Sponsor Types') {\n          queryParams.sponsor_type = this.currentUser.getSponsorFilterValueForDisplayValue(selectedSponsor);\n        } // Start Year\n\n\n        var selectedStartYear = this.selectedStartYear;\n\n        if (selectedStartYear !== 'All') {\n          queryParams.start_fiscal_year = selectedStartYear;\n        } // Start Month\n\n\n        var selectedStartMonths = this.selectedStartMonths;\n\n        if (selectedStartMonths.length && !selectedStartMonths.includes('All')) {\n          queryParams.start_fiscal_month = selectedStartMonths.join(',');\n        } // End Year\n\n\n        var selectedEndYear = this.selectedEndYear;\n\n        if (selectedEndYear !== 'All') {\n          queryParams.end_fiscal_year = selectedEndYear;\n        } // Status\n\n\n        var selectedStatus = this.selectedStatus.toLowerCase().replace(\" \", \"_\");\n\n        if (selectedStatus !== 'all') {\n          queryParams.status = selectedStatus;\n        } // Submitted\n\n\n        var selectedSubmitted = this.selectedSubmitted;\n\n        if (selectedSubmitted !== 'All') {\n          queryParams.submitted = selectedSubmitted.toLowerCase();\n        } // Supplement\n\n\n        var selectedSupplement = this.selectedSupplement;\n\n        if (selectedSupplement !== 'All') {\n          queryParams.supplement = selectedSupplement.toLowerCase();\n        } //Search\n\n\n        var search = this.searchValue;\n\n        if (search && search !== '') {\n          queryParams.search = search;\n        } //Tier\n\n\n        if (this.selectedQuartile !== 'All') {\n          if (this.selectedQuartile === QUARTILE_OPTION_NO_ACTIVITY) {\n            queryParams.tier_no_actuals_last_year = true;\n          } else {\n            var percentiles = (0, _percentilesFromQuartile.default)(this.selectedQuartile);\n            Object.keys(percentiles).forEach(function (key) {\n              queryParams[key] = percentiles[key];\n            });\n          }\n        }\n\n        return queryParams;\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData(callback) {\n        var _this2 = this;\n\n        this.set('isLoading', true); // We'll query for either successes or proposals\n\n        var view = this.selectedView;\n\n        if (view === 'Successes') {\n          view = 'success';\n        } else if (view === 'Proposals') {\n          view = 'proposal';\n        }\n\n        var queryParams = this.setQueryParams();\n        queryParams.page = this.page;\n        queryParams.ordering = this.sortString; // Fetch the data with the queryParams\n\n        this.store.query(view, queryParams).then(function (result) {\n          if (callback) {\n            callback(result);\n          } else {\n            _this2.set('model', result.toArray());\n\n            _this2.set('isLoading', false);\n\n            _this2.set('meta', result.get('meta'));\n          }\n        });\n      }\n    }, {\n      key: \"setAndUpdateData\",\n      value: function setAndUpdateData(option, value) {\n        this.set(option, value);\n        this.fetchNewData();\n      }\n    }, {\n      key: \"viewChanged\",\n      value: function viewChanged(view) {\n        //Reset proposal only filters\n        this.set('selectedStatus', 'All');\n        this.set('selectedSubmitted', 'All');\n        this.setAndUpdateData('selectedView', view);\n      }\n    }, {\n      key: \"selectSector\",\n      value: function selectSector(sector) {\n        this.setAndUpdateData('selectedSector', sector);\n      }\n    }, {\n      key: \"selectClassify\",\n      value: function selectClassify(faculty) {\n        this.setAndUpdateData('selectedClassify', faculty);\n      }\n    }, {\n      key: \"selectHireYear\",\n      value: function selectHireYear(hireYear) {\n        this.setAndUpdateData('selectedHireYear', hireYear);\n      }\n    }, {\n      key: \"selectGrantType\",\n      value: function selectGrantType(grantType) {\n        this.setAndUpdateData('selectedGrantType', grantType);\n      }\n    }, {\n      key: \"selectSponsor\",\n      value: function selectSponsor(sponsor) {\n        this.setAndUpdateData('selectedSponsor', sponsor);\n      }\n    }, {\n      key: \"selectStartYear\",\n      value: function selectStartYear(year) {\n        this.setAndUpdateData('selectedStartYear', year);\n      }\n    }, {\n      key: \"selectEndYear\",\n      value: function selectEndYear(year) {\n        this.setAndUpdateData('selectedEndYear', year);\n      }\n    }, {\n      key: \"selectStatus\",\n      value: function selectStatus(status) {\n        this.setAndUpdateData('selectedStatus', status);\n      }\n    }, {\n      key: \"selectSubmitted\",\n      value: function selectSubmitted(submitted) {\n        this.setAndUpdateData('selectedSubmitted', submitted);\n      }\n    }, {\n      key: \"selectSupplement\",\n      value: function selectSupplement(supplement) {\n        this.setAndUpdateData('selectedSupplement', supplement);\n      }\n    }, {\n      key: \"selectQuartile\",\n      value: function selectQuartile(value) {\n        this.setAndUpdateData('selectedQuartile', value);\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this3 = this;\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.incrementProperty('page');\n            this.fetchFilteredData(function (result) {\n              _this3.model.pushObjects(result.toArray());\n\n              _this3.set('meta', result.get('meta'));\n\n              _this3.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        var _this4 = this;\n\n        this.set('model', []); // Relationship data needs to be formatted a bit differently\n\n        if (sortColumn === 'principalInvestigator.cellLinkData') {\n          sortColumn = 'principal_investigator__last_name';\n        }\n\n        if (sortColumn === 'principalInvestigator.upi') {\n          sortColumn = 'principal_investigator__upi';\n        }\n\n        if (sortColumn === 'principalInvestigator.classify') {\n          sortColumn = 'principal_investigator__classify';\n        }\n\n        if (sortColumn === 'department.name') {\n          sortColumn = 'department__name';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(sortColumn.underscore());\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.fetchFilteredData(function (result) {\n          _this4.set('meta', result.get('meta'));\n\n          _this4.set('model', result.toArray());\n\n          _this4.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"exportData\",\n      value: function exportData() {\n        //Store the controller scope so we can set the comparative data on response\n        var view = this.selectedView.toLowerCase();\n        var queryParams = this.setQueryParams();\n        queryParams.ordering = this.sortString;\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/\").concat(view, \"/download/?\").concat(_jquery.default.param(queryParams));\n\n        _jquery.default.ajaxSetup({\n          beforeSend: function beforeSend(jqXHR, settings) {\n            if (settings.dataType === 'binary') {\n              settings.xhr().responseType = 'arraybuffer';\n              settings.processData = false;\n            }\n          }\n        });\n\n        return this.ajax.raw(url, {\n          processData: false,\n          dataType: 'binary',\n          headers: {\n            'Accept': 'text/csv'\n          },\n          xhr: function xhr() {\n            var xhr = new XMLHttpRequest();\n            xhr.responseType = 'blob';\n            return xhr;\n          }\n        }).then(function (result) {\n          var blob = result.payload;\n          var xhr = result.jqXHR;\n          var filename = \"export-grants.csv\"; //Try to get filename from disposition header\n\n          var disposition = xhr.getResponseHeader('content-disposition');\n\n          if (disposition && disposition.indexOf('attachment') !== -1) {\n            var filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\n            var matches = filenameRegex.exec(disposition);\n\n            if (matches != null && matches[1]) {\n              filename = matches[1].replace(/['\"]/g, '');\n            }\n          } //IE/Edge not supporting the download tag yet\n\n\n          if (navigator.msSaveBlob) {\n            return navigator.msSaveBlob(blob, filename);\n          } else {\n            var _url = window.URL.createObjectURL(blob);\n\n            var a = document.createElement('a');\n            a.style.display = 'none';\n            a.href = _url; // the filename you want\n\n            a.download = filename;\n            document.body.appendChild(a);\n            a.click();\n            window.URL.revokeObjectURL(_url);\n          }\n        });\n      }\n    }]);\n\n    return DataMiningController;\n  }(Ember.Controller.extend(_openPrintDialog.default, _permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"isProposals\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"searchChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"searchChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"startMonthsChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"startMonthsChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"viewChanged\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"viewChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSector\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSector\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectClassify\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectClassify\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectHireYear\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectHireYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectGrantType\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectGrantType\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSponsor\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSponsor\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectStartYear\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectStartYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectEndYear\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectEndYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectStatus\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectStatus\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSubmitted\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSubmitted\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSupplement\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSupplement\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectQuartile\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectQuartile\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"exportData\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"exportData\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DataMiningController;\n});","define(\"b3i-analytics-web-app/controllers/app/departments\", [\"exports\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _openPrintDialog, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend(_openPrintDialog.default, _permissionsCheck.default, {\n    currentUser: Ember.inject.service('current-user'),\n    appController: Ember.inject.controller('application'),\n    ajax: Ember.inject.service(),\n    currentRouteObserver: Ember.observer('appController.currentPath', function () {\n      var currentRouteName = this.get('appController.currentPath');\n\n      if (currentRouteName === 'app.departments.index') {\n        this.set('departmentName', null);\n        this.set('piName', null);\n        this.set('isDepartmentsPage', true);\n      } else if (currentRouteName === 'app.departments.department') {\n        this.set('piName', null);\n        this.set('isDepartmentsPage', false);\n      } else {\n        this.set('isDepartmentsPage', false);\n      }\n    }).on('init'),\n    actions: {\n      exportDataClicked: function exportDataClicked() {\n        var result = Ember.RSVP.defer();\n        this.send('exportData', result);\n        return result.promise;\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/department\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/mixins/pts-summary-controller\", \"b3i-analytics-web-app/mixins/summary-data-rows\", \"b3i-analytics-web-app/utils/sort-string-with-plan\"], function (_exports, _object, _ptsSummaryController, _summaryDataRows, _sortStringWithPlan) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DepartmentController = (_dec = Ember.inject.service('current-user'), _dec2 = (0, _object.observes)('nearTermDecline', 'directsChange', 'indirectsChange'), _dec3 = Ember.computed('selectedIncludePlan'), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(DepartmentController, _Ember$Controller$ext);\n\n    var _super = _createSuper(DepartmentController);\n\n    function DepartmentController() {\n      var _this;\n\n      _classCallCheck(this, DepartmentController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", '-actuals_one_year_ago_total');\n\n      _defineProperty(_assertThisInitialized(_this), \"tableModel\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedIncludePlan\", 'No');\n\n      return _this;\n    }\n\n    _createClass(DepartmentController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(DepartmentController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('tableModel', []);\n        this.set('nearTermDecline', this.get('currentUser.team.piDeclineFlagSummary'));\n        this.set('directsChange', this.get('currentUser.team.piDirectsChange'));\n        this.set('indirectsChange', this.get('currentUser.team.piIndirectsChange'));\n        this.set('optionsIncludePlan', ['Yes', 'No']);\n      }\n    }, {\n      key: \"saveSettings\",\n      value: function saveSettings() {\n        var settings = {\n          selectedIncludePlan: this.selectedIncludePlan\n        };\n        window.sessionStorage.setItem('departmentSettings', JSON.stringify(settings));\n      }\n    }, {\n      key: \"tableControlsObserver\",\n      value: function tableControlsObserver() {\n        Ember.run.debounce(this, this.fetchMetaData, 500);\n      }\n    }, {\n      key: \"saveAndUpdateSetting\",\n      value: function saveAndUpdateSetting(option, value) {\n        this.set(option, value);\n        Ember.run.debounce(this, this.saveSettings, 250);\n      }\n    }, {\n      key: \"updatePisWithTotal\",\n      value: function updatePisWithTotal(pis) {\n        //Add the dummy total row in front of the pis list\n        pis.unshift(this.percentageRow);\n        pis.unshift(this.totalRow);\n        pis.unshift(this.institutionalTotalRow);\n        return pis;\n      }\n    }, {\n      key: \"fetchMetaData\",\n      value: function fetchMetaData() {\n        var _this2 = this;\n\n        this.store.query('principalInvestigator', {\n          department_id: this.get('model.id'),\n          ordering: this.sortString,\n          page: this.page,\n          directs_change: this.directsChange,\n          indirects_change: this.indirectsChange,\n          near_term_decline: this.nearTermDecline\n        }).then(function (pis) {\n          _this2.set('meta', pis.get('meta'));\n        });\n      }\n    }, {\n      key: \"fetchData\",\n      value: function fetchData() {\n        var _this3 = this;\n\n        this.set('isLoading', true); // If the include toggle plan has changed while sorting on one of the pts columns, we need to update the sort\n\n        var newSortString = (0, _sortStringWithPlan.default)(this.sortString, this.selectedIncludePlan);\n\n        if (newSortString) {\n          this.set('sortString', newSortString);\n        }\n\n        return this.store.query('principalInvestigator', {\n          department_id: this.get('model.id'),\n          ordering: this.sortString,\n          page: this.page,\n          include_plan_pts: this.includePlanPts,\n          directs_change: this.directsChange,\n          indirects_change: this.indirectsChange,\n          near_term_decline: this.nearTermDecline\n        }).then(function (pis) {\n          _this3.set('meta', pis.get('meta'));\n\n          _this3.set('isLoading', false);\n\n          _this3.set('tableModel', _this3.updatePisWithTotal(pis.toArray()));\n        }).catch(function () {\n          _this3.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"includePlanChanged\",\n      value: function includePlanChanged(option) {\n        this.saveAndUpdateSetting('selectedIncludePlan', option);\n        this.set('page', 1);\n        this.fetchData();\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this4 = this;\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.set('page', this.page + 1);\n            this.set('isLoading', true);\n            this.store.query('principalInvestigator', {\n              department_id: this.get('model.id'),\n              ordering: this.sortString,\n              page: this.page,\n              directs_change: this.directsChange,\n              indirects_change: this.indirectsChange,\n              include_plan_pts: this.includePlanPts,\n              near_term_decline: this.nearTermDecline\n            }).then(function (pis) {\n              _this4.set('meta', pis.get('meta'));\n\n              _this4.set('isLoading', false);\n\n              _this4.tableModel.pushObjects(pis.toArray());\n            }).catch(function () {\n              _this4.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        //cellLinkData should be last_name\n        if (sortColumn === 'cellLinkData') {\n          sortColumn = 'last_name';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(sortColumn.underscore());\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.fetchData();\n      }\n    }, {\n      key: \"includePlanPts\",\n      get: function get() {\n        return this.selectedIncludePlan === 'Yes';\n      }\n    }]);\n\n    return DepartmentController;\n  }(Ember.Controller.extend(_ptsSummaryController.default, _summaryDataRows.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"tableControlsObserver\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableControlsObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"includePlanPts\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"includePlanPts\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"includePlanChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"includePlanChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DepartmentController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/index\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/mixins/pts-summary-controller\", \"b3i-analytics-web-app/mixins/summary-data-rows\"], function (_exports, _object, _ptsSummaryController, _summaryDataRows) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.computed('selectedIncludePlan'), _dec3 = Ember.computed('currentUser.{team,role}', 'tableModel.[]'), _dec4 = (0, _object.observes)('nearTermDecline', 'directsChange', 'indirectsChange'), _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(IndexController, _Ember$Controller$ext);\n\n    var _super = _createSuper(IndexController);\n\n    function IndexController() {\n      var _this;\n\n      _classCallCheck(this, IndexController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"tableModel\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingDepartmentExtrapolationHelp\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedIncludePlan\", 'No');\n\n      return _this;\n    }\n\n    _createClass(IndexController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(IndexController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('tableModel', []);\n        this.set('isLoading', true);\n        this.set('nearTermDecline', this.get('currentUser.team.departmentsDeclineFlagSummary'));\n        this.set('directsChange', this.get('currentUser.team.departmentsDirectsChange'));\n        this.set('indirectsChange', this.get('currentUser.team.departmentsIndirectsChange'));\n        this.set('optionsIncludePlan', ['Yes', 'No']);\n      }\n    }, {\n      key: \"saveSettings\",\n      value: function saveSettings() {\n        var settings = {\n          selectedIncludePlan: this.selectedIncludePlan\n        };\n        window.sessionStorage.setItem('departmentsSettings', JSON.stringify(settings));\n      }\n    }, {\n      key: \"saveAndUpdateSetting\",\n      value: function saveAndUpdateSetting(option, value) {\n        this.set(option, value);\n        Ember.run.debounce(this, this.saveSettings, 250);\n      }\n    }, {\n      key: \"tableControlsObserver\",\n      value: function tableControlsObserver() {\n        Ember.run.debounce(this, this.fetchMetaData, 500);\n      }\n    }, {\n      key: \"updateDepartmentsWithTotal\",\n      value: function updateDepartmentsWithTotal(departments) {\n        departments.unshift(this.institutionalTotalRow);\n        return departments;\n      }\n    }, {\n      key: \"fetchMetaData\",\n      value: function fetchMetaData() {\n        var _this2 = this;\n\n        this.store.query('department', {\n          ordering: this.sortString,\n          page: this.page,\n          include_plan_pts: this.includePlanPts,\n          directs_change: this.directsChange,\n          indirects_change: this.indirectsChange,\n          near_term_decline: this.nearTermDecline\n        }).then(function (departments) {\n          _this2.set('meta', departments.get('meta'));\n        });\n      }\n    }, {\n      key: \"fetchData\",\n      value: function fetchData() {\n        var _this3 = this;\n\n        this.set('isLoading', true); //Update the query parameters in the departments route for download\n\n        this.send('setDepartmentsQueryParams', {\n          include_plan_pts: this.includePlanPts\n        }); // If the include toggle plan has changed while sorting on one of the pts columns, we need to update the sort\n\n        return this.store.query('department', {\n          ordering: this.sortString,\n          page: this.page,\n          include_plan_pts: this.includePlanPts,\n          directs_change: this.directsChange,\n          indirects_change: this.indirectsChange,\n          near_term_decline: this.nearTermDecline\n        }).then(function (departments) {\n          _this3.set('page', 1);\n\n          _this3.set('meta', departments.get('meta'));\n\n          _this3.set('tableModel', _this3.updateDepartmentsWithTotal(departments.toArray()));\n\n          _this3.set('isLoading', false);\n        }).catch(function () {\n          _this3.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"includePlanChanged\",\n      value: function includePlanChanged(option) {\n        this.saveAndUpdateSetting('selectedIncludePlan', option);\n        this.set('page', 1);\n        this.fetchData();\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this4 = this;\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (pagination) {\n          var page = this.page;\n\n          if (pagination.pages > page) {\n            this.set('isLoading', true);\n            this.store.query('department', {\n              ordering: this.sortString,\n              page: this.page + 1,\n              directs_change: this.directsChange,\n              include_plan_pts: this.includePlanPts,\n              indirects_change: this.indirectsChange,\n              near_term_decline: this.nearTermDecline\n            }).then(function (departments) {\n              _this4.incrementProperty('page');\n\n              _this4.tableModel.pushObjects(departments.toArray());\n\n              _this4.set('meta', departments.get('meta'));\n\n              _this4.set('isLoading', false);\n            }).catch(function () {\n              //TODO: Handle error\n              _this4.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        //cellLinkData should be last_name\n        if (sortColumn === 'cellLinkData') {\n          sortColumn = 'name';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(sortColumn.underscore());\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.fetchData();\n      }\n    }, {\n      key: \"toggleDepartmentExtrapolationHelp\",\n      value: function toggleDepartmentExtrapolationHelp() {\n        this.toggleProperty('isShowingDepartmentExtrapolationHelp');\n      }\n    }, {\n      key: \"includePlanPts\",\n      get: function get() {\n        return this.selectedIncludePlan === 'Yes';\n      }\n    }, {\n      key: \"departmentsSummaryData\",\n      get: function get() {\n        var role = this.get('currentUser.role');\n\n        if (role === 'sector') {\n          var model = this.tableModel;\n          var summaryData = Ember.Object.create({\n            pisActiveGrantsCount: 0,\n            actualsOneYearAgoDirects: 0,\n            actualsOneYearAgoIndirects: 0,\n            ytdActualsDirects: 0,\n            ytdActualsIndirects: 0,\n            ptsCurrentYearDirects: 0,\n            ptsCurrentYearIndirects: 0,\n            pendingCurrentYearCountNoMega: 0,\n            pendingCurrentYearDirectsNoMega: 0,\n            pendingCurrentYearIndirectsNoMega: 0,\n            endingGrantsCountNoMega: 0,\n            endingGrantsDirectsNoMega: 0,\n            endingGrantsIndirectsNoMega: 0,\n            actualsOneYearAgoYtd: 0,\n            actualsOneYearAgoTotal: 0,\n            actualsTwoYearsAgoYtd: 0,\n            actualsTwoYearsAgoTotal: 0,\n            actualsThreeYearsAgoYtd: 0,\n            actualsThreeYearsAgoTotal: 0,\n            actualsFourYearsAgoYtd: 0,\n            actualsFourYearsAgoTotal: 0,\n            actualsFiveYearsAgoYtd: 0,\n            actualsFiveYearsAgoTotal: 0\n          });\n          model.forEach(function (department, index) {\n            if (index == 0) return;\n            summaryData.set('pisActiveGrantsCount', summaryData.get('pisActiveGrantsCount') + department.get('pisActiveGrantsCount'));\n            summaryData.set('actualsOneYearAgoDirects', summaryData.get('actualsOneYearAgoDirects') + department.get('actualsOneYearAgoDirects'));\n            summaryData.set('actualsOneYearAgoIndirects', summaryData.get('actualsOneYearAgoIndirects') + department.get('actualsOneYearAgoIndirects'));\n            summaryData.set('ytdActualsDirects', summaryData.get('ytdActualsDirects') + department.get('ytdActualsDirects'));\n            summaryData.set('ytdActualsIndirects', summaryData.get('ytdActualsIndirects') + department.get('ytdActualsIndirects'));\n            summaryData.set('ptsCurrentYearDirects', summaryData.get('ptsCurrentYearDirects') + department.get('ptsCurrentYearDirects'));\n            summaryData.set('ptsCurrentYearIndirects', summaryData.get('ptsCurrentYearIndirects') + department.get('ptsCurrentYearIndirects'));\n            summaryData.set('pendingCurrentYearCountNoMega', summaryData.get('pendingCurrentYearCountNoMega') + department.get('pendingCurrentYearCountNoMega'));\n            summaryData.set('pendingCurrentYearDirectsNoMega', summaryData.get('pendingCurrentYearDirectsNoMega') + department.get('pendingCurrentYearDirectsNoMega'));\n            summaryData.set('pendingCurrentYearIndirectsNoMega', summaryData.get('pendingCurrentYearIndirectsNoMega') + department.get('pendingCurrentYearIndirectsNoMega'));\n            summaryData.set('endingGrantsCountNoMega', summaryData.get('endingGrantsCountNoMega') + department.get('endingGrantsCountNoMega'));\n            summaryData.set('endingGrantsDirectsNoMega', summaryData.get('endingGrantsDirectsNoMega') + department.get('endingGrantsDirectsNoMega'));\n            summaryData.set('endingGrantsIndirectsNoMega', summaryData.get('endingGrantsIndirectsNoMega') + department.get('endingGrantsIndirectsNoMega'));\n            summaryData.set('actualsOneYearAgoYtd', summaryData.get('actualsOneYearAgoYtd') + department.get('actualsOneYearAgoYtd'));\n            summaryData.set('actualsOneYearAgoTotal', summaryData.get('actualsOneYearAgoTotal') + department.get('actualsOneYearAgoTotal'));\n            summaryData.set('actualsTwoYearsAgoYtd', summaryData.get('actualsTwoYearsAgoYtd') + department.get('actualsTwoYearsAgoYtd'));\n            summaryData.set('actualsTwoYearsAgoTotal', summaryData.get('actualsTwoYearsAgoTotal') + department.get('actualsTwoYearsAgoTotal'));\n            summaryData.set('actualsThreeYearsAgoYtd', summaryData.get('actualsThreeYearsAgoYtd') + department.get('actualsThreeYearsAgoYtd'));\n            summaryData.set('actualsThreeYearsAgoTotal', summaryData.get('actualsThreeYearsAgoTotal') + department.get('actualsThreeYearsAgoTotal'));\n            summaryData.set('actualsFourYearsAgoYtd', summaryData.get('actualsFourYearsAgoYtd') + department.get('actualsFourYearsAgoYtd'));\n            summaryData.set('actualsFourYearsAgoTotal', summaryData.get('actualsFourYearsAgoTotal') + department.get('actualsFourYearsAgoTotal'));\n            summaryData.set('actualsFiveYearsAgoYtd', summaryData.get('actualsFiveYearsAgoYtd') + department.get('actualsFiveYearsAgoYtd'));\n            summaryData.set('actualsFiveYearsAgoTotal', summaryData.get('actualsFiveYearsAgoTotal') + department.get('actualsFiveYearsAgoTotal'));\n          });\n          return summaryData;\n        } else {\n          return this.get('currentUser.team');\n        }\n      }\n    }]);\n\n    return IndexController;\n  }(Ember.Controller.extend(_ptsSummaryController.default, _summaryDataRows.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"includePlanPts\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"includePlanPts\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"departmentsSummaryData\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentsSummaryData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"tableControlsObserver\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableControlsObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"includePlanChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"includePlanChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleDepartmentExtrapolationHelp\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleDepartmentExtrapolationHelp\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = IndexController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/principal-investigator\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var PrincipalInvestigatorController = (_dec = Ember.computed('model.{appointmentEndDate,tenured,isTerminated}'), _dec2 = Ember.computed('model.fte'), _dec3 = Ember.computed('model.hireDate'), _dec4 = Ember.computed('model.lastPromotionDate'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(PrincipalInvestigatorController, _Ember$Controller);\n\n    var _super = _createSuper(PrincipalInvestigatorController);\n\n    function PrincipalInvestigatorController() {\n      _classCallCheck(this, PrincipalInvestigatorController);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(PrincipalInvestigatorController, [{\n      key: \"appointmentEndDate\",\n      get: function get() {\n        if (this.get('model.isTerminated')) {\n          return 'Terminated';\n        }\n\n        if (this.get('model.tenured')) {\n          return 'Tenured';\n        }\n\n        var appointmentEndDate = this.get('model.appointmentEndDate');\n\n        if (!appointmentEndDate) {\n          return null;\n        }\n\n        return (0, _moment.default)(appointmentEndDate).format('MM/DD/YYYY');\n      }\n    }, {\n      key: \"fte\",\n      get: function get() {\n        if (!this.get('model.fte')) {\n          return null;\n        }\n\n        return this.get('model.fte').toFixed(2);\n      }\n    }, {\n      key: \"hireYear\",\n      get: function get() {\n        var hireDate = this.get('model.hireDate');\n\n        if (!hireDate) {\n          return null;\n        }\n\n        return (0, _moment.default)(hireDate).format('YYYY');\n      }\n    }, {\n      key: \"lastPromoYear\",\n      get: function get() {\n        var lastPromoDate = this.get('model.lastPromotionDate');\n\n        if (!lastPromoDate) {\n          return null;\n        }\n\n        return (0, _moment.default)(lastPromoDate).format('YYYY');\n      }\n    }]);\n\n    return PrincipalInvestigatorController;\n  }(Ember.Controller), (_applyDecoratedDescriptor(_class2.prototype, \"appointmentEndDate\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"appointmentEndDate\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"fte\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"fte\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hireYear\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"hireYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"lastPromoYear\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"lastPromoYear\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = PrincipalInvestigatorController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/principal-investigator/comparative-statistics\", [\"exports\", \"@ember-decorators/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ComparativeStatisticsController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.computed, _dec3 = Ember.computed, _dec4 = Ember.computed('model.comparativeProposalHistories.[]', 'selectedSponsorOption', 'selectedLookbackOption'), _dec5 = (0, _object.observes)('selectedProposalHistory', 'model.{department.name,department.sector}'), _dec6 = Ember.computed, _dec7 = Ember.computed('model.{comparativeStatistics.[],department.name,model.department.sector}'), _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(ComparativeStatisticsController, _Ember$Controller);\n\n    var _super = _createSuper(ComparativeStatisticsController);\n\n    function ComparativeStatisticsController() {\n      var _this;\n\n      _classCallCheck(this, ComparativeStatisticsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedLookbackOption\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedSponsorOption\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedPiView\", 'Dollar Density');\n\n      return _this;\n    }\n\n    _createClass(ComparativeStatisticsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ComparativeStatisticsController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedLookbackOption', \"\".concat(this.get('currentUser.team.lookback'), \" yrs.\"));\n        this.set('selectedSponsorOption', this.get('currentUser.team.proposalSponsor'));\n        this.set('compStatsProposalModel', []);\n      }\n    }, {\n      key: \"selectedProposalHistoryObserver\",\n      value: function selectedProposalHistoryObserver() {\n        var model = this.model;\n        var compProposalHistory = this.selectedProposalHistory; //Ensure the history exists and the promise is resolved\n\n        if (!compProposalHistory || compProposalHistory === [] || typeof compProposalHistory.then == 'function') {\n          return;\n        }\n\n        var piProposedCountPerYear = compProposalHistory.get('piProposedCountPerYear');\n        var piProposedTotalPerYear = compProposalHistory.get('piProposedTotalPerYear');\n        var piFundedCountPerYear = compProposalHistory.get('piFundedCountPerYear');\n        var piFundedTotalPerYear = compProposalHistory.get('piFundedTotalPerYear');\n        var piRow = {\n          name: model.get('name'),\n          rank: model.get('rank'),\n          department: model.get('department.name'),\n          sector: model.get('department.sector'),\n          sample: 0,\n          proposedCount: piProposedCountPerYear,\n          proposedTotal: piProposedTotalPerYear,\n          fundedCount: piFundedCountPerYear,\n          fundedTotal: piFundedTotalPerYear,\n          hitRate: Math.round(piFundedCountPerYear / piProposedCountPerYear * 100),\n          conversationRatio: Math.round(piFundedTotalPerYear / piProposedTotalPerYear * 100)\n        };\n        var departmentProposedCountPerYear = compProposalHistory.get('departmentProposedCountPerYear');\n        var departmentProposedTotalPerYear = compProposalHistory.get('departmentProposedTotalPerYear');\n        var departmentFundedCountPerYear = compProposalHistory.get('departmentFundedCountPerYear');\n        var departmentFundedTotalPerYear = compProposalHistory.get('departmentFundedTotalPerYear');\n        var departmentRow = {\n          rank: model.get('rank'),\n          department: \"All \".concat(model.get('department.name')),\n          sector: model.get('department.sector'),\n          sample: compProposalHistory.get('departmentSampleCount'),\n          proposedCount: departmentProposedCountPerYear,\n          proposedTotal: departmentProposedTotalPerYear,\n          fundedCount: departmentFundedCountPerYear,\n          fundedTotal: departmentFundedTotalPerYear,\n          hitRate: Math.round(departmentFundedCountPerYear / departmentProposedCountPerYear * 100),\n          conversationRatio: Math.round(departmentFundedTotalPerYear / departmentProposedTotalPerYear * 100)\n        };\n        var sectorProposedCountPerYear = compProposalHistory.get('sectorProposedCountPerYear');\n        var sectorProposedTotalPerYear = compProposalHistory.get('sectorProposedTotalPerYear');\n        var sectorFundedCountPerYear = compProposalHistory.get('sectorFundedCountPerYear');\n        var sectorFundedTotalPerYear = compProposalHistory.get('sectorFundedTotalPerYear');\n        var sectorRow = {\n          rank: model.get('rank'),\n          department: 'All Departments',\n          sector: model.get('department.sector'),\n          sample: compProposalHistory.get('sectorSampleCount'),\n          proposedCount: sectorProposedCountPerYear,\n          proposedTotal: sectorProposedTotalPerYear,\n          fundedCount: sectorFundedCountPerYear,\n          fundedTotal: sectorFundedTotalPerYear,\n          hitRate: Math.round(sectorFundedCountPerYear / sectorProposedCountPerYear * 100),\n          conversationRatio: Math.round(sectorFundedTotalPerYear / sectorProposedTotalPerYear * 100)\n        };\n        var schoolProposedCountPerYear = compProposalHistory.get('schoolProposedCountPerYear');\n        var schoolProposedTotalPerYear = compProposalHistory.get('schoolProposedTotalPerYear');\n        var schoolFundedCountPerYear = compProposalHistory.get('schoolFundedCountPerYear');\n        var schoolFundedTotalPerYear = compProposalHistory.get('schoolFundedTotalPerYear');\n        var schoolRow = {\n          rank: model.get('rank'),\n          department: 'All Departments',\n          sector: 'All Sectors',\n          sample: compProposalHistory.get('schoolSampleCount'),\n          proposedCount: schoolProposedCountPerYear,\n          proposedTotal: schoolProposedTotalPerYear,\n          fundedCount: schoolFundedCountPerYear,\n          fundedTotal: schoolFundedTotalPerYear,\n          hitRate: Math.round(schoolFundedCountPerYear / schoolProposedCountPerYear * 100),\n          conversationRatio: Math.round(schoolFundedTotalPerYear / schoolProposedTotalPerYear * 100)\n        };\n        this.set('compStatsProposalModel', [piRow, departmentRow, sectorRow, schoolRow]);\n      }\n    }, {\n      key: \"lookbackChanged\",\n      value: function lookbackChanged(option) {\n        this.set('selectedLookbackOption', option);\n      }\n    }, {\n      key: \"sponsorTypeChanged\",\n      value: function sponsorTypeChanged(option) {\n        this.set('selectedSponsorOption', option);\n      }\n    }, {\n      key: \"switchSelectedView\",\n      value: function switchSelectedView(option) {\n        this.set('selectedPiView', option);\n      }\n    }, {\n      key: \"lookbackOptions\",\n      get: function get() {\n        return ['5 yrs.', '4 yrs.', '3 yrs.'];\n      }\n    }, {\n      key: \"sponsorTypeOptions\",\n      get: function get() {\n        return this.currentUser.sponsorlist;\n      }\n    }, {\n      key: \"selectedProposalHistory\",\n      get: function get() {\n        var model = this.model;\n        var comparativeProposalHistories = model.get('comparativeProposalHistories');\n        var lookbackYears = parseInt(this.selectedLookbackOption);\n        var sponsorType = this.currentUser.getSponsorFilterValueForDisplayValue(this.selectedSponsorOption);\n        var compProposalHistory = comparativeProposalHistories.filter(function (item) {\n          return item.get('lookbackYears') === lookbackYears && item.get('sponsorType').toLowerCase() === sponsorType.toLowerCase();\n        }).objectAt(0);\n\n        if (!compProposalHistory) {\n          return this.store.query('comparative-proposal-history', {\n            principal_investigator_id: this.get('model.id'),\n            lookback_years: lookbackYears,\n            sponsor_type: sponsorType\n          }).then(function (comparativeProposalHistories) {\n            //this.get('model.comparativeProposalHistories').pushObject(comparativeProposalHistories)\n            return comparativeProposalHistories.objectAt(0);\n          });\n        } else {\n          return compProposalHistory;\n        }\n      }\n    }, {\n      key: \"tableViewOptions\",\n      get: function get() {\n        return ['Dollar Density', 'Compensation'];\n      }\n    }, {\n      key: \"compStatsPiModel\",\n      get: function get() {\n        var model = this.model;\n        var comparativeStats = this.get('model.comparativeStatistics');\n\n        if (!comparativeStats) {\n          return [];\n        }\n\n        comparativeStats = comparativeStats.objectAt(0);\n        var piDirectsSquareFootage = Math.round(comparativeStats.get('piDirects') / model.get('labSpace'));\n        var piModifiedDirectsSquareFootage = Math.round(comparativeStats.get('piModifiedOneYearAgoDirects') / model.get('labSpace'));\n        var piIndirectsSquareFootage = Math.round(comparativeStats.get('piIndirects') / model.get('labSpace'));\n        var piRow = {\n          title: model.get('name'),\n          rank: model.get('rank'),\n          department: model.get('department.name'),\n          sector: model.get('department.sector'),\n          sample: 0,\n          directs: comparativeStats.get('piDirects'),\n          indirects: comparativeStats.get('piIndirects'),\n          modifiedDirects: comparativeStats.get('piModifiedOneYearAgoDirects'),\n          squareFootage: model.get('labSpace'),\n          directsPerSquareFoot: piDirectsSquareFootage,\n          indirectsPerSquareFoot: piIndirectsSquareFootage,\n          modifiedDirectsPerSquareFoot: piModifiedDirectsSquareFootage,\n          fte: model.get('fte'),\n          salary: model.get('salary'),\n          compensationPercentile: 0,\n          averageCoverage: model.get('coverage') //reserveBalances: model.get('reserves')\n\n        };\n        var departmentDirectsSquareFootage = Math.round(comparativeStats.get('departmentDirects') / comparativeStats.get('departmentSquareFootage'));\n        var departmentModifiedDirectsSquareFootage = Math.round(comparativeStats.get('departmentModifiedOneYearAgoDirects') / comparativeStats.get('departmentSquareFootage'));\n        var departmentIndirectsSquareFootage = Math.round(comparativeStats.get('departmentIndirects') / comparativeStats.get('departmentSquareFootage'));\n        var departmentRow = {\n          rank: model.get('rank'),\n          department: \"All \".concat(model.get('department.name')),\n          sector: model.get('department.sector'),\n          sample: comparativeStats.get('departmentSampleCount'),\n          directs: comparativeStats.get('departmentDirects'),\n          indirects: comparativeStats.get('departmentIndirects'),\n          modifiedDirects: comparativeStats.get('departmentModifiedOneYearAgoDirects'),\n          squareFootage: comparativeStats.get('departmentSquareFootage'),\n          directsPerSquareFoot: departmentDirectsSquareFootage,\n          indirectsPerSquareFoot: departmentIndirectsSquareFootage,\n          modifiedDirectsPerSquareFoot: departmentModifiedDirectsSquareFootage,\n          directsComparison: Math.round(100 * piDirectsSquareFootage / departmentDirectsSquareFootage),\n          indirectsComparison: Math.round(100 * piIndirectsSquareFootage / departmentIndirectsSquareFootage),\n          modifiedDirectsComparison: Math.round(100 * piModifiedDirectsSquareFootage / departmentModifiedDirectsSquareFootage),\n          salary: comparativeStats.get('departmentCompensation'),\n          compensationPercentile: Math.round(model.get('salary') / comparativeStats.get('departmentCompensation') * 100),\n          averageCoverage: comparativeStats.get('departmentAverageCoverage') //reserveBalances: comparativeStats.get('departmentReserveBalances'),\n\n        };\n        var sectorModifiedDirectsSquareFootage = Math.round(comparativeStats.get('sectorModifiedOneYearAgoDirects') / comparativeStats.get('sectorSquareFootage'));\n        var sectorDirectsSquareFootage = Math.round(comparativeStats.get('sectorDirects') / comparativeStats.get('sectorSquareFootage'));\n        var sectorIndirectsSquareFootage = Math.round(comparativeStats.get('sectorIndirects') / comparativeStats.get('sectorSquareFootage'));\n        var sectorRow = {\n          rank: model.get('rank'),\n          department: 'All Departments',\n          sector: model.get('department.sector'),\n          sample: comparativeStats.get('sectorSampleCount'),\n          directs: comparativeStats.get('sectorDirects'),\n          indirects: comparativeStats.get('sectorIndirects'),\n          modifiedDirects: comparativeStats.get('sectorModifiedOneYearAgoDirects'),\n          squareFootage: comparativeStats.get('sectorSquareFootage'),\n          directsPerSquareFoot: sectorDirectsSquareFootage,\n          indirectsPerSquareFoot: sectorIndirectsSquareFootage,\n          modifiedDirectsPerSquareFoot: sectorModifiedDirectsSquareFootage,\n          directsComparison: Math.round(100 * piDirectsSquareFootage / sectorDirectsSquareFootage),\n          indirectsComparison: Math.round(100 * piIndirectsSquareFootage / sectorIndirectsSquareFootage),\n          modifiedDirectsComparison: Math.round(100 * piModifiedDirectsSquareFootage / sectorModifiedDirectsSquareFootage),\n          salary: comparativeStats.get('sectorCompensation'),\n          compensationPercentile: Math.round(model.get('salary') / comparativeStats.get('sectorCompensation') * 100),\n          averageCoverage: comparativeStats.get('sectorAverageCoverage') //reserveBalances: comparativeStats.get('sectorReserveBalances'),\n\n        };\n        var schoolDirectsSquareFootage = Math.round(comparativeStats.get('schoolDirects') / comparativeStats.get('schoolSquareFootage'));\n        var schoolModifiedDirectsSquareFootage = Math.round(comparativeStats.get('schoolModifiedOneYearAgoDirects') / comparativeStats.get('schoolSquareFootage'));\n        var schoolIndirectsSquareFootage = Math.round(comparativeStats.get('schoolIndirects') / comparativeStats.get('schoolSquareFootage'));\n        var schoolRow = {\n          rank: model.get('rank'),\n          department: 'All Departments',\n          sector: 'All Sectors',\n          sample: comparativeStats.get('schoolSampleCount'),\n          directs: comparativeStats.get('schoolDirects'),\n          indirects: comparativeStats.get('schoolIndirects'),\n          modifiedDirects: comparativeStats.get('schoolModifiedOneYearAgoDirects'),\n          squareFootage: comparativeStats.get('schoolSquareFootage'),\n          directsPerSquareFoot: Math.round(comparativeStats.get('schoolDirects') / comparativeStats.get('schoolSquareFootage')),\n          indirectsPerSquareFoot: schoolIndirectsSquareFootage,\n          modifiedDirectsPerSquareFoot: schoolModifiedDirectsSquareFootage,\n          directsComparison: Math.round(100 * piDirectsSquareFootage / schoolDirectsSquareFootage),\n          indirectsComparison: Math.round(100 * piIndirectsSquareFootage / schoolIndirectsSquareFootage),\n          modifiedDirectsComparison: Math.round(100 * piModifiedDirectsSquareFootage / schoolModifiedDirectsSquareFootage),\n          salary: comparativeStats.get('schoolCompensation'),\n          compensationPercentile: Math.round(model.get('salary') / comparativeStats.get('schoolCompensation') * 100),\n          averageCoverage: comparativeStats.get('schoolAverageCoverage') //reserveBalances: comparativeStats.get('schoolReserveBalances')\n\n        };\n        return [piRow, departmentRow, sectorRow, schoolRow];\n      }\n    }]);\n\n    return ComparativeStatisticsController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"lookbackOptions\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"lookbackOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeOptions\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedProposalHistory\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedProposalHistory\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedProposalHistoryObserver\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedProposalHistoryObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"tableViewOptions\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableViewOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"compStatsPiModel\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"compStatsPiModel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"lookbackChanged\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"lookbackChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeChanged\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"switchSelectedView\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"switchSelectedView\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ComparativeStatisticsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/principal-investigator/history\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var HistoryController = (_dec = Ember.computed('model'), classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(HistoryController, _Ember$Controller);\n\n    var _super = _createSuper(HistoryController);\n\n    function HistoryController() {\n      _classCallCheck(this, HistoryController);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(HistoryController, [{\n      key: \"tableModel\",\n      get: function get() {\n        var sortedProposals = this.get('model.proposals').sortBy('submitYear', 'grantId');\n        var successes = this.get('model.successes');\n        var year = 0;\n        sortedProposals.forEach(function (proposal) {\n          var proposalYear = proposal.get('submitYear');\n\n          if (proposalYear !== year) {\n            proposal.set('displayYear', proposalYear);\n          }\n\n          year = proposalYear;\n        });\n        successes.forEach(function (success) {\n          var grantId = success.get('grantId');\n          var directs = success.get('directs');\n          var indirects = success.get('indirects');\n          var total = success.get('total');\n          var proposal = sortedProposals.findBy('grantId', grantId);\n\n          if (proposal) {\n            proposal.set('fundedDirects', directs);\n            proposal.set('fundedIndirects', indirects);\n            proposal.set('fundedTotal', total);\n          }\n        });\n        return sortedProposals;\n      }\n    }]);\n\n    return HistoryController;\n  }(Ember.Controller), (_applyDecoratedDescriptor(_class2.prototype, \"tableModel\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableModel\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = HistoryController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/departments/principal-investigator/projections\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/constants/errors\", \"moment\", \"b3i-analytics-web-app/mixins/recruitment-calculations\", \"b3i-analytics-web-app/mixins/investigator-projections\"], function (_exports, _object, _errors, _moment, _recruitmentCalculations, _investigatorProjections) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _class, _class2, _temp;\n\n  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\n  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ProjectionsController = ( //The calculations are in the investigator projections mixin to be shared with the export component\n  _dec = Ember.computed('submissionLevelValue', 'max', 'min'), _dec2 = (0, _object.observes)('model'), _dec3 = Ember.computed('model', 'piNotes'), _dec4 = Ember.computed, _dec5 = Ember.computed, _dec6 = Ember.computed, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(ProjectionsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(ProjectionsController);\n\n    function ProjectionsController() {\n      var _this;\n\n      _classCallCheck(this, ProjectionsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"max\", 300);\n\n      _defineProperty(_assertThisInitialized(_this), \"step\", 5);\n\n      _defineProperty(_assertThisInitialized(_this), \"min\", 0);\n\n      _defineProperty(_assertThisInitialized(_this), \"piNotes\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"piNotesErrors\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"piNotesSuccess\", null);\n\n      return _this;\n    }\n\n    _createClass(ProjectionsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ProjectionsController.prototype), \"init\", this).apply(this, arguments);\n\n        this.initGrantProjections();\n        var pellOptions = {\n          actions: ['bold', 'italic', 'underline', 'strikethrough', 'heading1', 'heading2', 'olist', 'ulist', 'line']\n        };\n        this.set('pellOptions', pellOptions);\n      }\n    }, {\n      key: \"setPiNotes\",\n      value: function setPiNotes() {\n        var notes = this.get('model.notes');\n\n        if (notes) {\n          this.set('piNotes', notes);\n        }\n      }\n    }, {\n      key: \"generatePiPlanData\",\n      value: function () {\n        var _generatePiPlanData = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n          var data, futureAverageAnnualSubmissionCount;\n          return regeneratorRuntime.wrap(function _callee$(_context) {\n            while (1) {\n              switch (_context.prev = _context.next) {\n                case 0:\n                  data = {\n                    'active': [],\n                    'pending': [],\n                    'future': {\n                      'will_submit': false,\n                      'submission_rate': 0,\n                      'target_hit_rate': 0,\n                      'average_submission_count': 0\n                    }\n                  };\n                  this.pendingGrants.forEach(function (grant) {\n                    data['pending'].push({\n                      grant_id: grant.grantId,\n                      start_date: (0, _moment.default)(grant.get('startDate')).format('YYYY-MM-DD'),\n                      end_date: (0, _moment.default)(grant.get('endDate')).format('YYYY-MM-DD'),\n                      directs: grant.directs,\n                      indirects: grant.indirects,\n                      resp: grant.funded,\n                      effort: grant.effort\n                    });\n                  });\n                  this.activeGrants.forEach(function (grant) {\n                    data['active'].push({\n                      grant_id: grant.grantId,\n                      start_date: (0, _moment.default)(grant.get('startDate')).format('YYYY-MM-DD'),\n                      end_date: (0, _moment.default)(grant.get('endDate')).format('YYYY-MM-DD'),\n                      directs: grant.directs,\n                      indirects: grant.indirects,\n                      resp: grant.renewProjection,\n                      effort: grant.effort\n                    });\n                  });\n\n                  if (!this.isContinueSubmitting) {\n                    _context.next = 11;\n                    break;\n                  }\n\n                  _context.next = 6;\n                  return this.futureAverageAnnualSubmissionCount;\n\n                case 6:\n                  futureAverageAnnualSubmissionCount = _context.sent;\n                  data['future']['will_submit'] = true;\n                  data['future']['submission_rate'] = this.submissionLevelValue / 100;\n                  data['future']['average_submission_count'] = futureAverageAnnualSubmissionCount;\n                  data['future']['target_hit_rate'] = parseInt(this.selectedTargetHitRateOption) / 100;\n\n                case 11:\n                  return _context.abrupt(\"return\", data);\n\n                case 12:\n                case \"end\":\n                  return _context.stop();\n              }\n            }\n          }, _callee, this);\n        }));\n\n        function generatePiPlanData() {\n          return _generatePiPlanData.apply(this, arguments);\n        }\n\n        return generatePiPlanData;\n      }() //region Future Submission\n      //region Future Submission Options\n\n    }, {\n      key: \"savePiNotes\",\n      value: function savePiNotes() {\n        var _this2 = this;\n\n        var piNotes = this.piNotes;\n        var model = this.model;\n        this.set('piNotesErrors', null);\n        this.set('piNotesSuccess', null);\n        model.set('notes', piNotes);\n        model.save().then(function () {\n          _this2.set('piNotesSuccess', 'Your notes were saved!');\n        }).catch(function (response) {\n          _this2.set('piNotesErrors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"savePlan\",\n      value: function () {\n        var _savePlan = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n          var _this3 = this;\n\n          var model, piPlanData;\n          return regeneratorRuntime.wrap(function _callee2$(_context2) {\n            while (1) {\n              switch (_context2.prev = _context2.next) {\n                case 0:\n                  this.set('piPlanError', null);\n                  model = this.model;\n                  _context2.next = 4;\n                  return this.generatePiPlanData();\n\n                case 4:\n                  piPlanData = _context2.sent;\n                  model.set('plan', piPlanData);\n                  model.set('planDate', new Date());\n                  return _context2.abrupt(\"return\", model.save().then(function () {\n                    _this3.set('piPlanSuccess', 'Your notes were saved!');\n                  }).catch(function () {\n                    _this3.set('piPlanError', 'Failed to save plan. Please try again later.');\n\n                    model.rollback();\n                  }));\n\n                case 8:\n                case \"end\":\n                  return _context2.stop();\n              }\n            }\n          }, _callee2, this);\n        }));\n\n        function savePlan() {\n          return _savePlan.apply(this, arguments);\n        }\n\n        return savePlan;\n      }()\n    }, {\n      key: \"grantProjectionChanged\",\n      value: function grantProjectionChanged() {\n        this.updateProjectedGrants();\n      }\n    }, {\n      key: \"hitRateOptionChanged\",\n      value: function hitRateOptionChanged(value) {\n        this.set('selectedHitRateOption', value);\n      }\n    }, {\n      key: \"continueSubmittingOptionChanged\",\n      value: function continueSubmittingOptionChanged(value) {\n        this.set('selectedContinueSubmittingOption', value);\n      }\n    }, {\n      key: \"targetHitRateOptionChanged\",\n      value: function targetHitRateOptionChanged(value) {\n        this.set('selectedTargetHitRateOption', value);\n      }\n    }, {\n      key: \"rangePercent\",\n      get: function get() {\n        var value = parseFloat(this.submissionLevelValue);\n        var max = this.max;\n        var min = this.min;\n        var scaleShift = 0 - min;\n        return Math.floor((value + scaleShift) / (max + scaleShift) * 100);\n      }\n    }, {\n      key: \"piNotesUpdated\",\n      get: function get() {\n        var notes = this.get('model.notes');\n        var piNotes = this.piNotes;\n        return notes !== piNotes;\n      }\n    }, {\n      key: \"continueSubmittingOptions\",\n      get: function get() {\n        return ['Will Not', 'Will'];\n      }\n    }, {\n      key: \"hitRateOptions\",\n      get: function get() {\n        return ['5 Yr. Hit Rate', '3 Yr. Hit Rate'];\n      }\n    }, {\n      key: \"targetHitRateOptions\",\n      get: function get() {\n        return ['5%', '10%', '15%', '20%', '25%', '30%', '35%', '40%', '45%', '50%', '55%', '60%', '65%', '70%', '75%', '80%', '85%', '90%', '95%', '100%'];\n      }\n    }]);\n\n    return ProjectionsController;\n  }(Ember.Controller.extend(_recruitmentCalculations.default, _investigatorProjections.default)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"rangePercent\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"rangePercent\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setPiNotes\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"setPiNotes\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"piNotesUpdated\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"piNotesUpdated\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"continueSubmittingOptions\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"continueSubmittingOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hitRateOptions\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"hitRateOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"targetHitRateOptions\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"targetHitRateOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"savePiNotes\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"savePiNotes\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"savePlan\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"savePlan\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"grantProjectionChanged\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"grantProjectionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hitRateOptionChanged\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"hitRateOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"continueSubmittingOptionChanged\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"continueSubmittingOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"targetHitRateOptionChanged\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"targetHitRateOptionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ProjectionsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/insights\", [\"exports\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _openPrintDialog, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var InsightsController = classic(_class = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(InsightsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(InsightsController);\n\n    function InsightsController() {\n      _classCallCheck(this, InsightsController);\n\n      return _super.apply(this, arguments);\n    }\n\n    return InsightsController;\n  }(Ember.Controller.extend(_openPrintDialog.default, _permissionsCheck.default))) || _class;\n\n  _exports.default = InsightsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/insights/comparative-proposals-successes\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"accounting/format-money\"], function (_exports, _environment, _formatMoney) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _dec31, _dec32, _dec33, _dec34, _dec35, _dec36, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var chartColors = ['#064831', 'rgba(0,170,110,0.65)', 'rgba(255,206,64,0.65)', 'rgba(249,80,80,0.65)', 'rgba(10,207,255,0.65)', 'rgba(0,157,195,0.65)'];\n  var chartColorsSeven = ['rgba(65, 100, 119, 0.65)', '#064831', 'rgba(0,170,110,0.65)', 'rgba(255,206,64,0.65)', 'rgba(249,80,80,0.65)', 'rgba(10,207,255,0.65)', 'rgba(0,157,195,0.65)'];\n  var ComparativeProposalsSuccessesController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service('current-user'), _dec4 = Ember.computed('comparativeData', 'selectedLookback'), _dec5 = Ember.computed('proposalData'), _dec6 = Ember.computed('comparativeData', 'selectedLookback'), _dec7 = Ember.computed('successData'), _dec8 = Ember.computed('comparativeData', 'selectedLookback'), _dec9 = Ember.computed('potentialSuccessData'), _dec10 = Ember.computed('comparativeData'), _dec11 = Ember.computed('hitRatesData'), _dec12 = Ember.computed('comparativeData', 'selectedLookback'), _dec13 = Ember.computed('comparativeData', 'selectedLookback'), _dec14 = Ember.computed('comparativeData', 'selectedLookback'), _dec15 = Ember.computed('comparativeData', 'selectedLookback'), _dec16 = Ember.computed('comparativeData', 'selectedLookback'), _dec17 = Ember.computed('comparativeData', 'selectedLookback'), _dec18 = Ember.computed('selectedLookback'), _dec19 = Ember.computed('selectedLookback'), _dec20 = Ember.computed('selectedSponsor', 'selectedSector'), _dec21 = Ember.computed('selectedSponsor', 'selectedSector'), _dec22 = Ember.computed('comparativeData', 'selectedLookback'), _dec23 = Ember.computed('comparativeData', 'selectedLookback'), _dec24 = Ember.computed('comparativeData', 'selectedLookback'), _dec25 = Ember.computed('comparativeData', 'selectedLookback'), _dec26 = Ember.computed('comparativeData', 'selectedLookback'), _dec27 = Ember.computed('comparativeData', 'selectedLookback'), _dec28 = Ember.computed('facultyOptionsDisabled'), _dec29 = Ember._action, _dec30 = Ember._action, _dec31 = Ember._action, _dec32 = Ember._action, _dec33 = Ember._action, _dec34 = Ember._action, _dec35 = Ember._action, _dec36 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(ComparativeProposalsSuccessesController, _Ember$Controller);\n\n    var _super = _createSuper(ComparativeProposalsSuccessesController);\n\n    function ComparativeProposalsSuccessesController() {\n      var _this2;\n\n      _classCallCheck(this, ComparativeProposalsSuccessesController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this2 = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"year\", _descriptor, _assertThisInitialized(_this2));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"ajax\", _descriptor2, _assertThisInitialized(_this2));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"currentUser\", _descriptor3, _assertThisInitialized(_this2));\n\n      return _this2;\n    }\n\n    _createClass(ComparativeProposalsSuccessesController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ComparativeProposalsSuccessesController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedSector', {\n          isGroupName: true,\n          value: 'All Sectors'\n        });\n        this.set('selectedLookback', '5yrs');\n        this.set('lookbackOptions', ['1yr', '2yrs', '3yrs', '4yrs', '5yrs']);\n        this.set('sponsorOptions', this.currentUser.sponsorlist);\n        this.set('selectedSponsor', 'All Sponsor Types');\n        this.set('selectedGrantType', 'Core');\n        this.set('grantTypeOptions', ['Core', 'Mega', 'All']);\n\n        if (this.get('currentUser.team.hasClassifyInfo')) {\n          this.set('facultyOptions', ['All', 'Junior', 'Senior', 'Other']);\n          this.set('facultyOptionsDisabled', false);\n        } else {\n          this.set('facultyOptions', ['All']);\n          this.set('facultyOptionsDisabled', true);\n        }\n\n        this.set('selectedFaculty', 'All');\n\n        if (this.get('currentUser.team.hasCategory')) {\n          this.set('categoryOptions', ['All', 'Base', 'New', 'Terminated']);\n          this.set('categoryOptionsDisabled', false);\n        } else {\n          this.set('categoryOptions', ['All']);\n          this.set('categoryOptionsDisabled', true);\n        }\n\n        this.set('selectedCategory', 'All');\n        this.set('supplementOptions', ['All', 'Yes', 'No']);\n        this.set('selectedSupplement', 'All');\n        var currentYear = this.get('currentUser.team.currentFiscalYear');\n        var hireYearOptions = ['All'].concat([0, 1, 2, 3, 4, 5].map(function (ago) {\n          return (currentYear - ago).toString();\n        })).concat('Prior');\n        this.set('hireYearOptions', hireYearOptions);\n        this.set('selectedHireYear', 'All');\n        this.set('labelsFromKeys', {\n          'year_to_date': 'Year-to-Date',\n          'year_total': 'Year Total',\n          'conversion_rate': 'Conversion Rate',\n          'funded': 'Funded Proposals',\n          'success_mm_rate': '% of total proposals value'\n        });\n        this.set('bgFromKeys', {\n          'year_to_date': '#F1BE48',\n          'year_total': '#71C5E8',\n          'conversion_rate': '#F1BE48',\n          'success_mm_rate': '#F1BE48',\n          'funded': '#71C5E8'\n        }); //In the future use a date library to convert numbers into months\n\n        this.set('quarterlyMonths', {\n          7: 'Jul',\n          9: 'Sep',\n          11: 'Nov',\n          12: 'Dec',\n          2: 'Feb',\n          4: 'Apr',\n          6: 'Jun'\n        });\n        var defaultDataLabels = {\n          display: true,\n          align: 'top',\n          anchor: 'end',\n          padding: '-5',\n          font: {\n            family: 'Lato',\n            size: 11,\n            weight: 900\n          }\n        };\n        this.set('defaultDataLabels', defaultDataLabels);\n        var baseChartOptions = {\n          scales: {\n            yAxes: [{\n              ticks: {\n                display: true,\n                beginAtZero: true,\n                min: 0,\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              },\n              gridLines: {\n                display: true,\n                drawTicks: true,\n                zeroLineWidth: 2\n              }\n            }],\n            xAxes: [{\n              stacked: true,\n              ticks: {\n                autoSkip: false,\n                min: 1,\n                max: 12,\n                stepSize: 1,\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              },\n              gridLines: {\n                display: false\n              }\n            }]\n          },\n          legend: {\n            position: 'top',\n            reverse: true,\n            labels: {\n              boxWidth: 12,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontSize: 12,\n              fontStyle: 'bold',\n              reverse: false,\n              usePointStyle: true,\n              fillStyle: '#FFFFFF'\n            }\n          },\n          tooltips: {\n            backgroundColor: '#FAFBFB',\n            bodyFontColor: '#416477',\n            bodyFontFamily: 'Lato',\n            bodySpacing: 6,\n            enabled: false,\n            intersect: false,\n            footerMarginBottom: 20,\n            mode: 'index',\n            multiKeyBackground: '#FAFBFB',\n            position: 'nearest',\n            titleFontColor: '#416477',\n            titleMarginBottom: 12,\n            xPadding: 12,\n            yPadding: 12\n          },\n          title: {\n            display: true,\n            wrap: true\n          },\n          plugins: {\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)'\n            }\n          }\n        };\n        var yTDChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        yTDChartOptions['legend'] = {\n          position: 'top',\n          reverse: false,\n          labels: {\n            boxWidth: 12,\n            fontColor: '#323539',\n            fontFamily: 'Lato',\n            fontSize: 12,\n            fontStyle: 'bold',\n            reverse: true,\n            usePointStyle: false,\n            fillStyle: '#FFFFFF'\n          }\n        };\n        yTDChartOptions['scales'] = {\n          yAxes: [{\n            ticks: {\n              display: false,\n              min: 0\n            },\n            gridLines: {\n              drawBorder: false\n            }\n          }],\n          xAxes: [{\n            maxBarThickness: 20,\n            gridLines: {\n              display: false\n            },\n            ticks: {\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            }\n          }]\n        };\n        yTDChartOptions.scales.xAxes[0].gridLines.display = false;\n        var quarterlyChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        quarterlyChartOptions['legend'] = {\n          position: 'top',\n          reverse: false,\n          display: false,\n          labels: {\n            fill: false,\n            fontColor: '#323539',\n            fontFamily: 'Lato',\n            fontSize: 10,\n            fontStyle: 'bold',\n            reverse: true,\n            fillStyle: '#FFFFFF',\n            usePointStyle: true,\n            fullWidth: true\n          }\n        };\n        var quarterlyDataLabels = JSON.parse(JSON.stringify(defaultDataLabels));\n        quarterlyDataLabels.padding = 1;\n        quarterlyChartOptions.plugins.datalabels = quarterlyDataLabels;\n        quarterlyChartOptions['scales'] = {\n          xAxes: [{\n            maxBarThickness: 25,\n            reverse: true,\n            stacked: false,\n            ticks: {\n              autoSkip: false,\n              min: 1,\n              max: 12,\n              stepSize: 1,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: false\n            }\n          }],\n          yAxes: [{\n            ticks: {\n              display: false,\n              beginAtZero: true,\n              min: 0,\n              max: 50,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: true,\n              drawBorder: false,\n              drawTicks: true,\n              zeroLineWidth: 2\n            }\n          }]\n        };\n        Chart.defaults.global.maintainAspectRatio = false; //eslint-disable-line\n\n        var proposalChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var successChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var potentialSuccessOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var piProposalYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var piSuccessYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var coreProposalYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var coreSuccessYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var coreProposalMMYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var coreSuccessesYTDChartOptions = JSON.parse(JSON.stringify(yTDChartOptions));\n        var hitRatesChartOptions = JSON.parse(JSON.stringify(quarterlyChartOptions));\n\n        proposalChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return '$' + Math.round(value / 1000000);\n        };\n\n        coreSuccessesYTDChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return '$' + Math.round(value / 1000000);\n        };\n\n        potentialSuccessOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return '$' + Math.round(value / 1000000);\n        };\n\n        successChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return '$' + Math.round(value / 1000000);\n        };\n\n        coreProposalMMYTDChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return '$' + Math.round(value / 1000000);\n        };\n\n        hitRatesChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n          return value + '%';\n        };\n\n        var percentageTooltipOptions = {\n          enabled: true,\n          displayColors: false,\n          //Filter out displaying tooltips for the current year\n          filter: function filter(tooltipItem, data) {\n            return tooltipItem.datasetIndex === 1 && tooltipItem.index < data.labels.length - 1;\n          },\n          callbacks: {\n            title: function title() {\n              return null;\n            },\n            label: function label(tooltipItem, data) {\n              //Display the percentage of year to date to year end for each year\n              var percentage = (data.datasets[1].data[tooltipItem.index] / data.datasets[0].data[tooltipItem.index] * 100).toFixed(1);\n              return \"\".concat(percentage, \"% of Year End\");\n            }\n          }\n        }; //Setup tooltips for success and proposals bar charts\n\n        coreSuccessesYTDChartOptions.tooltips = percentageTooltipOptions;\n        coreProposalMMYTDChartOptions.tooltips = percentageTooltipOptions;\n\n        var _this = this;\n\n        coreProposalYTDChartOptions.tooltips = {\n          enabled: true,\n          displayColors: false,\n          callbacks: {\n            title: function title() {\n              return null;\n            },\n            label: function label(tooltipItem, data) {\n              var coreProposalMMChartData = _this.get('coreProposalMMChartData'); //Divide the ytd proposal dollar value by the ytd proposal count\n\n\n              var average = (coreProposalMMChartData.datasets[tooltipItem.datasetIndex].data[tooltipItem.index] / data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index]).toFixed(1);\n              return \"\".concat((0, _formatMoney.default)(average), \" per proposal\");\n            }\n          }\n        };\n        coreSuccessYTDChartOptions.tooltips = {\n          enabled: true,\n          displayColors: false,\n          callbacks: {\n            title: function title() {\n              return null;\n            },\n            label: function label(tooltipItem, data) {\n              var coreSuccessesYTDChartData = _this.get('coreSuccessesYTDChartData'); //Divide the ytd proposal dollar value by the ytd proposal count\n\n\n              var average = (coreSuccessesYTDChartData.datasets[tooltipItem.datasetIndex].data[tooltipItem.index] / data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index]).toFixed(1);\n              return \"\".concat((0, _formatMoney.default)(average), \" per success\");\n            }\n          }\n        };\n        piProposalYTDChartOptions.tooltips = {\n          enabled: true,\n          displayColors: false,\n          callbacks: {\n            title: function title() {\n              return null;\n            },\n            label: function label(tooltipItem, data) {\n              var coreProposalCountChartData = _this.get('coreProposalCountChartData'); //Divide the number of ytd proposals by the number of active pis\n\n\n              var average = (coreProposalCountChartData.datasets[tooltipItem.datasetIndex].data[tooltipItem.index] / data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index]).toFixed(1);\n              return \"\".concat(average, \" proposals per PI\");\n            }\n          }\n        };\n        piSuccessYTDChartOptions.tooltips = {\n          enabled: true,\n          displayColors: false,\n          callbacks: {\n            title: function title() {\n              return null;\n            },\n            label: function label(tooltipItem, data) {\n              var coreSuccessCountChartData = _this.get('coreSuccessCountChartData'); //Divide the number of ytd proposals by the number of active pis\n\n\n              var average = (coreSuccessCountChartData.datasets[tooltipItem.datasetIndex].data[tooltipItem.index] / data.datasets[tooltipItem.datasetIndex].data[tooltipItem.index]).toFixed(1);\n              return \"\".concat(average, \" successes per PI\");\n            }\n          }\n        };\n        proposalChartOptions.title.text = 'Proposals ($mm)';\n        successChartOptions.title.text = 'Successes ($mm)';\n        piProposalYTDChartOptions.title.text = 'YTD & YE Active PI Count (Proposals)';\n        piSuccessYTDChartOptions.title.text = 'YTD & YE Active PI Count (Successes)';\n        coreProposalYTDChartOptions.title.text = 'YTD & YE Proposals (count)';\n        coreSuccessYTDChartOptions.title.text = 'YTD & YE Successes (count)';\n        coreProposalMMYTDChartOptions.title.text = 'YTD & YE Proposals ($mm)';\n        potentialSuccessOptions.title.text = ['Potential for Success based', 'on Proposal Start Dates ($mm)'];\n        coreSuccessesYTDChartOptions.title.text = 'YTD & YE Successes ($mm)';\n        hitRatesChartOptions.title.text = 'Hit Rates (Funded Proposal Count/Total Proposal Count)';\n        this.set('proposalChartOptions', proposalChartOptions);\n        this.set('successChartOptions', successChartOptions);\n        this.set('piProposalYTDChartOptions', piProposalYTDChartOptions);\n        this.set('piSuccessYTDChartOptions', piSuccessYTDChartOptions);\n        this.set('coreProposalYTDChartOptions', coreProposalYTDChartOptions);\n        this.set('coreSuccessYTDChartOptions', coreSuccessYTDChartOptions);\n        this.set('coreProposalMMYTDChartOptions', coreProposalMMYTDChartOptions);\n        this.set('potentialSuccessOptions', potentialSuccessOptions);\n        this.set('coreSuccessesYTDChartOptions', coreSuccessesYTDChartOptions);\n        this.set('hitRatesChartOptions', hitRatesChartOptions);\n      } //region Filtering and formatting\n\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData() {\n        this.set('isLoading', true); // Setup the sector options as if it's a sector\n\n        var sectorObject = this.selectedSector;\n        var sector = sectorObject.value;\n        var isSector = true;\n        var department = null; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (sectorObject.id && sectorObject.id !== undefined) {\n          department = sectorObject.id;\n          isSector = false;\n        } // Setup the sponsor type options\n\n\n        var sponsorType = this.selectedSponsor;\n        var facultyType = this.selectedFaculty;\n        var selectedCategory = this.selectedCategory;\n        var selectedHireYear = this.selectedHireYear;\n\n        if (selectedHireYear === 'New') {\n          selectedHireYear = this.get('currentUser.team.currentFiscalYear');\n        }\n\n        var grantType = this.selectedGrantType; // Now for the query building\n        // Define the query using the base lookback so can add to it later\n\n        var query = '?lookback=5'; // Add the sector or department query\n\n        if (isSector && sector && sector !== 'All Sectors') {\n          var sectorQuery = encodeURIComponent(sector);\n          query += \"&sector=\".concat(sectorQuery);\n        } else if (!isSector && department) {\n          var departmentQuery = encodeURIComponent(department);\n          query += \"&department_id=\".concat(departmentQuery);\n        }\n\n        if (sponsorType && sponsorType !== 'All Sponsor Types') {\n          var sponsorVal = this.currentUser.getSponsorFilterValueForDisplayValue(sponsorType);\n          var sponsorQuery = encodeURIComponent(sponsorVal);\n          query += \"&sponsor_type=\".concat(sponsorQuery);\n        }\n\n        if (facultyType && facultyType !== 'All') {\n          var facultyQuery = encodeURIComponent(facultyType);\n          query += \"&faculty_type=\".concat(facultyQuery);\n        }\n\n        if (selectedCategory && selectedCategory !== 'All') {\n          var category = encodeURIComponent(selectedCategory);\n          query += \"&category=\".concat(category);\n        }\n\n        if (selectedHireYear && selectedHireYear !== 'All') {\n          var hireYear = encodeURIComponent(selectedHireYear);\n          query += \"&hire_year=\".concat(hireYear);\n        }\n\n        if (grantType && grantType !== 'All') {\n          var grantQuery = encodeURIComponent(grantType.toLowerCase());\n          query += \"&grant_type=\".concat(grantQuery);\n        } // Supplement\n\n\n        var selectedSupplement = this.selectedSupplement;\n\n        if (selectedSupplement !== 'All') {\n          query += \"&supplement=\".concat(selectedSupplement.toLowerCase());\n        } //Store the controller scope so we can set the comparative data on response\n\n\n        var _this = this;\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/insights/comparative_history/\").concat(query);\n        this.ajax.request(url).then(function (response) {\n          Ember.run(function () {\n            _this.set('comparativeData', response);\n\n            _this.set('isLoading', false);\n          });\n        });\n      }\n    }, {\n      key: \"calculateFormattedData\",\n      value: function calculateFormattedData(data, fullYear, showOneYearAhead) {\n        var lookback = this.selectedLookback;\n        var lookbackYears = parseInt(lookback);\n        var fy = this.get('year.fiscalYear');\n        var month = fullYear ? 12 : this.get('year.lastCompletedFiscalMonth');\n        var remainingMonths = 12 - month;\n\n        if (data && data !== undefined) {\n          //Fixes crossover issue with months\n          var ytdCurrentYearData = data.current_year.slice(0, month <= 1 ? 12 : month);\n          var i;\n\n          for (i = 0; i < remainingMonths; i++) {\n            ytdCurrentYearData.push(0);\n          }\n\n          var formattedData = [{\n            label: fy,\n            rowData: ytdCurrentYearData\n          }, {\n            label: fy - 1,\n            rowData: data.one_year_ago\n          }];\n\n          if (showOneYearAhead) {\n            formattedData.unshift({\n              label: fy + 1,\n              rowData: data.one_year_ahead\n            });\n          }\n\n          if (lookbackYears >= 2) {\n            formattedData.push({\n              label: fy - 2,\n              rowData: data.two_years_ago\n            });\n          }\n\n          if (lookbackYears >= 3) {\n            formattedData.push({\n              label: fy - 3,\n              rowData: data.three_years_ago\n            });\n          }\n\n          if (lookbackYears >= 4) {\n            formattedData.push({\n              label: fy - 4,\n              rowData: data.four_years_ago\n            });\n          }\n\n          if (lookbackYears >= 5) {\n            formattedData.push({\n              label: fy - 5,\n              rowData: data.five_years_ago\n            });\n          }\n\n          formattedData.forEach(function (row) {\n            var rowData = row.rowData; // Add a YTD and total if there's not already one\n\n            if (rowData.length < 14) {\n              var ytdRowData = rowData.slice(0, month); // Calculate the sums before any are introduced into the row\n\n              var ytdRowSum = ytdRowData.reduce(function (a, b) {\n                return a + b;\n              }, 0);\n              var rowSum = rowData.reduce(function (a, b) {\n                return a + b;\n              }, 0); // Add the YTD sum (order is important here)\n\n              rowData.push(ytdRowSum); // Add the total sum\n\n              rowData.push(rowSum);\n            }\n          });\n          return formattedData;\n        }\n      } //endregion\n      //region Chart Data\n\n    }, {\n      key: \"getYearChangeString\",\n      value: function getYearChangeString(ytdArray, dollars) {\n        var currentYear = ytdArray[ytdArray.length - 1];\n        var previousYear = ytdArray[ytdArray.length - 2];\n        var diff; //Convert from millions of dollars\n\n        if (dollars) {\n          diff = Math.round((currentYear - previousYear) / 1000000);\n        } else {\n          diff = currentYear - previousYear;\n        }\n\n        var percentage = '';\n\n        if (previousYear !== 0) {\n          percentage = \"\".concat(Math.round((currentYear - previousYear) / previousYear * 100).toFixed(1), \"%\");\n        }\n\n        return Ember.String.htmlSafe(\"<span class=\\\"\".concat(diff > 0 ? 'green' : 'red', \"\\\">\").concat(diff > 0 ? '+' : '').concat(dollars ? '$' : '').concat(diff, \"</span>  (<span class=\\\"\").concat(diff > 0 ? 'green' : 'red', \"\\\">\").concat(diff > 0 ? '+' : '').concat(percentage, \"</span>)\"));\n      } //endregion\n\n    }, {\n      key: \"lookbackChanged\",\n      value: function lookbackChanged(lookback) {\n        this.set('selectedLookback', lookback);\n      }\n    }, {\n      key: \"selectSector\",\n      value: function selectSector(sector) {\n        this.set('selectedSector', sector);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectSponsor\",\n      value: function selectSponsor(sponsor) {\n        this.set('selectedSponsor', sponsor);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectFaculty\",\n      value: function selectFaculty(faculty) {\n        this.set('selectedFaculty', faculty);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectCategory\",\n      value: function selectCategory(category) {\n        this.set('selectedCategory', category);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectHireYear\",\n      value: function selectHireYear(hireYear) {\n        this.set('selectedHireYear', hireYear);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectGrantType\",\n      value: function selectGrantType(grantType) {\n        this.set('selectedGrantType', grantType);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectSupplement\",\n      value: function selectSupplement(supplement) {\n        this.set('selectedSupplement', supplement);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"proposalData\",\n      get: function get() {\n        var data = this.get('comparativeData.data.core_proposals_mm');\n\n        if (data !== undefined) {\n          return this.calculateFormattedData(data, true);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"proposalChartData\",\n      get: function get() {\n        var data = this.proposalData;\n\n        if (!data) {\n          return null;\n        }\n\n        var months = [];\n\n        for (var i = 1; i <= 12; i++) {\n          months.push(i);\n        }\n\n        var bgColors = chartColors; //Show the as of month for the current year\n\n        var month = this.get('year.lastCompletedFiscalMonth');\n        var year = this.get('year.fiscalYear');\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          return Math.round(value / 1000000);\n        };\n\n        data.forEach(function (data, index) {\n          var dataLabels;\n\n          if (data.label === year) {\n            dataLabels = dataLabelsConfig;\n          } else {\n            dataLabels = {\n              display: false\n            };\n          }\n\n          var rowData = data.rowData.slice(0, 12);\n\n          if (year === data.label) {\n            //Fixes crossover issue\n            rowData.splice(month <= 1 ? 12 : month);\n          }\n\n          chartDatasets.push({\n            label: data.label,\n            data: rowData,\n            borderColor: bgColors[index],\n            fill: false,\n            pointRadius: 3,\n            backgroundColor: '#FFFFFF',\n            pointStyle: 'circle',\n            borderWidth: 2,\n            datalabels: dataLabels\n          });\n        });\n        return {\n          labels: months,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"successData\",\n      get: function get() {\n        var data = this.get('comparativeData.data.core_successes_mm');\n\n        if (data !== undefined) {\n          return this.calculateFormattedData(data, true);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"successChartData\",\n      get: function get() {\n        var data = this.successData;\n\n        if (!data) {\n          return null;\n        }\n\n        var months = [];\n\n        for (var i = 1; i <= 12; i++) {\n          months.push(i);\n        }\n\n        var bgColors = chartColors; //Show the as of month for the current year\n\n        var month = this.get('year.lastCompletedFiscalMonth');\n        var year = this.get('year.fiscalYear');\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          return Math.round(value / 1000000);\n        };\n\n        var chartDatasets = [];\n        data.forEach(function (data, index) {\n          var dataLabels;\n\n          if (data.label === year) {\n            dataLabels = dataLabelsConfig;\n          } else {\n            dataLabels = {\n              display: false\n            };\n          }\n\n          var rowData = data.rowData.slice(0, 12);\n\n          if (year === data.label) {\n            rowData.splice(month <= 1 ? 12 : month);\n          }\n\n          chartDatasets.push({\n            label: data.label,\n            data: rowData,\n            borderColor: bgColors[index],\n            fill: false,\n            pointRadius: 3,\n            backgroundColor: '#FFFFFF',\n            pointStyle: 'circle',\n            borderWidth: 2,\n            datalabels: dataLabels\n          });\n        });\n        return {\n          labels: months,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"potentialSuccessData\",\n      get: function get() {\n        var data = this.get('comparativeData.data.core_successes_potential');\n\n        if (data !== undefined) {\n          //Show full year for current year\n          return this.calculateFormattedData(data, true, true);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"potentialSuccessChartData\",\n      get: function get() {\n        var data = this.potentialSuccessData;\n\n        if (!data) {\n          return null;\n        }\n\n        var year = this.get('year.fiscalYear');\n        var months = [];\n\n        for (var i = 1; i <= 12; i++) {\n          months.push(i);\n        }\n\n        var bgColors = chartColorsSeven;\n        var dataLabelsConfig = this.defaultDataLabels;\n        var fiscalStartMonth = this.get('year.fiscalStartMonth');\n\n        dataLabelsConfig.formatter = function (value, context) {\n          if (fiscalStartMonth === 7) {\n            if (context.dataIndex === 0 || context.dataIndex === 2 || context.dataIndex === 5 || context.dataIndex === 9) {\n              return Math.round(value / 1000000);\n            }\n\n            return '';\n          } else if (fiscalStartMonth === 9) {\n            if (context.dataIndex === 0 || context.dataIndex === 3 || context.dataIndex === 7 || context.dataIndex === 10) {\n              return Math.round(value / 1000000);\n            }\n\n            return '';\n          }\n        };\n\n        var chartDatasets = [];\n        data.forEach(function (data, index) {\n          var dataLabels;\n\n          if (data.label === year) {\n            dataLabels = dataLabelsConfig;\n          } else {\n            dataLabels = {\n              display: false\n            };\n          }\n\n          var rowData = data.rowData.slice(0, 12); // Potential for successes should show the full current year\n\n          chartDatasets.push({\n            label: data.label,\n            data: rowData,\n            borderColor: bgColors[index],\n            fill: false,\n            pointRadius: 3,\n            backgroundColor: '#FFFFFF',\n            pointStyle: 'circle',\n            borderWidth: 2,\n            datalabels: dataLabels\n          });\n        });\n        return {\n          labels: months,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"hitRatesData\",\n      get: function get() {\n        var data = this.get('comparativeData.data.hit_rates');\n\n        if (data !== undefined) {\n          return data;\n        }\n\n        return null;\n      }\n    }, {\n      key: \"hitRatesChartData\",\n      get: function get() {\n        var _this3 = this;\n\n        var data = this.hitRatesData;\n\n        if (!data) {\n          return null;\n        }\n\n        var labels = data.month.map(function (month) {\n          return _this3.quarterlyMonths[month];\n        }).map(function (month, index) {\n          return \"\".concat(month, \"-\").concat(data.year[index]);\n        });\n        var formattedLabels = labels.map(function (label) {\n          return label.replace('20', '');\n        });\n        var chartDatasets = []; // add conversion_rate\n\n        chartDatasets.push({\n          label: this.labelsFromKeys['conversion_rate'],\n          data: data['conversion_rate'].map(function (int, index) {\n            return data.conversion_rate[index] * 100;\n          }),\n          borderColor: '#000000',\n          fill: false,\n          type: 'line',\n          pointRadius: 3,\n          pointStyle: 'circle',\n          backgroundColor: '#FFFFFF',\n          borderWidth: 2,\n          datalabels: {\n            display: true,\n            formatter: function formatter(value, context) {\n              if (data['conversion_rate'][context.dataIndex] === 0) return '';\n              return \"\".concat((data['conversion_rate'][context.dataIndex] * 100).toFixed(0), \" %\");\n            }\n          }\n        });\n        return {\n          labels: formattedLabels,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"piProposalYTDChartData\",\n      get: function get() {\n        var _this4 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (value === 0) return '';\n          return value;\n        };\n\n        Object.keys(data.active_pis_proposals).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this4.labelsFromKeys[keys],\n            data: data.active_pis_proposals[keys].slice(_this4.lookbackOptions.length - _this4.yearCount),\n            borderColor: _this4.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this4.bgFromKeys[keys],\n            datalabels: JSON.parse(JSON.stringify(dataLabelsConfig))\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"piSuccessYTDChartData\",\n      get: function get() {\n        var _this5 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (value === 0) return '';\n          return value;\n        };\n\n        Object.keys(data.active_pis_successes).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this5.labelsFromKeys[keys],\n            data: data.active_pis_successes[keys].slice(_this5.lookbackOptions.length - _this5.yearCount),\n            borderColor: _this5.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this5.bgFromKeys[keys],\n            datalabels: JSON.parse(JSON.stringify(dataLabelsConfig))\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"coreSuccessesYTDChartData\",\n      get: function get() {\n        var _this6 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (Math.round(value / 1000000) === 0) return '';\n          return Math.round(value / 1000000);\n        };\n\n        Object.keys(data.core_successes_mm_ytd_ye).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this6.labelsFromKeys[keys],\n            data: data.core_successes_mm_ytd_ye[keys].slice(_this6.lookbackOptions.length - _this6.yearCount),\n            borderColor: _this6.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this6.bgFromKeys[keys],\n            datalabels: dataLabelsConfig\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"coreProposalCountChartData\",\n      get: function get() {\n        var _this7 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (value === 0) return '';\n          return value;\n        };\n\n        Object.keys(data.core_proposals_count_ytd_ye).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this7.labelsFromKeys[keys],\n            data: data.core_proposals_count_ytd_ye[keys].slice(_this7.lookbackOptions.length - _this7.yearCount),\n            borderColor: _this7.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this7.bgFromKeys[keys],\n            datalabels: JSON.parse(JSON.stringify(dataLabelsConfig))\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"coreSuccessCountChartData\",\n      get: function get() {\n        var _this8 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (value === 0) return '';\n          return value;\n        };\n\n        Object.keys(data.core_successes_count_ytd_ye).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this8.labelsFromKeys[keys],\n            data: data.core_successes_count_ytd_ye[keys].slice(_this8.lookbackOptions.length - _this8.yearCount),\n            borderColor: _this8.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this8.bgFromKeys[keys],\n            datalabels: JSON.parse(JSON.stringify(dataLabelsConfig))\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      }\n    }, {\n      key: \"coreProposalMMChartData\",\n      get: function get() {\n        var _this9 = this;\n\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var chartDatasets = [];\n        var dataLabelsConfig = this.defaultDataLabels;\n\n        dataLabelsConfig.formatter = function (value) {\n          if (Math.round(value / 1000000) === 0) return '';\n          return Math.round(value / 1000000);\n        };\n\n        Object.keys(data.core_proposals_mm_ytd_ye).sort().forEach(function (keys) {\n          chartDatasets.unshift({\n            label: _this9.labelsFromKeys[keys],\n            data: data.core_proposals_mm_ytd_ye[keys].slice(_this9.lookbackOptions.length - _this9.yearCount),\n            borderColor: _this9.bgFromKeys[keys],\n            fill: true,\n            pointRadius: 3,\n            backgroundColor: _this9.bgFromKeys[keys],\n            datalabels: dataLabelsConfig\n          });\n        });\n        return {\n          labels: this.years,\n          datasets: chartDatasets\n        };\n      } //endregion\n      //region Years\n\n    }, {\n      key: \"years\",\n      get: function get() {\n        var lookbackCount = this.selectedLookback;\n        var count;\n\n        switch (lookbackCount) {\n          case '5yrs':\n            count = 5;\n            break;\n\n          case '4yrs':\n            count = 4;\n            break;\n\n          case '3yrs':\n            count = 3;\n            break;\n\n          case '2yrs':\n            count = 2;\n            break;\n\n          case '1yr':\n            count = 1;\n            break;\n\n          default:\n            throw new Error('lookbackCount must be defined');\n        }\n\n        var years = [];\n        var currentYear = this.get('year.fiscalYear');\n\n        for (var i = count; i >= 0; i--) {\n          years.push(currentYear - i);\n        }\n\n        return years;\n      }\n    }, {\n      key: \"yearCount\",\n      get: function get() {\n        var lookbackCount = this.selectedLookback;\n\n        switch (lookbackCount) {\n          case '5yrs':\n            return 5;\n\n          case '4yrs':\n            return 4;\n\n          case '3yrs':\n            return 3;\n\n          case '2yrs':\n            return 2;\n\n          case '1yr':\n            return 1;\n\n          default:\n            throw new Error('yearCount must be defined');\n        }\n      } //endregion\n      //region Titles\n\n    }, {\n      key: \"proposalsExhibitTitle\",\n      get: function get() {\n        var sponsor = this.selectedSponsor;\n        var sector = this.get('selectedSector.value');\n        return \"Core Proposals (mm) | \".concat(sector, \" | \").concat(sponsor);\n      }\n    }, {\n      key: \"successesExhibitTitle\",\n      get: function get() {\n        var sponsor = this.selectedSponsor;\n        var sector = this.get('selectedSector.value');\n        return \"Core Successes (mm) | \".concat(sector, \" | \").concat(sponsor);\n      } //endregion\n      //region YTD and previous YTD change strings\n\n    }, {\n      key: \"coreSuccessesDollarChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var coreSuccessesYtdYe = data.core_successes_mm_ytd_ye;\n        var coreSuccessesYtd = coreSuccessesYtdYe.year_to_date;\n\n        if (coreSuccessesYtd != null) {\n          return this.getYearChangeString(coreSuccessesYtd, true);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"coreProposalsDollarChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var coreProposalsYtdYe = data.core_proposals_mm_ytd_ye;\n        var coreProposalsYtd = coreProposalsYtdYe.year_to_date;\n\n        if (coreProposalsYtd != null) {\n          return this.getYearChangeString(coreProposalsYtd, true);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"coreProposalsCountChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var coreProposalsYtdYe = data.core_proposals_count_ytd_ye;\n        var coreProposalsYtd = coreProposalsYtdYe.year_to_date;\n\n        if (coreProposalsYtd != null) {\n          return this.getYearChangeString(coreProposalsYtd, false);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"coreSuccessesCountChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var coreSuccessesYtdYe = data.core_successes_count_ytd_ye;\n        var coreSuccessesYtd = coreSuccessesYtdYe.year_to_date;\n\n        if (coreSuccessesYtd != null) {\n          return this.getYearChangeString(coreSuccessesYtd, false);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"activePiProposalCountChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var activePisYtdYe = data.active_pis_proposals;\n        var activePisYtd = activePisYtdYe.year_to_date;\n\n        if (activePisYtd != null) {\n          return this.getYearChangeString(activePisYtd, false);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"activePiSuccessCountChangeString\",\n      get: function get() {\n        var data = this.get('comparativeData.data');\n\n        if (!data) {\n          return null;\n        }\n\n        var activePisYtdYe = data.active_pis_successes;\n        var activePisYtd = activePisYtdYe.year_to_date;\n\n        if (activePisYtd != null) {\n          return this.getYearChangeString(activePisYtd, false);\n        }\n\n        return null;\n      }\n    }, {\n      key: \"facultyTypeHoverText\",\n      get: function get() {\n        var facultyOptionsDisabled = this.facultyOptionsDisabled;\n\n        if (facultyOptionsDisabled) {\n          return 'Rank data has not been provided.';\n        }\n\n        return null;\n      }\n    }]);\n\n    return ComparativeProposalsSuccessesController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"proposalData\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalChartData\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"successData\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"successData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"successChartData\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"successChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"potentialSuccessData\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"potentialSuccessData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"potentialSuccessChartData\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"potentialSuccessChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hitRatesData\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"hitRatesData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hitRatesChartData\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"hitRatesChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"piProposalYTDChartData\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"piProposalYTDChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"piSuccessYTDChartData\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"piSuccessYTDChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreSuccessesYTDChartData\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreSuccessesYTDChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreProposalCountChartData\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreProposalCountChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreSuccessCountChartData\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreSuccessCountChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreProposalMMChartData\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreProposalMMChartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"years\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"years\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"yearCount\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"yearCount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalsExhibitTitle\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalsExhibitTitle\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"successesExhibitTitle\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"successesExhibitTitle\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreSuccessesDollarChangeString\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreSuccessesDollarChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreProposalsDollarChangeString\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreProposalsDollarChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreProposalsCountChangeString\", [_dec24], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreProposalsCountChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"coreSuccessesCountChangeString\", [_dec25], Object.getOwnPropertyDescriptor(_class2.prototype, \"coreSuccessesCountChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"activePiProposalCountChangeString\", [_dec26], Object.getOwnPropertyDescriptor(_class2.prototype, \"activePiProposalCountChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"activePiSuccessCountChangeString\", [_dec27], Object.getOwnPropertyDescriptor(_class2.prototype, \"activePiSuccessCountChangeString\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"facultyTypeHoverText\", [_dec28], Object.getOwnPropertyDescriptor(_class2.prototype, \"facultyTypeHoverText\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"lookbackChanged\", [_dec29], Object.getOwnPropertyDescriptor(_class2.prototype, \"lookbackChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSector\", [_dec30], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSector\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSponsor\", [_dec31], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSponsor\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectFaculty\", [_dec32], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectFaculty\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectCategory\", [_dec33], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectCategory\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectHireYear\", [_dec34], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectHireYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectGrantType\", [_dec35], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectGrantType\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSupplement\", [_dec36], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSupplement\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ComparativeProposalsSuccessesController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/insights/core-detail\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/current-year-projections\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _environment, _currentYearProjections, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CoreDetailController = (_dec = Ember.computed('currentUser.role'), _dec2 = Ember.inject.service('current-user'), _dec3 = Ember.inject.service, _dec4 = Ember.computed('coreDetailData.data', 'model.projection', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor7'), _dec5 = Ember._action, _dec6 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(CoreDetailController, _Ember$Controller$ext);\n\n    var _super = _createSuper(CoreDetailController);\n\n    function CoreDetailController() {\n      var _this;\n\n      _classCallCheck(this, CoreDetailController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedGrantType\", 'Core');\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"hoverText\", 'This page displays core proposal, conversion ratio and success histories plus the projection for the current year at the \"as of\" date noted in the upper right corner. Above each \"2019 (P)\" figures for core proposal and conversion ratios are the active settings on the Main Projection Page.');\n\n      return _this;\n    }\n\n    _createClass(CoreDetailController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(CoreDetailController.prototype), \"init\", this).apply(this, arguments);\n\n        var grantTypeOptions = ['Core', 'Mega'];\n        this.set('grantTypeOptions', grantTypeOptions);\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData() {\n        this.set('isLoading', true);\n        this.set('coreDetailData', []);\n        var isMega = encodeURIComponent(this.selectedGrantType === 'Mega');\n        var query = \"?is_mega=\".concat(isMega); // Setup the sector options as if it's a sector\n\n        var sectorObject = this.selectedFilterOption;\n        var sector = sectorObject.value;\n        var isSector = true;\n        var department = null; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (sectorObject.id && sectorObject.id !== undefined) {\n          department = sectorObject.id;\n          isSector = false;\n        } // Add the sector or department query\n\n\n        if (isSector && sector && sector !== 'All Sectors') {\n          var sectorQuery = encodeURIComponent(sector);\n          query += \"&sector=\".concat(sectorQuery);\n        } else if (!isSector && department) {\n          var departmentQuery = encodeURIComponent(department);\n          query += \"&department_id=\".concat(departmentQuery);\n        }\n\n        var controller = this;\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/insights/budget_summary/\").concat(query);\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          Ember.run(function () {\n            controller.set('coreDetailData', response);\n            controller.set('isLoading', false);\n          });\n        });\n      }\n    }, {\n      key: \"fetchProjection\",\n      value: function fetchProjection(option) {\n        var _this2 = this;\n\n        //Fetch projections model for current year projections\n        if (option.value === 'All Sectors') {\n          this.store.query('projection', {}).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n            }\n          });\n        } else if (option.isGroupName) {\n          this.store.query('projection', {\n            'sector': option.value\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n            }\n          });\n        } else {\n          this.store.query('projection', {\n            'department_id': option.id\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n            }\n          });\n        }\n\n        this.set('selectedFilterOption', option);\n      }\n    }, {\n      key: \"updateArrayWithCurrentYearData\",\n      value: function updateArrayWithCurrentYearData(array, currentYearData) {\n        array.push(currentYearData);\n        var currentYear = array[array.length - 1]; //If the current year hasn't been set, set it to the prior year\n\n        if (!currentYear) {\n          array[array.length - 1] = array[array.length - 2];\n        } //Push variance data\n\n\n        var varience = array[array.length - 1] - array[array.length - 2];\n        array.push(varience);\n        return array;\n      }\n    }, {\n      key: \"selectGrantType\",\n      value: function selectGrantType(type) {\n        this.set('selectedGrantType', type);\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"selectSector\",\n      value: function selectSector(option) {\n        this.set('selectedFilterOption', option);\n        this.fetchFilteredData();\n        this.fetchProjection(option);\n      }\n    }, {\n      key: \"disableSectorSelect\",\n      get: function get() {\n        var role = this.get('currentUser.role');\n        return role === _roles.default.DEPARTMENT;\n      }\n    }, {\n      key: \"tableData\",\n      get: function get() {\n        var data = this.get('coreDetailData.data'); // Checking to make sure the core data's not undefined since\n        // it's taking awhile for it to populate\n\n        if (data !== undefined) {\n          data.total_directs.conversion_ratio.forEach(function (value, index, array) {\n            array[index] = '-';\n          });\n          data.total_indirects.conversion_ratio.forEach(function (value, index, array) {\n            array[index] = '-';\n          });\n          data.nih_directs.proposals = this.updateArrayWithCurrentYearData(data.nih_directs.proposals, this.coreProposalsRevisedCurrentYearNihDirects * 1000000);\n          data.nih_indirects.proposals = this.updateArrayWithCurrentYearData(data.nih_indirects.proposals, this.coreProposalsRevisedCurrentYearNihIndirects * 1000000);\n          data.other_fed_directs.proposals = this.updateArrayWithCurrentYearData(data.other_fed_directs.proposals, this.coreProposalsRevisedCurrentYearOtherFedDirects * 1000000);\n          data.other_fed_indirects.proposals = this.updateArrayWithCurrentYearData(data.other_fed_indirects.proposals, this.coreProposalsRevisedCurrentYearOtherFedIndirects * 1000000);\n          data.fft_directs.proposals = this.updateArrayWithCurrentYearData(data.fft_directs.proposals, this.coreProposalsRevisedCurrentYearFedFlowThruDirects * 1000000);\n          data.fft_indirects.proposals = this.updateArrayWithCurrentYearData(data.fft_indirects.proposals, this.coreProposalsRevisedCurrentYearFedFlowThruIndirects * 1000000);\n          data.non_fed_directs.proposals = this.updateArrayWithCurrentYearData(data.non_fed_directs.proposals, this.coreProposalsRevisedCurrentYearNonFedDirects * 1000000);\n          data.non_fed_indirects.proposals = this.updateArrayWithCurrentYearData(data.non_fed_indirects.proposals, this.coreProposalsRevisedCurrentYearNonFedIndirects * 1000000);\n          data.sponsor_type_sponsor5_directs.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_directs.proposals, this.coreProposalsRevisedCurrentYearSponsor5Directs * 1000000);\n          data.sponsor_type_sponsor5_indirects.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_indirects.proposals, this.coreProposalsRevisedCurrentYearSponsor5Indirects * 1000000);\n          data.sponsor_type_sponsor6_directs.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_directs.proposals, this.coreProposalsRevisedCurrentYearSponsor6Directs * 1000000);\n          data.sponsor_type_sponsor6_indirects.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_indirects.proposals, this.coreProposalsRevisedCurrentYearSponsor6Indirects * 1000000);\n          data.sponsor_type_sponsor7_directs.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_directs.proposals, this.coreProposalsRevisedCurrentYearSponsor7Directs * 1000000);\n          data.sponsor_type_sponsor7_indirects.proposals = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_indirects.proposals, this.coreProposalsRevisedCurrentYearSponsor7Indirects * 1000000);\n          data.nih_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.nih_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearNihDirects);\n          data.nih_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.nih_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearNihIndirects);\n          data.other_fed_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.other_fed_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearOtherFedDirects);\n          data.other_fed_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.other_fed_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearOtherFedIndirects);\n          data.fft_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.fft_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearFedFlowThruDirects);\n          data.fft_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.fft_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects);\n          data.non_fed_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.non_fed_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearNonFedDirects);\n          data.non_fed_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.non_fed_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearNonFedIndirects);\n          data.sponsor_type_sponsor5_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor5Directs);\n          data.sponsor_type_sponsor5_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor5Indirects);\n          data.sponsor_type_sponsor6_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor6Directs);\n          data.sponsor_type_sponsor6_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor6Indirects);\n          data.sponsor_type_sponsor7_directs.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_directs.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor7Directs);\n          data.sponsor_type_sponsor7_indirects.conversion_ratio = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_indirects.conversion_ratio, this.coreConversionRatiosRevisedCurrentYearSponsor7Indirects);\n          data.nih_directs.successes = this.updateArrayWithCurrentYearData(data.nih_directs.successes, this.projectedCoreSuccessesCurrentYearNihDirects * 1000000);\n          data.nih_indirects.successes = this.updateArrayWithCurrentYearData(data.nih_indirects.successes, this.projectedCoreSuccessesCurrentYearNihIndirects * 1000000);\n          data.other_fed_directs.successes = this.updateArrayWithCurrentYearData(data.other_fed_directs.successes, this.projectedCoreSuccessesCurrentYearOtherFedDirects * 1000000);\n          data.other_fed_indirects.successes = this.updateArrayWithCurrentYearData(data.other_fed_indirects.successes, this.projectedCoreSuccessesCurrentYearOtherFedIndirects * 1000000);\n          data.fft_directs.successes = this.updateArrayWithCurrentYearData(data.fft_directs.successes, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects * 1000000);\n          data.fft_indirects.successes = this.updateArrayWithCurrentYearData(data.fft_indirects.successes, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects * 1000000);\n          data.non_fed_directs.successes = this.updateArrayWithCurrentYearData(data.non_fed_directs.successes, this.projectedCoreSuccessesCurrentYearNonFedDirects * 1000000);\n          data.non_fed_indirects.successes = this.updateArrayWithCurrentYearData(data.non_fed_indirects.successes, this.projectedCoreSuccessesCurrentYearNonFedIndirects * 1000000);\n          data.sponsor_type_sponsor5_directs.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_directs.successes, this.projectedCoreSuccessesCurrentYearSponsor5Directs * 1000000);\n          data.sponsor_type_sponsor5_indirects.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor5_indirects.successes, this.projectedCoreSuccessesCurrentYearSponsor5Indirects * 1000000);\n          data.sponsor_type_sponsor6_directs.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_directs.successes, this.projectedCoreSuccessesCurrentYearSponsor6Directs * 1000000);\n          data.sponsor_type_sponsor6_indirects.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor6_indirects.successes, this.projectedCoreSuccessesCurrentYearSponsor6Indirects * 1000000);\n          data.sponsor_type_sponsor7_directs.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_directs.successes, this.projectedCoreSuccessesCurrentYearSponsor7Directs * 1000000);\n          data.sponsor_type_sponsor7_indirects.successes = this.updateArrayWithCurrentYearData(data.sponsor_type_sponsor7_indirects.successes, this.projectedCoreSuccessesCurrentYearSponsor7Indirects * 1000000);\n          data.total_directs.proposals = this.updateArrayWithCurrentYearData(data.total_directs.proposals, data.nih_directs.proposals[data.nih_directs.proposals.length - 2] + data.other_fed_directs.proposals[data.nih_directs.proposals.length - 2] + data.fft_directs.proposals[data.nih_directs.proposals.length - 2] + data.non_fed_directs.proposals[data.nih_directs.proposals.length - 2] + data.sponsor_type_sponsor5_directs.proposals[data.sponsor_type_sponsor5_directs.proposals.length - 2] + data.sponsor_type_sponsor6_directs.proposals[data.sponsor_type_sponsor6_directs.proposals.length - 2] + data.sponsor_type_sponsor7_directs.proposals[data.sponsor_type_sponsor7_indirects.proposals.length - 2]);\n          data.total_indirects.proposalst = this.updateArrayWithCurrentYearData(data.total_indirects.proposals, data.nih_indirects.proposals[data.nih_indirects.proposals.length - 2] + data.other_fed_indirects.proposals[data.nih_indirects.proposals.length - 2] + data.fft_indirects.proposals[data.nih_indirects.proposals.length - 2] + data.non_fed_indirects.proposals[data.nih_indirects.proposals.length - 2] + data.sponsor_type_sponsor5_indirects.proposals[data.sponsor_type_sponsor5_indirects.proposals.length - 2] + data.sponsor_type_sponsor6_indirects.proposals[data.sponsor_type_sponsor6_indirects.proposals.length - 2] + data.sponsor_type_sponsor7_indirects.proposals[data.sponsor_type_sponsor7_indirects.proposals.length - 2]);\n          data.total_directs.successes = this.updateArrayWithCurrentYearData(data.total_directs.successes, data.nih_directs.successes[data.nih_directs.successes.length - 2] + data.other_fed_directs.successes[data.nih_directs.successes.length - 2] + data.fft_directs.successes[data.nih_directs.successes.length - 2] + data.non_fed_directs.successes[data.nih_directs.successes.length - 2] + data.sponsor_type_sponsor5_directs.successes[data.sponsor_type_sponsor5_directs.successes.length - 2] + data.sponsor_type_sponsor6_directs.successes[data.sponsor_type_sponsor6_directs.successes.length - 2] + data.sponsor_type_sponsor6_directs.successes[data.sponsor_type_sponsor6_directs.successes.length - 2]);\n          data.total_indirects.successes = this.updateArrayWithCurrentYearData(data.total_indirects.successes, data.nih_indirects.successes[data.nih_indirects.successes.length - 2] + data.other_fed_indirects.successes[data.nih_indirects.successes.length - 2] + data.fft_indirects.successes[data.nih_indirects.successes.length - 2] + data.non_fed_indirects.successes[data.nih_indirects.successes.length - 2] + data.sponsor_type_sponsor5_indirects.successes[data.sponsor_type_sponsor5_indirects.successes.length - 2] + data.sponsor_type_sponsor6_indirects.successes[data.sponsor_type_sponsor5_indirects.successes.length - 2] + data.sponsor_type_sponsor7_indirects.successes[data.sponsor_type_sponsor5_indirects.successes.length - 2]);\n          data.total_directs.conversion_ratio.push('-', '-');\n          data.total_indirects.conversion_ratio.push('-', '-');\n          var formattedData = [];\n          this.currentUser.team.is_nih ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeNih\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearNih],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearNih]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.nih_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.nih_indirects\n          })] : [];\n          this.currentUser.team.is_other_fed ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeOtherFed\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearOtherFed]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.other_fed_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.other_fed_indirects\n          })] : [];\n          this.currentUser.team.is_fft ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeFFT\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearFedFlowThru]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.fft_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.fft_indirects\n          })] : [];\n          this.currentUser.team.is_non_fed ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeNonFed\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearNonFed],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearNonFed]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.non_fed_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.non_fed_indirects\n          })] : [];\n          this.currentUser.team.is_sponsor5 ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeSponsor5\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearSponsor5]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.sponsor_type_sponsor5_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.sponsor_type_sponsor5_indirects\n          })] : [];\n          this.currentUser.team.is_sponsor6 ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeSponsor6\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearSponsor6]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.sponsor_type_sponsor6_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.sponsor_type_sponsor6_indirects\n          })] : [];\n          this.currentUser.team.is_sponsor7 ? [formattedData.push({\n            label: {\n              isHeader: true,\n              name: this.currentUser.sponsorTypeSponsor7\n            },\n            rowData: {\n              conversion_ratio: [null, null, null, this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7],\n              proposals: [null, null, null, null, this.coreProposalsSettingsRevisedCurrentYearSponsor7]\n            }\n          }, {\n            label: 'Directs',\n            rowData: data.sponsor_type_sponsor7_directs\n          }, {\n            label: 'Indirects',\n            rowData: data.sponsor_type_sponsor7_indirects\n          })] : [];\n          formattedData.push({\n            label: {\n              isHeader: true,\n              name: 'Total',\n              hideTotals: true\n            }\n          }, {\n            label: {\n              isHeader: false,\n              name: 'Directs',\n              hideTotals: true\n            },\n            rowData: data.total_directs\n          }, {\n            label: {\n              isHeader: false,\n              name: 'Indirects',\n              hideTotals: true\n            },\n            rowData: data.total_indirects\n          });\n          return formattedData;\n        }\n\n        return null;\n      }\n    }]);\n\n    return CoreDetailController;\n  }(Ember.Controller.extend(_currentYearProjections.default)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"disableSectorSelect\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"disableSectorSelect\"), _class2.prototype), _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"tableData\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectGrantType\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectGrantType\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectSector\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectSector\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CoreDetailController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/investigators\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/mixins/pts-summary-controller\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"b3i-analytics-web-app/mixins/permissions-check\", \"b3i-analytics-web-app/mixins/summary-data-rows\", \"b3i-analytics-web-app/constants/roles\", \"b3i-analytics-web-app/utils/percentiles-from-quartile\", \"b3i-analytics-web-app/constants/tiers\", \"jquery\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/utils/sort-string-with-plan\"], function (_exports, _object, _ptsSummaryController, _openPrintDialog, _permissionsCheck, _summaryDataRows, _roles, _percentilesFromQuartile, _tiers, _jquery, _environment, _sortStringWithPlan) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _temp;\n\n  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\n  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\n  function _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\n  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DEFAULT_HIRE_YEAR = '------';\n  var QUARTILE_OPTION_NO_ACTIVITY = 'No {year} Activity';\n  var InvestigatorsController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service('current-user'), _dec3 = Ember.inject.service, _dec4 = Ember.inject.service('router'), _dec5 = Ember.computed('currentUser.role'), _dec6 = (0, _object.observes)('search'), _dec7 = Ember.computed('selectedHireYearFilter', 'hireYearOptionsDisabled'), _dec8 = Ember.computed('selectedSector'), _dec9 = Ember.computed('totalData', 'meta', 'selectedSector'), _dec10 = Ember.computed('subtotalData', 'totalData', 'meta'), _dec11 = Ember.computed('meta'), _dec12 = Ember.computed('subtotalData', 'meta'), _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, _dec21 = Ember._action, _dec22 = Ember._action, _dec23 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(InvestigatorsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(InvestigatorsController);\n\n    function InvestigatorsController() {\n      var _this;\n\n      _classCallCheck(this, InvestigatorsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor3, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"sortString\", '-actuals_one_year_ago_total');\n\n      _defineProperty(_assertThisInitialized(_this), \"searchTerm\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"search\", '');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedIncludePlan\", 'No');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedCompletedPlan\", 'No');\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"routerService\", _descriptor4, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(InvestigatorsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(InvestigatorsController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('isLoading', true);\n        this.set('nearTermDecline', this.get('currentUser.team.piDeclineFlagSummary'));\n        this.set('directsChange', this.get('currentUser.team.piDirectsChange'));\n        this.set('indirectsChange', this.get('currentUser.team.piIndirectsChange'));\n        this.set('optionsIncludePlan', ['Yes', 'No']);\n\n        if (this.get('currentUser.team.hasClassifyInfo')) {\n          this.set('classifyOptions', ['All', 'Junior', 'Senior', 'Other']);\n          this.set('classifyOptionsDisabled', false);\n        } else {\n          this.set('classifyOptions', ['All']);\n          this.set('classifyOptionsDisabled', true);\n        }\n\n        if (this.get('currentUser.team.hasHireDate')) {\n          this.set('hireYearOptions', ['All', 'Before', 'In', 'After']); // Generate the last 40 years as options for the hire year dropdown\n\n          var range = _toConsumableArray(Array(41).keys());\n\n          var currentYear = this.year.fiscalYear;\n          this.set('hireYearListOptions', [DEFAULT_HIRE_YEAR].concat(range.map(function (i) {\n            return (currentYear - i).toString();\n          })));\n          this.set('disableHireYearOptions', false);\n        } else {\n          this.set('hireYearOptions', ['All']);\n          this.set('hireYearOptionsDisabled', true);\n        }\n\n        this.set('selectedClassify', 'All');\n        this.set('selectedSector', {\n          isGroupName: true,\n          value: 'All Sectors'\n        });\n        this.set('selectedHireYearFilter', 'All');\n        QUARTILE_OPTION_NO_ACTIVITY = QUARTILE_OPTION_NO_ACTIVITY.replace('{year}', this.year.lastFiscalYear);\n        this.set('quartileOptions', ['All', _tiers.default.QUARTILE_OPTION_TOP_10, _tiers.default.QUARTILE_OPTION_TOP_25, _tiers.default.QUARTILE_OPTION_MID_TIER, _tiers.default.QUARTILE_OPTION_LOW_TIER, QUARTILE_OPTION_NO_ACTIVITY]);\n        this.set('selectedQuartile', 'All');\n      }\n    }, {\n      key: \"setSearchTerm\",\n      value: function setSearchTerm() {\n        this.saveAndUpdateSetting('searchTerm', this.search);\n      }\n    }, {\n      key: \"searchChanged\",\n      value: function searchChanged() {\n        Ember.run.debounce(this, this.setSearchTerm, 500);\n      }\n    }, {\n      key: \"saveSettings\",\n      value: function saveSettings() {\n        var settings = {\n          selectedClassify: this.selectedClassify,\n          selectedSector: this.selectedSector,\n          selectedHireYear: this.selectedHireYear,\n          selectedHireYearFilter: this.selectedHireYearFilter,\n          selectedQuartile: this.selectedQuartile,\n          selectedIncludePlan: this.selectedIncludePlan\n        };\n        window.sessionStorage.setItem('investigatorsSettings', JSON.stringify(settings));\n      }\n    }, {\n      key: \"saveAndUpdateSetting\",\n      value: function saveAndUpdateSetting(option, value) {\n        this.set(option, value);\n        this.set('page', 1);\n        this.saveSettings();\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData(callback) {\n        var _this2 = this;\n\n        this.set('isLoading', true);\n        var queryParams = {};\n        var search = this.searchTerm;\n\n        if (search.length > 0) {\n          queryParams.search = search;\n        } // Setup the sector options as if it's a sector\n\n\n        var sectorObject = this.selectedSector;\n        var sector = sectorObject.value;\n        var isSector = true;\n        var department = null; // If it's a department, it will have an ID, so we can use that and change\n        // it to be a department instead of a sector\n\n        if (sectorObject.id) {\n          department = sectorObject.id;\n          isSector = false;\n        }\n\n        var selectedClassify = this.selectedClassify; // Add the sector or department query\n\n        if (isSector && sector && sector !== 'All Sectors') {\n          queryParams.sector = sector;\n        } else if (!isSector && department) {\n          queryParams.department_id = department;\n        }\n\n        if (selectedClassify !== 'All') {\n          queryParams.classify = selectedClassify.toLowerCase();\n        }\n\n        if (this.nearTermDecline) {\n          queryParams.near_term_decline = this.nearTermDecline;\n        } // If the include toggle plan has changed while sorting on one of the pts columns, we need to update the sort\n\n\n        var newSortString = (0, _sortStringWithPlan.default)(this.sortString, this.selectedIncludePlan);\n\n        if (newSortString) {\n          this.set('sortString', newSortString);\n        }\n\n        if (this.selectedHireYearFilter !== 'All' && this.selectedHireYear !== DEFAULT_HIRE_YEAR) {\n          if (this.selectedHireYearFilter === 'Before') {\n            queryParams.hire_year_before = this.selectedHireYear;\n          } else if (this.selectedHireYearFilter === 'After') {\n            queryParams.hire_year_after = this.selectedHireYear;\n          } else if (this.selectedHireYearFilter === 'In') {\n            queryParams.hire_year = this.selectedHireYear;\n          }\n        }\n\n        if (this.selectedQuartile !== 'All') {\n          if (this.selectedQuartile === QUARTILE_OPTION_NO_ACTIVITY) {\n            queryParams.tier_no_actuals_last_year = true;\n          } else {\n            queryParams = Object.assign({}, queryParams, (0, _percentilesFromQuartile.default)(this.selectedQuartile));\n          }\n        }\n\n        queryParams.include_plan_pts = this.selectedIncludePlan === \"Yes\";\n\n        if (this.selectedCompletedPlan === \"Yes\") {\n          queryParams.has_plan = true;\n        }\n\n        queryParams.ordering = this.sortString;\n        queryParams.page = this.page;\n        this.set('queryParams', queryParams);\n        this.store.query('principalInvestigator', queryParams).then(function (result) {\n          if (callback) {\n            callback(result);\n          } else {\n            _this2.set('meta', result.get('meta'));\n\n            _this2.set('model', _this2.updatePisWithTotal(result.toArray()));\n\n            _this2.set('isLoading', false);\n          }\n        });\n      }\n    }, {\n      key: \"updatePisWithTotal\",\n      value: function updatePisWithTotal(pis) {\n        //Add the dummy total row in front of the pis list\n        if (this.subtotalRow) {\n          pis.unshift(this.subtotalPercentageRow);\n          pis.unshift(this.subtotalRow);\n        }\n\n        pis.unshift(this.percentageRow);\n        pis.unshift(this.totalRow);\n        pis.unshift(this.institutionalTotalRow);\n        return pis;\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this3 = this;\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.incrementProperty('page');\n            this.fetchFilteredData(function (result) {\n              _this3.model.pushObjects(result.toArray());\n\n              _this3.set('meta', result.get('meta'));\n\n              _this3.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        var _this4 = this;\n\n        //cellLinkData should be last_name\n        if (sortColumn === 'cellLinkData') {\n          sortColumn = 'last_name';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(sortColumn.underscore());\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.fetchFilteredData(function (result) {\n          _this4.set('meta', result.get('meta'));\n\n          _this4.set('model', _this4.updatePisWithTotal(result.toArray()));\n\n          _this4.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"sectorChanged\",\n      value: function sectorChanged(sector) {\n        this.saveAndUpdateSetting('selectedSector', sector);\n      }\n    }, {\n      key: \"selectedHireYearChanged\",\n      value: function selectedHireYearChanged(year) {\n        this.saveAndUpdateSetting('selectedHireYear', year);\n      }\n    }, {\n      key: \"classifyChanged\",\n      value: function classifyChanged(classify) {\n        this.saveAndUpdateSetting('selectedClassify', classify);\n      }\n    }, {\n      key: \"quartileChanged\",\n      value: function quartileChanged(option) {\n        this.saveAndUpdateSetting('selectedQuartile', option);\n      }\n    }, {\n      key: \"hireYearFilterChanged\",\n      value: function hireYearFilterChanged(hireYearFilter) {\n        this.saveAndUpdateSetting('selectedHireYearFilter', hireYearFilter);\n      }\n    }, {\n      key: \"includePlanChanged\",\n      value: function includePlanChanged(option) {\n        this.saveAndUpdateSetting('selectedIncludePlan', option);\n      }\n    }, {\n      key: \"completedPlanChanged\",\n      value: function completedPlanChanged(option) {\n        this.saveAndUpdateSetting('selectedCompletedPlan', option);\n      }\n    }, {\n      key: \"exportPlans\",\n      value: function exportPlans() {\n        var queryParams = this.queryParams;\n        delete queryParams['page'];\n        var url = this.routerService.urlFor('export-investigators.index', {\n          queryParams: queryParams\n        });\n        window.open(url);\n      }\n    }, {\n      key: \"exportData\",\n      value: function exportData() {\n        //Store the controller scope so we can set the comparative data on response\n        var queryParams = this.queryParams;\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/principal_investigators/download/?\").concat(_jquery.default.param(queryParams));\n\n        _jquery.default.ajaxSetup({\n          beforeSend: function beforeSend(jqXHR, settings) {\n            if (settings.dataType === 'binary') {\n              settings.xhr().responseType = 'arraybuffer';\n              settings.processData = false;\n            }\n          }\n        });\n\n        return this.ajax.raw(url, {\n          processData: false,\n          dataType: 'binary',\n          crossDomain: true,\n          xhr: function xhr() {\n            var xhr = new XMLHttpRequest();\n            xhr.responseType = 'blob';\n            return xhr;\n          }\n        }).then(function (result) {\n          var blob = result.payload;\n          var xhr = result.jqXHR;\n          var filename = \"export-principal-investigators.xlsx\"; //Try to get filename from disposition header\n\n          var disposition = xhr.getResponseHeader('content-disposition');\n\n          if (disposition && disposition.indexOf('attachment') !== -1) {\n            var filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\n            var matches = filenameRegex.exec(disposition);\n\n            if (matches != null && matches[1]) {\n              filename = matches[1].replace(/['\"]/g, '');\n            }\n          }\n\n          var url = window.URL.createObjectURL(blob);\n          var a = document.createElement('a');\n          a.style.display = 'none';\n          a.href = url; // the filename you want\n\n          a.download = filename;\n          document.body.appendChild(a);\n          a.click();\n          window.URL.revokeObjectURL(url);\n        });\n      }\n    }, {\n      key: \"userIsDeptRole\",\n      get: function get() {\n        var role = this.get('currentUser.role');\n        return role === _roles.default.DEPARTMENT;\n      }\n    }, {\n      key: \"hireYearFieldDisabled\",\n      get: function get() {\n        return this.hireYearOptionsDisabled || this.selectedHireYearFilter === 'All';\n      }\n    }, {\n      key: \"selectedSectorDept\",\n      get: function get() {\n        return this.selectedSector && this.selectedSector.value !== \"All Sectors\";\n      }\n    }, {\n      key: \"totalRow\",\n      get: function get() {\n        if (!this.totalData || !this.meta) {\n          return null;\n        }\n\n        var name = this.selectedSector && this.selectedSector.value !== \"All Sectors\" ? \"\".concat(this.selectedSector.value, \" Total\") : 'Total';\n        return Ember.Object.create(_objectSpread({\n          cellLinkData: {\n            id: 0,\n            name: name,\n            link: null\n          }\n        }, this.totalData));\n      }\n    }, {\n      key: \"subtotalPercentageRow\",\n      get: function get() {\n        if (!this.subtotalData || !this.meta) {\n          return null;\n        }\n\n        var percentageData = this.generatePercentageData(this.totalData, this.subtotalData);\n        return Ember.Object.create(_objectSpread({\n          cellLinkData: {\n            id: 0,\n            name: \"Percentage of \".concat(this.selectedSector.value, \" Total\"),\n            link: null\n          }\n        }, percentageData));\n      } //Dummy row to show the sub totals when department filter and at least one other filter is active\n\n    }, {\n      key: \"subtotalData\",\n      get: function get() {\n        var meta = this.meta;\n\n        if (!meta) {\n          return null;\n        }\n\n        return this.getTotalRowData(meta, 'subtotal');\n      }\n    }, {\n      key: \"subtotalRow\",\n      get: function get() {\n        if (!this.subtotalData || !this.meta) {\n          return null;\n        }\n\n        return Ember.Object.create(_objectSpread({\n          cellLinkData: {\n            id: 0,\n            name: 'Filtered Total',\n            link: null\n          }\n        }, this.subtotalData));\n      }\n    }]);\n\n    return InvestigatorsController;\n  }(Ember.Controller.extend(_ptsSummaryController.default, _openPrintDialog.default, _permissionsCheck.default, _summaryDataRows.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"routerService\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"userIsDeptRole\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"userIsDeptRole\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"searchChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"searchChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hireYearFieldDisabled\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"hireYearFieldDisabled\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedSectorDept\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedSectorDept\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"totalRow\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"totalRow\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"subtotalPercentageRow\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"subtotalPercentageRow\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"subtotalData\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"subtotalData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"subtotalRow\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"subtotalRow\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sectorChanged\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedHireYearChanged\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedHireYearChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"classifyChanged\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"classifyChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"quartileChanged\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"quartileChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hireYearFilterChanged\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"hireYearFilterChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"includePlanChanged\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"includePlanChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"completedPlanChanged\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"completedPlanChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"exportPlans\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"exportPlans\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"exportData\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"exportData\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = InvestigatorsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/mega-grants\", [\"exports\", \"b3i-analytics-web-app/mixins/open-print-dialog\"], function (_exports, _openPrintDialog) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var MegaGrantsController = classic(_class = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(MegaGrantsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(MegaGrantsController);\n\n    function MegaGrantsController() {\n      _classCallCheck(this, MegaGrantsController);\n\n      return _super.apply(this, arguments);\n    }\n\n    return MegaGrantsController;\n  }(Ember.Controller.extend(_openPrintDialog.default))) || _class;\n\n  _exports.default = MegaGrantsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/mega-grants/active\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _object, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ActiveController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.computed('currentUser.role'), _dec4 = (0, _object.observes)('tableModel.@each.hasDirtyAttributes'), _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(ActiveController, _Ember$Controller);\n\n    var _super = _createSuper(ActiveController);\n\n    function ActiveController() {\n      var _this;\n\n      _classCallCheck(this, ActiveController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingActiveHelp\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"timeout\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"showSaveAction\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"grantsSavedSuccess\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ActiveController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(ActiveController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('tableModel', []);\n        this.set('isLoading', true);\n        this.set('sortString', 'success__end_date,principal_investigator_last_name');\n        this.set('hoverIcons', ['The default setting for mega grants is Renew = \"Yes\" and Override = \"No\".  Any mega grant with settings other than these defaults will be highlighted.']);\n      }\n    }, {\n      key: \"megaGrantChangeObserver\",\n      value: function megaGrantChangeObserver() {\n        var dirtyGrants = this.tableModel.filterBy('hasDirtyAttributes', true);\n\n        if (dirtyGrants.length) {\n          this.set('showSaveAction', true);\n          this.set('grantsSavedSuccess', false);\n        }\n      }\n    }, {\n      key: \"toggleActiveHelp\",\n      value: function toggleActiveHelp() {\n        this.toggleProperty('isShowingActiveHelp');\n      }\n    }, {\n      key: \"grantProjectionChanged\",\n      value: function grantProjectionChanged(model) {\n        this.store.peekRecord('megaGrant', model.get('id')).save();\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this2 = this;\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.set('isLoading', true);\n            this.store.query('megaGrant', {\n              ordering: this.sortString,\n              page: this.page + 1,\n              type: 'active'\n            }).then(function (megaGrants) {\n              _this2.incrementProperty('page');\n\n              _this2.tableModel.pushObjects(megaGrants.toArray());\n\n              _this2.set('meta', megaGrants.get('meta'));\n\n              _this2.set('isLoading', false);\n            }).catch(function () {\n              //TODO: Handle error\n              _this2.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        var _this3 = this;\n\n        var formattedSortColumn = sortColumn.replace(/[.]/g, '__'); //cellLinkData should be last_name\n\n        if (formattedSortColumn === 'cellLinkData') {\n          formattedSortColumn = 'principal_investigator_last_name';\n        } else if (formattedSortColumn === 'duration') {\n          formattedSortColumn = 'success__duration_years';\n        } else if (formattedSortColumn === 'success__startFiscalYear') {\n          formattedSortColumn = 'success__start_date';\n        } else if (formattedSortColumn === 'success__endFiscalYear') {\n          formattedSortColumn = 'success__end_date';\n        } else if (formattedSortColumn === 'directsTableValue') {\n          formattedSortColumn = 'success__directs';\n        } else if (formattedSortColumn === 'indirectsTableValue') {\n          formattedSortColumn = 'success__indirects';\n        } else if (formattedSortColumn === 'totalTableValue') {\n          formattedSortColumn = 'success__total';\n        }\n\n        var sortString = \"\".concat(sortDirection).concat(formattedSortColumn.underscore()); //If we are not sorting by the last name, append it as a secondary sort to fix the case where the pagination\n        //break occurs and there are two mega grants with the same value (ie both end on the same date).\n\n        if (sortString.indexOf('principal_investigator_last_name') === -1) {\n          sortString += ',principal_investigator_last_name';\n        }\n\n        this.set('isLoading', true);\n        this.set('sortString', sortString);\n        this.set('page', 1);\n        this.store.query('megaGrant', {\n          ordering: sortString,\n          page: 1,\n          type: 'active'\n        }).then(function (megaGrants) {\n          _this3.set('tableModel', megaGrants.toArray());\n\n          _this3.set('meta', megaGrants.get('meta'));\n\n          _this3.set('isLoading', false);\n        }).catch(function () {\n          _this3.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"saveGrants\",\n      value: function saveGrants() {\n        var _this4 = this;\n\n        // Grab all the grants with dirty attributes\n        var dirtyGrants = this.tableModel.filterBy('hasDirtyAttributes', true);\n        this.set('grantsSavedSuccess', false); //Use the normal endpoint if there is only one mega grant changed\n\n        if (dirtyGrants.length === 1) {\n          return dirtyGrants[0].save().then(function () {\n            // We can set the isSavingGrants and the showSaveAction back to false since we're done\n            // But we do want to show a nice success message after we save before blowing it away.\n            // So we set the success message to show\n            _this4.set('grantsSavedSuccess', true); // And we'll wrap it a little timeout to delay not showing it\n\n\n            setTimeout(function () {\n              _this4.set('showSaveAction', false);\n\n              _this4.set('grantsSavedSuccess', false);\n            }, 3000);\n          }).catch(function (response) {\n            // Oh no! Better show what the errors are\n            _this4.set('errors', _errors.default.mapResponseErrors(response));\n\n            _this4.set('grantsSavedSuccess', false);\n          }); //Use the bulk endpoint if multiple have changed\n        } else {\n          //Bulk endpoint accepts json payload for each mega grant\n          var bulkRequestData = dirtyGrants.map(function (grant) {\n            return {\n              'id': grant.get('id'),\n              'renews': grant.get('renews'),\n              'is_override': grant.get('isOverride'),\n              'remaining_balance_directs': grant.get('remainingBalanceDirects'),\n              'remaining_balance_indirects': grant.get('remainingBalanceIndirects')\n            };\n          });\n          return this.ajax.patch('mega_grants/multi_update/', {\n            headers: {\n              'Accept': 'application/vnd.api+json',\n              'Content-Type': \"application/json\"\n            },\n            data: bulkRequestData\n          }).then(function (resp) {\n            _this4.store.pushPayload('megaGrants', resp); // We can set the isSavingGrants and the showSaveAction back to false since we're done\n            // But we do want to show a nice success message after we save before blowing it away.\n            // So we set the success message to show\n\n\n            _this4.set('grantsSavedSuccess', true); // And we'll wrap it a little timeout to delay not showing it\n\n\n            setTimeout(function () {\n              _this4.set('showSaveAction', false);\n\n              _this4.set('grantsSavedSuccess', false);\n            }, 3000);\n          }).catch(function (response) {\n            // Oh no! Better show what the errors are\n            _this4.set('errors', _errors.default.mapResponseErrors(response));\n\n            _this4.set('grantsSavedSuccess', false);\n          });\n        }\n      }\n    }, {\n      key: \"rollbackGrantChanges\",\n      value: function rollbackGrantChanges() {\n        var dirtyGrants = this.tableModel.filterBy('hasDirtyAttributes', true);\n        dirtyGrants.forEach(function (grant) {\n          grant.rollbackAttributes();\n        });\n        this.set('showSaveAction', false);\n        this.set('grantsSavedSuccess', false);\n      }\n    }, {\n      key: \"disableDropdowns\",\n      get: function get() {\n        return this.get('currentUser.role') !== 'admin';\n      }\n    }]);\n\n    return ActiveController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"disableDropdowns\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"disableDropdowns\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantChangeObserver\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantChangeObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleActiveHelp\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleActiveHelp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"grantProjectionChanged\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"grantProjectionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveGrants\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveGrants\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"rollbackGrantChanges\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"rollbackGrantChanges\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ActiveController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/mega-grants/pending\", [\"exports\", \"moment\", \"@ember-decorators/object\"], function (_exports, _moment, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var PendingController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = (0, _object.observes)('model.@each.hasDirtyAttributes'), _dec4 = Ember._action, _dec5 = Ember._action, _dec6 = Ember._action, _dec7 = Ember.computed('year'), _dec8 = Ember.computed('year'), _dec9 = Ember.computed('model.[]'), _dec10 = Ember.computed('model.[]'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(PendingController, _Ember$Controller);\n\n    var _super = _createSuper(PendingController);\n\n    function PendingController() {\n      var _this;\n\n      _classCallCheck(this, PendingController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"showSaveAction\", false);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(PendingController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(PendingController.prototype), \"init\", this).apply(this, arguments);\n\n        var helpText = \"Users with access to NIH's eRA Commons data base can see if pending mega grants with upcoming start dates are going to be funded. Run a query on the \\\"Budget Start Dates\\\" you wish to review.  Select proposals with an \\\"Application Status\\\" of \\\"Pending\\\".  Find the pending mega grant by matching up \\\"PI Name\\\" and \\\"Proposal Title\\\".  If it appears in the list of proposals with an Application Status of Pending, it is going to be funded.\";\n        this.set('eraHelpText', helpText);\n      }\n    }, {\n      key: \"megaGrantChangeObserver\",\n      value: function megaGrantChangeObserver() {\n        var dirtyGrants = this.model.filterBy('hasDirtyAttributes', true);\n\n        if (dirtyGrants.length) {\n          this.set('showSaveAction', true);\n          this.set('grantsSavedSuccess', false);\n        }\n      }\n    }, {\n      key: \"grantProjectionChanged\",\n      value: function grantProjectionChanged(model) {\n        this.store.peekRecord('megaGrant', model.get('id')).save();\n      }\n    }, {\n      key: \"saveGrants\",\n      value: function saveGrants() {\n        var _this2 = this;\n\n        // Grab all the grants with dirty attributes\n        var dirtyGrants = this.model.filterBy('hasDirtyAttributes', true);\n        this.set('grantsSavedSuccess', false); //Use the normal endpoint if there is only one mega grant changed\n\n        if (dirtyGrants.length === 1) {\n          return dirtyGrants[0].save().then(function () {\n            // We can set the isSavingGrants and the showSaveAction back to false since we're done\n            // But we do want to show a nice success message after we save before blowing it away.\n            // So we set the success message to show\n            _this2.set('grantsSavedSuccess', true); // And we'll wrap it a little timeout to delay not showing it\n\n\n            setTimeout(function () {\n              _this2.set('showSaveAction', false);\n\n              _this2.set('grantsSavedSuccess', false);\n            }, 3000);\n          }).catch(function (response) {\n            // Oh no! Better show what the errors are\n            _this2.set('errors', Errors.mapResponseErrors(response));\n\n            _this2.set('grantsSavedSuccess', false);\n          }); //Use the bulk endpoint if multiple have changed\n        } else {\n          //Bulk endpoint accepts json payload for each mega grant\n          var bulkRequestData = dirtyGrants.map(function (grant) {\n            return {\n              'id': grant.get('id'),\n              'exclude_from_hedge_challenge': grant.get('excludeFromHedgeChallenge')\n            };\n          });\n          return this.ajax.patch('mega_grants/multi_update/', {\n            headers: {\n              'Accept': 'application/vnd.api+json',\n              'Content-Type': \"application/json\"\n            },\n            data: bulkRequestData\n          }).then(function (resp) {\n            _this2.store.pushPayload('megaGrants', resp); // We can set the isSavingGrants and the showSaveAction back to false since we're done\n            // But we do want to show a nice success message after we save before blowing it away.\n            // So we set the success message to show\n\n\n            _this2.set('grantsSavedSuccess', true); // And we'll wrap it a little timeout to delay not showing it\n\n\n            setTimeout(function () {\n              _this2.set('showSaveAction', false);\n\n              _this2.set('grantsSavedSuccess', false);\n            }, 3000);\n          }).catch(function (response) {\n            // Oh no! Better show what the errors are\n            _this2.set('errors', Errors.mapResponseErrors(response));\n\n            _this2.set('grantsSavedSuccess', false);\n          });\n        }\n      }\n    }, {\n      key: \"rollbackGrantChanges\",\n      value: function rollbackGrantChanges() {\n        var dirtyGrants = this.model.filterBy('hasDirtyAttributes', true);\n        dirtyGrants.forEach(function (grant) {\n          grant.rollbackAttributes();\n        });\n        this.set('showSaveAction', false);\n        this.set('grantsSavedSuccess', false);\n      }\n    }, {\n      key: \"sortByStartDate\",\n      value: function sortByStartDate(a, b) {\n        return (0, _moment.default)(a.get('proposal.startDate')).utc().diff((0, _moment.default)(b.get('proposal.startDate')));\n      }\n    }, {\n      key: \"generateRows\",\n      value: function generateRows(model) {\n        var startDateDict = {};\n        model.forEach(function (megaGrant) {\n          var proposal = megaGrant.get('proposal');\n          var startDate = (0, _moment.default)(proposal.get('startDate'), 'YYYY-MM-DD').format('MM/DD/YY');\n\n          if (startDateDict.hasOwnProperty(startDate)) {\n            startDateDict[startDate].push(megaGrant);\n          } else {\n            startDateDict[startDate] = [megaGrant];\n          }\n        });\n        var rows = [];\n        var totalDirects = 0;\n        var totalIndirects = 0;\n        var totalTotal = 0;\n        var totalCount = 0;\n\n        for (var key in startDateDict) {\n          if (startDateDict.hasOwnProperty(key)) {\n            var megaGrants = startDateDict[key];\n            var directs = megaGrants.map(function (megaGrant) {\n              return megaGrant.get('proposal.directs');\n            }).reduce(function (p, c) {\n              return p + c;\n            }, 0);\n            var indirects = megaGrants.map(function (megaGrant) {\n              return megaGrant.get('proposal.indirects');\n            }).reduce(function (p, c) {\n              return p + c;\n            }, 0);\n            var total = megaGrants.map(function (megaGrant) {\n              return megaGrant.get('proposal.total');\n            }).reduce(function (p, c) {\n              return p + c;\n            }, 0);\n            var row = {\n              start: key,\n              directs: directs,\n              indirects: indirects,\n              total: total,\n              count: megaGrants.length,\n              megaGrants: megaGrants\n            };\n            totalDirects += directs;\n            totalIndirects += indirects;\n            totalTotal += total;\n            totalCount += megaGrants.length;\n            rows.push(row);\n          }\n        }\n\n        var totalRow = {\n          start: 'Totals',\n          directs: totalDirects,\n          indirects: totalIndirects,\n          total: totalTotal,\n          count: totalCount\n        };\n        rows.push(totalRow);\n        return rows;\n      }\n    }, {\n      key: \"currentYearLabel\",\n      get: function get() {\n        return \"Pending Mega Grants with Fiscal Year \".concat(this.get('year.fiscalYear'), \" Start Dates\");\n      }\n    }, {\n      key: \"futureYearLabel\",\n      get: function get() {\n        return \"Pending Mega Grants with Fiscal Year \".concat(this.get('year.fiscalYear') + 1, \"+ Start Dates\");\n      }\n    }, {\n      key: \"currentYearTableModel\",\n      get: function get() {\n        var fiscalYear = this.get('year.fiscalYear');\n        var model = this.model;\n        var currentYearTableModel = model.filterBy('proposal.startFiscalYear', fiscalYear).sort(this.sortByStartDate);\n        return this.generateRows(currentYearTableModel);\n      }\n    }, {\n      key: \"futureYearTableModel\",\n      get: function get() {\n        var fiscalYear = this.get('year.fiscalYear');\n        var model = this.model; //Only return mega grants that start in the following year or later\n\n        var futureYearTableModel = model.filter(function (item) {\n          return item.get('proposal.startFiscalYear') >= fiscalYear + 1;\n        }).sort(this.sortByStartDate);\n        return this.generateRows(futureYearTableModel);\n      }\n    }]);\n\n    return PendingController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantChangeObserver\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantChangeObserver\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"grantProjectionChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"grantProjectionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveGrants\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveGrants\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"rollbackGrantChanges\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"rollbackGrantChanges\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"currentYearLabel\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"currentYearLabel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureYearLabel\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureYearLabel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"currentYearTableModel\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"currentYearTableModel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureYearTableModel\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureYearTableModel\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = PendingController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/mega-grants/summary\", [\"exports\", \"accounting/format-money\", \"b3i-analytics-web-app/utils/future-mega-projection\"], function (_exports, _formatMoney, _futureMegaProjection) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _dec31, _dec32, _dec33, _dec34, _dec35, _dec36, _dec37, _dec38, _dec39, _dec40, _dec41, _dec42, _dec43, _dec44, _dec45, _dec46, _dec47, _dec48, _dec49, _dec50, _dec51, _dec52, _dec53, _dec54, _dec55, _dec56, _dec57, _dec58, _dec59, _dec60, _dec61, _dec62, _dec63, _dec64, _dec65, _dec66, _dec67, _dec68, _dec69, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SummaryController = (_dec = Ember.computed('selectedAccruePendingMegaGrantOption'), _dec2 = Ember.computed('year', 'isHedgeSummaryCurrentYear'), _dec3 = Ember.computed('year', 'isHedgeSummaryCurrentYear'), _dec4 = Ember.computed('currentUser.team.{megaGrantHedgeProjectionDiscount,megaGrantHedgeProjectionDiscountOneYearAhead}', 'isHedgeSummaryCurrentYear'), _dec5 = Ember.computed('isHedgeSummaryCurrentYear', 'currentUser.team.{megaGrantHedgeProjectionDiscount,megaGrantHedgeProjectionDiscountOneYearAhead}', 'model.{megaGrantAssumedRenewReplaceCurrentYearDirects,megaGrantAssumedRenewReplaceOneYearAheadDirects}'), _dec6 = Ember.computed('isHedgeSummaryCurrentYear', 'currentUser.team.{megaGrantHedgeProjectionDiscount,megaGrantHedgeProjectionDiscountOneYearAhead}', 'model.{megaGrantAssumedRenewReplaceCurrentYearIndirects,megaGrantAssumedRenewReplaceOneYearAheadIndirects}'), _dec7 = Ember.computed('isHedgeSummaryCurrentYear', 'currentUser.team.{megaGrantHedgeProjectionDiscount,megaGrantHedgeProjectionDiscountOneYearAhead}', 'model.{megaGrantAssumedRenewReplaceCurrentYearCount,megaGrantAssumedRenewReplaceOneYearAheadCount}'), _dec8 = Ember.computed('isHedgeSummaryCurrentYear', 'model.{megaGrantYtdSuccessesDirects,megaGrantOneYearAheadSuccessesDirects}'), _dec9 = Ember.computed('isHedgeSummaryCurrentYear', 'model.{megaGrantYtdSuccessesIndirects,megaGrantOneYearAheadSuccessesIndirects}'), _dec10 = Ember.computed('isHedgeSummaryCurrentYear', 'model.{megaGrantYtdSuccessesCount,megaGrantOneYearAheadSuccessesCount}'), _dec11 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingDirects,megaGrantPendingOneYearAheadDirects}'), _dec12 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingDirects,megaGrantPendingOneYearAheadIndirects}'), _dec13 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingCount,megaGrantPendingOneYearAheadCount}'), _dec14 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingDirects,megaGrantPendingOneYearAheadDirects}'), _dec15 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingDirects,megaGrantPendingOneYearAheadIndirects}'), _dec16 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantPendingCount,megaGrantPendingOneYearAheadCount}'), _dec17 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantConversionRequiredDirects,megaGrantConversionRequiredOneYearAheadDirects}'), _dec18 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantConversionRequiredIndirects,megaGrantConversionRequiredOneYearAheadIndirects}'), _dec19 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantsHedgeProjectionDirects,megaGrantsHedgeProjectionOneYearAheadDirects}'), _dec20 = Ember.computed('isHedgeSummaryCurrentYear', 'selectedAccruePendingMegaGrantOption', 'model.{megaGrantsHedgeProjectionIndirects,megaGrantsHedgeProjectionOneYearAheadIndirects}'), _dec21 = Ember.computed('megaGrantsHedgeProjectionDirects', 'megaGrantsNewPotentialDirects', 'selectedAccruePendingMegaGrantOption'), _dec22 = Ember.computed('megaGrantsHedgeProjectionIndirects', 'megaGrantSuccessesIndirects', 'selectedAccruePendingMegaGrantOption'), _dec23 = Ember.computed('megaGrantsHedgeProjectionDirects', 'megaGrantSuccessesDirects', 'selectedAccruePendingMegaGrantOption'), _dec24 = Ember.computed('megaGrantsHedgeProjectionIndirects', 'megaGrantSuccessesIndirects', 'selectedAccruePendingMegaGrantOption'), _dec25 = Ember.inject.service, _dec26 = Ember.inject.service('current-user'), _dec27 = Ember.computed('year'), _dec28 = Ember.computed('year'), _dec29 = Ember.computed('year'), _dec30 = Ember.computed('year'), _dec31 = Ember.computed('year'), _dec32 = Ember.computed('year'), _dec33 = Ember.computed('year'), _dec34 = Ember.computed('year'), _dec35 = Ember.computed('year'), _dec36 = Ember.computed('year'), _dec37 = Ember.computed('year'), _dec38 = Ember.computed, _dec39 = Ember.computed, _dec40 = Ember.computed('model', 'currentUser.team.schoolProjectionAdjustmentDirects'), _dec41 = Ember.computed('model'), _dec42 = Ember.computed('model'), _dec43 = Ember.computed('selectedMegaGrantHistoryView', 'megaGrantHistoryStartData', 'megaGrantHistorySubmitData'), _dec44 = Ember.computed('megaGrantHistoryStartData'), _dec45 = Ember.computed('megaGrantHistoryStartData'), _dec46 = Ember.computed('model'), _dec47 = Ember.computed('model.megaGrantTotalsCurrentYearDirects', 'currentUser.team.megaGrantFutureCurrentYearDirects'), _dec48 = Ember.computed('model.megaGrantTotalsCurrentYearIndirects', 'currentUser.team.megaGrantFutureCurrentYearIndirects'), _dec49 = Ember.computed('model.megaGrantTotalsOneYearAheadDirects', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}'), _dec50 = Ember.computed('model.megaGrantTotalsOneYearAheadIndirects', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}'), _dec51 = Ember.computed('model.megaGrantTotalsTwoYearsAheadDirects', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}'), _dec52 = Ember.computed('model.megaGrantTotalsTwoYearsAheadIndirects', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}'), _dec53 = Ember.computed('model.megaGrantTotalsThreeYearsAheadDirects', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}'), _dec54 = Ember.computed('model.megaGrantTotalsThreeYearsAheadIndirects', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}'), _dec55 = Ember.computed('model.megaGrantTotalsFourYearsAheadDirects', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}'), _dec56 = Ember.computed('model.megaGrantTotalsFourYearsAheadIndirects', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}'), _dec57 = Ember.computed('model.megaGrantTotalsFiveYearsAheadDirects', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}'), _dec58 = Ember.computed('model.megaGrantTotalsFiveYearsAheadIndirects', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}'), _dec59 = Ember.computed('revisedCurrentYearDirects', 'revisedOneYearAheadDirects', 'revisedTwoYearsAheadDirects', 'revisedThreeYearsAheadDirects', 'revisedFourYearsAheadDirects', 'revisedFiveYearsAheadDirects', 'model'), _dec60 = Ember.computed('revisedCurrentYearIndirects', 'revisedOneYearAheadIndirects', 'revisedTwoYearsAheadIndirects', 'revisedThreeYearsAheadIndirects', 'revisedFourYearsAheadIndirects', 'revisedFiveYearsAheadIndirects', 'model'), _dec61 = Ember.computed('revisedCurrentFutureDirectsRow', 'revisedCurrentFutureIndirectsRow'), _dec62 = Ember._action, _dec63 = Ember._action, _dec64 = Ember._action, _dec65 = Ember._action, _dec66 = Ember._action, _dec67 = Ember._action, _dec68 = Ember._action, _dec69 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(SummaryController, _Ember$Controller);\n\n    var _super = _createSuper(SummaryController);\n\n    function SummaryController() {\n      var _this;\n\n      _classCallCheck(this, SummaryController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingStatusHelp\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"isShowingBacklogHelp\", false);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedAccruePendingMegaGrantOption\", 'No');\n\n      _defineProperty(_assertThisInitialized(_this), \"isHedgeSummaryCurrentYear\", true);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor2, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedMegaGrantHistoryView\", 'Start Year');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedMegaGrantHistoryType\", 'totals');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedMegaGrantHedgeView\", 'This Year');\n\n      return _this;\n    }\n\n    _createClass(SummaryController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(SummaryController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('selectedDiscountOptions', ['100%', '75%', '50%', '25%', '0%']);\n        this.set('accruePendingMegaGrantOptions', ['No', 'Yes']);\n      }\n    }, {\n      key: \"formatWithAccrualAndYear\",\n\n      /***\n       * Adds withAccrual to end of mega grant property if its enabled\n       */\n      value: function formatWithAccrualAndYear(prefix, suffix, accrual) {\n        //Never accruing for next year\n        if (!this.isHedgeSummaryCurrentYear) {\n          return \"\".concat(prefix, \"OneYearAhead\").concat(suffix);\n        }\n\n        if (accrual !== '') {\n          accrual = this.isAccruingAdditionalMegaGrants ? 'WithAccrual' : '';\n        }\n\n        var oneYearAhead = this.isHedgeSummaryCurrentYear ? '' : 'OneYearAhead';\n        return \"\".concat(prefix).concat(oneYearAhead).concat(suffix).concat(accrual);\n      }\n    }, {\n      key: \"setMegaGrantHistoryData\",\n      value: function setMegaGrantHistoryData(array) {\n        var sumDirects = 0;\n        var sumIndirects = 0;\n        var sumFunded = 0;\n        var sumNotFunded = 0;\n        array.forEach(function (year) {\n          if (year.data) {\n            // Pull in all the existing data from the object\n            var directs = parseFloat(year.data.directs);\n            var indirects = parseFloat(year.data.indirects);\n            var funded = parseFloat(year.data.funded);\n            var notFunded = parseFloat(year.data.not_funded); // Add the row data to the 5 Yr. Avg.\n\n            sumDirects += directs;\n            sumIndirects += indirects;\n            sumFunded += funded;\n            sumNotFunded += notFunded; // Calculate total dollar amount\n\n            var total = Math.floor(directs + indirects); // Calculate total proposals submitted\n\n            var _submitted = Math.floor(funded + notFunded); // Calculate hit rate\n\n\n            var hitRate = 0;\n\n            if (_submitted != 0) {\n              hitRate = funded / _submitted * 100;\n            }\n\n            var formattedHitRate = hitRate.toFixed(1); // Set percentFill for the split-bar-chart component\n\n            var totalsPercentFill = Math.floor(directs / total * 100);\n            var ratesPercentFill = Math.floor(funded / _submitted * 100); // Set everything on the actual object\n\n            year.total = total;\n            year.submitted = _submitted;\n            year.hitRate = formattedHitRate;\n            year.totalsPercentFill = totalsPercentFill;\n            year.ratesPercentFill = ratesPercentFill;\n            year.formattedDirects = (0, _formatMoney.default)(year.data.directs);\n            year.formattedIndirects = (0, _formatMoney.default)(year.data.indirects);\n            year.funded = funded;\n            year.notFunded = notFunded;\n          }\n        }); // Calculate total proposals submitted\n\n        var submitted = Math.floor(sumFunded + sumNotFunded); // Calculate hit rate\n\n        var avgHitRate = sumFunded / submitted * 100;\n        var avgFormattedHitRate = avgHitRate.toFixed(1); // Divide total numbers by 5 to get average\n\n        var avgDirects = sumDirects / 5;\n        var avgIndirects = sumIndirects / 5;\n        var avgFunded = sumFunded / 5;\n        var avgNotFunded = sumNotFunded / 5;\n        var avgSubmitted = submitted / 5; // Calculate total dollar amount\n\n        var avgTotal = Math.floor(avgDirects + avgIndirects); // Set percentFill for the split-bar-chart component\n\n        var avgTotalsPercentFill = Math.floor(avgDirects / avgTotal * 100);\n        var avgRatesPercentFill = Math.floor(avgFunded / avgSubmitted * 100);\n        var fiveYearAvg = {}; // Set the values on the fiveYearAvg object\n\n        fiveYearAvg.year = '5 Yr. Ave.';\n        fiveYearAvg.total = avgTotal;\n        fiveYearAvg.submitted = avgSubmitted;\n        fiveYearAvg.hitRate = avgFormattedHitRate;\n        fiveYearAvg.totalsPercentFill = avgTotalsPercentFill;\n        fiveYearAvg.ratesPercentFill = avgRatesPercentFill;\n        fiveYearAvg.avgDirects = avgDirects;\n        fiveYearAvg.avgIndirects = avgIndirects;\n        fiveYearAvg.formattedDirects = (0, _formatMoney.default)(avgDirects);\n        fiveYearAvg.formattedIndirects = (0, _formatMoney.default)(avgIndirects); // Set the other values on the fiveYearAvg object that are passed down from the backend on the year objects\n\n        fiveYearAvg.funded = avgFunded;\n        fiveYearAvg.notFunded = avgNotFunded;\n        array.pushObject(fiveYearAvg);\n      }\n    }, {\n      key: \"valueOrZero\",\n      //Unwrap the value from the future mega grant data instead of setting the team property to null\n      value: function valueOrZero(val) {\n        return val ? parseFloat(val) : 0;\n      }\n    }, {\n      key: \"selectedDiscountChanged\",\n      value: function selectedDiscountChanged(option) {\n        var _this2 = this;\n\n        var team = this.get('currentUser.team');\n        this.set('isLoading', true);\n\n        if (this.isHedgeSummaryCurrentYear) {\n          team.set('megaGrantHedgeProjectionDiscount', parseInt(option));\n        } else {\n          team.set('megaGrantHedgeProjectionDiscountOneYearAhead', parseInt(option));\n        }\n\n        team.save().then(function () {\n          _this2.model.reload().then(function () {\n            _this2.set('isLoading', false);\n          }).catch(function () {\n            _this2.set('isLoading', false);\n          });\n        }).catch(function () {\n          team.rollbackAttributes();\n\n          _this2.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"accruePendingMegaGrantChanged\",\n      value: function accruePendingMegaGrantChanged(option) {\n        this.set('selectedAccruePendingMegaGrantOption', option);\n      }\n    }, {\n      key: \"switchSelectedMegaGrantHistoryView\",\n      value: function switchSelectedMegaGrantHistoryView(option) {\n        this.set('selectedMegaGrantHistoryView', option);\n      }\n    }, {\n      key: \"switchSelectedMegaGrantHedgeView\",\n      value: function switchSelectedMegaGrantHedgeView(option) {\n        this.set('selectedMegaGrantHedgeView', option);\n        this.set('isHedgeSummaryCurrentYear', option === 'This Year');\n      }\n    }, {\n      key: \"setSelectedMegaGrantHistoryType\",\n      value: function setSelectedMegaGrantHistoryType(value) {\n        this.set('selectedMegaGrantHistoryType', value);\n      }\n    }, {\n      key: \"saveTeam\",\n      value: function saveTeam() {\n        var team = this.get('currentUser.team');\n        team.set('megaGrantFutureCurrentYearDirects', this.valueOrZero(this.futureMegaGrantData[0].directsAdjustment));\n        team.set('megaGrantFutureCurrentYearIndirects', this.valueOrZero(this.futureMegaGrantData[0].indirectsAdjustment));\n        team.set('megaGrantFutureOneYearAheadDirects', this.valueOrZero(this.futureMegaGrantData[1].directsAdjustment));\n        team.set('megaGrantFutureOneYearAheadIndirects', this.valueOrZero(this.futureMegaGrantData[1].indirectsAdjustment));\n        team.save();\n      }\n    }, {\n      key: \"toggleStatusHelp\",\n      value: function toggleStatusHelp() {\n        this.toggleProperty('isShowingStatusHelp');\n      }\n    }, {\n      key: \"toggleBacklogHelp\",\n      value: function toggleBacklogHelp() {\n        this.toggleProperty('isShowingBacklogHelp');\n      }\n    }, {\n      key: \"isAccruingAdditionalMegaGrants\",\n      get: function get() {\n        return this.selectedAccruePendingMegaGrantOption === 'Yes';\n      }\n    }, {\n      key: \"megaGrantStatusTitle\",\n      get: function get() {\n        var adjustment = this.isHedgeSummaryCurrentYear ? 0 : 1;\n        return \"\".concat(this.get('year.fiscalYear') + adjustment, \" Mega Grant Status\");\n      }\n    }, {\n      key: \"megaGrantSuccessLabel\",\n      get: function get() {\n        return \"Less: \".concat(this.isHedgeSummaryCurrentYear ? 'YTD' : this.get('year.fiscalYear') + 1, \" Mega Successes\");\n      } //Flag for showing hedge adjustments for this year or next\n\n    }, {\n      key: \"selectedDiscount\",\n      get: function get() {\n        return \"\".concat(parseInt(this.isHedgeSummaryCurrentYear ? this.get('currentUser.team.megaGrantHedgeProjectionDiscount') : this.get('currentUser.team.megaGrantHedgeProjectionDiscountOneYearAhead')), \"%\");\n      } //Hedge challenge\n\n    }, {\n      key: \"megaGrantAssumedRenewReplaceDirects\",\n      get: function get() {\n        var assumedReplaceDirects = this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantAssumedRenewReplaceCurrentYearDirects') : this.get('model.megaGrantAssumedRenewReplaceOneYearAheadDirects');\n        var discount = parseFloat(this.isHedgeSummaryCurrentYear ? this.get('currentUser.team.megaGrantHedgeProjectionDiscount') : this.get('currentUser.team.megaGrantHedgeProjectionDiscountOneYearAhead')) / 100;\n        return assumedReplaceDirects * discount;\n      }\n    }, {\n      key: \"megaGrantAssumedRenewReplaceIndirects\",\n      get: function get() {\n        var assumedReplaceDirects = this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantAssumedRenewReplaceCurrentYearIndirects') : this.get('model.megaGrantAssumedRenewReplaceOneYearAheadIndirects');\n        var discount = parseFloat(this.isHedgeSummaryCurrentYear ? this.get('currentUser.team.megaGrantHedgeProjectionDiscount') : this.get('currentUser.team.megaGrantHedgeProjectionDiscountOneYearAhead')) / 100;\n        return assumedReplaceDirects * discount;\n      }\n    }, {\n      key: \"megaGrantAssumedRenewReplaceCount\",\n      get: function get() {\n        var assumedReplaceCount = this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantAssumedRenewReplaceCurrentYearCount') : this.get('model.megaGrantAssumedRenewReplaceOneYearAheadCount');\n        var discount = parseFloat(this.isHedgeSummaryCurrentYear ? this.get('currentUser.team.megaGrantHedgeProjectionDiscount') : this.get('currentUser.team.megaGrantHedgeProjectionDiscountOneYearAhead')) / 100;\n        return Math.round(assumedReplaceCount * discount);\n      }\n    }, {\n      key: \"megaGrantSuccessesDirects\",\n      get: function get() {\n        return this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantYtdSuccessesDirects') : this.get('model.megaGrantOneYearAheadSuccessesDirects');\n      }\n    }, {\n      key: \"megaGrantSuccessesIndirects\",\n      get: function get() {\n        return this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantYtdSuccessesIndirects') : this.get('model.megaGrantOneYearAheadSuccessesIndirects');\n      }\n    }, {\n      key: \"megaGrantSuccessesCount\",\n      get: function get() {\n        return this.isHedgeSummaryCurrentYear ? this.get('model.megaGrantYtdSuccessesCount') : this.get('model.megaGrantOneYearAheadSuccessesCount');\n      }\n    }, {\n      key: \"megaGrantPendingDirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Directs', ''));\n      }\n    }, {\n      key: \"megaGrantPendingIndirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Indirects', ''));\n      }\n    }, {\n      key: \"megaGrantPendingCount\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Count', ''));\n      }\n    }, {\n      key: \"megaGrantPendingDirectsAccrual\",\n      get: function get() {\n        if (!this.isAccruingAdditionalMegaGrants || !this.isHedgeSummaryCurrentYear) {\n          return 0;\n        }\n\n        var directs = this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Directs', 'WithAccrual'));\n        return directs - this.megaGrantPendingDirects;\n      }\n    }, {\n      key: \"megaGrantPendingIndirectsAccrual\",\n      get: function get() {\n        if (!this.isAccruingAdditionalMegaGrants || !this.isHedgeSummaryCurrentYear) {\n          return 0;\n        }\n\n        var indirects = this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Indirects', 'WithAccrual'));\n        return indirects - this.megaGrantPendingIndirects;\n      }\n    }, {\n      key: \"megaGrantPendingCountAccrual\",\n      get: function get() {\n        if (!this.isAccruingAdditionalMegaGrants || !this.isHedgeSummaryCurrentYear) {\n          return 0;\n        }\n\n        var count = this.get(this.formatWithAccrualAndYear('model.megaGrantPending', 'Count', 'WithAccrual'));\n        return count - this.megaGrantPendingCount;\n      }\n    }, {\n      key: \"megaGrantConversionRequiredDirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantConversionRequired', 'Directs'));\n      }\n    }, {\n      key: \"megaGrantConversionRequiredIndirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantConversionRequired', 'Indirects'));\n      }\n    }, {\n      key: \"megaGrantsHedgeProjectionDirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantsHedgeProjection', 'Directs'));\n      }\n    }, {\n      key: \"megaGrantsHedgeProjectionIndirects\",\n      get: function get() {\n        return this.get(this.formatWithAccrualAndYear('model.megaGrantsHedgeProjection', 'Indirects'));\n      }\n    }, {\n      key: \"megaGrantAdjustmentAssumingFiveYearHitRateDirects\",\n      get: function get() {\n        var megaGrantsHedgeProjectionDirects = this.megaGrantsHedgeProjectionDirects;\n        var megaGrantsNewPotentialDirects = this.megaGrantsNewPotentialDirects;\n        var fiveYearAverageDirects = this.fiveYearAverageDirects;\n        return megaGrantsHedgeProjectionDirects + fiveYearAverageDirects - megaGrantsNewPotentialDirects;\n      }\n    }, {\n      key: \"megaGrantAdjustmentAssumingFiveYearHitRateIndirects\",\n      get: function get() {\n        var megaGrantsHedgeProjectionIndirects = this.megaGrantsHedgeProjectionIndirects;\n        var megaGrantsNewPotentialIndirects = this.megaGrantsNewPotentialIndirects;\n        var fiveYearAverageIndirects = this.fiveYearAverageIndirects;\n        return megaGrantsHedgeProjectionIndirects + fiveYearAverageIndirects - megaGrantsNewPotentialIndirects;\n      }\n    }, {\n      key: \"megaGrantsNewPotentialDirects\",\n      get: function get() {\n        var megaGrantsHedgeProjectionDirects = this.megaGrantsHedgeProjectionDirects;\n        var megaGrantSuccessesDirects = this.megaGrantSuccessesDirects;\n        return megaGrantsHedgeProjectionDirects + megaGrantSuccessesDirects;\n      }\n    }, {\n      key: \"megaGrantsNewPotentialIndirects\",\n      get: function get() {\n        var megaGrantsHedgeProjectionIndirects = this.megaGrantsHedgeProjectionIndirects;\n        var megaGrantSuccessesIndirects = this.megaGrantSuccessesIndirects;\n        return megaGrantsHedgeProjectionIndirects + megaGrantSuccessesIndirects;\n      }\n    }, {\n      key: \"futureOneYear\",\n      get: function get() {\n        return this.get('year.fiscalYear') + 1;\n      }\n    }, {\n      key: \"futureTwoYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') + 2;\n      }\n    }, {\n      key: \"futureThreeYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') + 3;\n      }\n    }, {\n      key: \"futureFourYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') + 4;\n      }\n    }, {\n      key: \"futureFiveYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') + 5;\n      }\n    }, {\n      key: \"pastOneYear\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 1;\n      }\n    }, {\n      key: \"pastTwoYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 2;\n      }\n    }, {\n      key: \"pastThreeYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 3;\n      }\n    }, {\n      key: \"pastFourYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 4;\n      }\n    }, {\n      key: \"pastFiveYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 5;\n      }\n    }, {\n      key: \"pastSixYears\",\n      get: function get() {\n        return this.get('year.fiscalYear') - 6;\n      }\n    }, {\n      key: \"megaGrantHistoryViewOptions\",\n      get: function get() {\n        return ['Start Year', 'Submit Year'];\n      }\n    }, {\n      key: \"megaGrantHedgeViewOptions\",\n      get: function get() {\n        return ['This Year', 'Next Year'];\n      }\n    }, {\n      key: \"futureMegaGrantData\",\n      get: function get() {\n        var team = this.get('currentUser.team');\n        var currentYear = {\n          year: this.year.fiscalYear,\n          directsAdjustment: parseFloat(team.get('megaGrantFutureCurrentYearDirects')),\n          indirectsAdjustment: parseFloat(team.get('megaGrantFutureCurrentYearIndirects'))\n        };\n        var oneYear = {\n          year: this.futureOneYear,\n          directsAdjustment: parseFloat(team.get('megaGrantFutureOneYearAheadDirects')),\n          indirectsAdjustment: parseFloat(team.get('megaGrantFutureOneYearAheadIndirects'))\n        };\n        return [currentYear, oneYear];\n      }\n    }, {\n      key: \"megaGrantHistoryStartData\",\n      get: function get() {\n        var model = this.model; // Create objects for each of the years in the history. One per year per start/submit year\n        // Start Year\n\n        var startOneYear = {\n          year: this.pastOneYear,\n          data: model.get('megaGrantHistoryStartOneYearAgo')\n        };\n        var startTwoYear = {\n          year: this.pastTwoYears,\n          data: model.get('megaGrantHistoryStartTwoYearsAgo')\n        };\n        var startThreeYear = {\n          year: this.pastThreeYears,\n          data: model.get('megaGrantHistoryStartThreeYearsAgo')\n        };\n        var startFourYear = {\n          year: this.pastFourYears,\n          data: model.get('megaGrantHistoryStartFourYearsAgo')\n        };\n        var startFiveYear = {\n          year: this.pastFiveYears,\n          data: model.get('megaGrantHistoryStartFiveYearsAgo')\n        }; // Create arrays of the year objects for Start Year and Submit Year\n\n        var startArray = [startFiveYear, startFourYear, startThreeYear, startTwoYear, startOneYear];\n        this.setMegaGrantHistoryData(startArray);\n        return startArray;\n      }\n    }, {\n      key: \"megaGrantHistorySubmitData\",\n      get: function get() {\n        var model = this.model; // Submit Year\n\n        var submitTwoYear = {\n          year: this.pastTwoYears,\n          data: model.get('megaGrantHistorySubmitTwoYearsAgo')\n        };\n        var submitThreeYear = {\n          year: this.pastThreeYears,\n          data: model.get('megaGrantHistorySubmitThreeYearsAgo')\n        };\n        var submitFourYear = {\n          year: this.pastFourYears,\n          data: model.get('megaGrantHistorySubmitFourYearsAgo')\n        };\n        var submitFiveYear = {\n          year: this.pastFiveYears,\n          data: model.get('megaGrantHistorySubmitFiveYearsAgo')\n        };\n        var submitSixYears = {\n          year: this.pastSixYears,\n          data: model.get('megaGrantHistorySubmitSixYearsAgo')\n        };\n        var submitArray = [submitSixYears, submitFiveYear, submitFourYear, submitThreeYear, submitTwoYear];\n        this.setMegaGrantHistoryData(submitArray);\n        return submitArray;\n      }\n    }, {\n      key: \"megaGrantHistoryData\",\n      get: function get() {\n        var selected = this.selectedMegaGrantHistoryView;\n        var startData = this.megaGrantHistoryStartData;\n        var submitData = this.megaGrantHistorySubmitData;\n\n        if (selected === 'Start Year') {\n          return startData;\n        } else if (selected === 'Submit Year') {\n          return submitData;\n        }\n\n        return null;\n      }\n    }, {\n      key: \"fiveYearAverageDirects\",\n      get: function get() {\n        var startData = this.megaGrantHistoryStartData;\n\n        if (startData) {\n          var averageData = startData[startData.length - 1];\n          return averageData.avgDirects;\n        }\n\n        return null;\n      }\n    }, {\n      key: \"fiveYearAverageIndirects\",\n      get: function get() {\n        var startData = this.megaGrantHistoryStartData;\n\n        if (startData) {\n          var averageData = startData[startData.length - 1];\n          return averageData.avgIndirects;\n        }\n\n        return null;\n      }\n    }, {\n      key: \"hedgeData\",\n      get: function get() {\n        var model = this.model;\n        var currentYear = {\n          year: this.get('year.fiscalYear'),\n          directs: model.get('megaGrantAssumedRenewReplaceCurrentYearDirects'),\n          indirects: model.get('megaGrantAssumedRenewReplaceCurrentYearIndirects'),\n          count: model.get('megaGrantAssumedRenewReplaceCurrentYearCount')\n        };\n        var oneYear = {\n          year: this.futureOneYear,\n          directs: model.get('megaGrantAssumedRenewReplaceOneYearAheadDirects'),\n          indirects: model.get('megaGrantAssumedRenewReplaceOneYearAheadIndirects'),\n          count: model.get('megaGrantAssumedRenewReplaceOneYearAheadCount')\n        };\n        var twoYear = {\n          year: this.futureTwoYears,\n          directs: model.get('megaGrantAssumedRenewReplaceTwoYearsAheadDirects'),\n          indirects: model.get('megaGrantAssumedRenewReplaceTwoYearsAheadIndirects'),\n          count: model.get('megaGrantAssumedRenewReplaceTwoYearsAheadCount')\n        };\n        var threeYear = {\n          year: this.futureThreeYears,\n          directs: model.get('megaGrantAssumedRenewReplaceThreeYearsAheadDirects'),\n          indirects: model.get('megaGrantAssumedRenewReplaceThreeYearsAheadIndirects'),\n          count: model.get('megaGrantAssumedRenewReplaceThreeYearsAheadCount')\n        };\n        var fourYear = {\n          year: this.futureFourYears,\n          directs: model.get('megaGrantAssumedRenewReplaceFourYearsAheadDirects'),\n          indirects: model.get('megaGrantAssumedRenewReplaceFourYearsAheadIndirects'),\n          count: model.get('megaGrantAssumedRenewReplaceFourYearsAheadCount')\n        };\n        var hedgeArray = [currentYear, oneYear, twoYear, threeYear, fourYear];\n        hedgeArray.forEach(function (year) {\n          // Pull in all the existing data from the object\n          var directs = parseFloat(year.directs);\n          var indirects = parseFloat(year.indirects); // Calculate total dollar amount\n\n          var total = Math.floor(directs + indirects); // Set percentFill for the split-bar-chart component\n\n          var percentFill = Math.floor(directs / total * 100);\n          year.total = (0, _formatMoney.default)(total);\n          year.formattedDirects = (0, _formatMoney.default)(directs);\n          year.formattedIndirects = (0, _formatMoney.default)(indirects);\n          year.percentFill = percentFill;\n        });\n        return hedgeArray;\n      }\n    }, {\n      key: \"revisedCurrentYearDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsCurrentYearDirects');\n        mega += (0, _futureMegaProjection.default)(0, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedCurrentYearIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsCurrentYearIndirects');\n        mega += (0, _futureMegaProjection.default)(0, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedOneYearAheadDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsOneYearAheadDirects');\n        mega += (0, _futureMegaProjection.default)(1, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedOneYearAheadIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsOneYearAheadIndirects');\n        mega += (0, _futureMegaProjection.default)(1, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedTwoYearsAheadDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsTwoYearsAheadDirects');\n        mega += (0, _futureMegaProjection.default)(2, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedTwoYearsAheadIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsTwoYearsAheadIndirects');\n        mega += (0, _futureMegaProjection.default)(2, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedThreeYearsAheadDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsThreeYearsAheadDirects');\n        mega += (0, _futureMegaProjection.default)(3, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedThreeYearsAheadIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsThreeYearsAheadIndirects');\n        mega += (0, _futureMegaProjection.default)(3, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedFourYearsAheadDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsFourYearsAheadDirects');\n        mega += (0, _futureMegaProjection.default)(4, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedFourYearsAheadIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsFourYearsAheadIndirects');\n        mega += (0, _futureMegaProjection.default)(4, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedFiveYearsAheadDirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsFiveYearsAheadDirects');\n        mega += (0, _futureMegaProjection.default)(5, true, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedFiveYearsAheadIndirects\",\n      get: function get() {\n        var mega = this.get('model.megaGrantTotalsFiveYearsAheadIndirects');\n        mega += (0, _futureMegaProjection.default)(5, false, this.get('currentUser.team'));\n        return mega;\n      }\n    }, {\n      key: \"revisedCurrentFutureDirectsRow\",\n      get: function get() {\n        var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n        return {\n          type: '',\n          directsOrIndirects: 'Directs',\n          ptsCurrentYear: this.revisedCurrentYearDirects * (1 - shrinkage),\n          ptsOneYearAhead: this.revisedOneYearAheadDirects * (1 - shrinkage),\n          ptsTwoYearsAhead: this.revisedTwoYearsAheadDirects * (1 - shrinkage),\n          ptsThreeYearsAhead: this.revisedThreeYearsAheadDirects * (1 - shrinkage),\n          ptsFourYearsAhead: this.revisedFourYearsAheadDirects * (1 - shrinkage),\n          ptsFiveYearsAhead: this.revisedFiveYearsAheadDirects * (1 - shrinkage)\n        };\n      }\n    }, {\n      key: \"revisedCurrentFutureIndirectsRow\",\n      get: function get() {\n        var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n        return {\n          type: '',\n          directsOrIndirects: 'Indirects',\n          ptsCurrentYear: this.revisedCurrentYearIndirects * (1 - shrinkage),\n          ptsOneYearAhead: this.revisedOneYearAheadIndirects * (1 - shrinkage),\n          ptsTwoYearsAhead: this.revisedTwoYearsAheadIndirects * (1 - shrinkage),\n          ptsThreeYearsAhead: this.revisedThreeYearsAheadIndirects * (1 - shrinkage),\n          ptsFourYearsAhead: this.revisedFourYearsAheadIndirects * (1 - shrinkage),\n          ptsFiveYearsAhead: this.revisedFiveYearsAheadIndirects * (1 - shrinkage)\n        };\n      }\n    }, {\n      key: \"tableCurrentFutureCoreMegaModel\",\n      get: function get() {\n        return [this.revisedCurrentFutureDirectsRow, this.revisedCurrentFutureIndirectsRow];\n      }\n    }]);\n\n    return SummaryController;\n  }(Ember.Controller), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"isAccruingAdditionalMegaGrants\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"isAccruingAdditionalMegaGrants\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantStatusTitle\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantStatusTitle\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantSuccessLabel\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantSuccessLabel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedDiscount\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedDiscount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceDirects\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceIndirects\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceCount\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantAssumedRenewReplaceCount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantSuccessesDirects\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantSuccessesDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantSuccessesIndirects\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantSuccessesIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantSuccessesCount\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantSuccessesCount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingDirects\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingIndirects\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingCount\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingCount\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingDirectsAccrual\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingDirectsAccrual\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingIndirectsAccrual\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingIndirectsAccrual\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantPendingCountAccrual\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantPendingCountAccrual\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantConversionRequiredDirects\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantConversionRequiredDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantConversionRequiredIndirects\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantConversionRequiredIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantsHedgeProjectionDirects\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantsHedgeProjectionDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantsHedgeProjectionIndirects\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantsHedgeProjectionIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantAdjustmentAssumingFiveYearHitRateDirects\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantAdjustmentAssumingFiveYearHitRateDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantAdjustmentAssumingFiveYearHitRateIndirects\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantAdjustmentAssumingFiveYearHitRateIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantsNewPotentialDirects\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantsNewPotentialDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantsNewPotentialIndirects\", [_dec24], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantsNewPotentialIndirects\"), _class2.prototype), _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec25], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec26], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"futureOneYear\", [_dec27], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureOneYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureTwoYears\", [_dec28], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureTwoYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureThreeYears\", [_dec29], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureThreeYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureFourYears\", [_dec30], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureFourYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureFiveYears\", [_dec31], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureFiveYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastOneYear\", [_dec32], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastOneYear\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastTwoYears\", [_dec33], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastTwoYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastThreeYears\", [_dec34], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastThreeYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastFourYears\", [_dec35], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastFourYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastFiveYears\", [_dec36], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastFiveYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"pastSixYears\", [_dec37], Object.getOwnPropertyDescriptor(_class2.prototype, \"pastSixYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHistoryViewOptions\", [_dec38], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantHistoryViewOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHedgeViewOptions\", [_dec39], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantHedgeViewOptions\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"futureMegaGrantData\", [_dec40], Object.getOwnPropertyDescriptor(_class2.prototype, \"futureMegaGrantData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHistoryStartData\", [_dec41], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantHistoryStartData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHistorySubmitData\", [_dec42], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantHistorySubmitData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHistoryData\", [_dec43], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantHistoryData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"fiveYearAverageDirects\", [_dec44], Object.getOwnPropertyDescriptor(_class2.prototype, \"fiveYearAverageDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"fiveYearAverageIndirects\", [_dec45], Object.getOwnPropertyDescriptor(_class2.prototype, \"fiveYearAverageIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hedgeData\", [_dec46], Object.getOwnPropertyDescriptor(_class2.prototype, \"hedgeData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedCurrentYearDirects\", [_dec47], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedCurrentYearDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedCurrentYearIndirects\", [_dec48], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedCurrentYearIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedOneYearAheadDirects\", [_dec49], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedOneYearAheadDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedOneYearAheadIndirects\", [_dec50], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedOneYearAheadIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedTwoYearsAheadDirects\", [_dec51], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedTwoYearsAheadDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedTwoYearsAheadIndirects\", [_dec52], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedTwoYearsAheadIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedThreeYearsAheadDirects\", [_dec53], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedThreeYearsAheadDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedThreeYearsAheadIndirects\", [_dec54], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedThreeYearsAheadIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedFourYearsAheadDirects\", [_dec55], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedFourYearsAheadDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedFourYearsAheadIndirects\", [_dec56], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedFourYearsAheadIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedFiveYearsAheadDirects\", [_dec57], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedFiveYearsAheadDirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedFiveYearsAheadIndirects\", [_dec58], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedFiveYearsAheadIndirects\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedCurrentFutureDirectsRow\", [_dec59], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedCurrentFutureDirectsRow\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"revisedCurrentFutureIndirectsRow\", [_dec60], Object.getOwnPropertyDescriptor(_class2.prototype, \"revisedCurrentFutureIndirectsRow\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"tableCurrentFutureCoreMegaModel\", [_dec61], Object.getOwnPropertyDescriptor(_class2.prototype, \"tableCurrentFutureCoreMegaModel\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedDiscountChanged\", [_dec62], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedDiscountChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"accruePendingMegaGrantChanged\", [_dec63], Object.getOwnPropertyDescriptor(_class2.prototype, \"accruePendingMegaGrantChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"switchSelectedMegaGrantHistoryView\", [_dec64], Object.getOwnPropertyDescriptor(_class2.prototype, \"switchSelectedMegaGrantHistoryView\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"switchSelectedMegaGrantHedgeView\", [_dec65], Object.getOwnPropertyDescriptor(_class2.prototype, \"switchSelectedMegaGrantHedgeView\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setSelectedMegaGrantHistoryType\", [_dec66], Object.getOwnPropertyDescriptor(_class2.prototype, \"setSelectedMegaGrantHistoryType\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveTeam\", [_dec67], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveTeam\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleStatusHelp\", [_dec68], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleStatusHelp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleBacklogHelp\", [_dec69], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleBacklogHelp\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SummaryController;\n});","define(\"b3i-analytics-web-app/controllers/app/projections/forecast-modifier\", [\"exports\", \"accounting/format-number\", \"b3i-analytics-web-app/mixins/full-projections\", \"moment-range\", \"moment\", \"b3i-analytics-web-app/utils/future-mega-projection\", \"accounting/format-money\"], function (_exports, _formatNumber, _fullProjections, _momentRange, _moment, _futureMegaProjection, _formatMoney) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var GRANT_TYPE_ALL = 'Base (Core & Mega)';\n  var GRANT_TYPE_MEGA = 'Mega';\n  var SPONSOR_TYPE_ALL = 'All Sponsor Types';\n\n  var moment = _momentRange.default.extendMoment(_moment.default);\n\n  var _default = Ember.Controller.extend(_fullProjections.default, {\n    projectionsController: Ember.inject.controller('app.projections.index'),\n    selectedGrantType: GRANT_TYPE_ALL,\n    selectedSponsor: SPONSOR_TYPE_ALL,\n    phase1Start: 'Mar 2020',\n    phase1End: 'Jun 2020',\n    phase1ReductionsDirects: 8,\n    phase1ReductionsIndirects: 6,\n    phase1RecoveryDirects: 90,\n    phase1RecoveryIndirects: 90,\n    isPhase2Enabled: true,\n    phase2Start: 'Jul 2020',\n    phase2End: 'Sep 2020',\n    phase2ReductionsDirects: 12,\n    phase2ReductionsIndirects: 10,\n    phase2RecoveryDirects: 90,\n    phase2RecoveryIndirects: 90,\n    isPhase3Enabled: true,\n    phase3Start: 'Oct 2020',\n    phase3End: 'Dec 2020',\n    phase3ReductionsDirects: 7,\n    phase3ReductionsIndirects: 5,\n    phase3RecoveryDirects: 90,\n    phase3RecoveryIndirects: 90,\n    compensationReplacementNih: 65,\n    compensationReplacementOtherFed: 65,\n    compensationReplacementFedFlowThru: 65,\n    compensationReplacementNonFed: 65,\n    compensationReplacementSponsor5: 65,\n    compensationReplacementSponsor6: 65,\n    compensationReplacementSponsor7: 65,\n    selectedCompensationReplacementSponsor: 'All',\n    //Copy over settings from main projections page\n    coreConversionRatiosSettingsOpenCurrentYearNih: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearNih'),\n    coreConversionRatiosSettingsRevisedCurrentYearNih: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearNih'),\n    coreConversionRatiosSettingsTransitionNextYearNih: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearNih'),\n    coreConversionRatiosSettingsProjectionsNih: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsNih'),\n    coreConversionRatiosSettingsOpenCurrentYearOtherFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearOtherFed'),\n    coreConversionRatiosSettingsRevisedCurrentYearOtherFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearOtherFed'),\n    coreConversionRatiosSettingsTransitionNextYearOtherFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearOtherFed'),\n    coreConversionRatiosSettingsProjectionsOtherFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsOtherFed'),\n    coreConversionRatiosSettingsOpenCurrentYearFedFlowThru: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru'),\n    coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru'),\n    coreConversionRatiosSettingsTransitionNextYearFedFlowThru: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearFedFlowThru'),\n    coreConversionRatiosSettingsProjectionsFedFlowThru: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsFedFlowThru'),\n    coreConversionRatiosSettingsOpenCurrentYearNonFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearNonFed'),\n    coreConversionRatiosSettingsRevisedCurrentYearNonFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearNonFed'),\n    coreConversionRatiosSettingsTransitionNextYearNonFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearNonFed'),\n    coreConversionRatiosSettingsProjectionsNonFed: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsNonFed'),\n    coreConversionRatiosSettingsOpenCurrentYearSponsor5: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearSponsor5'),\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor5: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearSponsor5'),\n    coreConversionRatiosSettingsTransitionNextYearSponsor5: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearSponsor5'),\n    coreConversionRatiosSettingsProjectionsSponsor5: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsSponsor5'),\n    coreConversionRatiosSettingsOpenCurrentYearSponsor6: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearSponsor6'),\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor6: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearSponsor6'),\n    coreConversionRatiosSettingsTransitionNextYearSponsor6: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearSponsor6'),\n    coreConversionRatiosSettingsProjectionsSponsor6: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsSponsor6'),\n    coreConversionRatiosSettingsOpenCurrentYearSponsor7: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsOpenCurrentYearSponsor7'),\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor7: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsRevisedCurrentYearSponsor7'),\n    coreConversionRatiosSettingsTransitionNextYearSponsor7: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsTransitionNextYearSponsor7'),\n    coreConversionRatiosSettingsProjectionsSponsor7: Ember.computed.alias('projectionsController.coreConversionRatiosSettingsProjectionsSponsor7'),\n    coreProposalsSettingsOpenCurrentYearNih: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearNih'),\n    coreProposalsSettingsRevisedCurrentYearNih: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearNih'),\n    coreProposalsSettingsTransitionNextYearNih: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearNih'),\n    coreProposalsSettingsProjectionsNih: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsNih'),\n    coreProposalsSettingsOpenCurrentYearOtherFed: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearOtherFed'),\n    coreProposalsSettingsRevisedCurrentYearOtherFed: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearOtherFed'),\n    coreProposalsSettingsTransitionNextYearOtherFed: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearOtherFed'),\n    coreProposalsSettingsProjectionsOtherFed: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsOtherFed'),\n    coreProposalsSettingsOpenCurrentYearFedFlowThru: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearFedFlowThru'),\n    coreProposalsSettingsRevisedCurrentYearFedFlowThru: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearFedFlowThru'),\n    coreProposalsSettingsTransitionNextYearFedFlowThru: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearFedFlowThru'),\n    coreProposalsSettingsProjectionsFedFlowThru: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsFedFlowThru'),\n    coreProposalsSettingsOpenCurrentYearNonFed: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearNonFed'),\n    coreProposalsSettingsRevisedCurrentYearNonFed: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearNonFed'),\n    coreProposalsSettingsTransitionNextYearNonFed: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearNonFed'),\n    coreProposalsSettingsProjectionsNonFed: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsNonFed'),\n    coreProposalsSettingsOpenCurrentYearSponsor5: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearSponsor5'),\n    coreProposalsSettingsRevisedCurrentYearSponsor5: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearSponsor5'),\n    coreProposalsSettingsTransitionNextYearSponsor5: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearSponsor5'),\n    coreProposalsSettingsProjectionsSponsor5: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsSponsor5'),\n    coreProposalsSettingsOpenCurrentYearSponsor6: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearSponsor6'),\n    coreProposalsSettingsRevisedCurrentYearSponsor6: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearSponsor6'),\n    coreProposalsSettingsTransitionNextYearSponsor6: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearSponsor6'),\n    coreProposalsSettingsProjectionsSponsor6: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsSponsor6'),\n    coreProposalsSettingsOpenCurrentYearSponsor7: Ember.computed.alias('projectionsController.coreProposalsSettingsOpenCurrentYearSponsor7'),\n    coreProposalsSettingsRevisedCurrentYearSponsor7: Ember.computed.alias('projectionsController.coreProposalsSettingsRevisedCurrentYearSponsor7'),\n    coreProposalsSettingsTransitionNextYearSponsor7: Ember.computed.alias('projectionsController.coreProposalsSettingsTransitionNextYearSponsor7'),\n    coreProposalsSettingsProjectionsSponsor7: Ember.computed.alias('projectionsController.coreProposalsSettingsProjectionsSponsor7'),\n    currentUser: Ember.inject.service(),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      var startMonth = moment([2020, 2]).startOf('month');\n      var monthsOptions = Array(36).fill(0).map(function (_, i) {\n        return moment(startMonth).add('month', i).format('MMM YYYY');\n      });\n      this.set('phase1StartOptions', monthsOptions);\n      this.set('phase2StartOptions', monthsOptions);\n      this.set('phase3StartOptions', monthsOptions);\n      this.set('sponsorOptions', this.currentUser.sponsorlist);\n      var baseChartOptions = {\n        scales: {\n          yAxes: [{\n            ticks: {\n              display: true,\n              beginAtZero: true,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: true,\n              drawTicks: true,\n              zeroLineWidth: 2\n            }\n          }],\n          xAxes: [{\n            ticks: {\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: false\n            }\n          }]\n        },\n        legend: {\n          position: 'top',\n          reverse: false,\n          labels: {\n            boxWidth: 12,\n            fontColor: '#323539',\n            fontFamily: 'Lato',\n            fontSize: 12,\n            fontStyle: 'bold'\n          }\n        },\n        tooltips: {\n          backgroundColor: '#FAFBFB',\n          bodyFontColor: '#416477',\n          bodyFontFamily: 'Lato',\n          bodySpacing: 6,\n          enabled: false,\n          intersect: false,\n          footerMarginBottom: 20,\n          mode: 'index',\n          multiKeyBackground: '#FAFBFB',\n          position: 'nearest',\n          titleFontColor: '#416477',\n          titleMarginBottom: 12,\n          xPadding: 12,\n          yPadding: 12\n        },\n        title: {\n          display: true\n        },\n        plugins: {\n          datalabels: {\n            align: 'bottom',\n            anchor: 'end',\n            color: 'rgba(0,0,0,0.9)',\n            font: {\n              family: 'Lato',\n              size: 11,\n              weight: 900\n            },\n            padding: 2\n          }\n        }\n      };\n      Chart.defaults.global.maintainAspectRatio = false; //eslint-disable-line\n      // Chart Options for standard bar chart\n\n      var dollarChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n      this.set('dollarChartOptions', dollarChartOptions);\n      var projectedReducedBaselineOptions = JSON.parse(JSON.stringify(dollarChartOptions));\n      projectedReducedBaselineOptions.title.text = 'Projected Spending and Indirect Cost Recovery (mm)';\n      projectedReducedBaselineOptions.scales.xAxes[0].stacked = true;\n      projectedReducedBaselineOptions.scales.yAxes[0].stacked = true;\n      projectedReducedBaselineOptions.plugins.datalabels.display = false;\n\n      projectedReducedBaselineOptions.scales.yAxes[0].ticks.callback = function (value) {\n        return (0, _formatMoney.default)(value);\n      };\n\n      this.set('projectedReducedBaselineOptions', projectedReducedBaselineOptions);\n      var compensationReplacementOptions = JSON.parse(JSON.stringify(dollarChartOptions));\n      compensationReplacementOptions.title.text = 'Potential Research Backstop (mm)';\n      compensationReplacementOptions.scales.yAxes[0].ticks.display = false;\n      compensationReplacementOptions.scales.yAxes[0].gridLines.display = false;\n\n      compensationReplacementOptions.plugins.datalabels.formatter = function (value) {\n        if (!value) {\n          return null;\n        }\n\n        return (0, _formatNumber.default)(value, 1);\n      };\n\n      this.set('compensationReplacementOptions', compensationReplacementOptions);\n    },\n    saveSettings: function saveSettings() {\n      var settings = {\n        phase1Start: this.phase1Start,\n        phase1End: this.phase1End,\n        phase1ReductionsDirects: this.phase1ReductionsDirects,\n        phase1ReductionsIndirects: this.phase1ReductionsIndirects,\n        phase1RecoveryDirects: this.phase1RecoveryDirects,\n        phase1RecoveryIndirects: this.phase1RecoveryIndirects,\n        isPhase2Enabled: this.isPhase2Enabled,\n        phase2Start: this.phase2Start,\n        phase2End: this.phase2End,\n        phase2ReductionsDirects: this.phase2ReductionsDirects,\n        phase2ReductionsIndirects: this.phase2ReductionsIndirects,\n        phase2RecoveryDirects: this.phase2RecoveryDirects,\n        phase2RecoveryIndirects: this.phase2RecoveryIndirects,\n        isPhase3Enabled: this.isPhase3Enabled,\n        phase3Start: this.phase3Start,\n        phase3End: this.phase3End,\n        phase3ReductionsDirects: this.phase3ReductionsDirects,\n        phase3ReductionsIndirects: this.phase3ReductionsIndirects,\n        phase3RecoveryDirects: this.phase3RecoveryDirects,\n        phase3RecoveryIndirects: this.phase3RecoveryIndirects,\n        compensationReplacementNih: this.compensationReplacementNih,\n        compensationReplacementOtherFed: this.compensationReplacementOtherFed,\n        compensationReplacementFedFlowThru: this.compensationReplacementFedFlowThru,\n        compensationReplacementNonFed: this.compensationReplacementNonFed,\n        compensationReplacementSponsor5: this.compensationReplacementSponsor5,\n        compensationReplacementSponsor6: this.compensationReplacementSponsor6,\n        compensationReplacementSponsor7: this.compensationReplacementSponsor7,\n        selectedCompensationReplacementSponsor: this.selectedCompensationReplacementSponsor,\n        selectedFilterOption: this.selectedFilterOption\n      };\n      window.localStorage.setItem('forecastModifierSettings', JSON.stringify(settings));\n    },\n    phase1OptionsObserver: Ember.observer('phase1StartOptions', 'phase1Start', function () {\n      this.set('phase1EndOptions', this.phaseEndOptions(this.phase1StartOptions, this.phase1Start));\n\n      if (this.phase1EndOptions.indexOf(this.phase1End) === -1 && this.phase1EndOptions.length > 0) {\n        this.set('phase1End', this.phase1EndOptions[0]);\n      }\n    }).on('init'),\n    phase2OptionsObserver: Ember.observer('phase2StartOptions', 'phase2Start', function () {\n      this.set('phase2EndOptions', this.phaseEndOptions(this.phase2StartOptions, this.phase2Start));\n\n      if (this.phase2EndOptions.indexOf(this.phase2End) === -1 && this.phase2EndOptions.length > 0) {\n        this.set('phase2End', this.phase2EndOptions[0]);\n      }\n    }).on('init'),\n    phase3OptionsObserver: Ember.observer('phase3StartOptions', 'phase3Start', function () {\n      this.set('phase3EndOptions', this.phaseEndOptions(this.phase3StartOptions, this.phase3Start));\n\n      if (this.phase3EndOptions.indexOf(this.phase3End) === -1 && this.phase3EndOptions.length > 0) {\n        this.set('phase3End', this.phase3EndOptions[0]);\n      }\n    }).on('init'),\n    phase2StartOptionsObserver: Ember.observer('phase1EndOptions', 'phase1End', function () {\n      this.set('phase2StartOptions', this.phaseEndOptions(this.phase1EndOptions, this.phase1End));\n\n      if (this.phase2StartOptions.indexOf(this.phase2Start) === -1 && this.phase2StartOptions.length > 0) {\n        this.set('phase2Start', this.phase2StartOptions[0]);\n      }\n    }).on('init'),\n    phase3StartOptionsObserver: Ember.observer('phase2EndOptions', 'phase2End', function () {\n      this.set('phase3StartOptions', this.phaseEndOptions(this.phase2EndOptions, this.phase2End));\n\n      if (this.phase3StartOptions.indexOf(this.phase3Start) === -1 && this.phase3EndOptions && this.phase3EndOptions.length > 0) {\n        this.set('phase3Start', this.phase3StartOptions[0]);\n      }\n    }).on('init'),\n    phaseEndOptions: function phaseEndOptions(options, start) {\n      if (!options) {\n        return [];\n      } else if (!start) {\n        return options;\n      }\n\n      var index = options.findIndex(function (month) {\n        return month === start;\n      });\n\n      if (index) {\n        var indexToSlice = index + 1 >= options.length ? options.length - 1 : index + 1;\n        return options.slice(indexToSlice);\n      } else {\n        return options;\n      }\n    },\n    //Add the revised reduced calculations to account for reductions\n    //region Revised Current Year\n    revisedReducedCurrentYearNihDirects: Ember.computed('currentUser.team', 'model.projection.{successesFiveYearsAgoNihDirects,successesFourYearsAgoNihDirects,successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNihDirects'), this.get('model.projection.successesFourYearsAgoNihDirects'), this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearNihIndirects: Ember.computed('model.projection.{successesFiveYearsAgoNihIndirects,successesFourYearsAgoNihIndirects,successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNihIndirects'), this.get('model.projection.successesFourYearsAgoNihIndirects'), this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{successesFiveYearsAgoFedFlowThruDirects,successesFourYearsAgoFedFlowThruDirects}', 'modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoFedFlowThruDirects'), this.get('model.projection.successesFourYearsAgoFedFlowThruDirects'), this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{successesFiveYearsAgoFedFlowThruIndirects,successesFourYearsAgoFedFlowThruIndirects}', 'modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoFedFlowThruIndirects'), this.get('model.projection.successesFourYearsAgoFedFlowThruIndirects'), this.modifiedFedFlowThruThreeYearsAgoIndirects, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearOtherFedDirects: Ember.computed('model.projection.{successesFiveYearsAgoOtherFedDirects,successesFourYearsAgoOtherFedDirects,successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoOtherFedDirects'), this.get('model.projection.successesFourYearsAgoOtherFedDirects'), this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearOtherFedIndirects: Ember.computed('model.projection.{successesFiveYearsAgoOtherFedIndirects,successesFourYearsAgoOtherFedIndirects,successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoOtherFedIndirects'), this.get('model.projection.successesFourYearsAgoOtherFedIndirects'), this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearNonFedDirects: Ember.computed('model.projection.{successesFiveYearsAgoNonFedDirects,successesFourYearsAgoNonFedDirects,successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNonFedDirects'), this.get('model.projection.successesFourYearsAgoNonFedDirects'), this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearNonFedIndirects: Ember.computed('model.projection.{successesFiveYearsAgoNonFedIndirects,successesFourYearsAgoNonFedIndirects,successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', 'recoveryCoreCurrentYearDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNonFedIndirects'), this.get('model.projection.successesFourYearsAgoNonFedIndirects'), this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearSponsor5Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor5Directs,successesFourYearsAgoSponsor5Directs,successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor5Directs'), this.get('model.projection.successesFourYearsAgoSponsor5Directs'), this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearSponsor5Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor5Indirects,successesFourYearsAgoSponsor5Indirects,successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', 'recoveryCoreCurrentYearDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor5Indirects'), this.get('model.projection.successesFourYearsAgoSponsor5Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearSponsor6Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor6Directs,successesFourYearsAgoSponsor6Directs,successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor6Directs'), this.get('model.projection.successesFourYearsAgoSponsor6Directs'), this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearSponsor6Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor6Indirects,successesFourYearsAgoSponsor6Indirects,successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', 'recoveryCoreCurrentYearDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor6Indirects'), this.get('model.projection.successesFourYearsAgoSponsor6Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearSponsor7Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor7Directs,successesFourYearsAgoSponsor7Directs,successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor7Directs'), this.get('model.projection.successesFourYearsAgoSponsor7Directs'), this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.year.fiscalYear, true);\n    }),\n    revisedReducedCurrentYearSponsor7Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor7Indirects,successesFourYearsAgoSponsor7Indirects,successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', 'recoveryCoreCurrentYearDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor7Indirects'), this.get('model.projection.successesFourYearsAgoSponsor7Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.year.fiscalYear, false);\n    }),\n    revisedReducedCurrentYearDirects: Ember.computed('revisedReducedCurrentYearNihDirects', 'revisedReducedCurrentYearOtherFedDirects', 'revisedReducedCurrentYearFedFlowThruDirects', 'revisedReducedCurrentYearNonFedDirects', 'revisedReducedCurrentYearSponsor5Directs', 'revisedReducedCurrentYearSponsor6Directs', 'revisedReducedCurrentYearSponsor7Directs', 'model.projection.megaGrantTotalsCurrentYearDirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureCurrentYearDirects', 'selectedSponsorType', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsCurrentYearNihDirects, model.megaGrantTotalsCurrentYearFedFlowThruDirects, model.megaGrantTotalsCurrentYearOtherFedDirects, model.megaGrantTotalsCurrentYearNonFedDirects, model.megaGrantTotalsCurrentYearSponsor5Directs, model.megaGrantTotalsCurrentYearSponsor6Directs, model.megaGrantTotalsCurrentYearSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(0, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYear, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedCurrentYearNihDirects, this.revisedReducedCurrentYearFedFlowThruDirects, this.revisedReducedCurrentYearOtherFedDirects, this.revisedReducedCurrentYearNonFedDirects, this.revisedReducedCurrentYearSponsor5Directs, this.revisedReducedCurrentYearSponsor6Directs, this.revisedReducedCurrentYearSponsor7Directs) + this.recoveryCoreCurrentYearDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedCurrentYearIndirects: Ember.computed('revisedReducedCurrentYearNihIndirects', 'revisedReducedCurrentYearOtherFedIndirects', 'revisedReducedCurrentYearFedFlowThruIndirects', 'revisedReducedCurrentYearNonFedIndirects', 'revisedReducedCurrentYearSponsor5Indirects', 'revisedReducedCurrentYearSponsor6Indirects', 'revisedReducedCurrentYearSponsor7Indirects', 'model.projection.megaGrantTotalsCurrentYearNihIndirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureCurrentYearIndirects', 'selectedSponsor', 'recoveryCoreCurrentYearIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsCurrentYearNihIndirects, model.megaGrantTotalsCurrentYearFedFlowThruIndirects, model.megaGrantTotalsCurrentYearOtherFedIndirects, model.megaGrantTotalsCurrentYearNonFedIndirects, model.megaGrantTotalsCurrentYearSponsor5Indirects, model.megaGrantTotalsCurrentYearSponsor6Indirects, model.megaGrantTotalsCurrentYearSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(0, false, this.get('currentUser.team'));\n      }\n\n      +this.recoveryCoreCurrentYearIndirects;\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYear, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedCurrentYearNihIndirects, this.revisedReducedCurrentYearFedFlowThruIndirects, this.revisedReducedCurrentYearOtherFedIndirects, this.revisedReducedCurrentYearNonFedIndirects, this.revisedReducedCurrentYearSponsor5Indirects, this.revisedReducedCurrentYearSponsor6Indirects, this.revisedReducedCurrentYearSponsor7Indirects) + this.recoveryCoreCurrentYearIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised One Year Ahead\n    revisedReducedOneYearAheadNihDirects: Ember.computed('model.projection.{successesFourYearsAgoNihDirects,successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNihDirects'), this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadNihIndirects: Ember.computed('model.projection.{successesFourYearsAgoNihIndirects,successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNihIndirects'), this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadOtherFedDirects: Ember.computed('model.projection.{successesFourYearsAgoOtherFedDirects,successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoOtherFedDirects'), this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadOtherFedIndirects: Ember.computed('model.projection.{successesFourYearsAgoOtherFedIndirects,successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phaseRanges', 'phase3ReductionsIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoOtherFedIndirects'), this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadFedFlowThruDirects: Ember.computed('model.projection.successesFourYearsAgoFedFlowThruDirects', 'modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoFedFlowThruDirects'), this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadFedFlowThruIndirects: Ember.computed('model.projection.successesFourYearsAgoFedFlowThruIndirects', 'modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoFedFlowThruIndirects'), this.modifiedFedFlowThruThreeYearsAgoIndirects, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadNonFedDirects: Ember.computed('model.projection.{successesFourYearsAgoNonFedDirects,successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNonFedDirects'), this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadNonFedIndirects: Ember.computed('model.projection.{successesFourYearsAgoNonFedIndirects,successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNonFedIndirects'), this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadSponsor5Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor5Directs,successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor5Directs'), this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadSponsor5Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor5Indirects,successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor5Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadSponsor6Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor6Directs,successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor6Directs'), this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadSponsor6Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor6Indirects,successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor6Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadSponsor7Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor7Directs,successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor7Directs'), this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.year.fiscalYearOneYearAhead, true);\n    }),\n    revisedReducedOneYearAheadSponsor7Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor7Indirects,successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor7Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.year.fiscalYearOneYearAhead, false);\n    }),\n    revisedReducedOneYearAheadDirects: Ember.computed('revisedReducedOneYearAheadNihDirects', 'revisedReducedOneYearAheadOtherFedDirects', 'revisedReducedOneYearAheadFedFlowThruDirects', 'revisedReducedOneYearAheadNonFedDirects', 'revisedReducedOneYearAheadSponsor5Directs', 'revisedReducedOneYearAheadSponsor6Directs', 'revisedReducedOneYearAheadSponsor7Directs', 'model.projection.megaGrantTotalsOneYearAheadDirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureOneYearAheadDirects', 'selectedSponsor', 'recoveryCoreOneYearAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsOneYearAheadNihDirects, model.megaGrantTotalsOneYearAheadFedFlowThruDirects, model.megaGrantTotalsOneYearAheadOtherFedDirects, model.megaGrantTotalsOneYearAheadNonFedDirects, model.megaGrantTotalsOneYearAheadSponsor5Directs, model.megaGrantTotalsOneYearAheadSponsor6Directs, model.megaGrantTotalsOneYearAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(1, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearOneYearAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedOneYearAheadNihDirects, this.revisedReducedOneYearAheadFedFlowThruDirects, this.revisedReducedOneYearAheadOtherFedDirects, this.revisedReducedOneYearAheadNonFedDirects, this.revisedReducedOneYearAheadSponsor5Directs, this.revisedReducedOneYearAheadSponsor6Directs, this.revisedReducedOneYearAheadSponsor7Directs) + this.recoveryCoreOneYearAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedOneYearAheadIndirects: Ember.computed('revisedReducedOneYearAheadNihIndirects', 'revisedReducedOneYearAheadOtherFedIndirects', 'revisedReducedOneYearAheadFedFlowThruIndirects', 'revisedReducedOneYearAheadNonFedIndirects', 'revisedReducedOneYearAheadSponsor5Indirects', 'revisedReducedOneYearAheadSponsor6Indirects', 'revisedReducedOneYearAheadSponsor7Indirects', 'model.projection.megaGrantTotalsOneYearAheadIndirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureOneYearAheadDirects', 'selectedSponsor', 'recoveryCoreOneYearAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsOneYearAheadNihIndirects, model.megaGrantTotalsOneYearAheadFedFlowThruIndirects, model.megaGrantTotalsOneYearAheadOtherFedIndirects, model.megaGrantTotalsOneYearAheadNonFedIndirects, model.megaGrantTotalsOneYearAheadSponsor5Indirects, model.megaGrantTotalsOneYearAheadSponsor6Indirects, model.megaGrantTotalsOneYearAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(1, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearOneYearAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedOneYearAheadNihIndirects, this.revisedReducedOneYearAheadFedFlowThruIndirects, this.revisedReducedOneYearAheadOtherFedIndirects, this.revisedReducedOneYearAheadNonFedIndirects, this.revisedReducedOneYearAheadSponsor5Indirects, this.revisedReducedOneYearAheadSponsor6Indirects, this.revisedReducedOneYearAheadSponsor7Indirects) + this.recoveryCoreOneYearAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Two Years Ahead\n    revisedReducedTwoYearsAheadNihDirects: Ember.computed('model.projection.{successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadNihIndirects: Ember.computed('model.projection.{successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.modifiedFedFlowThruThreeYearsAgoIndirects'), this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadOtherFedDirects: Ember.computed('model.projection.{successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadOtherFedIndirects: Ember.computed('model.projection.{successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadNonFedDirects: Ember.computed('model.projection.{successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadNonFedIndirects: Ember.computed('model.projection.{successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadSponsor5Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadSponsor5Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadSponsor6Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadSponsor6Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadSponsor7Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.year.fiscalYearTwoYearsAhead, true);\n    }),\n    revisedReducedTwoYearsAheadSponsor7Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.year.fiscalYearTwoYearsAhead, false);\n    }),\n    revisedReducedTwoYearsAheadDirects: Ember.computed('revisedReducedTwoYearsAheadNihDirects', 'revisedReducedTwoYearsAheadOtherFedDirects', 'revisedReducedTwoYearsAheadFedFlowThruDirects', 'revisedReducedTwoYearsAheadNonFedDirects', 'revisedReducedTwoYearsAheadSponsor5Directs', 'revisedReducedTwoYearsAheadSponsor6Directs', 'revisedReducedTwoYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsTwoYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', 'recoveryCoreTwoYearsAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsTwoYearsAheadNihDirects, model.megaGrantTotalsTwoYearsAheadFedFlowThruDirects, model.megaGrantTotalsTwoYearsAheadOtherFedDirects, model.megaGrantTotalsTwoYearsAheadNonFedDirects, model.megaGrantTotalsTwoYearsAheadSponsor5Directs, model.megaGrantTotalsTwoYearsAheadSponsor6Directs, model.megaGrantTotalsTwoYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(2, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearTwoYearsAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedTwoYearsAheadNihDirects, this.revisedReducedTwoYearsAheadFedFlowThruDirects, this.revisedReducedTwoYearsAheadOtherFedDirects, this.revisedReducedTwoYearsAheadNonFedDirects, this.revisedReducedTwoYearsAheadSponsor5Directs, this.revisedReducedTwoYearsAheadSponsor6Directs, this.revisedReducedTwoYearsAheadSponsor7Directs) + this.recoveryCoreTwoYearsAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedTwoYearsAheadIndirects: Ember.computed('revisedReducedTwoYearsAheadNihIndirects', 'revisedReducedTwoYearsAheadOtherFedIndirects', 'revisedReducedTwoYearsAheadFedFlowThruIndirects', 'revisedReducedTwoYearsAheadNonFedIndirects', 'revisedReducedTwoYearsAheadSponsor5Indirects', 'revisedReducedTwoYearsAheadSponsor6Indirects', 'revisedReducedTwoYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsTwoYearsAheadIndirects', '' + 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', 'recoveryCoreTwoYearsAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsTwoYearsAheadNihIndirects, model.megaGrantTotalsTwoYearsAheadFedFlowThruIndirects, model.megaGrantTotalsTwoYearsAheadOtherFedIndirects, model.megaGrantTotalsTwoYearsAheadNonFedIndirects, model.megaGrantTotalsTwoYearsAheadSponsor5Indirects, model.megaGrantTotalsTwoYearsAheadSponsor6Indirects, model.megaGrantTotalsTwoYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(2, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearTwoYearsAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedTwoYearsAheadNihIndirects, this.revisedReducedTwoYearsAheadFedFlowThruIndirects, this.revisedReducedTwoYearsAheadOtherFedIndirects, this.revisedReducedTwoYearsAheadNonFedIndirects, this.revisedReducedTwoYearsAheadSponsor5Indirects, this.revisedReducedTwoYearsAheadSponsor6Indirects, this.revisedReducedTwoYearsAheadSponsor7Indirects) + this.recoveryCoreTwoYearsAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Three Years Ahead\n    revisedReducedThreeYearsAheadNihDirects: Ember.computed('model.projection.{successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadNihIndirects: Ember.computed('model.projection.{successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadOtherFedDirects: Ember.computed('model.projection.{successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadOtherFedIndirects: Ember.computed('model.projection.{successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadNonFedDirects: Ember.computed('model.projection.{successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadNonFedIndirects: Ember.computed('model.projection.{successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadSponsor5Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadSponsor5Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadSponsor6Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadSponsor6Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadSponsor7Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.year.fiscalYearThreeYearsAhead, true);\n    }),\n    revisedReducedThreeYearsAheadSponsor7Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.year.fiscalYearThreeYearsAhead, false);\n    }),\n    revisedReducedThreeYearsAheadDirects: Ember.computed('revisedReducedThreeYearsAheadNihDirects', 'revisedReducedThreeYearsAheadOtherFedDirects', 'revisedReducedThreeYearsAheadFedFlowThruDirects', 'revisedReducedThreeYearsAheadNonFedDirects', 'revisedReducedThreeYearsAheadSponsor5Directs', 'revisedReducedThreeYearsAheadSponsor6Directs', 'revisedReducedThreeYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsThreeYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', 'recoveryCoreThreeYearsAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsThreeYearsAheadNihDirects, model.megaGrantTotalsThreeYearsAheadFedFlowThruDirects, model.megaGrantTotalsThreeYearsAheadOtherFedDirects, model.megaGrantTotalsThreeYearsAheadNonFedDirects, model.megaGrantTotalsThreeYearsAheadSponsor5Directs, model.megaGrantTotalsThreeYearsAheadSponsor6Directs, model.megaGrantTotalsThreeYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(3, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearThreeYearsAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedThreeYearsAheadNihDirects, this.revisedReducedThreeYearsAheadFedFlowThruDirects, this.revisedReducedThreeYearsAheadOtherFedDirects, this.revisedReducedThreeYearsAheadNonFedDirects, this.revisedReducedThreeYearsAheadSponsor5Directs, this.revisedReducedThreeYearsAheadSponsor6Directs, this.revisedReducedThreeYearsAheadSponsor7Directs) + this.recoveryCoreThreeYearsAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedThreeYearsAheadIndirects: Ember.computed('revisedThreeYearsAheadNihIndirects', 'revisedThreeYearsAheadOtherFedIndirects', 'revisedThreeYearsAheadFedFlowThruIndirects', 'revisedThreeYearsAheadNonFedIndirects', 'revisedThreeYearsAheadSponsor5Indirects', 'revisedThreeYearsAheadSponsor6Indirects', 'revisedThreeYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsThreeYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', 'recoveryCoreThreeYearsAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsThreeYearsAheadNihIndirects, model.megaGrantTotalsThreeYearsAheadFedFlowThruIndirects, model.megaGrantTotalsThreeYearsAheadOtherFedIndirects, model.megaGrantTotalsThreeYearsAheadNonFedIndirects, model.megaGrantTotalsThreeYearsAheadSponsor5Indirects, model.megaGrantTotalsThreeYearsAheadSponsor6Indirects, model.megaGrantTotalsThreeYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(3, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearThreeYearsAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedThreeYearsAheadNihIndirects, this.revisedReducedThreeYearsAheadFedFlowThruIndirects, this.revisedReducedThreeYearsAheadOtherFedIndirects, this.revisedReducedThreeYearsAheadNonFedIndirects, this.revisedReducedThreeYearsAheadSponsor5Indirects, this.revisedReducedThreeYearsAheadSponsor6Indirects, this.revisedReducedThreeYearsAheadSponsor7Indirects) + this.recoveryCoreThreeYearsAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Four Years Ahead\n    revisedReducedFourYearsAheadNihDirects: Ember.computed('model.projection.successesOneYearAgoNihDirects', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadNihIndirects: Ember.computed('model.projection.successesOneYearAgoNihIndirects', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadOtherFedDirects: Ember.computed('model.projection.successesOneYearAgoOtherFedDirects', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadOtherFedIndirects: Ember.computed('model.projection.successesOneYearAgoOtherFedIndirects', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadNonFedDirects: Ember.computed('model.projection.successesOneYearAgoNonFedDirects', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadNonFedIndirects: Ember.computed('model.projection.successesOneYearAgoNonFedIndirects', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadSponsor5Directs: Ember.computed('model.projection.successesOneYearAgoSponsor5Directs', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadSponsor5Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor5Indirects', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadSponsor6Directs: Ember.computed('model.projection.successesOneYearAgoSponsor6Directs', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadSponsor6Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor6Indirects', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadSponsor7Directs: Ember.computed('model.projection.successesOneYearAgoSponsor7Directs', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs, this.year.fiscalYearFourYearsAhead, true);\n    }),\n    revisedReducedFourYearsAheadSponsor7Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor7Indirects', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects, this.year.fiscalYearFourYearsAhead, false);\n    }),\n    revisedReducedFourYearsAheadDirects: Ember.computed('revisedReducedFourYearsAheadNihDirects', 'revisedReducedFourYearsAheadOtherFedDirects', 'revisedReducedFourYearsAheadFedFlowThruDirects', 'revisedReducedFourYearsAheadNonFedDirects', 'revisedReducedFourYearsAheadSponsor5Directs', 'revisedReducedFourYearsAheadSponsor6Directs', 'revisedReducedFourYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFourYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', 'recoveryCoreFourYearsAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.model.projection.megaGrantTotalsFourYearsAheadNihDirects, this.model.projection.megaGrantTotalsFourYearsAheadFedFlowThruDirects, this.model.projection.megaGrantTotalsFourYearsAheadOtherFedDirects, this.model.projection.megaGrantTotalsFourYearsAheadNonFedDirects, this.model.projection.megaGrantTotalsFourYearsAheadSponsor5Directs, this.model.projection.megaGrantTotalsFourYearsAheadSponsor6Directs, this.model.projection.megaGrantTotalsFourYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(4, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearFourYearsAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedFourYearsAheadNihDirects, this.revisedReducedFourYearsAheadFedFlowThruDirects, this.revisedReducedFourYearsAheadOtherFedDirects, this.revisedReducedFourYearsAheadNonFedDirects, this.revisedReducedFourYearsAheadSponsor5Directs, this.revisedReducedFourYearsAheadSponsor6Directs, this.revisedReducedFourYearsAheadSponsor7Directs) + this.recoveryCoreFourYearsAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedFourYearsAheadIndirects: Ember.computed('revisedReducedFourYearsAheadNihIndirects', 'revisedReducedFourYearsAheadOtherFedIndirects', 'revisedReducedFourYearsAheadFedFlowThruIndirects', 'revisedReducedFourYearsAheadNonFedIndirects', 'revisedReducedFourYearsAheadSponsor5Indirects', 'revisedReducedFourYearsAheadSponsor6Indirects', 'revisedReducedFourYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFourYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', 'recoveryCoreFourYearsAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFourYearsAheadNihIndirects, model.megaGrantTotalsFourYearsAheadFedFlowThruIndirects, model.megaGrantTotalsFourYearsAheadOtherFedIndirects, model.megaGrantTotalsFourYearsAheadNonFedIndirects, model.megaGrantTotalsFourYearsAheadSponsor5Indirects, model.megaGrantTotalsFourYearsAheadSponsor6Indirects, model.megaGrantTotalsFourYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(4, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearFourYearsAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedFourYearsAheadNihIndirects, this.revisedReducedFourYearsAheadFedFlowThruIndirects, this.revisedReducedFourYearsAheadOtherFedIndirects, this.revisedReducedFourYearsAheadNonFedIndirects, this.revisedReducedFourYearsAheadSponsor5Indirects, this.revisedReducedFourYearsAheadSponsor6Indirects, this.revisedReducedFourYearsAheadSponsor7Indirects) + this.recoveryCoreFourYearsAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //region Revised Five Years Ahead\n    revisedReducedFiveYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', 'projectedCoreSuccessesFiveYearsAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', 'projectedCoreSuccessesFiveYearsAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'projectedCoreSuccessesFiveYearsAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'projectedCoreSuccessesFiveYearsAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs, this.year.fiscalYearFiveYearsAhead, true);\n    }),\n    revisedReducedFiveYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects, this.year.fiscalYearFiveYearsAhead, false);\n    }),\n    revisedReducedFiveYearsAheadDirects: Ember.computed('revisedReducedFiveYearsAheadNihDirects', 'revisedReducedFiveYearsAheadOtherFedDirects', 'revisedReducedFiveYearsAheadFedFlowThruDirects', 'revisedReducedFiveYearsAheadNonFedDirects', 'revisedReducedFiveYearsAheadSponsor5Directs', 'revisedReducedFiveYearsAheadSponsor6Directs', 'revisedReducedFiveYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', 'recoveryCoreFiveYearsAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.model.projection.megaGrantTotalsFiveYearsAheadNihDirects, this.model.projection.megaGrantTotalsFiveYearsAheadFedFlowThruDirects, this.model.projection.megaGrantTotalsFiveYearsAheadOtherFedDirects, this.model.projection.megaGrantTotalsFiveYearsAheadNonFedDirects, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor5Directs, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor6Directs, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(5, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearFiveYearsAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedFiveYearsAheadNihDirects, this.revisedReducedFiveYearsAheadFedFlowThruDirects, this.revisedReducedFiveYearsAheadOtherFedDirects, this.revisedReducedFiveYearsAheadNonFedDirects, this.revisedReducedFiveYearsAheadSponsor5Directs, this.revisedReducedFiveYearsAheadSponsor6Directs, this.revisedReducedFiveYearsAheadSponsor7Directs) + this.recoveryCoreFiveYearsAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedReducedFiveYearsAheadIndirects: Ember.computed('revisedReducedFiveYearsAheadNihIndirects', 'revisedReducedFiveYearsAheadOtherFedIndirects', 'revisedReducedFiveYearsAheadFedFlowThruIndirects', 'revisedReducedFiveYearsAheadNonFedIndirects', 'revisedReducedFiveYearsAheadSponsor5Indirects', 'revisedReducedFiveYearsAheadSponsor6Indirects', 'revisedReducedFiveYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', 'recoveryCoreFiveYearsAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFiveYearsAheadNihIndirects, model.megaGrantTotalsFiveYearsAheadFedFlowThruIndirects, model.megaGrantTotalsFiveYearsAheadOtherFedIndirects, model.megaGrantTotalsFiveYearsAheadNonFedIndirects, model.megaGrantTotalsFiveYearsAheadSponsor5Indirects, model.megaGrantTotalsFiveYearsAheadSponsor6Indirects, model.megaGrantTotalsFiveYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(5, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearFiveYearsAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedFiveYearsAheadNihIndirects, this.revisedReducedFiveYearsAheadFedFlowThruIndirects, this.revisedReducedFiveYearsAheadOtherFedIndirects, this.revisedReducedFiveYearsAheadNonFedIndirects, this.revisedReducedFiveYearsAheadSponsor5Indirects, this.revisedReducedFiveYearsAheadSponsor6Indirects, this.revisedReducedFiveYearsAheadSponsor7Indirects) + this.recoveryCoreFiveYearsAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Six Years Ahead\n    revisedReducedSixYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', 'projectedCoreSuccessesFiveYearsAheadNihDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects);\n    }),\n    revisedReducedSixYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', 'projectedCoreSuccessesFiveYearsAheadNihIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects);\n    }),\n    revisedReducedSixYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects);\n    }),\n    revisedReducedSixYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects);\n    }),\n    revisedReducedSixYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects);\n    }),\n    revisedReducedSixYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects);\n    }),\n    revisedReducedSixYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'projectedCoreSuccessesFiveYearsAheadNonFedDirects', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects);\n    }),\n    revisedReducedSixYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'projectedCoreSuccessesFiveYearsAheadNonFedIndirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects);\n    }),\n    revisedReducedSixYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor5Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs);\n    }),\n    revisedReducedSixYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor5Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects);\n    }),\n    revisedReducedSixYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor6Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs);\n    }),\n    revisedReducedSixYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor6Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects);\n    }),\n    revisedReducedSixYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor7Directs', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs);\n    }),\n    revisedReducedSixYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor7Indirects', 'phase1ReductionsIndirects', 'phase2ReductionsIndirects', 'phase3ReductionsIndirects', 'phaseRanges', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.reductionProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects);\n    }),\n    revisedReducedSixYearsAheadDirects: Ember.computed('revisedReducedSixYearsAheadNihDirects', 'revisedReducedSixYearsAheadOtherFedDirects', 'revisedReducedSixYearsAheadFedFlowThruDirects', 'revisedReducedSixYearsAheadNonFedDirects', 'revisedReducedSixYearsAheadSponsor5Directs', 'revisedReducedSixYearsAheadSponsor6Directs', 'revisedReducedSixYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', 'recoveryCoreSixYearsAheadDirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFiveYearsAheadNihDirects, model.megaGrantTotalsFiveYearsAheadFedFlowThruDirects, model.megaGrantTotalsFiveYearsAheadOtherFedDirects, model.megaGrantTotalsFiveYearsAheadNonFedDirects, model.megaGrantTotalsFiveYearsAheadSponsor5Directs, model.megaGrantTotalsFiveYearsAheadSponsor6Directs, model.megaGrantTotalsFiveYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(6, true, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearSixYearsAhead, true);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedSixYearsAheadNihDirects, this.revisedReducedSixYearsAheadFedFlowThruDirects, this.revisedReducedSixYearsAheadOtherFedDirects, this.revisedReducedSixYearsAheadNonFedDirects, this.revisedReducedSixYearsAheadSponsor5Directs, this.revisedReducedSixYearsAheadSponsor6Directs, this.revisedReducedSixYearsAheadSponsor7Directs) + this.recoveryCoreSixYearsAheadDirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    // eslint-disable-next-line ember/use-brace-expansion\n    revisedReducedSixYearsAheadIndirects: Ember.computed('revisedReducedSixYearsAheadNihIndirects', 'revisedReducedSixYearsAheadOtherFedIndirects', 'revisedReducedSixYearsAheadFedFlowThruIndirects', 'revisedReducedSixYearsAheadNonFedIndirects', 'revisedReducedSixYearsAheadSponsor5Indirects', 'revisedReducedSixYearsAheadSponsor6Indirects', 'revisedReducedSixYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFiveYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'model.projection', 'selectedSponsor', 'recoveryCoreSixYearsAheadIndirects', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFiveYearsAheadNihIndirects, model.megaGrantTotalsFiveYearsAheadFedFlowThruIndirects, model.megaGrantTotalsFiveYearsAheadOtherFedIndirects, model.megaGrantTotalsFiveYearsAheadNonFedIndirects, model.megaGrantTotalsFiveYearsAheadSponsor5Indirects, model.megaGrantTotalsFiveYearsAheadSponsor6Indirects, model.megaGrantTotalsFiveYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(6, false, this.get('currentUser.team'));\n      }\n\n      mega = this.reductionMegaProjectedSpending(mega, this.year.fiscalYearSixYearsAhead, false);\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedReducedSixYearsAheadNihIndirects, this.revisedReducedSixYearsAheadFedFlowThruIndirects, this.revisedReducedSixYearsAheadOtherFedIndirects, this.revisedReducedSixYearsAheadNonFedIndirects, this.revisedReducedSixYearsAheadSponsor5Indirects, this.revisedReducedSixYearsAheadSponsor6Indirects, this.revisedReducedSixYearsAheadSponsor7Indirects) + this.recoveryCoreSixYearsAheadIndirects;\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Recovery\n    recoveryCoreCurrentYearDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(0, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(0, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(0, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(0, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(0, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(0, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(0, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreCurrentYearIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(0, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(0, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(0, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(0, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(0, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(0, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(0, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreOneYearAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(1, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(1, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(1, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(1, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(1, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(1, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(1, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreOneYearAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(1, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(1, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(1, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(1, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(1, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(1, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(1, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreTwoYearsAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(2, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(2, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(2, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(2, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(2, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(2, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(2, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreTwoYearsAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(2, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(2, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(2, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(2, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(2, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(2, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(2, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n      s;\n    }),\n    recoveryCoreThreeYearsAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(3, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(3, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(3, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(3, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(3, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(3, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(3, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreThreeYearsAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(3, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(3, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(3, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(3, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(3, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(3, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(3, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreFourYearsAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(4, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(4, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(4, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(4, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(4, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(4, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(4, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n      s;\n    }),\n    recoveryCoreFourYearsAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(4, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(4, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(4, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(4, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(4, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(4, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(4, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreFiveYearsAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(5, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(5, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(5, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(5, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(5, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(5, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(5, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreFiveYearsAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(5, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(5, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(5, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(5, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(5, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(5, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(5, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreSixYearsAheadDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsDirects', 'phase1RecoveryDirects', 'phase2ReductionsDirects', 'phase2RecoveryDirects', 'phaseRanges', 'phase3ReductionsDirects', 'phase3RecoveryDirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(6, nihWad, this.currentUser.sponsorTypeNih, true).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(6, fftWad, this.currentUser.sponsorTypeFFT, true).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(6, otherFedWad, this.currentUser.sponsorTypeOtherFed, true).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(6, nonFedwad, this.currentUser.sponsorTypeNonFed, true).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(6, sponsor5wad, this.currentUser.sponsorTypeSponsor5, true).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(6, sponsor6wad, this.currentUser.sponsorTypeSponsor6, true).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(6, sponsor7wad, this.currentUser.sponsorTypeSponsor7, true).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    recoveryCoreSixYearsAheadIndirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phase1ReductionsIndirects', 'phase1RecoveryIndirects', 'phase2ReductionsIndirects', 'phase2RecoveryIndirects', 'phaseRanges', 'phase3ReductionsIndirects', 'phase3RecoveryIndirects', 'model.projection', function () {\n      var nihWad = this.get('currentUser.team.weightedAverageDurationNih');\n      var fftWad = this.get('currentUser.team.weightedAverageDurationFft');\n      var otherFedWad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      var nonFedwad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      var sponsor5wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      var sponsor6wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      var sponsor7wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      var nihRecovery = this.reductionRecoveryForGrantPool(6, nihWad, this.currentUser.sponsorTypeNih, false).recoveryAmount;\n      var fftRecovery = this.reductionRecoveryForGrantPool(6, fftWad, this.currentUser.sponsorTypeFFT, false).recoveryAmount;\n      var otherFedRecovery = this.reductionRecoveryForGrantPool(6, otherFedWad, this.currentUser.sponsorTypeOtherFed, false).recoveryAmount;\n      var nonFedRecovery = this.reductionRecoveryForGrantPool(6, nonFedwad, this.currentUser.sponsorTypeNonFed, false).recoveryAmount;\n      var sponsor5Recovery = this.reductionRecoveryForGrantPool(6, sponsor5wad, this.currentUser.sponsorTypeSponsor5, false).recoveryAmount;\n      var sponsor6Recovery = this.reductionRecoveryForGrantPool(6, sponsor6wad, this.currentUser.sponsorTypeSponsor6, false).recoveryAmount;\n      var sponsor7Recovery = this.reductionRecoveryForGrantPool(6, sponsor7wad, this.currentUser.sponsorTypeSponsor7, false).recoveryAmount;\n      return nihRecovery + fftRecovery + otherFedRecovery + nonFedRecovery + sponsor5Recovery + sponsor6Recovery + sponsor7Recovery;\n    }),\n    reductionRecoveryForGrantPool: function reductionRecoveryForGrantPool(currentYearOffset, wad, sponsorType, isDirects) {\n      var _this = this;\n\n      // Figure out which year to look at based on the current year.\n      // ie if we are in the current year (currentYearOffset = 0) and the wad is 4, we should be looking at 2016 successes\n      // The recovery should be placed the year after the grant ends\n      var offset = currentYearOffset - wad;\n      var yearPart;\n\n      switch (offset - 1) {\n        case -5:\n          yearPart = 'FiveYearsAgo';\n          break;\n\n        case -4:\n          yearPart = 'FourYearsAgo';\n          break;\n\n        case -3:\n          yearPart = 'ThreeYearsAgo';\n          break;\n\n        case -2:\n          yearPart = 'TwoYearsAgo';\n          break;\n\n        case -1:\n          yearPart = 'OneYearAgo';\n          break;\n\n        case 0:\n          yearPart = 'CurrentYear';\n          break;\n\n        case 1:\n          yearPart = 'OneYearAhead';\n          break;\n\n        case 2:\n          yearPart = 'TwoYearsAhead';\n          break;\n\n        case 3:\n          yearPart = 'ThreeYearsAhead';\n          break;\n\n        case 4:\n          yearPart = 'FourYearsAhead';\n          break;\n\n        case 5:\n          yearPart = 'FiveYearsAhead';\n          break;\n\n        default:\n          return {\n            recoveryAmount: 0,\n            reductionAmount: 0\n          };\n      }\n\n      var sponsorPart;\n\n      switch (sponsorType) {\n        case this.currentUser.sponsorTypeNih:\n          sponsorPart = 'Nih';\n          break;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          sponsorPart = 'OtherFed';\n          break;\n\n        case this.currentUser.sponsorTypeFFT:\n          sponsorPart = 'FedFlowThru';\n          break;\n\n        case this.currentUser.sponsorTypeNonFed:\n          sponsorPart = 'NonFed';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          sponsorPart = 'Sponsor5';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          sponsorPart = 'Sponsor6';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          sponsorPart = 'Sponsor7';\n          break;\n      }\n\n      var directsPart = isDirects ? 'Directs' : 'Indirects';\n      var prefix = offset > 0 ? 'projectedCoreSuccesses' : 'model.projection.successes'; // Retrieve the correct successes pool\n\n      var successes = this.get(\"\".concat(prefix).concat(yearPart).concat(sponsorPart).concat(directsPart)); // Determine grant range: (grants are ammortized for half years start and end)\n\n      var fiscalStartMonth = this.year.fiscalStartMonth;\n      var grantStartYear = offset + this.year.fiscalYear;\n      var grantEndYear = grantStartYear + wad;\n      var grantStart = moment([fiscalStartMonth - 6 < 1 ? grantStartYear - 1 : grantStartYear, (fiscalStartMonth - 6 < 1 ? 12 - fiscalStartMonth : fiscalStartMonth - 6) - 1]).startOf('month');\n      var grantEnd = moment([fiscalStartMonth + 5 > 12 ? grantEndYear : grantEndYear - 1, (fiscalStartMonth + 5 > 12 ? fiscalStartMonth + 5 - 12 : fiscalStartMonth + 5) - 1]).endOf('month');\n      var grantRange = moment.range(grantStart, grantEnd); // Determine if the set phase intersects when the grant is in place\n\n      var phaseRanges = this.phaseRanges;\n      var phaseReductions = [1, 2, 3].map(function (i) {\n        return (isDirects ? _this.get(\"phase\".concat(i, \"ReductionsDirects\")) : _this.get(\"phase\".concat(i, \"ReductionsIndirects\"))) / 100;\n      });\n      var phaseRecoveries = [1, 2, 3].map(function (i) {\n        return (isDirects ? _this.get(\"phase\".concat(i, \"RecoveryDirects\")) : _this.get(\"phase\".concat(i, \"RecoveryIndirects\"))) / 100;\n      });\n      var recoveryAmount = 0;\n      var reductionAmount = 0;\n\n      for (var i = 0; i < 3; i++) {\n        var overlap = grantRange.intersect(phaseRanges[i]);\n        var monthsOfReduction = 0;\n\n        if (overlap) {\n          monthsOfReduction = overlap.diff('months');\n        }\n\n        var lengthOfGrant = Array.from(grantRange.by('month')).length; // Return the total amount the grant pool was reduced by\n\n        var reduction = successes * phaseReductions[i] * (monthsOfReduction / lengthOfGrant);\n        reductionAmount += reduction;\n        recoveryAmount += reduction * phaseRecoveries[i];\n      }\n\n      return {\n        recoveryAmount: recoveryAmount,\n        reductionAmount: reductionAmount\n      };\n    },\n    phaseRanges: Ember.computed('isPhase2Enabled', 'isPhase3Enabled', 'phase1Start', 'phase1End', 'phase2Start', 'phase2End', 'phase3Start', 'phase3End', function () {\n      var _this2 = this;\n\n      var ranges = [1, 2, 3].map(function (i) {\n        return moment.range(moment(_this2.get(\"phase\".concat(i, \"Start\")), 'MMM YYYY').startOf('month'), moment(_this2.get(\"phase\".concat(i, \"End\")), 'MMM YYYY').endOf('month'));\n      });\n\n      if (!this.isPhase2Enabled) {\n        ranges[1] = moment.range(moment([2010, 1]), moment([2010, 1]));\n      }\n\n      if (!this.isPhase3Enabled) {\n        ranges[2] = moment.range(moment([2010, 1]), moment([2010, 1]));\n      }\n\n      return ranges;\n    }),\n    //endregion\n    reductionProjectedSpending: function reductionProjectedSpending(wad, fiveYearsAgo, fourYearsAgo, threeYearsAgo, twoYearsAgo, oneYearAgo, current, currentYear, isDirects) {\n      var _this3 = this;\n\n      if (wad > 5) {\n        wad = 5;\n      }\n\n      var phaseRanges = this.phaseRanges;\n      var phaseReductions = [1, 2, 3].map(function (i) {\n        return (isDirects ? _this3.get(\"phase\".concat(i, \"ReductionsDirects\")) : _this3.get(\"phase\".concat(i, \"ReductionsIndirects\"))) / 100;\n      });\n\n      switch (wad) {\n        case 1:\n          return oneYearAgo / 2 * this.calculateReductionForGrantPoolYear(currentYear, true, false, wad, phaseRanges, phaseReductions) + current / 2 * this.calculateReductionForGrantPoolYear(currentYear, false, true, wad, phaseRanges, phaseReductions);\n\n        case 2:\n          return twoYearsAgo / 4 * this.calculateReductionForGrantPoolYear(currentYear, true, false, wad, phaseRanges, phaseReductions) + oneYearAgo / 2 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + current / 4 * this.calculateReductionForGrantPoolYear(currentYear, false, true, wad, phaseRanges, phaseReductions);\n\n        case 3:\n          return threeYearsAgo / 6 * this.calculateReductionForGrantPoolYear(currentYear, true, false, wad, phaseRanges, phaseReductions) + twoYearsAgo / 3 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + oneYearAgo / 3 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + current / 6 * this.calculateReductionForGrantPoolYear(currentYear, false, true, wad, phaseRanges, phaseReductions);\n\n        case 4:\n          return fourYearsAgo / 8 * this.calculateReductionForGrantPoolYear(currentYear, true, false, wad, phaseRanges, phaseReductions) + threeYearsAgo / 4 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + twoYearsAgo / 4 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + oneYearAgo / 4 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + current / 8 * this.calculateReductionForGrantPoolYear(currentYear, false, true, wad, phaseRanges, phaseReductions);\n\n        case 5:\n          return fiveYearsAgo / 10 * this.calculateReductionForGrantPoolYear(currentYear, true, false, wad, phaseRanges, phaseReductions) + fourYearsAgo / 5 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + threeYearsAgo / 5 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + twoYearsAgo / 5 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + oneYearAgo / 5 * this.calculateReductionForGrantPoolYear(currentYear, false, false, wad, phaseRanges, phaseReductions) + current / 10 * this.calculateReductionForGrantPoolYear(currentYear, false, true, wad, phaseRanges, phaseReductions);\n\n        default:\n          return 0;\n      }\n    },\n    getYearPart: function getYearPart(offset) {\n      var yearPart;\n\n      switch (offset) {\n        case -5:\n          yearPart = 'FiveYearsAgo';\n          break;\n\n        case -4:\n          yearPart = 'FourYearsAgo';\n          break;\n\n        case -3:\n          yearPart = 'ThreeYearsAgo';\n          break;\n\n        case -2:\n          yearPart = 'TwoYearsAgo';\n          break;\n\n        case -1:\n          yearPart = 'OneYearAgo';\n          break;\n\n        case 0:\n          yearPart = 'CurrentYear';\n          break;\n\n        case 1:\n          yearPart = 'OneYearAhead';\n          break;\n\n        case 2:\n          yearPart = 'TwoYearsAhead';\n          break;\n\n        case 3:\n          yearPart = 'ThreeYearsAhead';\n          break;\n\n        case 4:\n          yearPart = 'FourYearsAhead';\n          break;\n\n        case 5:\n          yearPart = 'FiveYearsAhead';\n          break;\n      }\n\n      return yearPart;\n    },\n    potentialBackstopCompensation: function potentialBackstopCompensation(currentYearOffset, wad, sponsorType) {\n      var _this4 = this;\n\n      // The potential backstop compensation should be placed the year after the grant ends.\n      var offset = currentYearOffset - wad;\n      var coreYearPart = this.getYearPart(offset - 1);\n      var coreSuccesses = 0;\n      var sponsorPart;\n\n      switch (sponsorType) {\n        case this.currentUser.sponsorTypeNih:\n          sponsorPart = 'Nih';\n          break;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          sponsorPart = 'OtherFed';\n          break;\n\n        case this.currentUser.sponsorTypeFFT:\n          sponsorPart = 'FedFlowThru';\n          break;\n\n        case this.currentUser.sponsorTypeNonFed:\n          sponsorPart = 'NonFed';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          sponsorPart = 'Sponsor5';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          sponsorPart = 'Sponsor6';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          sponsorPart = 'Sponsor7';\n          break;\n      }\n\n      var prefix = offset > 0 ? 'projectedCoreSuccesses' : 'model.projection.successes'; // Retrieve the correct successes pool\n\n      if (coreYearPart) {\n        coreSuccesses = this.get(\"\".concat(prefix).concat(coreYearPart).concat(sponsorPart, \"Directs\"));\n      }\n\n      var fiscalStartMonth = this.year.fiscalStartMonth;\n      var coreGrantStartYear = offset + this.year.fiscalYear;\n      var coreGrantEndYear = coreGrantStartYear + wad;\n      var coreGrantStart = moment([fiscalStartMonth - 6 < 1 ? coreGrantStartYear - 1 : coreGrantStartYear, (fiscalStartMonth - 6 < 1 ? 12 - fiscalStartMonth : fiscalStartMonth - 6) - 1]).startOf('month');\n      var coreGrantEnd = moment([fiscalStartMonth + 5 > 12 ? coreGrantEndYear : coreGrantEndYear - 1, (fiscalStartMonth + 5 > 12 ? fiscalStartMonth + 5 - 12 : fiscalStartMonth + 5) - 1]).endOf('month');\n      var coreGrantRange = moment.range(coreGrantStart, coreGrantEnd);\n      var megaSuccesses;\n      var year = this.year.fiscalYear + currentYearOffset;\n      var megaYearPart = this.getYearPart(currentYearOffset);\n\n      if (megaYearPart) {\n        megaSuccesses = this.get(\"model.projection.megaGrantTotals\".concat(megaYearPart).concat(sponsorPart, \"Directs\"));\n      }\n\n      if (!megaSuccesses) {\n        megaSuccesses = 0;\n      }\n\n      var potentialBackstop = 0;\n      var compensationReplacement = this.get(\"compensationReplacement\".concat(sponsorPart));\n      var currentYearStart = moment([year - 1, this.year.fiscalStartMonth - 1]).startOf('month');\n      var currentYearEnd = moment([year, (this.year.fiscalStartMonth - 1 === 0 ? 12 : this.year.fiscalStartMonth - 1) - 1]).endOf('month');\n      var currentYearRange = moment.range(currentYearStart, currentYearEnd);\n      var phaseRanges = this.phaseRanges;\n      var phaseDirectsReductions = [1, 2, 3].map(function (i) {\n        return _this4.get(\"phase\".concat(i, \"ReductionsDirects\")) / 100;\n      });\n\n      for (var i = 0; i <= 2; i++) {\n        var range = phaseRanges[i]; // The loss of directs reduces the amount of\n\n        var phaseDirectsReduction = 1 - phaseDirectsReductions[i];\n        var coreOverlap = coreGrantRange.intersect(range);\n        var coreMonthsOfReduction = 0;\n\n        if (coreOverlap) {\n          coreMonthsOfReduction = coreOverlap.diff('months');\n        }\n\n        potentialBackstop += coreMonthsOfReduction / (12 * wad) * compensationReplacement / 100 * coreSuccesses * phaseDirectsReduction;\n        var megaRange = phaseRanges[i]; //.add(moment.range(phaseRanges[i].end.subtract(1, 'month'), phaseRanges[i].end.add(1, 'year')));\n\n        var megaOverlap = currentYearRange.intersect(megaRange);\n        var megaMonthsOfReduction = 0;\n\n        if (megaOverlap) {\n          megaMonthsOfReduction = megaOverlap.diff('months');\n        }\n\n        potentialBackstop += megaMonthsOfReduction / 12 * compensationReplacement / 100 * megaSuccesses * phaseDirectsReduction;\n      }\n\n      return potentialBackstop;\n    },\n    reductionMegaProjectedSpending: function reductionMegaProjectedSpending(mega, year, isDirects) {\n      var currentYearStart = moment([year - 1, this.year.fiscalStartMonth - 1]).startOf('month');\n      var currentYearEnd = moment([year, (this.year.fiscalStartMonth - 1 === 0 ? 12 : this.year.fiscalStartMonth - 1) - 1]).endOf('month');\n      var currentYearRange = moment.range(currentYearStart, currentYearEnd);\n      var reductionFactor = 0;\n      var phaseRanges = this.phaseRanges;\n\n      for (var i = 1; i <= 3; i++) {\n        var range = phaseRanges[i - 1];\n        var overlap = currentYearRange.intersect(range);\n        var monthsOfReduction = 0;\n\n        if (overlap) {\n          monthsOfReduction = overlap.diff('months');\n        }\n\n        var phaseReduction = (isDirects ? this.get(\"phase\".concat(i, \"ReductionsDirects\")) : this.get(\"phase\".concat(i, \"ReductionsIndirects\"))) / 100;\n        reductionFactor += monthsOfReduction / 12 * phaseReduction;\n      }\n\n      return mega * (1 - reductionFactor);\n    },\n    calculateReductionForGrantPoolYear: function calculateReductionForGrantPoolYear(currentYear, inPlaceFirstHalfYear, inPlaceLastHalfYear, wad, phaseRanges, phaseReductions) {\n      var fiscalStartMonth = this.year.fiscalStartMonth; //Generate the range the grant pool is in place for the given year\n\n      var grantStart = moment([currentYear - 1, fiscalStartMonth - 1]).startOf('month');\n      var grantEnd = moment([currentYear, (fiscalStartMonth - 1 === 0 ? 12 : fiscalStartMonth - 1) - 1]).endOf('month');\n\n      if (inPlaceFirstHalfYear) {\n        grantStart = moment([currentYear - 1, fiscalStartMonth - 1]).startOf('month');\n        grantEnd = moment([fiscalStartMonth + 5 > 12 ? currentYear : currentYear - 1, (fiscalStartMonth + 5 > 12 ? fiscalStartMonth + 5 - 12 : fiscalStartMonth + 5) - 1]).endOf('month');\n      } else if (inPlaceLastHalfYear) {\n        grantStart = moment([fiscalStartMonth - 6 < 1 ? currentYear - 1 : currentYear, (fiscalStartMonth - 6 < 1 ? 12 - fiscalStartMonth : fiscalStartMonth - 6) - 1]).startOf('month');\n        grantEnd = moment([currentYear, (fiscalStartMonth - 1 === 0 ? 12 : fiscalStartMonth - 1) - 1]).endOf('month');\n      }\n\n      var grantRange = moment.range(grantStart, grantEnd);\n      var reductionFactor = 0; // Determine if the set phase intersects when the grant is in place\n\n      for (var i = 0; i < 3; i++) {\n        var overlap = grantRange.intersect(phaseRanges[i]);\n        var monthsOfReduction = 0;\n\n        if (overlap) {\n          monthsOfReduction = overlap.diff('months');\n        } // Return the factor to reduce the given pool by\n\n\n        reductionFactor += phaseReductions[i] * (monthsOfReduction / 12);\n      }\n\n      return 1 - reductionFactor;\n    },\n    tableModel: Ember.computed('revisedReducedCurrentFutureDirectsRow', 'revisedReducedCurrentFutureIndirectsRow', 'baselineCurrentFutureDirectsRow.ptsCurrentYear', 'baselineCurrentFutureIndirectsRow.ptsCurrentYear', 'varianceDirectsRow', 'varianceIndirectsRow', function () {\n      return [this.baselineCurrentFutureDirectsRow, this.baselineCurrentFutureIndirectsRow, this.revisedReducedCurrentFutureDirectsRow, this.revisedReducedCurrentFutureIndirectsRow, this.varianceCurrentFutureDirectsRow, this.varianceCurrentFutureIndirectsRow];\n    }),\n    projectedReducedBaselineData: Ember.computed('revisedReducedCurrentFutureDirectsRow', 'revisedReducedCurrentFutureIndirectsRow', 'baselineCurrentFutureDirectsRow', 'baselineCurrentFutureIndirectsRow', function () {\n      var revisedDirects = this.revisedReducedCurrentFutureDirectsRow;\n      var revisedIndirects = this.revisedCurrentFutureIndirectsRow;\n      var baselineDirects = this.baselineCurrentFutureDirectsRow;\n      var baselineIndirects = this.baselineCurrentFutureIndirectsRow;\n      return {\n        'revisedDirects': [revisedDirects.ptsCurrentYear.toFixed(1), revisedDirects.ptsOneYearAhead.toFixed(1), revisedDirects.ptsTwoYearsAhead.toFixed(1), revisedDirects.ptsThreeYearsAhead.toFixed(1), revisedDirects.ptsFourYearsAhead.toFixed(1), revisedDirects.ptsFiveYearsAhead.toFixed(1), revisedDirects.ptsSixYearsAhead.toFixed(1), revisedDirects.ptsSevenYearsAhead.toFixed(1)],\n        'revisedIndirects': [revisedIndirects.ptsCurrentYear.toFixed(1), revisedIndirects.ptsOneYearAhead.toFixed(1), revisedIndirects.ptsTwoYearsAhead.toFixed(1), revisedIndirects.ptsThreeYearsAhead.toFixed(1), revisedIndirects.ptsFourYearsAhead.toFixed(1), revisedIndirects.ptsFiveYearsAhead.toFixed(1), revisedIndirects.ptsSixYearsAhead.toFixed(1), revisedIndirects.ptsSevenYearsAhead.toFixed(1)],\n        'baselineDirects': [baselineDirects.ptsCurrentYear.toFixed(1), baselineDirects.ptsOneYearAhead.toFixed(1), baselineDirects.ptsTwoYearsAhead.toFixed(1), baselineDirects.ptsThreeYearsAhead.toFixed(1), baselineDirects.ptsFourYearsAhead.toFixed(1), baselineDirects.ptsFiveYearsAhead.toFixed(1), baselineDirects.ptsSixYearsAhead.toFixed(1), baselineDirects.ptsSevenYearsAhead.toFixed(1)],\n        'baselineIndirects': [baselineIndirects.ptsCurrentYear.toFixed(1), baselineIndirects.ptsOneYearAhead.toFixed(1), baselineIndirects.ptsTwoYearsAhead.toFixed(1), baselineIndirects.ptsThreeYearsAhead.toFixed(1), baselineIndirects.ptsFourYearsAhead.toFixed(1), baselineIndirects.ptsFiveYearsAhead.toFixed(1), baselineIndirects.ptsSixYearsAhead.toFixed(1), baselineIndirects.ptsSevenYearsAhead.toFixed(1)]\n      };\n    }),\n    projectedReducedBaselineChartData: Ember.computed('projectedReducedBaselineData', 'year.fiscalYear', function () {\n      var projectedPtsData = this.projectedReducedBaselineData;\n\n      if (!projectedPtsData) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n\n      for (var i = 0; i < 8; i++) {\n        years.push(fiscalYear + i);\n      }\n\n      return {\n        labels: years,\n        datasets: [{\n          label: 'Indirects - Baseline',\n          data: projectedPtsData['baselineIndirects'],\n          stack: \"Baseline\",\n          backgroundColor: '#F1BE48',\n          borderWidth: 0\n        }, {\n          label: 'Directs - Baseline',\n          data: projectedPtsData['baselineDirects'],\n          stack: \"Baseline\",\n          backgroundColor: '#71C5E8',\n          borderWidth: 0\n        }, {\n          label: 'Indirects - Revised',\n          data: projectedPtsData['revisedIndirects'],\n          stack: \"Revised\",\n          backgroundColor: '#CBA943',\n          borderWidth: 0\n        }, {\n          label: 'Directs - Revised',\n          data: projectedPtsData['revisedDirects'],\n          stack: \"Revised\",\n          backgroundColor: '#499BBF',\n          borderWidth: 0\n        }]\n      };\n    }),\n    baselineCurrentFutureDirectsRow: Ember.computed('revisedCurrentYearDirects', 'revisedOneYearAheadDirects', 'revisedTwoYearsAheadDirects', 'revisedThreeYearsAheadDirects', 'revisedFourYearsAheadDirects', 'revisedFiveYearsAheadDirects', 'revisedSixYearsAheadDirects', 'revisedSevenYearsAheadDirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentDirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var adjustmentDirects = 0;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentDirects = this.get('currentUser.team.schoolProjectionAdjustmentDirects') / 1000000;\n      }\n\n      var data = [this.revisedCurrentYearDirects * (1 - shrinkage) + adjustmentDirects, this.revisedOneYearAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedTwoYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedThreeYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedFourYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedFiveYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects];\n      var directs = this.addRecruitmentData(data, 'spending', 0, true);\n      return {\n        type: 'Baseline',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: directs[0],\n        ptsOneYearAhead: directs[1],\n        ptsTwoYearsAhead: directs[2],\n        ptsThreeYearsAhead: directs[3],\n        ptsFourYearsAhead: directs[4],\n        ptsFiveYearsAhead: directs[5],\n        ptsSixYearsAhead: directs[6],\n        ptsSevenYearsAhead: directs[7]\n      };\n    }),\n    baselineCurrentFutureIndirectsRow: Ember.computed('revisedCurrentYearIndirects', 'revisedOneYearAheadIndirects', 'revisedTwoYearsAheadIndirects', 'revisedThreeYearsAheadIndirects', 'revisedFourYearsAheadIndirects', 'revisedFiveYearsAheadIndirects', 'revisedSixYearsAheadIndirects', 'revisedSevenYearsAheadIndirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentIndirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var adjustmentIndirects = 0;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentIndirects = this.get('currentUser.team.schoolProjectionAdjustmentIndirects') / 1000000;\n      }\n\n      var data = [this.revisedCurrentYearIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedOneYearAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedTwoYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedThreeYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedFourYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedFiveYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects];\n      var indirects = this.addRecruitmentData(data, 'spending', 0, false);\n      return {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: indirects[0],\n        ptsOneYearAhead: indirects[1],\n        ptsTwoYearsAhead: indirects[2],\n        ptsThreeYearsAhead: indirects[3],\n        ptsFourYearsAhead: indirects[4],\n        ptsFiveYearsAhead: indirects[5],\n        ptsSixYearsAhead: indirects[6],\n        ptsSevenYearsAhead: indirects[7]\n      };\n    }),\n    revisedReducedCurrentFutureDirectsRow: Ember.computed('revisedReducedCurrentYearDirects', 'revisedReducedOneYearAheadDirects', 'revisedReducedTwoYearsAheadDirects', 'revisedReducedThreeYearsAheadDirects', 'revisedReducedFourYearsAheadDirects', 'revisedReducedFiveYearsAheadDirects', 'revisedReducedSixYearsAheadDirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentDirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var adjustmentDirects = 0;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentDirects = this.get('currentUser.team.schoolProjectionAdjustmentDirects') / 1000000;\n      }\n\n      var data = [this.revisedReducedCurrentYearDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedOneYearAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedTwoYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedThreeYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedFourYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedFiveYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects];\n      var directs = this.addRecruitmentData(data, 'spending', 0, true);\n      return {\n        type: 'Revised',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: directs[0],\n        ptsOneYearAhead: directs[1],\n        ptsTwoYearsAhead: directs[2],\n        ptsThreeYearsAhead: directs[3],\n        ptsFourYearsAhead: directs[4],\n        ptsFiveYearsAhead: directs[5],\n        ptsSixYearsAhead: directs[6],\n        ptsSevenYearsAhead: directs[7]\n      };\n    }),\n    revisedReducedCurrentFutureIndirectsRow: Ember.computed('revisedReducedCurrentYearIndirects', 'revisedReducedOneYearAheadIndirects', 'revisedReducedTwoYearsAheadIndirects', 'revisedReducedThreeYearsAheadIndirects', 'revisedReducedFourYearsAheadIndirects', 'revisedReducedFiveYearsAheadIndirects', 'revisedReducedSixYearsAheadIndirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentDirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var adjustmentDirects = 0;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentDirects = this.get('currentUser.team.schoolProjectionAdjustmentIndirects') / 1000000;\n      }\n\n      var data = [this.revisedReducedCurrentYearIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedOneYearAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedTwoYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedThreeYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedFourYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedFiveYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects, this.revisedReducedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentDirects];\n      var indirects = this.addRecruitmentData(data, 'spending', 0, true);\n      return {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: indirects[0],\n        ptsOneYearAhead: indirects[1],\n        ptsTwoYearsAhead: indirects[2],\n        ptsThreeYearsAhead: indirects[3],\n        ptsFourYearsAhead: indirects[4],\n        ptsFiveYearsAhead: indirects[5],\n        ptsSixYearsAhead: indirects[6],\n        ptsSevenYearsAhead: indirects[7]\n      };\n    }),\n    varianceCurrentFutureDirectsRow: Ember.computed('revisedReducedCurrentFutureDirectsRow', 'baselineCurrentFutureDirectsRow', function () {\n      var revisedDirectsRow = this.revisedReducedCurrentFutureDirectsRow;\n      var baselineDirectsRow = this.baselineCurrentFutureDirectsRow;\n\n      if (revisedDirectsRow && baselineDirectsRow) {\n        return {\n          type: 'Variance',\n          directsOrIndirects: 'Directs',\n          ptsCurrentYear: revisedDirectsRow.ptsCurrentYear - baselineDirectsRow.ptsCurrentYear,\n          ptsOneYearAhead: revisedDirectsRow.ptsOneYearAhead - baselineDirectsRow.ptsOneYearAhead,\n          ptsTwoYearsAhead: revisedDirectsRow.ptsTwoYearsAhead - baselineDirectsRow.ptsTwoYearsAhead,\n          ptsThreeYearsAhead: revisedDirectsRow.ptsThreeYearsAhead - baselineDirectsRow.ptsThreeYearsAhead,\n          ptsFourYearsAhead: revisedDirectsRow.ptsFourYearsAhead - baselineDirectsRow.ptsFourYearsAhead,\n          ptsFiveYearsAhead: revisedDirectsRow.ptsFiveYearsAhead - baselineDirectsRow.ptsFiveYearsAhead,\n          ptsSixYearsAhead: revisedDirectsRow.ptsSixYearsAhead - baselineDirectsRow.ptsSixYearsAhead,\n          ptsSevenYearsAhead: revisedDirectsRow.ptsSevenYearsAhead - baselineDirectsRow.ptsSevenYearsAhead\n        };\n      }\n\n      return {};\n    }),\n    varianceCurrentFutureIndirectsRow: Ember.computed('revisedReducedCurrentFutureIndirectsRow', 'baselineCurrentFutureIndirectsRow', function () {\n      var revisedIndirectsRow = this.revisedReducedCurrentFutureIndirectsRow;\n      var baselineIndirectsRow = this.baselineCurrentFutureIndirectsRow;\n\n      if (revisedIndirectsRow && baselineIndirectsRow) {\n        return {\n          type: '',\n          directsOrIndirects: 'Indirects',\n          ptsCurrentYear: revisedIndirectsRow.ptsCurrentYear - baselineIndirectsRow.ptsCurrentYear,\n          ptsOneYearAhead: revisedIndirectsRow.ptsOneYearAhead - baselineIndirectsRow.ptsOneYearAhead,\n          ptsTwoYearsAhead: revisedIndirectsRow.ptsTwoYearsAhead - baselineIndirectsRow.ptsTwoYearsAhead,\n          ptsThreeYearsAhead: revisedIndirectsRow.ptsThreeYearsAhead - baselineIndirectsRow.ptsThreeYearsAhead,\n          ptsFourYearsAhead: revisedIndirectsRow.ptsFourYearsAhead - baselineIndirectsRow.ptsFourYearsAhead,\n          ptsFiveYearsAhead: revisedIndirectsRow.ptsFiveYearsAhead - baselineIndirectsRow.ptsFiveYearsAhead,\n          ptsSixYearsAhead: revisedIndirectsRow.ptsSixYearsAhead - baselineIndirectsRow.ptsSixYearsAhead,\n          ptsSevenYearsAhead: revisedIndirectsRow.ptsSevenYearsAhead - baselineIndirectsRow.ptsSevenYearsAhead\n        };\n      }\n\n      return {};\n    }),\n    // Research Backstop\n    compensationReplacementCurrentYearNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNih', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementCurrentYearOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementOtherFed', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementCurrentYearFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementFedFlowThru', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementCurrentYearNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNonFed', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementCurrentYearSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor5', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementCurrentYearSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor6', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementCurrentYearSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor7', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(-1, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementCurrentYearDirects: Ember.computed('compensationReplacementCurrentYearNihDirects', 'compensationReplacementCurrentYearOtherFedDirects', 'compensationReplacementCurrentYearFedFlowThruDirects', 'compensationReplacementCurrentYearNonFedDirects', 'compensationReplacementCurrentYearSponsor5Directs', 'compensationReplacementCurrentYearSponsor6Directs', 'compensationReplacementCurrentYearSponsor7Directs', 'model.projection', function () {\n      // The effects don't start until FY 2021\n      if (this.year.fiscalYear <= 2020) {\n        return 0;\n      }\n\n      return this.compensationReplacementCurrentYearNihDirects + this.compensationReplacementCurrentYearOtherFedDirects + this.compensationReplacementCurrentYearFedFlowThruDirects + this.compensationReplacementCurrentYearNonFedDirects + this.compensationReplacementCurrentYearSponsor5Directs + this.compensationReplacementCurrentYearSponsor6Directs + this.compensationReplacementCurrentYearSponsor7Directs;\n    }),\n    compensationReplacementOneYearAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNih', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementOneYearAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementOtherFed', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementOneYearAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementFedFlowThru', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementOneYearAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNonFed', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementOneYearAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor5', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementOneYearAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor6', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementOneYearAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor7', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(0, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementOneYearAheadDirects: Ember.computed('compensationReplacementOneYearAheadNihDirects', 'compensationReplacementOneYearAheadOtherFedDirects', 'compensationReplacementOneYearAheadFedFlowThruDirects', 'compensationReplacementOneYearAheadNonFedDirects', 'compensationReplacementOneYearAheadSponsor5Directs', 'compensationReplacementOneYearAheadSponsor6Directs', 'compensationReplacementOneYearAheadSponsor7Directs', function () {\n      return this.compensationReplacementOneYearAheadNihDirects + this.compensationReplacementOneYearAheadOtherFedDirects + this.compensationReplacementOneYearAheadFedFlowThruDirects + this.compensationReplacementOneYearAheadNonFedDirects + this.compensationReplacementOneYearAheadSponsor5Directs + this.compensationReplacementOneYearAheadSponsor6Directs + this.compensationReplacementOneYearAheadSponsor7Directs;\n    }),\n    compensationReplacementTwoYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNih', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementTwoYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementOtherFed', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementTwoYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementFedFlowThru', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementTwoYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementNonFed', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementTwoYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor5', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementTwoYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor6', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementTwoYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'compensationReplacementSponsor7', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(1, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementTwoYearsAheadDirects: Ember.computed('compensationReplacementTwoYearsAheadNihDirects', 'compensationReplacementTwoYearsAheadOtherFedDirects', 'compensationReplacementTwoYearsAheadFedFlowThruDirects', 'compensationReplacementTwoYearsAheadNonFedDirects', 'compensationReplacementTwoYearsAheadSponsor5Directs', 'compensationReplacementTwoYearsAheadSponsor6Directs', 'compensationReplacementTwoYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementTwoYearsAheadNihDirects + this.compensationReplacementTwoYearsAheadOtherFedDirects + this.compensationReplacementTwoYearsAheadFedFlowThruDirects + this.compensationReplacementTwoYearsAheadNonFedDirects + this.compensationReplacementTwoYearsAheadSponsor5Directs + this.compensationReplacementTwoYearsAheadSponsor6Directs + this.compensationReplacementTwoYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementThreeYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNih', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementThreeYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'compensationReplacementOtherFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementThreeYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'compensationReplacementFedFlowThru', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementThreeYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNonFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementThreeYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor5', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementThreeYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor6', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementThreeYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor7', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(2, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementThreeYearsAheadDirects: Ember.computed('compensationReplacementThreeYearsAheadNihDirects', 'compensationReplacementThreeYearsAheadOtherFedDirects', 'compensationReplacementThreeYearsAheadFedFlowThruDirects', 'compensationReplacementThreeYearsAheadNonFedDirects', 'compensationReplacementThreeYearsAheadSponsor5Directs', 'compensationReplacementThreeYearsAheadSponsor6Directs', 'compensationReplacementThreeYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementThreeYearsAheadNihDirects + this.compensationReplacementThreeYearsAheadOtherFedDirects + this.compensationReplacementThreeYearsAheadFedFlowThruDirects + this.compensationReplacementThreeYearsAheadNonFedDirects + this.compensationReplacementThreeYearsAheadSponsor5Directs + this.compensationReplacementThreeYearsAheadSponsor6Directs + this.compensationReplacementThreeYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementFourYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNih', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementFourYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'compensationReplacementOtherFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementFourYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'compensationReplacementFedFlowThru', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementFourYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNonFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementFourYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor5', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementFourYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor6', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementFourYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor7', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(3, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementFourYearsAheadDirects: Ember.computed('compensationReplacementFourYearsAheadNihDirects', 'compensationReplacementThreeoYearsAheadOtherFedDirects', 'compensationReplacementFourYearsAheadFedFlowThruDirects', 'compensationReplacementFourYearsAheadNonFedDirects', 'compensationReplacementFourYearsAheadSponsor5Directs', 'compensationReplacementFourYearsAheadSponsor6Directs', 'compensationReplacementFourYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementFourYearsAheadNihDirects + this.compensationReplacementFourYearsAheadOtherFedDirects + this.compensationReplacementFourYearsAheadFedFlowThruDirects + this.compensationReplacementFourYearsAheadNonFedDirects + this.compensationReplacementFourYearsAheadSponsor5Directs + this.compensationReplacementFourYearsAheadSponsor6Directs + this.compensationReplacementFourYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementFiveYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNih', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementFiveYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'compensationReplacementOtherFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementFiveYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'compensationReplacementFedFlowThru', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementFiveYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNonFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementFiveYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor5', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementFiveYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor6', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementFiveYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor7', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(4, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementFiveYearsAheadDirects: Ember.computed('compensationReplacementFiveYearsAheadNihDirects', 'compensationReplacementFiveYearsAheadOtherFedDirects', 'compensationReplacementFiveYearsAheadFedFlowThruDirects', 'compensationReplacementFiveYearsAheadNonFedDirects', 'compensationReplacementFiveYearsAheadSponsor5Directs', 'compensationReplacementFiveYearsAheadSponsor6Directs', 'compensationReplacementFiveYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementFiveYearsAheadNihDirects + this.compensationReplacementFiveYearsAheadOtherFedDirects + this.compensationReplacementFiveYearsAheadFedFlowThruDirects + this.compensationReplacementFiveYearsAheadNonFedDirects + this.compensationReplacementFiveYearsAheadSponsor5Directs + this.compensationReplacementFiveYearsAheadSponsor6Directs + this.compensationReplacementFiveYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementSixYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNih', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementSixYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'compensationReplacementOtherFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementSixYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'compensationReplacementFedFlowThru', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementSixYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNonFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementSixYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor5', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementSixYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor6', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementSixYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor7', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(5, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementSixYearsAheadDirects: Ember.computed('compensationReplacementSixYearsAheadNihDirects', 'compensationReplacementSixYearsAheadOtherFedDirects', 'compensationReplacementSixYearsAheadFedFlowThruDirects', 'compensationReplacementSixYearsAheadNonFedDirects', 'compensationReplacementSixYearsAheadSponsor5Directs', 'compensationReplacementSixYearsAheadSponsor6Directs', 'compensationReplacementSixYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementSixYearsAheadNihDirects + this.compensationReplacementSixYearsAheadOtherFedDirects + this.compensationReplacementSixYearsAheadFedFlowThruDirects + this.compensationReplacementSixYearsAheadNonFedDirects + this.compensationReplacementSixYearsAheadSponsor5Directs + this.compensationReplacementSixYearsAheadSponsor6Directs + this.compensationReplacementSixYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementSevenYearsAheadNihDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNih', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeNih, true);\n    }),\n    compensationReplacementSevenYearsAheadOtherFedDirects: Ember.computed('currentUser.team.weightedAverageDurationOtherFed', 'phaseRanges', 'compensationReplacementOtherFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeOtherFed, true);\n    }),\n    compensationReplacementSevenYearsAheadFedFlowThruDirects: Ember.computed('currentUser.team.weightedAverageDurationFft', 'phaseRanges', 'compensationReplacementFedFlowThru', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeFFT, true);\n    }),\n    compensationReplacementSevenYearsAheadNonFedDirects: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementNonFed', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeNonFed, true);\n    }),\n    compensationReplacementSevenYearsAheadSponsor5Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor5', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeSponsor5, true);\n    }),\n    compensationReplacementSevenYearsAheadSponsor6Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor6', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeSponsor6, true);\n    }),\n    compensationReplacementSevenYearsAheadSponsor7Directs: Ember.computed('currentUser.team.weightedAverageDurationNih', 'phaseRanges', 'compensationReplacementSponsor7', 'phase1ReductionsDirects', 'phase2ReductionsDirects', 'phase3ReductionsDirects', 'model.projection', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.compensationReplacementDirects(6, wad, this.currentUser.sponsorTypeSponsor7, true);\n    }),\n    compensationReplacementSevenYearsAheadDirects: Ember.computed('compensationReplacementSevenYearsAheadNihDirects', 'compensationReplacementSevenYearsAheadOtherFedDirects', 'compensationReplacementSixYearsAheadFedFlowThruDirects', 'compensationReplacementSixYearsAheadNonFedDirects', 'compensationReplacementSixYearsAheadSponsor5Directs', 'compensationReplacementSixYearsAheadSponsor6Directs', 'compensationReplacementSixYearsAheadSponsor7Directs', function () {\n      return this.compensationReplacementSevenYearsAheadNihDirects + this.compensationReplacementSevenYearsAheadOtherFedDirects + this.compensationReplacementSevenYearsAheadFedFlowThruDirects + this.compensationReplacementSevenYearsAheadNonFedDirects + this.compensationReplacementSevenYearsAheadSponsor5Directs + this.compensationReplacementSevenYearsAheadSponsor6Directs + this.compensationReplacementSevenYearsAheadSponsor7Directs;\n    }),\n    compensationReplacementDirects: function compensationReplacementDirects(currentYearOffset, wad, sponsorType) {\n      return this.potentialBackstopCompensation(currentYearOffset, wad, sponsorType);\n    },\n    compensationReplacementData: Ember.computed('compensationReplacementCurrentYearDirects', 'compensationReplacementOneYearAheadDirects', 'compensationReplacementTwoYearsAheadDirects', 'compensationReplacementThreeYearsAheadDirects', 'compensationReplacementFourYearsAheadDirects', 'compensationReplacementFiveYearsAheadDirects', 'compensationReplacementSixYearsAheadDirects', 'selectedCompensationReplacementSponsor', 'compensationReplacementNih', 'compensationReplacementOtherFed', 'compensationReplacementFedFlowThru', 'compensationReplacementNonFed', function () {\n      var selectedSponsor = this.selectedCompensationReplacementSponsor;\n      var sponsorString = '';\n\n      switch (selectedSponsor) {\n        case this.currentUser.sponsorTypeNih:\n          sponsorString = 'Nih';\n          break;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          sponsorString = 'OtherFed';\n          break;\n\n        case this.currentUser.sponsorTypeFFT:\n          sponsorString = 'FedFlowThru';\n          break;\n\n        case this.currentUser.sponsorTypeNonFed:\n          sponsorString = 'NonFed';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          sponsorString = 'Sponsor5';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          sponsorString = 'Sponsor6';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          sponsorString = 'Sponsor7';\n          break;\n      }\n\n      var totalsPerYear = [this.get(\"compensationReplacementCurrentYear\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementOneYearAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementTwoYearsAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementThreeYearsAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementFourYearsAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementFiveYearsAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementSixYearsAhead\".concat(sponsorString, \"Directs\")), this.get(\"compensationReplacementSevenYearsAhead\".concat(sponsorString, \"Directs\"))];\n\n      var cumulativeSum = function (sum) {\n        return function (value) {\n          return sum += value;\n        };\n      }(0);\n\n      var cumulative = totalsPerYear.map(cumulativeSum);\n      return {\n        \"totalsPerYear\": totalsPerYear,\n        \"cumulative\": cumulative\n      };\n    }),\n    compensationReplacementChartData: Ember.computed('compensationReplacementData', 'year.fiscalYear', function () {\n      var compensationReplacementData = this.compensationReplacementData;\n\n      if (!compensationReplacementData) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n\n      for (var i = 0; i < 8; i++) {\n        years.push(fiscalYear + i);\n      }\n\n      return {\n        labels: years,\n        datasets: [{\n          label: 'Annual',\n          data: compensationReplacementData[\"totalsPerYear\"],\n          backgroundColor: '#F1BE48',\n          borderWidth: 0\n        }, {\n          label: 'Cumulative',\n          data: compensationReplacementData['cumulative'],\n          backgroundColor: '#71C5E8',\n          borderWidth: 0\n        }]\n      };\n    }),\n    actions: {\n      phaseStartChanged: function phaseStartChanged(num, value) {\n        this.set(\"phase\".concat(num, \"Start\"), value);\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      phaseEndChanged: function phaseEndChanged(num, value) {\n        this.set(\"phase\".concat(num, \"End\"), value);\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      phaseReductionsDirectsChanged: function phaseReductionsDirectsChanged(num, value) {\n        value = value ? value : 0;\n        this.set(\"phase\".concat(num, \"ReductionsDirects\"), parseInt(value));\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      phaseReductionsIndirectsChanged: function phaseReductionsIndirectsChanged(num, value) {\n        value = value ? value : 0;\n        this.set(\"phase\".concat(num, \"ReductionsIndirects\"), parseInt(value));\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      phaseRecoveryDirectsChanged: function phaseRecoveryDirectsChanged(num, value) {\n        value = value ? value : 0;\n        this.set(\"phase\".concat(num, \"RecoveryDirects\"), parseInt(value));\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      phaseRecoveryIndirectsChanged: function phaseRecoveryIndirectsChanged(num, value) {\n        value = value ? value : 0;\n        this.set(\"phase\".concat(num, \"RecoveryIndirects\"), parseInt(value));\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      compensationReplacementSponsorChanged: function compensationReplacementSponsorChanged(value) {\n        this.set('selectedCompensationReplacementSponsor', value);\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      compensationReplacementChanged: function compensationReplacementChanged(type, value) {\n        switch (type) {\n          case this.currentUser.sponsorTypeNih:\n            this.set('compensationReplacementNih', value);\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            this.set('compensationReplacementOtherFed', value);\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            this.set('compensationReplacementFedFlowThru', value);\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            this.set('compensationReplacementNonFed', value);\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            this.set('compensationReplacementSponsor5', value);\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            this.set('compensationReplacementSponsor6', value);\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            this.set('compensationReplacementSponsor7', value);\n            break;\n        }\n\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      toggleForecastModifierHelp: function toggleForecastModifierHelp() {\n        this.toggleProperty('isShowingForecastModifierHelp');\n      },\n      toggleResearchBackstopHelp: function toggleResearchBackstopHelp() {\n        this.toggleProperty('isShowingResearchBackstopHelp');\n      },\n      projectionFilterOptionChanged: function projectionFilterOptionChanged(option) {\n        var _this5 = this;\n\n        if (option.value === 'All Sectors') {\n          this.store.query('projection', {}).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this5.set('model.projection', projection);\n            }\n          });\n        } else if (option.isGroupName) {\n          this.store.query('projection', {\n            'sector': option.value\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this5.set('model.projection', projection);\n            }\n          });\n        } else {\n          this.store.query('projection', {\n            'department_id': option.id\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this5.set('model.projection', projection);\n            }\n          });\n        }\n\n        this.set('selectedFilterOption', option);\n        this.saveSettings();\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/controllers/app/projections/index\", [\"exports\", \"accounting/format-money\", \"accounting/format-number\", \"b3i-analytics-web-app/mixins/recruitment-calculations\", \"jquery\", \"b3i-analytics-web-app/mixins/full-projections\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"lodash\"], function (_exports, _formatMoney, _formatNumber, _recruitmentCalculations, _jquery, _fullProjections, _openPrintDialog, _lodash) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var DROPDOWN_OPEN = 'open';\n  var DROPDOWN_REVISED = 'revised';\n  var DROPDOWN_TRANSITION = 'transition';\n  var GRANT_TYPE_ALL_RECRUITMENT = 'Include Recruitment';\n  var GRANT_TYPE_ALL = 'Base (Core & Mega)';\n  var GRANT_TYPE_MEGA = 'Mega';\n  var GRANT_TYPE_CORE = 'Core';\n  var SPONSOR_TYPE_ALL = 'All Sponsor Types';\n\n  var _default = Ember.Controller.extend(_fullProjections.default, _recruitmentCalculations.default, _openPrintDialog.default, {\n    isShowingProjectionsHelp: false,\n    selectedSponsor: SPONSOR_TYPE_ALL,\n    grantTypeOptions: Ember.computed('selectedSponsor', function () {\n      if (this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        return [GRANT_TYPE_ALL_RECRUITMENT, GRANT_TYPE_ALL, GRANT_TYPE_CORE, GRANT_TYPE_MEGA];\n      }\n\n      return [GRANT_TYPE_ALL, GRANT_TYPE_CORE, GRANT_TYPE_MEGA];\n    }),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('sponsorOptions', this.currentUser.sponsorlist);\n      this.set('coreProposalsSettingsProjectionsNih', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsOtherFed', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsFedFlowThru', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsNonFed', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsSponsor5', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsSponsor6', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreProposalsSettingsProjectionsSponsor7', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsNih', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsOtherFed', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsFedFlowThru', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsNonFed', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsSponsor5', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsSponsor6', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      }));\n      this.set('coreConversionRatiosSettingsProjectionsSponsor7', Ember.Object.create({\n        oneYearAheadChangeDirects: null,\n        oneYearAheadChangeIndirects: null,\n        twoYearsAheadChangeDirects: null,\n        twoYearsAheadChangeIndirects: null,\n        threeYearsAheadChangeDirects: null,\n        threeYearsAheadChangeIndirects: null,\n        fourYearsAheadChangeDirects: null,\n        fourYearsAheadChangeIndirects: null\n      })); //Check if the school (team) has an official set of projections. If not load any from local storage\n\n      var projectionSettingsString = window.sessionStorage.getItem('projectionsSettings');\n\n      if (this.hasTeamOfficialProjections) {\n        this.setProjectionsToOfficialAssumptions();\n      } else if (projectionSettingsString) {\n        var settings = JSON.parse(projectionSettingsString);\n\n        for (var pKey in settings) {\n          if (settings.hasOwnProperty(pKey)) {\n            this.set(pKey, settings[pKey]);\n          }\n        }\n      } else {\n        //Set YTD defaults\n        if (this.year.startFiscalMonth === 7 && this.year.lastCompletedFiscalMonth >= 3 || this.year.startFiscalMonth === 9 && this.year.lastCompletedFiscalMonth >= 8) {\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearNih', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'YTD');\n          this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor7', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearNih', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearOtherFed', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearFedFlowThru', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearNonFed', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearSponsor5', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearSponsor6', 'YTD');\n          this.set('coreProposalsSettingsRevisedCurrentYearSponsor7', 'YTD');\n          this.saveSettings();\n        }\n      }\n\n      var baseChartOptions = {\n        scales: {\n          yAxes: [{\n            ticks: {\n              display: false,\n              beginAtZero: true,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: false,\n              drawTicks: true,\n              zeroLineWidth: 2\n            }\n          }],\n          xAxes: [{\n            stacked: true,\n            ticks: {\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontStyle: 'bold'\n            },\n            gridLines: {\n              display: false\n            }\n          }]\n        },\n        legend: {\n          position: 'top',\n          reverse: true,\n          labels: {\n            boxWidth: 12,\n            fontColor: '#323539',\n            fontFamily: 'Lato',\n            fontSize: 12,\n            fontStyle: 'bold'\n          }\n        },\n        tooltips: {\n          backgroundColor: '#FAFBFB',\n          bodyFontColor: '#416477',\n          bodyFontFamily: 'Lato',\n          bodySpacing: 6,\n          enabled: false,\n          intersect: false,\n          footerMarginBottom: 20,\n          mode: 'index',\n          multiKeyBackground: '#FAFBFB',\n          position: 'nearest',\n          titleFontColor: '#416477',\n          titleMarginBottom: 12,\n          xPadding: 12,\n          yPadding: 12\n        },\n        title: {\n          display: true\n        },\n        plugins: {\n          datalabels: {\n            align: 'bottom',\n            anchor: 'end',\n            color: 'rgba(0,0,0,0.9)',\n            font: {\n              family: 'Lato',\n              size: 11,\n              weight: 900\n            },\n            padding: 2\n          }\n        }\n      };\n      Chart.defaults.global.maintainAspectRatio = false; //eslint-disable-line\n      // Chart Options for standard bar chart\n\n      var dollarChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n\n      dollarChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n        return (0, _formatMoney.default)(value);\n      };\n\n      dollarChartOptions.tooltips.callbacks = {\n        label: function label(tooltipItem, data) {\n          var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n          if (label) {\n            label += ': ';\n          }\n\n          label += \"$\".concat(Math.round(tooltipItem.yLabel * 100) / 100);\n          return label;\n        }\n      };\n\n      dollarChartOptions.plugins.datalabels.formatter = function (value) {\n        return (0, _formatNumber.default)(value, 1);\n      };\n\n      dollarChartOptions.plugins.datalabels.display = function (context) {\n        return context.chart.isDatasetVisible(context.datasetIndex);\n      };\n\n      this.set('dollarChartOptions', dollarChartOptions);\n      var projectedCoreProposalsOptions = JSON.parse(JSON.stringify(dollarChartOptions));\n      projectedCoreProposalsOptions.title.text = 'Historical and Projected Core Proposal Totals (mm)';\n      this.set('projectedCoreProposalsOptions', projectedCoreProposalsOptions);\n      var projectedCoreSuccessesOptions = JSON.parse(JSON.stringify(dollarChartOptions));\n      projectedCoreSuccessesOptions.title.text = 'Historical and Projected Core Success Totals (mm)';\n      this.set('projectedCoreSuccessesOptions', projectedCoreSuccessesOptions); // Chart Options for stacked bar chart\n\n      var dollarChartStackedOptions = JSON.parse(JSON.stringify(baseChartOptions));\n\n      dollarChartStackedOptions.scales.yAxes[0].ticks.callback = function (value) {\n        return (0, _formatMoney.default)(value);\n      };\n\n      dollarChartStackedOptions.scales.xAxes[0].stacked = false;\n      dollarChartStackedOptions.legend.reverse = false;\n      dollarChartStackedOptions.tooltips.callbacks = {\n        label: function label(tooltipItem, data) {\n          var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n          if (label) {\n            label += ': ';\n          }\n\n          label += \"$\".concat(Math.round(tooltipItem.yLabel * 100) / 100);\n          return label;\n        }\n      };\n\n      dollarChartStackedOptions.plugins.datalabels.formatter = function (value) {\n        return (0, _formatNumber.default)(value, 1);\n      };\n\n      dollarChartStackedOptions.plugins.datalabels.display = function (context) {\n        return context.chart.isDatasetVisible(context.datasetIndex);\n      };\n\n      this.set('dollarChartStackedOptions', dollarChartStackedOptions);\n      var projectedCoreMegaOptions = JSON.parse(JSON.stringify(dollarChartOptions));\n      projectedCoreMegaOptions.title.text = 'Projected Spending and Indirect Cost Recovery (mm)';\n      this.set('projectedCoreMegaOptions', projectedCoreMegaOptions); // Chart Options for line graph\n\n      var percentChartOptions = JSON.parse(JSON.stringify(baseChartOptions));\n\n      var _this = this;\n\n      percentChartOptions.legend.onClick = function (e, legendItem) {\n        var index = legendItem.datasetIndex;\n        var ci = this.chart;\n        var meta = ci.getDatasetMeta(index); // Toggle the hidden flag on the dataset\n\n        meta.hidden = meta.hidden === null ? !ci.data.datasets[index].hidden : null; // Update the chart now that we updated the dataset\n\n        ci.update(); // Now update the controller property so we can keep the hidden status\n        // consistent if the chart data gets updated in the controls panel\n\n        var label = legendItem.text;\n\n        if (label === _this.currentUser.sponsorTypeNih) {\n          _this.set('conversionRatioChartHiddenNih', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeFFT) {\n          _this.set('conversionRatioChartHiddenFft', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeOtherFed) {\n          _this.set('conversionRatioChartHiddenOtherFed', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeNonFed) {\n          _this.set('conversionRatioChartHiddenNonFed', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeSponsor5) {\n          _this.set('conversionRatioChartHiddenSponsor5', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeSponsor6) {\n          _this.set('conversionRatioChartHiddenSponsor6', meta.hidden);\n        }\n\n        if (label === _this.currentUser.sponsorTypeSponsor7) {\n          _this.set('conversionRatioChartHiddenSponsor7', meta.hidden);\n        }\n      };\n\n      percentChartOptions.scales.yAxes[0].gridLines.display = true;\n      percentChartOptions.scales.yAxes[0].ticks.display = true;\n      percentChartOptions.scales.yAxes[0].ticks.max = 0.5;\n      percentChartOptions.scales.yAxes[0].ticks.min = 0;\n\n      percentChartOptions.scales.yAxes[0].ticks.callback = function (value) {\n        return Math.round(value * 100) + '%';\n      };\n\n      percentChartOptions.scales.xAxes[0].gridLines.display = true;\n      percentChartOptions.plugins.datalabels.offset = 8;\n\n      percentChartOptions.plugins.datalabels.formatter = function (value) {\n        var newValue = value * 100;\n        return newValue.toFixed(1) + '%';\n      };\n\n      percentChartOptions.plugins.datalabels.display = function (context) {\n        return context.chart.isDatasetVisible(context.datasetIndex);\n      };\n\n      percentChartOptions.legend.reverse = false;\n      percentChartOptions.tooltips.callbacks = {\n        label: function label(tooltipItem, data) {\n          var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n          if (label) {\n            label += ': ';\n          }\n\n          label += \"\".concat(Math.round(tooltipItem.yLabel * 1000) / 10, \"%\");\n          return label;\n        }\n      };\n      percentChartOptions.legend.labels.usePointStyle = true;\n      percentChartOptions.legend.labels.fillStyle = '#FFFFFF';\n      this.set('percentChartOptions', percentChartOptions);\n      var conversionRatiosChartOptions = percentChartOptions;\n      conversionRatiosChartOptions.title.text = 'Core Conversion Ratios - Directs';\n      this.set('conversionRatiosChartOptions', conversionRatiosChartOptions);\n    },\n    selectedGrantType: GRANT_TYPE_ALL,\n    projectionsFilterOptions: null,\n    hasMegaGrantAdjustments: Ember.computed('currentUser.team.{megaGrantFutureOneYearAheadDirects,megaGrantFutureOneYearAheadIndirects,megaGrantFutureCurrentYearDirects,megaGrantFutureCurrentYearIndirects}', 'year.fiscalYear', function () {\n      var team = this.get('currentUser.team');\n      var currentDirects = team.get('megaGrantFutureCurrentYearDirects') !== 0;\n      var oneYearDirects = team.get('megaGrantFutureOneYearAheadDirects') !== 0;\n      var currentIndirects = team.get('megaGrantFutureCurrentYearIndirects') !== 0;\n      var oneYearIndirects = team.get('megaGrantFutureOneYearAheadIndirects') !== 0;\n      return oneYearDirects || oneYearIndirects || currentDirects || currentIndirects;\n    }),\n    initResizeObserver: Ember.observer('init', function () {\n      (0, _jquery.default)(window).on('resize', this.handleResize.bind(this));\n    }).on('init'),\n    willDestroyElement: function willDestroyElement() {\n      this._super.apply(this, arguments);\n\n      (0, _jquery.default)(window).off('resize');\n    },\n    handleResize: function handleResize() {\n      this.set('windowWidth', window.innerWidth);\n    },\n    chartWidth: Ember.computed('windowWidth', function () {\n      var windowWidth = window.innerWidth;\n      return Math.floor((windowWidth - 615) * .9);\n    }),\n    setProjectionsToOfficialAssumptions: function setProjectionsToOfficialAssumptions() {\n      var team = this.store.peekRecord('team', this.currentUser.team.id);\n      var officialProjectionSettings = JSON.parse(JSON.stringify(team.officialProjectionSettings));\n      this.setProperties(officialProjectionSettings);\n    },\n    showingOfficialAssumptions: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearNih', 'coreConversionRatiosOpenCurrentYearNihDirects', 'coreConversionRatiosOpenCurrentYearNihIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreConversionRatiosRevisedCurrentYearNihDirects', 'coreConversionRatiosRevisedCurrentYearNihIndirects', 'coreConversionRatiosettingsTransitionNextYearNih', 'coreConversionRatiosTransitionNextYearNihDirects', 'coreConversionRatiosTransitionNextYearNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearOtherFed', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', 'coreConversionRatiosOpenCurrentYearOtherFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'coreConversionRatiosRevisedCurrentYearOtherFedDirects', 'coreConversionRatiosRevisedCurrentYearOtherFedIndirects', 'coreConversionRatiosettingsTransitionNextYearOtherFed', 'coreConversionRatiosTransitionNextYearOtherFedDirects', 'coreConversionRatiosTransitionNextYearOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', 'coreConversionRatiosOpenCurrentYearFedFlowThruDirects', 'coreConversionRatiosOpenCurrentYearFedFlowThruIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', 'coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects', 'coreConversionRatioSettingsTransitionNextYearFedFlowThru', 'coreConversionRatiosTransitionNextYearFedFlowThruDirects', 'coreConversionRatiosTransitionNextYearFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearNonFed', 'coreConversionRatiosOpenCurrentYearNonFedDirects', 'coreConversionRatiosOpenCurrentYearNonFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'coreConversionRatiosRevisedCurrentYearNonFedDirects', 'coreConversionRatiosRevisedCurrentYearNonFedIndirects', 'coreConversionRatiosettingsTransitionNextYearNonFed', 'coreConversionRatiosTransitionNextYearNonFedDirects', 'coreConversionRatiosTransitionNextYearNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor5', 'coreConversionRatiosOpenCurrentYearSponsor5Directs', 'coreConversionRatiosOpenCurrentYearSponsor5Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'coreConversionRatiosRevisedCurrentYearSponsor5Directs', 'coreConversionRatiosRevisedCurrentYearSponsor5Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor5', 'coreConversionRatiosTransitionNextYearSponsor5Directs', 'coreConversionRatiosTransitionNextYearSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor6', 'coreConversionRatiosOpenCurrentYearSponsor6Directs', 'coreConversionRatiosOpenCurrentYearSponsor6Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'coreConversionRatiosRevisedCurrentYearSponsor6Directs', 'coreConversionRatiosRevisedCurrentYearSponsor6Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor6', 'coreConversionRatiosTransitionNextYearSponsor6Directs', 'coreConversionRatiosTransitionNextYearSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor7', 'coreConversionRatiosOpenCurrentYearSponsor7Directs', 'coreConversionRatiosOpenCurrentYearSponsor7Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor7', 'coreConversionRatiosRevisedCurrentYearSponsor7Directs', 'coreConversionRatiosRevisedCurrentYearSponsor7Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor7', 'coreConversionRatiosTransitionNextYearSponsor7Directs', 'coreConversionRatiosTransitionNextYearSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearNih', 'coreProposalsOpenCurrentYearNihDirects', 'coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsSettingsRevisedCurrentYearNih', 'coreProposalsRevisedCurrentYearNihDirects', 'coreProposalsRevisedCurrentYearNihIndirects', 'coreProposalSettingsTransitionNextYearNih', 'coreProposalsTransitionNextYearNihDirects', 'coreProposalsTransitionNextYearNihIndirects', 'coreProposalsSettingsProjectionsNih.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearOtherFed', 'coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsSettingsRevisedCurrentYearOtherFed', 'coreProposalsRevisedCurrentYearOtherFedDirects', 'coreProposalsRevisedCurrentYearOtherFedIndirects', 'coreProposalSettingsTransitionNextYearOtherFed', 'coreProposalsTransitionNextYearOtherFedDirects', 'coreProposalsTransitionNextYearOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearFedFlowThru', 'coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsSettingsRevisedCurrentYearFedFlowThru', 'coreProposalsRevisedCurrentYearFedFlowThruDirects', 'coreProposalsRevisedCurrentYearFedFlowThruIndirects', 'coreProposalSettingsTransitionNextYearFedFlowThru', 'coreProposalsTransitionNextYearFedFlowThruDirects', 'coreProposalsTransitionNextYearFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearNonFed', 'coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsSettingsRevisedCurrentYearNonFed', 'coreProposalsRevisedCurrentYearNonFedDirects', 'coreProposalsRevisedCurrentYearNonFedIndirects', 'coreProposalSettingsTransitionNextYearNonFed', 'coreProposalsTransitionNextYearNonFedDirects', 'coreProposalsTransitionNextYearNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearSponsor5', 'coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor5', 'coreProposalsRevisedCurrentYearSponsor5Directs', 'coreProposalsRevisedCurrentYearSponsor5Indirects', 'coreProposalSettingsTransitionNextYearSponsor5', 'coreProposalsTransitionNextYearSponsor5Directs', 'coreProposalsTransitionNextYearSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearSponsor6', 'coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor6', 'coreProposalsRevisedCurrentYearSponsor6Directs', 'coreProposalsRevisedCurrentYearSponsor6Indirects', 'coreProposalSettingsTransitionNextYearSponsor6', 'coreProposalsTransitionNextYearSponsor6Directs', 'coreProposalsTransitionNextYearSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', 'coreProposalsSettingsOpenCurrentYearSponsor7', 'coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor7', 'coreProposalsRevisedCurrentYearSponsor7Directs', 'coreProposalsRevisedCurrentYearSponsor7Indirects', 'coreProposalSettingsTransitionNextYearSponsor7', 'coreProposalsTransitionNextYearSponsor7Directs', 'coreProposalsTransitionNextYearSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      var team = this.store.peekRecord('team', this.currentUser.team.id);\n      var officialProjectionSettings = JSON.parse(JSON.stringify(team.officialProjectionSettings));\n      var currentProjectionsettings = {\n        'coreConversionRatiosSettingsOpenCurrentYearNih': this.coreConversionRatiosSettingsOpenCurrentYearNih,\n        'coreConversionRatiosSettingsRevisedCurrentYearNih': this.coreConversionRatiosSettingsRevisedCurrentYearNih,\n        'coreConversionRatiosSettingsTransitionNextYearNih': this.coreConversionRatiosSettingsTransitionNextYearNih,\n        'coreConversionRatiosSettingsOpenCurrentYearOtherFed': this.coreConversionRatiosSettingsOpenCurrentYearOtherFed,\n        'coreConversionRatiosSettingsRevisedCurrentYearOtherFed': this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed,\n        'coreConversionRatiosSettingsTransitionNextYearOtherFed': this.coreConversionRatiosSettingsTransitionNextYearOtherFed,\n        'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru': this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru,\n        'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru': this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru,\n        'coreConversionRatiosSettingsTransitionNextYearFedFlowThru': this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru,\n        'coreConversionRatiosSettingsOpenCurrentYearNonFed': this.coreConversionRatiosSettingsOpenCurrentYearNonFed,\n        'coreConversionRatiosSettingsRevisedCurrentYearNonFed': this.coreConversionRatiosSettingsRevisedCurrentYearNonFed,\n        'coreConversionRatiosSettingsTransitionNextYearNonFed': this.coreConversionRatiosSettingsTransitionNextYearNonFed,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor5': this.coreConversionRatiosSettingsOpenCurrentYearSponsor5,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor5': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor5': this.coreConversionRatiosSettingsTransitionNextYearSponsor5,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor6': this.coreConversionRatiosSettingsOpenCurrentYearSponsor6,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor6': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor6': this.coreConversionRatiosSettingsTransitionNextYearSponsor6,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor7': this.coreConversionRatiosSettingsOpenCurrentYearSponsor7,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor7': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor7': this.coreConversionRatiosSettingsTransitionNextYearSponsor7,\n        'coreConversionRatiosSettingsProjectionsNih': this.coreConversionRatiosSettingsProjectionsNih,\n        'coreConversionRatiosSettingsProjectionsOtherFed': this.coreConversionRatiosSettingsProjectionsOtherFed,\n        'coreConversionRatiosSettingsProjectionsFedFlowThru': this.coreConversionRatiosSettingsProjectionsFedFlowThru,\n        'coreConversionRatiosSettingsProjectionsNonFed': this.coreConversionRatiosSettingsProjectionsNonFed,\n        'coreConversionRatiosSettingsProjectionsSponsor5': this.coreConversionRatiosSettingsProjectionsSponsor5,\n        'coreConversionRatiosSettingsProjectionsSponsor6': this.coreConversionRatiosSettingsProjectionsSponsor6,\n        'coreConversionRatiosSettingsProjectionsSponsor7': this.coreConversionRatiosSettingsProjectionsSponsor7,\n        'coreProposalsSettingsOpenCurrentYearNih': this.coreProposalsSettingsOpenCurrentYearNih,\n        'coreProposalsSettingsRevisedCurrentYearNih': this.coreProposalsSettingsRevisedCurrentYearNih,\n        'coreProposalsSettingsTransitionNextYearNih': this.coreProposalsSettingsTransitionNextYearNih,\n        'coreProposalsSettingsOpenCurrentYearOtherFed': this.coreProposalsSettingsOpenCurrentYearOtherFed,\n        'coreProposalsSettingsRevisedCurrentYearOtherFed': this.coreProposalsSettingsRevisedCurrentYearOtherFed,\n        'coreProposalsSettingsTransitionNextYearOtherFed': this.coreProposalsSettingsTransitionNextYearOtherFed,\n        'coreProposalsSettingsOpenCurrentYearFedFlowThru': this.coreProposalsSettingsOpenCurrentYearFedFlowThru,\n        'coreProposalsSettingsRevisedCurrentYearFedFlowThru': this.coreProposalsSettingsRevisedCurrentYearFedFlowThru,\n        'coreProposalsSettingsTransitionNextYearFedFlowThru': this.coreProposalsSettingsTransitionNextYearFedFlowThru,\n        'coreProposalsSettingsOpenCurrentYearNonFed': this.coreProposalsSettingsOpenCurrentYearNonFed,\n        'coreProposalsSettingsRevisedCurrentYearNonFed': this.coreProposalsSettingsRevisedCurrentYearNonFed,\n        'coreProposalsSettingsTransitionNextYearNonFed': this.coreProposalsSettingsTransitionNextYearNonFed,\n        'coreProposalsSettingsOpenCurrentYearSponsor5': this.coreProposalsSettingsOpenCurrentYearSponsor5,\n        'coreProposalsSettingsRevisedCurrentYearSponsor5': this.coreProposalsSettingsRevisedCurrentYearSponsor5,\n        'coreProposalsSettingsTransitionNextYearSponsor5': this.coreProposalsSettingsTransitionNextYearSponsor5,\n        'coreProposalsSettingsOpenCurrentYearSponsor6': this.coreProposalsSettingsOpenCurrentYearSponsor6,\n        'coreProposalsSettingsRevisedCurrentYearSponsor6': this.coreProposalsSettingsRevisedCurrentYearSponsor6,\n        'coreProposalsSettingsTransitionNextYearSponsor6': this.coreProposalsSettingsTransitionNextYearSponsor6,\n        'coreProposalsSettingsOpenCurrentYearSponsor7': this.coreProposalsSettingsOpenCurrentYearSponsor7,\n        'coreProposalsSettingsRevisedCurrentYearSponsor7': this.coreProposalsSettingsRevisedCurrentYearSponsor7,\n        'coreProposalsSettingsTransitionNextYearSponsor7': this.coreProposalsSettingsTransitionNextYearSponsor7,\n        'coreProposalsSettingsProjectionsNih': this.coreProposalsSettingsProjectionsNih,\n        'coreProposalsSettingsProjectionsOtherFed': this.coreProposalsSettingsProjectionsOtherFed,\n        'coreProposalsSettingsProjectionsFedFlowThru': this.coreProposalsSettingsProjectionsFedFlowThru,\n        'coreProposalsSettingsProjectionsNonFed': this.coreProposalsSettingsProjectionsNonFed,\n        'coreProposalsSettingsProjectionsSponsor5': this.coreProposalsSettingsProjectionsSponsor5,\n        'coreProposalsSettingsProjectionsSponsor6': this.coreProposalsSettingsProjectionsSponsor6,\n        'coreProposalsSettingsProjectionsSponsor7': this.coreProposalsSettingsProjectionsSponsor7\n      };\n      return (0, _lodash.isEqual)(officialProjectionSettings, currentProjectionsettings);\n    }),\n    saveSettings: function saveSettings() {\n      var settings = {\n        'coreConversionRatiosSettingsOpenCurrentYearNih': this.coreConversionRatiosSettingsOpenCurrentYearNih,\n        'coreConversionRatiosSettingsRevisedCurrentYearNih': this.coreConversionRatiosSettingsRevisedCurrentYearNih,\n        'coreConversionRatiosSettingsTransitionNextYearNih': this.coreConversionRatiosSettingsTransitionNextYearNih,\n        'coreConversionRatiosSettingsOpenCurrentYearOtherFed': this.coreConversionRatiosSettingsOpenCurrentYearOtherFed,\n        'coreConversionRatiosSettingsRevisedCurrentYearOtherFed': this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed,\n        'coreConversionRatiosSettingsTransitionNextYearOtherFed': this.coreConversionRatiosSettingsTransitionNextYearOtherFed,\n        'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru': this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru,\n        'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru': this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru,\n        'coreConversionRatiosSettingsTransitionNextYearFedFlowThru': this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru,\n        'coreConversionRatiosSettingsOpenCurrentYearNonFed': this.coreConversionRatiosSettingsOpenCurrentYearNonFed,\n        'coreConversionRatiosSettingsRevisedCurrentYearNonFed': this.coreConversionRatiosSettingsRevisedCurrentYearNonFed,\n        'coreConversionRatiosSettingsTransitionNextYearNonFed': this.coreConversionRatiosSettingsTransitionNextYearNonFed,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor5': this.coreConversionRatiosSettingsOpenCurrentYearSponsor5,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor5': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor5': this.coreConversionRatiosSettingsTransitionNextYearSponsor5,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor6': this.coreConversionRatiosSettingsOpenCurrentYearSponsor6,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor6': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor6': this.coreConversionRatiosSettingsTransitionNextYearSponsor6,\n        'coreConversionRatiosSettingsOpenCurrentYearSponsor7': this.coreConversionRatiosSettingsOpenCurrentYearSponsor7,\n        'coreConversionRatiosSettingsRevisedCurrentYearSponsor7': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7,\n        'coreConversionRatiosSettingsTransitionNextYearSponsor7': this.coreConversionRatiosSettingsTransitionNextYearSponsor7,\n        'coreConversionRatiosSettingsProjectionsNih': this.coreConversionRatiosSettingsProjectionsNih,\n        'coreConversionRatiosSettingsProjectionsOtherFed': this.coreConversionRatiosSettingsProjectionsOtherFed,\n        'coreConversionRatiosSettingsProjectionsFedFlowThru': this.coreConversionRatiosSettingsProjectionsFedFlowThru,\n        'coreConversionRatiosSettingsProjectionsNonFed': this.coreConversionRatiosSettingsProjectionsNonFed,\n        'coreConversionRatiosSettingsProjectionsSponsor5': this.coreConversionRatiosSettingsProjectionsSponsor5,\n        'coreConversionRatiosSettingsProjectionsSponsor6': this.coreConversionRatiosSettingsProjectionsSponsor6,\n        'coreConversionRatiosSettingsProjectionsSponsor7': this.coreConversionRatiosSettingsProjectionsSponsor7,\n        'coreProposalsSettingsOpenCurrentYearNih': this.coreProposalsSettingsOpenCurrentYearNih,\n        'coreProposalsSettingsRevisedCurrentYearNih': this.coreProposalsSettingsRevisedCurrentYearNih,\n        'coreProposalsSettingsTransitionNextYearNih': this.coreProposalsSettingsTransitionNextYearNih,\n        'coreProposalsSettingsOpenCurrentYearOtherFed': this.coreProposalsSettingsOpenCurrentYearOtherFed,\n        'coreProposalsSettingsRevisedCurrentYearOtherFed': this.coreProposalsSettingsRevisedCurrentYearOtherFed,\n        'coreProposalsSettingsTransitionNextYearOtherFed': this.coreProposalsSettingsTransitionNextYearOtherFed,\n        'coreProposalsSettingsOpenCurrentYearFedFlowThru': this.coreProposalsSettingsOpenCurrentYearFedFlowThru,\n        'coreProposalsSettingsRevisedCurrentYearFedFlowThru': this.coreProposalsSettingsRevisedCurrentYearFedFlowThru,\n        'coreProposalsSettingsTransitionNextYearFedFlowThru': this.coreProposalsSettingsTransitionNextYearFedFlowThru,\n        'coreProposalsSettingsOpenCurrentYearNonFed': this.coreProposalsSettingsOpenCurrentYearNonFed,\n        'coreProposalsSettingsRevisedCurrentYearNonFed': this.coreProposalsSettingsRevisedCurrentYearNonFed,\n        'coreProposalsSettingsTransitionNextYearNonFed': this.coreProposalsSettingsTransitionNextYearNonFed,\n        'coreProposalsSettingsOpenCurrentYearSponsor5': this.coreProposalsSettingsOpenCurrentYearSponsor5,\n        'coreProposalsSettingsRevisedCurrentYearSponsor5': this.coreProposalsSettingsRevisedCurrentYearSponsor5,\n        'coreProposalsSettingsTransitionNextYearSponsor5': this.coreProposalsSettingsTransitionNextYearSponsor5,\n        'coreProposalsSettingsOpenCurrentYearSponsor6': this.coreProposalsSettingsOpenCurrentYearSponsor6,\n        'coreProposalsSettingsRevisedCurrentYearSponsor6': this.coreProposalsSettingsRevisedCurrentYearSponsor6,\n        'coreProposalsSettingsTransitionNextYearSponsor6': this.coreProposalsSettingsTransitionNextYearSponsor6,\n        'coreProposalsSettingsOpenCurrentYearSponsor7': this.coreProposalsSettingsOpenCurrentYearSponsor7,\n        'coreProposalsSettingsRevisedCurrentYearSponsor7': this.coreProposalsSettingsRevisedCurrentYearSponsor7,\n        'coreProposalsSettingsTransitionNextYearSponsor7': this.coreProposalsSettingsTransitionNextYearSponsor7,\n        'coreProposalsSettingsProjectionsNih': this.coreProposalsSettingsProjectionsNih,\n        'coreProposalsSettingsProjectionsOtherFed': this.coreProposalsSettingsProjectionsOtherFed,\n        'coreProposalsSettingsProjectionsFedFlowThru': this.coreProposalsSettingsProjectionsFedFlowThru,\n        'coreProposalsSettingsProjectionsNonFed': this.coreProposalsSettingsProjectionsNonFed,\n        'coreProposalsSettingsProjectionsSponsor5': this.coreProposalsSettingsProjectionsSponsor5,\n        'coreProposalsSettingsProjectionsSponsor6': this.coreProposalsSettingsProjectionsSponsor6,\n        'coreProposalsSettingsProjectionsSponsor7': this.coreProposalsSettingsProjectionsSponsor7,\n        'baselinePriorYearsDirectsRow': this.baselinePriorYearsDirectsRow,\n        'baselineCurrentFutureDirectsRow': this.baselineCurrentFutureDirectsRow,\n        'baselinePriorYearsIndirectsRow': this.baselinePriorYearsIndirectsRow,\n        'baselineCurrentFutureIndirectsRow': this.baselineCurrentFutureIndirectsRow,\n        'selectedFilterOption': this.selectedFilterOption,\n        'selectedSponsor': this.selectedSponsor,\n        'selectedGrantType': this.selectedGrantType\n      };\n      this.set('currentSettings', settings);\n      window.sessionStorage.setItem('projectionsSettings', JSON.stringify(settings));\n    },\n    isSelectedGrantTypeAll: Ember.computed('selectedGrantType', function () {\n      var selectedGrantType = this.selectedGrantType;\n      return selectedGrantType === GRANT_TYPE_ALL || selectedGrantType === GRANT_TYPE_ALL_RECRUITMENT;\n    }),\n    projectedConversionRatiosChartData: Ember.computed('projectedConversionRatios', 'year.fiscalYear', 'selectedSponsor', function () {\n      var projectedConversionRatios = this.projectedConversionRatios;\n\n      if (!projectedConversionRatios) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n      var datalist = [];\n\n      for (var i = -3; i < 5; i++) {\n        years.push(fiscalYear + i);\n      } // Pull the hidden status for each dataset. We need to set it\n      // here so that if the data gets updated, the chart will\n      // re-render, so we need a way to maintain if the dataset\n      // is hidden or not hidden between renders.\n\n\n      var nihHidden = this.conversionRatioChartHiddenNih;\n      var fftHidden = this.conversionRatioChartHiddenFft;\n      var otherFedHidden = this.conversionRatioChartHiddenOtherFed;\n      var nonFedHidden = this.conversionRatioChartHiddenNonFed;\n      var sponsor5Hidden = this.conversionRatioChartHiddenSponsor5;\n      var sponsor6Hidden = this.conversionRatioChartHiddenSponsor6;\n      var sponsor7Hidden = this.conversionRatioChartHiddenSponsor7;\n      var nihDisplay = true;\n      var fftDisplay = false;\n      var otherFedDisplay = false;\n      var nonFedDisplay = false;\n      var sponsor5Display = false;\n      var sponsor6Display = false;\n      var sponsor7Display = false; //If the user is filtering on a sponsor type, hide the other ones\n\n      switch (this.selectedSponsor) {\n        case this.currentUser.sponsorTypeNih:\n          nihHidden = false;\n          fftHidden = true;\n          otherFedHidden = true;\n          nonFedHidden = true;\n          sponsor5Hidden = true;\n          sponsor6Hidden = true;\n          sponsor7Hidden = true;\n          nihDisplay = true;\n          fftDisplay = false;\n          otherFedDisplay = false;\n          nonFedDisplay = false;\n          sponsor5Display = false;\n          sponsor6Display = false;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeFFT:\n          nihHidden = true;\n          fftHidden = false;\n          otherFedHidden = true;\n          nonFedHidden = true;\n          sponsor5Hidden = true;\n          sponsor6Hidden = true;\n          sponsor7Hidden = true;\n          nihDisplay = false;\n          fftDisplay = true;\n          otherFedDisplay = false;\n          nonFedDisplay = false;\n          sponsor5Display = false;\n          sponsor6Display = false;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          nihHidden = true;\n          fftHidden = true;\n          otherFedHidden = false;\n          nonFedHidden = true;\n          sponsor5Hidden = true;\n          sponsor6Hidden = true;\n          sponsor7Hidden = true;\n          nihDisplay = false;\n          fftDisplay = false;\n          otherFedDisplay = true;\n          nonFedDisplay = false;\n          sponsor5Display = false;\n          sponsor6Display = false;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeNonFed:\n          nihHidden = true;\n          fftHidden = true;\n          otherFedHidden = true;\n          nonFedHidden = false;\n          sponsor5Hidden = true;\n          sponsor6Hidden = true;\n          sponsor7Hidden = true;\n          nihDisplay = false;\n          fftDisplay = false;\n          otherFedDisplay = false;\n          nonFedDisplay = true;\n          sponsor5Display = false;\n          sponsor6Display = false;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          nihHidden = true;\n          fftHidden = true;\n          otherFedHidden = true;\n          nonFedHidden = true;\n          sponsor5Hidden = false;\n          sponsor6Hidden = true;\n          sponsor7Hidden = true;\n          nihDisplay = false;\n          fftDisplay = false;\n          otherFedDisplay = false;\n          nonFedDisplay = false;\n          sponsor5Display = true;\n          sponsor6Display = false;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          nihHidden = true;\n          fftHidden = true;\n          otherFedHidden = true;\n          nonFedHidden = true;\n          sponsor5Hidden = true;\n          sponsor6Hidden = false;\n          sponsor7Hidden = true;\n          nihDisplay = false;\n          fftDisplay = false;\n          otherFedDisplay = false;\n          nonFedDisplay = false;\n          sponsor5Display = false;\n          sponsor6Display = true;\n          sponsor7Display = false;\n          break;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          nihHidden = true;\n          fftHidden = true;\n          otherFedHidden = true;\n          nonFedHidden = true;\n          sponsor5Hidden = true;\n          sponsor6Hidden = true;\n          sponsor7Hidden = false;\n          nihDisplay = false;\n          fftDisplay = false;\n          otherFedDisplay = false;\n          nonFedDisplay = false;\n          sponsor5Display = false;\n          sponsor6Display = false;\n          sponsor7Display = true;\n          break;\n      }\n\n      this.currentUser.team.is_fft ? [datalist.push({\n        label: this.currentUser.sponsorTypeFFT,\n        data: projectedConversionRatios['fedFlowThru'],\n        fill: false,\n        borderColor: '#f84647',\n        pointRadius: 3,\n        pointStyle: 'circle',\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: fftDisplay\n        },\n        hidden: fftHidden\n      })] : [];\n      this.currentUser.team.is_nih ? [datalist.push({\n        label: this.currentUser.sponsorTypeNih,\n        data: projectedConversionRatios['nih'],\n        fill: false,\n        borderColor: '#0093bb',\n        pointRadius: 3,\n        backgroundColor: '#FFFFFF',\n        pointStyle: 'circle',\n        borderWidth: 2,\n        hidden: nihHidden,\n        datalabels: {\n          display: nihDisplay\n        }\n      })] : [];\n      this.currentUser.team.is_other_fed ? [datalist.push({\n        label: this.currentUser.sponsorTypeOtherFed,\n        data: projectedConversionRatios['otherFed'],\n        fill: false,\n        borderColor: '#ffc738',\n        pointRadius: 3,\n        pointStyle: 'circle',\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: otherFedDisplay\n        },\n        hidden: otherFedHidden\n      })] : [];\n      this.currentUser.team.is_non_fed ? [datalist.push({\n        label: this.currentUser.sponsorTypeNonFed,\n        data: projectedConversionRatios['nonFed'],\n        fill: false,\n        borderColor: '#00558C',\n        pointStyle: 'circle',\n        pointRadius: 3,\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: nonFedDisplay\n        },\n        hidden: nonFedHidden\n      })] : [];\n      this.currentUser.team.is_sponsor5 ? [datalist.push({\n        label: this.currentUser.sponsorTypeSponsor5,\n        data: projectedConversionRatios['sponsor5'],\n        fill: false,\n        borderColor: '#7FB800',\n        pointStyle: 'circle',\n        pointRadius: 3,\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: sponsor5Display\n        },\n        hidden: sponsor5Hidden\n      })] : [];\n      this.currentUser.team.is_sponsor6 ? [datalist.push({\n        label: this.currentUser.sponsorTypeSponsor6,\n        data: projectedConversionRatios['sponsor6'],\n        fill: false,\n        borderColor: '#570000',\n        pointStyle: 'circle',\n        pointRadius: 3,\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: sponsor5Display\n        },\n        hidden: sponsor5Hidden\n      })] : [];\n      this.currentUser.team.is_sponsor7 ? [datalist.push({\n        label: this.currentUser.sponsorTypeSponsor7,\n        data: projectedConversionRatios['sponsor7'],\n        fill: false,\n        borderColor: '#6A4C93',\n        pointStyle: 'circle',\n        pointRadius: 3,\n        borderWidth: 2,\n        backgroundColor: '#FFFFFF',\n        datalabels: {\n          display: sponsor5Display\n        },\n        hidden: sponsor5Hidden\n      })] : [];\n      return {\n        labels: years,\n        title: {\n          text: 'Hello'\n        },\n        datasets: datalist\n      };\n    }),\n    //endregion\n    //endregion\n    projectedCoreProposalsChartData: Ember.computed('projectedCoreProposals', 'year.fiscalYear', function () {\n      var projectedCoreProposals = this.projectedCoreProposals;\n\n      if (!projectedCoreProposals) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n\n      for (var i = -3; i < 5; i++) {\n        years.push(fiscalYear + i);\n      }\n\n      return {\n        labels: years,\n        datasets: [{\n          label: 'Indirects',\n          data: projectedCoreProposals['indirects'],\n          backgroundColor: '#F1BE48',\n          borderWidth: 0,\n          borderColor: '#000000'\n        }, {\n          label: 'Directs',\n          data: projectedCoreProposals['directs'],\n          backgroundColor: '#71C5E8',\n          borderWidth: 0,\n          borderColor: '#000000'\n        }]\n      };\n    }),\n    projectedCoreSuccessesChartData: Ember.computed('projectedCoreSuccesses', 'year.fiscalYear', function () {\n      var projectedCoreSuccesses = this.projectedCoreSuccesses;\n\n      if (!projectedCoreSuccesses) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n\n      for (var i = -3; i < 5; i++) {\n        years.push(fiscalYear + i);\n      }\n\n      return {\n        labels: years,\n        datasets: [{\n          label: 'Indirects',\n          data: projectedCoreSuccesses['indirects'],\n          backgroundColor: '#F1BE48',\n          borderWidth: 0\n        }, {\n          label: 'Directs',\n          data: projectedCoreSuccesses['directs'],\n          backgroundColor: '#71C5E8',\n          borderWidth: 0\n        }]\n      };\n    }),\n    //endregion\n    //endregion\n    variancePriorYearsIndirectsRow: Ember.computed('revisedPriorYearsIndirectsRow', 'baselinePriorYearsIndirectsRow', function () {\n      var revisedIndirectsRow = this.revisedPriorYearsIndirectsRow;\n      var baselineIndirectsRow = this.baselinePriorYearsIndirectsRow;\n\n      if (revisedIndirectsRow && baselineIndirectsRow) {\n        return {\n          type: '',\n          directsOrIndirects: 'Indirects',\n          ptsFiveYearsAgo: revisedIndirectsRow.ptsFiveYearsAgo - baselineIndirectsRow.ptsFiveYearsAgo,\n          ptsFourYearsAgo: revisedIndirectsRow.ptsFourYearsAgo - baselineIndirectsRow.ptsFourYearsAgo,\n          ptsThreeYearsAgo: revisedIndirectsRow.ptsThreeYearsAgo - baselineIndirectsRow.ptsThreeYearsAgo,\n          ptsTwoYearsAgo: revisedIndirectsRow.ptsTwoYearsAgo - baselineIndirectsRow.ptsTwoYearsAgo,\n          ptsOneYearAgo: revisedIndirectsRow.ptsOneYearAgo - baselineIndirectsRow.ptsOneYearAgo\n        };\n      }\n\n      return {};\n    }),\n    variancePriorYearsDirectsRow: Ember.computed('revisedPriorYearsDirectsRow', 'baselinePriorYearsDirectsRow', function () {\n      var revisedDirectsRow = this.revisedPriorYearsDirectsRow;\n      var baselineDirectsRow = this.baselinePriorYearsDirectsRow;\n\n      if (revisedDirectsRow && baselineDirectsRow) {\n        return {\n          type: 'Variance',\n          directsOrIndirects: 'Directs',\n          ptsFiveYearsAgo: revisedDirectsRow.ptsFiveYearsAgo - baselineDirectsRow.ptsFiveYearsAgo,\n          ptsFourYearsAgo: revisedDirectsRow.ptsFourYearsAgo - baselineDirectsRow.ptsFourYearsAgo,\n          ptsThreeYearsAgo: revisedDirectsRow.ptsThreeYearsAgo - baselineDirectsRow.ptsThreeYearsAgo,\n          ptsTwoYearsAgo: revisedDirectsRow.ptsTwoYearsAgo - baselineDirectsRow.ptsTwoYearsAgo,\n          ptsOneYearAgo: revisedDirectsRow.ptsOneYearAgo - baselineDirectsRow.ptsOneYearAgo\n        };\n      }\n\n      return {};\n    }),\n    tablePriorYearsCoreMegaModel: Ember.computed('revisedPriorYearsDirectsRow', 'revisedPriorYearsIndirectsRow', 'baselinePriorYearsDirectsRow.ptsCurrentYear', 'baselinePriorYearsIndirectsRow.ptsCurrentYear', function () {\n      //Just show the revised rows for prior years\n      return [this.revisedPriorYearsDirectsRow, this.revisedPriorYearsIndirectsRow];\n    }),\n    projectedCoreMegaChartData: Ember.computed('projectedCoreMegaData', 'year.fiscalYear', function () {\n      var projectedPtsData = this.projectedCoreMegaData;\n\n      if (!projectedPtsData) {\n        return null;\n      }\n\n      var fiscalYear = parseInt(this.get('year.fiscalYear'));\n      var years = [];\n\n      for (var i = 0; i < 8; i++) {\n        years.push(fiscalYear + i);\n      }\n\n      return {\n        labels: years,\n        datasets: [{\n          label: 'Indirects',\n          data: projectedPtsData['indirects'],\n          backgroundColor: '#F1BE48',\n          borderWidth: 0\n        }, {\n          label: 'Directs',\n          data: projectedPtsData['directs'],\n          backgroundColor: '#71C5E8',\n          borderWidth: 0\n        }]\n      };\n    }),\n    //Sets baseline row of Core and Mega Table\n    setBaseline: function setBaseline() {\n      var revisedPriorYearDirects = this.revisedPriorYearsDirectsRow;\n      var revisedPriorYearIndirects = this.revisedPriorYearsIndirectsRow;\n      var revisedCurrentFutureYearsDirects = this.revisedCurrentFutureDirectsRow;\n      var revisedCurrentFutureYearsIndirects = this.revisedCurrentFutureIndirectsRow;\n      this.set('baselinePriorYearsDirectsRow', {\n        type: 'Baseline',\n        directsOrIndirects: 'Directs',\n        ptsFiveYearsAgo: revisedPriorYearDirects.ptsFiveYearsAgo,\n        ptsFourYearsAgo: revisedPriorYearDirects.ptsFourYearsAgo,\n        ptsThreeYearsAgo: revisedPriorYearDirects.ptsThreeYearsAgo,\n        ptsTwoYearsAgo: revisedPriorYearDirects.ptsTwoYearsAgo,\n        ptsOneYearAgo: revisedPriorYearDirects.ptsOneYearAgo\n      });\n      this.set('baselineCurrentFutureDirectsRow', {\n        type: 'Baseline',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: revisedCurrentFutureYearsDirects.ptsCurrentYear,\n        ptsOneYearAhead: revisedCurrentFutureYearsDirects.ptsOneYearAhead,\n        ptsTwoYearsAhead: revisedCurrentFutureYearsDirects.ptsTwoYearsAhead,\n        ptsThreeYearsAhead: revisedCurrentFutureYearsDirects.ptsThreeYearsAhead,\n        ptsFourYearsAhead: revisedCurrentFutureYearsDirects.ptsFourYearsAhead,\n        ptsFiveYearsAhead: revisedCurrentFutureYearsDirects.ptsFiveYearsAhead,\n        ptsSixYearsAhead: revisedCurrentFutureYearsDirects.ptsSixYearsAhead,\n        ptsSevenYearsAhead: revisedCurrentFutureYearsDirects.ptsSevenYearsAhead\n      });\n      this.set('baselinePriorYearsIndirectsRow', {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsFiveYearsAgo: revisedPriorYearIndirects.ptsFiveYearsAgo,\n        ptsFourYearsAgo: revisedPriorYearIndirects.ptsFourYearsAgo,\n        ptsThreeYearsAgo: revisedPriorYearIndirects.ptsThreeYearsAgo,\n        ptsTwoYearsAgo: revisedPriorYearIndirects.ptsTwoYearsAgo,\n        ptsOneYearAgo: revisedPriorYearIndirects.ptsOneYearAgo\n      });\n      this.set('baselineCurrentFutureIndirectsRow', {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: revisedCurrentFutureYearsIndirects.ptsCurrentYear,\n        ptsOneYearAhead: revisedCurrentFutureYearsIndirects.ptsOneYearAhead,\n        ptsTwoYearsAhead: revisedCurrentFutureYearsIndirects.ptsTwoYearsAhead,\n        ptsThreeYearsAhead: revisedCurrentFutureYearsIndirects.ptsThreeYearsAhead,\n        ptsFourYearsAhead: revisedCurrentFutureYearsIndirects.ptsFourYearsAhead,\n        ptsFiveYearsAhead: revisedCurrentFutureYearsIndirects.ptsFiveYearsAhead,\n        ptsSixYearsAhead: revisedCurrentFutureYearsIndirects.ptsSixYearsAhead,\n        ptsSevenYearsAhead: revisedCurrentFutureYearsIndirects.ptsSevenYearsAhead\n      });\n      this.saveSettings();\n    },\n    actions: {\n      proposalDropdownOptionChanged: function proposalDropdownOptionChanged(sponsor, type, value) {\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearNih', value);\n                this.set('coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                this.set('coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('coreProposalsSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearNih', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearNih', value);\n                this.set('coreProposalsSettingsTransitionNextYearOtherFed', value);\n                this.set('coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                this.set('coreProposalsSettingsTransitionNextYearNonFed', value);\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearOtherFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearNonFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor5', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor6', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor7', value);\n                break;\n            }\n\n            break;\n        }\n\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      conversionRatiosDropdownOptionChanged: function conversionRatiosDropdownOptionChanged(sponsor, type, value) {\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNih', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNih', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearNih', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor5', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor6', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor7', value);\n                break;\n            }\n\n            break;\n        }\n\n        Ember.run.debounce(this, this.saveSettings, 250);\n      },\n      proposalFutureOptionChanged: function proposalFutureOptionChanged(sponsor, yearsAhead, isDirects, value) {\n        var formattedSponsor = null;\n        var formattedYearsAhead = null;\n        var formattedMoneyType = isDirects ? 'Directs' : 'Indirects';\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            formattedSponsor = 'Nih';\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            formattedSponsor = 'FedFlowThru';\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            formattedSponsor = 'OtherFed';\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            formattedSponsor = 'NonFed';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            formattedSponsor = 'Sponsor5';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            formattedSponsor = 'Sponsor6';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            formattedSponsor = 'Sponsor7';\n            break;\n        }\n\n        switch (yearsAhead) {\n          case 1:\n            formattedYearsAhead = 'oneYearAhead';\n            break;\n\n          case 2:\n            formattedYearsAhead = 'twoYearsAhead';\n            break;\n\n          case 3:\n            formattedYearsAhead = 'threeYearsAhead';\n            break;\n\n          case 4:\n            formattedYearsAhead = 'fourYearsAhead';\n            break;\n        }\n\n        if (formattedSponsor && formattedYearsAhead) {\n          //Set value to null if 0 so the check for showingOfficialAssumptions works\n          this.set(\"coreProposalsSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value ? value : null);\n          Ember.run.debounce(this, this.saveSettings, 250);\n        }\n      },\n      conversionRatiosFutureOptionChanged: function conversionRatiosFutureOptionChanged(sponsor, yearsAhead, isDirects, value) {\n        var formattedSponsor = null;\n        var formattedYearsAhead = null;\n        var formattedMoneyType = isDirects ? 'Directs' : 'Indirects';\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            formattedSponsor = 'Nih';\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            formattedSponsor = 'FedFlowThru';\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            formattedSponsor = 'OtherFed';\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            formattedSponsor = 'NonFed';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            formattedSponsor = 'Sponsor5';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            formattedSponsor = 'Sponsor6';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            formattedSponsor = 'Sponsor7';\n            break;\n        }\n\n        switch (yearsAhead) {\n          case 1:\n            formattedYearsAhead = 'oneYearAhead';\n            break;\n\n          case 2:\n            formattedYearsAhead = 'twoYearsAhead';\n            break;\n\n          case 3:\n            formattedYearsAhead = 'threeYearsAhead';\n            break;\n\n          case 4:\n            formattedYearsAhead = 'fourYearsAhead';\n            break;\n        }\n\n        if (formattedSponsor && formattedYearsAhead) {\n          //Set value to null if 0 so the check for showingOfficialAssumptions works\n          this.set(\"coreConversionRatiosSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value ? value : null);\n          Ember.run.debounce(this, this.saveSettings, 250);\n        }\n      },\n      grantTypeOptionChanged: function grantTypeOptionChanged(value) {\n        this.set('selectedGrantType', value);\n        this.saveSettings(); //Reset the baseline for all except when showing recruitment\n\n        if (value !== GRANT_TYPE_ALL_RECRUITMENT) {\n          this.setBaseline();\n        }\n      },\n      projectionFilterOptionChanged: function projectionFilterOptionChanged(option) {\n        var _this2 = this;\n\n        if (option.value === 'All Sectors') {\n          this.store.query('projection', {}).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n\n              _this2.setBaseline();\n            }\n          });\n        } else if (option.isGroupName) {\n          this.store.query('projection', {\n            'sector': option.value\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n\n              _this2.setBaseline();\n            }\n          });\n        } else {\n          this.store.query('projection', {\n            'department_id': option.id\n          }).then(function (projections) {\n            if (projections.content.length > 0) {\n              var projection = projections.objectAt(0);\n\n              _this2.set('model.projection', projection);\n\n              _this2.setBaseline();\n            }\n          });\n        }\n\n        this.set('selectedFilterOption', option);\n        this.saveSettings();\n      },\n      resetToOfficialAssumptions: function resetToOfficialAssumptions() {\n        this.setProjectionsToOfficialAssumptions();\n      },\n      setBaselineButtonPressed: function setBaselineButtonPressed() {\n        this.setBaseline();\n      },\n      selectSponsor: function selectSponsor(sponsor) {\n        this.set('selectedSponsor', sponsor); // Recruitment is not broken down by sponsor type\n\n        if (this.selectedGrantType === GRANT_TYPE_ALL_RECRUITMENT) {\n          this.set('selectedGrantType', GRANT_TYPE_ALL);\n        } //Reset the baseline\n\n\n        this.setBaseline();\n      },\n      toggleProjectionsHelp: function toggleProjectionsHelp() {\n        this.toggleProperty('isShowingProjectionsHelp');\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/recruitment\", [\"exports\", \"b3i-analytics-web-app/mixins/recruitment-calculations\", \"b3i-analytics-web-app/utils/format-percentage\", \"accounting/format-money\", \"accounting/format-number\", \"b3i-analytics-web-app/mixins/open-print-dialog\", \"b3i-analytics-web-app/mixins/permissions-check\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _recruitmentCalculations, _formatPercentage, _formatMoney, _formatNumber, _openPrintDialog, _permissionsCheck, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\n  function _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\n  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RecruitmentController = (_dec = Ember.inject.service, _dec2 = Ember.inject.service('current-user'), _dec3 = Ember.computed('recruitment', 'yearsArray', 'attritionJuniorCounts', 'recruitsJuniorCounts', 'performanceProposalJunior', 'performanceHitRateJunior'), _dec4 = Ember.computed('recruitment', 'yearsArray', 'attritionSeniorCounts', 'performanceProposalSenior', 'performanceHitRateSenior'), _dec5 = Ember.computed('yearsArray', 'proposalsIndirectsJunior', 'proposalsDirectsJunior', 'proposalsDirectsSenior', 'proposalsIndirectsSenior', 'selectedCategory'), _dec6 = Ember.computed('yearsArray', 'successesIndirectsJunior', 'successesDirectsJunior', 'successesDirectSenior', 'successesIndirectsSenior', 'selectedCategory'), _dec7 = Ember.computed('yearsArray', 'netIndirectCostRecoveryJunior', 'netDirectCostRecoveryJunior', 'netIndirectCostRecoverySenior', 'netDirectCostRecoverySenior', 'selectedCategory'), _dec8 = Ember.computed('yearsArray', 'projectedSpendingOneClassDirectsJunior', 'projectedSpendingOneClassIndirectsJunior', 'earliestClassJunior', 'projectedSpendingOneClassDirectsSenior', 'projectedSpendingOneClassIndirectsSenior', 'earliestClassSenior', 'selectedCategory'), _dec9 = Ember.computed('yearsArray', 'cumulativeIndirectCostRecoveryJunior', 'cumulativeInvestmentJunior', 'cumulativeCashFlowJunior', 'cumulativeIndirectCostRecoverySenior', 'cumulativeInvestmentSenior', 'cumulativeCashFlowSenior', 'selectedCategory'), _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(RecruitmentController, _Ember$Controller$ext);\n\n    var _super = _createSuper(RecruitmentController);\n\n    function RecruitmentController() {\n      var _this;\n\n      _classCallCheck(this, RecruitmentController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"topGraphsYearsAhead\", 7);\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedDeductAttrition\", 'Yes');\n\n      _defineProperty(_assertThisInitialized(_this), \"selectedCategory\", 'Junior');\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(RecruitmentController, [{\n      key: \"calculateMultipleYearCount\",\n      value: function calculateMultipleYearCount(avg) {\n        // Calculate counts for 5 years\n        var result = avg * 5; //Return 1 if the count is greater than 0 but less than 1\n\n        if (result > 0 && result < 1) {\n          return 1;\n        } else {\n          return Math.round(result);\n        }\n      }\n    }, {\n      key: \"getRecruitRow\",\n      value: function getRecruitRow(description, sponsorType, isJunior, hasRecruitment) {\n        // This will only happen when the school has not loaded their data yet\n        if (!hasRecruitment) {\n          return {\n            description: description,\n            count: 0,\n            multipleYearCount: this.calculateMultipleYearCount(0),\n            hitRate: 0,\n            avg: (0, _formatMoney.default)(0)\n          };\n        }\n\n        var category = isJunior ? 'Junior' : 'Senior';\n        return {\n          description: description,\n          count: this.get(\"proposal\".concat(sponsorType).concat(category, \"AvgCount\")).toFixed(2),\n          multipleYearCount: this.calculateMultipleYearCount(this.get(\"proposal\".concat(sponsorType).concat(category, \"AvgCount\"))),\n          hitRate: \"\".concat((0, _formatPercentage.default)(this.get(\"modifiedHitRate\".concat(sponsorType).concat(category))), \"%\"),\n          avg: (0, _formatMoney.default)(this.get(\"recruitment.proposal\".concat(sponsorType).concat(category, \"AvgTotal\")))\n        };\n      }\n    }, {\n      key: \"updateRecruitmentData\",\n      value: function updateRecruitmentData(isJunior) {\n        //Recalculate recruitment data to update data inputs\n        if (isJunior) {\n          this.notifyPropertyChange('juniorFacultyRecruitment');\n        } else {\n          this.notifyPropertyChange('seniorFacultyRecruitment');\n        }\n      }\n    }, {\n      key: \"calculateTotalRow\",\n      value: function calculateTotalRow(recruitRows) {\n        var totalCounts = 0;\n        var totalMultipleYearCounts = 0;\n        var fundedCount = 0;\n        recruitRows.forEach(function (row) {\n          totalCounts += parseFloat(row.count);\n          totalMultipleYearCounts += row.multipleYearCount;\n          fundedCount += parseFloat(row.hitRate) / 100;\n        }); // Divide by the 5 sponsor categories\n        // 3 new sponsors added, making the divisor 5 + 3 = 8\n\n        var averageHitRate = fundedCount / 8;\n        return {\n          description: 'Total',\n          count: totalCounts.toFixed(2),\n          multipleYearCount: totalMultipleYearCounts,\n          hitRate: \"\".concat((0, _formatPercentage.default)(averageHitRate), \"%\")\n        };\n      }\n    }, {\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(RecruitmentController.prototype), \"init\", this).apply(this, arguments); //Set array for each future year\n\n\n        var yearsAhead = this.yearsAhead;\n        var currentYear = this.get('year.fiscalYear');\n        var yearsArray = Array(yearsAhead).fill(0).map(function (_, i) {\n          return currentYear + i;\n        });\n        this.set('yearsArray', yearsArray);\n        var topGraphsYearsAhead = this.topGraphsYearsAhead;\n        var topGraphsYearsArray = Array(topGraphsYearsAhead).fill(0).map(function (_, i) {\n          return currentYear + i;\n        });\n        this.set('topGraphsYearsArray', topGraphsYearsArray); //Load recruitment plan\n\n        var recruitmentPlan = this.get('currentUser.team.recruitmentPlan');\n\n        if (recruitmentPlan) {\n          for (var key in recruitmentPlan) {\n            if (recruitmentPlan.hasOwnProperty(key)) {\n              this.set(key, recruitmentPlan[key]);\n            }\n          }\n        } else {\n          //Setup the counts arrays\n          this.set('recruitsJuniorCounts', Array(yearsAhead).fill(0));\n          this.set('recruitsSeniorCounts', Array(yearsAhead).fill(0));\n          this.set('attritionJuniorCounts', Array(yearsAhead).fill(0));\n          this.set('attritionSeniorCounts', Array(yearsAhead).fill(0));\n        }\n\n        this.updateRecruitCounts(this.recruitsJuniorCounts, true);\n        this.updateRecruitCounts(this.recruitsSeniorCounts, false);\n        this.updateAttritionCounts(this.attritionJuniorCounts, true);\n        this.updateAttritionCounts(this.attritionSeniorCounts, false); // setup dropdowns\n\n        this.set('deductAttritionOptions', ['Yes', 'No']);\n        this.set('categoryOptions', ['Junior', 'Senior', 'All']); // define datalabels\n\n        var defaultDataLabels = {\n          display: 'overlap',\n          clip: true,\n          align: 'start',\n          anchor: 'end',\n          padding: '-10',\n          font: {\n            family: 'Lato',\n            size: 9,\n            weight: 900,\n            color: '#323539'\n          }\n        }; // region chartOptions\n\n        var baseChartOptions = {\n          scales: {\n            yAxes: [{\n              stacked: true,\n              ticks: {\n                display: false\n              },\n              gridLines: {\n                drawBorder: false\n              }\n            }],\n            xAxes: [{\n              stacked: true,\n              maxBarThickness: 25,\n              gridLines: {\n                display: false\n              },\n              ticks: {\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              }\n            }]\n          },\n          legend: {\n            position: 'top',\n            reverse: true,\n            labels: {\n              boxWidth: 12,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontSize: 12,\n              fontStyle: 'bold',\n              reverse: false,\n              usePointStyle: false,\n              fillStyle: '#FFFFFF'\n            }\n          },\n          tooltips: {\n            backgroundColor: '#FAFBFB',\n            bodyFontColor: '#416477',\n            bodyFontFamily: 'Lato',\n            bodySpacing: 6,\n            enabled: true,\n            intersect: true,\n            footerMarginBottom: 20,\n            mode: 'index',\n            multiKeyBackground: '#FAFBFB',\n            position: 'average',\n            titleFontColor: '#416477',\n            titleMarginBottom: 12,\n            xPadding: 12,\n            yPadding: 12\n          },\n          title: {\n            display: true,\n            wrap: true\n          },\n          plugins: {\n            datalabels: {\n              display: true\n            }\n          }\n        };\n        var cumulativeChartOptions = {\n          scales: {\n            yAxes: [{\n              ticks: {\n                display: false,\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              },\n              gridLines: {\n                display: true,\n                drawTicks: true,\n                zeroLineWidth: 2\n              }\n            }],\n            xAxes: [{\n              stacked: false,\n              ticks: {\n                autoSkip: false,\n                min: 1,\n                max: 12,\n                stepSize: 1,\n                fontColor: '#323539',\n                fontFamily: 'Lato',\n                fontStyle: 'bold'\n              },\n              gridLines: {\n                display: true\n              }\n            }]\n          },\n          legend: {\n            position: 'top',\n            reverse: false,\n            labels: {\n              boxWidth: 12,\n              fontColor: '#323539',\n              fontFamily: 'Lato',\n              fontSize: 12,\n              fontStyle: 'bold',\n              reverse: true,\n              usePointStyle: false,\n              fillStyle: '#FFFFFF'\n            }\n          },\n          tooltips: {\n            backgroundColor: '#FAFBFB',\n            bodyFontColor: '#416477',\n            bodyFontFamily: 'Lato',\n            bodySpacing: 6,\n            enabled: false,\n            intersect: false,\n            footerMarginBottom: 20,\n            mode: 'index',\n            multiKeyBackground: '#FAFBFB',\n            position: 'nearest',\n            titleFontColor: '#416477',\n            titleMarginBottom: 12,\n            xPadding: 12,\n            yPadding: 12\n          },\n          title: {\n            display: true,\n            wrap: true\n          },\n          plugins: {\n            datalabels: {\n              display: true\n            }\n          }\n        }; // build out default props\n\n        Chart.defaults.global.maintainAspectRatio = false; //eslint-disable-line\n\n        var totalProposalOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var totalSuccessesOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var totalDirectIndirectsOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var directsIndirectsPerRecruitOptions = JSON.parse(JSON.stringify(baseChartOptions));\n        var cumulativeFinancialImpactOptions = JSON.parse(JSON.stringify(cumulativeChartOptions)); // build out datalabel\n\n        var totalProposalDataLabelOptions = JSON.parse(JSON.stringify(defaultDataLabels));\n        var totalSuccessesDataLabelOptions = JSON.parse(JSON.stringify(defaultDataLabels));\n        var totalDirectIndirectsDataLabelOptions = JSON.parse(JSON.stringify(defaultDataLabels));\n        var directsIndirectsPerRecruitDataLabelOptions = JSON.parse(JSON.stringify(defaultDataLabels));\n        var cumulativeFinancialImpactDataLabelOptions = JSON.parse(JSON.stringify(defaultDataLabels)); // update cumulative financial data labels\n\n        cumulativeFinancialImpactDataLabelOptions.align = 'top';\n\n        cumulativeFinancialImpactDataLabelOptions.formatter = function (value) {\n          return value.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n        };\n\n        cumulativeFinancialImpactDataLabelOptions.anchor = function (value) {\n          if (value.dataset.data[value.dataIndex] < 0) return 'start';\n          return 'end';\n        };\n\n        cumulativeFinancialImpactDataLabelOptions.align = function (value) {\n          if (value.dataset.data[value.dataIndex] < 0) return 'start';\n          return 'end';\n        }; // add titles\n\n\n        totalProposalOptions.title.text = 'Total Proposals (m)';\n        totalSuccessesOptions.title.text = 'Total Successess (m)';\n        totalDirectIndirectsOptions.title.text = 'Total Directs & Indirects (m)';\n        directsIndirectsPerRecruitOptions.title.text = 'Directs & Indirects per Recruit (m)';\n        cumulativeFinancialImpactOptions.title.text = 'Cumulative Financial Impact (m)';\n        var graphLabelCallbacks = {\n          label: function label(tooltipItem, data) {\n            var label = data.datasets[tooltipItem.datasetIndex].label || '';\n\n            if (label) {\n              label += ': ';\n            }\n\n            label += \"$\".concat(tooltipItem.yLabel);\n            return label;\n          }\n        };\n\n        var tooltipsItemSort = function tooltipsItemSort(a, b) {\n          return b.datasetIndex - a.datasetIndex;\n        };\n\n        totalProposalOptions.tooltips.callbacks = graphLabelCallbacks;\n        totalProposalOptions.tooltips.itemSort = tooltipsItemSort;\n        totalSuccessesOptions.tooltips.callbacks = graphLabelCallbacks;\n        totalSuccessesOptions.tooltips.itemSort = tooltipsItemSort;\n        totalDirectIndirectsOptions.tooltips.callbacks = graphLabelCallbacks;\n        totalDirectIndirectsOptions.tooltips.itemSort = tooltipsItemSort;\n        directsIndirectsPerRecruitOptions.tooltips.callbacks = graphLabelCallbacks;\n        directsIndirectsPerRecruitOptions.tooltips.itemSort = tooltipsItemSort; // add datalabels\n\n        totalProposalOptions.plugins.datalabels = totalProposalDataLabelOptions;\n        totalSuccessesOptions.plugins.datalabels = totalSuccessesDataLabelOptions;\n        totalDirectIndirectsOptions.plugins.datalabels = totalDirectIndirectsDataLabelOptions;\n        directsIndirectsPerRecruitOptions.plugins.datalabels = directsIndirectsPerRecruitDataLabelOptions;\n        cumulativeFinancialImpactOptions.plugins.datalabels = cumulativeFinancialImpactDataLabelOptions; // append to controller\n\n        this.set('totalProposalOptions', totalProposalOptions);\n        this.set('totalSuccessesOptions', totalSuccessesOptions);\n        this.set('totalDirectIndirectsOptions', totalDirectIndirectsOptions);\n        this.set('directsIndirectsPerRecruitOptions', directsIndirectsPerRecruitOptions);\n        this.set('cumulativeFinancialImpactOptions', cumulativeFinancialImpactOptions); //  endregion\n        //  endregion\n      }\n    }, {\n      key: \"getGraphData\",\n      value: function getGraphData(prefix, category) {\n        if (category === 'All') {\n          return this.sumArrays(this.get(\"\".concat(prefix, \"Junior\")), this.get(\"\".concat(prefix, \"Senior\")));\n        }\n\n        return this.get(\"\".concat(prefix).concat(category));\n      }\n    }, {\n      key: \"saveAndUpdateSetting\",\n      value: function saveAndUpdateSetting(attributeName, data, isJunior) {\n        this.set(attributeName, data);\n        this.updateRecruitmentData(isJunior);\n      }\n    }, {\n      key: \"updateRecruitment\",\n      value: function updateRecruitment(index, isAttrition, isJunior, input) {\n        var data = parseInt(input.currentTarget.value);\n\n        if (isAttrition) {\n          var attributeName = isJunior ? 'attritionJuniorCounts' : 'attritionSeniorCounts';\n          Ember.set(this.get(attributeName), index.toString(), data);\n          this.updateAttritionCounts(this.get(attributeName), isJunior);\n        } else {\n          var _attributeName = isJunior ? 'recruitsJuniorCounts' : 'recruitsSeniorCounts';\n\n          Ember.set(this.get(_attributeName), index.toString(), data);\n          this.updateRecruitCounts(this.get(_attributeName), isJunior);\n        }\n\n        this.updateRecruitmentData(isJunior); //debounce(this, this.saveSettings, 250);\n      }\n    }, {\n      key: \"updateAvgComp\",\n      value: function updateAvgComp(isJunior, input) {\n        var data = parseInt(input.currentTarget.value.replace(/,/g, ''));\n        var attributeName = isJunior ? 'averageTotalCompensationJunior' : 'averageTotalCompensationSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updateCompCoverageStartUp\",\n      value: function updateCompCoverageStartUp(isJunior, value) {\n        var data = parseInt(value) / 100;\n        var attributeName = isJunior ? 'compensationCoverageStartUpJunior' : 'compensationCoverageStartUpSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updateCompCoverageAfter\",\n      value: function updateCompCoverageAfter(isJunior, value) {\n        var data = parseInt(value) / 100;\n        var attributeName = isJunior ? 'compensationCoverageAfterJunior' : 'compensationCoverageAfterSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updateStartUp\",\n      value: function updateStartUp(isJunior, input) {\n        var data = parseInt(input.currentTarget.value.replace(/,/g, ''));\n        var attributeName = isJunior ? 'startupPackageAmountJunior' : 'startupPackageAmountSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updateStartUpSpendYears\",\n      value: function updateStartUpSpendYears(isJunior, value) {\n        var data = parseInt(value);\n        var attributeName = isJunior ? 'startUpSpendYearsJunior' : 'startUpSpendYearsSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updatePerformanceProposals\",\n      value: function updatePerformanceProposals(isJunior, value) {\n        var data = parseInt(value) / 100;\n        var attributeName = isJunior ? 'performanceProposalJunior' : 'performanceProposalSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"updatePerformanceHitRate\",\n      value: function updatePerformanceHitRate(isJunior, value) {\n        var data = parseInt(value) / 100;\n        var attributeName = isJunior ? 'performanceHitRateJunior' : 'performanceHitRateSenior';\n        this.saveAndUpdateSetting(attributeName, data, isJunior);\n      }\n    }, {\n      key: \"savePlan\",\n      value: function savePlan() {\n        var _this2 = this;\n\n        var plan = {\n          'startUpSpendYearsJunior': this.startUpSpendYearsJunior,\n          'startupPackageAmountJunior': this.startupPackageAmountJunior,\n          'averageTotalCompensationJunior': this.averageTotalCompensationJunior,\n          'compensationCoverageAfterJunior': this.compensationCoverageAfterJunior,\n          'compensationCoverageStartUpJunior': this.compensationCoverageStartUpJunior,\n          'performanceProposalJunior': this.performanceProposalJunior,\n          'performanceHitRateJunior': this.performanceHitRateJunior,\n          'startUpSpendYearsSenior': this.startUpSpendYearsSenior,\n          'startupPackageAmountSenior': this.startupPackageAmountSenior,\n          'averageTotalCompensationSenior': this.averageTotalCompensationSenior,\n          'compensationCoverageAfterSenior': this.compensationCoverageAfterSenior,\n          'compensationCoverageStartUpSenior': this.compensationCoverageStartUpSenior,\n          'performanceProposalSenior': this.performanceProposalSenior,\n          'performanceHitRateSenior': this.performanceHitRateSenior,\n          'recruitsJuniorCounts': this.recruitsJuniorCounts,\n          'recruitsSeniorCounts': this.recruitsSeniorCounts,\n          'attritionJuniorCounts': this.attritionJuniorCounts,\n          'attritionSeniorCounts': this.attritionSeniorCounts\n        };\n        var team = this.get('currentUser.team');\n        team.set('recruitmentPlan', plan);\n        this.set('saveRecruitmentSuccessMessage', null);\n        this.set('saveRecruitmentError', null);\n        return team.save().then(function () {\n          _this2.set('saveRecruitmentSuccessMessage', 'Saved recruitment plan successfully!');\n        }).catch(function (response) {\n          _this2.set('saveRecruitmentError', _errors.default.mapResponseErrors(response)[0]);\n        });\n      }\n    }, {\n      key: \"selectDeductAttrition\",\n      value: function selectDeductAttrition(option) {\n        if (option === 'No') {\n          this.set('previousAttritionJunior', this.attritionJuniorCounts);\n          this.set('previousAttritionSenior', this.attritionJuniorCounts);\n          this.set('attritionJuniorCounts', Array(this.yearsAhead).fill(0));\n          this.set('attritionSeniorCounts', Array(this.yearsAhead).fill(0));\n        } else {\n          if (this.previousAttritionJunior) {\n            this.set('attritionJuniorCounts', this.previousAttritionJunior);\n          }\n\n          if (this.previousAttritionSenior) {\n            this.set('attritionSeniorCounts', this.previousAttritionSenior);\n          }\n        }\n\n        this.updateAttritionCounts(this.attritionJuniorCounts, true);\n        this.updateAttritionCounts(this.attritionSeniorCounts, false);\n      }\n    }, {\n      key: \"selectCategory\",\n      value: function selectCategory(option) {\n        this.set('selectedCategory', option);\n      }\n    }, {\n      key: \"juniorFacultyRecruitment\",\n      get: function get() {\n        //We only want the inputs to be the first 6 years while the graphs can show more years.\n        var recruits = JSON.parse(JSON.stringify(this.recruitsJuniorCounts)).splice(0, 6);\n        var attrition = JSON.parse(JSON.stringify(this.attritionJuniorCounts)).splice(0, 6);\n        var yearsAhead = JSON.parse(JSON.stringify(this.yearsArray)).splice(0, 6);\n        var recruitRows;\n        var hasRecruitment = this.recruitment !== null;\n\n        if (this.currentUser.isSponsorTypeNihTraining) {\n          recruitRows = [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih, \" K/T Type\"), 'Nihk', true, hasRecruitment))] : [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih, \" All Other Types\"), 'Nihr', true, hasRecruitment))] : [];\n          this.currentUser.team.is_other_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeOtherFed, 'OtherFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_fft ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeFFT, 'Fft', true, hasRecruitment))] : [];\n          this.currentUser.team.is_non_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeNonFed, 'NonFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor5 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor5, 'Sponsor5', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor6 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor6, 'Sponsor6', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor7 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor7, 'Sponsor7', true, hasRecruitment))] : [];\n        } else {\n          recruitRows = [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih), 'Nihr', true, hasRecruitment))] : [];\n          this.currentUser.team.is_other_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeOtherFed, 'OtherFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_fft ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeFFT, 'Fft', true, hasRecruitment))] : [];\n          this.currentUser.team.is_non_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeNonFed, 'NonFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor5 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor5, 'Sponsor5', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor6 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor6, 'Sponsor6', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor7 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor7, 'Sponsor7', true, hasRecruitment))] : [];\n        }\n\n        var data = {\n          name: 'Junior Faculty Recruitment',\n          next6Years: yearsAhead,\n          recruitInputRows: [{\n            label: 'New Recruits',\n            values: recruits\n          }, {\n            label: 'Attrition',\n            values: attrition\n          }],\n          recruitRows: recruitRows,\n          compensation: {\n            totalCompensation: this.averageTotalCompensationJunior,\n            compensationCoverageChoices: ['0%', '10%', '20%', '30%', '40%', '50%', '60%', '70%', '80%', '90%', '100%'],\n            startUpCoverage: \"\".concat(Math.round(this.compensationCoverageStartUpJunior * 100), \"%\"),\n            afterCoverage: \"\".concat(Math.round(this.compensationCoverageAfterJunior * 100), \"%\")\n          },\n          startUpPackages: {\n            amount: this.startupPackageAmountJunior,\n            spentOverChoices: ['1 year', '2 years', '3 years', '4 years', '5 years'],\n            spendYears: \"\".concat(this.startUpSpendYearsJunior, \" year\").concat(this.startUpSpendYearsJunior !== 1 ? 's' : '')\n          },\n          performanceIndex: {\n            proposals: \"\".concat(Math.round(this.performanceProposalJunior * 100), \"%\"),\n            hitRate: \"\".concat(Math.round(this.performanceHitRateJunior * 100), \"%\"),\n            choices: ['-50%', '-40%', '-30%', '-20%', '-10%', '0%', '10%', '20%', '30%', '40%', '50%', '60%', '70%', '80%', '90%', '100%']\n          }\n        };\n        data.recruitRows.push(this.calculateTotalRow(data.recruitRows));\n        return data;\n      }\n    }, {\n      key: \"seniorFacultyRecruitment\",\n      get: function get() {\n        //We only want the inputs to be the first 6 years while the graphs can show more years.\n        var recruits = JSON.parse(JSON.stringify(this.recruitsSeniorCounts)).splice(0, 6);\n        var attrition = JSON.parse(JSON.stringify(this.attritionSeniorCounts)).splice(0, 6);\n        var yearsAhead = JSON.parse(JSON.stringify(this.yearsArray)).splice(0, 6);\n        var recruitRows;\n        var hasRecruitment = this.recruitment !== null;\n\n        if (this.currentUser.isSponsorTypeNihTraining) {\n          recruitRows = [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih, \" K/T Type\"), 'Nihk', false, hasRecruitment))] : [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih, \" All Other Types\"), 'Nihr', false, hasRecruitment))] : [];\n          this.currentUser.team.is_other_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeOtherFed, 'OtherFed', false, hasRecruitment))] : [];\n          this.currentUser.team.is_fft ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeFFT, 'Fft', false, hasRecruitment))] : [];\n          this.currentUser.team.is_non_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeNonFed, 'NonFed', false, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor5 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor5, 'Sponsor5', false, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor6 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor6, 'Sponsor6', false, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor7 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor7, 'Sponsor7', false, hasRecruitment))] : [];\n        } else {\n          recruitRows = [];\n          this.currentUser.team.is_nih ? [recruitRows.push(this.getRecruitRow(\"\".concat(this.currentUser.sponsorTypeNih), 'Nihr', true, hasRecruitment))] : [];\n          this.currentUser.team.is_other_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeOtherFed, 'OtherFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_fft ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeFFT, 'Fft', true, hasRecruitment))] : [];\n          this.currentUser.team.is_non_fed ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeNonFed, 'NonFed', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor5 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor5, 'Sponsor5', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor6 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor6, 'Sponsor6', true, hasRecruitment))] : [];\n          this.currentUser.team.is_sponsor7 ? [recruitRows.push(this.getRecruitRow(this.currentUser.sponsorTypeSponsor7, 'Sponsor7', true, hasRecruitment))] : [];\n        }\n\n        var data = {\n          name: 'Senior Faculty Recruitment',\n          next6Years: yearsAhead,\n          recruitInputRows: [{\n            label: 'New Recruits',\n            values: recruits\n          }, {\n            label: 'Attrition',\n            values: attrition\n          }],\n          recruitRows: recruitRows,\n          compensation: {\n            totalCompensation: this.averageTotalCompensationSenior,\n            compensationCoverageChoices: ['0%', '10%', '20%', '30%', '40%', '50%', '60%', '70%', '80%', '90%', '100%'],\n            startUpCoverage: \"\".concat(Math.round(this.compensationCoverageStartUpSenior * 100), \"%\"),\n            afterCoverage: \"\".concat(Math.round(this.compensationCoverageAfterSenior * 100), \"%\")\n          },\n          startUpPackages: {\n            amount: this.startupPackageAmountSenior,\n            spentOverChoices: ['1 year', '2 years', '3 years', '4 years', '5 years'],\n            spendYears: \"\".concat(this.startUpSpendYearsSenior, \" year\").concat(this.startUpSpendYearsSenior !== 1 ? 's' : '')\n          },\n          performanceIndex: {\n            proposals: \"\".concat(Math.round(this.performanceProposalSenior * 100), \"%\"),\n            hitRate: \"\".concat(Math.round(this.performanceHitRateSenior * 100), \"%\"),\n            choices: ['-50%', '-40%', '-30%', '-20%', '-10%', '0%', '10%', '20%', '30%', '40%', '50%', '60%', '70%', '80%', '90%', '100%']\n          }\n        };\n        data.recruitRows.push(this.calculateTotalRow(data.recruitRows));\n        return data;\n      }\n    }, {\n      key: \"totalProposalData\",\n      get: function get() {\n        var yearsArray = this.topGraphsYearsArray;\n        var category = this.selectedCategory;\n        var formattedIndirects = this.getGraphData('proposalsIndirects', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        var formattedDirects = this.getGraphData('proposalsDirects', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        return {\n          labels: yearsArray,\n          datasets: [{\n            label: 'Indirects',\n            data: formattedIndirects,\n            backgroundColor: '#F1BE48',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Directs',\n            data: formattedDirects,\n            backgroundColor: '#71C5E8',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }]\n        };\n      }\n    }, {\n      key: \"totalSuccessesData\",\n      get: function get() {\n        var yearsArray = this.topGraphsYearsArray;\n        var category = this.selectedCategory;\n        var formattedIndirects = this.getGraphData('successesIndirects', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        var formattedDirects = this.getGraphData('successesDirects', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        return {\n          labels: yearsArray,\n          datasets: [{\n            label: 'Indirects',\n            data: formattedIndirects,\n            backgroundColor: '#F1BE48',\n            borderColor: '#F1BE48',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Directs',\n            data: formattedDirects,\n            backgroundColor: '#71C5E8',\n            borderColor: '#71C5E8',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }]\n        };\n      }\n    }, {\n      key: \"totalDirectsIndirectsData\",\n      get: function get() {\n        var yearsArray = this.topGraphsYearsArray;\n        var category = this.selectedCategory;\n        var formattedIndirects = this.getGraphData('netIndirectCostRecovery', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        var formattedDirects = this.getGraphData('netDirectCostRecovery', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        return {\n          labels: yearsArray,\n          datasets: [{\n            label: 'Indirects',\n            data: formattedIndirects,\n            backgroundColor: '#F1BE48',\n            borderColor: '#F1BE48',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Directs',\n            data: formattedDirects,\n            backgroundColor: '#71C5E8',\n            borderColor: '#71C5E8',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }]\n        };\n      }\n    }, {\n      key: \"directsIndirectsPerRecruitData\",\n      get: function get() {\n        var yearsArray = this.topGraphsYearsArray;\n        var category = this.selectedCategory;\n        var recruits = 0;\n\n        if (category === 'Junior') {\n          recruits = this.recruitsForYear(this.earliestClassIndexJunior + 1, true);\n        } else if (category === 'Senior') {\n          recruits = this.recruitsForYear(this.earliestClassIndexSenior + 1, false);\n        } else {\n          recruits = this.recruitsForYear(this.earliestClassIndexJunior + 1, true) + this.recruitsForYear(this.earliestClassIndexSenior + 1, false);\n        }\n\n        var formattedDirects = this.getGraphData('projectedSpendingOneClassDirects', category).map(function (value) {\n          if (recruits === 0) {\n            return 0;\n          }\n\n          var result = value / recruits;\n          return (result / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        var formattedIndirects = this.getGraphData('projectedSpendingOneClassIndirects', category).map(function (value) {\n          if (recruits === 0) {\n            return 0;\n          }\n\n          var result = value / recruits;\n          return (result / 1000).toFixed(1);\n        }).splice(0, this.topGraphsYearsAhead);\n        return {\n          labels: yearsArray,\n          datasets: [{\n            label: 'Indirects',\n            data: formattedIndirects,\n            backgroundColor: '#F1BE48',\n            borderColor: '#F1BE48',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Directs',\n            data: formattedDirects,\n            backgroundColor: '#71C5E8',\n            borderColor: '#71C5E8',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }]\n        };\n      }\n    }, {\n      key: \"cumulativeFinancialImpactData\",\n      get: function get() {\n        var yearsArray = this.yearsArray;\n        var category = this.selectedCategory;\n        var formattedIndirects = this.getGraphData('cumulativeIndirectCostRecovery', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        });\n        var formattedInvestments = this.getGraphData('cumulativeInvestment', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        });\n        var formattedCashFlow = this.getGraphData('cumulativeCashFlow', category).map(function (value) {\n          return (value / 1000).toFixed(1);\n        });\n        var chartData = {\n          labels: yearsArray,\n          datasets: [{\n            label: 'Cumulative Indirects',\n            data: formattedIndirects,\n            backgroundColor: '#71C5E8',\n            borderColor: '#71C5E8',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Cumulative Investment',\n            data: formattedInvestments,\n            backgroundColor: '#F1BE48',\n            borderColor: '#F1BE48',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }, {\n            label: 'Cumulative Net Cash Flow',\n            data: formattedCashFlow,\n            backgroundColor: '#889CAC',\n            borderColor: '#889CAC',\n            datalabels: {\n              display: true,\n              color: 'rgba(0,0,0,0.9)',\n              formatter: function formatter(value) {\n                return (0, _formatNumber.default)(value, 1);\n              }\n            }\n          }]\n        };\n        var data = chartData.datasets.map(function (dataset) {\n          return dataset.data;\n        }).flat(); //Get the absolute value so the x-axis will always be centered\n\n        var absData = data.map(function (num) {\n          return Math.abs(num);\n        }); //Give some space to the graph\n\n        var factor = 0.2;\n        var max = Math.max.apply(Math, _toConsumableArray(absData)) * (1 + factor);\n        var options = this.cumulativeFinancialImpactOptions;\n        options.scales.yAxes[0].ticks.min = -max;\n        options.scales.yAxes[0].ticks.max = max; //Trying to update the options with an observer causes cumulative data to recalculate twice and never update\n        //eslint-disable-next-line ember/no-side-effects\n\n        this.set('cumulativeFinancialImpactOptions', options);\n        return chartData;\n      }\n    }]);\n\n    return RecruitmentController;\n  }(Ember.Controller.extend(_permissionsCheck.default, _recruitmentCalculations.default, _openPrintDialog.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"juniorFacultyRecruitment\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"juniorFacultyRecruitment\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"seniorFacultyRecruitment\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"seniorFacultyRecruitment\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"totalProposalData\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"totalProposalData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"totalSuccessesData\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"totalSuccessesData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"totalDirectsIndirectsData\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"totalDirectsIndirectsData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"directsIndirectsPerRecruitData\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"directsIndirectsPerRecruitData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"cumulativeFinancialImpactData\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"cumulativeFinancialImpactData\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateRecruitment\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateRecruitment\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateAvgComp\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateAvgComp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateCompCoverageStartUp\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateCompCoverageStartUp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateCompCoverageAfter\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateCompCoverageAfter\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateStartUp\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateStartUp\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updateStartUpSpendYears\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"updateStartUpSpendYears\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updatePerformanceProposals\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"updatePerformanceProposals\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"updatePerformanceHitRate\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"updatePerformanceHitRate\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"savePlan\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"savePlan\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectDeductAttrition\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectDeductAttrition\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectCategory\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectCategory\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RecruitmentController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/settings\", [\"exports\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/mixins/current-year-projections\", \"b3i-analytics-web-app/utils/original-sponsor-for-type\", \"b3i-analytics-web-app/constants/sponsor-types\"], function (_exports, _errors, _currentYearProjections, _originalSponsorForType, _sponsorTypes) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var MEGA_GRANT_DEF_5_LIFETIME = 'Over $5 million lifetime regardless of duration';\n  var MEGA_GRANT_DEF_1_YEARLY = 'Over $1 million per year regardless of duration';\n  var DROPDOWN_OPEN = \"open\";\n  var DROPDOWN_REVISED = \"revised\";\n  var DROPDOWN_TRANSITION = \"transition\";\n  var SPONSOR_TYPE_ALL = \"All Sponsor Types\";\n  var PRIORYEAR = \"Prior Yr\";\n  var STAY = \"Stay\";\n  var SettingsController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.computed('model.team.departmentsIncludeMega'), _dec4 = Ember.computed('model.team.megaGrantUseLifetimeValue'), _dec5 = Ember.computed('model.team.piIncludeMega'), _dec6 = Ember.computed('model.team.canExecutivesDownloadData'), _dec7 = Ember.computed('model.team.hasDirtyAttributes', 'hasOfficalProjectionsChanges', 'sponsorTypeNih.hasDirtyAttributes', 'sponsorTypeOtherFed.hasDirtyAttributes', 'sponsorTypeFFT.hasDirtyAttributes', 'sponsorTypeNonFed.hasDirtyAttributes', 'sponsorTypeSponsor5.hasDirtyAttributes', 'sponsorTypeSponsor6.hasDirtyAttributes', 'sponsorTypeSponsor7.hasDirtyAttributes'), _dec8 = Ember.computed('model.team.sponsors.[]'), _dec9 = Ember.computed('model.team.sponsors.[]'), _dec10 = Ember.computed('model.team.sponsors.[]'), _dec11 = Ember.computed('model.team.sponsors.[]'), _dec12 = Ember.computed('model.team.sponsors.[]'), _dec13 = Ember.computed('model.team.sponsors.[]'), _dec14 = Ember.computed('model.team.sponsors.[]'), _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, _dec21 = Ember._action, _dec22 = Ember._action, _dec23 = Ember._action, _dec24 = Ember._action, _dec25 = Ember._action, _dec26 = Ember._action, _dec27 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(SettingsController, _Ember$Controller$ext);\n\n    var _super = _createSuper(SettingsController);\n\n    function SettingsController() {\n      var _this2;\n\n      _classCallCheck(this, SettingsController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this2 = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"currentUser\", _descriptor, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"selectedSponsor\", SPONSOR_TYPE_ALL);\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"year\", _descriptor2, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"hasOfficalProjectionsChanges\", false);\n\n      return _this2;\n    }\n\n    _createClass(SettingsController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(SettingsController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('lookbackOptions', [{\n          value: 3,\n          display: '3 yrs'\n        }, {\n          value: 4,\n          display: '4 yrs'\n        }, {\n          value: 5,\n          display: '5 yrs'\n        }]);\n        this.set('proposalCountOrTotalOptions', ['count', 'total']);\n        this.set('proposalSponsorOptions', this.currentUser.sponsorlist);\n        this.set('departmentsIncludeMegaOptions', ['Yes', 'No']);\n        this.set('megaGrantDefinitionOptions', [MEGA_GRANT_DEF_5_LIFETIME, MEGA_GRANT_DEF_1_YEARLY]);\n        this.set('piIncludeMegaOptions', ['Yes', 'No']);\n        this.set('execDownloadOptions', ['Yes', 'No']);\n        this.set('assumptionOptions', ['Enabled', 'Disabled']);\n        var pellOptions = {\n          actions: ['bold', 'italic', 'underline', 'strikethrough', 'heading1', 'heading2', 'olist', 'ulist', 'line']\n        };\n        this.set('pellOptions', pellOptions);\n        this.set('coreProposalsSettingsProjectionsNih', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsOtherFed', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsFedFlowThru', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsNonFed', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsSponsor5', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsSponsor6', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreProposalsSettingsProjectionsSponsor7', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsNih', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsOtherFed', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsFedFlowThru', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsNonFed', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsSponsor5', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsSponsor6', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n        this.set('coreConversionRatiosSettingsProjectionsSponsor7', Ember.Object.create({\n          oneYearAheadChangeDirects: null,\n          oneYearAheadChangeIndirects: null,\n          twoYearsAheadChangeDirects: null,\n          twoYearsAheadChangeIndirects: null,\n          threeYearsAheadChangeDirects: null,\n          threeYearsAheadChangeIndirects: null,\n          fourYearsAheadChangeDirects: null,\n          fourYearsAheadChangeIndirects: null\n        }));\n      }\n    }, {\n      key: \"resetOfficialProjections\",\n      value: function resetOfficialProjections() {\n        if (!this.model.team.officialProjectionSettings) {\n          this.setProperties({\n            //region Core Conversion Ratios Default Settings\n            coreConversionRatiosSettingsOpenCurrentYearNih: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearNih: STAY,\n            coreConversionRatiosSettingsTransitionNextYearNih: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearOtherFed: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearOtherFed: STAY,\n            coreConversionRatiosSettingsTransitionNextYearOtherFed: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearFedFlowThru: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru: STAY,\n            coreConversionRatiosSettingsTransitionNextYearFedFlowThru: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearNonFed: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearNonFed: STAY,\n            coreConversionRatiosSettingsTransitionNextYearNonFed: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor5: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor5: STAY,\n            coreConversionRatiosSettingsTransitionNextYearSponsor5: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor6: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor6: STAY,\n            coreConversionRatiosSettingsTransitionNextYearSponsor6: STAY,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor7: PRIORYEAR,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor7: STAY,\n            coreConversionRatiosSettingsTransitionNextYearSponsor7: STAY,\n            coreProposalsSettingsOpenCurrentYearNih: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearNih: STAY,\n            coreProposalsSettingsTransitionNextYearNih: STAY,\n            coreProposalsSettingsOpenCurrentYearOtherFed: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearOtherFed: STAY,\n            coreProposalsSettingsTransitionNextYearOtherFed: STAY,\n            coreProposalsSettingsOpenCurrentYearFedFlowThru: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearFedFlowThru: STAY,\n            coreProposalsSettingsTransitionNextYearFedFlowThru: STAY,\n            coreProposalsSettingsOpenCurrentYearNonFed: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearNonFed: STAY,\n            coreProposalsSettingsTransitionNextYearNonFed: STAY,\n            coreProposalsSettingsOpenCurrentYearSponsor5: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearSponsor5: STAY,\n            coreProposalsSettingsTransitionNextYearSponsor5: STAY,\n            coreProposalsSettingsOpenCurrentYearSponsor6: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearSponsor6: STAY,\n            coreProposalsSettingsTransitionNextYearSponsor6: STAY,\n            coreProposalsSettingsOpenCurrentYearSponsor7: PRIORYEAR,\n            coreProposalsSettingsRevisedCurrentYearSponsor7: STAY,\n            coreProposalsSettingsTransitionNextYearSponsor7: STAY\n          });\n        } else {\n          if (this.oldOfficialProjections) this.set('model.team.officialProjectionSettings', this.oldOfficialProjections);\n          this.setProperties({\n            //region Core Conversion Ratios Default Settings\n            coreConversionRatiosSettingsOpenCurrentYearNih: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearNih,\n            coreConversionRatiosSettingsRevisedCurrentYearNih: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearNih,\n            coreConversionRatiosSettingsTransitionNextYearNih: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearNih,\n            coreConversionRatiosSettingsOpenCurrentYearOtherFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearOtherFed,\n            coreConversionRatiosSettingsRevisedCurrentYearOtherFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearOtherFed,\n            coreConversionRatiosSettingsTransitionNextYearOtherFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearOtherFed,\n            coreConversionRatiosSettingsOpenCurrentYearFedFlowThru: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru,\n            coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru,\n            coreConversionRatiosSettingsTransitionNextYearFedFlowThru: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearFedFlowThru,\n            coreConversionRatiosSettingsOpenCurrentYearNonFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearNonFed,\n            coreConversionRatiosSettingsRevisedCurrentYearNonFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearNonFed,\n            coreConversionRatiosSettingsTransitionNextYearNonFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearNonFed,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor5: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor5,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor5: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor5,\n            coreConversionRatiosSettingsTransitionNextYearSponsor5: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor5,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor6: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor6,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor6: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor6,\n            coreConversionRatiosSettingsTransitionNextYearSponsor6: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor6,\n            coreConversionRatiosSettingsOpenCurrentYearSponsor7: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor7,\n            coreConversionRatiosSettingsRevisedCurrentYearSponsor7: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor7,\n            coreConversionRatiosSettingsTransitionNextYearSponsor7: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor7,\n            coreConversionRatiosSettingsProjectionsNih: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsNih,\n            coreConversionRatiosSettingsProjectionsOtherFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsOtherFed,\n            coreConversionRatiosSettingsProjectionsFedFlowThru: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsFedFlowThru,\n            coreConversionRatiosSettingsProjectionsNonFed: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsNonFed,\n            coreConversionRatiosSettingsProjectionsSponsor5: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsSponsor5,\n            coreConversionRatiosSettingsProjectionsSponsor6: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsSponsor6,\n            coreConversionRatiosSettingsProjectionsSponsor7: this.model.team.officialProjectionSettings.coreConversionRatiosSettingsProjectionsSponsor7,\n            //endregion\n            //region Core Proposals Default Settings\n            coreProposalsSettingsOpenCurrentYearNih: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearNih,\n            coreProposalsSettingsRevisedCurrentYearNih: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearNih,\n            coreProposalsSettingsTransitionNextYearNih: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearNih,\n            coreProposalsSettingsOpenCurrentYearOtherFed: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearOtherFed,\n            coreProposalsSettingsRevisedCurrentYearOtherFed: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearOtherFed,\n            coreProposalsSettingsTransitionNextYearOtherFed: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearOtherFed,\n            coreProposalsSettingsOpenCurrentYearFedFlowThru: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearFedFlowThru,\n            coreProposalsSettingsRevisedCurrentYearFedFlowThru: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearFedFlowThru,\n            coreProposalsSettingsTransitionNextYearFedFlowThru: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearFedFlowThru,\n            coreProposalsSettingsOpenCurrentYearNonFed: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearNonFed,\n            coreProposalsSettingsRevisedCurrentYearNonFed: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearNonFed,\n            coreProposalsSettingsTransitionNextYearNonFed: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearNonFed,\n            coreProposalsSettingsOpenCurrentYearSponsor5: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor5,\n            coreProposalsSettingsRevisedCurrentYearSponsor5: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor5,\n            coreProposalsSettingsTransitionNextYearSponsor5: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor5,\n            coreProposalsSettingsOpenCurrentYearSponsor6: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor6,\n            coreProposalsSettingsRevisedCurrentYearSponsor6: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor6,\n            coreProposalsSettingsTransitionNextYearSponsor6: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor6,\n            coreProposalsSettingsOpenCurrentYearSponsor7: this.model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor7,\n            coreProposalsSettingsRevisedCurrentYearSponsor7: this.model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor7,\n            coreProposalsSettingsTransitionNextYearSponsor7: this.model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor7,\n            coreProposalsSettingsProjectionsNih: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsNih,\n            coreProposalsSettingsProjectionsOtherFed: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsOtherFed,\n            coreProposalsSettingsProjectionsFedFlowThru: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsFedFlowThru,\n            coreProposalsSettingsProjectionsNonFed: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsNonFed,\n            coreProposalsSettingsProjectionsSponsor5: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsSponsor5,\n            coreProposalsSettingsProjectionsSponsor6: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsSponsor6,\n            coreProposalsSettingsProjectionsSponsor7: this.model.team.officialProjectionSettings.coreProposalsSettingsProjectionsSponsor7\n          });\n        }\n\n        this.set('hasOfficalProjectionsChanges', false);\n      }\n    }, {\n      key: \"setInitialOfficialProjections\",\n      value: function setInitialOfficialProjections() {\n        this.set('model.team.officialProjectionSettings', {\n          'coreConversionRatiosSettingsOpenCurrentYearNih': this.coreConversionRatiosSettingsOpenCurrentYearNih,\n          'coreConversionRatiosSettingsRevisedCurrentYearNih': this.coreConversionRatiosSettingsRevisedCurrentYearNih,\n          'coreConversionRatiosSettingsTransitionNextYearNih': this.coreConversionRatiosSettingsTransitionNextYearNih,\n          'coreConversionRatiosSettingsOpenCurrentYearOtherFed': this.coreConversionRatiosSettingsOpenCurrentYearOtherFed,\n          'coreConversionRatiosSettingsRevisedCurrentYearOtherFed': this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed,\n          'coreConversionRatiosSettingsTransitionNextYearOtherFed': this.coreConversionRatiosSettingsTransitionNextYearOtherFed,\n          'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru': this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru,\n          'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru': this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru,\n          'coreConversionRatiosSettingsTransitionNextYearFedFlowThru': this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru,\n          'coreConversionRatiosSettingsOpenCurrentYearNonFed': this.coreConversionRatiosSettingsOpenCurrentYearNonFed,\n          'coreConversionRatiosSettingsRevisedCurrentYearNonFed': this.coreConversionRatiosSettingsRevisedCurrentYearNonFed,\n          'coreConversionRatiosSettingsTransitionNextYearNonFed': this.coreConversionRatiosSettingsTransitionNextYearNonFed,\n          'coreConversionRatiosSettingsOpenCurrentYearSponsor5': this.coreConversionRatiosSettingsOpenCurrentYearSponsor5,\n          'coreConversionRatiosSettingsRevisedCurrentYearSponsor5': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5,\n          'coreConversionRatiosSettingsTransitionNextYearSponsor5': this.coreConversionRatiosSettingsTransitionNextYearSponsor5,\n          'coreConversionRatiosSettingsOpenCurrentYearSponsor6': this.coreConversionRatiosSettingsOpenCurrentYearSponsor6,\n          'coreConversionRatiosSettingsRevisedCurrentYearSponsor6': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6,\n          'coreConversionRatiosSettingsTransitionNextYearSponsor6': this.coreConversionRatiosSettingsTransitionNextYearSponsor6,\n          'coreConversionRatiosSettingsOpenCurrentYearSponsor7': this.coreConversionRatiosSettingsOpenCurrentYearSponsor7,\n          'coreConversionRatiosSettingsRevisedCurrentYearSponsor7': this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7,\n          'coreConversionRatiosSettingsTransitionNextYearSponsor7': this.coreConversionRatiosSettingsTransitionNextYearSponsor7,\n          'coreConversionRatiosSettingsProjectionsNih': this.coreConversionRatiosSettingsProjectionsNih,\n          'coreConversionRatiosSettingsProjectionsOtherFed': this.coreConversionRatiosSettingsProjectionsOtherFed,\n          'coreConversionRatiosSettingsProjectionsFedFlowThru': this.coreConversionRatiosSettingsProjectionsFedFlowThru,\n          'coreConversionRatiosSettingsProjectionsNonFed': this.coreConversionRatiosSettingsProjectionsNonFed,\n          'coreConversionRatiosSettingsProjectionsSponsor5': this.coreConversionRatiosSettingsProjectionsSponsor5,\n          'coreConversionRatiosSettingsProjectionsSponsor6': this.coreConversionRatiosSettingsProjectionsSponsor6,\n          'coreConversionRatiosSettingsProjectionsSponsor7': this.coreConversionRatiosSettingsProjectionsSponsor7,\n          'coreProposalsSettingsOpenCurrentYearNih': this.coreProposalsSettingsOpenCurrentYearNih,\n          'coreProposalsSettingsRevisedCurrentYearNih': this.coreProposalsSettingsRevisedCurrentYearNih,\n          'coreProposalsSettingsTransitionNextYearNih': this.coreProposalsSettingsTransitionNextYearNih,\n          'coreProposalsSettingsOpenCurrentYearOtherFed': this.coreProposalsSettingsOpenCurrentYearOtherFed,\n          'coreProposalsSettingsRevisedCurrentYearOtherFed': this.coreProposalsSettingsRevisedCurrentYearOtherFed,\n          'coreProposalsSettingsTransitionNextYearOtherFed': this.coreProposalsSettingsTransitionNextYearOtherFed,\n          'coreProposalsSettingsOpenCurrentYearFedFlowThru': this.coreProposalsSettingsOpenCurrentYearFedFlowThru,\n          'coreProposalsSettingsRevisedCurrentYearFedFlowThru': this.coreProposalsSettingsRevisedCurrentYearFedFlowThru,\n          'coreProposalsSettingsTransitionNextYearFedFlowThru': this.coreProposalsSettingsTransitionNextYearFedFlowThru,\n          'coreProposalsSettingsOpenCurrentYearNonFed': this.coreProposalsSettingsOpenCurrentYearNonFed,\n          'coreProposalsSettingsRevisedCurrentYearNonFed': this.coreProposalsSettingsRevisedCurrentYearNonFed,\n          'coreProposalsSettingsTransitionNextYearNonFed': this.coreProposalsSettingsTransitionNextYearNonFed,\n          'coreProposalsSettingsOpenCurrentYearSponsor5': this.coreProposalsSettingsOpenCurrentYearSponsor5,\n          'coreProposalsSettingsRevisedCurrentYearSponsor5': this.coreProposalsSettingsRevisedCurrentYearSponsor5,\n          'coreProposalsSettingsTransitionNextYearSponsor5': this.coreProposalsSettingsTransitionNextYearSponsor5,\n          'coreProposalsSettingsOpenCurrentYearSponsor6': this.coreProposalsSettingsOpenCurrentYearSponsor6,\n          'coreProposalsSettingsRevisedCurrentYearSponsor6': this.coreProposalsSettingsRevisedCurrentYearSponsor6,\n          'coreProposalsSettingsTransitionNextYearSponsor6': this.coreProposalsSettingsTransitionNextYearSponsor6,\n          'coreProposalsSettingsOpenCurrentYearSponsor7': this.coreProposalsSettingsOpenCurrentYearSponsor7,\n          'coreProposalsSettingsRevisedCurrentYearSponsor7': this.coreProposalsSettingsRevisedCurrentYearSponsor7,\n          'coreProposalsSettingsTransitionNextYearSponsor7': this.coreProposalsSettingsTransitionNextYearSponsor7,\n          'coreProposalsSettingsProjectionsNih': this.coreProposalsSettingsProjectionsNih,\n          'coreProposalsSettingsProjectionsOtherFed': this.coreProposalsSettingsProjectionsOtherFed,\n          'coreProposalsSettingsProjectionsFedFlowThru': this.coreProposalsSettingsProjectionsFedFlowThru,\n          'coreProposalsSettingsProjectionsNonFed': this.coreProposalsSettingsProjectionsNonFed,\n          'coreProposalsSettingsProjectionsSponsor5': this.coreProposalsSettingsProjectionsSponsor5,\n          'coreProposalsSettingsProjectionsSponsor6': this.coreProposalsSettingsProjectionsSponsor6,\n          'coreProposalsSettingsProjectionsSponsor7': this.coreProposalsSettingsProjectionsSponsor7\n        });\n      }\n    }, {\n      key: \"save\",\n      value: function save() {\n        this.set('errors', null);\n        var model = this.model.team;\n\n        var _this = this;\n\n        var promises = [model.save(), this.sponsorTypeNih.save(), this.sponsorTypeOtherFed.save(), this.sponsorTypeFFT.save(), this.sponsorTypeNonFed.save(), this.sponsorTypeSponsor5.save(), this.sponsorTypeSponsor6.save(), this.sponsorTypeSponsor7.save()];\n        Ember.RSVP.all(promises).then(function (res) {\n          var team = res[0];\n\n          _this.set('savedSuccessfully', true);\n\n          _this.get('currentUser').set('team', team);\n\n          _this.set('hasOfficalProjectionsChanges', false);\n\n          setTimeout(function () {\n            _this.set('savedSuccessfully', false);\n\n            window.location.reload(true);\n          }, 600);\n        }).catch(function (response) {\n          Ember.run(function () {\n            _this.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }, {\n      key: \"rollback\",\n      value: function rollback() {\n        this.resetOfficialProjections();\n        var model = this.model.team;\n        model.rollbackAttributes(); // Rollback sponsor changes too\n\n        if (this.sponsorTypeNih) {\n          this.sponsorTypeNih.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeOtherFed) {\n          this.sponsorTypeOtherFed.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeFFT) {\n          this.sponsorTypeFFT.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeNonFed) {\n          this.sponsorTypeNonFed.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeSponsor5) {\n          this.sponsorTypeSponsor5.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeSponsor6) {\n          this.sponsorTypeSponsor6.rollbackAttributes();\n        }\n\n        if (this.sponsorTypeSponsor7) {\n          this.sponsorTypeSponsor7.rollbackAttributes();\n        }\n\n        this.set('errors', null);\n      }\n    }, {\n      key: \"dropdownOptionChangedProposalSponsor\",\n      value: function dropdownOptionChangedProposalSponsor(value) {\n        this.set('model.team.proposalSponsor', value);\n      }\n    }, {\n      key: \"dropdownOptionChangedDepartmentsMega\",\n      value: function dropdownOptionChangedDepartmentsMega(value) {\n        this.set('model.team.departmentsIncludeMega', value === 'Yes');\n      }\n    }, {\n      key: \"dropdownOptionChangedPiMega\",\n      value: function dropdownOptionChangedPiMega(value) {\n        this.set('model.team.piIncludeMega', value === 'Yes');\n      }\n    }, {\n      key: \"dropdownOptionChangedExecDownload\",\n      value: function dropdownOptionChangedExecDownload(value) {\n        this.set('model.team.canExecutivesDownloadData', value === 'Yes');\n      }\n    }, {\n      key: \"dropdownOptionChangedOfficialAssumption\",\n      value: function dropdownOptionChangedOfficialAssumption(value) {\n        if (value === 'Enabled') {\n          //Initialize\n          this.setInitialOfficialProjections();\n        } else {\n          this.set('model.team.officialProjectionSettings', null);\n        }\n\n        this.set('selectedOfficialAssumption', value);\n      }\n    }, {\n      key: \"dropdownOptionChangedProposalCountOrTotal\",\n      value: function dropdownOptionChangedProposalCountOrTotal(value) {\n        this.set('model.team.proposalCountOrTotal', value);\n      }\n    }, {\n      key: \"dropdownOptionChangedMegaGrant\",\n      value: function dropdownOptionChangedMegaGrant(value) {\n        this.set('model.team.megaGrantUseLifetimeValue', value === MEGA_GRANT_DEF_5_LIFETIME);\n      }\n    }, {\n      key: \"proposalDropdownOptionChanged\",\n      value: function proposalDropdownOptionChanged(sponsor, type, value) {\n        if (!this.hasTeamOfficialProjections) {\n          this.setInitialOfficialProjections();\n        }\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearNih', value);\n                this.set('coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                this.set('coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('coreProposalsSettingsOpenCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearNih', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearNih', value);\n                this.set('coreProposalsSettingsTransitionNextYearOtherFed', value);\n                this.set('coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                this.set('coreProposalsSettingsTransitionNextYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearNonFed', value);\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearOtherFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearFedFlowThru', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearNonFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor5', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor6', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreProposalsSettingsOpenCurrentYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsOpenCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreProposalsSettingsRevisedCurrentYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsRevisedCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreProposalsSettingsTransitionNextYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreProposalsSettingsTransitionNextYearSponsor7', value);\n                break;\n            }\n\n            break;\n        }\n\n        this.set('hasOfficalProjectionsChanges', true);\n      }\n    }, {\n      key: \"conversionRatiosDropdownOptionChanged\",\n      value: function conversionRatiosDropdownOptionChanged(sponsor, type, value) {\n        if (!this.hasTeamOfficialProjections) {\n          this.setInitialOfficialProjections();\n        }\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNih', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNih', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearNih', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                this.set('coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearNih', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearOtherFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearOtherFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearFedFlowThru', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearNonFed', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearNonFed', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor5', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor5', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor5', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor6', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor6', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor6', value);\n                break;\n            }\n\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            switch (type) {\n              case DROPDOWN_OPEN:\n                this.set('coreConversionRatiosSettingsOpenCurrentYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsOpenCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_REVISED:\n                this.set('coreConversionRatiosSettingsRevisedCurrentYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsRevisedCurrentYearSponsor7', value);\n                break;\n\n              case DROPDOWN_TRANSITION:\n                this.set('coreConversionRatiosSettingsTransitionNextYearSponsor7', value);\n                this.set('model.team.officialProjectionSettings.coreConversionRatiosSettingsTransitionNextYearSponsor7', value);\n                break;\n            }\n\n            break;\n        }\n\n        this.set('hasOfficalProjectionsChanges', true);\n      }\n    }, {\n      key: \"proposalFutureOptionChanged\",\n      value: function proposalFutureOptionChanged(sponsor, yearsAhead, isDirects, value) {\n        if (!this.hasTeamOfficialProjections) {\n          this.setInitialOfficialProjections();\n        }\n\n        var formattedSponsor = null;\n        var formattedYearsAhead = null;\n        var formattedMoneyType = isDirects ? 'Directs' : 'Indirects';\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            formattedSponsor = 'Nih';\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            formattedSponsor = 'FedFlowThru';\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            formattedSponsor = 'OtherFed';\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            formattedSponsor = 'NonFed';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            formattedSponsor = 'Sponsor5';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            formattedSponsor = 'Sponsor6';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            formattedSponsor = 'Sponsor7';\n            break;\n        }\n\n        switch (yearsAhead) {\n          case 1:\n            formattedYearsAhead = 'oneYearAhead';\n            break;\n\n          case 2:\n            formattedYearsAhead = 'twoYearsAhead';\n            break;\n\n          case 3:\n            formattedYearsAhead = 'threeYearsAhead';\n            break;\n\n          case 4:\n            formattedYearsAhead = 'fourYearsAhead';\n            break;\n        }\n\n        if (formattedSponsor && formattedYearsAhead) {\n          this.set(\"coreProposalsSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value);\n          this.set(\"model.team.officialProjectionSettings.coreProposalsSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value);\n        }\n\n        this.set('hasOfficalProjectionsChanges', true);\n      }\n    }, {\n      key: \"conversionRatiosFutureOptionChanged\",\n      value: function conversionRatiosFutureOptionChanged(sponsor, yearsAhead, isDirects, value) {\n        if (!this.hasTeamOfficialProjections) {\n          this.setInitialOfficialProjections();\n        }\n\n        var formattedSponsor = null;\n        var formattedYearsAhead = null;\n        var formattedMoneyType = isDirects ? 'Directs' : 'Indirects';\n\n        switch (sponsor) {\n          case this.currentUser.sponsorTypeNih:\n            formattedSponsor = 'Nih';\n            break;\n\n          case this.currentUser.sponsorTypeFFT:\n            formattedSponsor = 'FedFlowThru';\n            break;\n\n          case this.currentUser.sponsorTypeOtherFed:\n            formattedSponsor = 'OtherFed';\n            break;\n\n          case this.currentUser.sponsorTypeNonFed:\n            formattedSponsor = 'NonFed';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor5:\n            formattedSponsor = 'Sponsor5';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor6:\n            formattedSponsor = 'Sponsor6';\n            break;\n\n          case this.currentUser.sponsorTypeSponsor7:\n            formattedSponsor = 'Sponsor7';\n            break;\n        }\n\n        switch (yearsAhead) {\n          case 1:\n            formattedYearsAhead = 'oneYearAhead';\n            break;\n\n          case 2:\n            formattedYearsAhead = 'twoYearsAhead';\n            break;\n\n          case 3:\n            formattedYearsAhead = 'threeYearsAhead';\n            break;\n\n          case 4:\n            formattedYearsAhead = 'fourYearsAhead';\n            break;\n        }\n\n        if (formattedSponsor && formattedYearsAhead) {\n          this.set(\"coreConversionRatiosSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value);\n          this.set(\"model.team.officialProjectionSettings.coreConversionRatiosSettingsProjections\".concat(formattedSponsor, \".\").concat(formattedYearsAhead, \"Change\").concat(formattedMoneyType), value);\n        }\n\n        this.set('hasOfficalProjectionsChanges', true);\n      }\n    }, {\n      key: \"selectedOptionDepartmentsIncludeMega\",\n      get: function get() {\n        if (this.get('model.team.departmentsIncludeMega')) {\n          return 'Yes';\n        } else {\n          return 'No';\n        }\n      }\n    }, {\n      key: \"selectedMegaGrantDefinition\",\n      get: function get() {\n        if (this.get('model.team.megaGrantUseLifetimeValue')) {\n          return MEGA_GRANT_DEF_5_LIFETIME;\n        } else {\n          return MEGA_GRANT_DEF_1_YEARLY;\n        }\n      }\n    }, {\n      key: \"selectedOptionPiIncludeMega\",\n      get: function get() {\n        if (this.get('model.team.piIncludeMega')) {\n          return 'Yes';\n        } else {\n          return 'No';\n        }\n      }\n    }, {\n      key: \"selectedOptionExecDownload\",\n      get: function get() {\n        if (this.get('model.team.canExecutivesDownloadData')) {\n          return 'Yes';\n        } else {\n          return 'No';\n        }\n      }\n    }, {\n      key: \"showSaveAction\",\n      get: function get() {\n        return this.get('model.team.hasDirtyAttributes') || this.hasOfficalProjectionsChanges || this.sponsorTypeNih.hasDirtyAttributes || this.sponsorTypeOtherFed.hasDirtyAttributes || this.sponsorTypeFFT.hasDirtyAttributes || this.sponsorTypeNonFed.hasDirtyAttributes || this.sponsorTypeSponsor5.hasDirtyAttributes || this.sponsorTypeSponsor6.hasDirtyAttributes || this.sponsorTypeSponsor7.hasDirtyAttributes;\n      }\n    }, {\n      key: \"sponsorTypeNih\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.NIH, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeOtherFed\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.OtherFed, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeFFT\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.FFT, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeNonFed\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.NonFed, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor5\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.Sponsor5, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor6\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.Sponsor6, this.model.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor7\",\n      get: function get() {\n        if (!this.model || !this.model.team || !this.model.team.sponsors) {\n          return null;\n        }\n\n        return (0, _originalSponsorForType.default)(_sponsorTypes.default.Sponsor7, this.model.team.sponsors);\n      }\n    }]);\n\n    return SettingsController;\n  }(Ember.Controller.extend(_currentYearProjections.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"selectedOptionDepartmentsIncludeMega\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedOptionDepartmentsIncludeMega\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedMegaGrantDefinition\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedMegaGrantDefinition\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedOptionPiIncludeMega\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedOptionPiIncludeMega\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"selectedOptionExecDownload\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"selectedOptionExecDownload\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showSaveAction\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"showSaveAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeNih\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeNih\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeOtherFed\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeOtherFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeFFT\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeFFT\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeNonFed\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeNonFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor5\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor5\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor6\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor6\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor7\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor7\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"save\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"save\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"rollback\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"rollback\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedProposalSponsor\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedProposalSponsor\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedDepartmentsMega\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedDepartmentsMega\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedPiMega\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedPiMega\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedExecDownload\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedExecDownload\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedOfficialAssumption\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedOfficialAssumption\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedProposalCountOrTotal\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedProposalCountOrTotal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"dropdownOptionChangedMegaGrant\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"dropdownOptionChangedMegaGrant\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalDropdownOptionChanged\", [_dec24], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalDropdownOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"conversionRatiosDropdownOptionChanged\", [_dec25], Object.getOwnPropertyDescriptor(_class2.prototype, \"conversionRatiosDropdownOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"proposalFutureOptionChanged\", [_dec26], Object.getOwnPropertyDescriptor(_class2.prototype, \"proposalFutureOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"conversionRatiosFutureOptionChanged\", [_dec27], Object.getOwnPropertyDescriptor(_class2.prototype, \"conversionRatiosFutureOptionChanged\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SettingsController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/app/users\", [\"exports\", \"@ember-decorators/object\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _object, _environment, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\n  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var UsersController = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.computed.sort('model', 'sortUserDefinition'), _dec4 = (0, _object.observes)('typeSelectionValue', 'roleSelection', 'searchTerm', 'departmentSelection'), _dec5 = (0, _object.observes)('search'), _dec6 = Ember.computed('currentUser.team'), _dec7 = Ember._action, _dec8 = Ember._action, _dec9 = Ember._action, _dec10 = Ember._action, _dec11 = Ember._action, _dec12 = Ember._action, _dec13 = Ember._action, _dec14 = Ember._action, _dec15 = Ember._action, _dec16 = Ember._action, _dec17 = Ember._action, _dec18 = Ember._action, _dec19 = Ember._action, _dec20 = Ember._action, _dec21 = Ember._action, _dec22 = Ember._action, _dec23 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(UsersController, _Ember$Controller);\n\n    var _super = _createSuper(UsersController);\n\n    function UsersController() {\n      var _this2;\n\n      _classCallCheck(this, UsersController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this2 = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"currentUser\", _descriptor, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"departmentSelection\", '0');\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"ajax\", _descriptor2, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"page\", 1);\n\n      _defineProperty(_assertThisInitialized(_this2), \"typeSelection\", 'Registered Users');\n\n      _defineProperty(_assertThisInitialized(_this2), \"typeSelectionValue\", 'user-team-access');\n\n      _defineProperty(_assertThisInitialized(_this2), \"roleSelection\", 'All');\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"sortedUsers\", _descriptor3, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"searchTerm\", '');\n\n      _defineProperty(_assertThisInitialized(_this2), \"search\", '');\n\n      _defineProperty(_assertThisInitialized(_this2), \"sortString\", 'user__last_name');\n\n      _defineProperty(_assertThisInitialized(_this2), \"isShowingEditMembershipModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this2), \"isShowingAddModal\", false);\n\n      _defineProperty(_assertThisInitialized(_this2), \"isShowingDeleteModal\", false);\n\n      return _this2;\n    }\n\n    _createClass(UsersController, [{\n      key: \"init\",\n      value: function init() {\n        _get(_getPrototypeOf(UsersController.prototype), \"init\", this).apply(this, arguments);\n\n        this.set('roleOptions', ['All', 'Department', 'Sector', 'Executive', 'Admin']);\n        this.set('sortUserDefinition', ['lastName:asc']);\n        this.set('typeOptions', ['Registered Users', 'Invited Users']);\n      }\n    }, {\n      key: \"queryChanged\",\n      value: function queryChanged() {\n        this.fetchFilteredData();\n      }\n    }, {\n      key: \"searchChanged\",\n      value: function searchChanged() {\n        Ember.run.debounce(this, this.setSearchTerm, 500);\n      }\n    }, {\n      key: \"setSearchTerm\",\n      value: function setSearchTerm() {\n        this.set('searchTerm', this.search);\n      }\n    }, {\n      key: \"fetchFilteredData\",\n      value: function fetchFilteredData() {\n        var _this3 = this;\n\n        this.set('isLoading', true);\n        var queryParams = {};\n        var role = this.roleSelection;\n        var search = this.searchTerm;\n        var department = this.departmentSelection;\n        var modelType = this.typeSelectionValue;\n        this.set('model', []);\n\n        if (search.length) {\n          queryParams.search = search;\n        }\n\n        if (role !== 'All') {\n          queryParams.role = role.toLowerCase();\n        }\n\n        if (modelType === 'membership') {\n          queryParams.state = 'invited';\n        }\n\n        if (department === '0') {\n          queryParams.department_id = undefined;\n        } else {\n          queryParams.department_id = department;\n        }\n\n        queryParams.page = 1;\n        queryParams.ordering = this.sortString;\n        this.set('queryParams', queryParams);\n\n        if (modelType === 'user-team-access') {\n          queryParams.adapterOptions = {\n            team: this.currentUser.team.get('id'),\n            institution_access: true\n          };\n        }\n\n        this.store.query(modelType, queryParams).then(function (users) {\n          _this3.set('model', users.toArray());\n\n          _this3.set('meta', users.get('meta'));\n\n          _this3.set('isLoading', false);\n\n          _this3.set('page', 1);\n        });\n      }\n    }, {\n      key: \"getSectorObjectFromName\",\n      value: function getSectorObjectFromName(sectorName) {\n        var sectors = this.store.peekAll('sector');\n        var results = sectors.filterBy('name', sectorName);\n\n        if (results.length === 1) {\n          return results[0];\n        }\n\n        return null;\n      }\n    }, {\n      key: \"handlePagination\",\n      value: function handlePagination() {\n        var _this4 = this;\n\n        var pagination = this.get('meta.pagination');\n        var queryParams = this.queryParams;\n        var modelType = this.typeSelectionValue; //Ensure there is meta data\n\n        if (pagination) {\n          if (pagination.pages > this.page) {\n            this.set('isLoading', true);\n\n            var params = _objectSpread({\n              ordering: this.sortString,\n              page: this.page + 1\n            }, queryParams);\n\n            this.set('queryParams', params);\n\n            if (modelType === 'user-team-access') {\n              queryParams.adapterOptions = {\n                team: this.currentUser.team.get('id'),\n                institution_access: true\n              };\n            }\n\n            this.store.query(modelType, params).then(function (users) {\n              _this4.incrementProperty('page');\n\n              _this4.model.pushObjects(users.toArray());\n\n              _this4.set('meta', users.get('meta'));\n\n              _this4.set('isLoading', false);\n            }).catch(function () {\n              //TODO: Handle error\n              _this4.set('isLoading', false);\n            });\n          }\n        }\n      }\n    }, {\n      key: \"handleSortChange\",\n      value: function handleSortChange(sortDirection, sortColumn) {\n        var _this5 = this;\n\n        var formattedSortColumn = sortColumn.replace('membership.', 'memberships__').replace('user.', 'user__');\n\n        if (formattedSortColumn === 'user__nameComma') {\n          formattedSortColumn = 'user__lastName';\n        }\n\n        var modelType = this.typeSelectionValue;\n        var sortString = \"\".concat(sortDirection).concat(formattedSortColumn.underscore());\n        this.set('sortString', sortString);\n        this.set('isLoading', true);\n        var params = {\n          ordering: sortString,\n          page: 1\n        };\n\n        if (modelType === 'user-team-access') {\n          params.adapterOptions = {\n            team: this.currentUser.team.get('id'),\n            institution_access: true\n          };\n        }\n\n        if (modelType === 'membership') {\n          params.state = 'invited';\n        }\n\n        this.store.query(modelType, params).then(function (users) {\n          _this5.set('page', 1);\n\n          _this5.set('model', users.toArray());\n\n          _this5.set('meta', users.get('meta'));\n\n          _this5.set('isLoading', false);\n        }).catch(function () {\n          _this5.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"toggleAddModal\",\n      value: function toggleAddModal() {\n        this.toggleProperty('isShowingAddModal');\n        this.set('errors', null);\n      }\n    }, {\n      key: \"showEditUserModal\",\n      value: function showEditUserModal(user) {\n        this.set('selectedUser', user);\n        this.set('isShowingEditUserModal', true);\n      }\n    }, {\n      key: \"hideEditUserModal\",\n      value: function hideEditUserModal() {\n        this.set('selectedUser', null);\n        this.set('isShowingEditUserModal', false);\n        this.set('errors', null);\n      }\n    }, {\n      key: \"showEditMembershipModal\",\n      value: function showEditMembershipModal(membership) {\n        this.set('selectedMembership', membership);\n        this.set('isShowingEditMembershipModal', true);\n      }\n    }, {\n      key: \"hideEditMembershipModal\",\n      value: function hideEditMembershipModal() {\n        this.set('selectedMembership', null);\n        this.set('isShowingEditMembershipModal', false);\n        this.set('errors', null);\n      }\n    }, {\n      key: \"showDeleteModal\",\n      value: function showDeleteModal(user) {\n        this.set('userToDelete', user);\n        this.set('isShowingDeleteModal', true);\n      }\n    }, {\n      key: \"hideDeleteModal\",\n      value: function hideDeleteModal() {\n        this.set('userToDelete', null);\n        this.set('isShowingDeleteModal', false);\n        this.set('errors', null);\n      }\n    }, {\n      key: \"roleOptionChanged\",\n      value: function roleOptionChanged(value) {\n        this.set('roleSelection', value);\n      }\n    }, {\n      key: \"typeOptionChanged\",\n      value: function typeOptionChanged(value) {\n        this.set('typeSelection', value);\n\n        if (value === 'Registered Users') {\n          this.set('typeSelectionValue', 'user-team-access');\n        } else if (value === 'Invited Users') {\n          this.set('typeSelectionValue', 'membership');\n        }\n      }\n    }, {\n      key: \"departmentOptionChanged\",\n      value: function departmentOptionChanged(value) {\n        this.set('departmentSelection', value);\n      }\n    }, {\n      key: \"deleteUser\",\n      value: function deleteUser(user) {\n        var _this6 = this;\n\n        if (user) {\n          user.destroyRecord().then(function () {\n            _this6.model.removeObject(user);\n\n            _this6.set('userToDelete', null);\n\n            _this6.set('isShowingDeleteModal', false);\n          });\n        }\n      }\n    }, {\n      key: \"saveAction\",\n      value: function saveAction(user) {\n        var _this7 = this;\n\n        this.set('errors', null);\n        var department = parseInt(user.department);\n        var sectors = null;\n\n        if (user.sectors) {\n          sectors = user.sectors.map(function (sectorName) {\n            return _this7.getSectorObjectFromName(sectorName).get('id');\n          });\n        } //If the department id is 0 set it to null\n\n\n        if (department < 1) {\n          department = null;\n        }\n\n        var newUser = {\n          email: user.email,\n          position: user.position,\n          role: user.role.toLowerCase(),\n          saml_key: user.saml_key\n        };\n\n        if (newUser.role === 'sector') {\n          newUser.sectors = sectors;\n        } else if (newUser.role === 'department') {\n          newUser.department_id = department;\n        }\n\n        var _this = this;\n\n        this.ajax.post(\"\".concat(_environment.default.host, \"/api/v1/teams/\").concat(this.get('currentUser.team.id'), \"/invite-user/\"), {\n          contentType: 'application/json',\n          dataType: 'json',\n          data: JSON.stringify(newUser)\n        }).then(function () {\n          Ember.run(function () {\n            _this7.fetchFilteredData();\n\n            _this.set('isShowingAddModal', false);\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            _this.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }, {\n      key: \"saveUserAction\",\n      value: function saveUserAction(user, access) {\n        var _this8 = this;\n\n        this.set('errors', null);\n\n        var _this = this;\n\n        var name = user.get('name');\n        var data;\n\n        if (name) {\n          var firstName = name.substr(0, name.indexOf(' '));\n          var lastName = name.substr(name.indexOf(' ') + 1);\n          data = {\n            first_name: firstName,\n            last_name: lastName,\n            email: user.get('email')\n          };\n        } else {\n          data = {\n            email: user.get('email')\n          };\n        }\n\n        this.set('errors', null);\n        this.ajax.patch(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/users/\").concat(user.get('id'), \"/\"), {\n          headers: {\n            'Content-Type': 'application/json'\n          },\n          data: data\n        }).catch(function (response) {\n          _this8.set('errors', _errors.default.mapResponseErrors(response));\n        }); // Lookup the access record. The corresponding membership will be updated by the backend\n\n        var userTeamAccess = this.store.peekRecord('user-team-access', access.id); // Set all the updated attributes on the membership\n\n        userTeamAccess.set('position', access.position);\n        userTeamAccess.set('role', access.role.toLowerCase());\n        userTeamAccess.set('departmentId', access.departmentId);\n        var sectors = [];\n\n        if (access.sectors) {\n          sectors = access.sectors.map(function (sectorName) {\n            return _this8.getSectorObjectFromName(sectorName);\n          });\n        }\n\n        userTeamAccess.set('sectors', sectors);\n\n        if (access.departmentId === '0') {\n          userTeamAccess.set('departmentId', null);\n          userTeamAccess.set('departmentName', null);\n        } // Save the access model\n\n\n        userTeamAccess.save().then(function () {\n          _this.set('isShowingEditUserModal', false);\n        });\n      }\n    }, {\n      key: \"saveMembershipAction\",\n      value: function saveMembershipAction(newMembership) {\n        var _this9 = this;\n\n        this.set('errors', null);\n        var department = parseInt(newMembership.get('department'));\n        var role = newMembership.get('role').toLowerCase();\n\n        if (department < 1 || role !== 'department') {\n          department = null;\n        }\n\n        var _this = this; // Lookup the membership\n\n\n        var membership = this.store.peekRecord('membership', this.get('selectedMembership.id'));\n        membership.set('position', newMembership.get('position'));\n        membership.set('role', role);\n        membership.set('departmentId', department);\n        var sectors = [];\n\n        if (newMembership.sectors) {\n          sectors = newMembership.sectors.map(function (sectorName) {\n            return _this9.getSectorObjectFromName(sectorName);\n          });\n        }\n\n        membership.set('sectors', sectors); // Save the access object\n        // Save the membership\n\n        membership.save().then(function () {\n          _this.set('isShowingEditMembershipModal', false);\n\n          _this.fetchFilteredData();\n        }).catch(function (response) {\n          _this.set('errors', _errors.default.mapResponseErrors(response));\n        });\n      }\n    }, {\n      key: \"resendInvitation\",\n      value: function resendInvitation(membership, result) {\n        this.ajax.post(\"\".concat(_environment.default.host, \"/api/v1/invitations/\").concat(membership.get('invitation.id'), \"/resend/\")).then(function () {\n          Ember.run(function () {\n            result.resolve();\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            result.reject(_errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }, {\n      key: \"isNYU\",\n      get: function get() {\n        return this.get('currentUser.team.id') === '13';\n      }\n    }, {\n      key: \"samlKey\",\n      get: function get() {\n        return this.get('currentUser.team.samlKey');\n      }\n    }]);\n\n    return UsersController;\n  }(Ember.Controller), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"sortedUsers\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"queryChanged\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"queryChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"searchChanged\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"searchChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isNYU\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNYU\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handlePagination\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"handlePagination\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"handleSortChange\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"handleSortChange\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"toggleAddModal\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"toggleAddModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showEditUserModal\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"showEditUserModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hideEditUserModal\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"hideEditUserModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showEditMembershipModal\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"showEditMembershipModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hideEditMembershipModal\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"hideEditMembershipModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"showDeleteModal\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"showDeleteModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"hideDeleteModal\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"hideDeleteModal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"roleOptionChanged\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"roleOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"typeOptionChanged\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"typeOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"departmentOptionChanged\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentOptionChanged\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"deleteUser\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"deleteUser\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveAction\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveUserAction\", [_dec21], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveUserAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"saveMembershipAction\", [_dec22], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveMembershipAction\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"resendInvitation\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"resendInvitation\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = UsersController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/application\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ApplicationController = classic(_class = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(ApplicationController, _Ember$Controller);\n\n    var _super = _createSuper(ApplicationController);\n\n    function ApplicationController() {\n      _classCallCheck(this, ApplicationController);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ApplicationController;\n  }(Ember.Controller)) || _class;\n\n  _exports.default = ApplicationController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/export-investigators/index\", [\"exports\", \"@ember-decorators/object\"], function (_exports, _object) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexController = (_dec = (0, _object.observes)('model.[]'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(IndexController, _Ember$Controller);\n\n    var _super = _createSuper(IndexController);\n\n    function IndexController() {\n      var _this;\n\n      _classCallCheck(this, IndexController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"queryParams\", ['department_id', 'search', 'sector', 'classify', 'hire_year_before', 'hire_year_after', 'hire_year', 'tier_no_actuals_last_year', 'percentile_begin', 'percentile_end', 'include_plan_pts', 'ordering', 'has_plan']);\n\n      _defineProperty(_assertThisInitialized(_this), \"department_id\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"search\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"sector\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"classify\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"hire_year_before\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"hire_year_after\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"hire_year\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"tier_no_actuals_last_year\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"percentile_begin\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"percentile_end\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"include_plan_pts\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"ordering\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"has_plan\", null);\n\n      return _this;\n    }\n\n    _createClass(IndexController, [{\n      key: \"modelObserver\",\n      value: function modelObserver() {\n        //Show the print dialog once it is finished\n        // eslint-disable-next-line\n        Ember.run.scheduleOnce('afterRender', this, function () {\n          setTimeout(function () {\n            window.print();\n          }, 2000);\n        });\n      }\n    }]);\n\n    return IndexController;\n  }(Ember.Controller), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"modelObserver\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"modelObserver\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = IndexController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/forgot-password\", [\"exports\", \"ember-cp-validations\"], function (_exports, _emberCpValidations) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    email: (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Email Address is not valid.'\n    })\n  });\n  var ForgotPasswordController = (_dec = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(ForgotPasswordController, _Ember$Controller$ext);\n\n    var _super = _createSuper(ForgotPasswordController);\n\n    function ForgotPasswordController() {\n      var _this;\n\n      _classCallCheck(this, ForgotPasswordController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"email\", null);\n\n      return _this;\n    }\n\n    _createClass(ForgotPasswordController, [{\n      key: \"submitButtonPressed\",\n      value: function submitButtonPressed() {\n        this.set('errors', null);\n        var email = this.email;\n        var result = Ember.RSVP.defer();\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          return Ember.RSVP.reject();\n        } else {\n          this.send('sendResetEmail', email, result);\n        }\n\n        return result.promise;\n      }\n    }]);\n\n    return ForgotPasswordController;\n  }(Ember.Controller.extend(Validations)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"submitButtonPressed\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"submitButtonPressed\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ForgotPasswordController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/login\", [\"exports\", \"ember-cp-validations\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _emberCpValidations, _errors, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    email: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Email Address'\n    }),\n    password: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Password'\n    })\n  });\n  var LoginController = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, _dec4 = Ember._action, _dec5 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(LoginController, _Ember$Controller$ext);\n\n    var _super = _createSuper(LoginController);\n\n    function LoginController() {\n      var _this;\n\n      _classCallCheck(this, LoginController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"email\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"password\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"emailStep\", true);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(LoginController, [{\n      key: \"clickedContinue\",\n      value: function clickedContinue() {\n        var _this2 = this;\n\n        var data = {\n          email_address: this.email\n        };\n        return this.ajax.post(\"\".concat(_environment.default.host, \"/api/v1/login/email/\"), {\n          headers: {\n            'Accept': 'application/json'\n          },\n          contentType: 'application/x-www-form-urlencoded',\n          data: data\n        }).then(function (resp) {\n          Ember.run(function () {\n            if (resp && resp.redirect) {\n              window.location.replace(resp.link);\n            } else {\n              _this2.set(\"emailStep\", false);\n            }\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            _this2.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }, {\n      key: \"clickedBackToEmail\",\n      value: function clickedBackToEmail() {\n        this.set(\"emailStep\", true);\n        this.set(\"email\", null);\n        this.set(\"password\", null);\n        this.set('errors', null);\n        this.set('showError', false);\n      }\n    }, {\n      key: \"loginButtonPressed\",\n      value: function loginButtonPressed() {\n        var _this3 = this;\n\n        this.set('errors', null);\n        this.set('samlError', null);\n        var email = this.email;\n        var password = this.password;\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          return Ember.RSVP.reject();\n        } else {\n          var result = Ember.RSVP.defer();\n          this.send('login', email, password, result);\n          return result.promise.then(function () {\n            _this3.set('needsToVerify', true);\n          });\n        }\n      }\n    }, {\n      key: \"submitButtonPressed\",\n      value: function submitButtonPressed() {\n        this.set('errors', null);\n        var email = this.email;\n        var password = this.password;\n        var code = this.verificationCode;\n        this.set('showError', true);\n        var result = Ember.RSVP.defer();\n        this.send('verifyLogin', email, password, code, result);\n        return result.promise;\n      }\n    }]);\n\n    return LoginController;\n  }(Ember.Controller.extend(Validations)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"clickedContinue\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"clickedContinue\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"clickedBackToEmail\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"clickedBackToEmail\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"loginButtonPressed\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"loginButtonPressed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"submitButtonPressed\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"submitButtonPressed\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = LoginController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/mfa-setup/request-verification\", [\"exports\", \"ember-cp-validations\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _emberCpValidations, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    phoneNumber: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Phone Number'\n    })\n  });\n  var RequestVerificationController = (_dec = Ember.inject.service, _dec2 = Ember._action, _dec3 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(RequestVerificationController, _Ember$Controller$ext);\n\n    var _super = _createSuper(RequestVerificationController);\n\n    function RequestVerificationController() {\n      var _this;\n\n      _classCallCheck(this, RequestVerificationController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"phoneNumber\", null);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(RequestVerificationController, [{\n      key: \"logout\",\n      value: function logout() {\n        this.session.invalidate();\n      }\n    }, {\n      key: \"requestVerification\",\n      value: function requestVerification() {\n        this.set('errors', null);\n        var phone = '1' + this.phoneNumber.replace(/\\D+/g, '');\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          return Ember.RSVP.reject();\n        } else {\n          var result = Ember.RSVP.defer();\n          this.send('requestVerificationCode', phone, result);\n          return result.promise;\n        }\n      }\n    }]);\n\n    return RequestVerificationController;\n  }(Ember.Controller.extend(Validations)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"logout\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"logout\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"requestVerification\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"requestVerification\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RequestVerificationController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/mfa-setup/verify\", [\"exports\", \"ember-cp-validations\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _emberCpValidations, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    mfaCode: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Verification Code'\n    })\n  });\n  var VerifyController = (_dec = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(VerifyController, _Ember$Controller$ext);\n\n    var _super = _createSuper(VerifyController);\n\n    function VerifyController() {\n      var _this;\n\n      _classCallCheck(this, VerifyController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"mfaCode\", null);\n\n      return _this;\n    }\n\n    _createClass(VerifyController, [{\n      key: \"verify\",\n      value: function verify() {\n        this.set('errors', null);\n        var mfaCode = this.mfaCode;\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          return Ember.RSVP.reject();\n        } else {\n          var result = Ember.RSVP.defer();\n          this.send('verifyCode', mfaCode, result);\n          return result.promise;\n        }\n      }\n    }]);\n\n    return VerifyController;\n  }(Ember.Controller.extend(Validations)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"verify\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"verify\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = VerifyController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/reset-password\", [\"exports\", \"b3i-analytics-web-app/constants/validations\", \"ember-cp-validations\"], function (_exports, _validations, _emberCpValidations) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ResetPasswordController = (_dec = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(ResetPasswordController, _Ember$Controller$ext);\n\n    var _super = _createSuper(ResetPasswordController);\n\n    function ResetPasswordController() {\n      var _this;\n\n      _classCallCheck(this, ResetPasswordController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"queryParams\", ['token', 'uid']);\n\n      _defineProperty(_assertThisInitialized(_this), \"confirmPassword\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"password\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"token\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"uid\", null);\n\n      return _this;\n    }\n\n    _createClass(ResetPasswordController, [{\n      key: \"saveButtonPressed\",\n      value: function saveButtonPressed() {\n        this.set('errors', null);\n        var result = Ember.RSVP.defer();\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          return Ember.RSVP.reject();\n        } else {\n          var password = this.password;\n          var token = this.token;\n          var uid = this.uid;\n          this.send('resetPassword', token, uid, password, result);\n        }\n\n        return result.promise;\n      }\n    }]);\n\n    return ResetPasswordController;\n  }(Ember.Controller.extend((0, _emberCpValidations.buildValidations)(_validations.default.Password))), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"saveButtonPressed\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"saveButtonPressed\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ResetPasswordController;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/saml-complete\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var SamlCompleteController = classic(_class = (_temp = /*#__PURE__*/function (_Ember$Controller) {\n    _inherits(SamlCompleteController, _Ember$Controller);\n\n    var _super = _createSuper(SamlCompleteController);\n\n    function SamlCompleteController() {\n      var _this;\n\n      _classCallCheck(this, SamlCompleteController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"queryParams\", ['access_token', 'refresh_token', 'expires_in', 'scope']);\n\n      return _this;\n    }\n\n    return SamlCompleteController;\n  }(Ember.Controller), _temp)) || _class;\n\n  _exports.default = SamlCompleteController;\n});","define(\"b3i-analytics-web-app/controllers/sandbox\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Controller.extend({\n    startRange: Ember.computed(function () {\n      return {\n        'min': [0],\n        'max': [1000]\n      };\n    }),\n    sliderValue: 30,\n    maxValue: 180,\n    rangePercent: Ember.computed('rangeValue', 'maxValue', function () {\n      var rangeValue = this.rangeValue;\n      var max = this.maxValue;\n      return Math.floor(rangeValue / max * 100);\n    }),\n    ptsTableColumns: Ember.computed(function () {\n      return [{\n        label: \"\".concat(this.numAtRisk, \" at risk of decline\"),\n        sortable: false,\n        subColumns: [{\n          label: \"\".concat(this.modelLength, \" Departments\"),\n          valuePath: 'name',\n          width: '250px',\n          cellComponent: 'cell-link',\n          cellClassNames: 'highlight-root-cell'\n        }]\n      }, {\n        label: \"\".concat(this.get('year.lastFiscalYear'), \" Actuals\"),\n        sortable: false,\n        width: '300px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'actuals1YearAgoDirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-left'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'actuals1YearAgoIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right'\n        }]\n      }, {\n        label: \"\".concat(this.get('year.fiscalYear'), \" Projected Excluding Pending Proposals\"),\n        width: '400px',\n        subColumns: [{\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'ptsCurrentYearDirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-left'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'ptsCurrentYearIndirects',\n          cellComponent: 'cell-money'\n        }, {\n          align: 'right',\n          label: 'Directs Change',\n          valuePath: 'directsChange',\n          cellComponent: 'cell-money-directs-change'\n        }, {\n          align: 'right',\n          label: 'Indirects Change',\n          valuePath: 'indirectsChange',\n          cellComponent: 'cell-money-indirects-change',\n          cellClassNames: 'column-group-right'\n        }]\n      }, {\n        label: 'Pending',\n        subColumns: [{\n          align: 'right',\n          label: 'Proposals',\n          valuePath: 'pendingCurrentYearTotal',\n          cellClassNames: 'column-group-left',\n          width: '80px'\n        }, {\n          align: 'right',\n          label: 'Directs',\n          valuePath: 'pendingCurrentYearDirects',\n          cellComponent: 'cell-money',\n          width: '120px'\n        }, {\n          align: 'right',\n          label: 'Indirects',\n          valuePath: 'pendingCurrentYearIndirects',\n          cellComponent: 'cell-money',\n          cellClassNames: 'column-group-right',\n          width: '120px'\n        }]\n      }];\n    }),\n    ptsTableModel: [{\n      name: 'My Department',\n      actuals1YearAgoDirects: 1699599,\n      actuals1YearAgoIndirects: 665255,\n      ptsCurrentYearDirects: 1,\n      ptsCurrentYearIndirects: 754220,\n      directsChange: 1,\n      indirectsChange: 88965,\n      pendingCurrentYearTotal: 16,\n      pendingCurrentYearDirects: 12567769,\n      pendingCurrentYearIndirects: 5370402\n    }, {\n      name: 'My Department',\n      actuals1YearAgoDirects: 1699599,\n      actuals1YearAgoIndirects: 665255,\n      ptsCurrentYearDirects: 1887662,\n      ptsCurrentYearIndirects: 754220,\n      directsChange: 188063,\n      indirectsChange: 88965,\n      pendingCurrentYearTotal: 16,\n      pendingCurrentYearDirects: 12567769,\n      pendingCurrentYearIndirects: 5370402\n    }, {\n      name: 'My Department',\n      actuals1YearAgoDirects: 1699599,\n      actuals1YearAgoIndirects: 665255,\n      ptsCurrentYearDirects: 1887662,\n      ptsCurrentYearIndirects: 754220,\n      directsChange: 188063,\n      indirectsChange: 88965,\n      pendingCurrentYearTotal: 16,\n      pendingCurrentYearDirects: 12567769,\n      pendingCurrentYearIndirects: 5370402\n    }],\n    ptsTableExtra: {\n      directsChange: 100,\n      indirectsChange: 100,\n      nearTermDecline: 20\n    },\n    options: ['All', 'Core', 'Mega'],\n    summaryCardModel: {\n      actuals1YearAgoTotal: 862,\n      actuals1YearAgoDirects: 277908671,\n      actuals1YearAgoIndirects: 108143388,\n      ptsCurrentYearDirects: 253540055,\n      ptsCurrentYearIndirects: 101876731,\n      pendingCurrentYearTotal: 1095,\n      pendingCurrentYearDirects: 929654005,\n      pendingCurrentYearIndirects: 436899976,\n      pendingCurrentYearTotalNoMega: 1073,\n      pendingCurrentYearDirectsNoMega: 732138090,\n      pendingCurrentYearIndirectsNoMega: 353022349,\n      endingGrantsTotal: 778,\n      endingGrantsDirects: 360603824,\n      endingGrantsIndirects: 147000208\n    },\n    isShowingModal: false,\n    grantTypeOptions: ['All Grants', 'Core Grants', 'Mega Grants'],\n    chartData: {\n      labels: ['2013', '2014', '2015', '2016', '2017', '2018', '2020', '2021', '2022'],\n      datasets: [{\n        label: 'Directs',\n        data: [887, 987, 1130, 1080, 980, 1080, 1010, 1000, 1000],\n        backgroundColor: '#71C5E8',\n        borderWidth: 0\n      }, {\n        label: 'Indirects',\n        data: [415, 500, 530, 490, 415, 500, 490, 470, 470, 470],\n        backgroundColor: '#F1BE48',\n        borderWidth: 0\n      }]\n    },\n    chartOptions: {\n      scales: {\n        yAxes: [{\n          ticks: {\n            beginAtZero: true,\n            fontColor: '#889CAC',\n            fontFamily: 'Lato',\n            fontStyle: 'bold'\n          },\n          gridLines: {\n            drawTicks: true,\n            zeroLineWidth: 2\n          }\n        }],\n        xAxes: [{\n          ticks: {\n            fontColor: '#889CAC',\n            fontFamily: 'Lato',\n            fontStyle: 'bold'\n          }\n        }]\n      },\n      legend: {\n        position: 'top',\n        labels: {\n          boxWidth: 12,\n          fontColor: '#889CAC',\n          fontFamily: 'Lato',\n          fontStyle: 'bold'\n        }\n      },\n      tooltips: {\n        backgroundColor: '#FAFBFB',\n        bodyFontColor: '#416477',\n        bodyFontFamily: 'Lato',\n        bodySpacing: 6,\n        footerMarginBottom: 20,\n        mode: 'index',\n        multiKeyBackground: '#FAFBFB',\n        titleFontColor: '#416477',\n        titleMarginBottom: 12,\n        xPadding: 12,\n        yPadding: 12\n      }\n    },\n    actions: {\n      toggleModal: function toggleModal() {\n        this.toggleProperty('isShowingModal');\n      },\n      submitAsyncButton: function submitAsyncButton() {\n        return new Ember.RSVP.Promise(function (resolve) {\n          Ember.run.later(function () {\n            resolve();\n          }, 2000);\n        });\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/controllers/signup\", [\"exports\", \"ember-cp-validations\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _emberCpValidations, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    firstName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'First name'\n    }),\n    lastName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Last name'\n    }),\n    password: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Password'\n    }), (0, _emberCpValidations.validator)('length', {\n      min: 8,\n      message: 'Your password must be at least 8 characters.'\n    })],\n    confirmPassword: (0, _emberCpValidations.validator)('confirmation', {\n      on: 'password',\n      message: 'Passwords do not match.'\n    })\n  });\n  var SignupController = (_dec = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Controller$ext) {\n    _inherits(SignupController, _Ember$Controller$ext);\n\n    var _super = _createSuper(SignupController);\n\n    function SignupController() {\n      var _this;\n\n      _classCallCheck(this, SignupController);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"queryParams\", ['code']);\n\n      _defineProperty(_assertThisInitialized(_this), \"firstName\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"lastName\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"password\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"confirmPassword\", null);\n\n      return _this;\n    }\n\n    _createClass(SignupController, [{\n      key: \"registerButtonPressed\",\n      value: function registerButtonPressed() {\n        this.set('errors', null);\n        var errors = this.get('validations.messages');\n        this.set('showError', true);\n\n        if (errors.length > 0) {\n          this.set('errors', errors);\n          return Ember.RSVP.reject();\n        } else {\n          var result = Ember.RSVP.defer();\n          var firstName = this.firstName;\n          var lastName = this.lastName;\n          var password = this.password;\n          var user = {\n            data: {\n              type: 'users',\n              attributes: {\n                first_name: firstName,\n                last_name: lastName,\n                password: password,\n                code: this.code\n              }\n            }\n          };\n          this.send('signup', user, result);\n          return result.promise;\n        }\n      }\n    }]);\n\n    return SignupController;\n  }(Ember.Controller.extend(Validations)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"registerButtonPressed\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"registerButtonPressed\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SignupController;\n});","define(\"b3i-analytics-web-app/data-adapter\", [\"exports\", \"@ember-data/debug\"], function (_exports, _debug) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _debug.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/-element\", [\"exports\", \"ember-element-helper/helpers/-element\"], function (_exports, _element) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _element.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/abs\", [\"exports\", \"ember-math-helpers/helpers/abs\"], function (_exports, _abs) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _abs.default;\n    }\n  });\n  Object.defineProperty(_exports, \"abs\", {\n    enumerable: true,\n    get: function get() {\n      return _abs.abs;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/acos\", [\"exports\", \"ember-math-helpers/helpers/acos\"], function (_exports, _acos) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _acos.default;\n    }\n  });\n  Object.defineProperty(_exports, \"acos\", {\n    enumerable: true,\n    get: function get() {\n      return _acos.acos;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/acosh\", [\"exports\", \"ember-math-helpers/helpers/acosh\"], function (_exports, _acosh) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _acosh.default;\n    }\n  });\n  Object.defineProperty(_exports, \"acosh\", {\n    enumerable: true,\n    get: function get() {\n      return _acosh.acosh;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/add\", [\"exports\", \"ember-math-helpers/helpers/add\"], function (_exports, _add) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _add.default;\n    }\n  });\n  Object.defineProperty(_exports, \"add\", {\n    enumerable: true,\n    get: function get() {\n      return _add.add;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/and\", [\"exports\", \"ember-truth-helpers/helpers/and\"], function (_exports, _and) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _and.default;\n    }\n  });\n  Object.defineProperty(_exports, \"and\", {\n    enumerable: true,\n    get: function get() {\n      return _and.and;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/app-version\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"ember-cli-app-version/utils/regexp\"], function (_exports, _environment, _regexp) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.appVersion = appVersion;\n  _exports.default = void 0;\n\n  function appVersion(_) {\n    var hash = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n    var version = _environment.default.APP.version; // e.g. 1.0.0-alpha.1+4jds75hf\n    // Allow use of 'hideSha' and 'hideVersion' For backwards compatibility\n\n    var versionOnly = hash.versionOnly || hash.hideSha;\n    var shaOnly = hash.shaOnly || hash.hideVersion;\n    var match = null;\n\n    if (versionOnly) {\n      if (hash.showExtended) {\n        match = version.match(_regexp.versionExtendedRegExp); // 1.0.0-alpha.1\n      } // Fallback to just version\n\n\n      if (!match) {\n        match = version.match(_regexp.versionRegExp); // 1.0.0\n      }\n    }\n\n    if (shaOnly) {\n      match = version.match(_regexp.shaRegExp); // 4jds75hf\n    }\n\n    return match ? match[0] : version;\n  }\n\n  var _default = Ember.Helper.helper(appVersion);\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/asin\", [\"exports\", \"ember-math-helpers/helpers/asin\"], function (_exports, _asin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _asin.default;\n    }\n  });\n  Object.defineProperty(_exports, \"asin\", {\n    enumerable: true,\n    get: function get() {\n      return _asin.asin;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/asinh\", [\"exports\", \"ember-math-helpers/helpers/asinh\"], function (_exports, _asinh) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _asinh.default;\n    }\n  });\n  Object.defineProperty(_exports, \"asinh\", {\n    enumerable: true,\n    get: function get() {\n      return _asinh.asinh;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _assign.default;\n    }\n  });\n  Object.defineProperty(_exports, \"assign\", {\n    enumerable: true,\n    get: function get() {\n      return _assign.assign;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/atan\", [\"exports\", \"ember-math-helpers/helpers/atan\"], function (_exports, _atan) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _atan.default;\n    }\n  });\n  Object.defineProperty(_exports, \"atan\", {\n    enumerable: true,\n    get: function get() {\n      return _atan.atan;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/atan2\", [\"exports\", \"ember-math-helpers/helpers/atan2\"], function (_exports, _atan) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _atan.default;\n    }\n  });\n  Object.defineProperty(_exports, \"atan2\", {\n    enumerable: true,\n    get: function get() {\n      return _atan.atan2;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/atanh\", [\"exports\", \"ember-math-helpers/helpers/atanh\"], function (_exports, _atanh) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _atanh.default;\n    }\n  });\n  Object.defineProperty(_exports, \"atanh\", {\n    enumerable: true,\n    get: function get() {\n      return _atanh.atanh;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/camelize\", [\"exports\", \"ember-cli-string-helpers/helpers/camelize\"], function (_exports, _camelize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _camelize.default;\n    }\n  });\n  Object.defineProperty(_exports, \"camelize\", {\n    enumerable: true,\n    get: function get() {\n      return _camelize.camelize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/cancel-all\", [\"exports\", \"ember-concurrency/helpers/cancel-all\"], function (_exports, _cancelAll) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _cancelAll.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/capitalize\", [\"exports\", \"ember-cli-string-helpers/helpers/capitalize\"], function (_exports, _capitalize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _capitalize.default;\n    }\n  });\n  Object.defineProperty(_exports, \"capitalize\", {\n    enumerable: true,\n    get: function get() {\n      return _capitalize.capitalize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/cbrt\", [\"exports\", \"ember-math-helpers/helpers/cbrt\"], function (_exports, _cbrt) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _cbrt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"cbrt\", {\n    enumerable: true,\n    get: function get() {\n      return _cbrt.cbrt;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/ceil\", [\"exports\", \"ember-math-helpers/helpers/ceil\"], function (_exports, _ceil) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _ceil.default;\n    }\n  });\n  Object.defineProperty(_exports, \"ceil\", {\n    enumerable: true,\n    get: function get() {\n      return _ceil.ceil;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/classify\", [\"exports\", \"ember-cli-string-helpers/helpers/classify\"], function (_exports, _classify) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _classify.default;\n    }\n  });\n  Object.defineProperty(_exports, \"classify\", {\n    enumerable: true,\n    get: function get() {\n      return _classify.classify;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/clz32\", [\"exports\", \"ember-math-helpers/helpers/clz32\"], function (_exports, _clz) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _clz.default;\n    }\n  });\n  Object.defineProperty(_exports, \"clz32\", {\n    enumerable: true,\n    get: function get() {\n      return _clz.clz32;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/compute\", [\"exports\", \"ember-light-table/helpers/compute\"], function (_exports, _compute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _compute.default;\n    }\n  });\n  Object.defineProperty(_exports, \"compute\", {\n    enumerable: true,\n    get: function get() {\n      return _compute.compute;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/cos\", [\"exports\", \"ember-math-helpers/helpers/cos\"], function (_exports, _cos) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _cos.default;\n    }\n  });\n  Object.defineProperty(_exports, \"cos\", {\n    enumerable: true,\n    get: function get() {\n      return _cos.cos;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/cosh\", [\"exports\", \"ember-math-helpers/helpers/cosh\"], function (_exports, _cosh) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _cosh.default;\n    }\n  });\n  Object.defineProperty(_exports, \"cosh\", {\n    enumerable: true,\n    get: function get() {\n      return _cosh.cosh;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/dasherize-string\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.dasherizeString = dasherizeString;\n  _exports.default = void 0;\n\n  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\n  function _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  function _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\n  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n  function dasherizeString(params\n  /*, hash*/\n  ) {\n    var _params = _slicedToArray(params, 1),\n        string = _params[0];\n\n    return Ember.String.dasherize(string);\n  }\n\n  var _default = Ember.Helper.helper(dasherizeString);\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/dasherize\", [\"exports\", \"ember-cli-string-helpers/helpers/dasherize\"], function (_exports, _dasherize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _dasherize.default;\n    }\n  });\n  Object.defineProperty(_exports, \"dasherize\", {\n    enumerable: true,\n    get: function get() {\n      return _dasherize.dasherize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/div\", [\"exports\", \"ember-math-helpers/helpers/div\"], function (_exports, _div) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _div.default;\n    }\n  });\n  Object.defineProperty(_exports, \"div\", {\n    enumerable: true,\n    get: function get() {\n      return _div.div;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/ember-power-select-is-group\", [\"exports\", \"ember-power-select/helpers/ember-power-select-is-group\"], function (_exports, _emberPowerSelectIsGroup) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberPowerSelectIsGroup.default;\n    }\n  });\n  Object.defineProperty(_exports, \"emberPowerSelectIsGroup\", {\n    enumerable: true,\n    get: function get() {\n      return _emberPowerSelectIsGroup.emberPowerSelectIsGroup;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/ember-power-select-is-selected\", [\"exports\", \"ember-power-select/helpers/ember-power-select-is-selected\"], function (_exports, _emberPowerSelectIsSelected) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberPowerSelectIsSelected.default;\n    }\n  });\n  Object.defineProperty(_exports, \"emberPowerSelectIsSelected\", {\n    enumerable: true,\n    get: function get() {\n      return _emberPowerSelectIsSelected.emberPowerSelectIsSelected;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/eq\", [\"exports\", \"ember-truth-helpers/helpers/equal\"], function (_exports, _equal) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _equal.default;\n    }\n  });\n  Object.defineProperty(_exports, \"equal\", {\n    enumerable: true,\n    get: function get() {\n      return _equal.equal;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/exp\", [\"exports\", \"ember-math-helpers/helpers/exp\"], function (_exports, _exp) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _exp.default;\n    }\n  });\n  Object.defineProperty(_exports, \"exp\", {\n    enumerable: true,\n    get: function get() {\n      return _exp.exp;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/expm1\", [\"exports\", \"ember-math-helpers/helpers/expm1\"], function (_exports, _expm) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _expm.default;\n    }\n  });\n  Object.defineProperty(_exports, \"expm1\", {\n    enumerable: true,\n    get: function get() {\n      return _expm.expm1;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/floor\", [\"exports\", \"ember-math-helpers/helpers/floor\"], function (_exports, _floor) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _floor.default;\n    }\n  });\n  Object.defineProperty(_exports, \"floor\", {\n    enumerable: true,\n    get: function get() {\n      return _floor.floor;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/format-money\", [\"exports\", \"accounting/helpers/format-money\"], function (_exports, _formatMoney) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _formatMoney.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/format-number\", [\"exports\", \"accounting/helpers/format-number\"], function (_exports, _formatNumber) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _formatNumber.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/fround\", [\"exports\", \"ember-math-helpers/helpers/fround\"], function (_exports, _fround) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _fround.default;\n    }\n  });\n  Object.defineProperty(_exports, \"fround\", {\n    enumerable: true,\n    get: function get() {\n      return _fround.fround;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/gcd\", [\"exports\", \"ember-math-helpers/helpers/gcd\"], function (_exports, _gcd) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _gcd.default;\n    }\n  });\n  Object.defineProperty(_exports, \"gcd\", {\n    enumerable: true,\n    get: function get() {\n      return _gcd.gcd;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/gt\", [\"exports\", \"ember-truth-helpers/helpers/gt\"], function (_exports, _gt) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _gt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"gt\", {\n    enumerable: true,\n    get: function get() {\n      return _gt.gt;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/gte\", [\"exports\", \"ember-truth-helpers/helpers/gte\"], function (_exports, _gte) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _gte.default;\n    }\n  });\n  Object.defineProperty(_exports, \"gte\", {\n    enumerable: true,\n    get: function get() {\n      return _gte.gte;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/html-safe\", [\"exports\", \"ember-cli-string-helpers/helpers/html-safe\"], function (_exports, _htmlSafe) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _htmlSafe.default;\n    }\n  });\n  Object.defineProperty(_exports, \"htmlSafe\", {\n    enumerable: true,\n    get: function get() {\n      return _htmlSafe.htmlSafe;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/humanize\", [\"exports\", \"ember-cli-string-helpers/helpers/humanize\"], function (_exports, _humanize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _humanize.default;\n    }\n  });\n  Object.defineProperty(_exports, \"humanize\", {\n    enumerable: true,\n    get: function get() {\n      return _humanize.humanize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/hypot\", [\"exports\", \"ember-math-helpers/helpers/hypot\"], function (_exports, _hypot) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _hypot.default;\n    }\n  });\n  Object.defineProperty(_exports, \"hypot\", {\n    enumerable: true,\n    get: function get() {\n      return _hypot.hypot;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/imul\", [\"exports\", \"ember-math-helpers/helpers/imul\"], function (_exports, _imul) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _imul.default;\n    }\n  });\n  Object.defineProperty(_exports, \"imul\", {\n    enumerable: true,\n    get: function get() {\n      return _imul.imul;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-after\", [\"exports\", \"ember-moment/helpers/is-after\"], function (_exports, _isAfter) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isAfter.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-array\", [\"exports\", \"ember-truth-helpers/helpers/is-array\"], function (_exports, _isArray) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isArray.default;\n    }\n  });\n  Object.defineProperty(_exports, \"isArray\", {\n    enumerable: true,\n    get: function get() {\n      return _isArray.isArray;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-before\", [\"exports\", \"ember-moment/helpers/is-before\"], function (_exports, _isBefore) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isBefore.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-between\", [\"exports\", \"ember-moment/helpers/is-between\"], function (_exports, _isBetween) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isBetween.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-empty\", [\"exports\", \"ember-truth-helpers/helpers/is-empty\"], function (_exports, _isEmpty) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isEmpty.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-equal\", [\"exports\", \"ember-truth-helpers/helpers/is-equal\"], function (_exports, _isEqual) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isEqual.default;\n    }\n  });\n  Object.defineProperty(_exports, \"isEqual\", {\n    enumerable: true,\n    get: function get() {\n      return _isEqual.isEqual;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-same-or-after\", [\"exports\", \"ember-moment/helpers/is-same-or-after\"], function (_exports, _isSameOrAfter) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isSameOrAfter.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-same-or-before\", [\"exports\", \"ember-moment/helpers/is-same-or-before\"], function (_exports, _isSameOrBefore) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isSameOrBefore.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/is-same\", [\"exports\", \"ember-moment/helpers/is-same\"], function (_exports, _isSame) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _isSame.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/lcm\", [\"exports\", \"ember-math-helpers/helpers/lcm\"], function (_exports, _lcm) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _lcm.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lcm\", {\n    enumerable: true,\n    get: function get() {\n      return _lcm.lcm;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/log-e\", [\"exports\", \"ember-math-helpers/helpers/log-e\"], function (_exports, _logE) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _logE.default;\n    }\n  });\n  Object.defineProperty(_exports, \"logE\", {\n    enumerable: true,\n    get: function get() {\n      return _logE.logE;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/log10\", [\"exports\", \"ember-math-helpers/helpers/log10\"], function (_exports, _log) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _log.default;\n    }\n  });\n  Object.defineProperty(_exports, \"log10\", {\n    enumerable: true,\n    get: function get() {\n      return _log.log10;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/log1p\", [\"exports\", \"ember-math-helpers/helpers/log1p\"], function (_exports, _log1p) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _log1p.default;\n    }\n  });\n  Object.defineProperty(_exports, \"log1p\", {\n    enumerable: true,\n    get: function get() {\n      return _log1p.log1p;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/log2\", [\"exports\", \"ember-math-helpers/helpers/log2\"], function (_exports, _log) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _log.default;\n    }\n  });\n  Object.defineProperty(_exports, \"log2\", {\n    enumerable: true,\n    get: function get() {\n      return _log.log2;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/lowercase\", [\"exports\", \"ember-cli-string-helpers/helpers/lowercase\"], function (_exports, _lowercase) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _lowercase.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lowercase\", {\n    enumerable: true,\n    get: function get() {\n      return _lowercase.lowercase;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/lt\", [\"exports\", \"ember-truth-helpers/helpers/lt\"], function (_exports, _lt) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _lt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lt\", {\n    enumerable: true,\n    get: function get() {\n      return _lt.lt;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/lte\", [\"exports\", \"ember-truth-helpers/helpers/lte\"], function (_exports, _lte) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _lte.default;\n    }\n  });\n  Object.defineProperty(_exports, \"lte\", {\n    enumerable: true,\n    get: function get() {\n      return _lte.lte;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/max\", [\"exports\", \"ember-math-helpers/helpers/max\"], function (_exports, _max) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _max.default;\n    }\n  });\n  Object.defineProperty(_exports, \"max\", {\n    enumerable: true,\n    get: function get() {\n      return _max.max;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/media\", [\"exports\", \"ember-responsive/helpers/media\"], function (_exports, _media) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _media.default;\n    }\n  });\n  Object.defineProperty(_exports, \"media\", {\n    enumerable: true,\n    get: function get() {\n      return _media.media;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/min\", [\"exports\", \"ember-math-helpers/helpers/min\"], function (_exports, _min) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _min.default;\n    }\n  });\n  Object.defineProperty(_exports, \"min\", {\n    enumerable: true,\n    get: function get() {\n      return _min.min;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/mod\", [\"exports\", \"ember-math-helpers/helpers/mod\"], function (_exports, _mod) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _mod.default;\n    }\n  });\n  Object.defineProperty(_exports, \"mod\", {\n    enumerable: true,\n    get: function get() {\n      return _mod.mod;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-add\", [\"exports\", \"ember-moment/helpers/moment-add\"], function (_exports, _momentAdd) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentAdd.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-calendar\", [\"exports\", \"ember-moment/helpers/moment-calendar\"], function (_exports, _momentCalendar) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentCalendar.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-diff\", [\"exports\", \"ember-moment/helpers/moment-diff\"], function (_exports, _momentDiff) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentDiff.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _momentDuration.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-format\", [\"exports\", \"ember-moment/helpers/moment-format\"], function (_exports, _momentFormat) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentFormat.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-from-now\", [\"exports\", \"ember-moment/helpers/moment-from-now\"], function (_exports, _momentFromNow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentFromNow.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-from\", [\"exports\", \"ember-moment/helpers/moment-from\"], function (_exports, _momentFrom) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentFrom.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-subtract\", [\"exports\", \"ember-moment/helpers/moment-subtract\"], function (_exports, _momentSubtract) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentSubtract.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-to-date\", [\"exports\", \"ember-moment/helpers/moment-to-date\"], function (_exports, _momentToDate) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentToDate.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-to-now\", [\"exports\", \"ember-moment/helpers/moment-to-now\"], function (_exports, _momentToNow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentToNow.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/moment-to\", [\"exports\", \"ember-moment/helpers/moment-to\"], function (_exports, _momentTo) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _momentTo.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _unix.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _moment.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/mult\", [\"exports\", \"ember-math-helpers/helpers/mult\"], function (_exports, _mult) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _mult.default;\n    }\n  });\n  Object.defineProperty(_exports, \"mult\", {\n    enumerable: true,\n    get: function get() {\n      return _mult.mult;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/not-eq\", [\"exports\", \"ember-truth-helpers/helpers/not-equal\"], function (_exports, _notEqual) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _notEqual.default;\n    }\n  });\n  Object.defineProperty(_exports, \"notEqualHelper\", {\n    enumerable: true,\n    get: function get() {\n      return _notEqual.notEqualHelper;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/not\", [\"exports\", \"ember-truth-helpers/helpers/not\"], function (_exports, _not) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _not.default;\n    }\n  });\n  Object.defineProperty(_exports, \"not\", {\n    enumerable: true,\n    get: function get() {\n      return _not.not;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _now.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/or\", [\"exports\", \"ember-truth-helpers/helpers/or\"], function (_exports, _or) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _or.default;\n    }\n  });\n  Object.defineProperty(_exports, \"or\", {\n    enumerable: true,\n    get: function get() {\n      return _or.or;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/perform\", [\"exports\", \"ember-concurrency/helpers/perform\"], function (_exports, _perform) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _perform.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 = void 0;\n  var _default = _pluralize.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/pow\", [\"exports\", \"ember-math-helpers/helpers/pow\"], function (_exports, _pow) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _pow.default;\n    }\n  });\n  Object.defineProperty(_exports, \"pow\", {\n    enumerable: true,\n    get: function get() {\n      return _pow.pow;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/random\", [\"exports\", \"ember-math-helpers/helpers/random\"], function (_exports, _random) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _random.default;\n    }\n  });\n  Object.defineProperty(_exports, \"random\", {\n    enumerable: true,\n    get: function get() {\n      return _random.random;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/round\", [\"exports\", \"ember-math-helpers/helpers/round\"], function (_exports, _round) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _round.default;\n    }\n  });\n  Object.defineProperty(_exports, \"round\", {\n    enumerable: true,\n    get: function get() {\n      return _round.round;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/send\", [\"exports\", \"ember-component-inbound-actions/helpers/send\"], function (_exports, _send) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _send.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/sign\", [\"exports\", \"ember-math-helpers/helpers/sign\"], function (_exports, _sign) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _sign.default;\n    }\n  });\n  Object.defineProperty(_exports, \"sign\", {\n    enumerable: true,\n    get: function get() {\n      return _sign.sign;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/sin\", [\"exports\", \"ember-math-helpers/helpers/sin\"], function (_exports, _sin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _sin.default;\n    }\n  });\n  Object.defineProperty(_exports, \"sin\", {\n    enumerable: true,\n    get: function get() {\n      return _sin.sin;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 = void 0;\n  var _default = _singularize.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/helpers/sqrt\", [\"exports\", \"ember-math-helpers/helpers/sqrt\"], function (_exports, _sqrt) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _sqrt.default;\n    }\n  });\n  Object.defineProperty(_exports, \"sqrt\", {\n    enumerable: true,\n    get: function get() {\n      return _sqrt.sqrt;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/sub\", [\"exports\", \"ember-math-helpers/helpers/sub\"], function (_exports, _sub) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _sub.default;\n    }\n  });\n  Object.defineProperty(_exports, \"sub\", {\n    enumerable: true,\n    get: function get() {\n      return _sub.sub;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/tan\", [\"exports\", \"ember-math-helpers/helpers/tan\"], function (_exports, _tan) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _tan.default;\n    }\n  });\n  Object.defineProperty(_exports, \"tan\", {\n    enumerable: true,\n    get: function get() {\n      return _tan.tan;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/tanh\", [\"exports\", \"ember-math-helpers/helpers/tanh\"], function (_exports, _tanh) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _tanh.default;\n    }\n  });\n  Object.defineProperty(_exports, \"tanh\", {\n    enumerable: true,\n    get: function get() {\n      return _tanh.tanh;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/task\", [\"exports\", \"ember-concurrency/helpers/task\"], function (_exports, _task) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _task.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/titleize\", [\"exports\", \"ember-cli-string-helpers/helpers/titleize\"], function (_exports, _titleize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _titleize.default;\n    }\n  });\n  Object.defineProperty(_exports, \"titleize\", {\n    enumerable: true,\n    get: function get() {\n      return _titleize.titleize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/trim\", [\"exports\", \"ember-cli-string-helpers/helpers/trim\"], function (_exports, _trim) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _trim.default;\n    }\n  });\n  Object.defineProperty(_exports, \"trim\", {\n    enumerable: true,\n    get: function get() {\n      return _trim.trim;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/trunc\", [\"exports\", \"ember-math-helpers/helpers/trunc\"], function (_exports, _trunc) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _trunc.default;\n    }\n  });\n  Object.defineProperty(_exports, \"trunc\", {\n    enumerable: true,\n    get: function get() {\n      return _trunc.trunc;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/truncate\", [\"exports\", \"ember-cli-string-helpers/helpers/truncate\"], function (_exports, _truncate) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _truncate.default;\n    }\n  });\n  Object.defineProperty(_exports, \"truncate\", {\n    enumerable: true,\n    get: function get() {\n      return _truncate.truncate;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/underscore\", [\"exports\", \"ember-cli-string-helpers/helpers/underscore\"], function (_exports, _underscore) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _underscore.default;\n    }\n  });\n  Object.defineProperty(_exports, \"underscore\", {\n    enumerable: true,\n    get: function get() {\n      return _underscore.underscore;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _unix.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/uppercase\", [\"exports\", \"ember-cli-string-helpers/helpers/uppercase\"], function (_exports, _uppercase) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _uppercase.default;\n    }\n  });\n  Object.defineProperty(_exports, \"uppercase\", {\n    enumerable: true,\n    get: function get() {\n      return _uppercase.uppercase;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _utc.default;\n    }\n  });\n  Object.defineProperty(_exports, \"utc\", {\n    enumerable: true,\n    get: function get() {\n      return _utc.utc;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/w\", [\"exports\", \"ember-cli-string-helpers/helpers/w\"], function (_exports, _w) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _w.default;\n    }\n  });\n  Object.defineProperty(_exports, \"w\", {\n    enumerable: true,\n    get: function get() {\n      return _w.w;\n    }\n  });\n});","define(\"b3i-analytics-web-app/helpers/xor\", [\"exports\", \"ember-truth-helpers/helpers/xor\"], function (_exports, _xor) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _xor.default;\n    }\n  });\n  Object.defineProperty(_exports, \"xor\", {\n    enumerable: true,\n    get: function get() {\n      return _xor.xor;\n    }\n  });\n});","define(\"b3i-analytics-web-app/index\", [\"exports\", \"ember-uuid\"], function (_exports, _emberUuid) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"v4\", {\n    enumerable: true,\n    get: function get() {\n      return _emberUuid.v4;\n    }\n  });\n  Object.defineProperty(_exports, \"v1\", {\n    enumerable: true,\n    get: function get() {\n      return _emberUuid.v1;\n    }\n  });\n  Object.defineProperty(_exports, \"parse\", {\n    enumerable: true,\n    get: function get() {\n      return _emberUuid.parse;\n    }\n  });\n  Object.defineProperty(_exports, \"unparse\", {\n    enumerable: true,\n    get: function get() {\n      return _emberUuid.unparse;\n    }\n  });\n});","define(\"b3i-analytics-web-app/initializers/accounting\", [\"exports\", \"accounting/settings\"], function (_exports, _settings) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize()\n  /* application */\n  {\n    // application.inject('route', 'foo', 'service:foo');\n    _settings.currency.precision = 0;\n    _settings.currency.format = {\n      pos: \"%s%v\",\n      neg: \"(%s%v)\",\n      zero: \"%s0\"\n    };\n  }\n\n  var _default = {\n    initialize: initialize\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/app-version\", [\"exports\", \"ember-cli-app-version/initializer-factory\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _initializerFactory, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var name, version;\n\n  if (_environment.default.APP) {\n    name = _environment.default.APP.name;\n    version = _environment.default.APP.version;\n  }\n\n  var _default = {\n    name: 'App Version',\n    initialize: (0, _initializerFactory.default)(name, version)\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/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 = void 0;\n  var _default = {\n    name: 'container-debug-adapter',\n    initialize: function initialize() {\n      var app = arguments[1] || arguments[0];\n      app.register('container-debug-adapter:main', _containerDebugAdapter.default);\n      app.inject('container-debug-adapter:main', 'namespace', 'application:main');\n    }\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/debug\", [\"exports\", \"@html-next/vertical-collection/-debug\"], function (_exports, _debug) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'vertical-collection-debug',\n    initialize: function initialize() {}\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/ember-concurrency\", [\"exports\", \"ember-concurrency/initializers/ember-concurrency\"], function (_exports, _emberConcurrency) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _emberConcurrency.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/initializers/ember-data-data-adapter\", [\"exports\", \"@ember-data/debug/setup\"], function (_exports, _setup) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _setup.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/initializers/ember-data\", [\"exports\", \"ember-data\", \"ember-data/setup-container\"], function (_exports, _emberData, _setupContainer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  /*\n    This code initializes EmberData in an Ember application.\n  \n    It ensures that the `store` service is automatically injected\n    as the `store` property on all routes and controllers.\n  */\n  var _default = {\n    name: 'ember-data',\n    initialize: _setupContainer.default\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/ember-responsive-breakpoints\", [\"exports\", \"ember-responsive/initializers/responsive\"], function (_exports, _responsive) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _responsive.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/ember-simple-auth\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"ember-simple-auth/configuration\", \"ember-simple-auth/initializers/setup-session\", \"ember-simple-auth/initializers/setup-session-service\", \"ember-simple-auth/initializers/setup-session-restoration\"], function (_exports, _environment, _configuration, _setupSession, _setupSessionService, _setupSessionRestoration) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'ember-simple-auth',\n    initialize: function initialize(registry) {\n      var config = _environment.default['ember-simple-auth'] || {};\n      config.rootURL = _environment.default.rootURL || _environment.default.baseURL;\n\n      _configuration.default.load(config);\n\n      (0, _setupSession.default)(registry);\n      (0, _setupSessionService.default)(registry);\n      (0, _setupSessionRestoration.default)(registry);\n    }\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/export-application-global\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n\n    if (_environment.default.exportApplicationGlobal !== false) {\n      var theGlobal;\n\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.String.classify(_environment.default.modulePrefix);\n      }\n\n      if (!theGlobal[globalName]) {\n        theGlobal[globalName] = application;\n        application.reopen({\n          willDestroy: function willDestroy() {\n            this._super.apply(this, arguments);\n\n            delete theGlobal[globalName];\n          }\n        });\n      }\n    }\n  }\n\n  var _default = {\n    name: 'export-application-global',\n    initialize: initialize\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/metrics\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.initialize = initialize;\n  _exports.default = void 0;\n\n  function initialize() {\n    var application = arguments[1] || arguments[0];\n    var _config$metricsAdapte = _environment.default.metricsAdapters,\n        metricsAdapters = _config$metricsAdapte === void 0 ? [] : _config$metricsAdapte;\n    var _config$environment = _environment.default.environment,\n        environment = _config$environment === void 0 ? 'development' : _config$environment;\n    var options = {\n      metricsAdapters: metricsAdapters,\n      environment: environment\n    };\n    application.register('config:metrics', options, {\n      instantiate: false\n    });\n    application.inject('service:metrics', 'options', 'config:metrics');\n  }\n\n  var _default = {\n    name: 'metrics',\n    initialize: initialize\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/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 = void 0;\n\n  /**\n   * Ember responsive initializer\n   *\n   * Supports auto injecting media service app-wide.\n   *\n   * Generated by the ember-responsive addon. Customize initialize to change\n   * injection.\n   */\n  var _default = {\n    name: 'responsive',\n    initialize: _responsive.initialize\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/initializers/viewport-config\", [\"exports\", \"ember-in-viewport/initializers/viewport-config\"], function (_exports, _viewportConfig) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _viewportConfig.default;\n    }\n  });\n  Object.defineProperty(_exports, \"initialize\", {\n    enumerable: true,\n    get: function get() {\n      return _viewportConfig.initialize;\n    }\n  });\n});","define(\"b3i-analytics-web-app/instance-initializers/ember-data\", [\"exports\", \"ember-data/initialize-store-service\"], function (_exports, _initializeStoreService) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'ember-data',\n    initialize: _initializeStoreService.default\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/instance-initializers/ember-simple-auth\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  // This is only needed for backwards compatibility and will be removed in the\n  // next major release of ember-simple-auth. Unfortunately, there is no way to\n  // deprecate this without hooking into Ember's internals…\n  var _default = {\n    name: 'ember-simple-auth',\n    initialize: function initialize() {}\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/instance-initializers/raven-setup\", [\"exports\", \"ember-cli-sentry\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _emberCliSentry, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = {\n    name: 'sentry-setup',\n    initialize: function initialize(application) {\n      (0, _emberCliSentry.initialize)(application.lookup ? application : application.container, _environment.default);\n    }\n  };\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/admin-only-route\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    currentUser: Ember.inject.service('current-user'),\n    beforeModel: function beforeModel(transition) {\n      if (this.get('currentUser.role') !== 'admin') {\n        transition.abort();\n        this.transitionTo(_environment.default.routeAfterAuthentication);\n      }\n\n      return this._super.apply(this, arguments);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/click-outside\", [\"exports\", \"ember-click-outside/mixin\"], function (_exports, _mixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _mixin.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/mixins/current-year-projections\", [\"exports\", \"b3i-analytics-web-app/utils/format-percentage\"], function (_exports, _formatPercentage) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var TWOYEARAVG = \"2 Yr Avg\";\n  var THREEYRAVG = \"3 Yr Avg\";\n  var PRIORYEAR = \"Prior Yr\";\n  var YTD = \"YTD\";\n  var YTDREVISED = \"Revert\";\n  var STAY = \"Stay\";\n  var SPLIT = 'Split';\n  var REVERT = 'Revert';\n\n  var _default = Ember.Mixin.create({\n    //region Core Conversion Ratios Default Settings\n    coreConversionRatiosSettingsOpenCurrentYearNih: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearNih: STAY,\n    coreConversionRatiosSettingsTransitionNextYearNih: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearOtherFed: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearOtherFed: STAY,\n    coreConversionRatiosSettingsTransitionNextYearOtherFed: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearFedFlowThru: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru: STAY,\n    coreConversionRatiosSettingsTransitionNextYearFedFlowThru: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearNonFed: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearNonFed: STAY,\n    coreConversionRatiosSettingsTransitionNextYearNonFed: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearSponsor5: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor5: STAY,\n    coreConversionRatiosSettingsTransitionNextYearSponsor5: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearSponsor6: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor6: STAY,\n    coreConversionRatiosSettingsTransitionNextYearSponsor6: STAY,\n    coreConversionRatiosSettingsOpenCurrentYearSponsor7: PRIORYEAR,\n    coreConversionRatiosSettingsRevisedCurrentYearSponsor7: STAY,\n    coreConversionRatiosSettingsTransitionNextYearSponsor7: STAY,\n    //endregion\n    //region Core Proposals Default Settings\n    coreProposalsSettingsOpenCurrentYearNih: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearNih: STAY,\n    coreProposalsSettingsTransitionNextYearNih: STAY,\n    coreProposalsSettingsOpenCurrentYearOtherFed: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearOtherFed: STAY,\n    coreProposalsSettingsTransitionNextYearOtherFed: STAY,\n    coreProposalsSettingsOpenCurrentYearFedFlowThru: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearFedFlowThru: STAY,\n    coreProposalsSettingsTransitionNextYearFedFlowThru: STAY,\n    coreProposalsSettingsOpenCurrentYearNonFed: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearNonFed: STAY,\n    coreProposalsSettingsTransitionNextYearNonFed: STAY,\n    coreProposalsSettingsOpenCurrentYearSponsor5: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearSponsor5: STAY,\n    coreProposalsSettingsTransitionNextYearSponsor5: STAY,\n    coreProposalsSettingsOpenCurrentYearSponsor6: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearSponsor6: STAY,\n    coreProposalsSettingsTransitionNextYearSponsor6: STAY,\n    coreProposalsSettingsOpenCurrentYearSponsor7: PRIORYEAR,\n    coreProposalsSettingsRevisedCurrentYearSponsor7: STAY,\n    coreProposalsSettingsTransitionNextYearSponsor7: STAY,\n    //endregion\n    //region Core Conversion Ratios Settings Calculations\n    coreConversionRatiosOpenCurrentYearNihDirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoNihDirects,coreConversionRatiosTwoYearAvgNihDirects,coreConversionRatiosThreeYearAvgNihDirects}', 'coreConversionRatiosSettingsOpenCurrentYearNih', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearNih, this.get('model.projection.coreConversionRatiosOneYearAgoNihDirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgNihDirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgNihDirects'));\n    }),\n    coreConversionRatiosOpenCurrentYearNihIndirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoNihIndirects,coreConversionRatiosTwoYearAvgNihIndirects,coreConversionRatiosThreeYearAvgNihIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearNih', 'coreConversionRatiosOpenCurrentYearNihDirects', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearNih, this.get('model.projection.coreConversionRatiosOneYearAgoNihIndirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgNihIndirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgNihIndirects'), true, this.coreConversionRatiosOpenCurrentYearNihDirects);\n    }),\n    coreConversionRatiosOpenCurrentYearOtherFedDirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoOtherFedDirects,coreConversionRatiosTwoYearAvgOtherFedDirects,coreConversionRatiosThreeYearAvgOtherFedDirects}', 'coreConversionRatiosSettingsOpenCurrentYearOtherFed', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearOtherFed, this.get('model.projection.coreConversionRatiosOneYearAgoOtherFedDirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgOtherFedDirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgOtherFedDirects'));\n    }),\n    coreConversionRatiosOpenCurrentYearOtherFedIndirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoOtherFedIndirects,coreConversionRatiosTwoYearAvgOtherFedIndirects,coreConversionRatiosThreeYearAvgOtherFedIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearOtherFed', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearOtherFed, this.get('model.projection.coreConversionRatiosOneYearAgoOtherFedIndirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgOtherFedIndirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgOtherFedIndirects'), true, this.coreConversionRatiosOpenCurrentYearOtherFedDirects);\n    }),\n    coreConversionRatiosOpenCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoFedFlowThruDirects,coreConversionRatiosTwoYearAvgFedFlowThruDirects,coreConversionRatiosThreeYearAvgFedFlowThruDirects}', 'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru, this.get('model.projection.coreConversionRatiosOneYearAgoFedFlowThruDirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgFedFlowThruDirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgFedFlowThruDirects'));\n    }),\n    coreConversionRatiosOpenCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoFedFlowThruIndirects,coreConversionRatiosTwoYearAvgFedFlowThruIndirects,coreConversionRatiosThreeYearAvgFedFlowThruIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', 'coreConversionRatiosOpenCurrentYearFedFlowThruDirects', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru, this.get('model.projection.coreConversionRatiosOneYearAgoFedFlowThruIndirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgFedFlowThruIndirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgFedFlowThruIndirects'), true, this.coreConversionRatiosOpenCurrentYearFedFlowThruDirects);\n    }),\n    coreConversionRatiosOpenCurrentYearNonFedDirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoNonFedDirects,coreConversionRatiosTwoYearAvgNonFedDirects,coreConversionRatiosThreeYearAvgNonFedDirects}', 'coreConversionRatiosSettingsOpenCurrentYearNonFed', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearNonFed, this.get('model.projection.coreConversionRatiosOneYearAgoNonFedDirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgNonFedDirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgNonFedDirects'));\n    }),\n    coreConversionRatiosOpenCurrentYearNonFedIndirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoNonFedIndirects,coreConversionRatiosTwoYearAvgNonFedIndirects,coreConversionRatiosThreeYearAvgNonFedIndirects}', 'coreConversionRatiosSettingsOpenCurrentYearNonFed', 'coreConversionRatiosOpenCurrentYearNonFedDirect', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearNonFed, this.get('model.projection.coreConversionRatiosOneYearAgoNonFedIndirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgNonFedIndirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgNonFedIndirects'), true, this.coreConversionRatiosOpenCurrentYearNonFedDirects);\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor5Directs: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor5Directs,coreConversionRatiosTwoYearAvgSponsor5Directs,coreConversionRatiosThreeYearAvgSponsor5Directs}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor5', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor5, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor5Directs'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor5Directs'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor5Directs'));\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor5Indirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor5Indirects,coreConversionRatiosTwoYearAvgSponsor5Indirects,coreConversionRatiosThreeYearAvgSponsor5Indirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor5', 'coreConversionRatiosOpenCurrentYearSponsor5Direct', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor5, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor5Indirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor5Indirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor5Indirects'), true, this.coreConversionRatiosOpenCurrentYearSponsor5Directs);\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor6Directs: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor6Directs,coreConversionRatiosTwoYearAvgSponsor6Directs,coreConversionRatiosThreeYearAvgSponsor6Directs}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor6', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor6, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor6Directs'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor6Directs'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor6Directs'));\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor6Indirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor6Indirects,coreConversionRatiosTwoYearAvgSponsor6Indirects,coreConversionRatiosThreeYearAvgSponsor6Indirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor6', 'coreConversionRatiosOpenCurrentYearSponsor6Direct', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor6, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor6Indirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor6Indirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor6Indirects'), true, this.coreConversionRatiosOpenCurrentYearSponsor6Directs);\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor7Directs: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor7Directs,coreConversionRatiosTwoYearAvgSponsor7Directs,coreConversionRatiosThreeYearAvgSponsor7Directs}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor7', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor7, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor7Directs'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor7Directs'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor7Directs'));\n    }),\n    coreConversionRatiosOpenCurrentYearSponsor7Indirects: Ember.computed('model.projection.{coreConversionRatiosOneYearAgoSponsor7Indirects,coreConversionRatiosTwoYearAvgSponsor7Indirects,coreConversionRatiosThreeYearAvgSponsor7Indirects}', 'coreConversionRatiosSettingsOpenCurrentYearSponsor7', 'coreConversionRatiosOpenCurrentYearSponsor7Direct', function () {\n      return this.currentYearCoreConversionRatiosOpenValue(this.coreConversionRatiosSettingsOpenCurrentYearSponsor7, this.get('model.projection.coreConversionRatiosOneYearAgoSponsor7Indirects'), this.get('model.projection.coreConversionRatiosTwoYearAvgSponsor7Indirects'), this.get('model.projection.coreConversionRatiosThreeYearAvgSponsor7Indirects'), true, this.coreConversionRatiosOpenCurrentYearSponsor7Directs);\n    }),\n    coreConversionRatiosRevisedCurrentYearNihDirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearNihDirects,coreProposalsYearEndNihDirects,coreProposalsCurrentYearTotalNihDirects,successesYtdNihDirects}', 'coreConversionRatiosOpenCurrentYearNihDirects', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreProposalsOpenCurrentYearNihDirects', 'coreProposalsRevisedCurrentYearNihDirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearNih, this.coreConversionRatiosOpenCurrentYearNihDirects, this.get('model.projection.coreConversionRatiosCurrentYearNihDirects'), this.get('model.projection.coreProposalsYearEndNihDirects'), this.get('model.projection.coreProposalsCurrentYearTotalNihDirects'), this.get('model.projection.successesYtdNihDirects'), this.get('model.projection.coreProposalsCurrentYearYtdNihDirects'), this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects'), this.coreProposalsOpenCurrentYearNihDirects, this.coreProposalsRevisedCurrentYearNihDirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearNihIndirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearNihIndirects,coreProposalsYearEndNihIndirects,coreProposalsCurrentYearTotalNihIndirects,successesYtdNihIndirects}', 'coreConversionRatiosOpenCurrentYearNihIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsRevisedCurrentYearNihIndirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearNih, this.coreConversionRatiosOpenCurrentYearNihIndirects, this.get('model.projection.coreConversionRatiosCurrentYearNihIndirects'), this.get('model.projection.coreProposalsYearEndNihIndirects'), this.get('model.projection.coreProposalsCurrentYearTotalNihIndirects'), this.get('model.projection.successesYtdNihIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdNihIndirects'), this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects'), this.coreProposalsOpenCurrentYearNihIndirects, this.coreProposalsRevisedCurrentYearNihIndirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearNonFedDirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearNonFedDirects,coreProposalsYearEndNonFedDirects,coreProposalsCurrentYearTotalNonFedDirects,successesYtdNonFedDirects}', 'coreConversionRatiosOpenCurrentYearNonFedDirects', 'coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsRevisedCurrentYearNonFedDirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearNonFed, this.coreConversionRatiosOpenCurrentYearNonFedDirects, this.get('model.projection.coreConversionRatiosCurrentYearNonFedDirects'), this.get('model.projection.coreProposalsYearEndNonFedDirects'), this.get('model.projection.coreProposalsCurrentYearTotalNonFedDirects'), this.get('model.projection.successesYtdNonFedDirects'), this.get('model.projection.coreProposalsCurrentYearYtdNonFedDirects'), this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects'), this.coreProposalsOpenCurrentYearNonFedDirects, this.coreProposalsRevisedCurrentYearNonFedDirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearNonFedIndirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearNonFedIndirects,coreProposalsYearEndNonFedIndirects,coreProposalsCurrentYearTotalNonFedIndirects,successesYtdNonFedIndirects}', 'coreConversionRatiosOpenCurrentYearNonFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'coreConversionRatiosRevisedCurrentYearNonFedIndirects', 'coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsRevisedCurrentYearNonFedIndirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearNonFed, this.coreConversionRatiosOpenCurrentYearNonFedIndirects, this.get('model.projection.coreConversionRatiosCurrentYearNonFedIndirects'), this.get('model.projection.coreProposalsYearEndNonFedIndirects'), this.get('model.projection.coreProposalsCurrentYearTotalNonFedIndirects'), this.get('model.projection.successesYtdNonFedIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdNonFedIndirects'), this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects'), this.coreProposalsOpenCurrentYearNonFedIndirects, this.coreProposalsRevisedCurrentYearNonFedIndirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearFedFlowThruDirects,coreProposalsYearEndFedFlowThruDirects,coreProposalsCurrentYearTotalFedFlowThruDirects,successesYtdFedFlowThruDirects}', 'coreConversionRatiosOpenCurrentYearFedFlowThruDirects', 'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsRevisedCurrentYearFedFlowThruDirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru, this.coreConversionRatiosOpenCurrentYearFedFlowThruDirects, this.get('model.projection.coreConversionRatiosCurrentYearFedFlowThruDirects'), this.get('model.projection.coreProposalsYearEndFedFlowThruDirects'), this.get('model.projection.coreProposalsCurrentYearTotalFedFlowThruDirects'), this.get('model.projection.successesYtdFedFlowThruDirects'), this.get('model.projection.coreProposalsCurrentYearYtdFedFlowThruDirects'), this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects'), this.coreProposalsOpenCurrentYearFedFlowThruDirects, this.coreProposalsRevisedCurrentYearFedFlowThruDirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearFedFlowThruIndirects,coreProposalsYearEndFedFlowThruIndirects,coreProposalsCurrentYearTotalFedFlowThruIndirects,successsesYtdFedFlowThruIndirects}', 'coreConversionRatiosOpenCurrentYearFedFlowThruIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', 'coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsRevisedCurrentYearFedFlowThruIndirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru, this.coreConversionRatiosOpenCurrentYearFedFlowThruIndirects, this.get('model.projection.coreConversionRatiosCurrentYearFedFlowThruIndirects'), this.get('model.projection.coreProposalsYearEndFedFlowThruIndirects'), this.get('model.projection.coreProposalsCurrentYearTotalFedFlowThruIndirects'), this.get('model.projection.successesYtdFedFlowThruIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdFedFlowThruIndirects'), this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects'), this.coreProposalsOpenCurrentYearFedFlowThruIndirects, this.coreProposalsRevisedCurrentYearFedFlowThruIndirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearOtherFedDirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearOtherFedDirects,coreProposalsYearEndOtherFedDirects,coreProposalsCurrentYearTotalOtherFedDirects,successesYtdOtherFedDirects}', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', 'coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsRevisedCurrentYearOtherFedDirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed, this.coreConversionRatiosOpenCurrentYearOtherFedDirects, this.get('model.projection.coreConversionRatiosCurrentYearOtherFedDirects'), this.get('model.projection.coreProposalsYearEndOtherFedDirects'), this.get('model.projection.coreProposalsCurrentYearTotalOtherFedDirects'), this.get('model.projection.successesYtdOtherFedDirects'), this.get('model.projection.coreProposalsCurrentYearYtdOtherFedDirects'), this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects'), this.coreProposalsOpenCurrentYearOtherFedDirects, this.coreProposalsRevisedCurrentYearOtherFedDirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearOtherFedIndirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearOtherFedIndirects,coreProposalsYearEndOtherFedIndirects,coreProposalsCurrentYearTotalOtherFedIndirects,successesYtdOtherFedIndirects}', 'coreConversionRatiosOpenCurrentYearOtherFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsRevisedCurrentYearOtherFedIndirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed, this.coreConversionRatiosOpenCurrentYearOtherFedIndirects, this.get('model.projection.coreConversionRatiosCurrentYearOtherFedIndirects'), this.get('model.projection.coreProposalsYearEndOtherFedIndirects'), this.get('model.projection.coreProposalsCurrentYearTotalOtherFedIndirects'), this.get('model.projection.successesYtdOtherFedIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdOtherFedIndirects'), this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects'), this.coreProposalsOpenCurrentYearOtherFedIndirects, this.coreProposalsRevisedCurrentYearOtherFedIndirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor5Directs: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor5Directs,coreProposalsYearEndSponsor5Directs,coreProposalsCurrentYearTotalSponsor5Directs,successesYtdSponsor5Directs}', 'coreConversionRatiosOpenCurrentYearSponsor5Directs', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsRevisedCurrentYearSponsor5Directs', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5, this.coreConversionRatiosOpenCurrentYearSponsor5Directs, this.get('model.projection.coreConversionRatiosCurrentYearSponsor5Directs'), this.get('model.projection.coreProposalsYearEndSponsor5Directs'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor5Directs'), this.get('model.projection.successesYtdSponsor5Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor5Directs'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs'), this.coreProposalsOpenCurrentYearSponsor5Directs, this.coreProposalsRevisedCurrentYearSponsor5Directs);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor5Indirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor5Indirects,coreProposalsYearEndSponsor5Indirects,coreProposalsCurrentYearTotalSponsor5Indirects,successesYtdSponsor5Indirects}', 'coreConversionRatiosOpenCurrentYearSponsor5Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsRevisedCurrentYearSponsor5Indirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5, this.coreConversionRatiosOpenCurrentYearSponsor5Indirects, this.get('model.projection.coreConversionRatiosCurrentYearSponsor5Indirects'), this.get('model.projection.coreProposalsYearEndSponsor5Indirects'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor5Indirects'), this.get('model.projection.successesYtdSponsor5Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor5Indirects'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects'), this.coreProposalsOpenCurrentYearSponsor5Indirects, this.coreProposalsRevisedCurrentYearSponsor5Indirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor6Directs: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor6Directs,coreProposalsYearEndSponsor6Directs,coreProposalsCurrentYearTotalSponsor6Directs,successesYtdSponsor6Directs}', 'coreConversionRatiosOpenCurrentYearSponsor6Directs', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsRevisedCurrentYearSponsor6Directs', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6, this.coreConversionRatiosOpenCurrentYearSponsor6Directs, this.get('model.projection.coreConversionRatiosCurrentYearSponsor6Directs'), this.get('model.projection.coreProposalsYearEndSponsor6Directs'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor6Directs'), this.get('model.projection.successesYtdSponsor6Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor6Directs'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs'), this.coreProposalsOpenCurrentYearSponsor6Directs, this.coreProposalsRevisedCurrentYearSponsor6Directs);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor6Indirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor6Indirects,coreProposalsYearEndSponsor6Indirects,coreProposalsCurrentYearTotalSponsor6Indirects,successesYtdSponsor6Indirects}', 'coreConversionRatiosOpenCurrentYearSponsor6Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsRevisedCurrentYearSponsor6Indirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6, this.coreConversionRatiosOpenCurrentYearSponsor6Indirects, this.get('model.projection.coreConversionRatiosCurrentYearSponsor6Indirects'), this.get('model.projection.coreProposalsYearEndSponsor6Indirects'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor6Indirects'), this.get('model.projection.successesYtdSponsor6Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor6Indirects'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects'), this.coreProposalsOpenCurrentYearSponsor6Indirects, this.coreProposalsRevisedCurrentYearSponsor6Indirects);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor7Directs: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor7Directs,coreProposalsYearEndSponsor7Directs,coreProposalsCurrentYearTotalSponsor7Directs,successesYtdSponsor7Directs}', 'coreConversionRatiosOpenCurrentYearSponsor7Directs', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor7', 'coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsRevisedCurrentYearSponsor7Directs', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7, this.coreConversionRatiosOpenCurrentYearSponsor7Directs, this.get('model.projection.coreConversionRatiosCurrentYearSponsor7Directs'), this.get('model.projection.coreProposalsYearEndSponsor7Directs'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor7Directs'), this.get('model.projection.successesYtdSponsor7Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor7Directs'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs'), this.coreProposalsOpenCurrentYearSponsor7Directs, this.coreProposalsRevisedCurrentYearSponsor7Directs);\n    }),\n    coreConversionRatiosRevisedCurrentYearSponsor7Indirects: Ember.computed('model.projection.{coreConversionRatiosCurrentYearSponsor7Indirects,coreProposalsYearEndSponsor7Indirects,coreProposalsCurrentYearTotalSponsor7Indirects,successesYtdSponsor7Indirects}', 'coreConversionRatiosOpenCurrentYearSponsor7Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor7', 'coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsRevisedCurrentYearSponsor7Indirects', function () {\n      return this.currentYearCoreConversionRatiosRevisedValue(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7, this.coreConversionRatiosOpenCurrentYearSponsor7Indirects, this.get('model.projection.coreConversionRatiosCurrentYearSponsor7Indirects'), this.get('model.projection.coreProposalsYearEndSponsor7Indirects'), this.get('model.projection.coreProposalsCurrentYearTotalSponsor7Indirects'), this.get('model.projection.successesYtdSponsor7Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor7Indirects'), this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects'), this.coreProposalsOpenCurrentYearSponsor7Indirects, this.coreProposalsRevisedCurrentYearSponsor7Indirects);\n    }),\n    coreConversionRatiosTransitionNextYearNihDirects: Ember.computed('coreConversionRatiosRevisedCurrentYearNihDirects', 'coreConversionRatiosSettingsTransitionNextYearNih', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearNih, this.coreConversionRatiosOpenCurrentYearNihDirects, this.coreConversionRatiosRevisedCurrentYearNihDirects);\n    }),\n    coreConversionRatiosTransitionNextYearNihIndirects: Ember.computed('coreConversionRatiosRevisedCurrentYearNihIndirects', 'coreConversionRatiosRevisedCurrentYearNihDirects', 'coreConversionRatiosSettingsTransitionNextYearNih', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearNihDirects;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearNih, this.coreConversionRatiosOpenCurrentYearNihIndirects, this.coreConversionRatiosRevisedCurrentYearNihIndirects));\n    }),\n    coreConversionRatiosTransitionNextYearOtherFedDirects: Ember.computed('coreConversionRatiosRevisedCurrentYearOtherFedDirects', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', 'coreConversionRatiosSettingsTransitionNextYearOtherFed', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearOtherFed, this.coreConversionRatiosOpenCurrentYearOtherFedDirects, this.coreConversionRatiosRevisedCurrentYearOtherFedDirects);\n    }),\n    coreConversionRatiosTransitionNextYearOtherFedIndirects: Ember.computed('coreConversionRatiosRevisedCurrentYearOtherFedIndirects', 'coreConversionRatiosRevisedCurrentYearOtherFedDirects', 'coreConversionRatiosSettingsTransitionNextYearOtherFed', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearOtherFedDirects;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearOtherFed, this.coreConversionRatiosOpenCurrentYearOtherFedIndirects, this.coreConversionRatiosRevisedCurrentYearOtherFedIndirects));\n    }),\n    coreConversionRatiosTransitionNextYearFedFlowThruDirects: Ember.computed('coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', 'coreConversionRatiosSettingsTransitionNextYearFedFlowThru', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru, this.coreConversionRatiosOpenCurrentYearFedFlowThruDirects, this.coreConversionRatiosRevisedCurrentYearFedFlowThruDirects);\n    }),\n    coreConversionRatiosTransitionNextYearFedFlowThruIndirects: Ember.computed('coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects', 'coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', 'coreConversionRatiosSettingsTransitionNextYearFedFlowThru', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearFedFlowThruDirects;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru, this.coreConversionRatiosOpenCurrentYearFedFlowThruIndirects, this.coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects));\n    }),\n    coreConversionRatiosTransitionNextYearNonFedDirects: Ember.computed('coreConversionRatiosRevisedCurrentYearNonFedDirects', 'coreConversionRatiosSettingsTransitionNextYearNonFed', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearNonFed, this.coreConversionRatiosOpenCurrentYearNonFedDirects, this.coreConversionRatiosRevisedCurrentYearNonFedDirects);\n    }),\n    coreConversionRatiosTransitionNextYearNonFedIndirects: Ember.computed('coreConversionRatiosRevisedCurrentYearNonFedIndirects', 'coreConversionRatiosSettingsTransitionNextYearNonFed', 'coreConversionRatiosTransitionNextYearNonFedIndirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearNonFedDirects;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearNonFed, this.coreConversionRatiosOpenCurrentYearNonFedIndirects, this.coreConversionRatiosRevisedCurrentYearNonFedIndirects));\n    }),\n    coreConversionRatiosTransitionNextYearSponsor5Directs: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor5Directs', 'coreConversionRatiosSettingsTransitionNextYearSponsor5', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor5, this.coreConversionRatiosOpenCurrentYearSponsor5Directs, this.coreConversionRatiosRevisedCurrentYearSponsor5Directs);\n    }),\n    coreConversionRatiosTransitionNextYearSponsor5Indirects: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor5Indirects', 'coreConversionRatiosSettingsTransitionNextYearSponsor5', 'coreConversionRatiosTransitionNextYearSponsor5Indirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor5Directs;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor5, this.coreConversionRatiosOpenCurrentYearSponsor5Indirects, this.coreConversionRatiosRevisedCurrentYearSponsor5Indirects));\n    }),\n    coreConversionRatiosTransitionNextYearSponsor6Directs: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor6Directs', 'coreConversionRatiosSettingsTransitionNextYearSponsor6', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor6, this.coreConversionRatiosOpenCurrentYearSponsor6Directs, this.coreConversionRatiosRevisedCurrentYearSponsor6Directs);\n    }),\n    coreConversionRatiosTransitionNextYearSponsor6Indirects: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor6Indirects', 'coreConversionRatiosSettingsTransitionNextYearSponsor6', 'coreConversionRatiosTransitionNextYearSponsor6Indirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor6Directs;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor6, this.coreConversionRatiosOpenCurrentYearSponsor6Indirects, this.coreConversionRatiosRevisedCurrentYearSponsor6Indirects));\n    }),\n    coreConversionRatiosTransitionNextYearSponsor7Directs: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor7Directs', 'coreConversionRatiosSettingsTransitionNextYearSponsor7', function () {\n      return this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor7, this.coreConversionRatiosOpenCurrentYearSponsor7Directs, this.coreConversionRatiosRevisedCurrentYearSponsor7Directs);\n    }),\n    coreConversionRatiosTransitionNextYearSponsor7Indirects: Ember.computed('coreConversionRatiosRevisedCurrentYearSponsor7Indirects', 'coreConversionRatiosSettingsTransitionNextYearSponsor7', 'coreConversionRatiosTransitionNextYearSponsor7Indirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor7Directs;\n      return this.adjustIndirectConversionRatio(directs, this.nextYearTransitionValue(this.coreConversionRatiosSettingsTransitionNextYearSponsor7, this.coreConversionRatiosOpenCurrentYearSponsor7Indirects, this.coreConversionRatiosRevisedCurrentYearSponsor7Indirects));\n    }),\n    coreProposalsOpenCurrentYearNihDirects: Ember.computed('model.projection.{coreProposalsOneYearAgoNihDirects,coreProposalsTwoYearAverageNihDirects,coreProposalsThreeYearAverageNihDirects}', 'coreProposalsSettingsOpenCurrentYearNih', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearNih, this.get('model.projection.coreProposalsOneYearAgoNihDirects'), this.get('model.projection.coreProposalsTwoYearAverageNihDirects'), this.get('model.projection.coreProposalsThreeYearAverageNihDirects'));\n    }),\n    coreProposalsOpenCurrentYearNihIndirects: Ember.computed('model.projection.{coreProposalsOneYearAgoNihIndirects,coreProposalsTwoYearAverageNihIndirects,coreProposalsThreeYearAverageNihIndirects}', 'coreProposalsSettingsOpenCurrentYearNih', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearNih, this.get('model.projection.coreProposalsOneYearAgoNihIndirects'), this.get('model.projection.coreProposalsTwoYearAverageNihIndirects'), this.get('model.projection.coreProposalsThreeYearAverageNihIndirects'));\n    }),\n    coreProposalsOpenCurrentYearOtherFedDirects: Ember.computed('model.projection.{coreProposalsOneYearAgoOtherFedDirects,coreProposalsTwoYearAverageOtherFedDirects,coreProposalsThreeYearAverageOtherFedDirects}', 'coreProposalsSettingsOpenCurrentYearOtherFed', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearOtherFed, this.get('model.projection.coreProposalsOneYearAgoOtherFedDirects'), this.get('model.projection.coreProposalsTwoYearAverageOtherFedDirects'), this.get('model.projection.coreProposalsThreeYearAverageOtherFedDirects'));\n    }),\n    coreProposalsOpenCurrentYearOtherFedIndirects: Ember.computed('model.projection.{coreProposalsOneYearAgoOtherFedIndirects,coreProposalsTwoYearAverageOtherFedIndirects,coreProposalsThreeYearAverageOtherFedIndirects}', 'coreProposalsSettingsOpenCurrentYearOtherFed', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearOtherFed, this.get('model.projection.coreProposalsOneYearAgoOtherFedIndirects'), this.get('model.projection.coreProposalsTwoYearAverageOtherFedIndirects'), this.get('model.projection.coreProposalsThreeYearAverageOtherFedIndirects'));\n    }),\n    coreProposalsOpenCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{coreProposalsOneYearAgoFedFlowThruDirects,coreProposalsTwoYearAverageFedFlowThruDirects,coreProposalsThreeYearAverageFedFlowThruDirects}', 'coreProposalsSettingsOpenCurrentYearFedFlowThru', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearFedFlowThru, this.get('model.projection.coreProposalsOneYearAgoFedFlowThruDirects'), this.get('model.projection.coreProposalsTwoYearAverageFedFlowThruDirects'), this.get('model.projection.coreProposalsThreeYearAverageFedFlowThruDirects'));\n    }),\n    coreProposalsOpenCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{coreProposalsOneYearAgoFedFlowThruIndirects,coreProposalsTwoYearAverageFedFlowThruIndirects,coreProposalsThreeYearAverageFedFlowThruIndirects}', 'coreProposalsSettingsOpenCurrentYearFedFlowThru', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearFedFlowThru, this.get('model.projection.coreProposalsOneYearAgoFedFlowThruIndirects'), this.get('model.projection.coreProposalsTwoYearAverageFedFlowThruIndirects'), this.get('model.projection.coreProposalsThreeYearAverageFedFlowThruIndirects'));\n    }),\n    coreProposalsOpenCurrentYearNonFedDirects: Ember.computed('model.projection.{coreProposalsOneYearAgoNonFedDirects,coreProposalsTwoYearAverageNonFedDirects,coreProposalsThreeYearAverageNonFedDirects}', 'coreProposalsSettingsOpenCurrentYearNonFed', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearNonFed, this.get('model.projection.coreProposalsOneYearAgoNonFedDirects'), this.get('model.projection.coreProposalsTwoYearAverageNonFedDirects'), this.get('model.projection.coreProposalsThreeYearAverageNonFedDirects'));\n    }),\n    coreProposalsOpenCurrentYearNonFedIndirects: Ember.computed('model.projection.{coreProposalsOneYearAgoNonFedIndirects,coreProposalsTwoYearAverageNonFedIndirects,coreProposalsThreeYearAverageNonFedIndirects}', 'coreProposalsSettingsOpenCurrentYearNonFed', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearNonFed, this.get('model.projection.coreProposalsOneYearAgoNonFedIndirects'), this.get('model.projection.coreProposalsTwoYearAverageNonFedIndirects'), this.get('model.projection.coreProposalsThreeYearAverageNonFedIndirects'));\n    }),\n    coreProposalsOpenCurrentYearSponsor5Directs: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor5Directs,coreProposalsTwoYearAverageSponsor5Directs,coreProposalsThreeYearAverageSponsor5Directs}', 'coreProposalsSettingsOpenCurrentYearSponsor5', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor5, this.get('model.projection.coreProposalsOneYearAgoSponsor5Directs'), this.get('model.projection.coreProposalsTwoYearAverageSponsor5Directs'), this.get('model.projection.coreProposalsThreeYearAverageSponsor5Directs'));\n    }),\n    coreProposalsOpenCurrentYearSponsor5Indirects: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor5Indirects,coreProposalsTwoYearAverageSponsor5Indirects,coreProposalsThreeYearAverageSponsor5Indirects}', 'coreProposalsSettingsOpenCurrentYearSponsor5', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor5, this.get('model.projection.coreProposalsOneYearAgoSponsor5Indirects'), this.get('model.projection.coreProposalsTwoYearAverageSponsor5Indirects'), this.get('model.projection.coreProposalsThreeYearAverageSponsor5Indirects'));\n    }),\n    coreProposalsOpenCurrentYearSponsor6Directs: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor6Directs,coreProposalsTwoYearAverageSponsor6Directs,coreProposalsThreeYearAverageSponsor6Directs}', 'coreProposalsSettingsOpenCurrentYearSponsor6', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor6, this.get('model.projection.coreProposalsOneYearAgoSponsor6Directs'), this.get('model.projection.coreProposalsTwoYearAverageSponsor6Directs'), this.get('model.projection.coreProposalsThreeYearAverageSponsor6Directs'));\n    }),\n    coreProposalsOpenCurrentYearSponsor6Indirects: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor6Indirects,coreProposalsTwoYearAverageSponsor6Indirects,coreProposalsThreeYearAverageSponsor6Indirects}', 'coreProposalsSettingsOpenCurrentYearSponsor6', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor6, this.get('model.projection.coreProposalsOneYearAgoSponsor6Indirects'), this.get('model.projection.coreProposalsTwoYearAverageSponsor6Indirects'), this.get('model.projection.coreProposalsThreeYearAverageSponsor6Indirects'));\n    }),\n    coreProposalsOpenCurrentYearSponsor7Directs: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor7Directs,coreProposalsTwoYearAverageSponsor7Directs,coreProposalsThreeYearAverageSponsor7Directs}', 'coreProposalsSettingsOpenCurrentYearSponsor7', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor7, this.get('model.projection.coreProposalsOneYearAgoSponsor7Directs'), this.get('model.projection.coreProposalsTwoYearAverageSponsor7Directs'), this.get('model.projection.coreProposalsThreeYearAverageSponsor7Directs'));\n    }),\n    coreProposalsOpenCurrentYearSponsor7Indirects: Ember.computed('model.projection.{coreProposalsOneYearAgoSponsor7Indirects,coreProposalsTwoYearAverageSponsor7Indirects,coreProposalsThreeYearAverageSponsor7Indirects}', 'coreProposalsSettingsOpenCurrentYearSponsor7', function () {\n      return this.currentYearOpenValue(this.coreProposalsSettingsOpenCurrentYearSponsor7, this.get('model.projection.coreProposalsOneYearAgoSponsor7Indirects'), this.get('model.projection.coreProposalsTwoYearAverageSponsor7Indirects'), this.get('model.projection.coreProposalsThreeYearAverageSponsor7Indirects'));\n    }),\n    coreProposalsRevisedCurrentYearNihDirects: Ember.computed('model.projection.{coreProposalsCurrentYearNihDirects,coreProposalsOneYearAgoYtdNihDirects,coreProposalsOneYearAgoNihDirects}', 'coreProposalsOpenCurrentYearNihDirects', 'coreProposalsSettingsRevisedCurrentYearNih', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearNih, this.coreProposalsOpenCurrentYearNihDirects, this.get('model.projection.coreProposalsCurrentYearNihDirects'), this.get('model.projection.coreProposalsOneYearAgoYtdNihDirects'), this.get('model.projection.coreProposalsOneYearAgoNihDirects'));\n    }),\n    coreProposalsRevisedCurrentYearNihIndirects: Ember.computed('model.projection.{coreProposalsCurrentYearNihIndirects,coreProposalsOneYearAgoYtdNihIndirects,coreProposalsOneYearAgoNihIndirects}', 'coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsSettingsRevisedCurrentYearNih', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearNih, this.coreProposalsOpenCurrentYearNihIndirects, this.get('model.projection.coreProposalsCurrentYearNihIndirects'), this.get('model.projection.coreProposalsOneYearAgoYtdNihIndirects'), this.get('model.projection.coreProposalsOneYearAgoNihIndirects'));\n    }),\n    coreProposalsRevisedCurrentYearNonFedDirects: Ember.computed('model.projection.{coreProposalsCurrentYearNonFedDirects,coreProposalsOneYearAgoYtdNonFedDirects,coreProposalsOneYearAgoNonFedDirects}', 'coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsSettingsRevisedCurrentYearNonFed', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearNonFed, this.coreProposalsOpenCurrentYearNonFedDirects, this.get('model.projection.coreProposalsCurrentYearNonFedDirects'), this.get('model.projection.coreProposalsOneYearAgoYtdNonFedDirects'), this.get('model.projection.coreProposalsOneYearAgoNonFedDirects'));\n    }),\n    coreProposalsRevisedCurrentYearNonFedIndirects: Ember.computed('model.projection.{coreProposalsCurrentYearNonFedIndirects,coreProposalsOneYearAgoYtdNonFedIndirects,coreProposalsOneYearAgoNonFedIndirects}', 'coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsSettingsRevisedCurrentYearNonFed', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearNonFed, this.coreProposalsOpenCurrentYearNonFedIndirects, this.get('model.projection.coreProposalsCurrentYearNonFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoYtdNonFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoNonFedIndirects'));\n    }),\n    coreProposalsRevisedCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{coreProposalsCurrentYearFedFlowThruDirects,coreProposalsOneYearAgoYtdFedFlowThruDirects,coreProposalsOneYearAgoFedFlowThruDirects}', 'coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsSettingsRevisedCurrentYearFedFlowThru', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearFedFlowThru, this.coreProposalsOpenCurrentYearFedFlowThruDirects, this.get('model.projection.coreProposalsCurrentYearFedFlowThruDirects'), this.get('model.projection.coreProposalsOneYearAgoYtdFedFlowThruDirects'), this.get('model.projection.coreProposalsOneYearAgoFedFlowThruDirects'));\n    }),\n    coreProposalsRevisedCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{coreProposalsCurrentYearFedFlowThruIndirects,coreProposalsOneYearAgoYtdFedFlowThruIndirects,coreProposalsOneYearAgoFedFlowThruIndirects}', 'coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsSettingsRevisedCurrentYearFedFlowThru', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearFedFlowThru, this.coreProposalsOpenCurrentYearFedFlowThruIndirects, this.get('model.projection.coreProposalsCurrentYearFedFlowThruIndirects'), this.get('model.projection.coreProposalsOneYearAgoYtdFedFlowThruIndirects'), this.get('model.projection.coreProposalsOneYearAgoFedFlowThruIndirects'));\n    }),\n    coreProposalsRevisedCurrentYearOtherFedDirects: Ember.computed('model.projection.{coreProposalsCurrentYearOtherFedDirects,coreProposalsOneYearAgoYtdOtherFedDirects,coreProposalsOneYearAgoOtherFedDirects}', 'coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsSettingsRevisedCurrentYearOtherFed', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearOtherFed, this.coreProposalsOpenCurrentYearOtherFedDirects, this.get('model.projection.coreProposalsCurrentYearOtherFedDirects'), this.get('model.projection.coreProposalsOneYearAgoYtdOtherFedDirects'), this.get('model.projection.coreProposalsOneYearAgoOtherFedDirects'));\n    }),\n    coreProposalsRevisedCurrentYearOtherFedIndirects: Ember.computed('model.projection.{coreProposalsCurrentYearOtherFedIndirects,coreProposalsOneYearAgoYtdOtherFedIndirects,coreProposalsOneYearAgoOtherFedIndirects}', 'coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsSettingsRevisedCurrentYearOtherFed', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearOtherFed, this.coreProposalsOpenCurrentYearOtherFedIndirects, this.get('model.projection.coreProposalsCurrentYearOtherFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoYtdOtherFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoOtherFedIndirects'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor5Directs: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor5Directs,coreProposalsOneYearAgoYtdSponsor5Directs,coreProposalsOneYearAgoSponsor5Directs}', 'coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsSettingsRevisedCurrentYearSponsor5', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor5, this.coreProposalsOpenCurrentYearSponsor5Directs, this.get('model.projection.coreProposalsCurrentYearSponsor5Directs'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor5Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor5Directs'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor5Indirects: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor5Indirects,coreProposalsOneYearAgoYtdSponsor5Indirects,coreProposalsOneYearAgoSponsor5Indirects}', 'coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor5', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor5, this.coreProposalsOpenCurrentYearSponsor5Indirects, this.get('model.projection.coreProposalsCurrentYearSponsor5Indirects'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor5Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor5Indirects'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor6Directs: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor6Directs,coreProposalsOneYearAgoYtdSponsor6Directs,coreProposalsOneYearAgoSponsor6Directs}', 'coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsSettingsRevisedCurrentYearSponsor6', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor6, this.coreProposalsOpenCurrentYearSponsor6Directs, this.get('model.projection.coreProposalsCurrentYearSponsor6Directs'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor6Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor6Directs'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor6Indirects: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor6Indirects,coreProposalsOneYearAgoYtdSponsor6Indirects,coreProposalsOneYearAgoSponsor6Indirects}', 'coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor6', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor6, this.coreProposalsOpenCurrentYearSponsor6Indirects, this.get('model.projection.coreProposalsCurrentYearSponsor6Indirects'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor6Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor6Indirects'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor7Directs: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor7Directs,coreProposalsOneYearAgoYtdSponsor7Directs,coreProposalsOneYearAgoSponsor7Directs}', 'coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsSettingsRevisedCurrentYearSponsor7', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor7, this.coreProposalsOpenCurrentYearSponsor7Directs, this.get('model.projection.coreProposalsCurrentYearSponsor7Directs'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor7Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor7Directs'));\n    }),\n    coreProposalsRevisedCurrentYearSponsor7Indirects: Ember.computed('model.projection.{coreProposalsCurrentYearSponsor7Indirects,coreProposalsOneYearAgoYtdSponsor7Indirects,coreProposalsOneYearAgoSponsor7Indirects}', 'coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor7', function () {\n      return this.currentYearRevisedValue(this.coreProposalsSettingsRevisedCurrentYearSponsor7, this.coreProposalsOpenCurrentYearSponsor7Indirects, this.get('model.projection.coreProposalsCurrentYearSponsor7Indirects'), this.get('model.projection.coreProposalsOneYearAgoYtdSponsor7Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor7Indirects'));\n    }),\n    coreProposalsTransitionNextYearNihDirects: Ember.computed('coreProposalsRevisedCurrentYearNihDirects', 'coreProposalsOpenCurrentYearNihDirects', 'coreProposalsSettingsTransitionNextYearNih', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearNih, this.coreProposalsOpenCurrentYearNihDirects, this.coreProposalsRevisedCurrentYearNihDirects);\n    }),\n    coreProposalsTransitionNextYearNihIndirects: Ember.computed('coreProposalsRevisedCurrentYearNihIndirects', 'coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsSettingsTransitionNextYearNih', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearNih, this.coreProposalsOpenCurrentYearNihIndirects, this.coreProposalsRevisedCurrentYearNihIndirects);\n    }),\n    coreProposalsTransitionNextYearOtherFedDirects: Ember.computed('coreProposalsRevisedCurrentYearOtherFedDirects', 'coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsSettingsTransitionNextYearOtherFed', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearOtherFed, this.coreProposalsOpenCurrentYearOtherFedDirects, this.coreProposalsRevisedCurrentYearOtherFedDirects);\n    }),\n    coreProposalsTransitionNextYearOtherFedIndirects: Ember.computed('coreProposalsRevisedCurrentYearOtherFedIndirects', 'coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsSettingsTransitionNextYearOtherFed', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearOtherFed, this.coreProposalsOpenCurrentYearOtherFedIndirects, this.coreProposalsRevisedCurrentYearOtherFedIndirects);\n    }),\n    coreProposalsTransitionNextYearFedFlowThruDirects: Ember.computed('coreProposalsRevisedCurrentYearFedFlowThruDirects', 'coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsSettingsTransitionNextYearFedFlowThru', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearFedFlowThru, this.coreProposalsOpenCurrentYearFedFlowThruDirects, this.coreProposalsRevisedCurrentYearFedFlowThruDirects);\n    }),\n    coreProposalsTransitionNextYearFedFlowThruIndirects: Ember.computed('coreProposalsRevisedCurrentYearFedFlowThruIndirects', 'coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsSettingsTransitionNextYearFedFlowThru', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearFedFlowThru, this.coreProposalsOpenCurrentYearFedFlowThruIndirects, this.coreProposalsRevisedCurrentYearFedFlowThruIndirects);\n    }),\n    coreProposalsTransitionNextYearNonFedDirects: Ember.computed('coreProposalsRevisedCurrentYearNonFedDirects', 'coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsSettingsTransitionNextYearNonFed', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearNonFed, this.coreProposalsOpenCurrentYearNonFedDirects, this.coreProposalsRevisedCurrentYearNonFedDirects);\n    }),\n    coreProposalsTransitionNextYearNonFedIndirects: Ember.computed('coreProposalsRevisedCurrentYearNonFedIndirects', 'coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsSettingsTransitionNextYearNonFed', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearNonFed, this.coreProposalsOpenCurrentYearNonFedIndirects, this.coreProposalsRevisedCurrentYearNonFedIndirects);\n    }),\n    coreProposalsTransitionNextYearSponsor5Directs: Ember.computed('coreProposalsRevisedCurrentYearSponsor5Directs', 'coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsSettingsTransitionNextYearSponsor5', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor5, this.coreProposalsOpenCurrentYearSponsor5Directs, this.coreProposalsRevisedCurrentYearSponsor5Directs);\n    }),\n    coreProposalsTransitionNextYearSponsor5Indirects: Ember.computed('coreProposalsRevisedCurrentYearSponsor5Indirects', 'coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsSettingsTransitionNextYearSponsor5', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor5, this.coreProposalsOpenCurrentYearSponsor5Indirects, this.coreProposalsRevisedCurrentYearSponsor5Indirects);\n    }),\n    coreProposalsTransitionNextYearSponsor6Directs: Ember.computed('coreProposalsRevisedCurrentYearSponsor6Directs', 'coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsSettingsTransitionNextYearSponsor6', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor6, this.coreProposalsOpenCurrentYearSponsor6Directs, this.coreProposalsRevisedCurrentYearSponsor6Directs);\n    }),\n    coreProposalsTransitionNextYearSponsor6Indirects: Ember.computed('coreProposalsRevisedCurrentYearSponsor6Indirects', 'coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsSettingsTransitionNextYearSponsor6', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor6, this.coreProposalsOpenCurrentYearSponsor6Indirects, this.coreProposalsRevisedCurrentYearSponsor6Indirects);\n    }),\n    coreProposalsTransitionNextYearSponsor7Directs: Ember.computed('coreProposalsRevisedCurrentYearSponsor7Directs', 'coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsSettingsTransitionNextYearSponsor7', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor7, this.coreProposalsOpenCurrentYearSponsor7Directs, this.coreProposalsRevisedCurrentYearSponsor7Directs);\n    }),\n    coreProposalsTransitionNextYearSponsor7Indirects: Ember.computed('coreProposalsRevisedCurrentYearSponsor7Indirects', 'coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsSettingsTransitionNextYearSponsor7', function () {\n      return this.nextYearTransitionValue(this.coreProposalsSettingsTransitionNextYearSponsor7, this.coreProposalsOpenCurrentYearSponsor7Indirects, this.coreProposalsRevisedCurrentYearSponsor7Indirects);\n    }),\n    projectCoreProposalsCurrentYear: function projectCoreProposalsCurrentYear(open, change) {\n      if (open === 0) {\n        return change;\n      } else {\n        return open * (1 + change);\n      }\n    },\n    projectedProposalsCurrentYearNihDirects: Ember.computed('coreProposalsOpenCurrentYearNihDirects', 'coreProposalsCurrentYearChangeNihDirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearNihDirects, this.coreProposalsCurrentYearChangeNihDirects);\n    }),\n    projectedProposalsCurrentYearNihIndirects: Ember.computed('coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsCurrentYearChangeNihIndirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearNihIndirects, this.coreProposalsCurrentYearChangeNihIndirects);\n    }),\n    projectedProposalsCurrentYearOtherFedDirects: Ember.computed('coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsCurrentYearChangeOtherFedDirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearOtherFedDirects, this.coreProposalsCurrentYearChangeOtherFedDirects);\n    }),\n    projectedProposalsCurrentYearOtherFedIndirects: Ember.computed('coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsCurrentYearChangeOtherFedIndirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearOtherFedIndirects, this.coreProposalsCurrentYearChangeOtherFedIndirects);\n    }),\n    projectedProposalsCurrentYearFedFlowThruDirects: Ember.computed('coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsCurrentYearChangeFedFlowThruDirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearFedFlowThruDirects, this.coreProposalsCurrentYearChangeFedFlowThruDirects);\n    }),\n    projectedProposalsCurrentYearFedFlowThruIndirects: Ember.computed('coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsCurrentYearChangeFedFlowThruIndirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearFedFlowThruIndirects, this.coreProposalsCurrentYearChangeFedFlowThruIndirects);\n    }),\n    projectedProposalsCurrentYearNonFedDirects: Ember.computed('coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsCurrentYearChangeNonFedDirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearNonFedDirects, this.coreProposalsCurrentYearChangeNonFedDirects);\n    }),\n    projectedProposalsCurrentYearNonFedIndirects: Ember.computed('coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsCurrentYearChangeNonFedIndirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearNonFedIndirects, this.coreProposalsCurrentYearChangeNonFedIndirects);\n    }),\n    projectedProposalsCurrentYearSponsor5Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsCurrentYearChangeSponsor5Directs', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor5Directs, this.coreProposalsCurrentYearChangeSponsor5Directs);\n    }),\n    projectedProposalsCurrentYearSponsor5Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsCurrentYearChangeSponsor5Indirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor5Indirects, this.coreProposalsCurrentYearChangeSponsor5Indirects);\n    }),\n    projectedProposalsCurrentYearSponsor6Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsCurrentYearChangeSponsor6Directs', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor6Directs, this.coreProposalsCurrentYearChangeSponsor6Directs);\n    }),\n    projectedProposalsCurrentYearSponsor6Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsCurrentYearChangeSponsor6Indirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor6Indirects, this.coreProposalsCurrentYearChangeSponsor6Indirects);\n    }),\n    projectedProposalsCurrentYearSponsor7Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsCurrentYearChangeSponsor7Directs', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor7Directs, this.coreProposalsCurrentYearChangeSponsor7Directs);\n    }),\n    projectedProposalsCurrentYearSponsor7Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsCurrentYearChangeSponsor7Indirects', function () {\n      return this.projectCoreProposalsCurrentYear(this.coreProposalsOpenCurrentYearSponsor7Indirects, this.coreProposalsCurrentYearChangeSponsor7Indirects);\n    }),\n    projectedCoreConversionRatiosCurrentYearNihDirects: Ember.computed('coreConversionRatiosOpenCurrentYearNihDirects', 'coreConversionRatiosRevisedCurrentYearNihDirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearNihDirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearNihIndirects: Ember.computed('coreConversionRatiosOpenCurrentYearNihIndirects', 'coreConversionRatiosRevisedCurrentYearNihIndirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearNihIndirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearOtherFedDirects: Ember.computed('coreConversionRatiosOpenCurrentYearOtherFedDirects', 'coreConversionRatiosRevisedCurrentYearOtherFedDirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearOtherFedDirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearOtherFedIndirects: Ember.computed('coreConversionRatiosOpenCurrentYearOtherFedIndirects', 'coreConversionRatiosRevisedCurrentYearOtherFedIndirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearOtherFedIndirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearFedFlowThruDirects: Ember.computed('coreConversionRatiosOpenCurrentYearFedFlowThruDirects', 'coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearFedFlowThruDirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearFedFlowThruIndirects: Ember.computed('coreConversionRatiosOpenCurrentYearFedFlowThruIndirects', 'coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearNonFedDirects: Ember.computed('coreConversionRatiosOpenCurrentYearNonFedDirects', 'coreConversionRatiosRevisedCurrentYearNonFedDirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearNonFedDirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearNonFedIndirects: Ember.computed('coreConversionRatiosOpenCurrentYearNonFedIndirects', 'coreConversionRatiosRevisedCurrentYearNonFedIndirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearNonFedIndirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor5Directs: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor5Directs', 'coreConversionRatiosRevisedCurrentYearSponsor5Directs', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor5Directs;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor5Indirects: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor5Indirects', 'coreConversionRatiosRevisedCurrentYearSponsor5Indirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor5Indirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor6Directs: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor6Directs', 'coreConversionRatiosRevisedCurrentYearSponsor6Directs', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor6Directs;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor6Indirects: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor6Indirects', 'coreConversionRatiosRevisedCurrentYearSponsor6Indirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor6Indirects;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor7Directs: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor7Directs', 'coreConversionRatiosRevisedCurrentYearSponsor7Directs', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor7Directs;\n    }),\n    projectedCoreConversionRatiosCurrentYearSponsor7Indirects: Ember.computed('coreConversionRatiosOpenCurrentYearSponsor7Indirects', 'coreConversionRatiosRevisedCurrentYearSponsor7Indirects', function () {\n      return this.coreConversionRatiosRevisedCurrentYearSponsor7Indirects;\n    }),\n    currentYearOpenValue: function currentYearOpenValue(settings, oneYearAgo, twoYearAvg, threeYearAvg) {\n      if (settings === PRIORYEAR) {\n        return oneYearAgo;\n      } else if (settings === TWOYEARAVG) {\n        return twoYearAvg;\n      } else if (settings === THREEYRAVG) {\n        return threeYearAvg;\n      }\n\n      return 0;\n    },\n    currentYearCoreConversionRatiosOpenValue: function currentYearCoreConversionRatiosOpenValue(settings, oneYearAgo, twoYearAvg, threeYearAvg, isIndirects, directs) {\n      if (settings === PRIORYEAR) {\n        return isIndirects ? this.adjustIndirectConversionRatio(directs, oneYearAgo) : oneYearAgo;\n      } else if (settings === TWOYEARAVG) {\n        return isIndirects ? this.adjustIndirectConversionRatio(directs, twoYearAvg) : twoYearAvg;\n      } else if (settings === THREEYRAVG) {\n        return isIndirects ? this.adjustIndirectConversionRatio(directs, threeYearAvg) : threeYearAvg;\n      }\n\n      return 0;\n    },\n    currentYearRevisedValue: function currentYearRevisedValue(settings, currentYearOpen, currentYearYTD, oneYearAgoYtd, oneYearAgoValue) {\n      var oneYearAgoProjected = oneYearAgoValue - oneYearAgoYtd;\n      var currentYearYTDChange = (currentYearYTD - oneYearAgoYtd) / oneYearAgoYtd;\n\n      if (settings === STAY) {\n        return currentYearOpen;\n      } else if (settings === YTD) {\n        if (oneYearAgoYtd === 0) {\n          currentYearYTDChange = 0;\n        }\n\n        return currentYearYTD + (1 + currentYearYTDChange) * oneYearAgoProjected;\n      } else if (settings === YTDREVISED) {\n        return currentYearYTD + oneYearAgoProjected;\n      }\n\n      return 0;\n    },\n    currentYearCoreConversionRatiosRevisedValue: function currentYearCoreConversionRatiosRevisedValue(settings, currentYearOpen, currentYear, yearEnd, currentYearTotal, successesYTD, proposalsYTD, y1y2, proposalsOpen, proposalsRevised) {\n      if (settings === STAY) {\n        return currentYearOpen;\n      } else if (settings === YTD) {\n        var successes = this.projectYtdSuccesses(successesYTD, proposalsYTD, yearEnd); //If there are no successes return 0 for the conversion ratio\n\n        if (successes === 0) {\n          return 0;\n        }\n\n        var denominator = y1y2 * proposalsOpen + (1 - y1y2) * proposalsRevised; //If there are no proposals, but successes the conversion ratio should be 100%\n\n        if (denominator === 0) {\n          return 1;\n        }\n\n        return successes / denominator;\n      } else if (settings === YTDREVISED) {\n        if (currentYearTotal === 0) {\n          return 0;\n        }\n\n        var _successes = successesYTD + currentYearOpen * yearEnd; //If there are no successes return 0 for the conversion ratio\n\n\n        if (_successes === 0) {\n          return 0;\n        }\n\n        var _denominator = y1y2 * proposalsOpen + (1 - y1y2) * proposalsRevised; //If there are no proposals, but successes the conversion ratio should be 100%\n\n\n        if (_denominator === 0) {\n          return 1;\n        }\n\n        return _successes / _denominator;\n      }\n    },\n    nextYearTransitionValue: function nextYearTransitionValue(settings, open, revised) {\n      if (settings === STAY) {\n        return revised;\n      } else if (settings === SPLIT) {\n        return (open + revised) / 2;\n      } else if (settings === REVERT) {\n        return open;\n      }\n\n      return 0;\n    },\n    nextYearCoreConversionRatiosTransitionValue: function nextYearCoreConversionRatiosTransitionValue(settings, revised) {\n      if (settings === STAY) {\n        return 0;\n      } else if (settings === SPLIT) {\n        return -revised / 2;\n      } else if (settings === REVERT) {\n        return -revised;\n      }\n\n      return 0;\n    },\n    adjustIndirectConversionRatio: function adjustIndirectConversionRatio(directs, indirects) {\n      //Projected indirects cannot exceed directs\n      return indirects > directs ? directs : indirects;\n    },\n    //region Core Successes\n    projectedCoreSuccessCurrentYear: function projectedCoreSuccessCurrentYear(setting, y1Y2DerivativeRatio, coreProposalsOneYearAgo, projectedProposalsCurrentYear, projectedCoreConversionRatiosCurrentYear, successesYtd, proposalsYtd, yearEnd, openConversionRatio) {\n      if (setting === STAY) {\n        return y1Y2DerivativeRatio * projectedCoreConversionRatiosCurrentYear * coreProposalsOneYearAgo + (1 - y1Y2DerivativeRatio) * projectedCoreConversionRatiosCurrentYear * projectedProposalsCurrentYear;\n      } else if (setting === YTDREVISED) {\n        return successesYtd + openConversionRatio * yearEnd;\n      } else if (setting === YTD) {\n        return this.projectYtdSuccesses(successesYtd, proposalsYtd, yearEnd);\n      }\n    },\n    projectYtdSuccesses: function projectYtdSuccesses(successesYtd, proposalsYtd, yearEnd) {\n      if (proposalsYtd === 0) {\n        return successesYtd;\n      }\n\n      return successesYtd + successesYtd / proposalsYtd * yearEnd;\n    },\n    projectedCoreSuccessesCurrentYearNihDirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosNihDirects,coreProposalsOneYearAgoNihDirects}', 'projectedCoreConversionRatiosCurrentYearNihDirects', 'projectedProposalsCurrentYearNihDirects', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreConversionRatiosOpenCurrentYearNihDirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearNih, this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects'), this.get('model.projection.coreProposalsOneYearAgoNihDirects'), this.projectedProposalsCurrentYearNihDirects, this.projectedCoreConversionRatiosCurrentYearNihDirects, this.get('model.projection.successesYtdNihDirects'), this.get('model.projection.coreProposalsCurrentYearYtdNihDirects'), this.get('model.projection.coreProposalsYearEndNihDirects'), this.coreConversionRatiosOpenCurrentYearNihDirects);\n    }),\n    projectedCoreSuccessesCurrentYearNihIndirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosNihIndirects,coreProposalsOneYearAgoNihIndirects}', 'projectedCoreConversionRatiosCurrentYearNihIndirects', 'projectedProposalsCurrentYearNihIndirects', 'coreConversionRatiosOpenCurrentYearNihIndirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearNih, this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects'), this.get('model.projection.coreProposalsOneYearAgoNihIndirects'), this.projectedProposalsCurrentYearNihIndirects, this.projectedCoreConversionRatiosCurrentYearNihIndirects, this.get('model.projection.successesYtdNihIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdNihIndirects'), this.get('model.projection.coreProposalsYearEndNihIndirects'), this.coreConversionRatiosOpenCurrentYearNihIndirects);\n    }),\n    projectedCoreSuccessesCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosFedFlowThruDirects,coreProposalsOneYearAgoFedFlowThruDirects}', 'projectedCoreConversionRatiosCurrentYearFedFlowThruDirects', 'projectedProposalsCurrentYearFedFlowThruDirects', 'coreConversionRatiosOpenCurrentYearFedFlowThruDirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru, this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects'), this.get('model.projection.coreProposalsOneYearAgoFedFlowThruDirects'), this.projectedProposalsCurrentYearFedFlowThruDirects, this.projectedCoreConversionRatiosCurrentYearFedFlowThruDirects, this.get('model.projection.successesYtdFedFlowThruDirects'), this.get('model.projection.coreProposalsCurrentYearYtdFedFlowThruDirects'), this.get('model.projection.coreProposalsYearEndFedFlowThruDirects'), this.coreConversionRatiosOpenCurrentYearFedFlowThruDirects);\n    }),\n    projectedCoreSuccessesCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosFedFlowThruIndirects,coreProposalsOneYearAgoFedFlowThruIndirects}', 'projectedCoreConversionRatiosCurrentYearFedFlowThruIndirects', 'projectedProposalsCurrentYearFedFlowThruIndirects', 'coreConversionRatiosOpenCurrentYearFedFlowThruIndirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru, this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects'), this.get('model.projection.coreProposalsOneYearAgoFedFlowThruIndirects'), this.projectedProposalsCurrentYearFedFlowThruIndirects, this.projectedCoreConversionRatiosCurrentYearFedFlowThruIndirects, this.get('model.projection.successesYtdFedFlowThruIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdFedFlowThruIndirects'), this.get('model.projection.coreProposalsYearEndFedFlowThruIndirects'), this.coreConversionRatiosOpenCurrentYearFedFlowThruIndirects);\n    }),\n    projectedCoreSuccessesCurrentYearOtherFedDirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosOtherFedDirects,coreProposalsOneYearAgoOtherFedDirects}', 'projectedCoreConversionRatiosCurrentYearOtherFedDirects', 'projectedProposalsCurrentYearOtherFedDirects', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed, this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects'), this.get('model.projection.coreProposalsOneYearAgoOtherFedDirects'), this.projectedProposalsCurrentYearOtherFedDirects, this.projectedCoreConversionRatiosCurrentYearOtherFedDirects, this.get('model.projection.successesYtdOtherFedDirects'), this.get('model.projection.coreProposalsCurrentYearYtdOtherFedDirects'), this.get('model.projection.coreProposalsYearEndOtherFedDirects'), this.coreConversionRatiosOpenCurrentYearOtherFedDirects);\n    }),\n    projectedCoreSuccessesCurrentYearOtherFedIndirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosOtherFedIndirects,coreProposalsOneYearAgoOtherFedIndirects}', 'projectedCoreConversionRatiosCurrentYearOtherFedIndirects', 'projectedProposalsCurrentYearOtherFedIndirects', 'coreConversionRatiosOpenCurrentYearOtherFedIndirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed, this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoOtherFedIndirects'), this.projectedProposalsCurrentYearOtherFedIndirects, this.projectedCoreConversionRatiosCurrentYearOtherFedIndirects, this.get('model.projection.successesYtdOtherFedIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdOtherFedIndirects'), this.get('model.projection.coreProposalsYearEndOtherFedIndirects'), this.coreConversionRatiosOpenCurrentYearOtherFedIndirects);\n    }),\n    projectedCoreSuccessesCurrentYearNonFedDirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosNonFedDirects,coreProposalsOneYearAgoNonFedDirects}', 'projectedCoreConversionRatiosCurrentYearNonFedDirects', 'projectedProposalsCurrentYearNonFedDirects', 'coreConversionRatiosOpenCurrentYearNonFedDirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearNonFed, this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects'), this.get('model.projection.coreProposalsOneYearAgoNonFedDirects'), this.projectedProposalsCurrentYearNonFedDirects, this.projectedCoreConversionRatiosCurrentYearNonFedDirects, this.get('model.projection.successesYtdNonFedDirects'), this.get('model.projection.coreProposalsCurrentYearYtdNonFedDirects'), this.get('model.projection.coreProposalsYearEndNonFedDirects'), this.coreConversionRatiosOpenCurrentYearNonFedDirects);\n    }),\n    projectedCoreSuccessesCurrentYearNonFedIndirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosNonFedIndirects,coreProposalsOneYearAgoNonFedIndirects}', 'projectedCoreConversionRatiosCurrentYearNonFedIndirects', 'projectedProposalsCurrentYearNonFedIndirects', 'coreConversionRatiosOpenCurrentYearNonFedIndirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearNonFed, this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects'), this.get('model.projection.coreProposalsOneYearAgoNonFedIndirects'), this.projectedProposalsCurrentYearNonFedIndirects, this.projectedCoreConversionRatiosCurrentYearNonFedIndirects, this.get('model.projection.successesYtdNonFedIndirects'), this.get('model.projection.coreProposalsCurrentYearYtdNonFedIndirects'), this.get('model.projection.coreProposalsYearEndNonFedIndirects'), this.coreConversionRatiosOpenCurrentYearNonFedIndirects);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor5Directs: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor5Directs,coreProposalsOneYearAgoSponsor5Directs}', 'projectedCoreConversionRatiosCurrentYearSponsor5Directs', 'projectedProposalsCurrentYearSponsor5Directs', 'coreConversionRatiosOpenCurrentYearSponsor5Directs', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor5Directs'), this.projectedProposalsCurrentYearSponsor5Directs, this.projectedCoreConversionRatiosCurrentYearSponsor5Directs, this.get('model.projection.successesYtdSponsor5Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor5Directs'), this.get('model.projection.coreProposalsYearEndSponsor5Directs'), this.coreConversionRatiosOpenCurrentYearSponsor5Directs);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor5Indirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor5Indirects,coreProposalsOneYearAgoSponsor5Indirects}', 'projectedCoreConversionRatiosCurrentYearSponsor5Indirects', 'projectedProposalsCurrentYearSponsor5Indirects', 'coreConversionRatiosOpenCurrentYearSponsor5Indirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor5Indirects'), this.projectedProposalsCurrentYearSponsor5Indirects, this.projectedCoreConversionRatiosCurrentYearSponsor5Indirects, this.get('model.projection.successesYtdSponsor5Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor5Indirects'), this.get('model.projection.coreProposalsYearEndSponsor5Indirects'), this.coreConversionRatiosOpenCurrentYearSponsor5Indirects);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor6Directs: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor6Directs,coreProposalsOneYearAgoSponsor6Directs}', 'projectedCoreConversionRatiosCurrentYearSponsor6Directs', 'projectedProposalsCurrentYearSponsor6Directs', 'coreConversionRatiosOpenCurrentYearSponsor6Directs', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor6Directs'), this.projectedProposalsCurrentYearSponsor6Directs, this.projectedCoreConversionRatiosCurrentYearSponsor6Directs, this.get('model.projection.successesYtdSponsor6Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor6Directs'), this.get('model.projection.coreProposalsYearEndSponsor6Directs'), this.coreConversionRatiosOpenCurrentYearSponsor6Directs);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor6Indirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor6Indirects,coreProposalsOneYearAgoSponsor6Indirects}', 'projectedCoreConversionRatiosCurrentYearSponsor6Indirects', 'projectedProposalsCurrentYearSponsor6Indirects', 'coreConversionRatiosOpenCurrentYearSponsor6Indirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor6Indirects'), this.projectedProposalsCurrentYearSponsor6Indirects, this.projectedCoreConversionRatiosCurrentYearSponsor6Indirects, this.get('model.projection.successesYtdSponsor6Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor6Indirects'), this.get('model.projection.coreProposalsYearEndSponsor6Indirects'), this.coreConversionRatiosOpenCurrentYearNonFedIndirects);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor7Directs: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor7Directs,coreProposalsOneYearAgoSponsor7Directs}', 'projectedCoreConversionRatiosCurrentYearSponsor7Directs', 'projectedProposalsCurrentYearSponsor7Directs', 'coreConversionRatiosOpenCurrentYearSponsor7Directs', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs'), this.get('model.projection.coreProposalsOneYearAgoSponsor7Directs'), this.projectedProposalsCurrentYearSponsor7Directs, this.projectedCoreConversionRatiosCurrentYearSponsor7Directs, this.get('model.projection.successesYtdSponsor7Directs'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor7Directs'), this.get('model.projection.coreProposalsYearEndSponsor7Directs'), this.coreConversionRatiosOpenCurrentYearSponsor7Directs);\n    }),\n    projectedCoreSuccessesCurrentYearSponsor7Indirects: Ember.computed('model.projection.{yoneYtwoDerivativeRatiosSponsor7Indirects,coreProposalsOneYearAgoSponsor7Indirects}', 'projectedCoreConversionRatiosCurrentYearSponsor7Indirects', 'projectedProposalsCurrentYearSponsor7Indirects', 'coreConversionRatiosOpenCurrentYearSponsor7Indirects', function () {\n      return this.projectedCoreSuccessCurrentYear(this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7, this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects'), this.get('model.projection.coreProposalsOneYearAgoSponsor7Indirects'), this.projectedProposalsCurrentYearSponsor7Indirects, this.projectedCoreConversionRatiosCurrentYearSponsor7Indirects, this.get('model.projection.successesYtdSponsor7Indirects'), this.get('model.projection.coreProposalsCurrentYearYtdSponsor7Indirects'), this.get('model.projection.coreProposalsYearEndSponsor7Indirects'), this.coreConversionRatiosOpenCurrentYearNonFedIndirects);\n    }),\n    //region Core Conversion Ratios Row Models\n    nihConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearNih', 'coreConversionRatiosOpenCurrentYearNihDirects', 'coreConversionRatiosOpenCurrentYearNihIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNih', 'coreConversionRatiosRevisedCurrentYearNihDirects', 'coreConversionRatiosRevisedCurrentYearNihIndirects', 'coreConversionRatiosettingsTransitionNextYearNih', 'coreConversionRatiosTransitionNextYearNihDirects', 'coreConversionRatiosTransitionNextYearNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearNih,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearNihDirects, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearNihIndirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearNih,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearNihDirects, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearNihIndirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearNih,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearNihDirects, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearNihIndirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    otherFedConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearOtherFed', 'coreConversionRatiosOpenCurrentYearOtherFedDirects', 'coreConversionRatiosOpenCurrentYearOtherFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearOtherFed', 'coreConversionRatiosRevisedCurrentYearOtherFedDirects', 'coreConversionRatiosRevisedCurrentYearOtherFedIndirects', 'coreConversionRatiosettingsTransitionNextYearOtherFed', 'coreConversionRatiosTransitionNextYearOtherFedDirects', 'coreConversionRatiosTransitionNextYearOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearOtherFed,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearOtherFedDirects, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearOtherFedIndirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearOtherFed,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearOtherFedDirects, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearOtherFedIndirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearOtherFed,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearOtherFedDirects, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearOtherFedIndirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    fedFlowThruConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearFedFlowThru', 'coreConversionRatiosOpenCurrentYearFedFlowThruDirects', 'coreConversionRatiosOpenCurrentYearFedFlowThruIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru', 'coreConversionRatiosRevisedCurrentYearFedFlowThruDirects', 'coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects', 'coreConversionRatioSettingsTransitionNextYearFedFlowThru', 'coreConversionRatiosTransitionNextYearFedFlowThruDirects', 'coreConversionRatiosTransitionNextYearFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearFedFlowThru,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearFedFlowThruDirects, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearFedFlowThruIndirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearFedFlowThru,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearFedFlowThruDirects, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearFedFlowThruIndirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearFedFlowThru,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearFedFlowThruDirects, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearFedFlowThruIndirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    nonFedConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearNonFed', 'coreConversionRatiosOpenCurrentYearNonFedDirects', 'coreConversionRatiosOpenCurrentYearNonFedIndirects', 'coreConversionRatiosSettingsRevisedCurrentYearNonFed', 'coreConversionRatiosRevisedCurrentYearNonFedDirects', 'coreConversionRatiosRevisedCurrentYearNonFedIndirects', 'coreConversionRatiosettingsTransitionNextYearNonFed', 'coreConversionRatiosTransitionNextYearNonFedDirects', 'coreConversionRatiosTransitionNextYearNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearNonFed,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearNonFedDirects, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearNonFedIndirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearNonFed,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearNonFedDirects, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearNonFedIndirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearNonFed,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearNonFedDirects, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearNonFedIndirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor5ConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearSponsor5', 'coreConversionRatiosOpenCurrentYearSponsor5Directs', 'coreConversionRatiosOpenCurrentYearSponsor5Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor5', 'coreConversionRatiosRevisedCurrentYearSponsor5Directs', 'coreConversionRatiosRevisedCurrentYearSponsor5Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor5', 'coreConversionRatiosTransitionNextYearSponsor5Directs', 'coreConversionRatiosTransitionNextYearSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearSponsor5,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor5Directs, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor5Indirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearSponsor5,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor5Directs, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor5Indirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearSponsor5,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor5Directs, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor5Indirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor6ConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearSponsor6', 'coreConversionRatiosOpenCurrentYearSponsor6Directs', 'coreConversionRatiosOpenCurrentYearSponsor6Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor6', 'coreConversionRatiosRevisedCurrentYearSponsor6Directs', 'coreConversionRatiosRevisedCurrentYearSponsor6Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor6', 'coreConversionRatiosTransitionNextYearSponsor6Directs', 'coreConversionRatiosTransitionNextYearSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearSponsor6,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor6Directs, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor6Indirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearSponsor6,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor6Directs, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor6Indirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearSponsor6,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor6Directs, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor6Indirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor7ConversionRatiosRowModel: Ember.computed('coreConversionRatiosSettingsOpenCurrentYearSponsor7', 'coreConversionRatiosOpenCurrentYearSponsor7Directs', 'coreConversionRatiosOpenCurrentYearSponsor7Indirects', 'coreConversionRatiosSettingsRevisedCurrentYearSponsor7', 'coreConversionRatiosRevisedCurrentYearSponsor7Directs', 'coreConversionRatiosRevisedCurrentYearSponsor7Indirects', 'coreConversionRatiosettingsTransitionNextYearSponsor7', 'coreConversionRatiosTransitionNextYearSponsor7Directs', 'coreConversionRatiosTransitionNextYearSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreConversionRatiosSettingsOpenCurrentYearSponsor7,\n        openDirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor7Directs, 1),\n        openIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosOpenCurrentYearSponsor7Indirects, 1),\n        revised: this.coreConversionRatiosSettingsRevisedCurrentYearSponsor7,\n        revisedDirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor7Directs, 1),\n        revisedIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosRevisedCurrentYearSponsor7Indirects, 1),\n        transition: this.coreConversionRatiosSettingsTransitionNextYearSponsor7,\n        transitionDirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor7Directs, 1),\n        transitionIndirects: (0, _formatPercentage.default)(this.coreConversionRatiosTransitionNextYearSponsor7Indirects, 1),\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    //endregion\n    //region Core Proposals Row Models\n    nihProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearNih', 'coreProposalsOpenCurrentYearNihDirects', 'coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsSettingsRevisedCurrentYearNih', 'coreProposalsRevisedCurrentYearNihDirects', 'coreProposalsRevisedCurrentYearNihIndirects', 'coreProposalSettingsTransitionNextYearNih', 'coreProposalsTransitionNextYearNihDirects', 'coreProposalsTransitionNextYearNihIndirects', 'coreProposalsSettingsProjectionsNih.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearNih,\n        openDirects: this.coreProposalsOpenCurrentYearNihDirects,\n        openIndirects: this.coreProposalsOpenCurrentYearNihIndirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearNih,\n        revisedDirects: this.coreProposalsRevisedCurrentYearNihDirects,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearNihIndirects,\n        transition: this.coreProposalsSettingsTransitionNextYearNih,\n        transitionDirects: this.coreProposalsTransitionNextYearNihDirects,\n        transitionIndirects: this.coreProposalsTransitionNextYearNihIndirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNih.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    otherFedProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearOtherFed', 'coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsSettingsRevisedCurrentYearOtherFed', 'coreProposalsRevisedCurrentYearOtherFedDirects', 'coreProposalsRevisedCurrentYearOtherFedIndirects', 'coreProposalSettingsTransitionNextYearOtherFed', 'coreProposalsTransitionNextYearOtherFedDirects', 'coreProposalsTransitionNextYearOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearOtherFed,\n        openDirects: this.coreProposalsOpenCurrentYearOtherFedDirects,\n        openIndirects: this.coreProposalsOpenCurrentYearOtherFedIndirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearOtherFed,\n        revisedDirects: this.coreProposalsRevisedCurrentYearOtherFedDirects,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearOtherFedIndirects,\n        transition: this.coreProposalsSettingsTransitionNextYearOtherFed,\n        transitionDirects: this.coreProposalsTransitionNextYearOtherFedDirects,\n        transitionIndirects: this.coreProposalsTransitionNextYearOtherFedIndirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    fedFlowThruProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearFedFlowThru', 'coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsSettingsRevisedCurrentYearFedFlowThru', 'coreProposalsRevisedCurrentYearFedFlowThruDirects', 'coreProposalsRevisedCurrentYearFedFlowThruIndirects', 'coreProposalSettingsTransitionNextYearFedFlowThru', 'coreProposalsTransitionNextYearFedFlowThruDirects', 'coreProposalsTransitionNextYearFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearFedFlowThru,\n        openDirects: this.coreProposalsOpenCurrentYearFedFlowThruDirects,\n        openIndirects: this.coreProposalsOpenCurrentYearFedFlowThruIndirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearFedFlowThru,\n        revisedDirects: this.coreProposalsRevisedCurrentYearFedFlowThruDirects,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearFedFlowThruIndirects,\n        transition: this.coreProposalsSettingsTransitionNextYearFedFlowThru,\n        transitionDirects: this.coreProposalsTransitionNextYearFedFlowThruDirects,\n        transitionIndirects: this.coreProposalsTransitionNextYearFedFlowThruIndirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    nonFedProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearNonFed', 'coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsSettingsRevisedCurrentYearNonFed', 'coreProposalsRevisedCurrentYearNonFedDirects', 'coreProposalsRevisedCurrentYearNonFedIndirects', 'coreProposalSettingsTransitionNextYearNonFed', 'coreProposalsTransitionNextYearNonFedDirects', 'coreProposalsTransitionNextYearNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearNonFed,\n        openDirects: this.coreProposalsOpenCurrentYearNonFedDirects,\n        openIndirects: this.coreProposalsOpenCurrentYearNonFedIndirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearNonFed,\n        revisedDirects: this.coreProposalsRevisedCurrentYearNonFedDirects,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearNonFedIndirects,\n        transition: this.coreProposalsSettingsTransitionNextYearNonFed,\n        transitionDirects: this.coreProposalsTransitionNextYearNonFedDirects,\n        transitionIndirects: this.coreProposalsTransitionNextYearNonFedIndirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor5ProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearSponsor5', 'coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor5', 'coreProposalsRevisedCurrentYearSponsor5Directs', 'coreProposalsRevisedCurrentYearSponsor5Indirects', 'coreProposalSettingsTransitionNextYearSponsor5', 'coreProposalsTransitionNextYearSponsor5Directs', 'coreProposalsTransitionNextYearSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearSponsor5,\n        openDirects: this.coreProposalsOpenCurrentYearSponsor5Directs,\n        openIndirects: this.coreProposalsOpenCurrentYearSponsor5Indirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearSponsor5,\n        revisedDirects: this.coreProposalsRevisedCurrentYearSponsor5Directs,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearSponsor5Indirects,\n        transition: this.coreProposalsSettingsTransitionNextYearSponsor5,\n        transitionDirects: this.coreProposalsTransitionNextYearSponsor5Directs,\n        transitionIndirects: this.coreProposalsTransitionNextYearSponsor5Indirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor6ProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearSponsor6', 'coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor6', 'coreProposalsRevisedCurrentYearSponsor6Directs', 'coreProposalsRevisedCurrentYearSponsor6Indirects', 'coreProposalSettingsTransitionNextYearSponsor6', 'coreProposalsTransitionNextYearSponsor6Directs', 'coreProposalsTransitionNextYearSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearSponsor6,\n        openDirects: this.coreProposalsOpenCurrentYearSponsor6Directs,\n        openIndirects: this.coreProposalsOpenCurrentYearSponsor6Indirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearSponsor6,\n        revisedDirects: this.coreProposalsRevisedCurrentYearSponsor6Directs,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearSponsor6Indirects,\n        transition: this.coreProposalsSettingsTransitionNextYearSponsor6,\n        transitionDirects: this.coreProposalsTransitionNextYearSponsor6Directs,\n        transitionIndirects: this.coreProposalsTransitionNextYearSponsor6Indirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    sponsor7ProposalsRowModel: Ember.computed('coreProposalsSettingsOpenCurrentYearSponsor7', 'coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsSettingsRevisedCurrentYearSponsor7', 'coreProposalsRevisedCurrentYearSponsor7Directs', 'coreProposalsRevisedCurrentYearSponsor7Indirects', 'coreProposalSettingsTransitionNextYearSponsor7', 'coreProposalsTransitionNextYearSponsor7Directs', 'coreProposalsTransitionNextYearSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.{oneYearAheadChangeDirects,oneYearAheadChangeIndirects,twoYearsAheadChangeDirects,' + 'twoYearsAheadChangeIndirects,threeYearsAheadChangeDirects,threeYearsAheadChangeIndirects,fourYearsAheadChangeDirects,' + 'fourYearsAheadChangeIndirects}', function () {\n      return {\n        open: this.coreProposalsSettingsOpenCurrentYearSponsor7,\n        openDirects: this.coreProposalsOpenCurrentYearSponsor7Directs,\n        openIndirects: this.coreProposalsOpenCurrentYearSponsor7Indirects,\n        revised: this.coreProposalsSettingsRevisedCurrentYearSponsor7,\n        revisedDirects: this.coreProposalsRevisedCurrentYearSponsor7Directs,\n        revisedIndirects: this.coreProposalsRevisedCurrentYearSponsor7Indirects,\n        transition: this.coreProposalsSettingsTransitionNextYearSponsor7,\n        transitionDirects: this.coreProposalsTransitionNextYearSponsor7Directs,\n        transitionIndirects: this.coreProposalsTransitionNextYearSponsor7Indirects,\n        oneYearAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeDirects')),\n        oneYearAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeIndirects')),\n        twoYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeDirects')),\n        twoYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects')),\n        threeYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeDirects')),\n        threeYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects')),\n        fourYearsAheadChangeDirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeDirects')),\n        fourYearsAheadChangeIndirects: (0, _formatPercentage.default)(this.get('coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects'))\n      };\n    }),\n    //endregion\n    hasTeamOfficialProjections: Ember.computed('currentUser.team.officialProjectionSettings', function () {\n      if (!this.currentUser.team) {\n        return false;\n      }\n\n      var officialProjectionSettings = this.currentUser.team.officialProjectionSettings;\n      return officialProjectionSettings && Object.keys(officialProjectionSettings).length > 0;\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/full-projections\", [\"exports\", \"b3i-analytics-web-app/mixins/current-year-projections\", \"b3i-analytics-web-app/utils/future-mega-projection\"], function (_exports, _currentYearProjections, _futureMegaProjection) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var GRANT_TYPE_ALL_RECRUITMENT = 'Include Recruitment';\n  var GRANT_TYPE_MEGA = 'Mega';\n  var GRANT_TYPE_CORE = 'Core';\n  var SPONSOR_TYPE_ALL = 'All Sponsor Types';\n\n  var _default = Ember.Mixin.create(_currentYearProjections.default, {\n    currentUser: Ember.inject.service('current-user'),\n    year: Ember.inject.service(),\n    //region Core Conversion Ratios\n    //endregion\n    //region Core Conversion Ratios Change 0-1 Years\n    coreConversionRatiosOneYearAheadChangeNihDirects: Ember.computed('coreConversionRatiosTransitionNextYearNihDirects', 'coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearNihDirects + this.get('coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeNihIndirects: Ember.computed('coreConversionRatiosTransitionNextYearNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearNihDirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearNihDirects;\n      var indirects = this.coreConversionRatiosTransitionNextYearNihIndirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsNih.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeOtherFedDirects: Ember.computed('coreConversionRatiosTransitionNextYearOtherFedDirects', 'coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearOtherFedDirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeOtherFedIndirects: Ember.computed('coreConversionRatiosTransitionNextYearOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearOtherFedDirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearOtherFedDirects;\n      var indirects = this.coreConversionRatiosTransitionNextYearOtherFedIndirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsOtherFed.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeFedFlowThruDirects: Ember.computed('coreConversionRatiosTransitionNextYearFedFlowThruDirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearFedFlowThruDirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeFedFlowThruIndirects: Ember.computed('coreConversionRatiosTransitionNextYearFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearFedFlowThruDirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearFedFlowThruDirects;\n      var indirects = this.coreConversionRatiosTransitionNextYearFedFlowThruIndirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeNonFedDirects: Ember.computed('coreConversionRatiosTransitionNextYearNonFedDirects', 'coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearNonFedDirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeNonFedIndirects: Ember.computed('coreConversionRatiosTransitionNextYearNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearNonFedDirects', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearNonFedDirects;\n      var indirects = this.coreConversionRatiosTransitionNextYearNonFedIndirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsNonFed.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor5Directs: Ember.computed('coreConversionRatiosTransitionNextYearSponsor5Directs', 'coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearSponsor5Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor5Indirects: Ember.computed('coreConversionRatiosTransitionNextYearSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearSponsor5Directs', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor5Directs;\n      var indirects = this.coreConversionRatiosTransitionNextYearSponsor5Indirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsSponsor5.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor6Directs: Ember.computed('coreConversionRatiosTransitionNextYearSponsor6Directs', 'coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearSponsor6Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor6Indirects: Ember.computed('coreConversionRatiosTransitionNextYearSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearSponsor6Directs', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor6Directs;\n      var indirects = this.coreConversionRatiosTransitionNextYearSponsor6Indirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsSponsor6.oneYearAheadChangeIndirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor7Directs: Ember.computed('coreConversionRatiosTransitionNextYearSponsor7Directs', 'coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeDirects', function () {\n      return this.coreConversionRatiosTransitionNextYearSponsor7Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeDirects');\n    }),\n    coreConversionRatiosOneYearAheadChangeSponsor7Indirects: Ember.computed('coreConversionRatiosTransitionNextYearSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeIndirects', 'coreConversionRatiosTransitionNextYearSponsor7Directs', function () {\n      var directs = this.coreConversionRatiosTransitionNextYearSponsor7Directs;\n      var indirects = this.coreConversionRatiosTransitionNextYearSponsor7Indirects;\n      return this.adjustIndirectConversionRatio(directs, indirects) + this.get('coreConversionRatiosSettingsProjectionsSponsor7.oneYearAheadChangeIndirects');\n    }),\n    //endregion\n    //region Core Conversion Ratios Projections and Chart Data\n    //region Projected NIH\n    projectedCoreConversionRatiosOneYearAheadNihDirects: Ember.computed('projectedCoreConversionRatiosCurrentYearNihDirects', 'coreConversionRatiosOneYearAheadChangeNihDirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeNihDirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadNihDirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadNihDirects', 'coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadNihDirects + this.get('coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadNihDirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadNihDirects', 'coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadNihDirects + this.get('coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadNihDirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadNihDirects', 'coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadNihDirects + this.get('coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadNihIndirects: Ember.computed('projectedCoreConversionRatiosCurrentYearNihIndirects', 'coreConversionRatiosOneYearAheadChangeNihIndirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeNihIndirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadNihIndirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadNihIndirects + this.get('coreConversionRatiosSettingsProjectionsNih.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadNihIndirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadNihIndirects + this.get('coreConversionRatiosSettingsProjectionsNih.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadNihIndirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadNihIndirects', 'coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadNihIndirects + this.get('coreConversionRatiosSettingsProjectionsNih.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Projected Other Fed\n    projectedCoreConversionRatiosOneYearAheadOtherFedDirects: Ember.computed('projectedCoreConversionRatiosCurrentYearOtherFedDirects', 'coreConversionRatiosOneYearAheadChangeOtherFedDirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeOtherFedDirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadOtherFedDirects', 'coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadOtherFedDirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects', 'coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadOtherFedDirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects', 'coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadOtherFedIndirects: Ember.computed('projectedCoreConversionRatiosCurrentYearOtherFedIndirects', 'coreConversionRatiosOneYearAheadChangeOtherFedIndirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeOtherFedIndirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadOtherFedIndirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadOtherFedIndirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects', 'coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects + this.get('coreConversionRatiosSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Project Fed Flow Thru\n    projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects: Ember.computed('projectedCoreConversionRatiosCurrentYearFedFlowThruDirects', 'coreConversionRatiosOneYearAheadChangeFedFlowThruDirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeFedFlowThruDirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects: Ember.computed('projectedCoreConversionRatiosCurrentYearFedFlowThruIndirects', 'coreConversionRatiosOneYearAheadChangeFedFlowThruIndirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeFedFlowThruIndirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects', 'coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects + this.get('coreConversionRatiosSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Projected Non Fed\n    projectedCoreConversionRatiosOneYearAheadNonFedDirects: Ember.computed('projectedCoreConversionRatiosCurrentYearNonFedDirects', 'coreConversionRatiosOneYearAheadChangeNonFedDirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeNonFedDirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadNonFedDirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadNonFedDirects', 'coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadNonFedDirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadNonFedDirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadNonFedDirects', 'coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadNonFedDirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadNonFedDirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadNonFedDirects', 'coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadNonFedDirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadNonFedIndirects: Ember.computed('projectedCoreConversionRatiosCurrentYearNonFedIndirects', 'coreConversionRatiosOneYearAheadChangeNonFedIndirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeNonFedIndirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadNonFedIndirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadNonFedIndirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects', 'coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects + this.get('coreConversionRatiosSettingsProjectionsNonFed.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Projected Sponsor 5\n    projectedCoreConversionRatiosOneYearAheadSponsor5Directs: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor5Directs', 'coreConversionRatiosOneYearAheadChangeSponsor5Directs', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor5Directs;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor5Directs', 'coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor5Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs', 'coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor5Directs: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs', 'coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadSponsor5Indirects: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor5Indirects', 'coreConversionRatiosOneYearAheadChangeSponsor5Indirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor5Indirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor5Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor5Indirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects', 'coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Projected Sponsor 6\n    projectedCoreConversionRatiosOneYearAheadSponsor6Directs: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor6Directs', 'coreConversionRatiosOneYearAheadChangeSponsor6Directs', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor6Directs;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor6Directs', 'coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor6Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs', 'coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor6Directs: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs', 'coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadSponsor6Indirects: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor6Indirects', 'coreConversionRatiosOneYearAheadChangeSponsor6Indirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor6Indirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor6Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor6Indirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects', 'coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    //region Projected Sponsor 7\n    projectedCoreConversionRatiosOneYearAheadSponsor7Directs: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor7Directs', 'coreConversionRatiosOneYearAheadChangeSponsor7Directs', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor7Directs;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor7Directs', 'coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor7Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs', 'coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor7Directs: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs', 'coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeDirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs + this.get('coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeDirects');\n    }),\n    projectedCoreConversionRatiosOneYearAheadSponsor7Indirects: Ember.computed('projectedCoreConversionRatiosCurrentYearSponsor7Indirects', 'coreConversionRatiosOneYearAheadChangeSponsor7Indirects', function () {\n      return this.coreConversionRatiosOneYearAheadChangeSponsor7Indirects;\n    }),\n    projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects: Ember.computed('projectedCoreConversionRatiosOneYearAheadSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosOneYearAheadSponsor7Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects: Ember.computed('projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects');\n    }),\n    projectedCoreConversionRatiosFourYearsAheadSponsor7Indirects: Ember.computed('projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects', 'coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects', function () {\n      return this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects + this.get('coreConversionRatiosSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects');\n    }),\n    //endregion\n    projectedConversionRatios: Ember.computed('model.projection', 'projectedCoreConversionRatiosCurrentYearNihDirects', 'projectedCoreConversionRatiosOneYearAheadNihDirects', 'projectedCoreConversionRatiosTwoYearsAheadNihDirects', 'projectedCoreConversionRatiosThreeYearsAheadNihDirects', 'projectedCoreConversionRatiosFourYearsAheadNihDirects', 'projectedCoreConversionRatiosCurrentYearOtherFedDirects', 'projectedCoreConversionRatiosOneYearAheadOtherFedDirects', 'projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects', 'projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects', 'projectedCoreConversionRatiosFourYearsAheadOtherFedDirects', 'projectedCoreConversionRatiosCurrentYearFedFlowThruDirects', 'projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects', 'projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects', 'projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects', 'projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects', 'projectedCoreConversionRatiosCurrentYearNonFedDirects', 'projectedCoreConversionRatiosOneYearAheadNonFedDirects', 'projectedCoreConversionRatiosTwoYearsAheadNonFedDirects', 'projectedCoreConversionRatiosThreeYearsAheadNonFedDirects', 'projectedCoreConversionRatiosFourYearsAheadNonFedDirects', 'projectedCoreConversionRatiosCurrentYearSponsor5Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor5Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor5Directs', 'projectedCoreConversionRatiosCurrentYearSponsor6Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor6Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor6Directs', 'projectedCoreConversionRatiosCurrentYearSponsor7Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor7Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor7Directs', function () {\n      var model = this.model.projection;\n\n      if (!model || !model.get('coreConversionRatiosThreeYearsAgoNihDirects')) {\n        return null;\n      }\n\n      return {\n        'nih': [model.get('coreConversionRatiosThreeYearsAgoNihDirects').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoNihDirects').toFixed(3), model.get('coreConversionRatiosOneYearAgoNihDirects').toFixed(3), this.projectedCoreConversionRatiosCurrentYearNihDirects.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadNihDirects.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadNihDirects.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadNihDirects.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadNihDirects.toFixed(3)],\n        'otherFed': [model.get('coreConversionRatiosThreeYearsAgoOtherFedDirects').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoOtherFedDirects').toFixed(3), model.get('coreConversionRatiosOneYearAgoOtherFedDirects').toFixed(3), this.projectedCoreConversionRatiosCurrentYearOtherFedDirects.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadOtherFedDirects.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadOtherFedDirects.toFixed(3)],\n        'fedFlowThru': [model.get('coreConversionRatiosThreeYearsAgoFedFlowThruDirects').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoFedFlowThruDirects').toFixed(3), model.get('coreConversionRatiosOneYearAgoFedFlowThruDirects').toFixed(3), this.projectedCoreConversionRatiosCurrentYearFedFlowThruDirects.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects.toFixed(3)],\n        'nonFed': [model.get('coreConversionRatiosThreeYearsAgoNonFedDirects').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoNonFedDirects').toFixed(3), model.get('coreConversionRatiosOneYearAgoNonFedDirects').toFixed(3), this.projectedCoreConversionRatiosCurrentYearNonFedDirects.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadNonFedDirects.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadNonFedDirects.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadNonFedDirects.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadNonFedDirects.toFixed(3)],\n        'sponsor5': [model.get('coreConversionRatiosThreeYearsAgoSponsor5Directs').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoSponsor5Directs').toFixed(3), model.get('coreConversionRatiosOneYearAgoSponsor5Directs').toFixed(3), this.projectedCoreConversionRatiosCurrentYearSponsor5Directs.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadSponsor5Directs.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadSponsor5Directs.toFixed(3)],\n        'sponsor6': [model.get('coreConversionRatiosThreeYearsAgoSponsor6Directs').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoSponsor6Directs').toFixed(3), model.get('coreConversionRatiosOneYearAgoSponsor6Directs').toFixed(3), this.projectedCoreConversionRatiosCurrentYearSponsor6Directs.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadSponsor6Directs.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadSponsor6Directs.toFixed(3)],\n        'sponsor7': [model.get('coreConversionRatiosThreeYearsAgoSponsor7Directs').toFixed(3), model.get('coreConversionRatiosTwoYearsAgoSponsor7Directs').toFixed(3), model.get('coreConversionRatiosOneYearAgoSponsor7Directs').toFixed(3), this.projectedCoreConversionRatiosCurrentYearSponsor7Directs.toFixed(3), this.projectedCoreConversionRatiosOneYearAheadSponsor7Directs.toFixed(3), this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs.toFixed(3), this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs.toFixed(3), this.projectedCoreConversionRatiosFourYearsAheadSponsor7Directs.toFixed(3)]\n      };\n    }),\n    //region Core Proposals\n    //region Core Proposals Change 0-1 Years\n    coreProposalsCurrentYearChangeNihDirects: Ember.computed('coreProposalsOpenCurrentYearNihDirects', 'coreProposalsRevisedCurrentYearNihDirects', function () {\n      if (this.coreProposalsOpenCurrentYearNihDirects === 0) {\n        return this.coreProposalsRevisedCurrentYearNihDirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearNihDirects - this.coreProposalsOpenCurrentYearNihDirects) / this.coreProposalsOpenCurrentYearNihDirects;\n    }),\n    coreProposalsCurrentYearChangeNihIndirects: Ember.computed('coreProposalsOpenCurrentYearNihIndirects', 'coreProposalsRevisedCurrentYearNihIndirects', function () {\n      if (this.coreProposalsOpenCurrentYearNihIndirects === 0) {\n        return this.coreProposalsRevisedCurrentYearNihIndirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearNihIndirects - this.coreProposalsOpenCurrentYearNihIndirects) / this.coreProposalsOpenCurrentYearNihIndirects;\n    }),\n    coreProposalsOneYearAheadChangeNihDirects: Ember.computed('coreProposalsTransitionNextYearNihDirects', 'coreProposalsRevisedCurrentYearNihDirects', 'coreProposalsSettingsProjectionsNih.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearNihDirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearNihDirects - this.coreProposalsRevisedCurrentYearNihDirects) / this.coreProposalsRevisedCurrentYearNihDirects + this.get('coreProposalsSettingsProjectionsNih.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeNihIndirects: Ember.computed('coreProposalsTransitionNextYearNihIndirects', 'coreProposalsRevisedCurrentYearNihIndirects', 'coreProposalsSettingsProjectionsNih.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearNihIndirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearNihIndirects - this.coreProposalsRevisedCurrentYearNihIndirects) / this.coreProposalsRevisedCurrentYearNihIndirects + this.get('coreProposalsSettingsProjectionsNih.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeOtherFedDirects: Ember.computed('coreProposalsOpenCurrentYearOtherFedDirects', 'coreProposalsRevisedCurrentYearOtherFedDirects', function () {\n      if (this.coreProposalsOpenCurrentYearOtherFedDirects === 0) {\n        return this.coreProposalsRevisedCurrentYearOtherFedDirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearOtherFedDirects - this.coreProposalsOpenCurrentYearOtherFedDirects) / this.coreProposalsOpenCurrentYearOtherFedDirects;\n    }),\n    coreProposalsCurrentYearChangeOtherFedIndirects: Ember.computed('coreProposalsOpenCurrentYearOtherFedIndirects', 'coreProposalsRevisedCurrentYearOtherFedIndirects', function () {\n      if (this.coreProposalsOpenCurrentYearOtherFedIndirects === 0) {\n        return this.coreProposalsRevisedCurrentYearOtherFedIndirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearOtherFedIndirects - this.coreProposalsOpenCurrentYearOtherFedIndirects) / this.coreProposalsOpenCurrentYearOtherFedIndirects;\n    }),\n    coreProposalsOneYearAheadChangeOtherFedDirects: Ember.computed('coreProposalsTransitionNextYearOtherFedDirects', 'coreProposalsRevisedCurrentYearOtherFedDirects', 'coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearOtherFedDirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearOtherFedDirects - this.coreProposalsRevisedCurrentYearOtherFedDirects) / this.coreProposalsRevisedCurrentYearOtherFedDirects + this.get('coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeOtherFedIndirects: Ember.computed('coreProposalsTransitionNextYearOtherFedIndirects', 'coreProposalsRevisedCurrentYearOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearOtherFedIndirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearOtherFedIndirects - this.coreProposalsRevisedCurrentYearOtherFedIndirects) / this.coreProposalsRevisedCurrentYearOtherFedIndirects + this.get('coreProposalsSettingsProjectionsOtherFed.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeFedFlowThruDirects: Ember.computed('coreProposalsOpenCurrentYearFedFlowThruDirects', 'coreProposalsRevisedCurrentYearFedFlowThruDirects', function () {\n      if (this.coreProposalsOpenCurrentYearFedFlowThruDirects === 0) {\n        return this.coreProposalsRevisedCurrentYearFedFlowThruDirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearFedFlowThruDirects - this.coreProposalsOpenCurrentYearFedFlowThruDirects) / this.coreProposalsOpenCurrentYearFedFlowThruDirects;\n    }),\n    coreProposalsCurrentYearChangeFedFlowThruIndirects: Ember.computed('coreProposalsOpenCurrentYearFedFlowThruIndirects', 'coreProposalsRevisedCurrentYearFedFlowThruIndirects', function () {\n      if (this.coreProposalsOpenCurrentYearFedFlowThruIndirects === 0) {\n        return this.coreProposalsOpenCurrentYearFedFlowThruIndirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearFedFlowThruIndirects - this.coreProposalsOpenCurrentYearFedFlowThruIndirects) / this.coreProposalsOpenCurrentYearFedFlowThruIndirects;\n    }),\n    coreProposalsOneYearAheadChangeFedFlowThruDirects: Ember.computed('coreProposalsTransitionNextYearFedFlowThruDirects', 'coreProposalsRevisedCurrentYearFedFlowThruDirects', 'coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearFedFlowThruDirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearFedFlowThruDirects - this.coreProposalsRevisedCurrentYearFedFlowThruDirects) / this.coreProposalsRevisedCurrentYearFedFlowThruDirects + this.get('coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeFedFlowThruIndirects: Ember.computed('coreProposalsTransitionNextYearFedFlowThruIndirects', 'coreProposalsRevisedCurrentYearFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearFedFlowThruIndirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearFedFlowThruIndirects - this.coreProposalsRevisedCurrentYearFedFlowThruIndirects) / this.coreProposalsRevisedCurrentYearFedFlowThruIndirects + this.get('coreProposalsSettingsProjectionsFedFlowThru.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeNonFedDirects: Ember.computed('coreProposalsOpenCurrentYearNonFedDirects', 'coreProposalsRevisedCurrentYearNonFedDirects', function () {\n      if (this.coreProposalsOpenCurrentYearNonFedDirects === 0) {\n        return this.coreProposalsOpenCurrentYearNonFedDirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearNonFedDirects - this.coreProposalsOpenCurrentYearNonFedDirects) / this.coreProposalsOpenCurrentYearNonFedDirects;\n    }),\n    coreProposalsCurrentYearChangeNonFedIndirects: Ember.computed('coreProposalsOpenCurrentYearNonFedIndirects', 'coreProposalsRevisedCurrentYearNonFedIndirects', function () {\n      if (this.coreProposalsOpenCurrentYearNonFedIndirects === 0) {\n        return this.coreProposalsOpenCurrentYearNonFedIndirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearNonFedIndirects - this.coreProposalsOpenCurrentYearNonFedIndirects) / this.coreProposalsOpenCurrentYearNonFedIndirects;\n    }),\n    coreProposalsOneYearAheadChangeNonFedDirects: Ember.computed('coreProposalsTransitionNextYearNonFedDirects', 'coreProposalsRevisedCurrentYearNonFedDirects', 'coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearNonFedDirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearNonFedDirects - this.coreProposalsRevisedCurrentYearNonFedDirects) / this.coreProposalsRevisedCurrentYearNonFedDirects + this.get('coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeNonFedIndirects: Ember.computed('coreProposalsTransitionNextYearNonFedIndirects', 'coreProposalsRevisedCurrentYearNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearNonFedIndirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearNonFedIndirects - this.coreProposalsRevisedCurrentYearNonFedIndirects) / this.coreProposalsRevisedCurrentYearNonFedIndirects + this.get('coreProposalsSettingsProjectionsNonFed.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeSponsor5Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor5Directs', 'coreProposalsRevisedCurrentYearSponsor5Directs', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor5Directs === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor5Directs;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor5Directs - this.coreProposalsOpenCurrentYearSponsor5Directs) / this.coreProposalsOpenCurrentYearSponsor5Directs;\n    }),\n    coreProposalsCurrentYearChangeSponsor5Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor5Indirects', 'coreProposalsRevisedCurrentYearSponsor5Indirects', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor5Indirects === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor5Indirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor5Indirects - this.coreProposalsOpenCurrentYearSponsor5Indirects) / this.coreProposalsOpenCurrentYearSponsor5Indirects;\n    }),\n    coreProposalsOneYearAheadChangeSponsor5Directs: Ember.computed('coreProposalsTransitionNextYearSponsor5Directs', 'coreProposalsRevisedCurrentYearSponsor5Directs', 'coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor5Directs === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor5Directs - this.coreProposalsRevisedCurrentYearSponsor5Directs) / this.coreProposalsRevisedCurrentYearSponsor5Directs + this.get('coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeSponsor5Indirects: Ember.computed('coreProposalsTransitionNextYearSponsor5Indirects', 'coreProposalsRevisedCurrentYearSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor5Indirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor5Indirects - this.coreProposalsRevisedCurrentYearSponsor5Indirects) / this.coreProposalsRevisedCurrentYearSponsor5Indirects + this.get('coreProposalsSettingsProjectionsSponsor5.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeSponsor6Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor6Directs', 'coreProposalsRevisedCurrentYearSponsor6Directs', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor6Directs === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor6Directs;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor6Directs - this.coreProposalsOpenCurrentYearSponsor6Directs) / this.coreProposalsOpenCurrentYearSponsor6Directs;\n    }),\n    coreProposalsCurrentYearChangeSponsor6Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor6Indirects', 'coreProposalsRevisedCurrentYearSponsor6Indirects', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor6Indirects === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor6Indirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor6Indirects - this.coreProposalsOpenCurrentYearSponsor6Indirects) / this.coreProposalsOpenCurrentYearSponsor6Indirects;\n    }),\n    coreProposalsOneYearAheadChangeSponsor6Directs: Ember.computed('coreProposalsTransitionNextYearSponsor6Directs', 'coreProposalsRevisedCurrentYearSponsor6Directs', 'coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor6Directs === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor6Directs - this.coreProposalsRevisedCurrentYearSponsor6Directs) / this.coreProposalsRevisedCurrentYearSponsor6Directs + this.get('coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeSponsor6Indirects: Ember.computed('coreProposalsTransitionNextYearSponsor6Indirects', 'coreProposalsRevisedCurrentYearSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor6Indirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor6Indirects - this.coreProposalsRevisedCurrentYearSponsor6Indirects) / this.coreProposalsRevisedCurrentYearSponsor6Indirects + this.get('coreProposalsSettingsProjectionsSponsor6.oneYearAheadChangeIndirects');\n    }),\n    coreProposalsCurrentYearChangeSponsor7Directs: Ember.computed('coreProposalsOpenCurrentYearSponsor7Directs', 'coreProposalsRevisedCurrentYearSponsor7Directs', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor7Directs === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor7Directs;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor7Directs - this.coreProposalsOpenCurrentYearSponsor7Directs) / this.coreProposalsOpenCurrentYearSponsor7Directs;\n    }),\n    coreProposalsCurrentYearChangeSponsor7Indirects: Ember.computed('coreProposalsOpenCurrentYearSponsor7Indirects', 'coreProposalsRevisedCurrentYearSponsor7Indirects', function () {\n      if (this.coreProposalsOpenCurrentYearSponsor7Indirects === 0) {\n        return this.coreProposalsOpenCurrentYearSponsor7Indirects;\n      }\n\n      return (this.coreProposalsRevisedCurrentYearSponsor7Indirects - this.coreProposalsOpenCurrentYearSponsor7Indirects) / this.coreProposalsOpenCurrentYearSponsor7Indirects;\n    }),\n    coreProposalsOneYearAheadChangeSponsor7Directs: Ember.computed('coreProposalsTransitionNextYearSponsor7Directs', 'coreProposalsRevisedCurrentYearSponsor7Directs', 'coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeDirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor7Directs === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor7Directs - this.coreProposalsRevisedCurrentYearSponsor7Directs) / this.coreProposalsRevisedCurrentYearSponsor7Directs + this.get('coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeDirects');\n    }),\n    coreProposalsOneYearAheadChangeSponsor7Indirects: Ember.computed('coreProposalsTransitionNextYearSponsor7Indirects', 'coreProposalsRevisedCurrentYearSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeIndirects', function () {\n      if (this.coreProposalsRevisedCurrentYearSponsor7Indirects === 0) {\n        return 0;\n      }\n\n      return (this.coreProposalsTransitionNextYearSponsor7Indirects - this.coreProposalsRevisedCurrentYearSponsor7Indirects) / this.coreProposalsRevisedCurrentYearSponsor7Indirects + this.get('coreProposalsSettingsProjectionsSponsor7.oneYearAheadChangeIndirects');\n    }),\n    //endregion\n    //region Core Proposals Projections and Chart Data\n    //region Projected NIH\n    projectedProposalsOneYearAheadNihDirects: Ember.computed('projectedProposalsCurrentYearNihDirects', 'coreProposalsOneYearAheadChangeNihDirects', function () {\n      return this.projectedProposalsCurrentYearNihDirects * (1 + this.coreProposalsOneYearAheadChangeNihDirects);\n    }),\n    projectedProposalsTwoYearsAheadNihDirects: Ember.computed('projectedProposalsOneYearAheadNihDirects', 'coreProposalsSettingsProjectionsNih.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadNihDirects * (1 + this.get('coreProposalsSettingsProjectionsNih.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadNihDirects: Ember.computed('projectedProposalsTwoYearsAheadNihDirects', 'coreProposalsSettingsProjectionsNih.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadNihDirects * (1 + this.get('coreProposalsSettingsProjectionsNih.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadNihDirects: Ember.computed('projectedProposalsThreeYearsAheadNihDirects', 'coreProposalsSettingsProjectionsNih.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadNihDirects * (1 + this.get('coreProposalsSettingsProjectionsNih.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadNihIndirects: Ember.computed('projectedProposalsCurrentYearNihIndirects', 'coreProposalsOneYearAheadChangeNihIndirects', function () {\n      return this.projectedProposalsCurrentYearNihIndirects * (1 + this.coreProposalsOneYearAheadChangeNihIndirects);\n    }),\n    projectedProposalsTwoYearsAheadNihIndirects: Ember.computed('projectedProposalsOneYearAheadNihIndirects', 'coreProposalsSettingsProjectionsNih.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadNihIndirects * (1 + this.get('coreProposalsSettingsProjectionsNih.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadNihIndirects: Ember.computed('projectedProposalsTwoYearsAheadNihIndirects', 'coreProposalsSettingsProjectionsNih.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadNihIndirects * (1 + this.get('coreProposalsSettingsProjectionsNih.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadNihIndirects: Ember.computed('projectedProposalsThreeYearsAheadNihIndirects', 'coreProposalsSettingsProjectionsNih.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadNihIndirects * (1 + this.get('coreProposalsSettingsProjectionsNih.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected Other Fed\n    projectedProposalsOneYearAheadOtherFedDirects: Ember.computed('projectedProposalsCurrentYearOtherFedDirects', 'coreProposalsOneYearAheadChangeOtherFedDirects', function () {\n      return this.projectedProposalsCurrentYearOtherFedDirects * (1 + this.coreProposalsOneYearAheadChangeOtherFedDirects);\n    }),\n    projectedProposalsTwoYearsAheadOtherFedDirects: Ember.computed('projectedProposalsOneYearAheadOtherFedDirects', 'coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadOtherFedDirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadOtherFedDirects: Ember.computed('projectedProposalsTwoYearsAheadOtherFedDirects', 'coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadOtherFedDirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadOtherFedDirects: Ember.computed('projectedProposalsThreeYearsAheadOtherFedDirects', 'coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadOtherFedDirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadOtherFedIndirects: Ember.computed('projectedProposalsCurrentYearOtherFedIndirects', 'coreProposalsOneYearAheadChangeOtherFedIndirects', function () {\n      return this.projectedProposalsCurrentYearOtherFedIndirects * (1 + this.coreProposalsOneYearAheadChangeOtherFedIndirects);\n    }),\n    projectedProposalsTwoYearsAheadOtherFedIndirects: Ember.computed('projectedProposalsOneYearAheadOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadOtherFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadOtherFedIndirects: Ember.computed('projectedProposalsTwoYearsAheadOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadOtherFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadOtherFedIndirects: Ember.computed('projectedProposalsThreeYearsAheadOtherFedIndirects', 'coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadOtherFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsOtherFed.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected Fed Flow Thru\n    projectedProposalsOneYearAheadFedFlowThruDirects: Ember.computed('projectedProposalsCurrentYearFedFlowThruDirects', 'coreProposalsOneYearAheadChangeFedFlowThruDirects', function () {\n      return this.projectedProposalsCurrentYearFedFlowThruDirects * (1 + this.coreProposalsOneYearAheadChangeFedFlowThruDirects);\n    }),\n    projectedProposalsTwoYearsAheadFedFlowThruDirects: Ember.computed('projectedProposalsOneYearAheadFedFlowThruDirects', 'coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadFedFlowThruDirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadFedFlowThruDirects: Ember.computed('projectedProposalsTwoYearsAheadFedFlowThruDirects', 'coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadFedFlowThruDirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadFedFlowThruDirects: Ember.computed('projectedProposalsThreeYearsAheadFedFlowThruDirects', 'coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadFedFlowThruDirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadFedFlowThruIndirects: Ember.computed('projectedProposalsCurrentYearFedFlowThruIndirects', 'coreProposalsOneYearAheadChangeFedFlowThruIndirects', function () {\n      return this.projectedProposalsCurrentYearFedFlowThruIndirects * (1 + this.coreProposalsOneYearAheadChangeFedFlowThruIndirects);\n    }),\n    projectedProposalsTwoYearsAheadFedFlowThruIndirects: Ember.computed('projectedProposalsOneYearAheadFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadFedFlowThruIndirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadFedFlowThruIndirects: Ember.computed('projectedProposalsTwoYearsAheadFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadFedFlowThruIndirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadFedFlowThruIndirects: Ember.computed('projectedProposalsThreeYearsAheadFedFlowThruIndirects', 'coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadFedFlowThruIndirects * (1 + this.get('coreProposalsSettingsProjectionsFedFlowThru.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected NonFed\n    projectedProposalsOneYearAheadNonFedDirects: Ember.computed('projectedProposalsCurrentYearNonFedDirects', 'coreProposalsOneYearAheadChangeNonFedDirects', function () {\n      return this.projectedProposalsCurrentYearNonFedDirects * (1 + this.coreProposalsOneYearAheadChangeNonFedDirects);\n    }),\n    projectedProposalsTwoYearsAheadNonFedDirects: Ember.computed('projectedProposalsOneYearAheadNonFedDirects', 'coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadNonFedDirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadNonFedDirects: Ember.computed('projectedProposalsTwoYearsAheadNonFedDirects', 'coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadNonFedDirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadNonFedDirects: Ember.computed('projectedProposalsThreeYearsAheadNonFedDirects', 'coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadNonFedDirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadNonFedIndirects: Ember.computed('projectedProposalsCurrentYearNonFedIndirects', 'coreProposalsOneYearAheadChangeNonFedIndirects', function () {\n      return this.projectedProposalsCurrentYearNonFedIndirects * (1 + this.coreProposalsOneYearAheadChangeNonFedIndirects);\n    }),\n    projectedProposalsTwoYearsAheadNonFedIndirects: Ember.computed('projectedProposalsOneYearAheadNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadNonFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadNonFedIndirects: Ember.computed('projectedProposalsTwoYearsAheadNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadNonFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadNonFedIndirects: Ember.computed('projectedProposalsThreeYearsAheadNonFedIndirects', 'coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadNonFedIndirects * (1 + this.get('coreProposalsSettingsProjectionsNonFed.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected Sponsor5\n    projectedProposalsOneYearAheadSponsor5Directs: Ember.computed('projectedProposalsCurrentYearSponsor5Directs', 'coreProposalsOneYearAheadChangeSponsor5Directs', function () {\n      return this.projectedProposalsCurrentYearSponsor5Directs * (1 + this.coreProposalsOneYearAheadChangeSponsor5Directs);\n    }),\n    projectedProposalsTwoYearsAheadSponsor5Directs: Ember.computed('projectedProposalsOneYearAheadSponsor5Directs', 'coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor5Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor5Directs: Ember.computed('projectedProposalsTwoYearsAheadSponsor5Directs', 'coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor5Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor5Directs: Ember.computed('projectedProposalsThreeYearsAheadSponsor5Directs', 'coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor5Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadSponsor5Indirects: Ember.computed('projectedProposalsCurrentYearSponsor5Indirects', 'coreProposalsOneYearAheadChangeSponsor5Indirects', function () {\n      return this.projectedProposalsCurrentYearSponsor5Indirects * (1 + this.coreProposalsOneYearAheadChangeSponsor5Indirects);\n    }),\n    projectedProposalsTwoYearsAheadSponsor5Indirects: Ember.computed('projectedProposalsOneYearAheadSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor5Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor5Indirects: Ember.computed('projectedProposalsTwoYearsAheadSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor5Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor5Indirects: Ember.computed('projectedProposalsThreeYearsAheadSponsor5Indirects', 'coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor5Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor5.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected Sponsor6\n    projectedProposalsOneYearAheadSponsor6Directs: Ember.computed('projectedProposalsCurrentYearSponsor6Directs', 'coreProposalsOneYearAheadChangeSponsor6Directs', function () {\n      return this.projectedProposalsCurrentYearSponsor6Directs * (1 + this.coreProposalsOneYearAheadChangeSponsor6Directs);\n    }),\n    projectedProposalsTwoYearsAheadSponsor6Directs: Ember.computed('projectedProposalsOneYearAheadSponsor6Directs', 'coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor6Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor6Directs: Ember.computed('projectedProposalsTwoYearsAheadSponsor6Directs', 'coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor6Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor6Directs: Ember.computed('projectedProposalsThreeYearsAheadSponsor6Directs', 'coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor6Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadSponsor6Indirects: Ember.computed('projectedProposalsCurrentYearSponsor6Indirects', 'coreProposalsOneYearAheadChangeSponsor6Indirects', function () {\n      return this.projectedProposalsCurrentYearSponsor6Indirects * (1 + this.coreProposalsOneYearAheadChangeSponsor6Indirects);\n    }),\n    projectedProposalsTwoYearsAheadSponsor6Indirects: Ember.computed('projectedProposalsOneYearAheadSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor6Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor6Indirects: Ember.computed('projectedProposalsTwoYearsAheadSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor6Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor6Indirects: Ember.computed('projectedProposalsThreeYearsAheadSponsor6Indirects', 'coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor6Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor6.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected Sponsor7\n    projectedProposalsOneYearAheadSponsor7Directs: Ember.computed('projectedProposalsCurrentYearSponsor7Directs', 'coreProposalsOneYearAheadChangeSponsor7Directs', function () {\n      return this.projectedProposalsCurrentYearSponsor7Directs * (1 + this.coreProposalsOneYearAheadChangeSponsor7Directs);\n    }),\n    projectedProposalsTwoYearsAheadSponsor7Directs: Ember.computed('projectedProposalsOneYearAheadSponsor7Directs', 'coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeDirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor7Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeDirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor7Directs: Ember.computed('projectedProposalsTwoYearsAheadSponsor7Directs', 'coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeDirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor7Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeDirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor7Directs: Ember.computed('projectedProposalsThreeYearsAheadSponsor7Directs', 'coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeDirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor7Directs * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeDirects'));\n    }),\n    projectedProposalsOneYearAheadSponsor7Indirects: Ember.computed('projectedProposalsCurrentYearSponsor7Indirects', 'coreProposalsOneYearAheadChangeSponsor7Indirects', function () {\n      return this.projectedProposalsCurrentYearSponsor7Indirects * (1 + this.coreProposalsOneYearAheadChangeSponsor7Indirects);\n    }),\n    projectedProposalsTwoYearsAheadSponsor7Indirects: Ember.computed('projectedProposalsOneYearAheadSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsOneYearAheadSponsor7Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.twoYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsThreeYearsAheadSponsor7Indirects: Ember.computed('projectedProposalsTwoYearsAheadSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsTwoYearsAheadSponsor7Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.threeYearsAheadChangeIndirects'));\n    }),\n    projectedProposalsFourYearsAheadSponsor7Indirects: Ember.computed('projectedProposalsThreeYearsAheadSponsor7Indirects', 'coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects', function () {\n      return this.projectedProposalsThreeYearsAheadSponsor7Indirects * (1 + this.get('coreProposalsSettingsProjectionsSponsor7.fourYearsAheadChangeIndirects'));\n    }),\n    //endregion\n    //region Projected By Year\n    projectedProposalsCurrentYearDirects: Ember.computed('projectedProposalsCurrentYearNihDirects', 'projectedProposalsCurrentYearOtherFedDirects', 'projectedProposalsCurrentYearFedFlowThruDirects', 'projectedProposalsCurrentYearNonFedDirects', 'projectedProposalsCurrentYearSponsor5Directs', 'projectedProposalsCurrentYearSponsor6Directs', 'projectedProposalsCurrentYearSponsor7Directs', 'selectedSponsor', function () {\n      // Shivom - TODO - Update this and all below functions\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsCurrentYearNihDirects, this.projectedProposalsCurrentYearFedFlowThruDirects, this.projectedProposalsCurrentYearOtherFedDirects, this.projectedProposalsCurrentYearNonFedDirects, this.projectedProposalsCurrentYearSponsor5Directs, this.projectedProposalsCurrentYearSponsor6Directs, this.projectedProposalsCurrentYearSponsor7Directs);\n    }),\n    projectedProposalsCurrentYearIndirects: Ember.computed('projectedProposalsCurrentYearNihIndirects', 'projectedProposalsCurrentYearOtherFedIndirects', 'projectedProposalsCurrentYearFedFlowThruIndirects', 'projectedProposalsCurrentYearNonFedIndirects', 'projectedProposalsCurrentYearSponsor5Indirects', 'projectedProposalsCurrentYearSponsor6Indirects', 'projectedProposalsCurrentYearSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsCurrentYearNihIndirects, this.projectedProposalsCurrentYearFedFlowThruIndirects, this.projectedProposalsCurrentYearOtherFedIndirects, this.projectedProposalsCurrentYearNonFedIndirects, this.projectedProposalsCurrentYearSponsor5Indirects, this.projectedProposalsCurrentYearSponsor6Indirects, this.projectedProposalsCurrentYearSponsor7Indirects);\n    }),\n    projectedProposalsOneYearAheadDirects: Ember.computed('projectedProposalsOneYearAheadNihDirects', 'projectedProposalsOneYearAheadOtherFedDirects', 'projectedProposalsOneYearAheadFedFlowThruDirects', 'projectedProposalsOneYearAheadNonFedDirects', 'projectedProposalsOneYearAheadSponsor5Directs', 'projectedProposalsOneYearAheadSponsor6Directs', 'projectedProposalsOneYearAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsOneYearAheadNihDirects, this.projectedProposalsOneYearAheadFedFlowThruDirects, this.projectedProposalsOneYearAheadOtherFedDirects, this.projectedProposalsOneYearAheadNonFedDirects, this.projectedProposalsOneYearAheadSponsor5Directs, this.projectedProposalsOneYearAheadSponsor6Directs, this.projectedProposalsOneYearAheadSponsor7Directs);\n    }),\n    projectedProposalsOneYearAheadIndirects: Ember.computed('projectedProposalsOneYearAheadNihIndirects', 'projectedProposalsOneYearAheadOtherFedIndirects', 'projectedProposalsOneYearAheadFedFlowThruIndirects', 'projectedProposalsOneYearAheadNonFedIndirects', 'projectedProposalsOneYearAheadSponsor5Indirects', 'projectedProposalsOneYearAheadSponsor6Indirects', 'projectedProposalsOneYearAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsOneYearAheadNihIndirects, this.projectedProposalsOneYearAheadFedFlowThruIndirects, this.projectedProposalsOneYearAheadOtherFedIndirects, this.projectedProposalsOneYearAheadNonFedIndirects, this.projectedProposalsOneYearAheadSponsor5Indirects, this.projectedProposalsOneYearAheadSponsor6Indirects, this.projectedProposalsOneYearAheadSponsor7Indirects);\n    }),\n    projectedProposalsTwoYearsAheadDirects: Ember.computed('projectedProposalsTwoYearsAheadNihDirects', 'projectedProposalsTwoYearsAheadOtherFedDirects', 'projectedProposalsTwoYearsAheadFedFlowThruDirects', 'projectedProposalsTwoYearsAheadNonFedDirects', 'projectedProposalsTwoYearsAheadSponsor5Directs', 'projectedProposalsTwoYearsAheadSponsor6Directs', 'projectedProposalsTwoYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsTwoYearsAheadNihDirects, this.projectedProposalsTwoYearsAheadFedFlowThruDirects, this.projectedProposalsTwoYearsAheadOtherFedDirects, this.projectedProposalsTwoYearsAheadNonFedDirects, this.projectedProposalsTwoYearsAheadSponsor5Directs, this.projectedProposalsTwoYearsAheadSponsor6Directs, this.projectedProposalsTwoYearsAheadSponsor7Directs);\n    }),\n    projectedProposalsTwoYearsAheadIndirects: Ember.computed('projectedProposalsTwoYearsAheadNihIndirects', 'projectedProposalsTwoYearsAheadOtherFedIndirects', 'projectedProposalsTwoYearsAheadFedFlowThruIndirects', 'projectedProposalsTwoYearsAheadNonFedIndirects', 'projectedProposalsTwoYearsAheadSponsor5Indirects', 'projectedProposalsTwoYearsAheadSponsor6Indirects', 'projectedProposalsTwoYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsTwoYearsAheadNihIndirects, this.projectedProposalsTwoYearsAheadFedFlowThruIndirects, this.projectedProposalsTwoYearsAheadOtherFedIndirects, this.projectedProposalsTwoYearsAheadNonFedIndirects, this.projectedProposalsTwoYearsAheadSponsor5Indirects, this.projectedProposalsTwoYearsAheadSponsor6Indirects, this.projectedProposalsTwoYearsAheadSponsor7Indirects);\n    }),\n    projectedProposalsThreeYearsAheadDirects: Ember.computed('projectedProposalsThreeYearsAheadNihDirects', 'projectedProposalsThreeYearsAheadOtherFedDirects', 'projectedProposalsThreeYearsAheadFedFlowThruDirects', 'projectedProposalsThreeYearsAheadNonFedDirects', 'projectedProposalsThreeYearsAheadSponsor5Directs', 'projectedProposalsThreeYearsAheadSponsor6Directs', 'projectedProposalsThreeYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsThreeYearsAheadNihDirects, this.projectedProposalsThreeYearsAheadFedFlowThruDirects, this.projectedProposalsThreeYearsAheadOtherFedDirects, this.projectedProposalsThreeYearsAheadNonFedDirects, this.projectedProposalsThreeYearsAheadSponsor5Directs, this.projectedProposalsThreeYearsAheadSponsor6Directs, this.projectedProposalsThreeYearsAheadSponsor7Directs);\n    }),\n    projectedProposalsThreeYearsAheadIndirects: Ember.computed('projectedProposalsThreeYearsAheadNihIndirects', 'projectedProposalsThreeYearsAheadOtherFedIndirects', 'projectedProposalsThreeYearsAheadFedFlowThruIndirects', 'projectedProposalsThreeYearsAheadNonFedIndirects', 'projectedProposalsThreeYearsAheadSponsor5Indirects', 'projectedProposalsThreeYearsAheadSponsor6Indirects', 'projectedProposalsThreeYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsThreeYearsAheadNihIndirects, this.projectedProposalsThreeYearsAheadFedFlowThruIndirects, this.projectedProposalsThreeYearsAheadOtherFedIndirects, this.projectedProposalsThreeYearsAheadNonFedIndirects, this.projectedProposalsThreeYearsAheadSponsor5Indirects, this.projectedProposalsThreeYearsAheadSponsor6Indirects, this.projectedProposalsThreeYearsAheadSponsor7Indirects);\n    }),\n    projectedProposalsFourYearsAheadDirects: Ember.computed('projectedProposalsFourYearsAheadNihDirects', 'projectedProposalsFourYearsAheadOtherFedDirects', 'projectedProposalsFourYearsAheadFedFlowThruDirects', 'projectedProposalsFourYearsAheadNonFedDirects', 'projectedProposalsFourYearsAheadSponsor5Directs', 'projectedProposalsFourYearsAheadSponsor6Directs', 'projectedProposalsFourYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsFourYearsAheadNihDirects, this.projectedProposalsFourYearsAheadFedFlowThruDirects, this.projectedProposalsFourYearsAheadOtherFedDirects, this.projectedProposalsFourYearsAheadNonFedDirects, this.projectedProposalsFourYearsAheadSponsor5Directs, this.projectedProposalsFourYearsAheadSponsor6Directs, this.projectedProposalsFourYearsAheadSponsor7Directs);\n    }),\n    projectedProposalsFourYearsAheadIndirects: Ember.computed('projectedProposalsFourYearsAheadNihIndirects', 'projectedProposalsFourYearsAheadOtherFedIndirects', 'projectedProposalsFourYearsAheadFedFlowThruIndirects', 'projectedProposalsFourYearsAheadNonFedIndirects', 'projectedProposalsFourYearsAheadSponsor5Indirects', 'projectedProposalsFourYearsAheadSponsor6Indirects', 'projectedProposalsFourYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedProposalsFourYearsAheadNihIndirects, this.projectedProposalsFourYearsAheadFedFlowThruIndirects, this.projectedProposalsFourYearsAheadOtherFedIndirects, this.projectedProposalsFourYearsAheadNonFedIndirects, this.projectedProposalsFourYearsAheadSponsor5Indirects, this.projectedProposalsFourYearsAheadSponsor6Indirects, this.projectedProposalsFourYearsAheadSponsor7Indirects);\n    }),\n    //endregion\n    projectedCoreProposals: Ember.computed('model.projection', 'projectedProposalsCurrentYearDirects', 'projectedProposalsOneYearAheadDirects', 'projectedProposalsTwoYearsAheadDirects', 'projectedProposalsThreeYearsAheadDirects', 'projectedProposalsFourYearsAheadDirects', 'projectedProposalsCurrentYearIndirects', 'projectedProposalsOneYearAheadIndirects', 'projectedProposalsTwoYearsAheadIndirects', 'projectedProposalsThreeYearsAheadIndirects', 'projectedProposalsFourYearsAheadIndirects', 'selectedRecruitmentOption', 'selectedGrantType', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n\n      if (!model) {\n        return null;\n      }\n\n      var coreProposalsThreeYearsAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsThreeYearsAgoNihDirects, model.coreProposalsThreeYearsAgoFedFlowThruDirects, model.coreProposalsThreeYearsAgoOtherFedDirects, model.coreProposalsThreeYearsAgoNonFedDirects, model.coreProposalsThreeYearsAgoSponsor5Directs, model.coreProposalsThreeYearsAgoSponsor6Directs, model.coreProposalsThreeYearsAgoSponsor7Directs);\n      var coreProposalsTwoYearsAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsTwoYearsAgoNihDirects, model.coreProposalsTwoYearsAgoFedFlowThruDirects, model.coreProposalsTwoYearsAgoOtherFedDirects, model.coreProposalsTwoYearsAgoNonFedDirects, model.coreProposalsTwoYearsAgoSponsor5Directs, model.coreProposalsTwoYearsAgoSponsor6Directs, model.coreProposalsTwoYearsAgoSponsor7Directs);\n      var coreProposalsOneYearAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsOneYearAgoNihDirects, model.coreProposalsOneYearAgoFedFlowThruDirects, model.coreProposalsOneYearAgoOtherFedDirects, model.coreProposalsOneYearAgoNonFedDirects, model.coreProposalsOneYearAgoSponsor5Directs, model.coreProposalsOneYearAgoSponsor6Directs, model.coreProposalsOneYearAgoSponsor7Directs);\n      var directs = [coreProposalsThreeYearsAgoDirects, coreProposalsTwoYearsAgoDirects, coreProposalsOneYearAgoDirects, this.projectedProposalsCurrentYearDirects, this.projectedProposalsOneYearAheadDirects, this.projectedProposalsTwoYearsAheadDirects, this.projectedProposalsThreeYearsAheadDirects, this.projectedProposalsFourYearsAheadDirects];\n      var formattedDirects = this.addRecruitmentData(directs, 'proposals', 3, true).map(function (d) {\n        return d.toFixed(1);\n      });\n      var coreProposalsThreeYearsAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsThreeYearsAgoNihIndirects, model.coreProposalsThreeYearsAgoFedFlowThruIndirects, model.coreProposalsThreeYearsAgoOtherFedIndirects, model.coreProposalsThreeYearsAgoNonFedIndirects, model.coreProposalsThreeYearsAgoSponsor5Indirects, model.coreProposalsThreeYearsAgoSponsor6Indirects, model.coreProposalsThreeYearsAgoSponsor7Indirects);\n      var coreProposalsTwoYearsAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsTwoYearsAgoNihIndirects, model.coreProposalsTwoYearsAgoFedFlowThruIndirects, model.coreProposalsTwoYearsAgoOtherFedIndirects, model.coreProposalsTwoYearsAgoNonFedIndirects, model.coreProposalsTwoYearsAgoSponsor5Indirects, model.coreProposalsTwoYearsAgoSponsor6Indirects, model.coreProposalsTwoYearsAgoSponsor7Indirects);\n      var coreProposalsOneYearAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.coreProposalsOneYearAgoNihIndirects, model.coreProposalsOneYearAgoFedFlowThruIndirects, model.coreProposalsOneYearAgoOtherFedIndirects, model.coreProposalsOneYearAgoNonFedIndirects, model.coreProposalsOneYearAgoSponsor5Indirects, model.coreProposalsOneYearAgoSponsor6Indirects, model.coreProposalsOneYearAgoSponsor7Indirects);\n      var indirects = [coreProposalsThreeYearsAgoIndirects, coreProposalsTwoYearsAgoIndirects, coreProposalsOneYearAgoIndirects, this.projectedProposalsCurrentYearIndirects, this.projectedProposalsOneYearAheadIndirects, this.projectedProposalsTwoYearsAheadIndirects, this.projectedProposalsThreeYearsAheadIndirects, this.projectedProposalsFourYearsAheadIndirects];\n      var formattedIndirects = this.addRecruitmentData(indirects, 'proposals', 3, false).map(function (d) {\n        return d.toFixed(1);\n      });\n      return {\n        'directs': formattedDirects,\n        'indirects': formattedIndirects\n      };\n    }),\n    //endregion\n    //endregion\n    //region Core Successes\n    //region Projected NIH\n    projectedCoreSuccessesOneYearAheadNihDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihDirects', 'projectedCoreConversionRatiosOneYearAheadNihDirects', 'projectedProposalsCurrentYearNihDirects', 'projectedProposalsOneYearAheadNihDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects') * this.projectedCoreConversionRatiosOneYearAheadNihDirects * this.projectedProposalsCurrentYearNihDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects')) * this.projectedCoreConversionRatiosOneYearAheadNihDirects * this.projectedProposalsOneYearAheadNihDirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadNihDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihDirects', 'projectedCoreConversionRatiosTwoYearsAheadNihDirects', 'projectedProposalsOneYearAheadNihDirects', 'projectedProposalsTwoYearsAheadNihDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects') * this.projectedCoreConversionRatiosTwoYearsAheadNihDirects * this.projectedProposalsOneYearAheadNihDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects')) * this.projectedCoreConversionRatiosTwoYearsAheadNihDirects * this.projectedProposalsTwoYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadNihDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihDirects', 'projectedCoreConversionRatiosThreeYearsAheadNihDirects', 'projectedProposalsTwoYearsAheadNihDirects', 'projectedProposalsThreeYearsAheadNihDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects') * this.projectedCoreConversionRatiosThreeYearsAheadNihDirects * this.projectedProposalsTwoYearsAheadNihDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects')) * this.projectedCoreConversionRatiosThreeYearsAheadNihDirects * this.projectedProposalsThreeYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadNihDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihDirects', 'projectedCoreConversionRatiosFourYearsAheadNihDirects', 'projectedProposalsThreeYearsAheadNihDirects', 'projectedProposalsFourYearsAheadNihDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects') * this.projectedCoreConversionRatiosFourYearsAheadNihDirects * this.projectedProposalsThreeYearsAheadNihDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects')) * this.projectedCoreConversionRatiosFourYearsAheadNihDirects * this.projectedProposalsFourYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihDirects;\n    }),\n    projectedCoreSuccessesOneYearAheadNihIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihIndirects', 'projectedCoreConversionRatiosOneYearAheadNihIndirects', 'projectedProposalsCurrentYearNihIndirects', 'projectedProposalsOneYearAheadNihIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects') * this.projectedCoreConversionRatiosOneYearAheadNihIndirects * this.projectedProposalsCurrentYearNihIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects')) * this.projectedCoreConversionRatiosOneYearAheadNihIndirects * this.projectedProposalsOneYearAheadNihIndirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadNihIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihIndirects', 'projectedCoreConversionRatiosTwoYearsAheadNihIndirects', 'projectedProposalsOneYearAheadNihIndirects', 'projectedProposalsTwoYearsAheadNihIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects') * this.projectedCoreConversionRatiosTwoYearsAheadNihIndirects * this.projectedProposalsOneYearAheadNihIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects')) * this.projectedCoreConversionRatiosTwoYearsAheadNihIndirects * this.projectedProposalsTwoYearsAheadNihIndirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadNihIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihIndirects', 'projectedCoreConversionRatiosThreeYearsAheadNihIndirects', 'projectedProposalsTwoYearsAheadNihIndirects', 'projectedProposalsThreeYearsAheadNihIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects') * this.projectedCoreConversionRatiosThreeYearsAheadNihIndirects * this.projectedProposalsTwoYearsAheadNihIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects')) * this.projectedCoreConversionRatiosThreeYearsAheadNihIndirects * this.projectedProposalsThreeYearsAheadNihIndirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadNihIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNihIndirects', 'projectedCoreConversionRatiosFourYearsAheadNihIndirects', 'projectedProposalsThreeYearsAheadNihIndirects', 'projectedProposalsFourYearsAheadNihIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects') * this.projectedCoreConversionRatiosFourYearsAheadNihIndirects * this.projectedProposalsThreeYearsAheadNihIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNihIndirects')) * this.projectedCoreConversionRatiosFourYearsAheadNihIndirects * this.projectedProposalsFourYearsAheadNihIndirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihIndirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihIndirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNihIndirects;\n    }),\n    //endregion\n    //region Projected Fed Flow Thru\n    projectedCoreSuccessesOneYearAheadFedFlowThruDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects', 'projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects', 'projectedProposalsCurrentYearFedFlowThruDirects', 'projectedProposalsOneYearAheadFedFlowThruDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects') * this.projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects * this.projectedProposalsCurrentYearFedFlowThruDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects')) * this.projectedCoreConversionRatiosOneYearAheadFedFlowThruDirects * this.projectedProposalsOneYearAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects', 'projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects', 'projectedProposalsOneYearAheadFedFlowThruDirects', 'projectedProposalsTwoYearsAheadFedFlowThruDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects') * this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects * this.projectedProposalsOneYearAheadFedFlowThruDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects')) * this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruDirects * this.projectedProposalsTwoYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects', 'projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects', 'projectedProposalsTwoYearsAheadFedFlowThruDirects', 'projectedProposalsThreeYearsAheadFedFlowThruDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects') * this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects * this.projectedProposalsTwoYearsAheadFedFlowThruDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects')) * this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruDirects * this.projectedProposalsThreeYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadFedFlowThruDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects', 'projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects', 'projectedProposalsThreeYearsAheadFedFlowThruDirects', 'projectedProposalsFourYearsAheadFedFlowThruDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects') * this.projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects * this.projectedProposalsThreeYearsAheadFedFlowThruDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects')) * this.projectedCoreConversionRatiosFourYearsAheadFedFlowThruDirects * this.projectedProposalsFourYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects;\n    }),\n    projectedCoreSuccessesOneYearAheadFedFlowThruIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects', 'projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects', 'projectedProposalsCurrentYearFedFlowThruIndirects', 'projectedProposalsOneYearAheadFedFlowThruIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects') * this.projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects * this.projectedProposalsCurrentYearFedFlowThruIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects')) * this.projectedCoreConversionRatiosOneYearAheadFedFlowThruIndirects * this.projectedProposalsOneYearAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects', 'projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects', 'projectedProposalsOneYearAheadFedFlowThruIndirects', 'projectedProposalsTwoYearsAheadFedFlowThruIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects') * this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects * this.projectedProposalsOneYearAheadFedFlowThruIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects')) * this.projectedCoreConversionRatiosTwoYearsAheadFedFlowThruIndirects * this.projectedProposalsTwoYearsAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects', 'projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects', 'projectedProposalsTwoYearsAheadFedFlowThruIndirects', 'projectedProposalsThreeYearsAheadFedFlowThruIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects') * this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects * this.projectedProposalsTwoYearsAheadFedFlowThruIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects')) * this.projectedCoreConversionRatiosThreeYearsAheadFedFlowThruIndirects * this.projectedProposalsThreeYearsAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects', 'projectedCoreConversionRatiosFourYearsAheadFedFlowThruIndirects', 'projectedProposalsThreeYearsAheadFedFlowThruIndirects', 'projectedProposalsFourYearsAheadFedFlowThruIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects') * this.projectedCoreConversionRatiosFourYearsAheadFedFlowThruIndirects * this.projectedProposalsThreeYearsAheadFedFlowThruIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruIndirects')) * this.projectedCoreConversionRatiosFourYearsAheadFedFlowThruIndirects * this.projectedProposalsFourYearsAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects;\n    }),\n    //endregion\n    //region Projected Other Fed\n    projectedCoreSuccessesOneYearAheadOtherFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'projectedCoreConversionRatiosOneYearAheadOtherFedDirects', 'projectedProposalsCurrentYearOtherFedDirects', 'projectedProposalsOneYearAheadOtherFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects') * this.projectedCoreConversionRatiosOneYearAheadOtherFedDirects * this.projectedProposalsCurrentYearOtherFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects')) * this.projectedCoreConversionRatiosOneYearAheadOtherFedDirects * this.projectedProposalsOneYearAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadOtherFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects', 'projectedProposalsOneYearAheadOtherFedDirects', 'projectedProposalsTwoYearsAheadOtherFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects') * this.projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects * this.projectedProposalsOneYearAheadOtherFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects')) * this.projectedCoreConversionRatiosTwoYearsAheadOtherFedDirects * this.projectedProposalsTwoYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadOtherFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects', 'projectedProposalsTwoYearsAheadOtherFedDirects', 'projectedProposalsThreeYearsAheadOtherFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects') * this.projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects * this.projectedProposalsTwoYearsAheadOtherFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects')) * this.projectedCoreConversionRatiosThreeYearsAheadOtherFedDirects * this.projectedProposalsThreeYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadOtherFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'projectedCoreConversionRatiosFourYearsAheadOtherFedDirects', 'projectedProposalsThreeYearsAheadOtherFedDirects', 'projectedProposalsFourYearsAheadOtherFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects') * this.projectedCoreConversionRatiosFourYearsAheadOtherFedDirects * this.projectedProposalsThreeYearsAheadOtherFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects')) * this.projectedCoreConversionRatiosFourYearsAheadOtherFedDirects * this.projectedProposalsFourYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedDirects;\n    }),\n    projectedCoreSuccessesOneYearAheadOtherFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects', 'projectedCoreConversionRatiosOneYearAheadOtherFedIndirects', 'projectedProposalsCurrentYearOtherFedIndirects', 'projectedProposalsOneYearAheadOtherFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects') * this.projectedCoreConversionRatiosOneYearAheadOtherFedIndirects * this.projectedProposalsCurrentYearOtherFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects')) * this.projectedCoreConversionRatiosOneYearAheadOtherFedIndirects * this.projectedProposalsOneYearAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadOtherFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects', 'projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects', 'projectedProposalsOneYearAheadOtherFedIndirects', 'projectedProposalsTwoYearsAheadOtherFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects') * this.projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects * this.projectedProposalsOneYearAheadOtherFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects')) * this.projectedCoreConversionRatiosTwoYearsAheadOtherFedIndirects * this.projectedProposalsTwoYearsAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadOtherFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects', 'projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects', 'projectedProposalsTwoYearsAheadOtherFedIndirects', 'projectedProposalsThreeYearsAheadOtherFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects') * this.projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects * this.projectedProposalsTwoYearsAheadOtherFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects')) * this.projectedCoreConversionRatiosThreeYearsAheadOtherFedIndirects * this.projectedProposalsThreeYearsAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadOtherFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects', 'projectedCoreConversionRatiosFourYearsAheadOtherFedIndirects', 'projectedProposalsThreeYearsAheadOtherFedIndirects', 'projectedProposalsFourYearsAheadOtherFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects') * this.projectedCoreConversionRatiosFourYearsAheadOtherFedIndirects * this.projectedProposalsThreeYearsAheadOtherFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedIndirects')) * this.projectedCoreConversionRatiosFourYearsAheadOtherFedIndirects * this.projectedProposalsFourYearsAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadOtherFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects;\n    }),\n    //endregion\n    //region Projected Non Fed\n    projectedCoreSuccessesOneYearAheadNonFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'projectedCoreConversionRatiosOneYearAheadNonFedDirects', 'projectedProposalsCurrentYearNonFedDirects', 'projectedProposalsOneYearAheadNonFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects') * this.projectedCoreConversionRatiosOneYearAheadNonFedDirects * this.projectedProposalsCurrentYearNonFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects')) * this.projectedCoreConversionRatiosOneYearAheadNonFedDirects * this.projectedProposalsOneYearAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadNonFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'projectedCoreConversionRatiosTwoYearsAheadNonFedDirects', 'projectedProposalsOneYearAheadNonFedDirects', 'projectedProposalsTwoYearsAheadNonFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects') * this.projectedCoreConversionRatiosTwoYearsAheadNonFedDirects * this.projectedProposalsOneYearAheadNonFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects')) * this.projectedCoreConversionRatiosTwoYearsAheadNonFedDirects * this.projectedProposalsTwoYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadNonFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'projectedCoreConversionRatiosThreeYearsAheadNonFedDirects', 'projectedProposalsTwoYearsAheadNonFedDirects', 'projectedProposalsThreeYearsAheadNonFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects') * this.projectedCoreConversionRatiosThreeYearsAheadNonFedDirects * this.projectedProposalsTwoYearsAheadNonFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects')) * this.projectedCoreConversionRatiosThreeYearsAheadNonFedDirects * this.projectedProposalsThreeYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadNonFedDirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'projectedCoreConversionRatiosFourYearsAheadNonFedDirects', 'projectedProposalsThreeYearsAheadNonFedDirects', 'projectedProposalsFourYearsAheadNonFedDirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects') * this.projectedCoreConversionRatiosFourYearsAheadNonFedDirects * this.projectedProposalsThreeYearsAheadNonFedDirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects')) * this.projectedCoreConversionRatiosFourYearsAheadNonFedDirects * this.projectedProposalsFourYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedDirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedDirects;\n    }),\n    projectedCoreSuccessesOneYearAheadNonFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects', 'projectedCoreConversionRatiosOneYearAheadNonFedIndirects', 'projectedProposalsCurrentYearNonFedIndirects', 'projectedProposalsOneYearAheadNonFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects') * this.projectedCoreConversionRatiosOneYearAheadNonFedIndirects * this.projectedProposalsCurrentYearNonFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects')) * this.projectedCoreConversionRatiosOneYearAheadNonFedIndirects * this.projectedProposalsOneYearAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadNonFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects', 'projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects', 'projectedProposalsOneYearAheadNonFedIndirects', 'projectedProposalsTwoYearsAheadNonFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects') * this.projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects * this.projectedProposalsOneYearAheadNonFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects')) * this.projectedCoreConversionRatiosTwoYearsAheadNonFedIndirects * this.projectedProposalsTwoYearsAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadNonFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects', 'projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects', 'projectedProposalsTwoYearsAheadNonFedIndirects', 'projectedProposalsThreeYearsAheadNonFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects') * this.projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects * this.projectedProposalsTwoYearsAheadNonFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects')) * this.projectedCoreConversionRatiosThreeYearsAheadNonFedIndirects * this.projectedProposalsThreeYearsAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadNonFedIndirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects', 'projectedCoreConversionRatiosFourYearsAheadNonFedIndirects', 'projectedProposalsThreeYearsAheadNonFedIndirects', 'projectedProposalsFourYearsAheadNonFedIndirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects') * this.projectedCoreConversionRatiosFourYearsAheadNonFedIndirects * this.projectedProposalsThreeYearsAheadNonFedIndirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosNonFedIndirects')) * this.projectedCoreConversionRatiosFourYearsAheadNonFedIndirects * this.projectedProposalsFourYearsAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedIndirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNonFedIndirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadNonFedIndirects;\n    }),\n    //endregion\n    //region Projected Sponsor 5\n    projectedCoreSuccessesOneYearAheadSponsor5Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor5Directs', 'projectedProposalsCurrentYearSponsor5Directs', 'projectedProposalsOneYearAheadSponsor5Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs') * this.projectedCoreConversionRatiosOneYearAheadSponsor5Directs * this.projectedProposalsCurrentYearSponsor5Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs')) * this.projectedCoreConversionRatiosOneYearAheadSponsor5Directs * this.projectedProposalsOneYearAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor5Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs', 'projectedProposalsOneYearAheadSponsor5Directs', 'projectedProposalsTwoYearsAheadSponsor5Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs * this.projectedProposalsOneYearAheadSponsor5Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Directs * this.projectedProposalsTwoYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor5Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs', 'projectedProposalsTwoYearsAheadSponsor5Directs', 'projectedProposalsThreeYearsAheadSponsor5Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs * this.projectedProposalsTwoYearsAheadSponsor5Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Directs * this.projectedProposalsThreeYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor5Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor5Directs', 'projectedProposalsThreeYearsAheadSponsor5Directs', 'projectedProposalsFourYearsAheadSponsor5Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs') * this.projectedCoreConversionRatiosFourYearsAheadSponsor5Directs * this.projectedProposalsThreeYearsAheadSponsor5Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor5Directs * this.projectedProposalsFourYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Directs;\n    }),\n    projectedCoreSuccessesOneYearAheadSponsor5Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects', 'projectedCoreConversionRatiosOneYearAheadSponsor5Indirects', 'projectedProposalsCurrentYearSponsor5Indirects', 'projectedProposalsOneYearAheadSponsor5Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects') * this.projectedCoreConversionRatiosOneYearAheadSponsor5Indirects * this.projectedProposalsCurrentYearSponsor5Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects')) * this.projectedCoreConversionRatiosOneYearAheadSponsor5Indirects * this.projectedProposalsOneYearAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor5Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects', 'projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects', 'projectedProposalsOneYearAheadSponsor5Indirects', 'projectedProposalsTwoYearsAheadSponsor5Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects * this.projectedProposalsOneYearAheadSponsor5Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor5Indirects * this.projectedProposalsTwoYearsAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor5Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects', 'projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects', 'projectedProposalsTwoYearsAheadSponsor5Indirects', 'projectedProposalsThreeYearsAheadSponsor5Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects * this.projectedProposalsTwoYearsAheadSponsor5Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor5Indirects * this.projectedProposalsThreeYearsAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor5Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects', 'projectedCoreConversionRatiosFourYearsAheadSponsor5Indirects', 'projectedProposalsThreeYearsAheadSponsor5Indirects', 'projectedProposalsFourYearsAheadSponsor5Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects') * this.projectedCoreConversionRatiosFourYearsAheadSponsor5Indirects * this.projectedProposalsThreeYearsAheadSponsor5Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Indirects')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor5Indirects * this.projectedProposalsFourYearsAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor5Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects;\n    }),\n    //endregion\n    //region Projected Sponsor 6\n    projectedCoreSuccessesOneYearAheadSponsor6Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor6Directs', 'projectedProposalsCurrentYearSponsor6Directs', 'projectedProposalsOneYearAheadSponsor6Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs') * this.projectedCoreConversionRatiosOneYearAheadSponsor6Directs * this.projectedProposalsCurrentYearSponsor6Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs')) * this.projectedCoreConversionRatiosOneYearAheadSponsor6Directs * this.projectedProposalsOneYearAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor6Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs', 'projectedProposalsOneYearAheadSponsor6Directs', 'projectedProposalsTwoYearsAheadSponsor6Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs * this.projectedProposalsOneYearAheadSponsor6Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Directs * this.projectedProposalsTwoYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor6Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs', 'projectedProposalsTwoYearsAheadSponsor6Directs', 'projectedProposalsThreeYearsAheadSponsor6Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs * this.projectedProposalsTwoYearsAheadSponsor6Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Directs * this.projectedProposalsThreeYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor6Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor6Directs', 'projectedProposalsThreeYearsAheadSponsor6Directs', 'projectedProposalsFourYearsAheadSponsor6Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs') * this.projectedCoreConversionRatiosFourYearsAheadSponsor6Directs * this.projectedProposalsThreeYearsAheadSponsor6Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor6Directs * this.projectedProposalsFourYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Directs;\n    }),\n    projectedCoreSuccessesOneYearAheadSponsor6Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects', 'projectedCoreConversionRatiosOneYearAheadSponsor6Indirects', 'projectedProposalsCurrentYearSponsor6Indirects', 'projectedProposalsOneYearAheadSponsor6Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects') * this.projectedCoreConversionRatiosOneYearAheadSponsor6Indirects * this.projectedProposalsCurrentYearSponsor6Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects')) * this.projectedCoreConversionRatiosOneYearAheadSponsor6Indirects * this.projectedProposalsOneYearAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor6Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects', 'projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects', 'projectedProposalsOneYearAheadSponsor6Indirects', 'projectedProposalsTwoYearsAheadSponsor6Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects * this.projectedProposalsOneYearAheadSponsor6Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor6Indirects * this.projectedProposalsTwoYearsAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor6Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects', 'projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects', 'projectedProposalsTwoYearsAheadSponsor6Indirects', 'projectedProposalsThreeYearsAheadSponsor6Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects * this.projectedProposalsTwoYearsAheadSponsor6Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor6Indirects * this.projectedProposalsThreeYearsAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor6Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects', 'projectedCoreConversionRatiosFourYearsAheadSponsor6Indirects', 'projectedProposalsThreeYearsAheadSponsor6Indirects', 'projectedProposalsFourYearsAheadSponsor6Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects') * this.projectedCoreConversionRatiosFourYearsAheadSponsor6Indirects * this.projectedProposalsThreeYearsAheadSponsor6Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Indirects')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor6Indirects * this.projectedProposalsFourYearsAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor6Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects;\n    }),\n    //endregion\n    //region Projected Sponsor 7\n    projectedCoreSuccessesOneYearAheadSponsor7Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'projectedCoreConversionRatiosOneYearAheadSponsor7Directs', 'projectedProposalsCurrentYearSponsor7Directs', 'projectedProposalsOneYearAheadSponsor7Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs') * this.projectedCoreConversionRatiosOneYearAheadSponsor7Directs * this.projectedProposalsCurrentYearSponsor7Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs')) * this.projectedCoreConversionRatiosOneYearAheadSponsor7Directs * this.projectedProposalsOneYearAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor7Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs', 'projectedProposalsOneYearAheadSponsor7Directs', 'projectedProposalsTwoYearsAheadSponsor7Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs * this.projectedProposalsOneYearAheadSponsor7Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Directs * this.projectedProposalsTwoYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor7Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs', 'projectedProposalsTwoYearsAheadSponsor7Directs', 'projectedProposalsThreeYearsAheadSponsor7Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs * this.projectedProposalsTwoYearsAheadSponsor7Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Directs * this.projectedProposalsThreeYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor7Directs: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'projectedCoreConversionRatiosFourYearsAheadSponsor7Directs', 'projectedProposalsThreeYearsAheadSponsor7Directs', 'projectedProposalsFourYearsAheadSponsor7Directs', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs') * this.projectedCoreConversionRatiosFourYearsAheadSponsor7Directs * this.projectedProposalsThreeYearsAheadSponsor7Directs + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor7Directs * this.projectedProposalsFourYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Directs', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Directs;\n    }),\n    projectedCoreSuccessesOneYearAheadSponsor7Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects', 'projectedCoreConversionRatiosOneYearAheadSponsor7Indirects', 'projectedProposalsCurrentYearSponsor7Indirects', 'projectedProposalsOneYearAheadSponsor7Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects') * this.projectedCoreConversionRatiosOneYearAheadSponsor7Indirects * this.projectedProposalsCurrentYearSponsor7Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects')) * this.projectedCoreConversionRatiosOneYearAheadSponsor7Indirects * this.projectedProposalsOneYearAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesTwoYearsAheadSponsor7Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects', 'projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects', 'projectedProposalsOneYearAheadSponsor7Indirects', 'projectedProposalsTwoYearsAheadSponsor7Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects') * this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects * this.projectedProposalsOneYearAheadSponsor7Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects')) * this.projectedCoreConversionRatiosTwoYearsAheadSponsor7Indirects * this.projectedProposalsTwoYearsAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesThreeYearsAheadSponsor7Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects', 'projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects', 'projectedProposalsTwoYearsAheadSponsor7Indirects', 'projectedProposalsThreeYearsAheadSponsor7Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects') * this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects * this.projectedProposalsTwoYearsAheadSponsor7Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects')) * this.projectedCoreConversionRatiosThreeYearsAheadSponsor7Indirects * this.projectedProposalsThreeYearsAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesFourYearsAheadSponsor7Indirects: Ember.computed('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects', 'projectedCoreConversionRatiosFourYearsAheadSponsor7Indirects', 'projectedProposalsThreeYearsAheadSponsor7Indirects', 'projectedProposalsFourYearsAheadSponsor7Indirects', function () {\n      return this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects') * this.projectedCoreConversionRatiosFourYearsAheadSponsor7Indirects * this.projectedProposalsThreeYearsAheadSponsor7Indirects + (1 - this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Indirects')) * this.projectedCoreConversionRatiosFourYearsAheadSponsor7Indirects * this.projectedProposalsFourYearsAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesFiveYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesSixYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects;\n    }),\n    projectedCoreSuccessesSevenYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesFourYearsAheadSponsor7Indirects', function () {\n      return this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects;\n    }),\n    //endregion\n    //region Projected By Year\n    projectedCoreSuccessesCurrentYearDirects: Ember.computed('projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesCurrentYearSponsor7Directs);\n    }),\n    projectedCoreSuccessesCurrentYearIndirects: Ember.computed('projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesCurrentYearSponsor7Indirects);\n    }),\n    projectedCoreSuccessesOneYearAheadDirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs);\n    }),\n    projectedCoreSuccessesOneYearAheadIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects);\n    }),\n    projectedCoreSuccessesTwoYearsAheadDirects: Ember.computed('projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs);\n    }),\n    projectedCoreSuccessesTwoYearsAheadIndirects: Ember.computed('projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects);\n    }),\n    projectedCoreSuccessesThreeYearsAheadDirects: Ember.computed('projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs);\n    }),\n    projectedCoreSuccessesThreeYearsAheadIndirects: Ember.computed('projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects);\n    }),\n    projectedCoreSuccessesFourYearsAheadDirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs);\n    }),\n    projectedCoreSuccessesFourYearsAheadIndirects: Ember.computed('projectedCoreSuccessesFourYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'selectedSponsor', function () {\n      return this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects);\n    }),\n    //endregion\n    //region Core Successes Projections and Chart Data\n    projectedCoreSuccesses: Ember.computed('model.projection', 'projectedCoreSuccessesCurrentYearDirects', 'projectedCoreSuccessesCurrentYearIndirects', 'projectedCoreSuccessesOneYearAheadDirects', 'projectedCoreSuccessesOneYearAheadIndirects', 'projectedCoreSuccessesTwoYearsAheadDirects', 'projectedCoreSuccessesTwoYearsAheadIndirects', 'projectedCoreSuccessesThreeYearsAheadDirects', 'projectedCoreSuccessesThreeYearsAheadIndirects', 'projectedCoreSuccessesFourYearsAheadDirects', 'projectedCoreSuccessesFourYearsAheadIndirects', 'selectedRecruitmentOption', 'selectedGrantType', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n\n      if (!model) {\n        return null;\n      }\n\n      var successesThreeYearsAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesThreeYearsAgoNihDirects, model.successesThreeYearsAgoFedFlowThruDirects, model.successesThreeYearsAgoOtherFedDirects, model.successesThreeYearsAgoNonFedDirects, model.successesThreeYearsAgoSponsor5Directs, model.successesThreeYearsAgoSponsor6Directs, model.successesThreeYearsAgoSponsor7Directs);\n      var successesTwoYearsAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesTwoYearsAgoNihDirects, model.successesTwoYearsAgoFedFlowThruDirects, model.successesTwoYearsAgoOtherFedDirects, model.successesTwoYearsAgoNonFedDirects, model.successesTwoYearsAgoSponsor5Directs, model.successesTwoYearsAgoSponsor6Directs, model.successesTwoYearsAgoSponsor7Directs);\n      var successesOneYearAgoDirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesOneYearAgoNihDirects, model.successesOneYearAgoFedFlowThruDirects, model.successesOneYearAgoOtherFedDirects, model.successesOneYearAgoNonFedDirects, model.successesOneYearAgoSponsor5Directs, model.successesOneYearAgoSponsor6Directs, model.successesOneYearAgoSponsor7Directs);\n      var directs = [successesThreeYearsAgoDirects, successesTwoYearsAgoDirects, successesOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearDirects, this.projectedCoreSuccessesOneYearAheadDirects, this.projectedCoreSuccessesTwoYearsAheadDirects, this.projectedCoreSuccessesThreeYearsAheadDirects, this.projectedCoreSuccessesFourYearsAheadDirects];\n      var formattedDirects = this.addRecruitmentData(directs, 'successes', 4, true).map(function (d) {\n        return d.toFixed(1);\n      });\n      var successesThreeYearsAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesThreeYearsAgoNihIndirects, model.successesThreeYearsAgoFedFlowThruIndirects, model.successesThreeYearsAgoOtherFedIndirects, model.successesThreeYearsAgoNonFedIndirects, model.successesThreeYearsAgoSponsor5Indirects, model.successesThreeYearsAgoSponsor6Indirects, model.successesThreeYearsAgoSponsor7Indirects);\n      var successesTwoYearsAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesTwoYearsAgoNihIndirects, model.successesTwoYearsAgoFedFlowThruIndirects, model.successesTwoYearsAgoOtherFedIndirects, model.successesTwoYearsAgoNonFedIndirects, model.successesTwoYearsAgoSponsor5Indirects, model.successesTwoYearsAgoSponsor6Indirects, model.successesTwoYearsAgoSponsor7Indirects);\n      var successesOneYearAgoIndirects = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.successesOneYearAgoNihIndirects, model.successesOneYearAgoFedFlowThruIndirects, model.successesOneYearAgoOtherFedIndirects, model.successesOneYearAgoNonFedIndirects, model.successesOneYearAgoSponsor5Indirects, model.successesOneYearAgoSponsor6Indirects, model.successesOneYearAgoSponsor7Indirects);\n      var indirects = [successesThreeYearsAgoIndirects, successesTwoYearsAgoIndirects, successesOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearIndirects, this.projectedCoreSuccessesOneYearAheadIndirects, this.projectedCoreSuccessesTwoYearsAheadIndirects, this.projectedCoreSuccessesThreeYearsAheadIndirects, this.projectedCoreSuccessesFourYearsAheadIndirects];\n      var formattedIndirects = this.addRecruitmentData(indirects, 'successes', 4, false).map(function (d) {\n        return d.toFixed(1);\n      });\n      return {\n        'directs': formattedDirects,\n        'indirects': formattedIndirects\n      };\n    }),\n    //region Variance Rows\n    varianceCurrentFutureDirectsRow: Ember.computed('revisedCurrentFutureDirectsRow', 'baselineCurrentFutureDirectsRow', function () {\n      var revisedDirectsRow = this.revisedCurrentFutureDirectsRow;\n      var baselineDirectsRow = this.baselineCurrentFutureDirectsRow;\n\n      if (revisedDirectsRow && baselineDirectsRow) {\n        return {\n          type: 'Variance',\n          directsOrIndirects: 'Directs',\n          ptsCurrentYear: revisedDirectsRow.ptsCurrentYear - baselineDirectsRow.ptsCurrentYear,\n          ptsOneYearAhead: revisedDirectsRow.ptsOneYearAhead - baselineDirectsRow.ptsOneYearAhead,\n          ptsTwoYearsAhead: revisedDirectsRow.ptsTwoYearsAhead - baselineDirectsRow.ptsTwoYearsAhead,\n          ptsThreeYearsAhead: revisedDirectsRow.ptsThreeYearsAhead - baselineDirectsRow.ptsThreeYearsAhead,\n          ptsFourYearsAhead: revisedDirectsRow.ptsFourYearsAhead - baselineDirectsRow.ptsFourYearsAhead,\n          ptsFiveYearsAhead: revisedDirectsRow.ptsFiveYearsAhead - baselineDirectsRow.ptsFiveYearsAhead,\n          ptsSixYearsAhead: revisedDirectsRow.ptsSixYearsAhead - baselineDirectsRow.ptsSixYearsAhead,\n          ptsSevenYearsAhead: revisedDirectsRow.ptsSevenYearsAhead - baselineDirectsRow.ptsSevenYearsAhead\n        };\n      }\n\n      return {};\n    }),\n    varianceCurrentFutureIndirectsRow: Ember.computed('revisedCurrentFutureIndirectsRow', 'baselineCurrentFutureIndirectsRow', function () {\n      var revisedIndirectsRow = this.revisedCurrentFutureIndirectsRow;\n      var baselineIndirectsRow = this.baselineCurrentFutureIndirectsRow;\n\n      if (revisedIndirectsRow && baselineIndirectsRow) {\n        return {\n          type: '',\n          directsOrIndirects: 'Indirects',\n          ptsCurrentYear: revisedIndirectsRow.ptsCurrentYear - baselineIndirectsRow.ptsCurrentYear,\n          ptsOneYearAhead: revisedIndirectsRow.ptsOneYearAhead - baselineIndirectsRow.ptsOneYearAhead,\n          ptsTwoYearsAhead: revisedIndirectsRow.ptsTwoYearsAhead - baselineIndirectsRow.ptsTwoYearsAhead,\n          ptsThreeYearsAhead: revisedIndirectsRow.ptsThreeYearsAhead - baselineIndirectsRow.ptsThreeYearsAhead,\n          ptsFourYearsAhead: revisedIndirectsRow.ptsFourYearsAhead - baselineIndirectsRow.ptsFourYearsAhead,\n          ptsFiveYearsAhead: revisedIndirectsRow.ptsFiveYearsAhead - baselineIndirectsRow.ptsFiveYearsAhead,\n          ptsSixYearsAhead: revisedIndirectsRow.ptsSixYearsAhead - baselineIndirectsRow.ptsSixYearsAhead,\n          ptsSevenYearsAhead: revisedIndirectsRow.ptsSevenYearsAhead - baselineIndirectsRow.ptsSevenYearsAhead\n        };\n      }\n\n      return {};\n    }),\n    //endregion\n    tableCurrentFutureCoreMegaModel: Ember.computed('revisedCurrentFutureDirectsRow', 'revisedCurrentFutureIndirectsRow', 'baselineCurrentFutureDirectsRow.ptsCurrentYear', 'baselineCurrentFutureIndirectsRow.ptsCurrentYear', 'varianceDirectsRow', 'varianceIndirectsRow', function () {\n      return [this.revisedCurrentFutureDirectsRow, this.revisedCurrentFutureIndirectsRow, this.baselineCurrentFutureDirectsRow, this.baselineCurrentFutureIndirectsRow, this.varianceCurrentFutureDirectsRow, this.varianceCurrentFutureIndirectsRow];\n    }),\n    projectedCoreMegaData: Ember.computed('revisedCurrentFutureDirectsRow', 'revisedCurrentFutureIndirectsRow', function () {\n      var directs = this.revisedCurrentFutureDirectsRow;\n      var indirects = this.revisedCurrentFutureIndirectsRow;\n      return {\n        'directs': [directs.ptsCurrentYear.toFixed(1), directs.ptsOneYearAhead.toFixed(1), directs.ptsTwoYearsAhead.toFixed(1), directs.ptsThreeYearsAhead.toFixed(1), directs.ptsFourYearsAhead.toFixed(1), directs.ptsFiveYearsAhead.toFixed(1), directs.ptsSixYearsAhead.toFixed(1), directs.ptsSevenYearsAhead.toFixed(1)],\n        'indirects': [indirects.ptsCurrentYear.toFixed(1), indirects.ptsOneYearAhead.toFixed(1), indirects.ptsTwoYearsAhead.toFixed(1), indirects.ptsThreeYearsAhead.toFixed(1), indirects.ptsFourYearsAhead.toFixed(1), indirects.ptsFiveYearsAhead.toFixed(1), indirects.ptsSixYearsAhead.toFixed(1), indirects.ptsSevenYearsAhead.toFixed(1)]\n      };\n    }),\n    //Data should be formatted with directs and indirects keys. startIndex should be currentYear\n    addRecruitmentData: function addRecruitmentData(data, type, startIndex, isDirects) {\n      if (this.selectedGrantType === GRANT_TYPE_ALL_RECRUITMENT) {\n        var value = 0;\n\n        if (type === 'proposals') {\n          value = isDirects ? this.sumArrays(this.proposalsDirectsJunior, this.proposalsDirectsSenior) : this.sumArrays(this.proposalsIndirectsJunior, this.proposalsIndirectsSenior);\n        } else if (type === 'successes') {\n          value = isDirects ? this.sumArrays(this.successesDirectsJunior, this.successesDirectsSenior) : this.sumArrays(this.successesIndirectsJunior, this.successesIndirectsSenior);\n        } else if (type === 'spending') {\n          value = isDirects ? this.sumArrays(this.netDirectCostRecoveryJunior, this.netDirectCostRecoverySenior) : this.sumArrays(this.netIndirectCostRecoveryJunior, this.netIndirectCostRecoverySenior);\n        }\n\n        for (var i = 0; startIndex + i < data.length; i++) {\n          data[startIndex + i] += value[i] / 1000000;\n        }\n      }\n\n      return data;\n    },\n    calculateTotalsFromSponsorSelection: function calculateTotalsFromSponsorSelection(sponsorType, nih, fft, otherFed, nonFed) {\n      var sponsor5 = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n      var sponsor6 = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0;\n      var sponsor7 = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : 0;\n\n      // Shivom - TODO - Remove default values for sponsors 5, 6, 7\n      switch (sponsorType) {\n        case this.currentUser.sponsorTypeNih:\n          return nih;\n\n        case this.currentUser.sponsorTypeFFT:\n          return fft;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          return otherFed;\n\n        case this.currentUser.sponsorTypeNonFed:\n          return nonFed;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          return sponsor5;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          return sponsor6;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          return sponsor7;\n\n        default:\n          return nih + otherFed + fft + nonFed + sponsor5 + sponsor6 + sponsor7;\n      }\n    },\n    //region Modified Fed Flow Thru\n    //Fed Flow Thru for one, two, and three years ago are multipled by a setting\n    modifiedFedFlowThruOneYearAgoDirects: Ember.computed('model.projection.successesOneYearAgoFedFlowThruDirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleOneYearAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesOneYearAgoFedFlowThruDirects');\n    }),\n    modifiedFedFlowThruTwoYearsAgoDirects: Ember.computed('model.projection.successesTwoYearsAgoFedFlowThruDirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleTwoYearsAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesTwoYearsAgoFedFlowThruDirects');\n    }),\n    modifiedFedFlowThruThreeYearsAgoDirects: Ember.computed('model.projection.successesThreeYearsAgoFedFlowThruDirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleThreeYearsAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesThreeYearsAgoFedFlowThruDirects');\n    }),\n    modifiedFedFlowThruOneYearAgoIndirects: Ember.computed('model.projection.successesOneYearAgoFedFlowThruIndirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleOneYearAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesOneYearAgoFedFlowThruIndirects');\n    }),\n    modifiedFedFlowThruTwoYearsAgoIndirects: Ember.computed('model.projection.successesTwoYearsAgoFedFlowThruIndirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleTwoYearsAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesTwoYearsAgoFedFlowThruIndirects');\n    }),\n    modifiedFedFlowThruThreeYearsAgoIndirects: Ember.computed('model.projection.successesThreeYearsAgoFedFlowThruIndirects', function () {\n      var fftMultiple = this.get('currentUser.team.fftMultipleThreeYearsAgo') / 100;\n      return (1 + fftMultiple) * this.get('model.projection.successesThreeYearsAgoFedFlowThruIndirects');\n    }),\n    //endregion\n    revisedTotal: function revisedTotal(core, mega, setting) {\n      if (setting === GRANT_TYPE_CORE) {\n        return core;\n      } else if (setting === GRANT_TYPE_MEGA) {\n        return mega;\n      } else {\n        return core + mega;\n      }\n    },\n    getSponsorPart: function getSponsorPart(sponsorType) {\n      var sponsorPart;\n\n      switch (sponsorType) {\n        case this.currentUser.sponsorTypeNih:\n          sponsorPart = 'Nih';\n          break;\n\n        case this.currentUser.sponsorTypeOtherFed:\n          sponsorPart = 'OtherFed';\n          break;\n\n        case this.currentUser.sponsorTypeFFT:\n          sponsorPart = 'FedFlowThru';\n          break;\n\n        case this.currentUser.sponsorTypeNonFed:\n          sponsorPart = 'NonFed';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor5:\n          sponsorPart = 'Sponsor5';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor6:\n          sponsorPart = 'Sponsor6';\n          break;\n\n        case this.currentUser.sponsorTypeSponsor7:\n          sponsorPart = 'Sponsor7';\n          break;\n      }\n\n      return sponsorPart;\n    },\n    //region Revised Current Year\n    revisedCurrentYearNihDirects: Ember.computed('currentUser.team', 'model.projection.{successesFiveYearsAgoNihDirects,successesFourYearsAgoNihDirects,successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNihDirects'), this.get('model.projection.successesFourYearsAgoNihDirects'), this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects);\n    }),\n    revisedCurrentYearNihIndirects: Ember.computed('model.projection.{successesFiveYearsAgoNihIndirects,successesFourYearsAgoNihIndirects,successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNihIndirects'), this.get('model.projection.successesFourYearsAgoNihIndirects'), this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects);\n    }),\n    revisedCurrentYearFedFlowThruDirects: Ember.computed('model.projection.{successesFiveYearsAgoFedFlowThruDirects,successesFourYearsAgoFedFlowThruDirects}', 'modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoFedFlowThruDirects'), this.get('model.projection.successesFourYearsAgoFedFlowThruDirects'), this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects);\n    }),\n    revisedCurrentYearFedFlowThruIndirects: Ember.computed('model.projection.{successesFiveYearsAgoFedFlowThruIndirects,successesFourYearsAgoFedFlowThruIndirects}', 'modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoFedFlowThruIndirects'), this.get('model.projection.successesFourYearsAgoFedFlowThruIndirects'), this.modifiedFedFlowThruThreeYearsAgoIndirects, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects);\n    }),\n    revisedCurrentYearOtherFedDirects: Ember.computed('model.projection.{successesFiveYearsAgoOtherFedDirects,successesFourYearsAgoOtherFedDirects,successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoOtherFedDirects'), this.get('model.projection.successesFourYearsAgoOtherFedDirects'), this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects);\n    }),\n    revisedCurrentYearOtherFedIndirects: Ember.computed('model.projection.{successesFiveYearsAgoOtherFedIndirects,successesFourYearsAgoOtherFedIndirects,successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoOtherFedIndirects'), this.get('model.projection.successesFourYearsAgoOtherFedIndirects'), this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects);\n    }),\n    revisedCurrentYearNonFedDirects: Ember.computed('model.projection.{successesFiveYearsAgoNonFedDirects,successesFourYearsAgoNonFedDirects,successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNonFedDirects'), this.get('model.projection.successesFourYearsAgoNonFedDirects'), this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects);\n    }),\n    revisedCurrentYearNonFedIndirects: Ember.computed('model.projection.{successesFiveYearsAgoNonFedIndirects,successesFourYearsAgoNonFedIndirects,successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoNonFedIndirects'), this.get('model.projection.successesFourYearsAgoNonFedIndirects'), this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects);\n    }),\n    revisedCurrentYearSponsor5Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor5Directs,successesFourYearsAgoSponsor5Directs,successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor5Directs'), this.get('model.projection.successesFourYearsAgoSponsor5Directs'), this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs);\n    }),\n    revisedCurrentYearSponsor5Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor5Indirects,successesFourYearsAgoSponsor5Indirects,successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor5Indirects'), this.get('model.projection.successesFourYearsAgoSponsor5Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects);\n    }),\n    revisedCurrentYearSponsor6Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor6Directs,successesFourYearsAgoSponsor6Directs,successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor6Directs'), this.get('model.projection.successesFourYearsAgoSponsor6Directs'), this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs);\n    }),\n    revisedCurrentYearSponsor6Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor6Indirects,successesFourYearsAgoSponsor6Indirects,successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor6Indirects'), this.get('model.projection.successesFourYearsAgoSponsor6Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects);\n    }),\n    revisedCurrentYearSponsor7Directs: Ember.computed('model.projection.{successesFiveYearsAgoSponsor7Directs,successesFourYearsAgoSponsor7Directs,successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor7Directs'), this.get('model.projection.successesFourYearsAgoSponsor7Directs'), this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs);\n    }),\n    revisedCurrentYearSponsor7Indirects: Ember.computed('model.projection.{successesFiveYearsAgoSponsor7Indirects,successesFourYearsAgoSponsor7Indirects,successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFiveYearsAgoSponsor7Indirects'), this.get('model.projection.successesFourYearsAgoSponsor7Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects);\n    }),\n    revisedCurrentYearDirects: Ember.computed('revisedCurrentYearNihDirects', 'revisedCurrentYearOtherFedDirects', 'revisedCurrentYearFedFlowThruDirects', 'revisedCurrentYearNonFedDirects', 'revisedCurrentYearSponsor5Directs', 'revisedCurrentYearSponsor6Directs', 'revisedCurrentYearSponsor7Directs', 'model.projection.megaGrantTotalsCurrentYearDirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureCurrentYearDirects', 'selectedSponsorType', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsCurrentYearNihDirects, model.megaGrantTotalsCurrentYearFedFlowThruDirects, model.megaGrantTotalsCurrentYearOtherFedDirects, model.megaGrantTotalsCurrentYearNonFedDirects, model.megaGrantTotalsCurrentYearSponsor5Directs, model.megaGrantTotalsCurrentYearSponsor6Directs, model.megaGrantTotalsCurrentYearSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(0, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedCurrentYearNihDirects, this.revisedCurrentYearFedFlowThruDirects, this.revisedCurrentYearOtherFedDirects, this.revisedCurrentYearNonFedDirects, this.revisedCurrentYearSponsor5Directs, this.revisedCurrentYearSponsor6Directs, this.revisedCurrentYearSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedCurrentYearIndirects: Ember.computed('revisedCurrentYearNihIndirects', 'revisedCurrentYearOtherFedIndirects', 'revisedCurrentYearFedFlowThruIndirects', 'revisedCurrentYearNonFedIndirects', 'revisedCurrentYearSponsor5Indirects', 'revisedCurrentYearSponsor6Indirects', 'revisedCurrentYearSponsor7Indirects', 'model.projection.megaGrantTotalsCurrentYearNihIndirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureCurrentYearIndirects', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsCurrentYearNihIndirects, model.megaGrantTotalsCurrentYearFedFlowThruIndirects, model.megaGrantTotalsCurrentYearOtherFedIndirects, model.megaGrantTotalsCurrentYearNonFedIndirects, model.megaGrantTotalsCurrentYearSponsor5Indirects, model.megaGrantTotalsCurrentYearSponsor6Indirects, model.megaGrantTotalsCurrentYearSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(0, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedCurrentYearNihIndirects, this.revisedCurrentYearFedFlowThruIndirects, this.revisedCurrentYearOtherFedIndirects, this.revisedCurrentYearNonFedIndirects, this.revisedCurrentYearSponsor5Indirects, this.revisedCurrentYearSponsor6Indirects, this.revisedCurrentYearSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised One Year Ahead\n    revisedOneYearAheadNihDirects: Ember.computed('model.projection.{successesFourYearsAgoNihDirects,successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNihDirects'), this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects);\n    }),\n    revisedOneYearAheadNihIndirects: Ember.computed('model.projection.{successesFourYearsAgoNihIndirects,successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNihIndirects'), this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects);\n    }),\n    revisedOneYearAheadOtherFedDirects: Ember.computed('model.projection.{successesFourYearsAgoOtherFedDirects,successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoOtherFedDirects'), this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects);\n    }),\n    revisedOneYearAheadOtherFedIndirects: Ember.computed('model.projection.{successesFourYearsAgoOtherFedIndirects,successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoOtherFedIndirects'), this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects);\n    }),\n    revisedOneYearAheadFedFlowThruDirects: Ember.computed('model.projection.successesFourYearsAgoFedFlowThruDirects', 'modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoFedFlowThruDirects'), this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects);\n    }),\n    revisedOneYearAheadFedFlowThruIndirects: Ember.computed('model.projection.successesFourYearsAgoFedFlowThruIndirects', 'modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoFedFlowThruIndirects'), this.modifiedFedFlowThruThreeYearsAgoIndirects, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects);\n    }),\n    revisedOneYearAheadNonFedDirects: Ember.computed('model.projection.{successesFourYearsAgoNonFedDirects,successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNonFedDirects'), this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects);\n    }),\n    revisedOneYearAheadNonFedIndirects: Ember.computed('model.projection.{successesFourYearsAgoNonFedIndirects,successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoNonFedIndirects'), this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects);\n    }),\n    revisedOneYearAheadSponsor5Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor5Directs,successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor5Directs'), this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs);\n    }),\n    revisedOneYearAheadSponsor5Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor5Indirects,successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor5Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects);\n    }),\n    revisedOneYearAheadSponsor6Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor6Directs,successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor6Directs'), this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs);\n    }),\n    revisedOneYearAheadSponsor6Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor6Indirects,successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor6Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects);\n    }),\n    revisedOneYearAheadSponsor7Directs: Ember.computed('model.projection.{successesFourYearsAgoSponsor7Directs,successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor7Directs'), this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs);\n    }),\n    revisedOneYearAheadSponsor7Indirects: Ember.computed('model.projection.{successesFourYearsAgoSponsor7Indirects,successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesFourYearsAgoSponsor7Indirects'), this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects);\n    }),\n    revisedOneYearAheadDirects: Ember.computed('revisedOneYearAheadNihDirects', 'revisedOneYearAheadOtherFedDirects', 'revisedOneYearAheadFedFlowThruDirects', 'revisedOneYearAheadNonFedDirects', 'revisedOneYearAheadSponsor5Directs', 'revisedOneYearAheadSponsor6Directs', 'revisedOneYearAheadSponsor7Directs', 'model.projection.megaGrantTotalsOneYearAheadDirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureOneYearAheadDirects', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsOneYearAheadNihDirects, model.megaGrantTotalsOneYearAheadFedFlowThruDirects, model.megaGrantTotalsOneYearAheadOtherFedDirects, model.megaGrantTotalsOneYearAheadNonFedDirects, model.megaGrantTotalsOneYearAheadSponsor5Directs, model.megaGrantTotalsOneYearAheadSponsor6Directs, model.megaGrantTotalsOneYearAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(1, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedOneYearAheadNihDirects, this.revisedOneYearAheadFedFlowThruDirects, this.revisedOneYearAheadOtherFedDirects, this.revisedOneYearAheadNonFedDirects, this.revisedOneYearAheadSponsor5Directs, this.revisedOneYearAheadSponsor6Directs, this.revisedOneYearAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedOneYearAheadIndirects: Ember.computed('revisedOneYearAheadNihIndirects', 'revisedOneYearAheadOtherFedIndirects', 'revisedOneYearAheadFedFlowThruIndirects', 'revisedOneYearAheadNonFedIndirects', 'revisedOneYearAheadSponsor5Indirects', 'revisedOneYearAheadSponsor6Indirects', 'revisedOneYearAheadSponsor7Indirects', 'model.projection.megaGrantTotalsOneYearAheadIndirects', 'selectedGrantType', 'currentUser.team.megaGrantFutureOneYearAheadDirects', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsOneYearAheadNihIndirects, model.megaGrantTotalsOneYearAheadFedFlowThruIndirects, model.megaGrantTotalsOneYearAheadOtherFedIndirects, model.megaGrantTotalsOneYearAheadNonFedIndirects, model.megaGrantTotalsOneYearAheadSponsor5Indirects, model.megaGrantTotalsOneYearAheadSponsor6Indirects, model.megaGrantTotalsOneYearAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(1, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedOneYearAheadNihIndirects, this.revisedOneYearAheadFedFlowThruIndirects, this.revisedOneYearAheadOtherFedIndirects, this.revisedOneYearAheadNonFedIndirects, this.revisedOneYearAheadSponsor5Indirects, this.revisedOneYearAheadSponsor6Indirects, this.revisedOneYearAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Two Years Ahead\n    revisedTwoYearsAheadNihDirects: Ember.computed('model.projection.{successesThreeYearsAgoNihDirects,successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNihDirects'), this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects);\n    }),\n    revisedTwoYearsAheadNihIndirects: Ember.computed('model.projection.{successesThreeYearsAgoNihIndirects,successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNihIndirects'), this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects);\n    }),\n    revisedTwoYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruThreeYearsAgoDirects', 'modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruThreeYearsAgoDirects, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects);\n    }),\n    revisedTwoYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruThreeYearsAgoIndirects', 'modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruThreeYearsAgoIndirects, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects);\n    }),\n    revisedTwoYearsAheadOtherFedDirects: Ember.computed('model.projection.{successesThreeYearsAgoOtherFedDirects,successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoOtherFedDirects'), this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects);\n    }),\n    revisedTwoYearsAheadOtherFedIndirects: Ember.computed('model.projection.{successesThreeYearsAgoOtherFedIndirects,successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoOtherFedIndirects'), this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects);\n    }),\n    revisedTwoYearsAheadNonFedDirects: Ember.computed('model.projection.{successesThreeYearsAgoNonFedDirects,successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNonFedDirects'), this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects);\n    }),\n    revisedTwoYearsAheadNonFedIndirects: Ember.computed('model.projection.{successesThreeYearsAgoNonFedIndirects,successesTwoYearsAgoNonFedIndirects,successesOneYearAgoNonFedIndirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoNonFedIndirects'), this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects);\n    }),\n    revisedTwoYearsAheadSponsor5Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor5Directs,successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor5Directs'), this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs);\n    }),\n    revisedTwoYearsAheadSponsor5Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor5Indirects,successesTwoYearsAgoSponsor5Indirects,successesOneYearAgoSponsor5Indirects}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor5Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects);\n    }),\n    revisedTwoYearsAheadSponsor6Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor6Directs,successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor6Directs'), this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs);\n    }),\n    revisedTwoYearsAheadSponsor6Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor6Indirects,successesTwoYearsAgoSponsor6Indirects,successesOneYearAgoSponsor6Indirects}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor6Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects);\n    }),\n    revisedTwoYearsAheadSponsor7Directs: Ember.computed('model.projection.{successesThreeYearsAgoSponsor7Directs,successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor7Directs'), this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs);\n    }),\n    revisedTwoYearsAheadSponsor7Indirects: Ember.computed('model.projection.{successesThreeYearsAgoSponsor7Indirects,successesTwoYearsAgoSponsor7Indirects,successesOneYearAgoSponsor7Indirects}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesThreeYearsAgoSponsor7Indirects'), this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects);\n    }),\n    revisedTwoYearsAheadDirects: Ember.computed('revisedTwoYearsAheadNihDirects', 'revisedTwoYearsAheadOtherFedDirects', 'revisedTwoYearsAheadFedFlowThruDirects', 'revisedTwoYearsAheadNonFedDirects', 'revisedTwoYearsAheadSponsor5Directs', 'revisedTwoYearsAheadSponsor6Directs', 'revisedTwoYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsTwoYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsTwoYearsAheadNihDirects, model.megaGrantTotalsTwoYearsAheadFedFlowThruDirects, model.megaGrantTotalsTwoYearsAheadOtherFedDirects, model.megaGrantTotalsTwoYearsAheadNonFedDirects, model.megaGrantTotalsTwoYearsAheadSponsor5Directs, model.megaGrantTotalsTwoYearsAheadSponsor6Directs, model.megaGrantTotalsTwoYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(2, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedTwoYearsAheadNihDirects, this.revisedTwoYearsAheadFedFlowThruDirects, this.revisedTwoYearsAheadOtherFedDirects, this.revisedTwoYearsAheadNonFedDirects, this.revisedTwoYearsAheadSponsor5Directs, this.revisedTwoYearsAheadSponsor6Directs, this.revisedTwoYearsAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedTwoYearsAheadIndirects: Ember.computed('revisedTwoYearsAheadNihIndirects', 'revisedTwoYearsAheadOtherFedIndirects', 'revisedTwoYearsAheadFedFlowThruIndirects', 'revisedTwoYearsAheadNonFedIndirects', 'revisedTwoYearsAheadSponsor5Indirects', 'revisedTwoYearsAheadSponsor6Indirects', 'revisedTwoYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsTwoYearsAheadIndirects', '' + 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsTwoYearsAheadNihIndirects, model.megaGrantTotalsTwoYearsAheadFedFlowThruIndirects, model.megaGrantTotalsTwoYearsAheadOtherFedIndirects, model.megaGrantTotalsTwoYearsAheadNonFedIndirects, model.megaGrantTotalsTwoYearsAheadSponsor5Indirects, model.megaGrantTotalsTwoYearsAheadSponsor6Indirects, model.megaGrantTotalsTwoYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(2, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedTwoYearsAheadNihIndirects, this.revisedTwoYearsAheadFedFlowThruIndirects, this.revisedTwoYearsAheadOtherFedIndirects, this.revisedTwoYearsAheadNonFedIndirects, this.revisedTwoYearsAheadSponsor5Indirects, this.revisedTwoYearsAheadSponsor6Indirects, this.revisedTwoYearsAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Three Years Ahead\n    revisedThreeYearsAheadNihDirects: Ember.computed('model.projection.{successesTwoYearsAgoNihDirects,successesOneYearAgoNihDirects}', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNihDirects'), this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects);\n    }),\n    revisedThreeYearsAheadNihIndirects: Ember.computed('model.projection.{successesTwoYearsAgoNihIndirects,successesOneYearAgoNihIndirects}', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNihIndirects'), this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects);\n    }),\n    revisedThreeYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruTwoYearsAgoDirects', 'modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruTwoYearsAgoDirects, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects);\n    }),\n    revisedThreeYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruTwoYearsAgoIndirects', 'modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruTwoYearsAgoIndirects, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects);\n    }),\n    revisedThreeYearsAheadOtherFedDirects: Ember.computed('model.projection.{successesTwoYearsAgoOtherFedDirects,successesOneYearAgoOtherFedDirects}', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoOtherFedDirects'), this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects);\n    }),\n    revisedThreeYearsAheadOtherFedIndirects: Ember.computed('model.projection.{successesTwoYearsAgoOtherFedIndirects,successesOneYearAgoOtherFedIndirects}', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoOtherFedIndirects'), this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects);\n    }),\n    revisedThreeYearsAheadNonFedDirects: Ember.computed('model.projection.{successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNonFedDirects'), this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects);\n    }),\n    revisedThreeYearsAheadNonFedIndirects: Ember.computed('model.projection.{successesTwoYearsAgoNonFedDirects,successesOneYearAgoNonFedDirects}', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoNonFedIndirects'), this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects);\n    }),\n    revisedThreeYearsAheadSponsor5Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor5Directs'), this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs);\n    }),\n    revisedThreeYearsAheadSponsor5Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor5Directs,successesOneYearAgoSponsor5Directs}', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor5Indirects'), this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects);\n    }),\n    revisedThreeYearsAheadSponsor6Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor6Directs'), this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs);\n    }),\n    revisedThreeYearsAheadSponsor6Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor6Directs,successesOneYearAgoSponsor6Directs}', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor6Indirects'), this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects);\n    }),\n    revisedThreeYearsAheadSponsor7Directs: Ember.computed('model.projection.{successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor7Directs'), this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs);\n    }),\n    revisedThreeYearsAheadSponsor7Indirects: Ember.computed('model.projection.{successesTwoYearsAgoSponsor7Directs,successesOneYearAgoSponsor7Directs}', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesTwoYearsAgoSponsor7Indirects'), this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects);\n    }),\n    revisedThreeYearsAheadDirects: Ember.computed('revisedThreeYearsAheadNihDirects', 'revisedThreeYearsAheadOtherFedDirects', 'revisedThreeYearsAheadFedFlowThruDirects', 'revisedThreeYearsAheadNonFedDirects', 'revisedThreeYearsAheadSponsor5Directs', 'revisedThreeYearsAheadSponsor6Directs', 'revisedThreeYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsThreeYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsThreeYearsAheadNihDirects, model.megaGrantTotalsThreeYearsAheadFedFlowThruDirects, model.megaGrantTotalsThreeYearsAheadOtherFedDirects, model.megaGrantTotalsThreeYearsAheadNonFedDirects, model.megaGrantTotalsThreeYearsAheadSponsor5Directs, model.megaGrantTotalsThreeYearsAheadSponsor6Directs, model.megaGrantTotalsThreeYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(3, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedThreeYearsAheadNihDirects, this.revisedThreeYearsAheadFedFlowThruDirects, this.revisedThreeYearsAheadOtherFedDirects, this.revisedThreeYearsAheadNonFedDirects, this.revisedThreeYearsAheadSponsor5Directs, this.revisedThreeYearsAheadSponsor6Directs, this.revisedThreeYearsAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedThreeYearsAheadIndirects: Ember.computed('revisedThreeYearsAheadNihIndirects', 'revisedThreeYearsAheadOtherFedIndirects', 'revisedThreeYearsAheadFedFlowThruIndirects', 'revisedThreeYearsAheadNonFedIndirects', 'revisedThreeYearsAheadSponsor5Indirects', 'revisedThreeYearsAheadSponsor6Indirects', 'revisedThreeYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsThreeYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsThreeYearsAheadNihIndirects, model.megaGrantTotalsThreeYearsAheadFedFlowThruIndirects, model.megaGrantTotalsThreeYearsAheadOtherFedIndirects, model.megaGrantTotalsThreeYearsAheadNonFedIndirects, model.megaGrantTotalsThreeYearsAheadSponsor5Indirects, model.megaGrantTotalsThreeYearsAheadSponsor6Indirects, model.megaGrantTotalsThreeYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(3, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedThreeYearsAheadNihIndirects, this.revisedThreeYearsAheadFedFlowThruIndirects, this.revisedThreeYearsAheadOtherFedIndirects, this.revisedThreeYearsAheadNonFedIndirects, this.revisedThreeYearsAheadSponsor5Indirects, this.revisedThreeYearsAheadSponsor6Indirects, this.revisedThreeYearsAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Four Years Ahead\n    revisedFourYearsAheadNihDirects: Ember.computed('model.projection.successesOneYearAgoNihDirects', 'projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNihDirects'), this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects);\n    }),\n    revisedFourYearsAheadNihIndirects: Ember.computed('model.projection.successesOneYearAgoNihIndirects', 'projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNihIndirects'), this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects);\n    }),\n    revisedFourYearsAheadFedFlowThruDirects: Ember.computed('modifiedFedFlowThruOneYearAgoDirects', 'projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruOneYearAgoDirects, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects);\n    }),\n    revisedFourYearsAheadFedFlowThruIndirects: Ember.computed('modifiedFedFlowThruOneYearAgoIndirects', 'projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.modifiedFedFlowThruOneYearAgoIndirects, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects);\n    }),\n    revisedFourYearsAheadOtherFedDirects: Ember.computed('model.projection.successesOneYearAgoOtherFedDirects', 'projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoOtherFedDirects'), this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects);\n    }),\n    revisedFourYearsAheadOtherFedIndirects: Ember.computed('model.projection.successesOneYearAgoOtherFedIndirects', 'projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoOtherFedIndirects'), this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects);\n    }),\n    revisedFourYearsAheadNonFedDirects: Ember.computed('model.projection.successesOneYearAgoNonFedDirects', 'projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNonFedDirects'), this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects);\n    }),\n    revisedFourYearsAheadNonFedIndirects: Ember.computed('model.projection.successesOneYearAgoNonFedIndirects', 'projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoNonFedIndirects'), this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects);\n    }),\n    revisedFourYearsAheadSponsor5Directs: Ember.computed('model.projection.successesOneYearAgoSponsor5Directs', 'projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor5Directs'), this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs);\n    }),\n    revisedFourYearsAheadSponsor5Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor5Indirects', 'projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor5Indirects'), this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects);\n    }),\n    revisedFourYearsAheadSponsor6Directs: Ember.computed('model.projection.successesOneYearAgoSponsor6Directs', 'projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor6Directs'), this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs);\n    }),\n    revisedFourYearsAheadSponsor6Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor6Indirects', 'projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor6Indirects'), this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects);\n    }),\n    revisedFourYearsAheadSponsor7Directs: Ember.computed('model.projection.successesOneYearAgoSponsor7Directs', 'projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor7Directs'), this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs);\n    }),\n    revisedFourYearsAheadSponsor7Indirects: Ember.computed('model.projection.successesOneYearAgoSponsor7Indirects', 'projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.get('model.projection.successesOneYearAgoSponsor7Indirects'), this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects);\n    }),\n    revisedFourYearsAheadDirects: Ember.computed('revisedFourYearsAheadNihDirects', 'revisedFourYearsAheadOtherFedDirects', 'revisedFourYearsAheadFedFlowThruDirects', 'revisedFourYearsAheadNonFedDirects', 'revisedFourYearsAheadSponsor5Directs', 'revisedFourYearsAheadSponsor6Directs', 'revisedFourYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFourYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.model.projection.megaGrantTotalsFourYearsAheadNihDirects, this.model.projection.megaGrantTotalsFourYearsAheadFedFlowThruDirects, this.model.projection.megaGrantTotalsFourYearsAheadOtherFedDirects, this.model.projection.megaGrantTotalsFourYearsAheadNonFedDirects, this.model.projection.megaGrantTotalsFourYearsAheadSponsor5Directs, this.model.projection.megaGrantTotalsFourYearsAheadSponsor6Directs, this.model.projection.megaGrantTotalsFourYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(4, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedFourYearsAheadNihDirects, this.revisedFourYearsAheadFedFlowThruDirects, this.revisedFourYearsAheadOtherFedDirects, this.revisedFourYearsAheadNonFedDirects, this.revisedFourYearsAheadSponsor5Directs, this.revisedFourYearsAheadSponsor6Directs, this.revisedFourYearsAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedFourYearsAheadIndirects: Ember.computed('revisedFourYearsAheadNihIndirects', 'revisedFourYearsAheadOtherFedIndirects', 'revisedFourYearsAheadFedFlowThruIndirects', 'revisedFourYearsAheadNonFedIndirects', 'revisedFourYearsAheadSponsor5Indirects', 'revisedFourYearsAheadSponsor6Indirects', 'revisedFourYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFourYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFourYearsAheadNihIndirects, model.megaGrantTotalsFourYearsAheadFedFlowThruIndirects, model.megaGrantTotalsFourYearsAheadOtherFedIndirects, model.megaGrantTotalsFourYearsAheadNonFedIndirects, model.megaGrantTotalsFourYearsAheadSponsor5Indirects, model.megaGrantTotalsFourYearsAheadSponsor6Indirects, model.megaGrantTotalsFourYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(4, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedFourYearsAheadNihIndirects, this.revisedFourYearsAheadFedFlowThruIndirects, this.revisedFourYearsAheadOtherFedIndirects, this.revisedFourYearsAheadNonFedIndirects, this.revisedFourYearsAheadSponsor5Indirects, this.revisedFourYearsAheadSponsor6Indirects, this.revisedFourYearsAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //region Revised Five Years Ahead\n    revisedFiveYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesCurrentYearNihDirects', 'projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', 'projectedCoreSuccessesFiveYearsAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNihDirects, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects);\n    }),\n    revisedFiveYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesCurrentYearNihIndirects', 'projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', 'projectedCoreSuccessesFiveYearsAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNihIndirects, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects);\n    }),\n    revisedFiveYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesCurrentYearFedFlowThruDirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearFedFlowThruDirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects);\n    }),\n    revisedFiveYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesCurrentYearFedFlowThruIndirects', 'projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearFedFlowThruIndirects, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects);\n    }),\n    revisedFiveYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesCurrentYearOtherFedDirects', 'projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearOtherFedDirects, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects);\n    }),\n    revisedFiveYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesCurrentYearOtherFedIndirects', 'projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearOtherFedIndirects, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects);\n    }),\n    revisedFiveYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesCurrentYearNonFedDirects', 'projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'projectedCoreSuccessesFiveYearsAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNonFedDirects, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects);\n    }),\n    revisedFiveYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesCurrentYearNonFedIndirects', 'projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'projectedCoreSuccessesFiveYearsAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearNonFedIndirects, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects);\n    }),\n    revisedFiveYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor5Directs', 'projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor5Directs, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs);\n    }),\n    revisedFiveYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor5Indirects', 'projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor5Indirects, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects);\n    }),\n    revisedFiveYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor6Directs', 'projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor6Directs, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs);\n    }),\n    revisedFiveYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor6Indirects', 'projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor6Indirects, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects);\n    }),\n    revisedFiveYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesCurrentYearSponsor7Directs', 'projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor7Directs, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs);\n    }),\n    revisedFiveYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesCurrentYearSponsor7Indirects', 'projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesCurrentYearSponsor7Indirects, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects);\n    }),\n    revisedFiveYearsAheadDirects: Ember.computed('revisedFiveYearsAheadNihDirects', 'revisedFiveYearsAheadOtherFedDirects', 'revisedFiveYearsAheadFedFlowThruDirects', 'revisedFiveYearsAheadNonFedDirects', 'revisedFiveYearsAheadSponsor5Directs', 'revisedFiveYearsAheadSponsor6Directs', 'revisedFiveYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.model.projection.megaGrantTotalsFiveYearsAheadNihDirects, this.model.projection.megaGrantTotalsFiveYearsAheadFedFlowThruDirects, this.model.projection.megaGrantTotalsFiveYearsAheadOtherFedDirects, this.model.projection.megaGrantTotalsFiveYearsAheadNonFedDirects, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor5Directs, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor6Directs, this.model.projection.megaGrantTotalsFiveYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(5, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedFiveYearsAheadNihDirects, this.revisedFiveYearsAheadFedFlowThruDirects, this.revisedFiveYearsAheadOtherFedDirects, this.revisedFiveYearsAheadNonFedDirects, this.revisedFiveYearsAheadSponsor5Directs, this.revisedFiveYearsAheadSponsor6Directs, this.revisedFiveYearsAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    revisedFiveYearsAheadIndirects: Ember.computed('revisedFiveYearsAheadNihIndirects', 'revisedFiveYearsAheadOtherFedIndirects', 'revisedFiveYearsAheadFedFlowThruIndirects', 'revisedFiveYearsAheadNonFedIndirects', 'revisedFiveYearsAheadSponsor5Indirects', 'revisedFiveYearsAheadSponsor6Indirects', 'revisedFiveYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsFiveYearsAheadNihIndirects, model.megaGrantTotalsFiveYearsAheadFedFlowThruIndirects, model.megaGrantTotalsFiveYearsAheadOtherFedIndirects, model.megaGrantTotalsFiveYearsAheadNonFedIndirects, model.megaGrantTotalsFiveYearsAheadSponsor5Indirects, model.megaGrantTotalsFiveYearsAheadSponsor6Indirects, model.megaGrantTotalsFiveYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(5, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedFiveYearsAheadNihIndirects, this.revisedFiveYearsAheadFedFlowThruIndirects, this.revisedFiveYearsAheadOtherFedIndirects, this.revisedFiveYearsAheadNonFedIndirects, this.revisedFiveYearsAheadSponsor5Indirects, this.revisedFiveYearsAheadSponsor6Indirects, this.revisedFiveYearsAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    //region Revised Six Years Ahead\n    revisedSixYearsAheadNihDirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihDirects', 'projectedCoreSuccessesTwoYearsAheadNihDirects', 'projectedCoreSuccessesThreeYearsAheadNihDirects', 'projectedCoreSuccessesFourYearsAheadNihDirects', 'projectedCoreSuccessesFiveYearsAheadNihDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNihDirects, this.projectedCoreSuccessesTwoYearsAheadNihDirects, this.projectedCoreSuccessesThreeYearsAheadNihDirects, this.projectedCoreSuccessesFourYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects, this.projectedCoreSuccessesFiveYearsAheadNihDirects);\n    }),\n    revisedSixYearsAheadNihIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadNihIndirects', 'projectedCoreSuccessesTwoYearsAheadNihIndirects', 'projectedCoreSuccessesThreeYearsAheadNihIndirects', 'projectedCoreSuccessesFourYearsAheadNihIndirects', 'projectedCoreSuccessesFiveYearsAheadNihIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNih');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNihIndirects, this.projectedCoreSuccessesTwoYearsAheadNihIndirects, this.projectedCoreSuccessesThreeYearsAheadNihIndirects, this.projectedCoreSuccessesFourYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects, this.projectedCoreSuccessesFiveYearsAheadNihIndirects);\n    }),\n    revisedSixYearsAheadFedFlowThruDirects: Ember.computed('projectedCoreSuccessesOneYearAheadFedFlowThruDirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruDirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadFedFlowThruDirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruDirects);\n    }),\n    revisedSixYearsAheadFedFlowThruIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadFedFlowThruIndirects', 'projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects', 'projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationFft');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadFedFlowThruIndirects, this.projectedCoreSuccessesTwoYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesThreeYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFourYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects, this.projectedCoreSuccessesFiveYearsAheadFedFlowThruIndirects);\n    }),\n    revisedSixYearsAheadOtherFedDirects: Ember.computed('projectedCoreSuccessesOneYearAheadOtherFedDirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedDirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedDirects', 'projectedCoreSuccessesFourYearsAheadOtherFedDirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadOtherFedDirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedDirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedDirects, this.projectedCoreSuccessesFourYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedDirects);\n    }),\n    revisedSixYearsAheadOtherFedIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadOtherFedIndirects', 'projectedCoreSuccessesTwoYearsAheadOtherFedIndirects', 'projectedCoreSuccessesThreeYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFourYearsAheadOtherFedIndirects', 'projectedCoreSuccessesFiveYearsAheadOtherFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadOtherFedIndirects, this.projectedCoreSuccessesTwoYearsAheadOtherFedIndirects, this.projectedCoreSuccessesThreeYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFourYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects, this.projectedCoreSuccessesFiveYearsAheadOtherFedIndirects);\n    }),\n    revisedSixYearsAheadNonFedDirects: Ember.computed('projectedCoreSuccessesOneYearAheadNonFedDirects', 'projectedCoreSuccessesTwoYearsAheadNonFedDirects', 'projectedCoreSuccessesThreeYearsAheadNonFedDirects', 'projectedCoreSuccessesFourYearsAheadNonFedDirects', 'projectedCoreSuccessesFiveYearsAheadNonFedDirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNonFedDirects, this.projectedCoreSuccessesTwoYearsAheadNonFedDirects, this.projectedCoreSuccessesThreeYearsAheadNonFedDirects, this.projectedCoreSuccessesFourYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects, this.projectedCoreSuccessesFiveYearsAheadNonFedDirects);\n    }),\n    revisedSixYearsAheadNonFedIndirects: Ember.computed('projectedCoreSuccessesOneYearAheadNonFedIndirects', 'projectedCoreSuccessesTwoYearsAheadNonFedIndirects', 'projectedCoreSuccessesThreeYearsAheadNonFedIndirects', 'projectedCoreSuccessesFourYearsAheadNonFedIndirects', 'projectedCoreSuccessesFiveYearsAheadNonFedIndirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadNonFedIndirects, this.projectedCoreSuccessesTwoYearsAheadNonFedIndirects, this.projectedCoreSuccessesThreeYearsAheadNonFedIndirects, this.projectedCoreSuccessesFourYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects, this.projectedCoreSuccessesFiveYearsAheadNonFedIndirects);\n    }),\n    revisedSixYearsAheadSponsor5Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor5Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor5Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor5Directs', 'projectedCoreSuccessesFourYearsAheadSponsor5Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor5Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor5Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor5Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor5Directs, this.projectedCoreSuccessesFourYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor5Directs);\n    }),\n    revisedSixYearsAheadSponsor5Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor5Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor5Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor5Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor5Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor5Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor5Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor5Indirects);\n    }),\n    revisedSixYearsAheadSponsor6Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor6Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor6Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor6Directs', 'projectedCoreSuccessesFourYearsAheadSponsor6Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor6Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor6Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor6Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor6Directs, this.projectedCoreSuccessesFourYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor6Directs);\n    }),\n    revisedSixYearsAheadSponsor6Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor6Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor6Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor6Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor6Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor6Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor6Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor6Indirects);\n    }),\n    revisedSixYearsAheadSponsor7Directs: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor7Directs', 'projectedCoreSuccessesTwoYearsAheadSponsor7Directs', 'projectedCoreSuccessesThreeYearsAheadSponsor7Directs', 'projectedCoreSuccessesFourYearsAheadSponsor7Directs', 'projectedCoreSuccessesFiveYearsAheadSponsor7Directs', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor7Directs, this.projectedCoreSuccessesTwoYearsAheadSponsor7Directs, this.projectedCoreSuccessesThreeYearsAheadSponsor7Directs, this.projectedCoreSuccessesFourYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs, this.projectedCoreSuccessesFiveYearsAheadSponsor7Directs);\n    }),\n    revisedSixYearsAheadSponsor7Indirects: Ember.computed('projectedCoreSuccessesOneYearAheadSponsor7Indirects', 'projectedCoreSuccessesTwoYearsAheadSponsor7Indirects', 'projectedCoreSuccessesThreeYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFourYearsAheadSponsor7Indirects', 'projectedCoreSuccessesFiveYearsAheadSponsor7Indirects', function () {\n      var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n      return this.amortizeProjectedSpending(wad, this.projectedCoreSuccessesOneYearAheadSponsor7Indirects, this.projectedCoreSuccessesTwoYearsAheadSponsor7Indirects, this.projectedCoreSuccessesThreeYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFourYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects, this.projectedCoreSuccessesFiveYearsAheadSponsor7Indirects);\n    }),\n    revisedSixYearsAheadDirects: Ember.computed('revisedSixYearsAheadNihDirects', 'revisedSixYearsAheadOtherFedDirects', 'revisedSixYearsAheadFedFlowThruDirects', 'revisedSixYearsAheadNonFedDirects', 'revisedSixYearsAheadSponsor5Directs', 'revisedSixYearsAheadSponsor6Directs', 'revisedSixYearsAheadSponsor7Directs', 'model.projection.megaGrantTotalsFiveYearsAheadDirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearDirects,megaGrantFutureOneYearAheadDirects}', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsSixYearsAheadNihDirects, model.megaGrantTotalsSixYearsAheadFedFlowThruDirects, model.megaGrantTotalsSixYearsAheadOtherFedDirects, model.megaGrantTotalsSixYearsAheadNonFedDirects, model.megaGrantTotalsSixYearsAheadSponsor5Directs, model.megaGrantTotalsSixYearsAheadSponsor6Directs, model.megaGrantTotalsSixYearsAheadSponsor7Directs); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(6, true, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedSixYearsAheadNihDirects, this.revisedSixYearsAheadFedFlowThruDirects, this.revisedSixYearsAheadOtherFedDirects, this.revisedSixYearsAheadNonFedDirects, this.revisedSixYearsAheadSponsor5Directs, this.revisedSixYearsAheadSponsor6Directs, this.revisedSixYearsAheadSponsor7Directs);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    // eslint-disable-next-line ember/use-brace-expansion\n    revisedSixYearsAheadIndirects: Ember.computed('revisedSixYearsAheadNihIndirects', 'revisedSixYearsAheadOtherFedIndirects', 'revisedSixYearsAheadFedFlowThruIndirects', 'revisedSixYearsAheadNonFedIndirects', 'revisedSixYearsAheadSponsor5Indirects', 'revisedSixYearsAheadSponsor6Indirects', 'revisedSixYearsAheadSponsor7Indirects', 'model.projection.megaGrantTotalsFiveYearsAheadIndirects', 'selectedGrantType', 'currentUser.team.{megaGrantFutureCurrentYearIndirects,megaGrantFutureOneYearAheadIndirects}', 'model.projection', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var mega = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, model.megaGrantTotalsSixYearsAheadNihIndirects, model.megaGrantTotalsSixYearsAheadFedFlowThruIndirects, model.megaGrantTotalsSixYearsAheadOtherFedIndirects, model.megaGrantTotalsSixYearsAheadNonFedIndirects, model.megaGrantTotalsSixYearsAheadSponsor5Indirects, model.megaGrantTotalsSixYearsAheadSponsor6Indirects, model.megaGrantTotalsSixYearsAheadSponsor7Indirects); //Only apply future mega projection to entire school projection\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        mega += (0, _futureMegaProjection.default)(6, false, this.get('currentUser.team'));\n      }\n\n      var core = this.calculateTotalsFromSponsorSelection(this.selectedSponsor, this.revisedSixYearsAheadNihIndirects, this.revisedSixYearsAheadFedFlowThruIndirects, this.revisedSixYearsAheadOtherFedIndirects, this.revisedSixYearsAheadNonFedIndirects, this.revisedSixYearsAheadSponsor5Indirects, this.revisedSixYearsAheadSponsor6Indirects, this.revisedSixYearsAheadSponsor7Indirects);\n      var setting = this.selectedGrantType;\n      return this.revisedTotal(core, mega, setting);\n    }),\n    //endregion\n    amortizeProjectedSpending: function amortizeProjectedSpending(wad, fiveYearsAgo, fourYearsAgo, threeYearsAgo, twoYearsAgo, oneYearAgo, current) {\n      if (wad > 5) {\n        wad = 5;\n      }\n\n      switch (wad) {\n        case 1:\n          return oneYearAgo / 2 + current / 2;\n\n        case 2:\n          return twoYearsAgo / 4 + oneYearAgo / 2 + current / 4;\n\n        case 3:\n          return threeYearsAgo / 6 + twoYearsAgo / 3 + oneYearAgo / 3 + current / 6;\n\n        case 4:\n          return fourYearsAgo / 8 + threeYearsAgo / 4 + twoYearsAgo / 4 + oneYearAgo / 4 + current / 8;\n\n        case 5:\n          return fiveYearsAgo / 10 + fourYearsAgo / 5 + threeYearsAgo / 5 + twoYearsAgo / 5 + oneYearAgo / 5 + current / 10;\n\n        default:\n          return 0;\n      }\n    },\n    //region Revised Row Models\n    revisedPriorYearsDirectsRow: Ember.computed('revisedCurrentYearDirects', 'revisedOneYearAheadDirects', 'revisedTwoYearsAheadDirects', 'revisedThreeYearsAheadDirects', 'revisedFourYearsAheadDirects', 'revisedFiveYearsAheadDirects', 'revisedSixYearsAheadDirects', 'revisedSevenYearsAheadDirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentDirects', function () {\n      var model = this.model.projection;\n      return {\n        type: 'Actual',\n        directsOrIndirects: 'Directs',\n        ptsFiveYearsAgo: model.get('actualsFiveYearsAgoDirects'),\n        ptsFourYearsAgo: model.get('actualsFourYearsAgoDirects'),\n        ptsThreeYearsAgo: model.get('actualsThreeYearsAgoDirects'),\n        ptsTwoYearsAgo: model.get('actualsTwoYearsAgoDirects'),\n        ptsOneYearAgo: model.get('actualsOneYearAgoDirects')\n      };\n    }),\n    revisedCurrentFutureDirectsRow: Ember.computed('revisedCurrentYearDirects', 'revisedOneYearAheadDirects', 'revisedTwoYearsAheadDirects', 'revisedThreeYearsAheadDirects', 'revisedFourYearsAheadDirects', 'revisedFiveYearsAheadDirects', 'revisedSixYearsAheadDirects', 'revisedSevenYearsAheadDirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentDirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var adjustmentDirects = 0;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentDirects = this.get('currentUser.team.schoolProjectionAdjustmentDirects') / 1000000;\n      }\n\n      var data = [this.revisedCurrentYearDirects * (1 - shrinkage) + adjustmentDirects, this.revisedOneYearAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedTwoYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedThreeYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedFourYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedFiveYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects, this.revisedSixYearsAheadDirects * (1 - shrinkage) + adjustmentDirects];\n      var directs = this.addRecruitmentData(data, 'spending', 0, true);\n      return {\n        type: 'Revised',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: directs[0],\n        ptsOneYearAhead: directs[1],\n        ptsTwoYearsAhead: directs[2],\n        ptsThreeYearsAhead: directs[3],\n        ptsFourYearsAhead: directs[4],\n        ptsFiveYearsAhead: directs[5],\n        ptsSixYearsAhead: directs[6],\n        ptsSevenYearsAhead: directs[7]\n      };\n    }),\n    revisedPriorYearsIndirectsRow: Ember.computed('revisedCurrentYearIndirects', 'revisedOneYearAheadIndirects', 'revisedTwoYearsAheadIndirects', 'revisedThreeYearsAheadIndirects', 'revisedFourYearsAheadIndirects', 'revisedFiveYearsAheadIndirects', 'revisedSixYearsAheadIndirects', 'revisedSevenYearsAheadIndirects', 'model.projection', function () {\n      var model = this.model.projection;\n      return {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsFiveYearsAgo: model.get('actualsFiveYearsAgoIndirects'),\n        ptsFourYearsAgo: model.get('actualsFourYearsAgoIndirects'),\n        ptsThreeYearsAgo: model.get('actualsThreeYearsAgoIndirects'),\n        ptsTwoYearsAgo: model.get('actualsTwoYearsAgoIndirects'),\n        ptsOneYearAgo: model.get('actualsOneYearAgoIndirects')\n      };\n    }),\n    revisedCurrentFutureIndirectsRow: Ember.computed('revisedCurrentYearIndirects', 'revisedOneYearAheadIndirects', 'revisedTwoYearsAheadIndirects', 'revisedThreeYearsAheadIndirects', 'revisedFourYearsAheadIndirects', 'revisedFiveYearsAheadIndirects', 'revisedSixYearsAheadIndirects', 'revisedSevenYearsAheadIndirects', 'model.projection', 'currentUser.team.schoolProjectionAdjustmentIndirects', 'selectedGrantType', 'selectedRecruitmentOption', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'selectedSponsor', function () {\n      var model = this.model.projection;\n      var adjustmentIndirects = 0;\n      var shrinkage = this.get('currentUser.team.shrinkage') / 100;\n      var selectedGrantType = this.selectedGrantType;\n\n      if (model.get('sector') === null && model.get('department.id') === undefined && selectedGrantType !== GRANT_TYPE_MEGA && this.selectedSponsor === SPONSOR_TYPE_ALL) {\n        adjustmentIndirects = this.get('currentUser.team.schoolProjectionAdjustmentIndirects') / 1000000;\n      }\n\n      var data = [this.revisedCurrentYearIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedOneYearAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedTwoYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedThreeYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedFourYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedFiveYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects, this.revisedSixYearsAheadIndirects * (1 - shrinkage) + adjustmentIndirects];\n      var indirects = this.addRecruitmentData(data, 'spending', 0, false);\n      return {\n        type: '',\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: indirects[0],\n        ptsOneYearAhead: indirects[1],\n        ptsTwoYearsAhead: indirects[2],\n        ptsThreeYearsAhead: indirects[3],\n        ptsFourYearsAhead: indirects[4],\n        ptsFiveYearsAhead: indirects[5],\n        ptsSixYearsAhead: indirects[6],\n        ptsSevenYearsAhead: indirects[7]\n      };\n    }) //endregion\n    //endregion\n\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/investigator-projections-route\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    setupPlan: function setupPlan(controller, model) {\n      var isController = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n      controller.set('recruitment', this.get('currentUser.team.recruitment'));\n\n      if (isController) {\n        //We need the projection object for the calculated Y1:Y2 ratios\n        this.store.findAll('projection').then(function (proj) {\n          var projections = proj.objectAt(0);\n          controller.updateProjection(projections);\n        });\n      } //Set initial settings from backend\n\n\n      if (model.plan && Object.keys(model.plan).length > 0) {\n        var pending = model.plan.pending; // Find proposals and set the funding option\n\n        var proposalDupes = [];\n        model.proposals.forEach(function (proposal) {\n          if (proposal.status === 'pending') {\n            var plans = pending.filter(function (pendingPlan) {\n              return pendingPlan.grant_id === proposal.grantId;\n            });\n\n            if (plans.length > 1) {\n              // Try to find the unique plan by date\n              plans = plans.filter(function (pendingPlan) {\n                return pendingPlan.start_date === (0, _moment.default)(proposal.startDate).format('YYYY-MM-DD') && pendingPlan.end_date === (0, _moment.default)(proposal.endDate).format('YYYY-MM-DD');\n              });\n\n              if (plans.length > 1) {\n                // Try to find the unique plan by directs / indirects\n                plans = plans.filter(function (pendingPlan) {\n                  if (pendingPlan.hasOwnProperty(\"directs\")) {\n                    return pendingPlan.directs === proposal.directs && pendingPlan.indirects === proposal.indirects;\n                  }\n                });\n              }\n            }\n\n            if (plans.length === 1) {\n              var plan = plans[0];\n              proposal.set('funded', plan.resp);\n              proposal.set('effort', plan.effort);\n            } else if (plans.length >= 1) {\n              if (!proposalDupes.includes(proposal.grantId)) {\n                //Search through the successes again and find all duplicates\n                var duplicateProposals = model.proposals.filter(function (p) {\n                  return p.grantId === proposal.grantId && p.startDate.format('YYYY-MM-DD') === proposal.startDate.format('YYYY-MM-DD') && p.endDate.format('YYYY-MM-DD') === proposal.endDate.format('YYYY-MM-DD') && p.directs === proposal.directs && p.indirects === proposal.indirects;\n                }); // It doesnt matter which success is matched up with which plan since directs and indirectd are equal.\n                // We just need to make sure all plan responses are recorded\n\n                for (var i = 0; i < plans.length; i++) {\n                  var thePlan = plans[i];\n\n                  if (i < duplicateProposals.length) {\n                    var theProposal = duplicateProposals[i];\n                    theProposal.set('renewProjection', thePlan.resp);\n                    theProposal.set('effort', thePlan.effort);\n                  }\n                }\n\n                proposalDupes.push(proposal.grantId);\n              }\n            }\n          }\n        }); // Find successes and find the renewal option\n\n        var active = model.plan.active; // Find proposals and set the funding option\n\n        var successesDupes = [];\n        model.successes.forEach(function (success) {\n          if (success.isActive) {\n            var plans = active.filter(function (activePlan) {\n              return activePlan.grant_id === success.grantId;\n            });\n\n            if (plans.length > 1) {\n              // Try to find the unique plan by date\n              plans = plans.filter(function (activePlan) {\n                return activePlan.start_date === (0, _moment.default)(success.startDate).format('YYYY-MM-DD') && activePlan.end_date === (0, _moment.default)(success.endDate).format('YYYY-MM-DD');\n              });\n\n              if (plans.length > 1) {\n                // Try to find the unique plan by directs / indirects\n                plans = plans.filter(function (activePlan) {\n                  if (activePlan.hasOwnProperty(\"directs\")) {\n                    return activePlan.directs === success.directs && activePlan.indirects === success.indirects;\n                  }\n                });\n              }\n            }\n\n            if (plans.length === 1) {\n              var plan = plans[0];\n              success.set('renewProjection', plan.resp);\n              success.set('effort', plan.effort);\n            } else if (plans.length >= 1) {\n              if (!successesDupes.includes(success.grantId)) {\n                //Search through the successes again and find all duplicates\n                var duplicateSuccesses = model.successes.filter(function (s) {\n                  return s.grantId === success.grantId && s.startDate.format('YYYY-MM-DD') === success.startDate.format('YYYY-MM-DD') && s.endDate.format('YYYY-MM-DD') === success.endDate.format('YYYY-MM-DD') && s.directs === success.directs && s.indirects === success.indirects;\n                }); // It doesnt matter which success is matched up with which plan since directs and indirectd are equal.\n                // We just need to make sure all plan responses are recorded\n\n                for (var i = 0; i < plans.length; i++) {\n                  var thePlan = plans[i];\n\n                  if (i < duplicateSuccesses.length) {\n                    var theSuccess = duplicateSuccesses[i];\n                    theSuccess.set('renewProjection', thePlan.resp);\n                    theSuccess.set('effort', thePlan.effort);\n                  }\n                }\n\n                successesDupes.push(success.grantId);\n              }\n            }\n          }\n        });\n        var future = model.plan.future;\n        controller.set('selectedContinueSubmittingOption', future.will_submit ? 'Will' : 'Will Not');\n\n        if (future.will_submit) {\n          controller.set('submissionLevelValue', future.submission_rate * 100);\n          controller.set('selectedTargetHitRateOption', \"\".concat(future.target_hit_rate * 100, \"%\"));\n        } // Update the future calculations\n\n\n        if (isController) {\n          controller.send(\"grantProjectionChanged\");\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/investigator-projections\", [\"exports\", \"b3i-analytics-web-app/utils/pts-ammortization\", \"b3i-analytics-web-app/utils/pts-renewal-ammortization\", \"accounting/format-number\", \"ember-data\", \"b3i-analytics-web-app/utils/convert-to-fiscal-month\", \"moment\", \"b3i-analytics-web-app/constants/hit-rate-options\"], function (_exports, _ptsAmmortization, _ptsRenewalAmmortization, _formatNumber, _emberData, _convertToFiscalMonth, _moment, _hitRateOptions) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\n  function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n  var PROJECTION_TYPE_PAST = 'past';\n  var PROJECTION_TYPE_DEPT_AVG = 'dept_avg';\n  var PROJECTION_TYPE_NEW_JUNIOR = 'new';\n\n  var _default = Ember.Mixin.create({\n    year: Ember.inject.service(),\n    currentUser: Ember.inject.service('current-user'),\n    selectedTargetHitRateOption: '15%',\n    selectedHitRateOption: _hitRateOptions.default.FIVE_YEAR,\n    ptsAmmortizationFunction: _ptsAmmortization.default,\n    ptsRenewalAmmortizationFunction: _ptsRenewalAmmortization.default,\n    initGrantProjections: function initGrantProjections() {\n      var pendingGrants = this.pendingGrants;\n      var activeGrants = this.activeGrants;\n      this.set('pendingGrantsProjectedFunded', pendingGrants ? pendingGrants.filterBy('funded', 'Yes') : []);\n      this.set('pendingGrantsPossiblyProjectedFunded', pendingGrants ? pendingGrants.filterBy('funded', 'Don\\'t Know') : []);\n      this.set('renewalGrantsProjectedFunded', activeGrants ? activeGrants.filterBy('renewProjection', 'Yes') : []);\n      this.set('renewalGrantsPossiblyProjectedFunded', activeGrants ? activeGrants.filterBy('renewProjection', 'Don\\'t Know') : []);\n    },\n    emptyTableMessagePending: Ember.computed('currentUser.asOfQueryString', function () {\n      var asOfQueryString = this.get('currentUser.asOfQueryString');\n      return 'No pending grants ' + asOfQueryString.charAt(0).toLowerCase() + asOfQueryString.substr(1);\n    }),\n    emptyTableMessageActive: Ember.computed('year', function () {\n      var year = this.get('year.fiscalYear');\n      return 'No active grants in FY ' + year;\n    }),\n    isContinueSubmitting: Ember.computed('selectedContinueSubmittingOption', function () {\n      return this.selectedContinueSubmittingOption === 'Will';\n    }),\n    submissionLevelValue: 0,\n    hitRate: Ember.computed('selectedHitRateOption', 'projectionType', function () {\n      var _this = this;\n\n      var selectedHitRate = this.selectedHitRateOption;\n      var isUsingFiveYear = false;\n      var filteredProposals = Ember.A();\n\n      if (selectedHitRate === _hitRateOptions.default.THREE_YEAR) {\n        filteredProposals = this.threeYearsProposals;\n      } else if (selectedHitRate === _hitRateOptions.default.FIVE_YEAR) {\n        filteredProposals = this.fiveYearsProposals;\n        isUsingFiveYear = true;\n      } else {\n        return 0;\n      }\n\n      var promise;\n\n      if (this.projectionType === PROJECTION_TYPE_DEPT_AVG) {\n        var compHistory = isUsingFiveYear ? this.comparativeProposalHistoryFiveYears : this.comparativeProposalHistoryThreeYears;\n        promise = compHistory.then(function (c) {\n          return c.get('departmentFundedCountPerYear') / (c.get('departmentProposedCountPerYear') + c.get('departmentFundedCountPerYear'));\n        });\n      } else if (this.projectionType === PROJECTION_TYPE_NEW_JUNIOR) {\n        promise = new Promise(function (resolve) {\n          return resolve(_this.recruitment.modifiedHitRateAvgJunior);\n        });\n      } else {\n        var notFundedProposals = filteredProposals.filterBy('status', 'not_funded');\n        var fundedProposals = filteredProposals.filterBy('status', 'funded');\n\n        if (notFundedProposals === 0) {\n          // Return 100% if they have only have funded\n          return 1;\n        }\n\n        promise = new Promise(function (resolve) {\n          return resolve(fundedProposals.length / (fundedProposals.length + notFundedProposals.length));\n        });\n      }\n\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    displayHitRate: Ember.computed('hitRate.content', function () {\n      var hitRate = this.hitRate.content;\n\n      if (!hitRate) {\n        return '0%';\n      }\n\n      return \"\".concat((hitRate * 100).toFixed(0), \"%\");\n    }),\n    //region Future Submission Calculations\n    threeYearsProposals: Ember.computed('model.proposals', function () {\n      var proposals = this.get('model.proposals');\n      var filteredProposals = Ember.A();\n      var currentYear = this.get('year.fiscalYear');\n      proposals.forEach(function (proposal) {\n        var year = parseInt(proposal.get('submitYear'));\n\n        if (currentYear - 3 <= year && currentYear - 1 >= year) {\n          filteredProposals.pushObject(proposal);\n        }\n      });\n      return filteredProposals;\n    }),\n    fiveYearsProposals: Ember.computed('model.proposals', function () {\n      var proposals = this.get('model.proposals');\n\n      if (!proposals) {\n        return [];\n      }\n\n      var filteredProposals = Ember.A();\n      var currentYear = this.get('year.fiscalYear');\n      proposals.forEach(function (proposal) {\n        var year = parseInt(proposal.get('submitYear'));\n\n        if (currentYear - 5 <= year && currentYear - 1 >= year) {\n          filteredProposals.pushObject(proposal);\n        }\n      });\n      return filteredProposals;\n    }),\n    comparativeProposalHistoryFiveYears: Ember.computed(function () {\n      return this.store.query('comparative-proposal-history', {\n        principal_investigator_id: this.get('model.id'),\n        lookback_years: 5\n      }).then(function (comparativeProposalHistories) {\n        return comparativeProposalHistories.objectAt(0);\n      });\n    }),\n    comparativeProposalHistoryThreeYears: Ember.computed(function () {\n      return this.store.query('comparative-proposal-history', {\n        principal_investigator_id: this.get('model.id'),\n        lookback_years: 3\n      }).then(function (comparativeProposalHistories) {\n        return comparativeProposalHistories.objectAt(0);\n      });\n    }),\n    // Pis with a limited proposal history will use department averages\n    projectionType: Ember.computed('fiveYearsProposals', 'model.{category,classify}', function () {\n      if (this.model.classify === 'Junior' && this.model.category === 'New') {\n        return PROJECTION_TYPE_NEW_JUNIOR;\n      } else if (this.fiveYearsProposals.length <= 3) {\n        return PROJECTION_TYPE_DEPT_AVG;\n      }\n\n      return PROJECTION_TYPE_PAST;\n    }),\n    futureAverageAnnualSubmissionTotal: Ember.computed('fiveYearsProposals', 'submissionLevelValue', 'comparativeProposalHistoryFiveYears', function () {\n      var _this2 = this;\n\n      var fiveYearsProposals = this.fiveYearsProposals;\n      var submissionLevelValue = this.submissionLevelValue;\n      var averageAnnualSubmissionTotal = fiveYearsProposals.map(function (proposal) {\n        return proposal.get('directs') + proposal.get('indirects');\n      }).reduce(function (p, c) {\n        return p + c;\n      }, 0) / 5;\n      var result = averageAnnualSubmissionTotal * submissionLevelValue / 100;\n      var promise;\n\n      if (this.projectionType === PROJECTION_TYPE_DEPT_AVG) {\n        var compHistory = this.isUsingFiveYear ? this.comparativeProposalHistoryFiveYears : this.comparativeProposalHistoryThreeYears;\n        promise = compHistory.then(function (compHistory) {\n          return (0, _formatNumber.default)(compHistory.get('departmentProposedTotalPerYear') * submissionLevelValue / 100, 1);\n        });\n      } else if (this.projectionType === PROJECTION_TYPE_NEW_JUNIOR) {\n        promise = new Promise(function (resolve) {\n          resolve(_this2.recruitment.proposalTotalJuniorAvgTotal * submissionLevelValue / 100);\n        });\n      } else {\n        promise = new Promise(function (resolve) {\n          resolve(result);\n        });\n      }\n\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    futureAverageAnnualSubmissionCount: Ember.computed('fiveYearsProposals', 'submissionLevelValue', 'comparativeProposalHistoryFiveYears', function () {\n      var _this3 = this;\n\n      var fiveYearsProposals = this.fiveYearsProposals;\n      var submissionLevelValue = this.submissionLevelValue;\n      var yearsSubmitting = 5; // Divide number of proposals by years the pi has been active (up to 5)\n\n      if (this.model.hireFiscalYear) {\n        yearsSubmitting = this.year.fiscalYear - this.model.hireFiscalYear;\n\n        if (yearsSubmitting < 1) {\n          yearsSubmitting = 1;\n        } else if (yearsSubmitting > 5) {\n          yearsSubmitting = 5;\n        }\n      }\n\n      var averageAnnualSubmissionCount = fiveYearsProposals.length / yearsSubmitting;\n      var result = averageAnnualSubmissionCount * submissionLevelValue / 100;\n      var promise;\n\n      if (this.projectionType === PROJECTION_TYPE_DEPT_AVG) {\n        var compHistory = this.isUsingFiveYear ? this.comparativeProposalHistoryFiveYears : this.comparativeProposalHistoryThreeYears;\n        promise = compHistory.then(function (compHistory) {\n          return (0, _formatNumber.default)(compHistory.get('departmentProposedCountPerYear') * submissionLevelValue / 100, 1);\n        });\n      } else if (this.projectionType === PROJECTION_TYPE_NEW_JUNIOR) {\n        promise = new Promise(function (resolve) {\n          resolve((0, _formatNumber.default)(_this3.recruitment.proposalTotalJuniorAvgCount * submissionLevelValue / 100, 1));\n        });\n      } else {\n        promise = new Promise(function (resolve) {\n          resolve((0, _formatNumber.default)(result, 1));\n        });\n      }\n\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    fiveYearsSuccessesData: Ember.computed('model.successes', function () {\n      var _this4 = this;\n\n      var promise;\n\n      if (this.projectionType === PROJECTION_TYPE_DEPT_AVG) {\n        var compHistory = this.comparativeProposalHistoryFiveYears;\n        promise = compHistory.then(function (compHistory) {\n          return {\n            directsAverage: compHistory.get('departmentFundedDirectsPerYear'),\n            indirectsAverage: compHistory.get('departmentFundedIndirectsPerYear'),\n            durationAverage: compHistory.get('departmentFundedDuration')\n          };\n        });\n      } else if (this.projectionType === PROJECTION_TYPE_NEW_JUNIOR) {\n        var _compHistory = this.comparativeProposalHistoryFiveYears;\n        promise = _compHistory.then(function (compHistory) {\n          return {\n            directsAverage: _this4.avgSuccessInfoForJuniorRecruits['directs'],\n            indirectsAverage: _this4.avgSuccessInfoForJuniorRecruits['indirects'],\n            durationAverage: compHistory.get('departmentFundedDuration')\n          };\n        });\n      } else {\n        var successes = this.get('model.successes');\n        var currentYear = this.get('year.fiscalYear');\n        var directsSum = 0;\n        var indirectsSum = 0;\n        var durationSum = 0;\n        var count = 0;\n        successes.forEach(function (success) {\n          var year = parseInt(success.get('startFiscalYear')); // We want successes in the past from years 1-6 not execeeding $5 million\n\n          if (currentYear - 6 <= year && currentYear - 2 >= year && success.successDirects + success.successIndirects < 5000000) {\n            directsSum += success.get('successDirects');\n            indirectsSum += success.get('successIndirects');\n            durationSum += success.get('durationYears');\n            count++;\n          }\n        });\n        var directsAverage = directsSum / count;\n        var indirectsAverage = indirectsSum / count;\n        var durationAverage = Math.ceil(durationSum / count);\n        promise = new Promise(function (resolve) {\n          resolve({\n            directsAverage: directsAverage,\n            indirectsAverage: indirectsAverage,\n            durationAverage: durationAverage\n          });\n        });\n      }\n\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    avgSuccessInfoForJuniorRecruits: Ember.computed('recruitment', 'currentUser.team', function () {\n      var juniorRecruitmentData = [[this.recruitment.proposalNihkJuniorAvgTotal, this.recruitment.modifiedHitRateNihkJunior, this.currentUser.team.icrNihk], [this.recruitment.proposalNihrJuniorAvgTotal, this.recruitment.modifiedHitRateNihrJunior, this.currentUser.team.icrNihr], [this.recruitment.proposalOtherFedJuniorAvgTotal, this.recruitment.modifiedHitRateOtherFedJunior, this.currentUser.team.icrOtherFed], [this.recruitment.proposalFftJuniorAvgTotal, this.recruitment.modifiedHitRateFftJunior, this.currentUser.team.icrFedFlowThru], [this.recruitment.proposalNonFedJuniorAvgTotal, this.recruitment.modifiedHitRateNonFedJunior, this.currentUser.team.icrNonFed]];\n      var rows = [];\n      juniorRecruitmentData.forEach(function (d) {\n        var row = {};\n        row['total'] = d[0] * d[1];\n        var icr = d[2];\n        row['indirects'] = icr * row['total'] / (1 + icr);\n        row['directs'] = row['total'] - row['indirects'];\n        rows.push(row);\n      });\n      var totalInfo = {\n        'directs': 0,\n        'indirects': 0\n      };\n      rows.forEach(function (row) {\n        totalInfo['directs'] += row['directs'];\n        totalInfo['indirects'] += row['indirects'];\n      });\n      return totalInfo;\n    }),\n    ptsFutureOneYearAheadDirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', 'futureAverageAnnualSubmissionCount.content', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(1, true).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureOneYearAheadIndirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', 'futureAverageAnnualSubmissionCount.content', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(1, false).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureTwoYearsAheadDirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', 'futureAverageAnnualSubmissionCount.content', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(2, true).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureTwoYearsAheadIndirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(2, false).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureThreeYearsAheadDirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(3, true).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureThreeYearsAheadIndirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(3, false).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureFourYearsAheadDirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(4, true).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ptsFutureFourYearsAheadIndirects: Ember.computed('hitRate', 'selectedTargetHitRateOption', 'submissionLevelValue', 'isContinueSubmitting', function () {\n      if (this.isContinueSubmitting) {\n        return this.ptsFutureByYear(4, false).then(function (val) {\n          return val;\n        }).catch(function () {\n          return 0;\n        });\n      } else {\n        return 0;\n      }\n    }),\n    ytdProposalSubmissions: Ember.computed('model.proposals.@each.submitYear', function () {\n      if (!this.get('model.proposals')) {\n        return 0;\n      }\n\n      return this.model.proposals.filterBy('submitYear', this.year.fiscalYear).length;\n    }),\n    futureSuccessesCountPerYear: Ember.computed('futureAverageAnnualSubmissionCount', 'selectedTargetHitRateOption', function () {\n      var _this5 = this;\n\n      // Calculate the numbers of successes a pi could receive each in the future based off future proposal count and hit rate\n      var promise = this.futureAverageAnnualSubmissionCount.then(function (futureAverageAnnualSubmissionCount) {\n        var targetHitRate = parseInt(_this5.selectedTargetHitRateOption) / 100;\n        var submissionLevel = parseFloat(futureAverageAnnualSubmissionCount);\n        return (0, _formatNumber.default)(targetHitRate * submissionLevel, 1);\n      }).catch(function () {\n        return 0;\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    futureSuccessesTotalPerYear: Ember.computed('fiveYearsSuccessesData', 'futureSuccessesCountPerYear', function () {\n      var _this6 = this;\n\n      var promise = this.fiveYearsSuccessesData.then(function (fiveYearsSuccessesData) {\n        var amount = fiveYearsSuccessesData['directsAverage'] + fiveYearsSuccessesData['indirectsAverage'];\n        return _this6.futureSuccessesCountPerYear.then(function (rate) {\n          return rate * amount;\n        });\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    ptsFutureByYear: function () {\n      var _ptsFutureByYear = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(yearsAhead, isDirects) {\n        var futureAverageAnnualSubmissionCount, targetHitRate, submissionLevel, fiveYearsSuccessesData, reducedProposalSubmissions, amount, rate, projectedAmount, reducedProjectedAmount, duration, isProjectingFirstSuccessNextYear, currentMonth, result, secondYearAmount;\n        return regeneratorRuntime.wrap(function _callee$(_context) {\n          while (1) {\n            switch (_context.prev = _context.next) {\n              case 0:\n                _context.next = 2;\n                return this.futureAverageAnnualSubmissionCount;\n\n              case 2:\n                futureAverageAnnualSubmissionCount = _context.sent;\n                targetHitRate = parseInt(this.selectedTargetHitRateOption) / 100;\n                submissionLevel = parseFloat(futureAverageAnnualSubmissionCount);\n                _context.next = 7;\n                return this.fiveYearsSuccessesData;\n\n              case 7:\n                fiveYearsSuccessesData = _context.sent;\n                reducedProposalSubmissions = submissionLevel - this.ytdProposalSubmissions;\n\n                if (reducedProposalSubmissions < 0) {\n                  reducedProposalSubmissions = 0;\n                }\n\n                amount = isDirects ? fiveYearsSuccessesData['directsAverage'] : fiveYearsSuccessesData['indirectsAverage'];\n                rate = targetHitRate * submissionLevel;\n                projectedAmount = rate * amount; //Reduce the first projection by the number of proposals already submitted\n\n                reducedProjectedAmount = targetHitRate * reducedProposalSubmissions * amount;\n                duration = Math.ceil(fiveYearsSuccessesData['durationAverage']);\n                isProjectingFirstSuccessNextYear = true;\n                currentMonth = (0, _convertToFiscalMonth.default)((0, _moment.default)(this.currentUser.asOfDate, 'MM/DD/YYYY').month(), this.year.fiscalStartMonth);\n\n                if (this.currentUser.team.fiscalYearStartMonth === 7 && currentMonth >= 7) {\n                  isProjectingFirstSuccessNextYear = false;\n                }\n\n                result = 0;\n\n                if (!(isProjectingFirstSuccessNextYear && yearsAhead === 1)) {\n                  _context.next = 37;\n                  break;\n                }\n\n                _context.t0 = duration;\n                _context.next = _context.t0 === 1 ? 23 : _context.t0 === 2 ? 25 : _context.t0 === 3 ? 27 : _context.t0 === 4 ? 29 : _context.t0 === 5 ? 31 : 33;\n                break;\n\n              case 23:\n                result = reducedProjectedAmount * 0.5;\n                return _context.abrupt(\"break\", 35);\n\n              case 25:\n                result = reducedProjectedAmount * 0.25;\n                return _context.abrupt(\"break\", 35);\n\n              case 27:\n                result = reducedProjectedAmount * 0.1667;\n                return _context.abrupt(\"break\", 35);\n\n              case 29:\n                result = reducedProjectedAmount * 0.125;\n                return _context.abrupt(\"break\", 35);\n\n              case 31:\n                result = reducedProjectedAmount * 0.1;\n                return _context.abrupt(\"break\", 35);\n\n              case 33:\n                result = duration > 5 ? reducedProjectedAmount * 0.1 : 0;\n                return _context.abrupt(\"break\", 35);\n\n              case 35:\n                _context.next = 90;\n                break;\n\n              case 37:\n                if (!(yearsAhead === 2)) {\n                  _context.next = 56;\n                  break;\n                }\n\n                secondYearAmount = isProjectingFirstSuccessNextYear ? projectedAmount : reducedProjectedAmount;\n                _context.t1 = duration;\n                _context.next = _context.t1 === 1 ? 42 : _context.t1 === 2 ? 44 : _context.t1 === 3 ? 46 : _context.t1 === 4 ? 48 : _context.t1 === 5 ? 50 : 52;\n                break;\n\n              case 42:\n                result = secondYearAmount * (0.5 + 0.5 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 54);\n\n              case 44:\n                result = secondYearAmount * (0.25 + 0.5 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 54);\n\n              case 46:\n                result = secondYearAmount * (0.1667 + 0.333 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 54);\n\n              case 48:\n                result = secondYearAmount * (0.125 + 0.25 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 54);\n\n              case 50:\n                result = secondYearAmount * (0.1 + 0.2 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 54);\n\n              case 52:\n                result = duration > 5 ? secondYearAmount * (0.1 + 0.2 * isProjectingFirstSuccessNextYear) : 0;\n                return _context.abrupt(\"break\", 54);\n\n              case 54:\n                _context.next = 90;\n                break;\n\n              case 56:\n                if (!(yearsAhead === 3)) {\n                  _context.next = 74;\n                  break;\n                }\n\n                _context.t2 = duration;\n                _context.next = _context.t2 === 1 ? 60 : _context.t2 === 2 ? 62 : _context.t2 === 3 ? 64 : _context.t2 === 4 ? 66 : _context.t2 === 5 ? 68 : 70;\n                break;\n\n              case 60:\n                result = projectedAmount * (0.5 + 0.5);\n                return _context.abrupt(\"break\", 72);\n\n              case 62:\n                result = projectedAmount * (0.25 + 0.5 + 0.25 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 72);\n\n              case 64:\n                result = projectedAmount * (0.1667 + 0.333 + 0.333 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 72);\n\n              case 66:\n                result = projectedAmount * (0.125 + 0.25 + 0.25 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 72);\n\n              case 68:\n                result = projectedAmount * (0.1 + 0.2 + 0.2 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 72);\n\n              case 70:\n                result = duration > 5 ? projectedAmount * (0.1 + 0.2 + 0.2 * isProjectingFirstSuccessNextYear) : 0;\n                return _context.abrupt(\"break\", 72);\n\n              case 72:\n                _context.next = 90;\n                break;\n\n              case 74:\n                if (!(yearsAhead === 4)) {\n                  _context.next = 90;\n                  break;\n                }\n\n                _context.t3 = duration;\n                _context.next = _context.t3 === 1 ? 78 : _context.t3 === 2 ? 80 : _context.t3 === 3 ? 82 : _context.t3 === 4 ? 84 : _context.t3 === 5 ? 86 : 88;\n                break;\n\n              case 78:\n                result = projectedAmount * (0.5 + 0.5);\n                return _context.abrupt(\"break\", 90);\n\n              case 80:\n                result = projectedAmount * (0.25 + 0.5 + 0.25);\n                return _context.abrupt(\"break\", 90);\n\n              case 82:\n                result = projectedAmount * (0.1667 + 0.333 + 0.333 + 0.1667 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 90);\n\n              case 84:\n                result = projectedAmount * (0.125 + 0.25 + 0.25 + 0.25 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 90);\n\n              case 86:\n                result = projectedAmount * (0.1 + 0.2 + 0.2 + 0.2 * isProjectingFirstSuccessNextYear);\n                return _context.abrupt(\"break\", 90);\n\n              case 88:\n                result = duration > 5 ? projectedAmount * (0.1 + 0.2 + 0.2 + 0.2 * isProjectingFirstSuccessNextYear) : 0;\n                return _context.abrupt(\"break\", 90);\n\n              case 90:\n                return _context.abrupt(\"return\", result);\n\n              case 91:\n              case \"end\":\n                return _context.stop();\n            }\n          }\n        }, _callee, this);\n      }));\n\n      function ptsFutureByYear(_x, _x2) {\n        return _ptsFutureByYear.apply(this, arguments);\n      }\n\n      return ptsFutureByYear;\n    }(),\n    //endregion\n    //endregion\n    sponsorDiscount: function sponsorDiscount(sponsorType) {\n      var team = this.get('currentUser.team');\n      var sponsorDiscount = 0;\n\n      if (sponsorType === this.currentUser.sponsorTypeNih) {\n        sponsorDiscount = team.get('sponsorDiscountNih');\n      } else if (sponsorType === this.currentUser.sponsorTypeFFT) {\n        sponsorDiscount = team.get('sponsorDiscountFft');\n      } else if (sponsorType === this.currentUser.sponsorTypeOtherFed) {\n        sponsorDiscount = team.get('sponsorDiscountOtherFed');\n      } else if (sponsorType === this.currentUser.sponsorTypeNonFed) {\n        sponsorDiscount = team.get('sponsorDiscountNonFed');\n      } else if (sponsorType === this.currentUser.sponsorTypeSponsor5) {\n        sponsorDiscount = team.get('sponsorDiscountSponsor5');\n      } else if (sponsorType === this.currentUser.sponsorTypeSponsor6) {\n        sponsorDiscount = team.get('sponsorDiscountSponsor6');\n      } else if (sponsorType === this.currentUser.sponsorTypeSponsor7) {\n        sponsorDiscount = team.get('sponsorDiscountSponsor7');\n      }\n\n      return sponsorDiscount;\n    },\n    //region Grants\n    activeGrants: Ember.computed('model.successes.@each.isActive', function () {\n      if (!this.get('model.successes')) {\n        return null;\n      }\n\n      return this.get('model.successes').filterBy('isActive', true).sort(this.sortByStartDate);\n    }),\n    pendingGrants: Ember.computed('model.proposals.@each.status', function () {\n      if (!this.get('model.proposals')) {\n        return null;\n      }\n\n      return this.get('model.proposals').filterBy('status', 'pending').sort(this.sortByStartDate);\n    }),\n    activeCOPiGrants: Ember.computed('model.coSuccesses', function () {\n      if (!this.get('model.coSuccesses')) {\n        return null;\n      }\n\n      return this.get('model.coSuccesses').filterBy('isActive', true).sort(this.sortByStartDate);\n    }),\n    sortByStartDate: function sortByStartDate(a, b) {\n      return (0, _moment.default)(a.get('startDate')).utc().diff((0, _moment.default)(b.get('startDate')));\n    },\n    pendingGrantsProjectedFunded: null,\n    pendingGrantsPossiblyProjectedFunded: null,\n    renewalGrantsProjectedFunded: null,\n    renewalGrantsPossiblyProjectedFunded: null,\n    fundedPendingGrantsObserver: Ember.observer('pendingGrantsProjectedFunded.[]', 'pendingGrantsPossiblyProjectedFunded.[]', 'currentUser.team.{sponsorDiscountNih,sponsorDiscountFft,sponsorDiscountNonFed,sponsorDiscountOtherFed,nceAndCarryover,shrinkage}', function () {\n      if (!this.currentUser.team) {\n        return;\n      }\n\n      this.set('ptsPendingCurrentYearDirects', this.ptsPendingByYear(this.get('year.fiscalYear'), true));\n      this.set('ptsPendingCurrentYearIndirects', this.ptsPendingByYear(this.get('year.fiscalYear'), false));\n      this.set('ptsPendingOneYearAheadDirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 1, true));\n      this.set('ptsPendingOneYearAheadIndirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 1, false));\n      this.set('ptsPendingTwoYearsAheadDirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 2, true));\n      this.set('ptsPendingTwoYearsAheadIndirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 2, false));\n      this.set('ptsPendingThreeYearsAheadDirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 3, true));\n      this.set('ptsPendingThreeYearsAheadIndirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 3, false));\n      this.set('ptsPendingFourYearsAheadDirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 4, true));\n      this.set('ptsPendingFourYearsAheadIndirects', this.ptsPendingByYear(this.get('year.fiscalYear') + 4, false));\n    }).on('init'),\n    renewalGrantsObserver: Ember.observer('renewalGrantsProjectedFunded.[]', 'renewalGrantsPossiblyProjectedFunded.[]', 'currentUser.team.{nceAndCarryover,shrinkage}', function () {\n      this.set('ptsRenewalCurrentYearDirects', this.ptsRenewalByYear(this.get('year.fiscalYear'), true));\n      this.set('ptsRenewalCurrentYearIndirects', this.ptsRenewalByYear(this.get('year.fiscalYear'), false));\n      this.set('ptsRenewalOneYearAheadDirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 1, true));\n      this.set('ptsRenewalOneYearAheadIndirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 1, false));\n      this.set('ptsRenewalTwoYearsAheadDirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 2, true));\n      this.set('ptsRenewalTwoYearsAheadIndirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 2, false));\n      this.set('ptsRenewalThreeYearsAheadDirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 3, true));\n      this.set('ptsRenewalThreeYearsAheadIndirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 3, false));\n      this.set('ptsRenewalFourYearsAheadDirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 4, true));\n      this.set('ptsRenewalFourYearsAheadIndirects', this.ptsRenewalByYear(this.get('year.fiscalYear') + 4, false));\n    }),\n    //endregion\n    //region Pending Projections\n    ptsPendingCurrentYearDirects: 0,\n    ptsPendingCurrentYearIndirects: 0,\n    ptsPendingOneYearAheadDirects: 0,\n    ptsPendingOneYearAheadIndirects: 0,\n    ptsPendingTwoYearsAheadDirects: 0,\n    ptsPendingTwoYearsAheadIndirects: 0,\n    ptsPendingThreeYearsAheadDirects: 0,\n    ptsPendingThreeYearsAheadIndirects: 0,\n    ptsPendingFourYearsAheadDirects: 0,\n    ptsPendingFourYearsAheadIndirects: 0,\n    ptsPendingByYear: function ptsPendingByYear(year, isDirects) {\n      var _this7 = this;\n\n      var pendingGrantsProjectedFunded = this.pendingGrantsProjectedFunded;\n      var pts = 0;\n      var team = this.get('currentUser.team');\n      var nceAndCarryOver = team.get('nceAndCarryover');\n      var fiscalMonth = team.get('fiscalYearStartMonth');\n      var shrinkage = team.get('shrinkage');\n\n      if (shrinkage === undefined) {\n        shrinkage = 0;\n      }\n\n      pendingGrantsProjectedFunded.forEach(function (grant) {\n        var sponsorType = grant.get('sponsorType');\n\n        var sponsorDiscount = _this7.sponsorDiscount(sponsorType);\n\n        var result = _this7.ptsAmmortizationFunction(grant, year, isDirects, fiscalMonth, nceAndCarryOver, shrinkage, sponsorDiscount);\n\n        pts += result;\n      });\n      var pendingGrantsPossiblyProjectedFunded = this.pendingGrantsPossiblyProjectedFunded;\n      pendingGrantsPossiblyProjectedFunded.forEach(function (grant) {\n        var sponsorType = grant.get('sponsorType');\n\n        var sponsorDiscount = _this7.sponsorDiscount(sponsorType);\n\n        var result = _this7.ptsAmmortizationFunction(grant, year, isDirects, fiscalMonth, nceAndCarryOver, shrinkage, sponsorDiscount);\n\n        pts += result * _this7.get('model.conversionRatio');\n      });\n      return pts;\n    },\n    //endregion\n    //region Renewal Projections\n    ptsRenewalCurrentYearDirects: 0,\n    ptsRenewalCurrentYearIndirects: 0,\n    ptsRenewalOneYearAheadDirects: 0,\n    ptsRenewalOneYearAheadIndirects: 0,\n    ptsRenewalTwoYearsAheadDirects: 0,\n    ptsRenewalTwoYearsAheadIndirects: 0,\n    ptsRenewalThreeYearsAheadDirects: 0,\n    ptsRenewalThreeYearsAheadIndirects: 0,\n    ptsRenewalFourYearsAheadDirects: 0,\n    ptsRenewalFourYearsAheadIndirects: 0,\n    ptsRenewalByYear: function ptsRenewalByYear(year, isDirects) {\n      var _this8 = this;\n\n      var renewalGrantsProjectedFunded = this.renewalGrantsProjectedFunded;\n      var pts = 0;\n      var nceAndCarryOver = this.get('currentUser.team.nceAndCarryover');\n      var fiscalMonth = this.get('currentUser.team.fiscalYearStartMonth');\n      var shrinkage = this.get('currentUser.team.shrinkage');\n\n      if (shrinkage === undefined) {\n        shrinkage = 0;\n      }\n\n      renewalGrantsProjectedFunded.forEach(function (grant) {\n        pts += _this8.ptsRenewalAmmortizationFunction(grant, year, isDirects, fiscalMonth, nceAndCarryOver, shrinkage);\n      });\n      var renewalGrantsPossiblyProjectedFunded = this.renewalGrantsPossiblyProjectedFunded;\n      renewalGrantsPossiblyProjectedFunded.forEach(function (grant) {\n        var result = _this8.ptsRenewalAmmortizationFunction(grant, year, isDirects, fiscalMonth, nceAndCarryOver, shrinkage);\n\n        pts += result * 0.5;\n      });\n      return pts;\n    },\n    //endregion\n    //region Potential To Spend Rows\n    tableRowActiveDirects: Ember.computed('model.successes.@each', function () {\n      return {\n        grantType: 'Active Grants',\n        directsOrIndirects: 'Directs',\n        actualsFiveYearsAgo: this.get('model.actualsFiveYearsAgoDirects'),\n        actualsFourYearsAgo: this.get('model.actualsFourYearsAgoDirects'),\n        actualsThreeYearsAgo: this.get('model.actualsThreeYearsAgoDirects'),\n        actualsTwoYearsAgo: this.get('model.actualsTwoYearsAgoDirects'),\n        actualsOneYearAgo: this.get('model.actualsOneYearAgoDirects'),\n        ptsCurrentYear: this.get('model.ptsCurrentYearDirects'),\n        ptsOneYearAhead: this.get('model.ptsOneYearAheadDirects'),\n        ptsTwoYearsAhead: this.get('model.ptsTwoYearsAheadDirects'),\n        ptsThreeYearsAhead: this.get('model.ptsThreeYearsAheadDirects'),\n        ptsFourYearsAhead: this.get('model.ptsFourYearsAheadDirects')\n      };\n    }),\n    tableRowActiveIndirects: Ember.computed('model', function () {\n      return {\n        grantType: '',\n        directsOrIndirects: 'Indirects',\n        actualsFiveYearsAgo: this.get('model.actualsFiveYearsAgoIndirects'),\n        actualsFourYearsAgo: this.get('model.actualsFourYearsAgoIndirects'),\n        actualsThreeYearsAgo: this.get('model.actualsThreeYearsAgoIndirects'),\n        actualsTwoYearsAgo: this.get('model.actualsTwoYearsAgoIndirects'),\n        actualsOneYearAgo: this.get('model.actualsOneYearAgoIndirects'),\n        ptsCurrentYear: this.get('model.ptsCurrentYearIndirects'),\n        ptsOneYearAhead: this.get('model.ptsOneYearAheadIndirects'),\n        ptsTwoYearsAhead: this.get('model.ptsTwoYearsAheadIndirects'),\n        ptsThreeYearsAhead: this.get('model.ptsThreeYearsAheadIndirects'),\n        ptsFourYearsAhead: this.get('model.ptsFourYearsAheadIndirects')\n      };\n    }),\n    tableRowPendingDirects: Ember.computed('ptsPendingCurrentYearDirects', 'ptsPendingOneYearAheadDirects', 'ptsPendingTwoYearsAheadDirects', 'ptsPendingThreeYearsAheadDirects', 'ptsPendingFourYearsAheadDirects', function () {\n      return {\n        grantType: 'Pending Grants',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: this.ptsPendingCurrentYearDirects,\n        ptsOneYearAhead: this.ptsPendingOneYearAheadDirects,\n        ptsTwoYearsAhead: this.ptsPendingTwoYearsAheadDirects,\n        ptsThreeYearsAhead: this.ptsPendingThreeYearsAheadDirects,\n        ptsFourYearsAhead: this.ptsPendingFourYearsAheadDirects\n      };\n    }),\n    tableRowPendingIndirects: Ember.computed('ptsPendingCurrentYearIndirects', 'ptsPendingOneYearAheadIndirects', 'ptsPendingTwoYearsAheadIndirects', 'ptsPendingThreeYearsAheadIndirects', 'ptsPendingFourYearsAheadIndirects', function () {\n      return {\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: this.ptsPendingCurrentYearIndirects,\n        ptsOneYearAhead: this.ptsPendingOneYearAheadIndirects,\n        ptsTwoYearsAhead: this.ptsPendingTwoYearsAheadIndirects,\n        ptsThreeYearsAhead: this.ptsPendingThreeYearsAheadIndirects,\n        ptsFourYearsAhead: this.ptsPendingFourYearsAheadIndirects\n      };\n    }),\n    tableRowRenewalDirects: Ember.computed('ptsRenewalCurrentYearDirects', 'ptsRenewalOneYearAheadDirects', 'ptsRenewalTwoYearsAheadDirects', 'ptsRenewalThreeYearsAheadDirects', 'ptsRenewalFourYearsAheadDirects', function () {\n      return {\n        grantType: 'Renewals',\n        directsOrIndirects: 'Directs',\n        ptsCurrentYear: this.ptsRenewalCurrentYearDirects,\n        ptsOneYearAhead: this.ptsRenewalOneYearAheadDirects,\n        ptsTwoYearsAhead: this.ptsRenewalTwoYearsAheadDirects,\n        ptsThreeYearsAhead: this.ptsRenewalThreeYearsAheadDirects,\n        ptsFourYearsAhead: this.ptsRenewalFourYearsAheadDirects\n      };\n    }),\n    tableRowRenewalIndirects: Ember.computed('ptsRenewalCurrentYearIndirects', 'ptsRenewalOneYearAheadIndirects', 'ptsRenewalTwoYearsAheadIndirects', 'ptsRenewalThreeYearsAheadIndirects', 'ptsRenewalFourYearsAheadIndirects', function () {\n      return {\n        directsOrIndirects: 'Indirects',\n        ptsCurrentYear: this.ptsRenewalCurrentYearIndirects,\n        ptsOneYearAhead: this.ptsRenewalOneYearAheadIndirects,\n        ptsTwoYearsAhead: this.ptsRenewalTwoYearsAheadIndirects,\n        ptsThreeYearsAhead: this.ptsRenewalThreeYearsAheadIndirects,\n        ptsFourYearsAhead: this.ptsRenewalFourYearsAheadIndirects\n      };\n    }),\n    tableRowFutureDirects: Ember.computed('ptsFutureCurrentYearDirects', 'ptsFutureOneYearAheadDirects', 'ptsFutureTwoYearsAheadDirects', 'ptsFutureThreeYearsAheadDirects', 'ptsFutureFourYearsAheadDirects', 'futureAverageAnnualSubmissionCount', function () {\n      var promise = Promise.all([this.ptsFutureOneYearAheadDirects, this.ptsFutureTwoYearsAheadDirects, this.ptsFutureThreeYearsAheadDirects, this.ptsFutureFourYearsAheadDirects]).then(function (vals) {\n        return {\n          grantType: 'Future Proposals',\n          directsOrIndirects: 'Directs',\n          ptsOneYearAhead: vals[0],\n          ptsTwoYearsAhead: vals[1],\n          ptsThreeYearsAhead: vals[2],\n          ptsFourYearsAhead: vals[3]\n        };\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    tableRowFutureIndirects: Ember.computed('ptsFutureCurrentYearIndirects', 'ptsFutureOneYearAheadIndirects', 'ptsFutureTwoYearsAheadIndirects', 'ptsFutureThreeYearsAheadIndirects', 'ptsFutureFourYearsAheadIndirects', function () {\n      var promise = Promise.all([this.ptsFutureOneYearAheadIndirects, this.ptsFutureTwoYearsAheadIndirects, this.ptsFutureThreeYearsAheadIndirects, this.ptsFutureFourYearsAheadIndirects]).then(function (vals) {\n        return {\n          directsOrIndirects: 'Indirects',\n          ptsOneYearAhead: vals[0],\n          ptsTwoYearsAhead: vals[1],\n          ptsThreeYearsAhead: vals[2],\n          ptsFourYearsAhead: vals[3]\n        };\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    tableRowTotalsDirects: Ember.computed('tableRowActiveDirects', 'tableRowPendingDirects', 'tableRowRenewalDirects', 'tableRowFutureDirects', function () {\n      var _this9 = this;\n\n      var promise = this.tableRowFutureDirects.then(function (tableRowFutureDirects) {\n        var tableRowActiveDirects = _this9.tableRowActiveDirects;\n        var tableRowPendingDirects = _this9.tableRowPendingDirects;\n        var tableRowRenewalDirects = _this9.tableRowRenewalDirects;\n        var actualsFiveYearsAgo = tableRowActiveDirects['actualsFiveYearsAgo'];\n        var actualsFourYearsAgo = tableRowActiveDirects['actualsFourYearsAgo'];\n        var actualsThreeYearsAgo = tableRowActiveDirects['actualsThreeYearsAgo'];\n        var actualsTwoYearsAgo = tableRowActiveDirects['actualsTwoYearsAgo'];\n        var actualsOneYearAgo = tableRowActiveDirects['actualsOneYearAgo'];\n        var ptsCurrentYear = tableRowActiveDirects['ptsCurrentYear'] + tableRowPendingDirects['ptsCurrentYear'] + tableRowRenewalDirects['ptsCurrentYear'];\n        var ptsOneYearAhead = tableRowActiveDirects['ptsOneYearAhead'] + tableRowPendingDirects['ptsOneYearAhead'] + tableRowRenewalDirects['ptsOneYearAhead'] + tableRowFutureDirects['ptsOneYearAhead'];\n        var ptsTwoYearsAhead = tableRowActiveDirects['ptsTwoYearsAhead'] + tableRowPendingDirects['ptsTwoYearsAhead'] + tableRowRenewalDirects['ptsTwoYearsAhead'] + tableRowFutureDirects['ptsTwoYearsAhead'];\n        var ptsThreeYearsAhead = tableRowActiveDirects['ptsThreeYearsAhead'] + tableRowPendingDirects['ptsThreeYearsAhead'] + tableRowRenewalDirects['ptsThreeYearsAhead'] + tableRowFutureDirects['ptsThreeYearsAhead'];\n        var ptsFourYearsAhead = tableRowActiveDirects['ptsFourYearsAhead'] + tableRowPendingDirects['ptsFourYearsAhead'] + tableRowRenewalDirects['ptsFourYearsAhead'] + tableRowFutureDirects['ptsFourYearsAhead'];\n        return {\n          grantType: 'Total',\n          directsOrIndirects: 'Directs',\n          actualsFiveYearsAgo: actualsFiveYearsAgo,\n          actualsFourYearsAgo: actualsFourYearsAgo,\n          actualsThreeYearsAgo: actualsThreeYearsAgo,\n          actualsTwoYearsAgo: actualsTwoYearsAgo,\n          actualsOneYearAgo: actualsOneYearAgo,\n          ptsCurrentYear: ptsCurrentYear,\n          ptsOneYearAhead: ptsOneYearAhead,\n          ptsTwoYearsAhead: ptsTwoYearsAhead,\n          ptsThreeYearsAhead: ptsThreeYearsAhead,\n          ptsFourYearsAhead: ptsFourYearsAhead\n        };\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    tableRowTotalsIndirects: Ember.computed('tableRowActiveIndirects', 'tableRowPendingIndirects', 'tableRowRenewalIndirects', 'tableRowFutureIndirects', function () {\n      var _this10 = this;\n\n      var promise = this.tableRowFutureIndirects.then(function (tableRowFutureIndirects) {\n        var tableRowActiveIndirects = _this10.tableRowActiveIndirects;\n        var tableRowPendingIndirects = _this10.tableRowPendingIndirects;\n        var tableRowRenewalIndirects = _this10.tableRowRenewalIndirects;\n        var actualsFiveYearsAgo = tableRowActiveIndirects['actualsFiveYearsAgo'];\n        var actualsFourYearsAgo = tableRowActiveIndirects['actualsFourYearsAgo'];\n        var actualsThreeYearsAgo = tableRowActiveIndirects['actualsThreeYearsAgo'];\n        var actualsTwoYearsAgo = tableRowActiveIndirects['actualsTwoYearsAgo'];\n        var actualsOneYearAgo = tableRowActiveIndirects['actualsOneYearAgo'];\n        var ptsCurrentYear = tableRowActiveIndirects['ptsCurrentYear'] + tableRowPendingIndirects['ptsCurrentYear'] + tableRowRenewalIndirects['ptsCurrentYear'];\n        var ptsOneYearAhead = tableRowActiveIndirects['ptsOneYearAhead'] + tableRowPendingIndirects['ptsOneYearAhead'] + tableRowRenewalIndirects['ptsOneYearAhead'] + tableRowFutureIndirects['ptsOneYearAhead'];\n        var ptsTwoYearsAhead = tableRowActiveIndirects['ptsTwoYearsAhead'] + tableRowPendingIndirects['ptsTwoYearsAhead'] + tableRowRenewalIndirects['ptsTwoYearsAhead'] + tableRowFutureIndirects['ptsTwoYearsAhead'];\n        var ptsThreeYearsAhead = tableRowActiveIndirects['ptsThreeYearsAhead'] + tableRowPendingIndirects['ptsThreeYearsAhead'] + tableRowRenewalIndirects['ptsThreeYearsAhead'] + tableRowFutureIndirects['ptsThreeYearsAhead'];\n        var ptsFourYearsAhead = tableRowActiveIndirects['ptsFourYearsAhead'] + tableRowPendingIndirects['ptsFourYearsAhead'] + tableRowRenewalIndirects['ptsFourYearsAhead'] + tableRowFutureIndirects['ptsFourYearsAhead'];\n        return {\n          grantType: '',\n          directsOrIndirects: 'Indirects',\n          actualsFiveYearsAgo: actualsFiveYearsAgo,\n          actualsFourYearsAgo: actualsFourYearsAgo,\n          actualsThreeYearsAgo: actualsThreeYearsAgo,\n          actualsTwoYearsAgo: actualsTwoYearsAgo,\n          actualsOneYearAgo: actualsOneYearAgo,\n          ptsCurrentYear: ptsCurrentYear,\n          ptsOneYearAhead: ptsOneYearAhead,\n          ptsTwoYearsAhead: ptsTwoYearsAhead,\n          ptsThreeYearsAhead: ptsThreeYearsAhead,\n          ptsFourYearsAhead: ptsFourYearsAhead\n        };\n      });\n      return _emberData.default.PromiseObject.create({\n        promise: promise\n      });\n    }),\n    ptsModel: Ember.computed('tableRowActiveDirects', 'tableRowTotalDirect', 'tableRowTotalIndirects', 'tableRowPendingDirects', 'tableRowPendingIndirects', 'tableRowRenewalDirects', 'tableRowRenewalIndirects', 'tableRowFutureDirects', 'tableRowFutureIndirects', function () {\n      var tableRowActiveDirects = this.tableRowActiveDirects;\n      var tableRowActiveIndirects = this.tableRowActiveIndirects;\n      var tableRowPendingDirects = this.tableRowPendingDirects;\n      var tableRowPendingIndirects = this.tableRowPendingIndirects;\n      var tableRowRenewalDirects = this.tableRowRenewalDirects;\n      var tableRowRenewalIndirects = this.tableRowRenewalIndirects;\n      var tableRowFutureDirects = this.tableRowFutureDirects;\n      var tableRowFutureIndirects = this.tableRowFutureIndirects;\n      var tableRowTotalsDirects = this.tableRowTotalsDirects;\n      var tableRowTotalsIndirects = this.tableRowTotalsIndirects;\n      return [tableRowActiveDirects, tableRowActiveIndirects, tableRowPendingDirects, tableRowPendingIndirects, tableRowRenewalDirects, tableRowRenewalIndirects, tableRowFutureDirects, tableRowFutureIndirects, tableRowTotalsDirects, tableRowTotalsIndirects];\n    }),\n    //endregion\n    //region Compensation Coverage\n    compensationCoverageModel: Ember.computed('activeGrants.@each.{renewProjection,effort}', 'activeCOPiGrants.@each.{renewProjection,effort}', 'pendingGrants.@each.{funded,effort}', function () {\n      var _this11 = this;\n\n      var model = Ember.A([]);\n      this.activeGrants.forEach(function (activeGrant) {\n        model.pushObject(_this11.setupCompCoverageModel('Active', activeGrant));\n      });\n      this.pendingGrants.forEach(function (pendingGrant) {\n        model.pushObject(_this11.setupCompCoverageModel('Pending', pendingGrant));\n      });\n      this.activeCOPiGrants.forEach(function (activeCOPIGrant) {\n        model.pushObject(_this11.setupCompCoverageModel('Co-PI', activeCOPIGrant));\n      });\n      var total = Ember.Object.create({\n        endDate: 'Coverage',\n        annual: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('annual');\n        }, 0),\n        future: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('future');\n        }, 0),\n        coverageCurrentYear: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('coverageCurrentYear');\n        }, 0),\n        coverageOneYearAhead: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('coverageOneYearAhead');\n        }, 0),\n        coverageTwoYearsAhead: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('coverageTwoYearsAhead');\n        }, 0),\n        coverageThreeYearsAhead: model.reduce(function (previousValue, obj) {\n          return previousValue + obj.get('coverageThreeYearsAhead');\n        }, 0)\n      });\n\n      if (model.length > 0) {\n        model.pushObject(total);\n      }\n\n      return model;\n    }),\n    setupCompCoverageModel: function setupCompCoverageModel(category, grant) {\n      var compObject = Ember.Object.create();\n      compObject.set('category', category);\n      compObject.set('startDate', grant.get('startDate'));\n      compObject.set('endDate', grant.get('endDate'));\n      compObject.set('grantId', grant.get('grantId'));\n\n      if (category === 'Pending') {\n        var effort = grant.get('funded') === 'Yes' ? grant.get('effort') : 0; //Pending grants annual % should be 0\n\n        compObject.set('annual', 0);\n        compObject.set('future', effort);\n      } else {\n        compObject.set('annual', grant.get('effort'));\n        compObject.set('future', grant.get('renewProjection') === 'Yes' ? grant.get('effort') : 0);\n      }\n\n      var endYear = grant.get('endFiscalYear');\n      var endMonth = grant.get('endFiscalMonth');\n      var startMonth = grant.get('startFiscalMonth');\n      var startYear = grant.get('startFiscalYear');\n      var annual = compObject.get('annual');\n      var future = compObject.get('future');\n      compObject.set('coverageCurrentYear', this.futureCompCoverage(endYear, endMonth, startMonth, startYear, annual, future, this.get('year.fiscalYear'), category));\n      compObject.set('coverageOneYearAhead', this.futureCompCoverage(endYear, endMonth, startMonth, startYear, annual, future, this.get('year.fiscalYear') + 1, category));\n      compObject.set('coverageTwoYearsAhead', this.futureCompCoverage(endYear, endMonth, startMonth, startYear, annual, future, this.get('year.fiscalYear') + 2, category));\n      compObject.set('coverageThreeYearsAhead', this.futureCompCoverage(endYear, endMonth, startMonth, startYear, annual, future, this.get('year.fiscalYear') + 3, category));\n      return compObject;\n    },\n    futureCompCoverage: function futureCompCoverage(endYear, endMonth, startMonth, startYear, annual, future, year, category) {\n      var value = 0;\n\n      if (category === 'Pending') {\n        if (startYear === year) {\n          value = (12 - startMonth) / 12 * future;\n        } else if (startYear < year && endYear >= year) {\n          value = future;\n        }\n      } else {\n        if (endYear === year) {\n          value = endMonth / 12 * annual + (12 - endMonth) / 12 * future;\n        } else if (endYear > year) {\n          value = annual;\n        } else {\n          value = future;\n        }\n      }\n\n      return Math.round(value);\n    },\n    //endregion\n    updateProjectedGrants: function updateProjectedGrants() {\n      var pendingGrants = this.pendingGrants;\n      var activeGrants = this.activeGrants;\n      this.set('pendingGrantsProjectedFunded', pendingGrants.filterBy('funded', 'Yes'));\n      this.set('pendingGrantsPossiblyProjectedFunded', pendingGrants.filterBy('funded', 'Don\\'t Know'));\n      this.set('renewalGrantsProjectedFunded', activeGrants.filterBy('renewProjection', 'Yes'));\n      this.set('renewalGrantsPossiblyProjectedFunded', activeGrants.filterBy('renewProjection', 'Don\\'t Know'));\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/model-cell-link-data\", [\"exports\", \"b3i-analytics-web-app/utils/cell-link-data\"], function (_exports, _cellLinkData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    cellLinkData: Ember.computed('id', 'name', 'constructor.modelName', function () {\n      var modelName = this.get('constructor.modelName');\n      var id = this.id;\n      var name = this.name;\n      return (0, _cellLinkData.default)(id, name, modelName);\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/non-department-only-route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    currentUser: Ember.inject.service('current-user'),\n    beforeModel: function beforeModel(transition) {\n      if (this.get('currentUser.role') === 'department') {\n        transition.abort();\n      }\n\n      return this._super.apply(this, arguments);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/open-print-dialog\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    printThis: Ember.inject.service(),\n    actions: {\n      openPrintDialog: function openPrintDialog() {\n        window.print();\n      },\n      printAction: function printAction() {\n        var selector = '.printArea';\n        var options = {\n          printDelay: 500,\n          canvas: true\n        };\n        this.printThis.print(selector, options);\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/permissions-check\", [\"exports\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  /*\n    Computed properties for roles\n   */\n  var _default = Ember.Mixin.create({\n    currentUser: Ember.inject.service('current-user'),\n    isAdmin: Ember.computed('currentUser.role', function () {\n      return this.get('currentUser.role') === _roles.default.ADMIN;\n    }),\n    isAdminOrExec: Ember.computed('currentUser.role', function () {\n      return this.get('currentUser.role') === _roles.default.ADMIN || this.get('currentUser.role') === _roles.default.EXECUTIVE;\n    }),\n    isNotDepartment: Ember.computed('currentUser.role', function () {\n      return this.get('currentUser.role') !== _roles.default.DEPARTMENT;\n    }),\n    canExportData: Ember.computed('currentUser.{role,team.canExecutivesDownloadData}', function () {\n      if (this.currentUser.team.canExecutivesDownloadData) {\n        return this.isAdminOrExec;\n      } else {\n        return this.isAdmin;\n      }\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/projection-filter-route\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _environment, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    projectionsModelWithFilter: function projectionsModelWithFilter(settingsString) {\n      var _this = this;\n\n      var queryParams = {};\n\n      if (this.currentUser.get('role') === _roles.default.DEPARTMENT) {\n        queryParams['department_id'] = this.currentUser.get('departmentId');\n      }\n\n      if (settingsString) {\n        var settings = JSON.parse(settingsString);\n        var option = settings['selectedFilterOption'];\n\n        if (option != null) {\n          if (option.value === 'All Sectors') {\n            return this.store.query('projection', {}).then(function (projections) {\n              if (projections.content.length > 0) {\n                return Ember.RSVP.hash({\n                  projection: projections.objectAt(0)\n                });\n              } else {\n                return Ember.RSVP.hash({\n                  projection: Ember.Object.create({})\n                });\n              }\n            });\n          } else if (option.isGroupName) {\n            return this.store.query('projection', {\n              'sector': option.value\n            }).then(function (projections) {\n              if (projections.content.length > 0) {\n                return Ember.RSVP.hash({\n                  projection: projections.objectAt(0)\n                });\n              } else {\n                return Ember.RSVP.hash({\n                  projection: Ember.Object.create({})\n                });\n              }\n            });\n          } else {\n            return this.store.query('projection', {\n              'department_id': option.id\n            }).then(function (projections) {\n              if (projections.content.length > 0) {\n                return Ember.RSVP.hash({\n                  projection: projections.objectAt(0)\n                });\n              } else {\n                return Ember.RSVP.hash({\n                  projection: Ember.Object.create({})\n                });\n              }\n            });\n          }\n        }\n      }\n\n      return this.store.query('projection', queryParams).then(function (projections) {\n        if (projections.content.length > 0) {\n          return Ember.RSVP.hash({\n            projection: projections.objectAt(0)\n          });\n        } else {\n          return Ember.RSVP.hash({\n            projection: _this.store.createRecord('projection', {})\n          });\n        }\n      });\n    },\n    populateProjectionFilterOnController: function populateProjectionFilterOnController(controller) {\n      var _this2 = this;\n\n      if (this.currentUser.get('role') === _roles.default.DEPARTMENT) {\n        var option = {\n          value: this.currentUser.get('departmentName'),\n          id: this.currentUser.get('departmentId')\n        };\n        controller.set('selectedFilterOption', option);\n        controller.set('projectionsFilterOptions', [option]);\n      } else {\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            (function () {\n              var sectorDict = {};\n\n              _this2.store.pushPayload('department', response);\n\n              var departments = _this2.store.peekAll('department');\n\n              departments.forEach(function (department) {\n                var sector = department.get('sector.name');\n\n                if (sector in sectorDict) {\n                  sectorDict[sector].push(department);\n                } else {\n                  sectorDict[sector] = [department];\n                }\n              });\n              var orderedSectorDict = {};\n              Object.keys(sectorDict).sort().forEach(function (key) {\n                orderedSectorDict[key] = sectorDict[key];\n\n                if (orderedSectorDict[key].length < 1) {\n                  orderedSectorDict[key] = [];\n                }\n              }); //Only admins and execs should have access to sectors\n\n              var optionsList = [];\n\n              if (_this2.get('currentUser.role') === _roles.default.ADMIN || _this2.get('currentUser.role') === _roles.default.EXECUTIVE) {\n                optionsList.push({\n                  isGroupName: true,\n                  value: 'All Sectors'\n                });\n              }\n\n              for (var sector in orderedSectorDict) {\n                if (sectorDict.hasOwnProperty(sector)) {\n                  optionsList.push({\n                    isGroupName: true,\n                    value: sector\n                  });\n                  var _departments = orderedSectorDict[sector];\n\n                  _departments.forEach(function (department) {\n                    optionsList.push({\n                      value: department.get('name'),\n                      id: department.get('id')\n                    });\n                  });\n                }\n              }\n\n              controller.set('projectionsFilterOptions', optionsList);\n\n              if (!controller.selectedFilterOption) {\n                controller.set('selectedFilterOption', optionsList[0]);\n              } //Set the baseline if unset\n\n\n              if (!controller.baselineCurrentFutureDirectsRow && controller.setBaseline) {\n                controller.setBaseline();\n              }\n            })();\n          }\n        });\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/pts-summary-controller\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    optionsMegaGrants: Ember.computed(function () {\n      return ['No', 'Yes'];\n    }),\n    tableExtra: Ember.computed('nearTermDecline', 'directsChange', 'indirectsChange', 'selectedIncludePlan', 'meta', 'subtotalRow', function () {\n      return {\n        nearTermDecline: this.nearTermDecline,\n        directsChange: this.directsChange,\n        indirectsChange: this.indirectsChange,\n        includePlanPts: this.selectedIncludePlan === \"Yes\",\n        modelLength: this.get('meta.pagination.count'),\n        riskOfDeclineCount: this.get('meta.risk_of_decline_count'),\n        riskOfLapseCount: this.get('meta.risk_of_lapse_count'),\n        showingSubtotals: this.subtotalRow !== null && this.subtotalRow !== undefined\n      };\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/recruitment-calculations\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _Ember$Mixin$create;\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\n  function _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\n  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\n  function _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\n  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\n  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n  var _default = Ember.Mixin.create((_Ember$Mixin$create = {\n    yearsAhead: 10,\n    termRemaining: 3,\n    startUpSpendYearsJunior: 3,\n    startupPackageAmountJunior: 0,\n    averageTotalCompensationJunior: 0,\n    compensationCoverageAfterJunior: 0,\n    compensationCoverageStartUpJunior: 0,\n    performanceProposalJunior: 0,\n    performanceHitRateJunior: 0,\n    startUpSpendYearsSenior: 3,\n    startupPackageAmountSenior: 0,\n    averageTotalCompensationSenior: 0,\n    compensationCoverageAfterSenior: 0,\n    compensationCoverageStartUpSenior: 0,\n    performanceProposalSenior: 0,\n    performanceHitRateSenior: 0,\n    currentUser: Ember.inject.service('current-user'),\n    updateRecruitCounts: function updateRecruitCounts(recruits, isJunior) {\n      var name = isJunior ? 'recruitsJunior' : 'recruitsSenior';\n      this.set(name, Ember.A(recruits.map(function (value) {\n        if (!value) {\n          value = 0;\n        }\n\n        return Ember.Object.create({\n          value: value\n        });\n      })));\n    },\n    updateAttritionCounts: function updateAttritionCounts(recruits, isJunior) {\n      var name = isJunior ? 'attritionJunior' : 'attritionSenior';\n      this.set(name, Ember.A(recruits.map(function (value) {\n        return Ember.Object.create({\n          value: value\n        });\n      })));\n    },\n    updateProjection: function updateProjection(projection) {\n      // The recruitment page does not have a model object, but the projection page does so ensure the projection is set right\n      if (!this.model) {\n        this.set('model', {});\n      }\n\n      this.set('model.projection', projection);\n    },\n    //region Helpers\n\n    /**\n     * Helper function for increasing/decreasing the avg count and hit rate based on performance index\n     */\n    calculateWithPerformanceIndex: function calculateWithPerformanceIndex(value, performanceIndex) {\n      if (!performanceIndex) {\n        return value;\n      }\n\n      return value * (1 + performanceIndex);\n    },\n\n    /***\n     * Helper function for calculating total number of proposals for one recruit class\n     */\n    calculateRecruitProposals: function calculateRecruitProposals(proposalCount, proposalSize, yearsAhead, isJunior, withoutAttrition) {\n      var net = 0;\n\n      if (withoutAttrition) {\n        net = this.recruitsForYear(yearsAhead, isJunior);\n      } else {\n        net = this.recruitsForYear(yearsAhead, isJunior) - this.attritionForYear(yearsAhead, isJunior);\n      } //Number of years we are looking at\n\n\n      var numYearsOut = this.yearsAhead;\n      var proposals = [];\n\n      for (var i = 0; i < numYearsOut; i++) {\n        proposals.push(net * proposalCount * proposalSize);\n      } //Fill in 0s for the years prior the recruits starting\n\n\n      for (var _i = 0; _i < yearsAhead - 1; _i++) {\n        proposals[_i] = 0;\n      }\n\n      return proposals;\n    },\n\n    /**\n     * Helper function for calculating the proposals array without factoring in the proposals from new recruits in Y1\n     */\n    calculateRecruitProposalsWithoutTransferredIn: function calculateRecruitProposalsWithoutTransferredIn(index, pArray, proposalCount, proposalSize, isJunior) {\n      var recruits = this.recruitsForYear(index + 1, isJunior); //Make a copy so we don't modify the original array\n\n      var proposals = pArray.slice(0);\n\n      if (recruits > 0) {\n        //Dont factor Y1 proposals into calculation. This is covered by transferred in succcesses\n        var proposalsToRemove = this.calculateRecruitProposals(proposalCount, proposalSize, index + 1, isJunior);\n        proposals[index] = proposals[index] - proposalsToRemove[index];\n      }\n\n      return proposals;\n    },\n\n    /***\n     * Helper function for multiplying average transferred in and number of recruits\n     */\n    calculateRecruitTransferredIn: function calculateRecruitTransferredIn(transferredInAvgTotal, yearsAhead, isJunior) {\n      var net = this.recruitsForYear(yearsAhead, isJunior);\n      return net * transferredInAvgTotal;\n    },\n    calculateOneClassRecruitSuccesses: function calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, index) {\n      var currentProposals = proposals[index];\n      var successes = 0;\n\n      if (index === 0) {\n        successes = this.calculateRecruitSuccesses(y1y2, currentProposals, 0, modifiedHitRate);\n      } else {\n        var lastProposals = proposals[index - 1];\n        successes = this.calculateRecruitSuccesses(y1y2, currentProposals, lastProposals, modifiedHitRate);\n      }\n\n      return successes;\n    },\n\n    /***\n     * Helper function for calculating successes from proposals using the y1y2 ratio and hit rate\n     */\n    calculateRecruitSuccesses: function calculateRecruitSuccesses(y1y2, proposalsThisYear, proposalsLastYear, modifiedHitRate) {\n      //Total successes are projected from proposals and the amount expected to be transferred in\n      var successes = 0;\n\n      if (!proposalsLastYear) {\n        successes = (1 - y1y2) * proposalsThisYear * modifiedHitRate;\n      } else {\n        successes = y1y2 * proposalsLastYear * modifiedHitRate + (1 - y1y2) * proposalsThisYear * modifiedHitRate;\n      }\n\n      return successes;\n    },\n\n    /***\n     * Helper function that converts the total to indirects using the icr ratio\n     */\n    calculateIndirectsFromTotal: function calculateIndirectsFromTotal(totalArray, icr) {\n      return totalArray.map(function (total) {\n        return icr * total / (1 + icr);\n      });\n    },\n\n    /***\n     * Helper function that amortizes the successes for a given year based on the average duration of the grant\n     */\n    calculateProjectedSpending: function calculateProjectedSpending(wad, successes, yearsAhead, index) {\n      if (yearsAhead <= index) {\n        return 0;\n      }\n\n      var success = successes[index];\n      var years = yearsAhead - index;\n\n      switch (wad) {\n        case 1:\n          switch (years) {\n            case 1:\n              return success / 2;\n\n            case 2:\n              return success / 2;\n\n            default:\n              return 0;\n          }\n\n        case 2:\n          switch (years) {\n            case 1:\n              return success / 4;\n\n            case 2:\n              return success / 2;\n\n            case 3:\n              return success / 4;\n\n            default:\n              return 0;\n          }\n\n        case 3:\n          switch (years) {\n            case 1:\n              return success / 6;\n\n            case 2:\n              return success / 3;\n\n            case 3:\n              return success / 3;\n\n            case 4:\n              return success / 6;\n\n            default:\n              return 0;\n          }\n\n        case 4:\n          switch (years) {\n            case 1:\n              return success / 8;\n\n            case 2:\n              return success / 4;\n\n            case 3:\n              return success / 4;\n\n            case 4:\n              return success / 4;\n\n            case 5:\n              return success / 8;\n\n            default:\n              return 0;\n          }\n\n        case 5:\n          switch (years) {\n            case 1:\n              return success / 10;\n\n            case 2:\n              return success / 5;\n\n            case 3:\n              return success / 5;\n\n            case 4:\n              return success / 5;\n\n            case 5:\n              return success / 5;\n\n            case 6:\n              return success / 10;\n\n            default:\n              return 0;\n          }\n\n        default:\n          return 0;\n      }\n    },\n    calculateProjectedSpendingOneClass: function calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, isJunior) {\n      var _this = this;\n\n      var proposals = this.calculateRecruitProposals(proposalCount, proposalSize, classIndex + 1, isJunior, true);\n      var successes = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        successes.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      }\n\n      var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n      var spendingArray = range.map(function (i) {\n        return range.map(function (j) {\n          return _this.calculateProjectedSpending(wad, successes, j + 1, i);\n        });\n      });\n      return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n    },\n\n    /***\n     Helper function for calculating amounts spent over X number of years. Used for startup and relinqiushed calculations\n     */\n    calculateStartupRelinquished: function calculateStartupRelinquished(amount, num, term, yearsAhead, compCoverage) {\n      if (!compCoverage) {\n        compCoverage = 0;\n      }\n\n      var lookForward = this.yearsAhead;\n      var amountYearsArray = Array(lookForward).fill(0);\n      var perYearAmount = amount * num / term + compCoverage * num;\n\n      for (var i = 0; i < term; i++) {\n        var index = i + (yearsAhead - 1);\n\n        if (index < amountYearsArray.length) {\n          amountYearsArray[index] = perYearAmount;\n        } else {\n          break;\n        }\n      }\n\n      return amountYearsArray;\n    },\n\n    /***\n     * Helper function for returning the number of recruits by year\n     */\n    recruitsForYear: function recruitsForYear(yearsAhead, isJunior) {\n      var name = isJunior ? 'recruitsJuniorCounts' : 'recruitsSeniorCounts';\n      var recruits = this.get(name)[yearsAhead - 1]; //Replace undefined with 0\n\n      if (!recruits) {\n        recruits = 0;\n      }\n\n      return recruits;\n    },\n    attritionForYear: function attritionForYear(yearsAhead, isJunior) {\n      var name = isJunior ? 'attritionJuniorCounts' : 'attritionSeniorCounts';\n      var attrition = this.get(name)[yearsAhead - 1]; //Replace undefined with 0\n\n      if (!attrition) {\n        attrition = 0;\n      }\n\n      return attrition;\n    },\n\n    /***\n     * Helper function for summing the elements of an indefinite length of arrays. Returns one array\n     */\n    sumArrays: function sumArrays() {\n      for (var _len = arguments.length, arrays = new Array(_len), _key = 0; _key < _len; _key++) {\n        arrays[_key] = arguments[_key];\n      }\n\n      var n = arrays.reduce(function (max, xs) {\n        return Math.max(max, xs.length);\n      }, 0);\n      var result = Array.from({\n        length: n\n      });\n      return result.map(function (_, i) {\n        return arrays.map(function (xs) {\n          return xs[i] || 0;\n        }).reduce(function (sum, x) {\n          return sum + x;\n        }, 0);\n      });\n    },\n\n    /***\n     *  Helper function that subtracts each element of one array from another\n     */\n    subtractTwoArrays: function subtractTwoArrays(arrayOne, arrayTwo) {\n      return arrayOne.map(function (value, index) {\n        return value - arrayTwo[index];\n      });\n    },\n\n    /***\n     * Helper function for converting an array of values into an array of a cumulative sum of values\n     */\n    cumulativeArray: function cumulativeArray(netArray) {\n      var cumulativeArray = [];\n      netArray.reduce(function (prev, curr, i) {\n        return cumulativeArray[i] = prev + curr;\n      }, 0);\n      return cumulativeArray;\n    },\n    //endregion\n    //region Junior\n    //region Raw Data - modifies raw data with performance index\n    proposalNihkJuniorAvgCount: Ember.computed('recruitment.proposalNihkJuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNihkJuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalNihrJuniorAvgCount: Ember.computed('recruitment.proposalNihrJuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNihrJuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalOtherFedJuniorAvgCount: Ember.computed('recruitment.proposalOtherFedJuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalOtherFedJuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalFftJuniorAvgCount: Ember.computed('recruitment.proposalFftJuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalFftJuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalNonFedJuniorAvgCount: Ember.computed('recruitment.proposalNonFedJuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNonFedJuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalSponsor5JuniorAvgCount: Ember.computed('recruitment.proposalSponsor5JuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor5JuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalSponsor6JuniorAvgCount: Ember.computed('recruitment.proposalSponsor6JuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor6JuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    proposalSponsor7JuniorAvgCount: Ember.computed('recruitment.proposalSponsor7JuniorAvgCount', 'performanceProposalJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor7JuniorAvgCount'), this.performanceProposalJunior);\n    }),\n    modifiedHitRateNihkJunior: Ember.computed('recruitment.modifiedHitRateNihkJunior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNihkJunior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateNihrJunior: Ember.computed('recruitment.modifiedHitRateNihrJunior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNihrJunior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateOtherFedJunior: Ember.computed('recruitment.modifiedHitRateOtherFedkJunior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateOtherFedJunior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateFftJunior: Ember.computed('recruitment.modifiedHitRateFftJunior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateFftJunior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateNonFedJunior: Ember.computed('recruitment.modifiedHitRateNonFedJunior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNonFedJunior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateSponsor5Junior: Ember.computed('recruitment.modifiedHitRateSponsor5Junior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor5Junior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateSponsor6Junior: Ember.computed('recruitment.modifiedHitRateSponsor6Junior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor6Junior'), this.performanceHitRateJunior);\n    }),\n    modifiedHitRateSponsor7Junior: Ember.computed('recruitment.modifiedHitRateSponsor7Junior', 'performanceHitRateJunior', function () {\n      return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor7Junior'), this.performanceHitRateJunior);\n    }),\n    //region Proposals\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsNihkJunior: Ember.computed('recruitment.{proposalNihkJuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalNihkJuniorAvgCount', function () {\n      var proposalCount = this.proposalNihkJuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalNihkJuniorAvgTotal');\n      var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum up each class of recruits to get the final total\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsNihrJunior: Ember.computed('recruitment.{proposalNihrJuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalNihrJuniorAvgCount', function () {\n      var proposalCount = this.proposalNihrJuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalNihrJuniorAvgTotal');\n      var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum up each class of recruits to get the final total\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsOtherFedJunior: Ember.computed('recruitment.{proposalOtherFedJuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalOtherFedJuniorAvgCount', function () {\n      var proposalCount = this.proposalOtherFedJuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalOtherFedJuniorAvgTotal');\n      var proposalsArray = [];\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum the arrays across each year to get the total proposals\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsFftJunior: Ember.computed('recruitment.{proposalFftJuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalFftJuniorAvgCount', function () {\n      var proposalCount = this.proposalFftJuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalFftJuniorAvgTotal');\n      var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum up each class of recruits to get the final total\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsNonFedJunior: Ember.computed('recruitment.{proposalNonFedJuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalNonFedJuniorAvgCount', function () {\n      var proposalCount = this.proposalNonFedJuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalNonFedJuniorAvgTotal');\n      var proposalsArray = [];\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum the arrays across each year to get the total proposals\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsSponsor5Junior: Ember.computed('recruitment.{proposalSponsor5JuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalSponsor5JuniorAvgCount', function () {\n      var proposalCount = this.proposalSponsor5JuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalSponsor5JuniorAvgTotal');\n      var proposalsArray = [];\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum the arrays across each year to get the total proposals\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsSponsor6Junior: Ember.computed('recruitment.{proposalSponsor6JuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalSponsor6JuniorAvgCount', function () {\n      var proposalCount = this.proposalSponsor6JuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalSponsor6JuniorAvgTotal');\n      var proposalsArray = [];\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum the arrays across each year to get the total proposals\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n\n    /***\n     * Returns an array of proposal totals with the length equal to the number of years ahead\n     */\n    proposalsSponsor7Junior: Ember.computed('recruitment.{proposalSponsor7JuniorAvgTotal,juniorTerminatedAvgCount}', 'recruitsJunior.@each.value', 'attritionJunior.@each.value', 'proposalSponsor7JuniorAvgCount', function () {\n      var proposalCount = this.proposalSponsor7JuniorAvgCount;\n      var proposalSize = this.get('recruitment.proposalSponsor7JuniorAvgTotal');\n      var proposalsArray = [];\n\n      for (var i = 1; i < this.yearsAhead + 1; i++) {\n        proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, true));\n      } //Sum the arrays across each year to get the total proposals\n\n\n      return this.sumArrays.apply(this, proposalsArray);\n    }),\n    proposalsTotalJunior: Ember.computed('proposalsNihkJunior.[]', 'proposalsNihrJunior.[]', 'proposalsOtherFedJunior.[]', 'proposalsFftJunior.[]', 'proposalsNonFedJunior.[]', 'proposalsSponsor5Junior.[]', 'proposalsSponsor6Junior.[]', 'proposalsSponsor7Junior.[]', function () {\n      return this.sumArrays(this.proposalsNihkJunior, this.proposalsNihrJunior, this.proposalsOtherFedJunior, this.proposalsFftJunior, this.proposalsNonFedJunior, this.proposalsSponsor5Junior, this.proposalsSponsor6Junior, this.proposalsSponsor7Junior);\n    }),\n    proposalsIndirectsJunior: Ember.computed('proposalsNihkJunior.[]', 'proposalsNihrJunior.[]', 'proposalsOtherFedJunior.[]', 'proposalsFftJunior.[]', 'proposalsNonFedJunior.[]', 'proposalsSponsor5Junior.[]', 'proposalsSponsor6Junior.[]', 'proposalsSponsor7Junior.[]', 'currentUser.team.{icrNihk,icrNihricrOtherFed,icrFedFlowThru,icrNonFed,icrSponsor5,icrSponsor6,icrSponsor7}', function () {\n      var icrNihk = this.get('currentUser.team.icrNihk');\n      var icrNihr = this.get('currentUser.team.icrNihr');\n      var icrOtherFed = this.get('currentUser.team.icrOtherFed');\n      var icrFft = this.get('currentUser.team.icrFedFlowThru');\n      var icrNonFed = this.get('currentUser.team.icrNonFed');\n      var icrSponsor5 = this.get('currentUser.team.icrSponsor5');\n      var icrSponsor6 = this.get('currentUser.team.icrSponsor6');\n      var icrSponsor7 = this.get('currentUser.team.icrSponsor7');\n      return this.sumArrays(this.calculateIndirectsFromTotal(this.proposalsNihkJunior, icrNihk), this.calculateIndirectsFromTotal(this.proposalsNihrJunior, icrNihr), this.calculateIndirectsFromTotal(this.proposalsOtherFedJunior, icrOtherFed), this.calculateIndirectsFromTotal(this.proposalsFftJunior, icrFft), this.calculateIndirectsFromTotal(this.proposalsNonFedJunior, icrNonFed), this.calculateIndirectsFromTotal(this.proposalsSponsor5Junior, icrSponsor5), this.calculateIndirectsFromTotal(this.proposalsSponsor6Junior, icrSponsor6), this.calculateIndirectsFromTotal(this.proposalsSponsor7Junior, icrSponsor7));\n    }),\n    proposalsDirectsJunior: Ember.computed('proposalsTotalJunior.[]', function () {\n      return this.subtractTwoArrays(this.proposalsTotalJunior, this.proposalsIndirectsJunior);\n    }),\n    //endregion\n    //region Successes\n\n    /***\n     * Returns an array of success totals with the length equal to the number of years ahead\n     */\n    successesNihkJunior: Ember.computed('proposalsNihkJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'modifiedHitRateNihkJunior', 'transferredInNihkJunior', function () {\n      //Returns an array of projected successes for recruits\n      var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n      var modifiedHitRate = this.modifiedHitRateNihkJunior;\n      var successesArray = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNihkJunior, this.proposalNihkJuniorAvgCount, this.get('recruitment.proposalNihkJuniorAvgTotal'), true);\n        successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      } //Also add in transferred in successes\n\n\n      return this.sumArrays(successesArray, this.transferredInNihkJunior);\n    }),\n\n    /***\n     * Returns an array of success totals with the length equal to the number of years ahead\n     */\n    successesNihrJunior: Ember.computed('proposalsNihrJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'modifiedHitRateNihrJunior', 'transferredInNihrJunior', function () {\n      var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n      var modifiedHitRate = this.modifiedHitRateNihrJunior;\n      var successesArray = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNihrJunior, this.proposalNihrJuniorAvgCount, this.get('recruitment.proposalNihrJuniorAvgTotal'), true);\n        successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      } //Also add in transferred in successes\n\n\n      return this.sumArrays(successesArray, this.transferredInNihrJunior);\n    }),\n\n    /***\n     * Returns an array of success totals with the length equal to the number of years ahead\n     */\n    successesOtherFedJunior: Ember.computed('proposalsOtherFedJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'modifiedHitRateOtherFedJunior', 'transferredInOtherFedJunior', function () {\n      var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects');\n      var modifiedHitRate = this.modifiedHitRateOtherFedJunior;\n      var successesArray = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsOtherFedJunior, this.proposalOtherFedJuniorAvgCount, this.get('recruitment.proposalOtherFedJuniorAvgTotal'), true);\n        successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      } //Also add in transferred in successes\n\n\n      return this.sumArrays(successesArray, this.transferredInOtherFedJunior);\n    }),\n\n    /***\n     * Returns an array of success totals with the length equal to the number of years ahead\n     */\n    successesFftJunior: Ember.computed('proposalsFftJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects', 'modifiedHitRateFftJunior', 'transferredInFftJunior', function () {\n      var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects');\n      var modifiedHitRate = this.modifiedHitRateFftJunior;\n      var successesArray = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsFftJunior, this.proposalFftJuniorAvgCount, this.get('recruitment.proposalFftJuniorAvgTotal'), true);\n        successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      } //Also add in transferred in successes\n\n\n      return this.sumArrays(successesArray, this.transferredInFftJunior);\n    }),\n\n    /***\n     * Returns an array of success totals with the length equal to the number of years ahead\n     */\n    successesNonFedJunior: Ember.computed('proposalsNonFedJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'modifiedHitRateNonFedJunior', 'transferredInNonFedJunior', function () {\n      var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects');\n      var modifiedHitRate = this.modifiedHitRateNonFedJunior;\n      var successesArray = [];\n\n      for (var i = 0; i < this.yearsAhead; i++) {\n        var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNonFedJunior, this.proposalNonFedJuniorAvgCount, this.get('recruitment.proposalNonFedJuniorAvgTotal'), true);\n        successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n      }\n\n      return this.sumArrays(successesArray, this.transferredInNonFedJunior);\n    })\n  }, _defineProperty(_Ember$Mixin$create, \"successesNonFedJunior\", Ember.computed('proposalsNonFedJunior.[]', 'model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'modifiedHitRateNonFedJunior', 'transferredInNonFedJunior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects');\n    var modifiedHitRate = this.modifiedHitRateNonFedJunior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNonFedJunior, this.proposalNonFedJuniorAvgCount, this.get('recruitment.proposalNonFedJuniorAvgTotal'), true);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    }\n\n    return this.sumArrays(successesArray, this.transferredInNonFedJunior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor5Junior\", Ember.computed('proposalsSponsor5Junior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'modifiedHitRateSponsor5Junior', 'transferredInSponsor5Junior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor5Junior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor5Junior, this.proposalSponsor5JuniorAvgCount, this.get('recruitment.proposalSponsor5JuniorAvgTotal'), true);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    }\n\n    return this.sumArrays(successesArray, this.transferredInSponsor5Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor6Junior\", Ember.computed('proposalsSponsor6Junior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'modifiedHitRateSponsor6Junior', 'transferredInSponsor6Junior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor6Junior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor6Junior, this.proposalSponsor6JuniorAvgCount, this.get('recruitment.proposalSponsor6JuniorAvgTotal'), true);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    }\n\n    return this.sumArrays(successesArray, this.transferredInSponsor6Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor7Junior\", Ember.computed('proposalsSponsor7Junior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'modifiedHitRateSponsor7Junior', 'transferredInSponsor7Junior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor7Junior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor7Junior, this.proposalSponsor7JuniorAvgCount, this.get('recruitment.proposalSponsor7JuniorAvgTotal'), true);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    }\n\n    return this.sumArrays(successesArray, this.transferredInSponsor7Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesTotalJunior\", Ember.computed('successesNihkJunior.[]', 'successesNihrJunior.[]', 'successesOtherFedJunior.[]', 'successesFftJunior.[]', 'successesNonFedJunior', 'successesSponsor5Junior', 'successesSponsor6Junior', 'successesSponsor7Junior', function () {\n    return this.sumArrays(this.successesNihkJunior, this.successesNihrJunior, this.successesOtherFedJunior, this.successesFftJunior, this.successesNonFedJunior, this.successesSponsor5Junior, this.successesSponsor6Junior, this.successesSponsor7Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesIndirectsJunior\", Ember.computed('successesNihkJunior', 'successesNihrJunior', 'successesOtherFedJunior', 'successesFftJunior', 'successesNonFedJunior', 'successesSponsor5Junior', 'successesSponsor6Junior', 'successesSponsor7Junior', 'currentUser.team.{icrNihk,icrNihr,icrOtherFed,icrFedFlowThru,icrNonFed}', function () {\n    var icrNihk = this.get('currentUser.team.icrNihk');\n    var icrNihr = this.get('currentUser.team.icrNihr');\n    var icrOtherFed = this.get('currentUser.team.icrOtherFed');\n    var icrFft = this.get('currentUser.team.icrFedFlowThru');\n    var icrNonFed = this.get('currentUser.team.icrNonFed');\n    var icrSponsor5 = this.get('currentUser.team.icrSponsor5');\n    var icrSponsor6 = this.get('currentUser.team.icrSponsor6');\n    var icrSponsor7 = this.get('currentUser.team.icrSponsor7');\n    return this.sumArrays(this.calculateIndirectsFromTotal(this.successesNihkJunior, icrNihk), this.calculateIndirectsFromTotal(this.successesNihrJunior, icrNihr), this.calculateIndirectsFromTotal(this.successesOtherFedJunior, icrOtherFed), this.calculateIndirectsFromTotal(this.successesFftJunior, icrFft), this.calculateIndirectsFromTotal(this.successesNonFedJunior, icrNonFed), this.calculateIndirectsFromTotal(this.successesSponsor5Junior, icrSponsor5), this.calculateIndirectsFromTotal(this.successesSponsor6Junior, icrSponsor6), this.calculateIndirectsFromTotal(this.successesSponsor7Junior, icrSponsor7));\n  })), _defineProperty(_Ember$Mixin$create, \"successesDirectsJunior\", Ember.computed('successesTotalJunior', function () {\n    return this.subtractTwoArrays(this.successesTotalJunior, this.successesIndirectsJunior);\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNihkJunior\", Ember.computed('recruitment.successNihkJuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this2 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this2.calculateRecruitTransferredIn(_this2.get('recruitment.successNihkJuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNihrJunior\", Ember.computed('recruitment.successNihrJuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this3 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this3.calculateRecruitTransferredIn(_this3.get('recruitment.successNihrKJuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInOtherFedJunior\", Ember.computed('recruitment.successOtherFedJuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this4 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this4.calculateRecruitTransferredIn(_this4.get('recruitment.successOtherFedJuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInFftJunior\", Ember.computed('recruitment.successFftJuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this5 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this5.calculateRecruitTransferredIn(_this5.get('recruitment.successFftJuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNonFedJunior\", Ember.computed('recruitment.successNonFedJuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this6 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this6.calculateRecruitTransferredIn(_this6.get('recruitment.successNonFedJuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor5Junior\", Ember.computed('recruitment.successSponsor5JuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this7 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this7.calculateRecruitTransferredIn(_this7.get('recruitment.successSponsor5JuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor6Junior\", Ember.computed('recruitment.successSponsor6JuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this8 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this8.calculateRecruitTransferredIn(_this8.get('recruitment.successSponsor6JuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor7Junior\", Ember.computed('recruitment.successSponsor7JuniorTransferredInAvgTotal', 'recruitsJunior.@each.value', function () {\n    var _this9 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this9.calculateRecruitTransferredIn(_this9.get('recruitment.successSponsor7JuniorTransferredInAvgTotal'), i + 1, true);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNihkJunior\", Ember.computed('successesNihkJunior', function () {\n    var _this10 = this;\n\n    var successes = this.successesNihkJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this10.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNihrJunior\", Ember.computed('successesNihrJunior', function () {\n    var _this11 = this;\n\n    var successes = this.successesNihrJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this11.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOtherFedJunior\", Ember.computed('successesOtherFedJunior', function () {\n    var _this12 = this;\n\n    var successes = this.successesOtherFedJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this12.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingFftJunior\", Ember.computed('successesFftJunior', function () {\n    var _this13 = this;\n\n    var successes = this.successesFftJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationFft');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this13.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNonFedJunior\", Ember.computed('successesNonFedJunior', function () {\n    var _this14 = this;\n\n    var successes = this.successesNonFedJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this14.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor5Junior\", Ember.computed('successesSponsor5Junior', function () {\n    var _this15 = this;\n\n    var successes = this.successesSponsor5Junior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this15.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor6Junior\", Ember.computed('successesSponsor6Junior', function () {\n    var _this16 = this;\n\n    var successes = this.successesSponsor6Junior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this16.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor7Junior\", Ember.computed('successesSponsor7Junior', function () {\n    var _this17 = this;\n\n    var successes = this.successesSponsor7Junior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this17.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNihkJunior\", Ember.computed('projectedSpendingNihkJunior', 'currentUser.team.icrNihk', function () {\n    var total = this.projectedSpendingNihkJunior;\n    var icr = this.get('currentUser.team.icrNihk');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNihrJunior\", Ember.computed('projectedSpendingNihrJunior', 'currentUser.team.icrNihr', function () {\n    var total = this.projectedSpendingNihrJunior;\n    var icr = this.get('currentUser.team.icrNihr');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsOtherFedJunior\", Ember.computed('projectedSpendingOtherFedJunior', 'currentUser.team.icrOtherFed', function () {\n    var total = this.projectedSpendingOtherFedJunior;\n    var icr = this.get('currentUser.team.icrOtherFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsFftJunior\", Ember.computed('projectedSpendingFftJunior', 'currentUser.team.icrFft', function () {\n    var total = this.projectedSpendingFftJunior;\n    var icr = this.get('currentUser.team.icrFedFlowThru');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNonFedJunior\", Ember.computed('projectedSpendingNonFedJunior', 'currentUser.team.icrNonFed', function () {\n    var total = this.projectedSpendingNonFedJunior;\n    var icr = this.get('currentUser.team.icrNonFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor5Junior\", Ember.computed('projectedSpendingSponsor5Junior', 'currentUser.team.icrSponsor5', function () {\n    var total = this.projectedSpendingSponsor5Junior;\n    var icr = this.get('currentUser.team.icrSponsor5');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor6Junior\", Ember.computed('projectedSpendingSponsor6Junior', 'currentUser.team.icrSponsor6', function () {\n    var total = this.projectedSpendingSponsor6Junior;\n    var icr = this.get('currentUser.team.icrSponsor6');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor7Junior\", Ember.computed('projectedSpendingSponsor7Junior', 'currentUser.team.icrSponsor7', function () {\n    var total = this.projectedSpendingSponsor7Junior;\n    var icr = this.get('currentUser.team.icrSponsor7');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingTotalJunior\", Ember.computed('projectedSpendingNihkJunior.[]', 'projectedSpendingNihrJunior.[]', 'projectedSpendingOtherFedJunior.[]', 'projectedSpendingFftJunior.[]', 'projectedSpendingNonFedJunior.[]', 'projectedSpendingSponsor5Junior.[]', 'projectedSpendingSponsor6Junior.[]', 'projectedSpendingSponsor7Junior.[]', function () {\n    return this.sumArrays(this.projectedSpendingNihkJunior, this.projectedSpendingNihrJunior, this.projectedSpendingOtherFedJunior, this.projectedSpendingFftJunior, this.projectedSpendingNonFedJunior, this.projectedSpendingSponsor5Junior, this.projectedSpendingSponsor6Junior, this.projectedSpendingSponsor7Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsJunior\", Ember.computed('projectedSpendingIndirectsNihkJunior.[]', 'projectedSpendingIndirectsNihrJunior.[]', 'projectedSpendingIndirectsOtherFedJunior.[]', 'projectedSpendingIndirectsFftJunior.[]', 'projectedSpendingIndirectsNonFedJunior.[]', 'projectedSpendingIndirectsSponsor5Junior.[]', 'projectedSpendingIndirectsSponsor6Junior.[]', 'projectedSpendingIndirectsSponsor7Junior.[]', function () {\n    return this.sumArrays(this.projectedSpendingIndirectsNihkJunior, this.projectedSpendingIndirectsNihrJunior, this.projectedSpendingIndirectsOtherFedJunior, this.projectedSpendingIndirectsFftJunior, this.projectedSpendingIndirectsNonFedJunior, this.projectedSpendingIndirectsSponsor5Junior, this.projectedSpendingIndirectsSponsor6Junior, this.projectedSpendingIndirectsSponsor7Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingDirectsJunior\", Ember.computed('projectedSpendingTotalJunior.[]', function () {\n    return this.subtractTwoArrays(this.projectedSpendingTotalJunior, this.projectedSpendingIndirectsJunior);\n  })), _defineProperty(_Ember$Mixin$create, \"earliestClassIndexJunior\", Ember.computed('recruitsJunior.@each.value', function () {\n    var index = 0;\n\n    for (var i = 1; i < this.yearsAhead + 1; i++) {\n      var recruits = this.recruitsForYear(i + 1, true);\n\n      if (recruits > 0) {\n        index = i;\n        break;\n      }\n    }\n\n    return index;\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNihkJunior\", Ember.computed('proposalNihkJuniorAvgCount', 'modifiedHitRateNihkJunior', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', function () {\n    var proposalCount = this.proposalNihkJuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihkJuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihkJunior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNihrJunior\", Ember.computed('proposalNihrJuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateNihrJunior', function () {\n    var proposalCount = this.proposalNihrJuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihrJuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihrJunior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassOtherFedJunior\", Ember.computed('proposalOtherFedJuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateOtherFedJunior', function () {\n    var proposalCount = this.proposalOtherFedJuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalOtherFedJuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects');\n    var modifiedHitRate = this.modifiedHitRateOtherFedJunior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassFftJunior\", Ember.computed('proposalFftJuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosFftDirects', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateFftJunior', function () {\n    var proposalCount = this.proposalFftJuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalFftJuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects');\n    var modifiedHitRate = this.modifiedHitRateFftJunior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationFft');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNonFedJunior\", Ember.computed('proposalNonFedJuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateNonFedJunior', function () {\n    var proposalCount = this.proposalNonFedJuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNonFedJuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects');\n    var modifiedHitRate = this.modifiedHitRateNonFedJunior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor5Junior\", Ember.computed('proposalSponsor5JuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateSponsor5Junior', function () {\n    var proposalCount = this.proposalSponsor5JuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor5JuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor5Junior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor6Junior\", Ember.computed('proposalSponsor6JuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateSponsor6Junior', function () {\n    var proposalCount = this.proposalSponsor6JuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor6JuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor6Junior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor7Junior\", Ember.computed('proposalSponsor7JuniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'recruitsJunior.@each.value', 'earliestClassIndexJunior', 'modifiedHitRateSponsor7Junior', function () {\n    var proposalCount = this.proposalSponsor7JuniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor7JuniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor7Junior;\n    var classIndex = this.earliestClassIndexJunior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, true);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNihkJunior\", Ember.computed('projectedSpendingOneClassNihkJunior', 'currentUser.team.icrNihk', function () {\n    var total = this.projectedSpendingOneClassNihkJunior;\n    var icr = this.get('currentUser.team.icrNihk');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNihrJunior\", Ember.computed('projectedSpendingOneClassNihrJunior', 'currentUser.team.icrNihr', function () {\n    var total = this.projectedSpendingOneClassNihrJunior;\n    var icr = this.get('currentUser.team.icrNihr');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsOtherFedJunior\", Ember.computed('projectedSpendingOneClassOtherFedJunior', 'currentUser.team.icrOtherFed', function () {\n    var total = this.projectedSpendingOneClassOtherFedJunior;\n    var icr = this.get('currentUser.team.icrOtherFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsFftJunior\", Ember.computed('projectedSpendingOneClassFftJunior', 'currentUser.team.icrFft', function () {\n    var total = this.projectedSpendingOneClassFftJunior;\n    var icr = this.get('currentUser.team.icrFedFlowThru');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNonFedJunior\", Ember.computed('projectedSpendingOneClassNonFedJunior', 'currentUser.team.icrNonFed', function () {\n    var total = this.projectedSpendingOneClassNonFedJunior;\n    var icr = this.get('currentUser.team.icrNonFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor5Junior\", Ember.computed('projectedSpendingOneClassSponsor5Junior', 'currentUser.team.icrSponsor5', function () {\n    var total = this.projectedSpendingOneClassSponsor5Junior;\n    var icr = this.get('currentUser.team.icrSponsor5');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor6Junior\", Ember.computed('projectedSpendingOneClassSponsor6Junior', 'currentUser.team.icrSponsor6', function () {\n    var total = this.projectedSpendingOneClassSponsor6Junior;\n    var icr = this.get('currentUser.team.icrSponsor6');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor7Junior\", Ember.computed('projectedSpendingOneClassSponsor7Junior', 'currentUser.team.icrSponsor7', function () {\n    var total = this.projectedSpendingOneClassSponsor7Junior;\n    var icr = this.get('currentUser.team.icrSponsor7');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassTotalJunior\", Ember.computed('projectedSpendingOneClassNihkJunior.[]', 'projectedSpendingOneClassNihrJunior.[]', 'projectedSpendingOneClassOtherFedJunior.[]', 'projectedSpendingOneClassFftJunior.[]', 'projectedSpendingOneClassNonFedJunior.[]', 'projectedSpendingOneClassSponsor5Junior.[]', 'projectedSpendingOneClassSponsor6Junior.[]', 'projectedSpendingOneClassSponsor7Junior.[]', function () {\n    var a = this.sumArrays(this.projectedSpendingOneClassNihkJunior, this.projectedSpendingOneClassNihrJunior, this.projectedSpendingOneClassOtherFedJunior, this.projectedSpendingOneClassFftJunior, this.projectedSpendingOneClassNonFedJunior, this.projectedSpendingOneClassSponsor5Junior, this.projectedSpendingOneClassSponsor6Junior, this.projectedSpendingOneClassSponsor7Junior);\n    return a;\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsJunior\", Ember.computed('projectedSpendingOneClassIndirectsNihkJunior.[]', 'projectedSpendingOneClassIndirectsNihrJunior.[]', 'projectedSpendingOneClassIndirectsOtherFedJunior.[]', 'projectedSpendingOneClassIndirectsFftJunior.[]', 'projectedSpendingOneClassIndirectsNonFedJunior.[]', 'projectedSpendingOneClassIndirectsSponsor5Junior.[]', 'projectedSpendingOneClassIndirectsSponsor6Junior.[]', 'projectedSpendingOneClassIndirectsSponsor7Junior.[]', function () {\n    return this.sumArrays(this.projectedSpendingOneClassIndirectsNihkJunior, this.projectedSpendingOneClassIndirectsNihrJunior, this.projectedSpendingOneClassIndirectsOtherFedJunior, this.projectedSpendingOneClassIndirectsFftJunior, this.projectedSpendingOneClassIndirectsNonFedJunior, this.projectedSpendingOneClassIndirectsSponsor5Junior, this.projectedSpendingOneClassIndirectsSponsor6Junior, this.projectedSpendingOneClassIndirectsSponsor7Junior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassDirectsJunior\", Ember.computed('projectedSpendingOneClassTotalJunior', function () {\n    return this.subtractTwoArrays(this.projectedSpendingOneClassTotalJunior, this.projectedSpendingOneClassIndirectsJunior);\n  })), _defineProperty(_Ember$Mixin$create, \"relinquishedDirectsJunior\", Ember.computed('recruitment.{successJuniorTransferredOutAvgDirects}', 'attritionJunior.@each.value', function () {\n    var _this18 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var terminatedDirects = this.get('recruitment.successJuniorTransferredOutAvgDirects');\n    var termRemaining = this.termRemaining;\n    var terminatedArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var attrition = _this18.attritionForYear(yearsAhead, true);\n\n      return _this18.calculateStartupRelinquished(terminatedDirects, attrition, termRemaining, i + 1);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(terminatedArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"relinquishedIndirectsJunior\", Ember.computed('recruitment.{successJuniorTransferredOutAvgIndrects}', 'attritionJunior.@each.value', function () {\n    var _this19 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var terminatedDirects = this.get('recruitment.successJuniorTransferredOutAvgIndirects');\n    var termRemaining = this.termRemaining;\n    var terminatedArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var attrition = _this19.attritionForYear(yearsAhead, true);\n\n      return _this19.calculateStartupRelinquished(terminatedDirects, attrition, termRemaining, i + 1);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(terminatedArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"startupPackagesJunior\", Ember.computed('startUpSpendYearsJunior', 'startupPackageAmountJunior', 'compensationCoverageStartUpJunior', 'recruitsJunior.@each.value', 'averageTotalCompensationJunior', function () {\n    var _this20 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var startupPackageAmount = this.startupPackageAmountJunior;\n    var termRemaining = this.startUpSpendYearsJunior;\n    var compCoverageStartUp = this.compensationCoverageStartUpJunior;\n    var compensation = this.averageTotalCompensationJunior;\n    var compCoverage = compCoverageStartUp * compensation;\n    var startupArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var recruits = _this20.recruitsForYear(yearsAhead, true); //Add in the compensation coverage\n\n\n      return _this20.calculateStartupRelinquished(startupPackageAmount, recruits, termRemaining, yearsAhead, compCoverage);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(startupArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"compensationReductionJunior\", Ember.computed('compensationCoverageAfterJunior', 'averageTotalCompensationJunior', 'attritionJunior.@each.value', function () {\n    var _this21 = this;\n\n    var yearsAhead = this.yearsAhead;\n\n    var range = _toConsumableArray(Array(yearsAhead).keys());\n\n    var compReductionArrays = range.map(function (i) {\n      var year = i + 1;\n\n      var attrition = _this21.attritionForYear(year, true);\n\n      var reduction = _this21.compensationCoverageAfterJunior * _this21.averageTotalCompensationJunior * attrition;\n      var reductionOneClassArray = Array(yearsAhead).fill(0);\n\n      for (var _i2 = year - 1; _i2 < yearsAhead; _i2++) {\n        reductionOneClassArray[_i2] = reduction;\n      }\n\n      return reductionOneClassArray;\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(compReductionArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"postStartCompensationJunior\", Ember.computed('startUpSpendYearsJunior', 'compensationCoverageAfterJunior', 'averageTotalCompensationJunior', 'recruitsJunior.@each.value', function () {\n    var _this22 = this;\n\n    var yearsAhead = this.yearsAhead;\n\n    var range = _toConsumableArray(Array(yearsAhead).keys());\n\n    var term = this.startUpSpendYearsJunior;\n    var postStartArrays = range.map(function (i) {\n      var year = i + 1;\n\n      var recruits = _this22.recruitsForYear(year, true);\n\n      var compCoverage = _this22.compensationCoverageAfterJunior;\n      var averageComp = _this22.averageTotalCompensationJunior;\n      var postComp = compCoverage * averageComp * recruits;\n      var postCompOneClassArray = Array(yearsAhead).fill(0);\n\n      for (var _i3 = 0; _i3 < yearsAhead; _i3++) {\n        var index = _i3 + (year - 1);\n\n        if (index >= yearsAhead) {\n          break;\n        }\n\n        if (index >= year - 1 + term) {\n          postCompOneClassArray[index] = postComp;\n        }\n      }\n\n      return postCompOneClassArray;\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(postStartArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"netIndirectCostRecoveryJunior\", Ember.computed('projectedSpendingIndirectsJunior.[]', 'relinquishedIndirectsJunior.[]', function () {\n    //Deduct the compensation reduction from the net indirect cost recovery\n    var indirectsArray = this.projectedSpendingIndirectsJunior;\n    var reductionArray = this.relinquishedIndirectsJunior;\n    return this.subtractTwoArrays(indirectsArray, reductionArray);\n  })), _defineProperty(_Ember$Mixin$create, \"netDirectCostRecoveryJunior\", Ember.computed('projectedSpendingDirectsJunior.[]', 'relinquishedDirectsJunior.[]', function () {\n    //Deduct the compensation reduction from the net indirect cost recovery\n    var indirectsArray = this.projectedSpendingDirectsJunior;\n    var reductionArray = this.relinquishedDirectsJunior;\n    return this.subtractTwoArrays(indirectsArray, reductionArray);\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeIndirectCostRecoveryJunior\", Ember.computed('netIndirectCostRecoveryJunior.[]', function () {\n    var netIndirectsArray = this.netIndirectCostRecoveryJunior;\n    return this.cumulativeArray(netIndirectsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"netInvestmentJunior\", Ember.computed('startupPackagesJunior', 'compensationReductionJunior', 'postStartCompensationJunior', 'projectedSpendingDirectsJunior.[]', function () {\n    var startup = this.startupPackagesJunior;\n    var compensationReduction = this.compensationReductionJunior;\n    var postStart = this.postStartCompensationJunior;\n    return this.sumArrays(this.subtractTwoArrays(startup, compensationReduction), postStart);\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeInvestmentJunior\", Ember.computed('netInvestmentJunior.[]', 'recruitsJunior.@each.value', function () {\n    var netInvestmentsArray = this.netInvestmentJunior;\n    return this.cumulativeArray(netInvestmentsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeCashFlowJunior\", Ember.computed('cumulativeInvestmentJunior.[]', 'cumulativeIndirectCostRecoveryJunior.[]', function () {\n    return this.subtractTwoArrays(this.cumulativeIndirectCostRecoveryJunior, this.cumulativeInvestmentJunior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalNihkSeniorAvgCount\", Ember.computed('recruitment.proposalNihkSeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNihkSeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalNihrSeniorAvgCount\", Ember.computed('recruitment.proposalNihrSeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNihrSeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalOtherFedSeniorAvgCount\", Ember.computed('recruitment.proposalOtherFedSeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalOtherFedSeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalFftSeniorAvgCount\", Ember.computed('recruitment.proposalFftSeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalFftSeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalNonFedSeniorAvgCount\", Ember.computed('recruitment.proposalNonFedSeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalNonFedSeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalSponsor5SeniorAvgCount\", Ember.computed('recruitment.proposalSponsor5SeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor5SeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalSponsor6SeniorAvgCount\", Ember.computed('recruitment.proposalSponsor6SeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor6SeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalSponsor7SeniorAvgCount\", Ember.computed('recruitment.proposalSponsor7SeniorAvgCount', 'performanceProposalSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.proposalSponsor7SeniorAvgCount'), this.performanceProposalSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateNihkSenior\", Ember.computed('recruitment.modifiedHitRateNihkSenior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNihkSenior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateNihrSenior\", Ember.computed('recruitment.modifiedHitRateNihrSenior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNihrSenior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateOtherFedSenior\", Ember.computed('recruitment.modifiedHitRateOtherFedkSenior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateOtherFedSenior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateFftSenior\", Ember.computed('recruitment.modifiedHitRateFftSenior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateFftSenior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateNonFedSenior\", Ember.computed('recruitment.modifiedHitRateNonFedSenior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateNonFedSenior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateSponsor5Senior\", Ember.computed('recruitment.modifiedHitRateSponsor5Senior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor5Senior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateSponsor6Senior\", Ember.computed('recruitment.modifiedHitRateSponsor6Senior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor6Senior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"modifiedHitRateSponsor7Senior\", Ember.computed('recruitment.modifiedHitRateSponsor7Senior', 'performanceHitRateSenior', function () {\n    return this.calculateWithPerformanceIndex(this.get('recruitment.modifiedHitRateSponsor7Senior'), this.performanceHitRateSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsNihkSenior\", Ember.computed('recruitment.{proposalNihkSeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalNihkSeniorAvgCount', function () {\n    var proposalCount = this.proposalNihkSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihkSeniorAvgTotal');\n    var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum up each class of recruits to get the final total\n\n\n    var a = this.sumArrays.apply(this, proposalsArray);\n    return a;\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsNihrSenior\", Ember.computed('recruitment.{proposalNihrSeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalNihrSeniorAvgCount', function () {\n    var proposalCount = this.proposalNihrSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihrSeniorAvgTotal');\n    var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum up each class of recruits to get the final total\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsOtherFedSenior\", Ember.computed('recruitment.{proposalOtherFedSeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalOtherFedSeniorAvgCount', function () {\n    var proposalCount = this.proposalOtherFedSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalOtherFedSeniorAvgTotal');\n    var proposalsArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum the arrays across each year to get the total proposals\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsFftSenior\", Ember.computed('recruitment.{proposalFftSeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalFftSeniorAvgCount', function () {\n    var proposalCount = this.proposalFftSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalFftSeniorAvgTotal');\n    var proposalsArray = []; //Calculate the proposal totals for each class of recruits\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum up each class of recruits to get the final total\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsNonFedSenior\", Ember.computed('recruitment.{proposalNonFedSeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalNonFedSeniorAvgCount', function () {\n    var proposalCount = this.proposalNonFedSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNonFedSeniorAvgTotal');\n    var proposalsArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum the arrays across each year to get the total proposals\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsSponsor5Senior\", Ember.computed('recruitment.{proposalSponsor5SeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalSponsor5SeniorAvgCount', function () {\n    var proposalCount = this.proposalSponsor5SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor5SeniorAvgTotal');\n    var proposalsArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum the arrays across each year to get the total proposals\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsSponsor6Senior\", Ember.computed('recruitment.{proposalSponsor6SeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalSponsor6SeniorAvgCount', function () {\n    var proposalCount = this.proposalSponsor6SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor6SeniorAvgTotal');\n    var proposalsArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum the arrays across each year to get the total proposals\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsSponsor7Senior\", Ember.computed('recruitment.{proposalSponsor7SeniorAvgTotal,seniorTerminatedAvgCount}', 'recruitsSenior.@each.value', 'attritionSenior.@each.value', 'proposalSponsor7SeniorAvgCount', function () {\n    var proposalCount = this.proposalSponsor7SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor7SeniorAvgTotal');\n    var proposalsArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      proposalsArray.push(this.calculateRecruitProposals(proposalCount, proposalSize, i, false));\n    } //Sum the arrays across each year to get the total proposals\n\n\n    return this.sumArrays.apply(this, proposalsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsTotalSenior\", Ember.computed('proposalsNihkSenior.[]', 'proposalsNihrSenior.[]', 'proposalsOtherFedSenior.[]', 'proposalsFftSenior.[]', 'proposalsNonFedSenior.[]', 'proposalsSponsor5Senior.[]', 'proposalsSponsor6Senior.[]', 'proposalsSponsor7Senior.[]', function () {\n    return this.sumArrays(this.proposalsNihkSenior, this.proposalsNihrSenior, this.proposalsOtherFedSenior, this.proposalsFftSenior, this.proposalsNonFedSenior, this.proposalsSponsor5Senior, this.proposalsSponsor6Senior, this.proposalsSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsIndirectsSenior\", Ember.computed('proposalsNihkSenior.[]', 'proposalsNihrSenior.[]', 'proposalsOtherFedSenior.[]', 'proposalsFftSenior.[]', 'proposalsNonFedSenior.[]', 'proposalsSponsor5Senior.[]', 'proposalsSponsor6Senior.[]', 'proposalsSponsor7Senior.[]', 'currentUser.team.{icrNihk,icrNihr,icrOtherFed,icrFedFlowThru,icrNonFed,icrSponsor5,icrSponsor6,icrSponsor7}', function () {\n    var icrNihk = this.get('currentUser.team.icrNihk');\n    var icrNihr = this.get('currentUser.team.icrNihr');\n    var icrOtherFed = this.get('currentUser.team.icrOtherFed');\n    var icrFft = this.get('currentUser.team.icrFedFlowThru');\n    var icrNonFed = this.get('currentUser.team.icrNonFed');\n    var icrSponsor5 = this.get('currentUser.team.icrSponsor5');\n    var icrSponsor6 = this.get('currentUser.team.icrSponsor6');\n    var icrSponsor7 = this.get('currentUser.team.icrSponsor7');\n    return this.sumArrays(this.calculateIndirectsFromTotal(this.proposalsNihkSenior, icrNihk), this.calculateIndirectsFromTotal(this.proposalsNihrSenior, icrNihr), this.calculateIndirectsFromTotal(this.proposalsOtherFedSenior, icrOtherFed), this.calculateIndirectsFromTotal(this.proposalsFftSenior, icrFft), this.calculateIndirectsFromTotal(this.proposalsNonFedSenior, icrNonFed), this.calculateIndirectsFromTotal(this.proposalsSponsor5Senior, icrSponsor5), this.calculateIndirectsFromTotal(this.proposalsSponsor6Senior, icrSponsor6), this.calculateIndirectsFromTotal(this.proposalsSponsor7Senior, icrSponsor7));\n  })), _defineProperty(_Ember$Mixin$create, \"proposalsDirectsSenior\", Ember.computed('proposalsTotalSenior', function () {\n    return this.subtractTwoArrays(this.proposalsTotalSenior, this.proposalsIndirectsSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesNihkSenior\", Ember.computed('proposalsNihkSenior.[]', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'modifiedHitRateNihkSenior', 'transferredInNihkSenior', function () {\n    //Returns an array of projected successes for recruits\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihkSenior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNihkSenior, this.proposalNihkSeniorAvgCount, this.get('recruitment.proposalNihkSeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInNihkSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesNihrSenior\", Ember.computed('proposalsNihrSenior.[]', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'modifiedHitRateNihrSenior', 'transferredInNihrSenior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihrSenior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNihrSenior, this.proposalNihrSeniorAvgCount, this.get('recruitment.proposalNihrSeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInNihrSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesOtherFedSenior\", Ember.computed('proposalsOtherFedSenior.[]', 'model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'modifiedHitRateOtherFedSenior', 'transferredInOtherFedSenior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects');\n    var modifiedHitRate = this.modifiedHitRateOtherFedSenior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsOtherFedSenior, this.proposalOtherFedSeniorAvgCount, this.get('recruitment.proposalOtherFedSeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInOtherFedSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesFftSenior\", Ember.computed('proposalsFftSenior.[]', 'model.projection.yoneYtwoDerivativeRatiosfftDirects', 'modifiedHitRateFftSenior', 'transferredInFftSenior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects');\n    var modifiedHitRate = this.modifiedHitRateFftSenior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsFftSenior, this.proposalFftSeniorAvgCount, this.get('recruitment.proposalFftSeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInFftSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesNonFedSenior\", Ember.computed('proposalsNonFedSenior.[]', 'model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'modifiedHitRateNonFedSenior', 'transferredInNonFedSenior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects');\n    var modifiedHitRate = this.modifiedHitRateNonFedSenior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsNonFedSenior, this.proposalNonFedSeniorAvgCount, this.get('recruitment.proposalNonFedSeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInNonFedSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor5Senior\", Ember.computed('proposalsSponsor5Senior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'modifiedHitRateSponsor5Senior', 'transferredInSponsor5Senior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor5Senior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor5Senior, this.proposalSponsor5SeniorAvgCount, this.get('recruitment.proposalSponsor5SeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInSponsor5Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor6Senior\", Ember.computed('proposalsSponsor6Senior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'modifiedHitRateSponsor6Senior', 'transferredInSponsor6Senior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor6Senior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor6Senior, this.proposalSponsor6SeniorAvgCount, this.get('recruitment.proposalSponsor6SeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInSponsor6Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesSponsor7Senior\", Ember.computed('proposalsSponsor7Senior.[]', 'model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'modifiedHitRateSponsor7Senior', 'transferredInSponsor7Senior', function () {\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor7Senior;\n    var successesArray = [];\n\n    for (var i = 0; i < this.yearsAhead; i++) {\n      var proposals = this.calculateRecruitProposalsWithoutTransferredIn(i, this.proposalsSponsor7Senior, this.proposalSponsor7SeniorAvgCount, this.get('recruitment.proposalSponsor7SeniorAvgTotal'), false);\n      successesArray.push(this.calculateOneClassRecruitSuccesses(y1y2, proposals, modifiedHitRate, i));\n    } //Also add in transferred in successes\n\n\n    return this.sumArrays(successesArray, this.transferredInSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesTotalSenior\", Ember.computed('successesNihkSenior', 'successesNihrSenior', 'successesOtherFedSenior', 'successesFftSenior', 'successesNonFedSenior', 'successesSponsor5Senior', 'successesSponsor6Senior', 'successesSponsor7Senior', function () {\n    return this.sumArrays(this.successesNihkSenior, this.successesNihrSenior, this.successesOtherFedSenior, this.successesFftSenior, this.successesNonFedSenior, this.successesSponsor5Senior, this.successesSponsor6Senior, this.successesSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"successesIndirectsSenior\", Ember.computed('successesNihkSenior', 'successesNihrSenior', 'successesOtherFedSenior', 'successesFftSenior', 'successesNonFedSenior', 'successesSponsor5Senior', 'successesSponsor6Senior', 'successesSponsor7Senior', 'currentUser.team.{icrNihk,icrNihr,icrOtherFed,icrFedFlowThru,icrNonFed,icrSponsor5,icrSponsor6,icrSponsor7}', function () {\n    var icrNihk = this.get('currentUser.team.icrNihk');\n    var icrNihr = this.get('currentUser.team.icrNihr');\n    var icrOtherFed = this.get('currentUser.team.icrOtherFed');\n    var icrFft = this.get('currentUser.team.icrFedFlowThru');\n    var icrNonFed = this.get('currentUser.team.icrNonFed');\n    var icrSponsor5 = this.get('currentUser.team.icrSponsor5');\n    var icrSponsor6 = this.get('currentUser.team.icrSponsor6');\n    var icrSponsor7 = this.get('currentUser.team.icrSponsor7');\n    return this.sumArrays(this.calculateIndirectsFromTotal(this.successesNihkSenior, icrNihk), this.calculateIndirectsFromTotal(this.successesNihrSenior, icrNihr), this.calculateIndirectsFromTotal(this.successesOtherFedSenior, icrOtherFed), this.calculateIndirectsFromTotal(this.successesFftSenior, icrFft), this.calculateIndirectsFromTotal(this.successesNonFedSenior, icrNonFed), this.calculateIndirectsFromTotal(this.successesSponsor5Senior, icrSponsor5), this.calculateIndirectsFromTotal(this.successesSponsor6Senior, icrSponsor6), this.calculateIndirectsFromTotal(this.successesSponsor7Senior, icrSponsor7));\n  })), _defineProperty(_Ember$Mixin$create, \"successesDirectsSenior\", Ember.computed('successesTotalSenior', function () {\n    return this.subtractTwoArrays(this.successesTotalSenior, this.successesIndirectsSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNihkSenior\", Ember.computed('recruitment.successNihkSeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this23 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this23.calculateRecruitTransferredIn(_this23.get('recruitment.successNihkSeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNihrSenior\", Ember.computed('recruitment.successNihrSeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this24 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this24.calculateRecruitTransferredIn(_this24.get('recruitment.successNihrKSeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInOtherFedSenior\", Ember.computed('recruitment.successOtherFedSeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this25 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this25.calculateRecruitTransferredIn(_this25.get('recruitment.successOtherFedSeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInFftSenior\", Ember.computed('recruitment.successFftSeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this26 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this26.calculateRecruitTransferredIn(_this26.get('recruitment.successFftSeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInNonFedSenior\", Ember.computed('recruitment.successNonFedSeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this27 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this27.calculateRecruitTransferredIn(_this27.get('recruitment.successNonFedSeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor5Senior\", Ember.computed('recruitment.successSponsor5SeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this28 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this28.calculateRecruitTransferredIn(_this28.get('recruitment.successSponsor5SeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor6Senior\", Ember.computed('recruitment.successSponsor6SeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this29 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this29.calculateRecruitTransferredIn(_this29.get('recruitment.successSponsor6SeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"transferredInSponsor7Senior\", Ember.computed('recruitment.successSponsor7SeniorTransferredInAvgTotal', 'recruitsSenior.@each.value', function () {\n    var _this30 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    return range.map(function (i) {\n      return _this30.calculateRecruitTransferredIn(_this30.get('recruitment.successSponsor7SeniorTransferredInAvgTotal'), i + 1, false);\n    });\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNihkSenior\", Ember.computed('successesNihkSenior', function () {\n    var _this31 = this;\n\n    var successes = this.successesNihkSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this31.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNihrSenior\", Ember.computed('successesNihrSenior', function () {\n    var _this32 = this;\n\n    var successes = this.successesNihrSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this32.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOtherFedSenior\", Ember.computed('successesOtherFedSenior', function () {\n    var _this33 = this;\n\n    var successes = this.successesOtherFedSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this33.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingFftSenior\", Ember.computed('successesFftSenior', function () {\n    var _this34 = this;\n\n    var successes = this.successesFftSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationFft');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this34.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingNonFedSenior\", Ember.computed('successesNonFedSenior', function () {\n    var _this35 = this;\n\n    var successes = this.successesNonFedSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this35.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor5Senior\", Ember.computed('successesSponsor5Senior', function () {\n    var _this36 = this;\n\n    var successes = this.successesSponsor5Senior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this36.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor6Senior\", Ember.computed('successesSponsor6Senior', function () {\n    var _this37 = this;\n\n    var successes = this.successesSponsor6Senior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this37.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingSponsor7Senior\", Ember.computed('successesSponsor7Senior', function () {\n    var _this38 = this;\n\n    var successes = this.successesSponsor7Senior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var spendingArray = range.map(function (i) {\n      return range.map(function (j) {\n        return _this38.calculateProjectedSpending(wad, successes, j + 1, i);\n      });\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(spendingArray));\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNihkSenior\", Ember.computed('projectedSpendingNihkSenior', 'currentUser.team.icrNihk', function () {\n    var total = this.projectedSpendingNihkSenior;\n    var icr = this.get('currentUser.team.icrNihk');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNihrSenior\", Ember.computed('projectedSpendingNihrSenior', 'currentUser.team.icrNihr', function () {\n    var total = this.projectedSpendingNihrSenior;\n    var icr = this.get('currentUser.team.icrNihr');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsOtherFedSenior\", Ember.computed('projectedSpendingOtherFedSenior', 'currentUser.team.icrOtherFed', function () {\n    var total = this.projectedSpendingOtherFedSenior;\n    var icr = this.get('currentUser.team.icrOtherFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsFftSenior\", Ember.computed('projectedSpendingFftSenior', 'currentUser.team.icrFft', function () {\n    var total = this.projectedSpendingFftSenior;\n    var icr = this.get('currentUser.team.icrFedFlowThru');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsNonFedSenior\", Ember.computed('projectedSpendingNonFedSenior', 'currentUser.team.icrNonFed', function () {\n    var total = this.projectedSpendingNonFedSenior;\n    var icr = this.get('currentUser.team.icrNonFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor5Senior\", Ember.computed('projectedSpendingSponsor5Senior', 'currentUser.team.icrSponsor5', function () {\n    var total = this.projectedSpendingSponsor5Senior;\n    var icr = this.get('currentUser.team.icrSponsor5');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor6Senior\", Ember.computed('projectedSpendingSponsor6Senior', 'currentUser.team.icrSponsor6', function () {\n    var total = this.projectedSpendingSponsor6Senior;\n    var icr = this.get('currentUser.team.icrSponsor6');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSponsor7Senior\", Ember.computed('projectedSpendingSponsor7Senior', 'currentUser.team.icrSponsor7', function () {\n    var total = this.projectedSpendingSponsor7Senior;\n    var icr = this.get('currentUser.team.icrSponsor7');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingTotalSenior\", Ember.computed('projectedSpendingNihkSenior.[]', 'projectedSpendingNihrSenior.[]', 'projectedSpendingOtherFedSenior.[]', 'projectedSpendingFftSenior.[]', 'projectedSpendingNonFedSenior.[]', 'projectedSpendingSponsor5Senior.[]', 'projectedSpendingSponsor6Senior.[]', 'projectedSpendingSponsor7Senior.[]', function () {\n    return this.sumArrays(this.projectedSpendingNihkSenior, this.projectedSpendingNihrSenior, this.projectedSpendingOtherFedSenior, this.projectedSpendingFftSenior, this.projectedSpendingNonFedSenior, this.projectedSpendingSponsor5Senior, this.projectedSpendingSponsor6Senior, this.projectedSpendingSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingIndirectsSenior\", Ember.computed('projectedSpendingIndirectsNihkSenior.[]', 'projectedSpendingIndirectsNihrSenior.[]', 'projectedSpendingIndirectsOtherFedSenior.[]', 'projectedSpendingIndirectsFftSenior.[]', 'projectedSpendingIndirectsNonFedSenior.[]', 'projectedSpendingIndirectsSponsor5Senior.[]', 'projectedSpendingIndirectsSponsor6Senior.[]', 'projectedSpendingIndirectsSponsor7Senior.[]', function () {\n    return this.sumArrays(this.projectedSpendingIndirectsNihkSenior, this.projectedSpendingIndirectsNihrSenior, this.projectedSpendingIndirectsOtherFedSenior, this.projectedSpendingIndirectsFftSenior, this.projectedSpendingIndirectsNonFedSenior, this.projectedSpendingIndirectsSponsor5Senior, this.projectedSpendingIndirectsSponsor6Senior, this.projectedSpendingIndirectsSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingDirectsSenior\", Ember.computed('projectedSpendingTotalSenior', function () {\n    return this.subtractTwoArrays(this.projectedSpendingTotalSenior, this.projectedSpendingIndirectsSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"earliestClassIndexSenior\", Ember.computed('recruitsSenior.@each.value', function () {\n    var index = 0;\n\n    for (var i = 0; i < this.yearsAhead + 1; i++) {\n      var recruits = this.recruitsForYear(i + 1, false);\n\n      if (recruits > 0) {\n        index = i;\n        break;\n      }\n    }\n\n    return index;\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNihkSenior\", Ember.computed('proposalNihkSeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateNihkSenior', function () {\n    var proposalCount = this.proposalNihkSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihkSeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihkSenior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNihrSenior\", Ember.computed('proposalNihrSeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosNihDirects', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateNihrSenior', function () {\n    var proposalCount = this.proposalNihrSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNihrSeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNihDirects');\n    var modifiedHitRate = this.modifiedHitRateNihrSenior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNih');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassOtherFedSenior\", Ember.computed('proposalOtherFedSeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosOtherFedDirects', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateOtherFedSenior', function () {\n    var proposalCount = this.proposalOtherFedSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalOtherFedSeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosOtherFedDirects');\n    var modifiedHitRate = this.modifiedHitRateOtherFedSenior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationOtherFed');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassFftSenior\", Ember.computed('proposalFftSeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosFftDirects', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateFftSenior', function () {\n    var proposalCount = this.proposalFftSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalFftSeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosFedFlowThruDirects');\n    var modifiedHitRate = this.modifiedHitRateFftSenior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationFft');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassNonFedSenior\", Ember.computed('proposalNonFedSeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosNonFedDirects', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateNonFedSenior', function () {\n    var proposalCount = this.proposalNonFedSeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalNonFedSeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosNonFedDirects');\n    var modifiedHitRate = this.modifiedHitRateNonFedSenior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationNonFed');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor5Senior\", Ember.computed('proposalSponsor5SeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor5Directs', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateSponsor5Senior', function () {\n    var proposalCount = this.proposalSponsor5SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor5SeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor5Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor5Senior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor5');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor6Senior\", Ember.computed('proposalSponsor6SeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor6Directs', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateSponsor6Senior', function () {\n    var proposalCount = this.proposalSponsor6SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor6SeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor6Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor6Senior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor6');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassSponsor7Senior\", Ember.computed('proposalSponsor7SeniorAvgCount', 'model.projection.yoneYtwoDerivativeRatiosSponsor7Directs', 'recruitsSenior.@each.value', 'earliestClassIndexSenior', 'modifiedHitRateSponsor7Senior', function () {\n    var proposalCount = this.proposalSponsor7SeniorAvgCount;\n    var proposalSize = this.get('recruitment.proposalSponsor7SeniorAvgTotal');\n    var y1y2 = this.get('model.projection.yoneYtwoDerivativeRatiosSponsor7Directs');\n    var modifiedHitRate = this.modifiedHitRateSponsor7Senior;\n    var classIndex = this.earliestClassIndexSenior;\n    var wad = this.get('currentUser.team.weightedAverageDurationSponsor7');\n    return this.calculateProjectedSpendingOneClass(proposalCount, proposalSize, y1y2, wad, modifiedHitRate, classIndex, false);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNihkSenior\", Ember.computed('projectedSpendingOneClassNihkSenior', 'currentUser.team.icrNihk', function () {\n    var total = this.projectedSpendingOneClassNihkSenior;\n    var icr = this.get('currentUser.team.icrNihk');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNihrSenior\", Ember.computed('projectedSpendingOneClassNihrSenior', 'currentUser.team.icrNihr', function () {\n    var total = this.projectedSpendingOneClassNihrSenior;\n    var icr = this.get('currentUser.team.icrNihr');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsOtherFedSenior\", Ember.computed('projectedSpendingOneClassOtherFedSenior', 'currentUser.team.icrOtherFed', function () {\n    var total = this.projectedSpendingOneClassOtherFedSenior;\n    var icr = this.get('currentUser.team.icrOtherFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsFftSenior\", Ember.computed('projectedSpendingOneClassFftSenior', 'currentUser.team.icrFft', function () {\n    var total = this.projectedSpendingOneClassFftSenior;\n    var icr = this.get('currentUser.team.icrFedFlowThru');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsNonFedSenior\", Ember.computed('projectedSpendingOneClassNonFedSenior', 'currentUser.team.icrNonFed', function () {\n    var total = this.projectedSpendingOneClassNonFedSenior;\n    var icr = this.get('currentUser.team.icrNonFed');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor5Senior\", Ember.computed('projectedSpendingOneClassSponsor5Senior', 'currentUser.team.icrSponsor5', function () {\n    var total = this.projectedSpendingOneClassSponsor5Senior;\n    var icr = this.get('currentUser.team.icrSponsor5');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor6Senior\", Ember.computed('projectedSpendingOneClassSponsor6Senior', 'currentUser.team.icrSponsor6', function () {\n    var total = this.projectedSpendingOneClassSponsor6Senior;\n    var icr = this.get('currentUser.team.icrSponsor6');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSponsor7Senior\", Ember.computed('projectedSpendingOneClassSponsor7Senior', 'currentUser.team.icrSponsor7', function () {\n    var total = this.projectedSpendingOneClassSponsor7Senior;\n    var icr = this.get('currentUser.team.icrSponsor7');\n    return this.calculateIndirectsFromTotal(total, icr);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassTotalSenior\", Ember.computed('projectedSpendingOneClassNihkSenior.[]', 'projectedSpendingOneClassNihrSenior.[]', 'projectedSpendingOneClassOtherFedSenior.[]', 'projectedSpendingOneClassFftSenior.[]', 'projectedSpendingOneClassNonFedSenior.[]', 'projectedSpendingOneClassSponsor5Senior.[]', 'projectedSpendingOneClassSponsor6Senior.[]', 'projectedSpendingOneClassSponsor7Senior.[]', function () {\n    return this.sumArrays(this.projectedSpendingOneClassNihkSenior, this.projectedSpendingOneClassNihrSenior, this.projectedSpendingOneClassOtherFedSenior, this.projectedSpendingOneClassFftSenior, this.projectedSpendingOneClassNonFedSenior, this.projectedSpendingOneClassSponsor5Senior, this.projectedSpendingOneClassSponsor6Senior, this.projectedSpendingOneClassSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassIndirectsSenior\", Ember.computed('projectedSpendingOneClassIndirectsNihkSenior.[]', 'projectedSpendingOneClassIndirectsNihrSenior.[]', 'projectedSpendingOneClassIndirectsOtherFedSenior.[]', 'projectedSpendingOneClassIndirectsFftSenior.[]', 'projectedSpendingOneClassIndirectsNonFedSenior.[]', 'projectedSpendingOneClassIndirectsSponsor5Senior.[]', 'projectedSpendingOneClassIndirectsSponsor6Senior.[]', 'projectedSpendingOneClassIndirectsSponsor7Senior.[]', function () {\n    return this.sumArrays(this.projectedSpendingOneClassIndirectsNihkSenior, this.projectedSpendingOneClassIndirectsNihrSenior, this.projectedSpendingOneClassIndirectsOtherFedSenior, this.projectedSpendingOneClassIndirectsFftSenior, this.projectedSpendingOneClassIndirectsNonFedSenior, this.projectedSpendingOneClassIndirectsSponsor5Senior, this.projectedSpendingOneClassIndirectsSponsor6Senior, this.projectedSpendingOneClassIndirectsSponsor7Senior);\n  })), _defineProperty(_Ember$Mixin$create, \"projectedSpendingOneClassDirectsSenior\", Ember.computed('projectedSpendingOneClassTotalSenior', function () {\n    return this.subtractTwoArrays(this.projectedSpendingOneClassTotalSenior, this.projectedSpendingOneClassIndirectsSenior);\n  })), _defineProperty(_Ember$Mixin$create, \"relinquishedDirectsSenior\", Ember.computed('recruitment.{successSeniorTransferredOutAvgDirects}', 'attritionSenior.@each.value', function () {\n    var _this39 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var terminatedDirects = this.get('recruitment.successSeniorTransferredOutAvgDirects');\n    var termRemaining = this.termRemaining;\n    var terminatedArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var attrition = _this39.attritionForYear(yearsAhead, false);\n\n      return _this39.calculateStartupRelinquished(terminatedDirects, attrition, termRemaining, i + 1);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(terminatedArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"relinquishedIndirectsSenior\", Ember.computed('recruitment.{successSeniorTransferredOutAvgIndrects}', 'attritionSenior.@each.value', function () {\n    var _this40 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var terminatedDirects = this.get('recruitment.successSeniorTransferredOutAvgIndirects');\n    var termRemaining = this.termRemaining;\n    var terminatedArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var attrition = _this40.attritionForYear(yearsAhead, false);\n\n      return _this40.calculateStartupRelinquished(terminatedDirects, attrition, termRemaining, i + 1);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(terminatedArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"startupPackagesSenior\", Ember.computed('startUpSpendYearsSenior', 'startupPackageAmountSenior', 'compensationCoverageStartUpSenior', 'recruitsSenior.@each.value', 'averageTotalCompensationSenior', function () {\n    var _this41 = this;\n\n    var range = _toConsumableArray(Array(this.yearsAhead).keys());\n\n    var startupPackageAmount = this.startupPackageAmountSenior;\n    var termRemaining = this.startUpSpendYearsSenior;\n    var compCoverageStartUp = this.compensationCoverageStartUpSenior;\n    var compensation = this.averageTotalCompensationSenior;\n    var compCoverage = compCoverageStartUp * compensation;\n    var startupArrays = range.map(function (i) {\n      var yearsAhead = i + 1;\n\n      var recruits = _this41.recruitsForYear(yearsAhead, false);\n\n      return _this41.calculateStartupRelinquished(startupPackageAmount, recruits, termRemaining, yearsAhead, compCoverage);\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(startupArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"compensationReductionSenior\", Ember.computed('compensationCoverageAfterSenior', 'averageTotalCompensationSenior', 'attritionSenior.@each.value', function () {\n    var _this42 = this;\n\n    var yearsAhead = this.yearsAhead;\n\n    var range = _toConsumableArray(Array(yearsAhead).keys());\n\n    var compReductionArrays = range.map(function (i) {\n      var year = i + 1;\n\n      var attrition = _this42.attritionForYear(year, false);\n\n      var reduction = _this42.compensationCoverageAfterSenior * _this42.averageTotalCompensationSenior * attrition;\n      var reductionOneClassArray = Array(yearsAhead).fill(0);\n\n      for (var _i4 = year - 1; _i4 < yearsAhead; _i4++) {\n        reductionOneClassArray[_i4] = reduction;\n      }\n\n      return reductionOneClassArray;\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(compReductionArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"postStartCompensationSenior\", Ember.computed('startUpSpendYearsSenior', 'compensationCoverageAfterSenior', 'averageTotalCompensationSenior', 'recruitsSenior.@each.value', function () {\n    var _this43 = this;\n\n    var yearsAhead = this.yearsAhead;\n\n    var range = _toConsumableArray(Array(yearsAhead).keys());\n\n    var term = this.startUpSpendYearsSenior;\n    var postStartArrays = range.map(function (i) {\n      var year = i + 1;\n\n      var recruits = _this43.recruitsForYear(year, false);\n\n      var compCoverage = _this43.compensationCoverageAfterSenior;\n      var averageComp = _this43.averageTotalCompensationSenior;\n      var postComp = compCoverage * averageComp * recruits;\n      var postCompOneClassArray = Array(yearsAhead).fill(0);\n\n      for (var _i5 = 0; _i5 < yearsAhead; _i5++) {\n        var index = _i5 + (year - 1);\n\n        if (index >= year - 1 + term) {\n          postCompOneClassArray[index] = postComp;\n        }\n      }\n\n      return postCompOneClassArray;\n    });\n    return this.sumArrays.apply(this, _toConsumableArray(postStartArrays));\n  })), _defineProperty(_Ember$Mixin$create, \"netIndirectCostRecoverySenior\", Ember.computed('projectedSpendingIndirectsSenior.[]', 'relinquishedIndirectsSenior.[]', function () {\n    //Deduct the compensation reduction from the net indirect cost recovery\n    var indirectsArray = this.projectedSpendingIndirectsSenior;\n    var reductionArray = this.relinquishedIndirectsSenior;\n    return this.subtractTwoArrays(indirectsArray, reductionArray);\n  })), _defineProperty(_Ember$Mixin$create, \"netDirectCostRecoverySenior\", Ember.computed('projectedSpendingDirectsSenior.[]', 'relinquishedDirectsSenior.[]', function () {\n    //Deduct the compensation reduction from the net indirect cost recovery\n    var indirectsArray = this.projectedSpendingDirectsSenior;\n    var reductionArray = this.relinquishedDirectsSenior;\n    return this.subtractTwoArrays(indirectsArray, reductionArray);\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeIndirectCostRecoverySenior\", Ember.computed('netIndirectCostRecoverySenior.[]', function () {\n    var netIndirectsArray = this.netIndirectCostRecoverySenior;\n    return this.cumulativeArray(netIndirectsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"netInvestmentSenior\", Ember.computed('startupPackagesSenior', 'compensationReductionSenior', 'postStartCompensationSenior', 'recruitsSenior.@each.value', function () {\n    var startup = this.startupPackagesSenior;\n    var compensationReduction = this.compensationReductionSenior;\n    var postStart = this.postStartCompensationSenior;\n    return Ember.A(this.sumArrays(this.subtractTwoArrays(startup, compensationReduction), postStart));\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeInvestmentSenior\", Ember.computed('netInvestmentSenior.[]', function () {\n    var netInvestmentsArray = this.netInvestmentSenior;\n    return this.cumulativeArray(netInvestmentsArray);\n  })), _defineProperty(_Ember$Mixin$create, \"cumulativeCashFlowSenior\", Ember.computed('cumulativeInvestmentSenior.[]', 'cumulativeIndirectCostRecoverySenior.[]', function () {\n    return this.subtractTwoArrays(this.cumulativeIndirectCostRecoverySenior, this.cumulativeInvestmentSenior);\n  })), _Ember$Mixin$create));\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/summary-data-rows\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\n  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var _default = Ember.Mixin.create({\n    //Dummy row to show the totals\n    totalData: Ember.computed('meta', function () {\n      var meta = this.meta;\n\n      if (!meta) {\n        return null;\n      }\n\n      return this.getTotalRowData(meta, 'total');\n    }),\n    totalRow: Ember.computed('totalData', 'meta', function () {\n      if (!this.totalData || !this.meta) {\n        return null;\n      }\n\n      return Ember.Object.create(_objectSpread({\n        cellLinkData: {\n          id: 0,\n          name: 'Total',\n          link: null\n        }\n      }, this.totalData));\n    }),\n    //Dummy row to show the institutional totals\n    institutionalTotalData: Ember.computed('meta', function () {\n      var meta = this.meta;\n\n      if (!meta) {\n        return null;\n      }\n\n      return this.getTotalRowData(meta, 'institutional_total');\n    }),\n    getTotalRowData: function getTotalRowData(meta, prefix) {\n      //Check if the predix works on one key\n      if (!(\"\".concat(prefix, \"_actuals_two_years_ago_directs\") in meta)) {\n        return null;\n      }\n\n      return {\n        actualsTwoYearsAgoDirects: meta[\"\".concat(prefix, \"_actuals_two_years_ago_directs\")],\n        actualsTwoYearsAgoIndirects: meta[\"\".concat(prefix, \"_actuals_two_years_ago_indirects\")],\n        actualsOneYearAgoDirects: meta[\"\".concat(prefix, \"_actuals_one_year_ago_directs\")],\n        actualsOneYearAgoIndirects: meta[\"\".concat(prefix, \"_actuals_one_year_ago_indirects\")],\n        ptsCurrentYearDirects: meta[\"\".concat(prefix, \"_pts_current_year_directs\")],\n        ptsCurrentYearIndirects: meta[\"\".concat(prefix, \"_pts_current_year_indirects\")],\n        ptsOneYearAheadDirects: meta[\"\".concat(prefix, \"_pts_one_year_ahead_directs\")],\n        ptsOneYearAheadIndirects: meta[\"\".concat(prefix, \"_pts_one_year_ahead_indirects\")],\n        ptsTwoYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_two_years_ahead_directs\")],\n        ptsTwoYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_two_years_ahead_indirects\")],\n        ptsThreeYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_three_years_ahead_directs\")],\n        ptsThreeYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_three_years_ahead_indirects\")],\n        ptsFourYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_four_years_ahead_directs\")],\n        ptsFourYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_four_years_ahead_indirects\")],\n        ptsWithPlanCurrentYearDirects: meta[\"\".concat(prefix, \"_pts_with_plan_current_year_directs\")],\n        ptsWithPlanCurrentYearIndirects: meta[\"\".concat(prefix, \"_pts_with_plan_current_year_indirects\")],\n        ptsWithPlanOneYearAheadDirects: meta[\"\".concat(prefix, \"_pts_with_plan_one_year_ahead_directs\")],\n        ptsWithPlanOneYearAheadIndirects: meta[\"\".concat(prefix, \"_pts_with_plan_one_year_ahead_indirects\")],\n        ptsWithPlanTwoYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_with_plan_two_years_ahead_directs\")],\n        ptsWithPlanTwoYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_with_plan_two_years_ahead_indirects\")],\n        ptsWithPlanThreeYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_with_plan_three_years_ahead_directs\")],\n        ptsWithPlanThreeYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_with_plan_three_years_ahead_indirects\")],\n        ptsWithPlanFourYearsAheadDirects: meta[\"\".concat(prefix, \"_pts_with_plan_four_years_ahead_directs\")],\n        ptsWithPlanFourYearsAheadIndirects: meta[\"\".concat(prefix, \"_pts_with_plan_four_years_ahead_indirects\")],\n        pendingAllYearsDirects: meta[\"\".concat(prefix, \"_pending_proposals_directs\")],\n        pendingAllYearsIndirects: meta[\"\".concat(prefix, \"_pending_proposals_indirects\")]\n      };\n    },\n    institutionalTotalRow: Ember.computed('institutionalTotalData', 'meta', function () {\n      if (!this.institutionalTotalData || !this.meta) {\n        return [];\n      }\n\n      return Ember.Object.create(_objectSpread({\n        cellLinkData: {\n          id: 0,\n          name: 'Institutional Total',\n          link: null\n        }\n      }, this.institutionalTotalData));\n    }),\n    generatePercentageData: function generatePercentageData(totalData, subsetData) {\n      var percentageData = {};\n      Object.keys(subsetData).forEach(function (key) {\n        var subsetValue = subsetData[key];\n        var totalValue = totalData[key];\n        var avgValue = 0;\n\n        if (totalValue > 0) {\n          avgValue = subsetValue / totalValue;\n        }\n\n        percentageData[key] = avgValue;\n      });\n      percentageData.is_percentage = true;\n      return percentageData;\n    },\n    //Dummy row to show the percent total\n    percentageRow: Ember.computed('totalData', 'institutionalTotalData', function () {\n      if (!this.totalData || !this.institutionalTotalData || !this.meta || !this.meta.pagination) {\n        return null;\n      }\n\n      var percentageData = this.generatePercentageData(this.institutionalTotalData, this.totalData);\n      return Ember.Object.create(_objectSpread({\n        cellLinkData: {\n          id: 0,\n          name: 'Percentage of Total',\n          link: null\n        }\n      }, percentageData));\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/mixins/table-common\", [\"exports\", \"ember-light-table\"], function (_exports, _emberLightTable) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Mixin.create({\n    modelObserver: Ember.observer('model.[]', function () {\n      var model = this.model;\n      this.table.setRows(model);\n    }),\n    sortValuePathObserver: Ember.observer('sortValuePath', function () {\n      var _this = this;\n\n      if (this.sortValuePath) {\n        var allColumns = this.table.get('allColumns');\n        allColumns.forEach(function (column) {\n          if (column.valuePath === _this.sortValuePath) {\n            column.set('sorted', true);\n            column.set('ascending', false);\n          } else {\n            column.set('sorted', false);\n          }\n        });\n      }\n    }).on('init'),\n    columnsObserver: Ember.observer('columns', function () {\n      var columns = this.columns;\n      var table = this.table;\n      var sortedColumns = table.get('sortedColumns');\n      table.setColumns(columns);\n\n      if (sortedColumns) {\n        sortedColumns.forEach(function (column) {\n          var columnToSort = table.get('allColumns').findBy('valuePath', column.get('valuePath'));\n\n          if (columnToSort) {\n            columnToSort.set('sorted', true);\n            columnToSort.set('ascending', column.get('ascending'));\n          }\n        });\n      }\n    }),\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      var model = this.model;\n\n      if (!model) {\n        model = [];\n      }\n\n      var table = _emberLightTable.default.create({\n        columns: this.columns,\n        rows: model,\n        enableSync: false\n      });\n\n      this.set('table', table); // Maybe we need this\n\n      /*\n      // Scroll fixed-position table header when the rest of the table scrolls\n      Ember.$('#table').on('scroll', function() {\n        let scrollOffset = document.getElementById('table').scrollLeft * -1 + 'px';\n        Ember.$('.lt-head table').css('left', scrollOffset);\n      });*/\n    },\n    actions: {\n      onScrolledToBottom: function onScrolledToBottom() {\n        if (this.handlePagination) {\n          this.handlePagination();\n        }\n      },\n      onColumnClick: function onColumnClick(column) {\n        if (this.handleSortChange) {\n          if (column.sorted) {\n            var direction = column.ascending ? '' : '-';\n            var columnName = column.valuePath;\n            this.handleSortChange(direction, columnName);\n          }\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/models/comparative-proposal-history\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    piId: (0, _model.attr)('string'),\n    lookbackYears: (0, _model.attr)('number'),\n    sponsorType: (0, _model.attr)('string'),\n    piProposedCountPerYear: (0, _model.attr)('number'),\n    piProposedTotalPerYear: (0, _model.attr)('number'),\n    piFundedCountPerYear: (0, _model.attr)('number'),\n    piFundedTotalPerYear: (0, _model.attr)('number'),\n    departmentSampleCount: (0, _model.attr)('number'),\n    departmentProposedCountPerYear: (0, _model.attr)('number'),\n    departmentProposedTotalPerYear: (0, _model.attr)('number'),\n    departmentFundedCountPerYear: (0, _model.attr)('number'),\n    departmentFundedDirectsPerYear: (0, _model.attr)('number'),\n    departmentFundedIndirectsPerYear: (0, _model.attr)('number'),\n    departmentFundedTotalPerYear: (0, _model.attr)('number'),\n    departmentFundedDuration: (0, _model.attr)('number'),\n    sectorSampleCount: (0, _model.attr)('number'),\n    sectorProposedCountPerYear: (0, _model.attr)('number'),\n    sectorProposedTotalPerYear: (0, _model.attr)('number'),\n    sectorFundedCountPerYear: (0, _model.attr)('number'),\n    sectorFundedTotalPerYear: (0, _model.attr)('number'),\n    schoolSampleCount: (0, _model.attr)('number'),\n    schoolProposedCountPerYear: (0, _model.attr)('number'),\n    schoolProposedTotalPerYear: (0, _model.attr)('number'),\n    schoolFundedCountPerYear: (0, _model.attr)('number'),\n    schoolFundedTotalPerYear: (0, _model.attr)('number'),\n    principalInvestigator: (0, _model.belongsTo)('principal-investigator')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/models/comparative-statistic\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    piDirects: (0, _model.attr)('number'),\n    piIndirects: (0, _model.attr)('number'),\n    piModifiedOneYearAgoDirects: (0, _model.attr)('number'),\n    piAverageCoverage: (0, _model.attr)('number'),\n    departmentDirects: (0, _model.attr)('number'),\n    departmentIndirects: (0, _model.attr)('number'),\n    departmentModifiedOneYearAgoDirects: (0, _model.attr)('number'),\n    departmentSampleCount: (0, _model.attr)('number'),\n    departmentSquareFootage: (0, _model.attr)('number'),\n    departmentCompensation: (0, _model.attr)('number'),\n    departmentCompensationPercentile: (0, _model.attr)('number'),\n    departmentAverageCoverage: (0, _model.attr)('number'),\n    departmentReserveBalances: (0, _model.attr)('number'),\n    sectorDirects: (0, _model.attr)('number'),\n    sectorIndirects: (0, _model.attr)('number'),\n    sectorModifiedOneYearAgoDirects: (0, _model.attr)('number'),\n    sectorSquareFootage: (0, _model.attr)('number'),\n    sectorSampleCount: (0, _model.attr)('number'),\n    sectorCompensation: (0, _model.attr)('number'),\n    sectorCompensationPercentile: (0, _model.attr)('number'),\n    sectorAverageCoverage: (0, _model.attr)('number'),\n    sectorReserveBalances: (0, _model.attr)('number'),\n    schoolDirects: (0, _model.attr)('number'),\n    schoolIndirects: (0, _model.attr)('number'),\n    schoolModifiedOneYearAgoDirects: (0, _model.attr)('number'),\n    schoolSampleCount: (0, _model.attr)('number'),\n    schoolSquareFootage: (0, _model.attr)('number'),\n    schoolCompensation: (0, _model.attr)('number'),\n    schoolCompensationPercentile: (0, _model.attr)('number'),\n    schoolAverageCoverage: (0, _model.attr)('number'),\n    schoolReserveBalances: (0, _model.attr)('number')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/department\", [\"exports\", \"ember-data\", \"b3i-analytics-web-app/mixins/model-cell-link-data\"], function (_exports, _emberData, _modelCellLinkData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _dec31, _dec32, _dec33, _dec34, _dec35, _dec36, _dec37, _dec38, _dec39, _dec40, _dec41, _dec42, _dec43, _dec44, _dec45, _dec46, _dec47, _dec48, _dec49, _dec50, _dec51, _dec52, _dec53, _dec54, _dec55, _dec56, _dec57, _dec58, _dec59, _dec60, _dec61, _dec62, _dec63, _dec64, _dec65, _dec66, _dec67, _dec68, _dec69, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _descriptor22, _descriptor23, _descriptor24, _descriptor25, _descriptor26, _descriptor27, _descriptor28, _descriptor29, _descriptor30, _descriptor31, _descriptor32, _descriptor33, _descriptor34, _descriptor35, _descriptor36, _descriptor37, _descriptor38, _descriptor39, _descriptor40, _descriptor41, _descriptor42, _descriptor43, _descriptor44, _descriptor45, _descriptor46, _descriptor47, _descriptor48, _descriptor49, _descriptor50, _descriptor51, _descriptor52, _descriptor53, _descriptor54, _descriptor55, _descriptor56, _descriptor57, _descriptor58, _descriptor59, _descriptor60, _descriptor61, _descriptor62, _descriptor63, _descriptor64, _descriptor65, _descriptor66, _descriptor67, _descriptor68, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  var Department = (_dec = attr('string'), _dec2 = belongsTo('sector'), _dec3 = belongsTo('team'), _dec4 = hasMany('proposal'), _dec5 = hasMany('successes'), _dec6 = attr('number'), _dec7 = attr('number'), _dec8 = attr('number'), _dec9 = attr('number'), _dec10 = attr('number'), _dec11 = attr('number'), _dec12 = attr('number'), _dec13 = attr('number'), _dec14 = attr('number'), _dec15 = attr('number'), _dec16 = attr('number'), _dec17 = attr('number'), _dec18 = attr('number'), _dec19 = attr('number'), _dec20 = attr('number'), _dec21 = attr('number'), _dec22 = attr('number'), _dec23 = Ember.computed('ptsCurrentYearDirects', 'ptsCurrentYearIndirects'), _dec24 = attr('number'), _dec25 = attr('number'), _dec26 = attr('number'), _dec27 = attr('number'), _dec28 = attr('number'), _dec29 = attr('number'), _dec30 = attr('number'), _dec31 = attr('number'), _dec32 = attr('number'), _dec33 = attr('number'), _dec34 = attr('number'), _dec35 = attr('number'), _dec36 = attr('number'), _dec37 = attr('number'), _dec38 = attr('number'), _dec39 = attr('number'), _dec40 = attr('number'), _dec41 = attr('number'), _dec42 = attr('number'), _dec43 = attr('number'), _dec44 = attr('number'), _dec45 = attr('number'), _dec46 = attr('number'), _dec47 = attr('number'), _dec48 = attr('number'), _dec49 = attr('number'), _dec50 = attr('number'), _dec51 = attr('number'), _dec52 = attr('number'), _dec53 = attr('number'), _dec54 = attr('number'), _dec55 = attr('number'), _dec56 = attr('number'), _dec57 = attr('number'), _dec58 = attr('number'), _dec59 = attr('number'), _dec60 = attr('number'), _dec61 = attr('number'), _dec62 = attr('number'), _dec63 = attr('number'), _dec64 = attr('number'), _dec65 = attr('number'), _dec66 = attr('number'), _dec67 = attr('number'), _dec68 = attr('number'), _dec69 = attr('number'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model$extend) {\n    _inherits(Department, _Model$extend);\n\n    var _super = _createSuper(Department);\n\n    function Department() {\n      var _this;\n\n      _classCallCheck(this, Department);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"name\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sector\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"team\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"proposals\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"successes\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsCount\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsDirects\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsIndirects\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsCountNoMega\", _descriptor9, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsDirectsNoMega\", _descriptor10, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsIndirectsNoMega\", _descriptor11, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoTotal\", _descriptor12, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoDirects\", _descriptor13, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoIndirects\", _descriptor14, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoTotal\", _descriptor15, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoDirects\", _descriptor16, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoIndirects\", _descriptor17, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoTotal\", _descriptor18, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoDirects\", _descriptor19, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoIndirects\", _descriptor20, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearDirects\", _descriptor21, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearIndirects\", _descriptor22, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadDirects\", _descriptor23, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadIndirects\", _descriptor24, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadDirects\", _descriptor25, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadIndirects\", _descriptor26, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadDirects\", _descriptor27, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadIndirects\", _descriptor28, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadDirects\", _descriptor29, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadIndirects\", _descriptor30, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoDirects\", _descriptor31, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoIndirects\", _descriptor32, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanCurrentYearDirects\", _descriptor33, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanCurrentYearIndirects\", _descriptor34, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanOneYearAheadDirects\", _descriptor35, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanOneYearAheadIndirects\", _descriptor36, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanTwoYearsAheadDirects\", _descriptor37, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanTwoYearsAheadIndirects\", _descriptor38, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanThreeYearsAheadDirects\", _descriptor39, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanThreeYearsAheadIndirects\", _descriptor40, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanFourYearsAheadDirects\", _descriptor41, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanFourYearsAheadIndirects\", _descriptor42, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"directsChange\", _descriptor43, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"indirectsChange\", _descriptor44, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirects\", _descriptor45, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirects\", _descriptor46, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCount\", _descriptor47, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCountNoMega\", _descriptor48, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirectsNoMega\", _descriptor49, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirectsNoMega\", _descriptor50, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndDirects\", _descriptor51, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndIndirects\", _descriptor52, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndCount\", _descriptor53, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndCountNoMega\", _descriptor54, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndDirectsNoMega\", _descriptor55, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndIndirectsNoMega\", _descriptor56, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsDirects\", _descriptor57, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsIndirects\", _descriptor58, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsTotal\", _descriptor59, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoYtd\", _descriptor60, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoYtd\", _descriptor61, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoYtd\", _descriptor62, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoYtd\", _descriptor63, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoTotal\", _descriptor64, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoYtd\", _descriptor65, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoTotal\", _descriptor66, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pisActiveGrantsCount\", _descriptor67, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pisSubmittedLastFiveYearsCount\", _descriptor68, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(Department, [{\n      key: \"ptsCurrentYearTotal\",\n      get: function get() {\n        return this.ptsCurrentYearDirects + this.ptsCurrentYearIndirects;\n      }\n    }]);\n\n    return Department;\n  }(Model.extend(_modelCellLinkData.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"name\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"sector\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"team\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"proposals\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"successes\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsCount\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsDirects\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsIndirects\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsCountNoMega\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsDirectsNoMega\", [_dec10], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsIndirectsNoMega\", [_dec11], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoTotal\", [_dec12], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoDirects\", [_dec13], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoIndirects\", [_dec14], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoTotal\", [_dec15], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoDirects\", [_dec16], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoIndirects\", [_dec17], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoTotal\", [_dec18], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor19 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoDirects\", [_dec19], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor20 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoIndirects\", [_dec20], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor21 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearDirects\", [_dec21], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor22 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearIndirects\", [_dec22], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearTotal\", [_dec23], Object.getOwnPropertyDescriptor(_class2.prototype, \"ptsCurrentYearTotal\"), _class2.prototype), _descriptor23 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadDirects\", [_dec24], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor24 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadIndirects\", [_dec25], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor25 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadDirects\", [_dec26], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor26 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadIndirects\", [_dec27], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor27 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadDirects\", [_dec28], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor28 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadIndirects\", [_dec29], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor29 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadDirects\", [_dec30], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor30 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadIndirects\", [_dec31], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor31 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoDirects\", [_dec32], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor32 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoIndirects\", [_dec33], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor33 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanCurrentYearDirects\", [_dec34], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor34 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanCurrentYearIndirects\", [_dec35], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor35 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanOneYearAheadDirects\", [_dec36], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor36 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanOneYearAheadIndirects\", [_dec37], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor37 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanTwoYearsAheadDirects\", [_dec38], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor38 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanTwoYearsAheadIndirects\", [_dec39], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor39 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanThreeYearsAheadDirects\", [_dec40], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor40 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanThreeYearsAheadIndirects\", [_dec41], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor41 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanFourYearsAheadDirects\", [_dec42], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor42 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanFourYearsAheadIndirects\", [_dec43], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor43 = _applyDecoratedDescriptor(_class2.prototype, \"directsChange\", [_dec44], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor44 = _applyDecoratedDescriptor(_class2.prototype, \"indirectsChange\", [_dec45], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor45 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirects\", [_dec46], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor46 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirects\", [_dec47], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor47 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCount\", [_dec48], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor48 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCountNoMega\", [_dec49], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor49 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirectsNoMega\", [_dec50], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor50 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirectsNoMega\", [_dec51], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor51 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndDirects\", [_dec52], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor52 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndIndirects\", [_dec53], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor53 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndCount\", [_dec54], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor54 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndCountNoMega\", [_dec55], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor55 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndDirectsNoMega\", [_dec56], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor56 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndIndirectsNoMega\", [_dec57], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor57 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsDirects\", [_dec58], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor58 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsIndirects\", [_dec59], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor59 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsTotal\", [_dec60], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor60 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoYtd\", [_dec61], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor61 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoYtd\", [_dec62], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor62 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoYtd\", [_dec63], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor63 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoYtd\", [_dec64], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor64 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoTotal\", [_dec65], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor65 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoYtd\", [_dec66], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor66 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoTotal\", [_dec67], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor67 = _applyDecoratedDescriptor(_class2.prototype, \"pisActiveGrantsCount\", [_dec68], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor68 = _applyDecoratedDescriptor(_class2.prototype, \"pisSubmittedLastFiveYearsCount\", [_dec69], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = Department;\n});","define(\"b3i-analytics-web-app/models/grant\", [\"exports\", \"@ember-data/model\", \"b3i-analytics-web-app/utils/display-value-from-new-value-sponsors\"], function (_exports, _model, _displayValueFromNewValueSponsors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    currentUser: Ember.inject.service('current-user'),\n    startDate: (0, _model.attr)('utc'),\n    endDate: (0, _model.attr)('utc'),\n    grantId: (0, _model.attr)('string'),\n    directs: (0, _model.attr)('number'),\n    indirects: (0, _model.attr)('number'),\n    total: (0, _model.attr)('number'),\n    //This is the sponsor type in the data\n    sponsorType: (0, _model.attr)('string'),\n    //The sponsor type to be displayed to the end user\n    sponsorTypeDisplay: Ember.computed('sponsorType', 'currentUser.team.sponsors.[]', function () {\n      if (!this.currentUser.team) {\n        return this.sponsorType;\n      }\n\n      return (0, _displayValueFromNewValueSponsors.default)(this.sponsorType, this.currentUser.team.sponsors);\n    }),\n    title: (0, _model.attr)('string'),\n    startFiscalMonth: (0, _model.attr)('number'),\n    startFiscalYear: (0, _model.attr)('number'),\n    endFiscalMonth: (0, _model.attr)('number'),\n    endFiscalYear: (0, _model.attr)('number'),\n    //New since the pi last saved their plan\n    isNewForPlan: (0, _model.attr)('boolean'),\n    department: (0, _model.belongsTo)('department'),\n    principalInvestigator: (0, _model.belongsTo)('principal-investigator'),\n    //Local\n    effort: (0, _model.attr)('number', {\n      serialize: false,\n      defaultValue: 0\n    }),\n    cellTitleData: Ember.computed('isNewForPlan', 'title', function () {\n      return {\n        \"title\": this.title,\n        \"isNew\": this.isNewForPlan\n      };\n    })\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/models/import-from-csv\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    actuals: (0, _model.attr)('boolean'),\n    actualsRowsIgnored: (0, _model.attr)('number'),\n    coPis: (0, _model.attr)('boolean'),\n    coPisRowsIgnored: (0, _model.attr)('number'),\n    createdAt: (0, _model.attr)('date'),\n    dateOfData: (0, _model.attr)('utc'),\n    queryDate: (0, _model.attr)('utc'),\n    faculty: (0, _model.attr)('boolean'),\n    facultyRowsIgnored: (0, _model.attr)('number'),\n    importMetadata: (0, _model.attr)(),\n    proposals: (0, _model.attr)('boolean'),\n    proposalsRowsIgnored: (0, _model.attr)('boolean'),\n    successes: (0, _model.attr)('boolean'),\n    successesRowsIgnored: (0, _model.attr)('number'),\n    sectorsDepartments: (0, _model.attr)('boolean'),\n    sectorsDepartmentsRowsIgnored: (0, _model.attr)('number'),\n    user: (0, _model.belongsTo)('user')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/invitation\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo;\n  var Invitation = (_dec = belongsTo('membership'), _dec2 = belongsTo('signup-code'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(Invitation, _Model);\n\n    var _super = _createSuper(Invitation);\n\n    function Invitation() {\n      var _this;\n\n      _classCallCheck(this, Invitation);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"membership\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"signupCode\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return Invitation;\n  }(Model), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"membership\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"signupCode\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = Invitation;\n});","define(\"b3i-analytics-web-app/models/mega-grant\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    isNew: (0, _model.attr)('boolean'),\n    isOverride: (0, _model.attr)('boolean'),\n    isOverrideObserver: Ember.observer('isOverride', function () {\n      var isOverride = this.isOverride;\n\n      if (isOverride) {\n        this.set('renews', false);\n      }\n    }),\n    excludeFromHedgeChallenge: (0, _model.attr)('boolean'),\n    duration: (0, _model.attr)('number'),\n    renews: (0, _model.attr)('boolean'),\n    departmentName: (0, _model.attr)('string'),\n    principalInvestigatorFirstName: (0, _model.attr)('string'),\n    principalInvestigatorLastName: (0, _model.attr)('string'),\n    principalInvestigatorName: Ember.computed('principalInvestigatorFirstName', 'principalInvestigatorLastName', function () {\n      return \"\".concat(this.principalInvestigatorLastName, \", \").concat(this.principalInvestigatorFirstName);\n    }),\n    principalInvestigatorId: (0, _model.attr)('string'),\n    cellLinkData: Ember.computed('isNew', 'principalInvestigatorId', 'principalInvestigatorName', 'principalInvestigatorLastName', function () {\n      return {\n        id: this.principalInvestigatorId,\n        name: this.principalInvestigatorName,\n        link: 'app.departments.principal-investigator',\n        isNew: this.isNew\n      };\n    }),\n    hasDollarChanges: (0, _model.attr)('boolean'),\n    previousDirects: (0, _model.attr)('number'),\n    previousIndirects: (0, _model.attr)('number'),\n    previousTotal: Ember.computed('previousDirects', 'previousIndirects', function () {\n      return this.previousDirects + this.previousIndirects;\n    }),\n    directsTableValue: Ember.computed('success.directs', 'previousDirects', 'hasDollarChanges', function () {\n      //If there are no recorded changes then there should not be any variance\n      var variance = this.hasDollarChanges ? this.get('success.directs') - this.previousDirects : 0;\n      var value = {\n        value: this.get('success.directs'),\n        variance: variance\n      };\n      return value;\n    }),\n    indirectsTableValue: Ember.computed('success.indirects', 'previousIndirects', 'hasDollarChanges', function () {\n      //If there are no recorded changes then there should not be any variance\n      var variance = this.hasDollarChanges ? this.get('success.indirects') - this.previousIndirects : 0;\n      var value = {\n        value: this.get('success.indirects'),\n        variance: variance\n      };\n      return value;\n    }),\n    totalTableValue: Ember.computed('success.total', 'previousTotal', 'hasDollarChanges', function () {\n      //If there are no recorded changes then there should not be any variance\n      var variance = this.hasDollarChanges ? this.get('success.total') - this.previousTotal : 0;\n      var value = {\n        value: this.get('success.total'),\n        variance: variance\n      };\n      return value;\n    }),\n    remainingBalanceDirects: (0, _model.attr)('number'),\n    remainingBalanceIndirects: (0, _model.attr)('number'),\n    ptsCurrentYearDirects: (0, _model.attr)('number'),\n    ptsCurrentYearIndirects: (0, _model.attr)('number'),\n    ptsOneYearAheadDirects: (0, _model.attr)('number'),\n    ptsOneYearAheadIndirects: (0, _model.attr)('number'),\n    ptsTwoYearsAheadDirects: (0, _model.attr)('number'),\n    ptsTwoYearsAheadIndirects: (0, _model.attr)('number'),\n    ptsThreeYearsAheadDirects: (0, _model.attr)('number'),\n    ptsThreeYearsAheadIndirects: (0, _model.attr)('number'),\n    ptsFourYearsAheadDirects: (0, _model.attr)('number'),\n    ptsFourYearsAheadIndirects: (0, _model.attr)('number'),\n    success: (0, _model.belongsTo)('success', {\n      async: false\n    }),\n    proposal: (0, _model.belongsTo)('proposal', {\n      async: false\n    }),\n    team: (0, _model.belongsTo)('team', {\n      async: false\n    }),\n    //local\n    isSaving: (0, _model.attr)('boolean', {\n      defaultValue: false\n    })\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/membership\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany;\n  var Membership = (_dec = attr('string'), _dec2 = attr('string'), _dec3 = attr('string'), _dec4 = attr('string'), _dec5 = attr('string'), _dec6 = hasMany('sector'), _dec7 = belongsTo('user'), _dec8 = belongsTo('invitation', {\n    serialize: false\n  }), _dec9 = belongsTo('team'), _dec10 = Ember.computed('role', 'sectors.@each.name'), _dec11 = Ember.computed('role', 'departmentName'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(Membership, _Model);\n\n    var _super = _createSuper(Membership);\n\n    function Membership() {\n      var _this;\n\n      _classCallCheck(this, Membership);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"role\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"state\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"position\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentId\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentName\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sectors\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"user\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"invitation\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"team\", _descriptor9, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(Membership, [{\n      key: \"sectorNameDisplay\",\n      //Computed\n      get: function get() {\n        var role = this.role;\n        var sectors = this.sectors;\n\n        if (role === 'sector') {\n          return sectors.toArray().map(function (sector) {\n            return sector.get('name');\n          }).join(', ');\n        } else if (role === 'department') {\n          return 'N/A';\n        }\n\n        return 'All Sectors';\n      }\n    }, {\n      key: \"departmentNameDisplay\",\n      get: function get() {\n        var role = this.role;\n        var departmentName = this.departmentName;\n\n        if (role === 'department') {\n          return departmentName;\n        } else if (role === 'sector') {\n          return 'N/A';\n        }\n\n        return 'All Departments';\n      }\n    }]);\n\n    return Membership;\n  }(Model), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"role\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"state\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"position\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"departmentId\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"departmentName\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"sectors\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"user\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"invitation\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"team\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"sectorNameDisplay\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"sectorNameDisplay\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"departmentNameDisplay\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"departmentNameDisplay\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = Membership;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/principal-investigator\", [\"exports\", \"ember-data\", \"b3i-analytics-web-app/mixins/model-cell-link-data\"], function (_exports, _emberData, _modelCellLinkData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _dec31, _dec32, _dec33, _dec34, _dec35, _dec36, _dec37, _dec38, _dec39, _dec40, _dec41, _dec42, _dec43, _dec44, _dec45, _dec46, _dec47, _dec48, _dec49, _dec50, _dec51, _dec52, _dec53, _dec54, _dec55, _dec56, _dec57, _dec58, _dec59, _dec60, _dec61, _dec62, _dec63, _dec64, _dec65, _dec66, _dec67, _dec68, _dec69, _dec70, _dec71, _dec72, _dec73, _dec74, _dec75, _dec76, _dec77, _dec78, _dec79, _dec80, _dec81, _dec82, _dec83, _dec84, _dec85, _dec86, _dec87, _dec88, _dec89, _dec90, _dec91, _dec92, _dec93, _dec94, _dec95, _dec96, _dec97, _dec98, _dec99, _dec100, _dec101, _dec102, _dec103, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _descriptor22, _descriptor23, _descriptor24, _descriptor25, _descriptor26, _descriptor27, _descriptor28, _descriptor29, _descriptor30, _descriptor31, _descriptor32, _descriptor33, _descriptor34, _descriptor35, _descriptor36, _descriptor37, _descriptor38, _descriptor39, _descriptor40, _descriptor41, _descriptor42, _descriptor43, _descriptor44, _descriptor45, _descriptor46, _descriptor47, _descriptor48, _descriptor49, _descriptor50, _descriptor51, _descriptor52, _descriptor53, _descriptor54, _descriptor55, _descriptor56, _descriptor57, _descriptor58, _descriptor59, _descriptor60, _descriptor61, _descriptor62, _descriptor63, _descriptor64, _descriptor65, _descriptor66, _descriptor67, _descriptor68, _descriptor69, _descriptor70, _descriptor71, _descriptor72, _descriptor73, _descriptor74, _descriptor75, _descriptor76, _descriptor77, _descriptor78, _descriptor79, _descriptor80, _descriptor81, _descriptor82, _descriptor83, _descriptor84, _descriptor85, _descriptor86, _descriptor87, _descriptor88, _descriptor89, _descriptor90, _descriptor91, _descriptor92, _descriptor93, _descriptor94, _descriptor95, _descriptor96, _descriptor97, _descriptor98, _descriptor99, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      belongsTo = _emberData.default.belongsTo,\n      hasMany = _emberData.default.hasMany,\n      Model = _emberData.default.Model;\n  var PrincipalInvestigator = (_dec = attr('string'), _dec2 = attr('string'), _dec3 = attr('number'), _dec4 = attr('string'), _dec5 = attr('string'), _dec6 = attr('string'), _dec7 = attr('boolean'), _dec8 = attr('utc'), _dec9 = attr('number'), _dec10 = attr('utc'), _dec11 = attr('string'), _dec12 = Ember.computed('terminationDate'), _dec13 = attr('utc'), _dec14 = attr('utc'), _dec15 = attr('string'), _dec16 = attr('number'), _dec17 = attr('number'), _dec18 = attr('number'), _dec19 = attr('number'), _dec20 = attr('string'), _dec21 = attr('number'), _dec22 = attr('string'), _dec23 = attr('string'), _dec24 = attr('string'), _dec25 = attr('string'), _dec26 = Ember.computed('firstName', 'lastName'), _dec27 = Ember.computed('spaceType'), _dec28 = attr('number'), _dec29 = attr('number'), _dec30 = attr('number'), _dec31 = attr('number'), _dec32 = attr('number'), _dec33 = attr('number'), _dec34 = attr('number'), _dec35 = attr('number'), _dec36 = attr('number'), _dec37 = attr('number'), _dec38 = attr('number'), _dec39 = attr('number'), _dec40 = Ember.computed('ptsCurrentYearDirects', 'ptsCurrentYearIndirects'), _dec41 = attr('number'), _dec42 = attr('number'), _dec43 = attr('number'), _dec44 = attr('number'), _dec45 = attr('number'), _dec46 = attr('number'), _dec47 = attr('number'), _dec48 = attr('number'), _dec49 = attr('number'), _dec50 = attr('number'), _dec51 = attr('number'), _dec52 = attr('number'), _dec53 = attr('number'), _dec54 = attr('number'), _dec55 = attr('number'), _dec56 = attr('number'), _dec57 = attr('number'), _dec58 = attr('number'), _dec59 = attr('number'), _dec60 = attr('number'), _dec61 = attr('number'), _dec62 = attr('number'), _dec63 = attr('number'), _dec64 = attr('number'), _dec65 = attr('number'), _dec66 = attr('number'), _dec67 = attr('number'), _dec68 = attr('number'), _dec69 = attr('number'), _dec70 = attr('number'), _dec71 = attr('number'), _dec72 = attr('number'), _dec73 = attr('number'), _dec74 = attr('number'), _dec75 = attr('number'), _dec76 = attr('number'), _dec77 = attr('number'), _dec78 = attr('number'), _dec79 = attr('number'), _dec80 = attr('number'), _dec81 = attr('number'), _dec82 = attr('number'), _dec83 = attr('number'), _dec84 = attr('number'), _dec85 = attr('number'), _dec86 = attr('number'), _dec87 = attr('number'), _dec88 = attr('number'), _dec89 = attr('number'), _dec90 = attr('number'), _dec91 = attr('number'), _dec92 = attr('number'), _dec93 = attr('number'), _dec94 = attr('number'), _dec95 = attr('number'), _dec96 = belongsTo('department'), _dec97 = hasMany('proposal', {\n    async: false\n  }), _dec98 = hasMany('success', {\n    inverse: 'coPrincipalInvestigators'\n  }), _dec99 = hasMany('success', {\n    async: false\n  }), _dec100 = hasMany('comparative-statistic', {\n    async: false\n  }), _dec101 = hasMany('comparative-proposal-history', {\n    async: false\n  }), _dec102 = attr(), _dec103 = attr('date-only'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model$extend) {\n    _inherits(PrincipalInvestigator, _Model$extend);\n\n    var _super = _createSuper(PrincipalInvestigator);\n\n    function PrincipalInvestigator() {\n      var _this;\n\n      _classCallCheck(this, PrincipalInvestigator);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"firstName\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"lastName\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"conversionRatio\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"rank\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sector\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"track\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"tenured\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hireDate\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hireFiscalYear\", _descriptor9, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"terminationDate\", _descriptor10, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"category\", _descriptor11, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"lastPromotionDate\", _descriptor12, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"appointmentEndDate\", _descriptor13, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"spaceType\", _descriptor14, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"labSpace\", _descriptor15, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"fte\", _descriptor16, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"salary\", _descriptor17, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"reserves\", _descriptor18, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"email\", _descriptor19, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"coverage\", _descriptor20, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"degree\", _descriptor21, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"notes\", _descriptor22, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"upi\", _descriptor23, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"classify\", _descriptor24, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsCurrentYearDirects\", _descriptor25, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsCurrentYearIndirects\", _descriptor26, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsOneYearAheadDirects\", _descriptor27, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsOneYearAheadIndirects\", _descriptor28, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsTwoYearsAheadDirects\", _descriptor29, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsTwoYearsAheadIndirects\", _descriptor30, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsThreeYearsAheadDirects\", _descriptor31, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsThreeYearsAheadIndirects\", _descriptor32, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsFourYearsAheadDirects\", _descriptor33, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planPtsFourYearsAheadIndirects\", _descriptor34, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearDirects\", _descriptor35, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearIndirects\", _descriptor36, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadDirects\", _descriptor37, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadIndirects\", _descriptor38, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadDirects\", _descriptor39, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadIndirects\", _descriptor40, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadDirects\", _descriptor41, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadIndirects\", _descriptor42, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadDirects\", _descriptor43, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadIndirects\", _descriptor44, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanCurrentYearDirects\", _descriptor45, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanCurrentYearIndirects\", _descriptor46, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanOneYearAheadDirects\", _descriptor47, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanOneYearAheadIndirects\", _descriptor48, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanTwoYearsAheadDirects\", _descriptor49, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanTwoYearsAheadIndirects\", _descriptor50, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanThreeYearsAheadDirects\", _descriptor51, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanThreeYearsAheadIndirects\", _descriptor52, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanFourYearsAheadDirects\", _descriptor53, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsWithPlanFourYearsAheadIndirects\", _descriptor54, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoTotal\", _descriptor55, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoDirects\", _descriptor56, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoIndirects\", _descriptor57, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoTotal\", _descriptor58, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoDirects\", _descriptor59, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoIndirects\", _descriptor60, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoTotal\", _descriptor61, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoDirects\", _descriptor62, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoIndirects\", _descriptor63, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoTotal\", _descriptor64, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoDirects\", _descriptor65, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoIndirects\", _descriptor66, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoTotal\", _descriptor67, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoDirects\", _descriptor68, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoIndirects\", _descriptor69, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"modifiedOneYearAgoDirects\", _descriptor70, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsDirects\", _descriptor71, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsIndirects\", _descriptor72, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsTotal\", _descriptor73, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"directsChange\", _descriptor74, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"indirectsChange\", _descriptor75, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingAllYearsDirects\", _descriptor76, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingAllYearsIndirects\", _descriptor77, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingAllYearsDirectsNoMega\", _descriptor78, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingAllYearsIndirectsNoMega\", _descriptor79, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCount\", _descriptor80, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCountNoMega\", _descriptor81, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirects\", _descriptor82, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirectsNoMega\", _descriptor83, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirects\", _descriptor84, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirectsNoMega\", _descriptor85, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndDirects\", _descriptor86, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndIndirects\", _descriptor87, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndCount\", _descriptor88, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndCountNoMega\", _descriptor89, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndDirectsNoMega\", _descriptor90, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearEndIndirectsNoMega\", _descriptor91, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"department\", _descriptor92, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"proposals\", _descriptor93, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"coSuccesses\", _descriptor94, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"successes\", _descriptor95, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"comparativeStatistics\", _descriptor96, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"comparativeProposalHistories\", _descriptor97, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"plan\", _descriptor98, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"planDate\", _descriptor99, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(PrincipalInvestigator, [{\n      key: \"isTerminated\",\n      get: function get() {\n        var terminationDate = this.terminationDate;\n\n        if (!terminationDate) {\n          return false;\n        } //Default termination date is 01-01-1900 for non-terminated pis\n\n\n        return terminationDate.year() > 1960;\n      }\n    }, {\n      key: \"name\",\n      get: function get() {\n        return \"\".concat(this.lastName, \", \").concat(this.firstName);\n      }\n    }, {\n      key: \"formattedSpaceType\",\n      get: function get() {\n        return this.spaceType ? this.spaceType.capitalize() : null;\n      }\n    }, {\n      key: \"ptsCurrentYearTotal\",\n      get: function get() {\n        return this.ptsCurrentYearDirects + this.ptsCurrentYearIndirects;\n      }\n    }]);\n\n    return PrincipalInvestigator;\n  }(Model.extend(_modelCellLinkData.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"firstName\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"lastName\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"conversionRatio\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"rank\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"sector\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"track\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"tenured\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"hireDate\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"hireFiscalYear\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"terminationDate\", [_dec10], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"category\", [_dec11], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"isTerminated\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"isTerminated\"), _class2.prototype), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, \"lastPromotionDate\", [_dec13], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, \"appointmentEndDate\", [_dec14], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, \"spaceType\", [_dec15], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, \"labSpace\", [_dec16], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, \"fte\", [_dec17], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, \"salary\", [_dec18], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, \"reserves\", [_dec19], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor19 = _applyDecoratedDescriptor(_class2.prototype, \"email\", [_dec20], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor20 = _applyDecoratedDescriptor(_class2.prototype, \"coverage\", [_dec21], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor21 = _applyDecoratedDescriptor(_class2.prototype, \"degree\", [_dec22], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor22 = _applyDecoratedDescriptor(_class2.prototype, \"notes\", [_dec23], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor23 = _applyDecoratedDescriptor(_class2.prototype, \"upi\", [_dec24], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor24 = _applyDecoratedDescriptor(_class2.prototype, \"classify\", [_dec25], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"name\", [_dec26], Object.getOwnPropertyDescriptor(_class2.prototype, \"name\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"formattedSpaceType\", [_dec27], Object.getOwnPropertyDescriptor(_class2.prototype, \"formattedSpaceType\"), _class2.prototype), _descriptor25 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsCurrentYearDirects\", [_dec28], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor26 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsCurrentYearIndirects\", [_dec29], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor27 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsOneYearAheadDirects\", [_dec30], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor28 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsOneYearAheadIndirects\", [_dec31], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor29 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsTwoYearsAheadDirects\", [_dec32], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor30 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsTwoYearsAheadIndirects\", [_dec33], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor31 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsThreeYearsAheadDirects\", [_dec34], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor32 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsThreeYearsAheadIndirects\", [_dec35], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor33 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsFourYearsAheadDirects\", [_dec36], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor34 = _applyDecoratedDescriptor(_class2.prototype, \"planPtsFourYearsAheadIndirects\", [_dec37], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor35 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearDirects\", [_dec38], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor36 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearIndirects\", [_dec39], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearTotal\", [_dec40], Object.getOwnPropertyDescriptor(_class2.prototype, \"ptsCurrentYearTotal\"), _class2.prototype), _descriptor37 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadDirects\", [_dec41], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor38 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadIndirects\", [_dec42], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor39 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadDirects\", [_dec43], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor40 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadIndirects\", [_dec44], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor41 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadDirects\", [_dec45], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor42 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadIndirects\", [_dec46], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor43 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadDirects\", [_dec47], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor44 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadIndirects\", [_dec48], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor45 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanCurrentYearDirects\", [_dec49], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor46 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanCurrentYearIndirects\", [_dec50], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor47 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanOneYearAheadDirects\", [_dec51], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor48 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanOneYearAheadIndirects\", [_dec52], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor49 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanTwoYearsAheadDirects\", [_dec53], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor50 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanTwoYearsAheadIndirects\", [_dec54], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor51 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanThreeYearsAheadDirects\", [_dec55], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor52 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanThreeYearsAheadIndirects\", [_dec56], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor53 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanFourYearsAheadDirects\", [_dec57], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor54 = _applyDecoratedDescriptor(_class2.prototype, \"ptsWithPlanFourYearsAheadIndirects\", [_dec58], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor55 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoTotal\", [_dec59], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor56 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoDirects\", [_dec60], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor57 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoIndirects\", [_dec61], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor58 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoTotal\", [_dec62], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor59 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoDirects\", [_dec63], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor60 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoIndirects\", [_dec64], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor61 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoTotal\", [_dec65], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor62 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoDirects\", [_dec66], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor63 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoIndirects\", [_dec67], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor64 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoTotal\", [_dec68], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor65 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoDirects\", [_dec69], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor66 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoIndirects\", [_dec70], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor67 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoTotal\", [_dec71], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor68 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoDirects\", [_dec72], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor69 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoIndirects\", [_dec73], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor70 = _applyDecoratedDescriptor(_class2.prototype, \"modifiedOneYearAgoDirects\", [_dec74], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor71 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsDirects\", [_dec75], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor72 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsIndirects\", [_dec76], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor73 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsTotal\", [_dec77], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor74 = _applyDecoratedDescriptor(_class2.prototype, \"directsChange\", [_dec78], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor75 = _applyDecoratedDescriptor(_class2.prototype, \"indirectsChange\", [_dec79], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor76 = _applyDecoratedDescriptor(_class2.prototype, \"pendingAllYearsDirects\", [_dec80], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor77 = _applyDecoratedDescriptor(_class2.prototype, \"pendingAllYearsIndirects\", [_dec81], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor78 = _applyDecoratedDescriptor(_class2.prototype, \"pendingAllYearsDirectsNoMega\", [_dec82], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor79 = _applyDecoratedDescriptor(_class2.prototype, \"pendingAllYearsIndirectsNoMega\", [_dec83], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor80 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCount\", [_dec84], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor81 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCountNoMega\", [_dec85], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor82 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirects\", [_dec86], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor83 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirectsNoMega\", [_dec87], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor84 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirects\", [_dec88], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor85 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirectsNoMega\", [_dec89], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor86 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndDirects\", [_dec90], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor87 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndIndirects\", [_dec91], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor88 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndCount\", [_dec92], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor89 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndCountNoMega\", [_dec93], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor90 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndDirectsNoMega\", [_dec94], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor91 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearEndIndirectsNoMega\", [_dec95], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor92 = _applyDecoratedDescriptor(_class2.prototype, \"department\", [_dec96], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor93 = _applyDecoratedDescriptor(_class2.prototype, \"proposals\", [_dec97], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor94 = _applyDecoratedDescriptor(_class2.prototype, \"coSuccesses\", [_dec98], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor95 = _applyDecoratedDescriptor(_class2.prototype, \"successes\", [_dec99], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor96 = _applyDecoratedDescriptor(_class2.prototype, \"comparativeStatistics\", [_dec100], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor97 = _applyDecoratedDescriptor(_class2.prototype, \"comparativeProposalHistories\", [_dec101], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor98 = _applyDecoratedDescriptor(_class2.prototype, \"plan\", [_dec102], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor99 = _applyDecoratedDescriptor(_class2.prototype, \"planDate\", [_dec103], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = PrincipalInvestigator;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/profile\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Team = (_dec = (0, _model.attr)(), _dec2 = (0, _model.attr)('string'), _dec3 = (0, _model.belongsTo)('user'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(Team, _Model);\n\n    var _super = _createSuper(Team);\n\n    function Team() {\n      var _this;\n\n      _classCallCheck(this, Team);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"projectionsSettings\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"systemRole\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"user\", _descriptor3, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return Team;\n  }(_model.default), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"projectionsSettings\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"systemRole\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"user\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = Team;\n});","define(\"b3i-analytics-web-app/models/projection\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    actualsOneYearAgoDirects: (0, _model.attr)('millions'),\n    actualsOneYearAgoIndirects: (0, _model.attr)('millions'),\n    actualsTwoYearsAgoDirects: (0, _model.attr)('millions'),\n    actualsTwoYearsAgoIndirects: (0, _model.attr)('millions'),\n    actualsThreeYearsAgoDirects: (0, _model.attr)('millions'),\n    actualsThreeYearsAgoIndirects: (0, _model.attr)('millions'),\n    actualsFourYearsAgoDirects: (0, _model.attr)('millions'),\n    actualsFourYearsAgoIndirects: (0, _model.attr)('millions'),\n    actualsFiveYearsAgoDirects: (0, _model.attr)('millions'),\n    actualsFiveYearsAgoIndirects: (0, _model.attr)('millions'),\n    coreConversionRatiosCurrentYearFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosCurrentYearSponsor7Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosOneYearAgoSponsor7Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearsAgoSponsor7Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearsAgoSponsor7Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosTwoYearAvgSponsor7Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgFedFlowThruDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgFedFlowThruIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgNihDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgNihIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgNonFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgNonFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgOtherFedDirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgOtherFedIndirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor5Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor5Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor6Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor6Indirects: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor7Directs: (0, _model.attr)('number'),\n    coreConversionRatiosThreeYearAvgSponsor7Indirects: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageNih: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageOtherFed: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageFedFlowThru: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageNonFed: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageSponsor5: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageSponsor6: (0, _model.attr)('number'),\n    coreProposalsYtdStartPercentageSponsor7: (0, _model.attr)('number'),\n    coreProposalsYearEndNihDirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsYearEndSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearNihDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdNihDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearYtdSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalNihDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsCurrentYearTotalSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdNihDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoYtdSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoNihDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsOneYearAgoDirects: Ember.computed('coreProposalsOneYearAgoFedFlowThruDirects', 'coreProposalsOneYearAgoNihDirects', 'coreProposalsOneYearAgoNonFedDirects', 'coreProposalsOneYearAgoOtherFedDirects', 'coreProposalsOneYearAgoSponsor5Directs', 'coreProposalsOneYearAgoSponsor6Directs', 'coreProposalsOneYearAgoSponsor7Directs', function () {\n      return this.coreProposalsOneYearAgoFedFlowThruDirects + this.coreProposalsOneYearAgoNihDirects + this.coreProposalsOneYearAgoNonFedDirects + this.coreProposalsOneYearAgoOtherFedDirects + this.coreProposalsOneYearAgoSponsor5Directs + this.coreProposalsOneYearAgoSponsor6Directs + this.coreProposalsOneYearAgoSponsor7Directs;\n    }),\n    coreProposalsOneYearAgoIndirects: Ember.computed('coreProposalsOneYearAgoFedFlowThruIndirects', 'coreProposalsOneYearAgoNihIndirects', 'coreProposalsOneYearAgoNonFedIndirects', 'coreProposalsOneYearAgoOtherFedIndirects', 'coreProposalsOneYearAgoSponsor5Indirects', 'coreProposalsOneYearAgoSponsor6Indirects', 'coreProposalsOneYearAgoSponsor7Indirects', function () {\n      return this.coreProposalsOneYearAgoFedFlowThruIndirects + this.coreProposalsOneYearAgoNihIndirects + this.coreProposalsOneYearAgoNonFedIndirects + this.coreProposalsOneYearAgoOtherFedIndirects + this.coreProposalsOneYearAgoSponsor5Indirects + this.coreProposalsOneYearAgoSponsor6Indirects + this.coreProposalsOneYearAgoSponsor7Indirects;\n    }),\n    coreProposalsTwoYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoNihDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearsAgoDirects: Ember.computed('coreProposalsTwoYearsAgoFedFlowThruDirects', 'coreProposalsTwoYearsAgoNihDirects', 'coreProposalsTwoYearsAgoNonFedDirects', 'coreProposalsTwoYearsAgoOtherFedDirects', 'coreProposalsTwoYearsAgoSponsor5Directs', 'coreProposalsTwoYearsAgoSponsor6Directs', 'coreProposalsTwoYearsAgoSponsor7Directs', function () {\n      return this.coreProposalsTwoYearsAgoFedFlowThruDirects + this.coreProposalsTwoYearsAgoNihDirects + this.coreProposalsTwoYearsAgoNonFedDirects + this.coreProposalsTwoYearsAgoOtherFedDirects + this.coreProposalsTwoYearsAgoSponsor5Directs + this.coreProposalsTwoYearsAgoSponsor6Directs + this.coreProposalsTwoYearsAgoSponsor7Directs;\n    }),\n    coreProposalsTwoYearsAgoIndirects: Ember.computed('coreProposalsTwoYearsAgoFedFlowThruIndirects', 'coreProposalsTwoYearsAgoNihIndirects', 'coreProposalsTwoYearsAgoNonFedIndirects', 'coreProposalsTwoYearsAgoOtherFedIndirects', 'coreProposalsTwoYearsAgoSponsor5Indirects', 'coreProposalsTwoYearsAgoSponsor6Indirects', 'coreProposalsTwoYearsAgoSponsor7Indirects', function () {\n      return this.coreProposalsTwoYearsAgoFedFlowThruIndirects + this.coreProposalsTwoYearsAgoNihIndirects + this.coreProposalsTwoYearsAgoNonFedIndirects + this.coreProposalsTwoYearsAgoOtherFedIndirects + this.coreProposalsTwoYearsAgoSponsor5Indirects + this.coreProposalsTwoYearsAgoSponsor6Indirects + this.coreProposalsTwoYearsAgoSponsor7Indirects;\n    }),\n    coreProposalsThreeYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoNihDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearsAgoDirects: Ember.computed('coreProposalsThreeYearsAgoFedFlowThruDirects', 'coreProposalsThreeYearsAgoNihDirects', 'coreProposalsThreeYearsAgoNonFedDirects', 'coreProposalsThreeYearsAgoOtherFedDirects', 'coreProposalsThreeYearsAgoSponsor5Directs', 'coreProposalsThreeYearsAgoSponsor6Directs', 'coreProposalsThreeYearsAgoSponsor7Directs', function () {\n      return this.coreProposalsThreeYearsAgoFedFlowThruDirects + this.coreProposalsThreeYearsAgoNihDirects + this.coreProposalsThreeYearsAgoNonFedDirects + this.coreProposalsThreeYearsAgoOtherFedDirects + this.coreProposalsThreeYearsAgoSponsor5Directs + this.coreProposalsThreeYearsAgoSponsor6Directs + this.coreProposalsThreeYearsAgoSponsor7Directs;\n    }),\n    coreProposalsThreeYearsAgoIndirects: Ember.computed('coreProposalsThreeYearsAgoFedFlowThruIndirects', 'coreProposalsThreeYearsAgoNihIndirects', 'coreProposalsThreeYearsAgoNonFedIndirects', 'coreProposalsThreeYearsAgoOtherFedIndirects', 'coreProposalsThreeYearsAgoSponsor5Indirects', 'coreProposalsThreeYearsAgoSponsor6Indirects', 'coreProposalsThreeYearsAgoSponsor7Indirects', function () {\n      return this.coreProposalsThreeYearsAgoFedFlowThruIndirects + this.coreProposalsThreeYearsAgoNihIndirects + this.coreProposalsThreeYearsAgoNonFedIndirects + this.coreProposalsThreeYearsAgoOtherFedIndirects + this.coreProposalsThreeYearsAgoSponsor5Indirects + this.coreProposalsThreeYearsAgoSponsor6Indirects + this.coreProposalsThreeYearsAgoSponsor7Indirects;\n    }),\n    coreProposalsTwoYearAverageFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageNihDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsTwoYearAverageSponsor7Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageFedFlowThruDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageFedFlowThruIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageNihDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageNihIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageNonFedDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageNonFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageOtherFedDirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageOtherFedIndirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor5Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor5Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor6Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor6Indirects: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor7Directs: (0, _model.attr)('millions'),\n    coreProposalsThreeYearAverageSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantAssumedRenewReplaceCurrentYearCount: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceCurrentYearDirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceCurrentYearIndirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceOneYearAheadCount: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceOneYearAheadDirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceOneYearAheadIndirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceTwoYearsAheadCount: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceTwoYearsAheadDirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceTwoYearsAheadIndirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceThreeYearsAheadCount: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceThreeYearsAheadDirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceThreeYearsAheadIndirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceFourYearsAheadCount: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceFourYearsAheadDirects: (0, _model.attr)('number'),\n    megaGrantAssumedRenewReplaceFourYearsAheadIndirects: (0, _model.attr)('number'),\n    megaGrantHistoryStartOneYearAgo: (0, _model.attr)(),\n    megaGrantHistoryStartTwoYearsAgo: (0, _model.attr)(),\n    megaGrantHistoryStartThreeYearsAgo: (0, _model.attr)(),\n    megaGrantHistoryStartFourYearsAgo: (0, _model.attr)(),\n    megaGrantHistoryStartFiveYearsAgo: (0, _model.attr)(),\n    megaGrantHistorySubmitTwoYearsAgo: (0, _model.attr)(),\n    megaGrantHistorySubmitThreeYearsAgo: (0, _model.attr)(),\n    megaGrantHistorySubmitFourYearsAgo: (0, _model.attr)(),\n    megaGrantHistorySubmitFiveYearsAgo: (0, _model.attr)(),\n    megaGrantHistorySubmitSixYearsAgo: (0, _model.attr)(),\n    megaGrantAverageDirects: Ember.computed('megaGrantHistoryStartOneYearAgo', 'megaGrantHistoryStartTwoYearsAgo', 'megaGrantHistoryStartThreeYearsAgo', 'megaGrantHistoryStartFourYearsAgo', 'megaGrantHistoryStartFiveYearsAgo', function () {\n      var megaGrantHistoryStartOneYearAgo = this.megaGrantHistoryStartOneYearAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartTwoYearsAgo = this.megaGrantHistoryStartTwoYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartThreeYearsAgo = this.megaGrantHistoryStartThreeYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartFourYearsAgo = this.megaGrantHistoryStartFourYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartFiveYearsAgo = this.megaGrantHistoryStartFiveYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var directs = megaGrantHistoryStartOneYearAgo['directs'] + megaGrantHistoryStartTwoYearsAgo['directs'] + megaGrantHistoryStartThreeYearsAgo['directs'] + megaGrantHistoryStartFourYearsAgo['directs'] + megaGrantHistoryStartFiveYearsAgo['directs'];\n      var count = megaGrantHistoryStartOneYearAgo['funded'] + megaGrantHistoryStartTwoYearsAgo['funded'] + megaGrantHistoryStartThreeYearsAgo['funded'] + megaGrantHistoryStartFourYearsAgo['funded'] + megaGrantHistoryStartFiveYearsAgo['funded'];\n\n      if (count === 0) {\n        return 0;\n      }\n\n      return directs / count;\n    }),\n    megaGrantAverageIndirects: Ember.computed('megaGrantHistoryStartOneYearAgo', 'megaGrantHistoryStartTwoYearsAgo', 'megaGrantHistoryStartThreeYearsAgo', 'megaGrantHistoryStartFourYearsAgo', 'megaGrantHistoryStartFiveYearsAgo', function () {\n      var megaGrantHistoryStartOneYearAgo = this.megaGrantHistoryStartOneYearAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartTwoYearsAgo = this.megaGrantHistoryStartTwoYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartThreeYearsAgo = this.megaGrantHistoryStartThreeYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartFourYearsAgo = this.megaGrantHistoryStartFourYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var megaGrantHistoryStartFiveYearsAgo = this.megaGrantHistoryStartFiveYearsAgo || {\n        directs: 0,\n        funded: 0\n      };\n      var indirects = megaGrantHistoryStartOneYearAgo['indirects'] + megaGrantHistoryStartTwoYearsAgo['indirects'] + megaGrantHistoryStartThreeYearsAgo['indirects'] + megaGrantHistoryStartFourYearsAgo['indirects'] + megaGrantHistoryStartFiveYearsAgo['indirects'];\n      var count = megaGrantHistoryStartOneYearAgo['funded'] + megaGrantHistoryStartTwoYearsAgo['funded'] + megaGrantHistoryStartThreeYearsAgo['funded'] + megaGrantHistoryStartFourYearsAgo['funded'] + megaGrantHistoryStartFiveYearsAgo['funded'];\n\n      if (count === 0) {\n        return 0;\n      }\n\n      return indirects / count;\n    }),\n    megaGrantsFiveYearHitRate: (0, _model.attr)('percent'),\n    megaGrantActiveAverageDirects: (0, _model.attr)('number'),\n    megaGrantActiveAverageIndirects: (0, _model.attr)('number'),\n    megaGrantPendingCount: (0, _model.attr)('number'),\n    megaGrantPendingDirects: (0, _model.attr)('number'),\n    megaGrantPendingIndirects: (0, _model.attr)('number'),\n    megaGrantConversionRequiredDirects: (0, _model.attr)('percent'),\n    megaGrantConversionRequiredIndirects: (0, _model.attr)('percent'),\n    megaGrantsHedgeProjectionDirects: (0, _model.attr)('number'),\n    megaGrantsHedgeProjectionIndirects: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentDirects: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentIndirects: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadCount: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadDirects: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadIndirects: (0, _model.attr)('number'),\n    megaGrantConversionRequiredOneYearAheadDirects: (0, _model.attr)('percent'),\n    megaGrantConversionRequiredOneYearAheadIndirects: (0, _model.attr)('percent'),\n    megaGrantsHedgeProjectionOneYearAheadDirects: (0, _model.attr)('number'),\n    megaGrantsHedgeProjectionOneYearAheadIndirects: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentOneYearAheadDirects: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentOneYearAheadIndirects: (0, _model.attr)('number'),\n    megaGrantPendingCountWithAccrual: (0, _model.attr)('number'),\n    megaGrantPendingDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantPendingIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantConversionRequiredDirectsWithAccrual: (0, _model.attr)('percent'),\n    megaGrantConversionRequiredIndirectsWithAccrual: (0, _model.attr)('percent'),\n    megaGrantsHedgeProjectionDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeProjectionIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadCountWithAccrual: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantPendingOneYearAheadIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantConversionRequiredOneYearAheadDirectsWithAccrual: (0, _model.attr)('percent'),\n    megaGrantConversionRequiredOneYearAheadIndirectsWithAccrual: (0, _model.attr)('percent'),\n    megaGrantsHedgeProjectionOneYearAheadDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeProjectionOneYearAheadIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentOneYearAheadDirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantsHedgeAdjustmentOneYearAheadIndirectsWithAccrual: (0, _model.attr)('number'),\n    megaGrantYtdSuccessesDirects: (0, _model.attr)('number'),\n    megaGrantYtdSuccessesIndirects: (0, _model.attr)('number'),\n    megaGrantYtdSuccessesCount: (0, _model.attr)('number'),\n    megaGrantOneYearAheadSuccessesDirects: (0, _model.attr)('number'),\n    megaGrantOneYearAheadSuccessesIndirects: (0, _model.attr)('number'),\n    megaGrantOneYearAheadSuccessesCount: (0, _model.attr)('number'),\n    megaGrantTotalsCurrentYearDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoNihDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsCurrentYearSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFourYearsAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsFiveYearsAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsSixYearsAheadSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsOneYearAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsTwoYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    megaGrantTotalsThreeYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    megaGrantPendingAccrualCurrentYear: (0, _model.attr)('number'),\n    megaGrantPendingAccrualNextYear: (0, _model.attr)('number'),\n    proposalVarianceYearToDateFedFlowThruDirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateFedFlowThruIndirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateNihDirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateNihIndirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateNonFedDirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateNonFedIndirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateOtherFedDirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateOtherFedIndirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor5Directs: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor5Indirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor6Directs: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor6Indirects: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor7Directs: (0, _model.attr)('number'),\n    proposalVarianceYearToDateSponsor7Indirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateFedFlowThruDirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateFedFlowThruIndirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateNihDirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateNihIndirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateNonFedDirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateNonFedIndirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateOtherFedDirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateOtherFedIndirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor5Directs: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor5Indirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor6Directs: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor6Indirects: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor7Directs: (0, _model.attr)('number'),\n    successRatioVarianceYearToDateSponsor7Indirects: (0, _model.attr)('number'),\n    successesEightYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesEightYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesSevenYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesSixYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesFiveYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesFourYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesThreeYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesThreeYearsAgoDirects: Ember.computed('successesThreeYearsAgoFedFlowThruDirects', 'successesThreeYearsAgoNihDirects', 'successesThreeYearsAgoNonFedDirects', 'successesThreeYearsAgoOtherFedDirects', 'successesThreeYearsAgoSponsor5Directs', 'successesThreeYearsAgoSponsor6Directs', 'successesThreeYearsAgoSponsor7Directs', function () {\n      return this.successesThreeYearsAgoFedFlowThruDirects + this.successesThreeYearsAgoNihDirects + this.successesThreeYearsAgoNonFedDirects + this.successesThreeYearsAgoOtherFedDirects + this.successesThreeYearsAgoSponsor5Directs + this.successesThreeYearsAgoSponsor6Directs + this.successesThreeYearsAgoSponsor7Directs;\n    }),\n    successesThreeYearsAgoIndirects: Ember.computed('successesThreeYearsAgoFedFlowThruIndirects', 'successesThreeYearsAgoNihIndirects', 'successesThreeYearsAgoNonFedIndirects', 'successesThreeYearsAgoOtherFedIndirects', 'successesThreeYearsAgoSponsor5Indirects', 'successesThreeYearsAgoSponsor6Indirects', 'successesThreeYearsAgoSponsor7Indirects', function () {\n      return this.successesThreeYearsAgoFedFlowThruIndirects + this.successesThreeYearsAgoNihIndirects + this.successesThreeYearsAgoNonFedIndirects + this.successesThreeYearsAgoOtherFedIndirects + this.successesThreeYearsAgoSponsor5Indirects + this.successesThreeYearsAgoSponsor6Indirects + this.successesThreeYearsAgoSponsor7Indirects;\n    }),\n    successesTwoYearsAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoNihDirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoNihIndirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesTwoYearsAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesTwoYearsAgoDirects: Ember.computed('successesTwoYearsAgoFedFlowThruDirects', 'successesTwoYearsAgoNihDirects', 'successesTwoYearsAgoNonFedDirects', 'successesTwoYearsAgoOtherFedDirects', 'successesTwoYearsAgoSponsor5Directs', 'successesTwoYearsAgoSponsor6Directs', 'successesTwoYearsAgoSponsor7Directs', function () {\n      return this.successesTwoYearsAgoFedFlowThruDirects + this.successesTwoYearsAgoNihDirects + this.successesTwoYearsAgoNonFedDirects + this.successesTwoYearsAgoOtherFedDirects + this.successesTwoYearsAgoSponsor5Directs + this.successesTwoYearsAgoSponsor6Directs + this.successesTwoYearsAgoSponsor7Directs;\n    }),\n    successesTwoYearsAgoIndirects: Ember.computed('successesTwoYearsAgoFedFlowThruIndirects', 'successesTwoYearsAgoNihIndirects', 'successesTwoYearsAgoNonFedIndirects', 'successesTwoYearsAgoOtherFedIndirects', 'successesTwoYearsAgoSponsor5Indirects', 'successesTwoYearsAgoSponsor6Indirects', 'successesTwoYearsAgoSponsor7Indirects', function () {\n      return this.successesTwoYearsAgoFedFlowThruIndirects + this.successesTwoYearsAgoNihIndirects + this.successesTwoYearsAgoNonFedIndirects + this.successesTwoYearsAgoOtherFedIndirects + this.successesTwoYearsAgoSponsor5Indirects + this.successesTwoYearsAgoSponsor6Indirects + this.successesTwoYearsAgoSponsor7Indirects;\n    }),\n    successesOneYearAgoFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesOneYearAgoFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesOneYearAgoNihDirects: (0, _model.attr)('millions'),\n    successesOneYearAgoNihIndirects: (0, _model.attr)('millions'),\n    successesOneYearAgoNonFedDirects: (0, _model.attr)('millions'),\n    successesOneYearAgoNonFedIndirects: (0, _model.attr)('millions'),\n    successesOneYearAgoOtherFedDirects: (0, _model.attr)('millions'),\n    successesOneYearAgoOtherFedIndirects: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor5Directs: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor5Indirects: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor6Directs: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor6Indirects: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor7Directs: (0, _model.attr)('millions'),\n    successesOneYearAgoSponsor7Indirects: (0, _model.attr)('millions'),\n    successesOneYearAgoDirects: Ember.computed('successesOneYearAgoFedFlowThruDirects', 'successesOneYearAgoNihDirects', 'successesOneYearAgoNonFedDirects', 'successesOneYearAgoOtherFedDirects', 'successesOneYearAgoSponsor5Directs', 'successesOneYearAgoSponsor6Directs', 'successesOneYearAgoSponsor7Directs', function () {\n      return this.successesOneYearAgoFedFlowThruDirects + this.successesOneYearAgoNihDirects + this.successesOneYearAgoNonFedDirects + this.successesOneYearAgoOtherFedDirects + this.successesOneYearAgoSponsor5Directs + this.successesOneYearAgoSponsor6Directs + this.successesOneYearAgoSponsor7Directs;\n    }),\n    successesOneYearAgoIndirects: Ember.computed('successesOneYearAgoFedFlowThruIndirects', 'successesOneYearAgoNihIndirects', 'successesOneYearAgoNonFedIndirects', 'successesOneYearAgoOtherFedIndirects', 'successesOneYearAgoSponsor5Indirects', 'successesOneYearAgoSponsor6Indirects', 'successesOneYearAgoSponsor7Indirects', function () {\n      return this.successesOneYearAgoFedFlowThruIndirects + this.successesOneYearAgoNihIndirects + this.successesOneYearAgoNonFedIndirects + this.successesOneYearAgoOtherFedIndirects + this.successesOneYearAgoSponsor5Indirects + this.successesOneYearAgoSponsor6Indirects + this.successesOneYearAgoSponsor7Indirects;\n    }),\n    successesCurrentYearFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesCurrentYearFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesCurrentYearNihDirects: (0, _model.attr)('millions'),\n    successesCurrentYearNihIndirects: (0, _model.attr)('millions'),\n    successesCurrentYearNonFedDirects: (0, _model.attr)('millions'),\n    successesCurrentYearNonFedIndirects: (0, _model.attr)('millions'),\n    successesCurrentYearOtherFedDirects: (0, _model.attr)('millions'),\n    successesCurrentYearOtherFedIndirects: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor5Directs: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor5Indirects: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor6Directs: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor6Indirects: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor7Directs: (0, _model.attr)('millions'),\n    successesCurrentYearSponsor7Indirects: (0, _model.attr)('millions'),\n    successesYtdFedFlowThruDirects: (0, _model.attr)('millions'),\n    successesYtdFedFlowThruIndirects: (0, _model.attr)('millions'),\n    successesYtdNihDirects: (0, _model.attr)('millions'),\n    successesYtdNihIndirects: (0, _model.attr)('millions'),\n    successesYtdNonFedDirects: (0, _model.attr)('millions'),\n    successesYtdNonFedIndirects: (0, _model.attr)('millions'),\n    successesYtdOtherFedDirects: (0, _model.attr)('millions'),\n    successesYtdOtherFedIndirects: (0, _model.attr)('millions'),\n    successesYtdSponsor5Directs: (0, _model.attr)('millions'),\n    successesYtdSponsor5Indirects: (0, _model.attr)('millions'),\n    successesYtdSponsor6Directs: (0, _model.attr)('millions'),\n    successesYtdSponsor6Indirects: (0, _model.attr)('millions'),\n    successesYtdSponsor7Directs: (0, _model.attr)('millions'),\n    successesYtdSponsor7Indirects: (0, _model.attr)('millions'),\n    sector: (0, _model.attr)('string'),\n    yoneYtwoDerivativeRatiosNihDirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosNihIndirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosOtherFedDirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosOtherFedIndirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosFedFlowThruDirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosFedFlowThruIndirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosNonFedDirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosNonFedIndirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor5Directs: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor5Indirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor6Directs: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor6Indirects: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor7Directs: (0, _model.attr)('number'),\n    yoneYtwoDerivativeRatiosSponsor7Indirects: (0, _model.attr)('number'),\n    department: (0, _model.belongsTo)('department'),\n    team: (0, _model.belongsTo)('team')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/proposal\", [\"exports\", \"ember-data\", \"b3i-analytics-web-app/models/grant\"], function (_exports, _emberData, _grant) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr;\n  var Proposal = (_dec = attr('number'), _dec2 = attr('number'), _dec3 = attr('string'), _dec4 = attr('boolean'), _dec5 = attr('boolean'), _dec6 = attr('string', {\n    serialize: false,\n    defaultValue: 'No'\n  }), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Grant) {\n    _inherits(Proposal, _Grant);\n\n    var _super = _createSuper(Proposal);\n\n    function Proposal() {\n      var _this;\n\n      _classCallCheck(this, Proposal);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"submitYear\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"submitMonth\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"status\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"renewal\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"supplement\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"funded\", _descriptor6, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return Proposal;\n  }(_grant.default), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"submitYear\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"submitMonth\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"status\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"renewal\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"supplement\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"funded\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = Proposal;\n});","define(\"b3i-analytics-web-app/models/recruitment\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    proposalNihkJuniorAvgCount: (0, _model.attr)('number'),\n    proposalNihrJuniorAvgCount: (0, _model.attr)('number'),\n    proposalOtherFedJuniorAvgCount: (0, _model.attr)('number'),\n    proposalFftJuniorAvgCount: (0, _model.attr)('number'),\n    proposalNonFedJuniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor5JuniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor6JuniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor7JuniorAvgCount: (0, _model.attr)('number'),\n    proposalTotalJuniorAvgCount: Ember.computed('proposalNihkJuniorAvgCount', 'proposalNihrJuniorAvgCount', 'proposalOtherFedJuniorAvgCount', 'proposalFftJuniorAvgCount', 'proposalNonFedJuniorAvgCount', 'proposalSponsor5JuniorAvgCount', 'proposalSponsor6JuniorAvgCount', 'proposalSponsor7JuniorAvgCount', function () {\n      return this.proposalNihkJuniorAvgCount + this.proposalNihrJuniorAvgCount + this.proposalOtherFedJuniorAvgCount + this.proposalFftJuniorAvgCount + this.proposalNonFedJuniorAvgCount + this.proposalSponsor5JuniorAvgCount + this.proposalSponsor6JuniorAvgCount + this.proposalSponsor7JuniorAvgCount;\n    }),\n    proposalNihkJuniorAvgTotal: (0, _model.attr)('number'),\n    proposalNihrJuniorAvgTotal: (0, _model.attr)('number'),\n    proposalOtherFedJuniorAvgTotal: (0, _model.attr)('number'),\n    proposalFftJuniorAvgTotal: (0, _model.attr)('number'),\n    proposalNonFedJuniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor5JuniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor6JuniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor7JuniorAvgTotal: (0, _model.attr)('number'),\n    proposalTotalJuniorAvgTotal: Ember.computed('proposalNihkJuniorAvgTotal', 'proposalNihrJuniorAvgTotal', 'proposalOtherFedJuniorAvgTotal', 'proposalFftJuniorAvgTotal', 'proposalNonFedJuniorAvgTotal', 'proposalSponsor5JuniorAvgTotal', 'proposalSponsor6JuniorAvgTotal', 'proposalSponsor7JuniorAvgTotal', function () {\n      return this.proposalNihkJuniorAvgTotal + this.proposalNihrJuniorAvgTotal + this.proposalOtherFedJuniorAvgTotal + this.proposalFftJuniorAvgTotal + this.proposalNonFedJuniorAvgTotal + this.proposalSponsor5JuniorAvgTotal + this.proposalSponsor6JuniorAvgTotal + this.proposalSponsor7JuniorAvgTotal;\n    }),\n    modifiedHitRateNihkJunior: (0, _model.attr)('number'),\n    modifiedHitRateNihrJunior: (0, _model.attr)('number'),\n    modifiedHitRateOtherFedJunior: (0, _model.attr)('number'),\n    modifiedHitRateFftJunior: (0, _model.attr)('number'),\n    modifiedHitRateNonFedJunior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor5Junior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor6Junior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor7Junior: (0, _model.attr)('number'),\n    modifiedHitRateAvgJunior: Ember.computed('modifiedHitRateNihkJunior', 'modifiedHitRateNihrJunior', 'modifiedHitRateOtherFedJunior', 'modifiedHitRateFftJunior', 'modifiedHitRateNonFedJunior', 'modifiedHitRateSponsor5Junior', 'modifiedHitRateSponsor6Junior', 'modifiedHitRateSponsor7Junior', function () {\n      return (this.modifiedHitRateNihkJunior + this.modifiedHitRateNihrJunior + this.modifiedHitRateOtherFedJunior + this.modifiedHitRateFftJunior + this.modifiedHitRateNonFedJunior + this.modifiedHitRateSponsor5Junior + this.modifiedHitRateSponsor6Junior + this.modifiedHitRateSponsor7Junior) / 8; // Assuming this should be divided by 8 now (prev was 5)\n    }),\n    juniorTerminatedAvgCount: (0, _model.attr)('number'),\n    successNihkJuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successNihrJuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successOtherFedJuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successFftJuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successNonFedJuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor5JuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor6JuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor7JuniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successJuniorTransferredOutAvgDirects: (0, _model.attr)('number'),\n    successJuniorTransferredOutAvgIndirects: (0, _model.attr)('number'),\n    proposalNihkSeniorAvgCount: (0, _model.attr)('number'),\n    proposalNihrSeniorAvgCount: (0, _model.attr)('number'),\n    proposalOtherFedSeniorAvgCount: (0, _model.attr)('number'),\n    proposalFftSeniorAvgCount: (0, _model.attr)('number'),\n    proposalNonFedSeniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor5SeniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor6SeniorAvgCount: (0, _model.attr)('number'),\n    proposalSponsor7SeniorAvgCount: (0, _model.attr)('number'),\n    proposalNihkSeniorAvgTotal: (0, _model.attr)('number'),\n    proposalNihrSeniorAvgTotal: (0, _model.attr)('number'),\n    proposalOtherFedSeniorAvgTotal: (0, _model.attr)('number'),\n    proposalFftSeniorAvgTotal: (0, _model.attr)('number'),\n    proposalNonFedSeniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor5SeniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor6SeniorAvgTotal: (0, _model.attr)('number'),\n    proposalSponsor7SeniorAvgTotal: (0, _model.attr)('number'),\n    modifiedHitRateNihkSenior: (0, _model.attr)('number'),\n    modifiedHitRateNihrSenior: (0, _model.attr)('number'),\n    modifiedHitRateOtherFedSenior: (0, _model.attr)('number'),\n    modifiedHitRateFftSenior: (0, _model.attr)('number'),\n    modifiedHitRateNonFedSenior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor5Senior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor6Senior: (0, _model.attr)('number'),\n    modifiedHitRateSponsor7Senior: (0, _model.attr)('number'),\n    seniorTerminatedAvgCount: (0, _model.attr)('number'),\n    successNihkSeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successNihrSeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successOtherFedSeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successFftSeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successNonFedSeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor5SeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor6SeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSponsor7SeniorTransferredInAvgTotal: (0, _model.attr)('number'),\n    successSeniorTransferredOutAvgDirects: (0, _model.attr)('number'),\n    successSeniorTransferredOutAvgIndirects: (0, _model.attr)('number')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/models/sector\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    name: (0, _model.attr)('string'),\n    departments: (0, _model.hasMany)('department'),\n    team: (0, _model.belongsTo)('team')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/signup-code\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      Model = _emberData.default.Model,\n      belongsTo = _emberData.default.belongsTo;\n  var SignupCode = (_dec = attr('string'), _dec2 = belongsTo('invitation'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(SignupCode, _Model);\n\n    var _super = _createSuper(SignupCode);\n\n    function SignupCode() {\n      var _this;\n\n      _classCallCheck(this, SignupCode);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"email\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"invitation\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return SignupCode;\n  }(Model), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"email\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"invitation\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = SignupCode;\n});","define(\"b3i-analytics-web-app/models/sponsor\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _model.default.extend({\n    team: (0, _model.belongsTo)('team'),\n    originalValue: (0, _model.attr)('string'),\n    newValue: (0, _model.attr)('string'),\n    displayValue: (0, _model.attr)('string'),\n    isTrainingAward: (0, _model.attr)('boolean')\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/success\", [\"exports\", \"ember-data\", \"b3i-analytics-web-app/models/grant\"], function (_exports, _emberData, _grant) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      hasMany = _emberData.default.hasMany;\n  var Success = (_dec = attr('boolean'), _dec2 = attr('number'), _dec3 = attr('number'), _dec4 = attr('number'), _dec5 = attr('number'), _dec6 = attr('number'), _dec7 = attr('number'), _dec8 = attr('number'), _dec9 = attr('number'), _dec10 = attr('number'), _dec11 = attr('number'), _dec12 = attr('number'), _dec13 = attr('number'), _dec14 = attr('number'), _dec15 = attr('number'), _dec16 = attr('boolean'), _dec17 = attr('number'), _dec18 = attr('number'), _dec19 = attr('number'), _dec20 = hasMany('principal-investigator', {\n    inverse: 'coSuccesses'\n  }), _dec21 = attr('string', {\n    serialize: false,\n    defaultValue: 'No'\n  }), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Grant) {\n    _inherits(Success, _Grant);\n\n    var _super = _createSuper(Success);\n\n    function Success() {\n      var _this;\n\n      _classCallCheck(this, Success);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isActive\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoDirects\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoIndirects\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearDirects\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearIndirects\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadDirects\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAheadIndirects\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadDirects\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsTwoYearsAheadIndirects\", _descriptor9, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadDirects\", _descriptor10, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsThreeYearsAheadIndirects\", _descriptor11, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadDirects\", _descriptor12, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFourYearsAheadIndirects\", _descriptor13, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFiveYearsAheadDirects\", _descriptor14, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsFiveYearsAheadIndirects\", _descriptor15, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"renews\", _descriptor16, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"successDirects\", _descriptor17, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"successIndirects\", _descriptor18, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"durationYears\", _descriptor19, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"coPrincipalInvestigators\", _descriptor20, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"renewProjection\", _descriptor21, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    return Success;\n  }(_grant.default), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"isActive\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoDirects\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoIndirects\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearDirects\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearIndirects\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadDirects\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAheadIndirects\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadDirects\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"ptsTwoYearsAheadIndirects\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadDirects\", [_dec10], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"ptsThreeYearsAheadIndirects\", [_dec11], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadDirects\", [_dec12], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFourYearsAheadIndirects\", [_dec13], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFiveYearsAheadDirects\", [_dec14], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, \"ptsFiveYearsAheadIndirects\", [_dec15], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, \"renews\", [_dec16], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, \"successDirects\", [_dec17], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, \"successIndirects\", [_dec18], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor19 = _applyDecoratedDescriptor(_class2.prototype, \"durationYears\", [_dec19], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor20 = _applyDecoratedDescriptor(_class2.prototype, \"coPrincipalInvestigators\", [_dec20], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor21 = _applyDecoratedDescriptor(_class2.prototype, \"renewProjection\", [_dec21], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = Success;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/team\", [\"exports\", \"ember-data\", \"b3i-analytics-web-app/constants/sponsor-types\"], function (_exports, _emberData, _sponsorTypes) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _dec31, _dec32, _dec33, _dec34, _dec35, _dec36, _dec37, _dec38, _dec39, _dec40, _dec41, _dec42, _dec43, _dec44, _dec45, _dec46, _dec47, _dec48, _dec49, _dec50, _dec51, _dec52, _dec53, _dec54, _dec55, _dec56, _dec57, _dec58, _dec59, _dec60, _dec61, _dec62, _dec63, _dec64, _dec65, _dec66, _dec67, _dec68, _dec69, _dec70, _dec71, _dec72, _dec73, _dec74, _dec75, _dec76, _dec77, _dec78, _dec79, _dec80, _dec81, _dec82, _dec83, _dec84, _dec85, _dec86, _dec87, _dec88, _dec89, _dec90, _dec91, _dec92, _dec93, _dec94, _dec95, _dec96, _dec97, _dec98, _dec99, _dec100, _dec101, _dec102, _dec103, _dec104, _dec105, _dec106, _dec107, _dec108, _dec109, _dec110, _dec111, _dec112, _dec113, _dec114, _dec115, _dec116, _dec117, _dec118, _dec119, _dec120, _dec121, _dec122, _dec123, _dec124, _dec125, _dec126, _dec127, _dec128, _dec129, _dec130, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _descriptor22, _descriptor23, _descriptor24, _descriptor25, _descriptor26, _descriptor27, _descriptor28, _descriptor29, _descriptor30, _descriptor31, _descriptor32, _descriptor33, _descriptor34, _descriptor35, _descriptor36, _descriptor37, _descriptor38, _descriptor39, _descriptor40, _descriptor41, _descriptor42, _descriptor43, _descriptor44, _descriptor45, _descriptor46, _descriptor47, _descriptor48, _descriptor49, _descriptor50, _descriptor51, _descriptor52, _descriptor53, _descriptor54, _descriptor55, _descriptor56, _descriptor57, _descriptor58, _descriptor59, _descriptor60, _descriptor61, _descriptor62, _descriptor63, _descriptor64, _descriptor65, _descriptor66, _descriptor67, _descriptor68, _descriptor69, _descriptor70, _descriptor71, _descriptor72, _descriptor73, _descriptor74, _descriptor75, _descriptor76, _descriptor77, _descriptor78, _descriptor79, _descriptor80, _descriptor81, _descriptor82, _descriptor83, _descriptor84, _descriptor85, _descriptor86, _descriptor87, _descriptor88, _descriptor89, _descriptor90, _descriptor91, _descriptor92, _descriptor93, _descriptor94, _descriptor95, _descriptor96, _descriptor97, _descriptor98, _descriptor99, _descriptor100, _descriptor101, _descriptor102, _descriptor103, _descriptor104, _descriptor105, _descriptor106, _descriptor107, _descriptor108, _descriptor109, _descriptor110, _descriptor111, _descriptor112, _descriptor113, _descriptor114, _descriptor115, _descriptor116, _descriptor117, _descriptor118, _descriptor119, _descriptor120, _descriptor121, _descriptor122, _descriptor123, _descriptor124, _descriptor125, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var attr = _emberData.default.attr,\n      Model = _emberData.default.Model,\n      hasMany = _emberData.default.hasMany,\n      belongsTo = _emberData.default.belongsTo;\n  var Team = (_dec = attr('string'), _dec2 = attr('string'), _dec3 = attr('boolean'), _dec4 = attr('string'), _dec5 = attr('boolean'), _dec6 = attr('string'), _dec7 = attr('number'), _dec8 = attr('string'), _dec9 = attr('string'), _dec10 = attr('number-not-null'), _dec11 = attr('number-not-null'), _dec12 = attr('number-not-null'), _dec13 = attr('boolean'), _dec14 = attr('number-not-null'), _dec15 = attr('number-not-null'), _dec16 = attr('number-not-null'), _dec17 = attr('boolean'), _dec18 = attr('string'), _dec19 = attr('number-not-null'), _dec20 = attr('number-not-null'), _dec21 = attr('number-not-null'), _dec22 = attr('number-not-null'), _dec23 = attr('number-not-null'), _dec24 = attr('number-not-null'), _dec25 = attr('number-not-null'), _dec26 = attr('number-not-null'), _dec27 = attr('number-not-null'), _dec28 = attr('number-not-null'), _dec29 = attr('number-not-null'), _dec30 = attr('number-not-null'), _dec31 = attr('number-not-null'), _dec32 = attr('number-not-null'), _dec33 = attr('number-not-null'), _dec34 = attr('number-not-null'), _dec35 = attr('number-not-null'), _dec36 = attr('number-not-null'), _dec37 = attr('number-not-null'), _dec38 = attr('number'), _dec39 = attr('number-not-null'), _dec40 = attr('number'), _dec41 = attr('boolean'), _dec42 = attr('percent'), _dec43 = attr('percent'), _dec44 = attr('millions'), _dec45 = attr('millions'), _dec46 = attr('millions'), _dec47 = attr('millions'), _dec48 = attr('number'), _dec49 = attr('number'), _dec50 = attr('number'), _dec51 = attr('number'), _dec52 = attr('number'), _dec53 = attr('number'), _dec54 = attr('number'), _dec55 = attr('number-not-null'), _dec56 = attr('number-not-null'), _dec57 = attr('number'), _dec58 = attr('number'), _dec59 = attr('number'), _dec60 = attr('number'), _dec61 = attr('number'), _dec62 = attr('number'), _dec63 = attr('number'), _dec64 = attr('number'), _dec65 = attr('number'), _dec66 = attr('number'), _dec67 = attr('number'), _dec68 = attr('number'), _dec69 = attr('number'), _dec70 = attr('number'), _dec71 = attr('number'), _dec72 = attr('number'), _dec73 = attr('number'), _dec74 = attr('number'), _dec75 = attr('number'), _dec76 = attr('number'), _dec77 = attr('number'), _dec78 = attr('number'), _dec79 = attr('number'), _dec80 = attr('number'), _dec81 = attr('number'), _dec82 = attr('number'), _dec83 = attr('number'), _dec84 = attr('number'), _dec85 = attr('number'), _dec86 = attr('number'), _dec87 = attr('number'), _dec88 = attr('number'), _dec89 = attr('number'), _dec90 = attr('number'), _dec91 = attr('boolean'), _dec92 = attr('boolean'), _dec93 = attr('boolean'), _dec94 = attr('boolean'), _dec95 = attr('boolean'), _dec96 = attr('number'), _dec97 = attr('number'), _dec98 = attr('number'), _dec99 = attr('number'), _dec100 = attr('number'), _dec101 = attr('number'), _dec102 = attr('number'), _dec103 = attr('number'), _dec104 = attr(), _dec105 = attr(), _dec106 = attr('utc'), _dec107 = attr('utc'), _dec108 = hasMany('departments', {\n    async: true\n  }), _dec109 = hasMany('membership', {\n    async: false\n  }), _dec110 = belongsTo('recruitment', {\n    async: false\n  }), _dec111 = hasMany('sponsor', {\n    async: false\n  }), _dec112 = attr('string'), _dec113 = attr('boolean'), _dec114 = attr('boolean'), _dec115 = Ember.computed('isPublic'), _dec116 = attr('boolean'), _dec117 = Ember.computed('isMedicalSchool'), _dec118 = attr('string'), _dec119 = attr('string'), _dec120 = attr('string'), _dec121 = attr('boolean'), _dec122 = attr('boolean'), _dec123 = attr('boolean'), _dec124 = attr('boolean'), _dec125 = attr('boolean'), _dec126 = attr('boolean'), _dec127 = attr('boolean'), _dec128 = Ember.computed('megaGrantFutureCurrentYearDirects', 'megaGrantFutureCurrentYearIndirects'), _dec129 = Ember.computed('megaGrantFutureOneYearAheadDirects', 'megaGrantFutureOneYearAheadIndirects'), _dec130 = Ember.computed('sponsors.[]'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(Team, _Model);\n\n    var _super = _createSuper(Team);\n\n    function Team() {\n      var _this;\n\n      _classCallCheck(this, Team);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"name\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"logo\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isSaml\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"samlKey\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isSaml\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"samlKey\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"lookback\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"proposalCountOrTotal\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"proposalSponsor\", _descriptor9, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentsDeclineFlagSummary\", _descriptor10, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentsDirectsChange\", _descriptor11, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentsIndirectsChange\", _descriptor12, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentsIncludeMega\", _descriptor13, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"piDeclineFlagSummary\", _descriptor14, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"piDirectsChange\", _descriptor15, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"piIndirectsChange\", _descriptor16, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"piIncludeMega\", _descriptor17, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"cutoffDateForPendingProposals\", _descriptor18, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"nceAndCarryover\", _descriptor19, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"fftMultipleOneYearAgo\", _descriptor20, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"fftMultipleTwoYearsAgo\", _descriptor21, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"fftMultipleThreeYearsAgo\", _descriptor22, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkage\", _descriptor23, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageNih\", _descriptor24, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageOtherFed\", _descriptor25, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageFft\", _descriptor26, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageNonFed\", _descriptor27, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageSponsor5\", _descriptor28, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageSponsor6\", _descriptor29, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"shrinkageSponsor7\", _descriptor30, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountNih\", _descriptor31, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountOtherFed\", _descriptor32, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountFft\", _descriptor33, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountNonFed\", _descriptor34, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountSponsor5\", _descriptor35, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountSponsor6\", _descriptor36, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsorDiscountSponsor7\", _descriptor37, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"fiscalYearStartMonth\", _descriptor38, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"attritionDiscount\", _descriptor39, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentFiscalYear\", _descriptor40, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantUseLifetimeValue\", _descriptor41, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantHedgeProjectionDiscount\", _descriptor42, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantHedgeProjectionDiscountOneYearAhead\", _descriptor43, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantFutureCurrentYearDirects\", _descriptor44, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantFutureCurrentYearIndirects\", _descriptor45, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantFutureOneYearAheadDirects\", _descriptor46, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"megaGrantFutureOneYearAheadIndirects\", _descriptor47, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationNih\", _descriptor48, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationOtherFed\", _descriptor49, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationFft\", _descriptor50, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationNonFed\", _descriptor51, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationSponsor5\", _descriptor52, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationSponsor6\", _descriptor53, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"weightedAverageDurationSponsor7\", _descriptor54, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"schoolProjectionAdjustmentDirects\", _descriptor55, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"schoolProjectionAdjustmentIndirects\", _descriptor56, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsCount\", _descriptor57, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsDirects\", _descriptor58, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsIndirects\", _descriptor59, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsCountNoMega\", _descriptor60, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsDirectsNoMega\", _descriptor61, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"endingGrantsIndirectsNoMega\", _descriptor62, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoTotal\", _descriptor63, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoDirects\", _descriptor64, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoIndirects\", _descriptor65, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearDirects\", _descriptor66, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsCurrentYearIndirects\", _descriptor67, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pisActiveGrantsCount\", _descriptor68, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsOneYearAgoYtd\", _descriptor69, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoYtd\", _descriptor70, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsTwoYearsAgoTotal\", _descriptor71, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoYtd\", _descriptor72, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsThreeYearsAgoTotal\", _descriptor73, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoYtd\", _descriptor74, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFourYearsAgoTotal\", _descriptor75, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoYtd\", _descriptor76, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"actualsFiveYearsAgoTotal\", _descriptor77, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoDirects\", _descriptor78, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ptsOneYearAgoIndirects\", _descriptor79, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirects\", _descriptor80, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirects\", _descriptor81, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"directsChange\", _descriptor82, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"indirectsChange\", _descriptor83, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCount\", _descriptor84, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearCountNoMega\", _descriptor85, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearDirectsNoMega\", _descriptor86, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"pendingCurrentYearIndirectsNoMega\", _descriptor87, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsDirects\", _descriptor88, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsIndirects\", _descriptor89, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ytdActualsTotal\", _descriptor90, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"useMfa\", _descriptor91, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hasClassifyInfo\", _descriptor92, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hasCategory\", _descriptor93, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hasMonthlyActuals\", _descriptor94, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"hasHireDate\", _descriptor95, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrNihk\", _descriptor96, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrNihr\", _descriptor97, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrOtherFed\", _descriptor98, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrFedFlowThru\", _descriptor99, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrNonFed\", _descriptor100, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrSponsor5\", _descriptor101, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrSponsor6\", _descriptor102, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"icrSponsor7\", _descriptor103, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"recruitmentPlan\", _descriptor104, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"officialProjectionSettings\", _descriptor105, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"dateOfData\", _descriptor106, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"queryDate\", _descriptor107, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departments\", _descriptor108, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"memberships\", _descriptor109, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"recruitment\", _descriptor110, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sponsors\", _descriptor111, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"notes\", _descriptor112, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"canExecutivesDownloadData\", _descriptor113, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isPublic\", _descriptor114, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isMedicalSchool\", _descriptor115, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"type\", _descriptor116, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"state\", _descriptor117, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"region\", _descriptor118, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_fft\", _descriptor119, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_nih\", _descriptor120, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_non_fed\", _descriptor121, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_other_fed\", _descriptor122, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_sponsor5\", _descriptor123, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_sponsor6\", _descriptor124, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"is_sponsor7\", _descriptor125, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(Team, [{\n      key: \"isPublicString\",\n      get: function get() {\n        return this.isPublic ? \"Public\" : \"Private\";\n      }\n    }, {\n      key: \"isMedicalSchoolString\",\n      get: function get() {\n        return this.isMedicalSchool ? \"Yes\" : \"No\";\n      }\n    }, {\n      key: \"megaGrantFutureCurrentYearTotal\",\n      //Computed\n      get: function get() {\n        return this.megaGrantFutureCurrentYearDirects + this.megaGrantFutureCurrentYearIndirects;\n      }\n    }, {\n      key: \"megaGrantFutureOneYearAheadTotal\",\n      get: function get() {\n        return this.megaGrantFutureOneYearAheadDirects + this.megaGrantFutureOneYearAheadIndirects;\n      }\n    }, {\n      key: \"isSponsorTypeNihTraining\",\n      get: function get() {\n        if (!this.sponsors) {\n          return false;\n        }\n\n        var sponsor = this.sponsors.filterBy('originalValue', _sponsorTypes.default.NIH);\n\n        if (sponsor.length === 0) {\n          return false;\n        } else {\n          return sponsor[0].isTrainingAward;\n        }\n      }\n    }]);\n\n    return Team;\n  }(Model), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"name\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"logo\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"isSaml\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"samlKey\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"isSaml\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"samlKey\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"lookback\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"proposalCountOrTotal\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"proposalSponsor\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"departmentsDeclineFlagSummary\", [_dec10], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"departmentsDirectsChange\", [_dec11], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor12 = _applyDecoratedDescriptor(_class2.prototype, \"departmentsIndirectsChange\", [_dec12], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor13 = _applyDecoratedDescriptor(_class2.prototype, \"departmentsIncludeMega\", [_dec13], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor14 = _applyDecoratedDescriptor(_class2.prototype, \"piDeclineFlagSummary\", [_dec14], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor15 = _applyDecoratedDescriptor(_class2.prototype, \"piDirectsChange\", [_dec15], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor16 = _applyDecoratedDescriptor(_class2.prototype, \"piIndirectsChange\", [_dec16], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor17 = _applyDecoratedDescriptor(_class2.prototype, \"piIncludeMega\", [_dec17], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor18 = _applyDecoratedDescriptor(_class2.prototype, \"cutoffDateForPendingProposals\", [_dec18], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor19 = _applyDecoratedDescriptor(_class2.prototype, \"nceAndCarryover\", [_dec19], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor20 = _applyDecoratedDescriptor(_class2.prototype, \"fftMultipleOneYearAgo\", [_dec20], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor21 = _applyDecoratedDescriptor(_class2.prototype, \"fftMultipleTwoYearsAgo\", [_dec21], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor22 = _applyDecoratedDescriptor(_class2.prototype, \"fftMultipleThreeYearsAgo\", [_dec22], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor23 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkage\", [_dec23], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor24 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageNih\", [_dec24], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor25 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageOtherFed\", [_dec25], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor26 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageFft\", [_dec26], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor27 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageNonFed\", [_dec27], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor28 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageSponsor5\", [_dec28], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor29 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageSponsor6\", [_dec29], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor30 = _applyDecoratedDescriptor(_class2.prototype, \"shrinkageSponsor7\", [_dec30], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor31 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountNih\", [_dec31], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor32 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountOtherFed\", [_dec32], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor33 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountFft\", [_dec33], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor34 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountNonFed\", [_dec34], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor35 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountSponsor5\", [_dec35], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor36 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountSponsor6\", [_dec36], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor37 = _applyDecoratedDescriptor(_class2.prototype, \"sponsorDiscountSponsor7\", [_dec37], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor38 = _applyDecoratedDescriptor(_class2.prototype, \"fiscalYearStartMonth\", [_dec38], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor39 = _applyDecoratedDescriptor(_class2.prototype, \"attritionDiscount\", [_dec39], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor40 = _applyDecoratedDescriptor(_class2.prototype, \"currentFiscalYear\", [_dec40], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor41 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantUseLifetimeValue\", [_dec41], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor42 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHedgeProjectionDiscount\", [_dec42], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor43 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantHedgeProjectionDiscountOneYearAhead\", [_dec43], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor44 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureCurrentYearDirects\", [_dec44], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor45 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureCurrentYearIndirects\", [_dec45], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor46 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureOneYearAheadDirects\", [_dec46], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor47 = _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureOneYearAheadIndirects\", [_dec47], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor48 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationNih\", [_dec48], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor49 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationOtherFed\", [_dec49], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor50 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationFft\", [_dec50], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor51 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationNonFed\", [_dec51], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor52 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationSponsor5\", [_dec52], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor53 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationSponsor6\", [_dec53], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor54 = _applyDecoratedDescriptor(_class2.prototype, \"weightedAverageDurationSponsor7\", [_dec54], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor55 = _applyDecoratedDescriptor(_class2.prototype, \"schoolProjectionAdjustmentDirects\", [_dec55], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor56 = _applyDecoratedDescriptor(_class2.prototype, \"schoolProjectionAdjustmentIndirects\", [_dec56], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor57 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsCount\", [_dec57], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor58 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsDirects\", [_dec58], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor59 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsIndirects\", [_dec59], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor60 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsCountNoMega\", [_dec60], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor61 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsDirectsNoMega\", [_dec61], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor62 = _applyDecoratedDescriptor(_class2.prototype, \"endingGrantsIndirectsNoMega\", [_dec62], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor63 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoTotal\", [_dec63], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor64 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoDirects\", [_dec64], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor65 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoIndirects\", [_dec65], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor66 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearDirects\", [_dec66], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor67 = _applyDecoratedDescriptor(_class2.prototype, \"ptsCurrentYearIndirects\", [_dec67], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor68 = _applyDecoratedDescriptor(_class2.prototype, \"pisActiveGrantsCount\", [_dec68], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor69 = _applyDecoratedDescriptor(_class2.prototype, \"actualsOneYearAgoYtd\", [_dec69], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor70 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoYtd\", [_dec70], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor71 = _applyDecoratedDescriptor(_class2.prototype, \"actualsTwoYearsAgoTotal\", [_dec71], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor72 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoYtd\", [_dec72], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor73 = _applyDecoratedDescriptor(_class2.prototype, \"actualsThreeYearsAgoTotal\", [_dec73], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor74 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoYtd\", [_dec74], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor75 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFourYearsAgoTotal\", [_dec75], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor76 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoYtd\", [_dec76], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor77 = _applyDecoratedDescriptor(_class2.prototype, \"actualsFiveYearsAgoTotal\", [_dec77], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor78 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoDirects\", [_dec78], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor79 = _applyDecoratedDescriptor(_class2.prototype, \"ptsOneYearAgoIndirects\", [_dec79], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor80 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirects\", [_dec80], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor81 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirects\", [_dec81], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor82 = _applyDecoratedDescriptor(_class2.prototype, \"directsChange\", [_dec82], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor83 = _applyDecoratedDescriptor(_class2.prototype, \"indirectsChange\", [_dec83], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor84 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCount\", [_dec84], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor85 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearCountNoMega\", [_dec85], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor86 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearDirectsNoMega\", [_dec86], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor87 = _applyDecoratedDescriptor(_class2.prototype, \"pendingCurrentYearIndirectsNoMega\", [_dec87], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor88 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsDirects\", [_dec88], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor89 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsIndirects\", [_dec89], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor90 = _applyDecoratedDescriptor(_class2.prototype, \"ytdActualsTotal\", [_dec90], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor91 = _applyDecoratedDescriptor(_class2.prototype, \"useMfa\", [_dec91], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor92 = _applyDecoratedDescriptor(_class2.prototype, \"hasClassifyInfo\", [_dec92], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor93 = _applyDecoratedDescriptor(_class2.prototype, \"hasCategory\", [_dec93], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor94 = _applyDecoratedDescriptor(_class2.prototype, \"hasMonthlyActuals\", [_dec94], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor95 = _applyDecoratedDescriptor(_class2.prototype, \"hasHireDate\", [_dec95], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor96 = _applyDecoratedDescriptor(_class2.prototype, \"icrNihk\", [_dec96], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor97 = _applyDecoratedDescriptor(_class2.prototype, \"icrNihr\", [_dec97], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor98 = _applyDecoratedDescriptor(_class2.prototype, \"icrOtherFed\", [_dec98], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor99 = _applyDecoratedDescriptor(_class2.prototype, \"icrFedFlowThru\", [_dec99], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor100 = _applyDecoratedDescriptor(_class2.prototype, \"icrNonFed\", [_dec100], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor101 = _applyDecoratedDescriptor(_class2.prototype, \"icrSponsor5\", [_dec101], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor102 = _applyDecoratedDescriptor(_class2.prototype, \"icrSponsor6\", [_dec102], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor103 = _applyDecoratedDescriptor(_class2.prototype, \"icrSponsor7\", [_dec103], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor104 = _applyDecoratedDescriptor(_class2.prototype, \"recruitmentPlan\", [_dec104], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor105 = _applyDecoratedDescriptor(_class2.prototype, \"officialProjectionSettings\", [_dec105], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor106 = _applyDecoratedDescriptor(_class2.prototype, \"dateOfData\", [_dec106], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor107 = _applyDecoratedDescriptor(_class2.prototype, \"queryDate\", [_dec107], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor108 = _applyDecoratedDescriptor(_class2.prototype, \"departments\", [_dec108], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor109 = _applyDecoratedDescriptor(_class2.prototype, \"memberships\", [_dec109], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor110 = _applyDecoratedDescriptor(_class2.prototype, \"recruitment\", [_dec110], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor111 = _applyDecoratedDescriptor(_class2.prototype, \"sponsors\", [_dec111], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor112 = _applyDecoratedDescriptor(_class2.prototype, \"notes\", [_dec112], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor113 = _applyDecoratedDescriptor(_class2.prototype, \"canExecutivesDownloadData\", [_dec113], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor114 = _applyDecoratedDescriptor(_class2.prototype, \"isPublic\", [_dec114], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"isPublicString\", [_dec115], Object.getOwnPropertyDescriptor(_class2.prototype, \"isPublicString\"), _class2.prototype), _descriptor115 = _applyDecoratedDescriptor(_class2.prototype, \"isMedicalSchool\", [_dec116], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"isMedicalSchoolString\", [_dec117], Object.getOwnPropertyDescriptor(_class2.prototype, \"isMedicalSchoolString\"), _class2.prototype), _descriptor116 = _applyDecoratedDescriptor(_class2.prototype, \"type\", [_dec118], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor117 = _applyDecoratedDescriptor(_class2.prototype, \"state\", [_dec119], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor118 = _applyDecoratedDescriptor(_class2.prototype, \"region\", [_dec120], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor119 = _applyDecoratedDescriptor(_class2.prototype, \"is_fft\", [_dec121], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor120 = _applyDecoratedDescriptor(_class2.prototype, \"is_nih\", [_dec122], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor121 = _applyDecoratedDescriptor(_class2.prototype, \"is_non_fed\", [_dec123], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor122 = _applyDecoratedDescriptor(_class2.prototype, \"is_other_fed\", [_dec124], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor123 = _applyDecoratedDescriptor(_class2.prototype, \"is_sponsor5\", [_dec125], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor124 = _applyDecoratedDescriptor(_class2.prototype, \"is_sponsor6\", [_dec126], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor125 = _applyDecoratedDescriptor(_class2.prototype, \"is_sponsor7\", [_dec127], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureCurrentYearTotal\", [_dec128], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantFutureCurrentYearTotal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"megaGrantFutureOneYearAheadTotal\", [_dec129], Object.getOwnPropertyDescriptor(_class2.prototype, \"megaGrantFutureOneYearAheadTotal\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isSponsorTypeNihTraining\", [_dec130], Object.getOwnPropertyDescriptor(_class2.prototype, \"isSponsorTypeNihTraining\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = Team;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/user-team-access\", [\"exports\", \"@ember-data/model\"], function (_exports, _model) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var UserTeamAccessModel = (_dec = (0, _model.attr)('string'), _dec2 = (0, _model.attr)('string'), _dec3 = (0, _model.attr)('string'), _dec4 = (0, _model.attr)('string'), _dec5 = (0, _model.attr)('string'), _dec6 = (0, _model.hasMany)('sector'), _dec7 = (0, _model.belongsTo)('user'), _dec8 = (0, _model.belongsTo)('invitation', {\n    serialize: false\n  }), _dec9 = (0, _model.belongsTo)('team'), _dec10 = Ember.computed('role', 'sectors.@each.name'), _dec11 = Ember.computed('role', 'departmentName'), (_class = (_temp = /*#__PURE__*/function (_Model) {\n    _inherits(UserTeamAccessModel, _Model);\n\n    var _super = _createSuper(UserTeamAccessModel);\n\n    function UserTeamAccessModel() {\n      var _this;\n\n      _classCallCheck(this, UserTeamAccessModel);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"role\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"state\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"position\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentId\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"departmentName\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"sectors\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"user\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"invitation\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"team\", _descriptor9, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(UserTeamAccessModel, [{\n      key: \"sectorNameDisplay\",\n      //Computed\n      get: function get() {\n        var role = this.role;\n        var sectors = this.sectors;\n\n        if (role === 'sector') {\n          return sectors.toArray().map(function (sector) {\n            return sector.get('name');\n          }).join(', ');\n        } else if (role === 'department') {\n          return 'N/A';\n        }\n\n        return 'All Sectors';\n      }\n    }, {\n      key: \"departmentNameDisplay\",\n      get: function get() {\n        var role = this.role;\n        var departmentName = this.departmentName;\n\n        if (role === 'department') {\n          return departmentName;\n        } else if (role === 'sector') {\n          return 'N/A';\n        }\n\n        return 'All Departments';\n      }\n    }]);\n\n    return UserTeamAccessModel;\n  }(_model.default), _temp), (_descriptor = _applyDecoratedDescriptor(_class.prototype, \"role\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, \"state\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, \"position\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, \"departmentId\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, \"departmentName\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, \"sectors\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, \"user\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, \"invitation\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, \"team\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class.prototype, \"sectorNameDisplay\", [_dec10], Object.getOwnPropertyDescriptor(_class.prototype, \"sectorNameDisplay\"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, \"departmentNameDisplay\", [_dec11], Object.getOwnPropertyDescriptor(_class.prototype, \"departmentNameDisplay\"), _class.prototype)), _class));\n  _exports.default = UserTeamAccessModel;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/models/user\", [\"exports\", \"@ember-data/model\", \"ember-cp-validations\", \"b3i-analytics-web-app/constants/errors\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _model, _emberCpValidations, _errors, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var Validations = (0, _emberCpValidations.buildValidations)({\n    email: [(0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Email Address'\n    }), (0, _emberCpValidations.validator)('format', {\n      type: 'email',\n      message: 'Email Address is not valid'\n    })],\n    firstName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'First Name'\n    }),\n    lastName: (0, _emberCpValidations.validator)('presence', {\n      presence: true,\n      message: _errors.default.presenceError,\n      description: 'Last Name'\n    })\n  });\n  var User = (_dec = Ember.computed('firstName', 'lastName'), _dec2 = Ember.computed('firstName', 'lastName'), _dec3 = (0, _model.attr)('string'), _dec4 = (0, _model.attr)('string'), _dec5 = (0, _model.attr)('string'), _dec6 = (0, _model.attr)('string'), _dec7 = (0, _model.attr)('string'), _dec8 = (0, _model.attr)('boolean'), _dec9 = (0, _model.attr)('string'), _dec10 = Ember.computed('systemRole'), _dec11 = (0, _model.attr)('string'), _dec12 = (0, _model.attr)('date'), _dec13 = (0, _model.belongsTo)('membership'), _dec14 = (0, _model.belongsTo)('profile'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Model$extend) {\n    _inherits(User, _Model$extend);\n\n    var _super = _createSuper(User);\n\n    function User() {\n      var _this;\n\n      _classCallCheck(this, User);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"email\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"samlKey\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"firstName\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"lastName\", _descriptor4, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"password\", _descriptor5, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"isSuperuser\", _descriptor6, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"systemRole\", _descriptor7, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"instanceAccessCount\", _descriptor8, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"lastActivity\", _descriptor9, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"membership\", _descriptor10, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"profile\", _descriptor11, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(User, [{\n      key: \"name\",\n      get: function get() {\n        return this.firstName + ' ' + this.lastName;\n      }\n    }, {\n      key: \"nameComma\",\n      get: function get() {\n        return this.lastName + ', ' + this.firstName;\n      }\n    }, {\n      key: \"systemRoleString\",\n      get: function get() {\n        switch (this.systemRole) {\n          case _roles.default.SYSTEM_ROLE_HURON_ADMIN:\n            return \"Huron Admin\";\n\n          case _roles.default.SYSTEM_ROLE_HURON_EXEC:\n            return \"Huron Exec\";\n\n          case _roles.default.SYSTEM_ROLE_USER:\n            return \"User\";\n\n          default:\n            return this.systemRole;\n        }\n      }\n    }]);\n\n    return User;\n  }(_model.default.extend(Validations)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"name\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"name\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"nameComma\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"nameComma\"), _class2.prototype), _descriptor = _applyDecoratedDescriptor(_class2.prototype, \"email\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"samlKey\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"firstName\", [_dec5], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"lastName\", [_dec6], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor5 = _applyDecoratedDescriptor(_class2.prototype, \"password\", [_dec7], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor6 = _applyDecoratedDescriptor(_class2.prototype, \"isSuperuser\", [_dec8], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor7 = _applyDecoratedDescriptor(_class2.prototype, \"systemRole\", [_dec9], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"systemRoleString\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"systemRoleString\"), _class2.prototype), _descriptor8 = _applyDecoratedDescriptor(_class2.prototype, \"instanceAccessCount\", [_dec11], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor9 = _applyDecoratedDescriptor(_class2.prototype, \"lastActivity\", [_dec12], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor10 = _applyDecoratedDescriptor(_class2.prototype, \"membership\", [_dec13], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor11 = _applyDecoratedDescriptor(_class2.prototype, \"profile\", [_dec14], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = User;\n});","define(\"b3i-analytics-web-app/modifiers/did-insert\", [\"exports\", \"@ember/render-modifiers/modifiers/did-insert\"], function (_exports, _didInsert) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _didInsert.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/modifiers/did-update\", [\"exports\", \"@ember/render-modifiers/modifiers/did-update\"], function (_exports, _didUpdate) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _didUpdate.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/modifiers/in-viewport\", [\"exports\", \"ember-in-viewport/modifiers/in-viewport\"], function (_exports, _inViewport) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _inViewport.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/modifiers/on-click-outside\", [\"exports\", \"ember-click-outside/modifier\"], function (_exports, _modifier) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _modifier.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/modifiers/will-destroy\", [\"exports\", \"@ember/render-modifiers/modifiers/will-destroy\"], function (_exports, _willDestroy) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _willDestroy.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/router\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var Router = /*#__PURE__*/function (_Ember$Router) {\n    _inherits(Router, _Ember$Router);\n\n    var _super = _createSuper(Router);\n\n    function Router() {\n      var _this;\n\n      _classCallCheck(this, Router);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"location\", _environment.default.locationType);\n\n      _defineProperty(_assertThisInitialized(_this), \"rootURL\", _environment.default.rootURL);\n\n      return _this;\n    }\n\n    return Router;\n  }(Ember.Router);\n\n  _exports.default = Router;\n\n  window.__CLASSIC_OWN_CLASSES__.set(Router, true);\n\n  Router.map(function () {\n    this.route('login', function () {\n      this.route('verify');\n    });\n    this.route('forgot-password');\n    this.route('forgot-password-success');\n    this.route('reset-password');\n    this.route('reset-password-success');\n    this.route('sandbox');\n    this.route('app', function () {\n      this.route('departments', function () {\n        this.route('department', {\n          path: '/:department_id'\n        });\n        this.route('principal-investigator', {\n          path: 'principal-investigators/:principal_investigator_id'\n        }, function () {\n          this.route('projections');\n          this.route('comparative-statistics');\n          this.route('history');\n        });\n      });\n      this.route('users');\n      this.route('help', function () {\n        this.route('introduction');\n        this.route('instructions');\n        this.route('glossary');\n        this.route('primer');\n      });\n      this.route('settings');\n      this.route('data-import');\n      this.route('projections', function () {\n        this.route('forecast-modifier');\n      });\n      this.route('investigators');\n      this.route('mega-grants', function () {\n        this.route('active');\n        this.route('summary');\n        this.route('pending');\n      });\n      this.route('insights', function () {\n        this.route('core-detail');\n        this.route('comparative-proposals-successes');\n      });\n      this.route('commentary');\n      this.route('recruitment');\n      this.route('data-mining');\n      this.route('comparative', function () {\n        this.route('departments');\n        this.route('investigators');\n      });\n      this.route('export-investigators');\n    });\n    this.route('signup');\n    this.route('saml-complete');\n    this.route('saml-error');\n    this.route('mfa-setup', function () {\n      this.route('verify');\n      this.route('request-verification');\n      this.route('success');\n    });\n    this.route('commentary');\n    this.route('admin', function () {\n      this.route('create-institution');\n      this.route('institutions');\n      this.route('users', function () {\n        this.route('user', {\n          path: '/:user_id'\n        });\n      });\n    });\n    this.route('welcome');\n    this.route('export-investigators', function () {});\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/admin\", [\"exports\", \"ember-simple-auth/mixins/authenticated-route-mixin\", \"b3i-analytics-web-app/constants/roles\"], function (_exports, _authenticatedRouteMixin, _roles) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var AdminRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(AdminRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(AdminRoute);\n\n    function AdminRoute() {\n      var _this;\n\n      _classCallCheck(this, AdminRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(AdminRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel(transition) {\n        if (!this.currentUser.user || this.currentUser.user.get('profile.systemRole') !== _roles.default.SYSTEM_ROLE_HURON_ADMIN) {\n          this.set('session.attemptedTransition', transition);\n          this.transitionTo('login');\n        }\n      }\n    }]);\n\n    return AdminRoute;\n  }(Ember.Route.extend(_authenticatedRouteMixin.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = AdminRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/admin/institutions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var AdminInstitutionsRoute = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(AdminInstitutionsRoute, _Ember$Route);\n\n    var _super = _createSuper(AdminInstitutionsRoute);\n\n    function AdminInstitutionsRoute() {\n      _classCallCheck(this, AdminInstitutionsRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(AdminInstitutionsRoute, [{\n      key: \"model\",\n      value: function model() {\n        return [];\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(AdminInstitutionsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.fetchFilteredData();\n      }\n    }]);\n\n    return AdminInstitutionsRoute;\n  }(Ember.Route);\n\n  _exports.default = AdminInstitutionsRoute;\n\n  window.__CLASSIC_OWN_CLASSES__.set(AdminInstitutionsRoute, true);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/admin/users/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var AdminUsersRoute = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(AdminUsersRoute, _Ember$Route);\n\n    var _super = _createSuper(AdminUsersRoute);\n\n    function AdminUsersRoute() {\n      _classCallCheck(this, AdminUsersRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(AdminUsersRoute, [{\n      key: \"model\",\n      value: function model() {\n        var _this = this;\n\n        if (!this.controller) {\n          this.set('queryParams', {\n            page: 1,\n            ordering: 'last_name',\n            admin: true\n          });\n        } else {\n          var params = this.controller.queryParams;\n          params.page = 1;\n          this.set('queryParams', params);\n        }\n\n        return this.store.query('user', this.queryParams).then(function (users) {\n          _this.set('meta', users.get('meta'));\n\n          return users.toArray();\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(AdminUsersRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('meta', this.meta);\n        controller.set('queryParams', this.queryParams);\n        controller.set('page', 1);\n      }\n    }]);\n\n    return AdminUsersRoute;\n  }(Ember.Route);\n\n  _exports.default = AdminUsersRoute;\n\n  window.__CLASSIC_OWN_CLASSES__.set(AdminUsersRoute, true);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/admin/users/user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var AdminUsersUserRoute = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(AdminUsersUserRoute, _Ember$Route);\n\n    var _super = _createSuper(AdminUsersUserRoute);\n\n    function AdminUsersUserRoute() {\n      _classCallCheck(this, AdminUsersUserRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(AdminUsersUserRoute, [{\n      key: \"model\",\n      value: function model(params) {\n        var user = this.store.findRecord('user', params.user_id, {\n          adapterOptions: {\n            admin: true\n          }\n        });\n        var userTeamAccess = this.store.query('user-team-access', {\n          adapterOptions: {\n            user: params.user_id,\n            institution_access: true\n          }\n        });\n        return Ember.RSVP.hash({\n          user: user,\n          userTeamAccess: userTeamAccess\n        });\n      }\n    }]);\n\n    return AdminUsersUserRoute;\n  }(Ember.Route);\n\n  _exports.default = AdminUsersUserRoute;\n\n  window.__CLASSIC_OWN_CLASSES__.set(AdminUsersUserRoute, true);\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app\", [\"exports\", \"ember-simple-auth/mixins/authenticated-route-mixin\", \"b3i-analytics-web-app/config/environment\", \"jquery\"], function (_exports, _authenticatedRouteMixin, _environment, _jquery) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var AppRoute = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = Ember.inject.service, _dec5 = Ember._action, _dec6 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(AppRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(AppRoute);\n\n    function AppRoute() {\n      var _this;\n\n      _classCallCheck(this, AppRoute);\n\n      _this = _super.apply(this, arguments);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"metrics\", _descriptor3, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"router\", _descriptor4, _assertThisInitialized(_this));\n\n      var router = _this.router;\n      router.on('routeDidChange', function () {\n        _this._trackPage();\n      });\n      return _this;\n    }\n\n    _createClass(AppRoute, [{\n      key: \"_trackPage\",\n      value: function _trackPage() {\n        // Track each page load with the metrics service to send analytics data to the configured services\n        var page = this.url;\n        var title = this.currentRouteName || 'unknown';\n        var metrics = this.metrics;\n\n        if (this.currentUser && this.currentUser.user) {\n          var userId = this.currentUser.user.id;\n          var userFirstName = this.currentUser.user.firstName;\n          var userLastName = this.currentUser.user.lastName;\n          var userEmail = this.currentUser.user.email;\n          var teamName = this.currentUser.team.name;\n\n          if (userId) {\n            metrics.identify({\n              distinctId: userId,\n              $first_name: userFirstName,\n              $last_name: userLastName,\n              $email: userEmail,\n              team: teamName\n            });\n          }\n        }\n\n        metrics.trackPage({\n          page: page,\n          title: title\n        });\n      }\n    }, {\n      key: \"model\",\n      value: function model() {\n        var _this2 = this;\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/mfa/\");\n        return this.ajax.request(url).then(function (response) {\n          Ember.run(function () {\n            //IF the user is not using MFA and their school requires this, force them to enable it.\n            var team = _this2.get('currentUser.team');\n\n            if (!response['data']['attributes']['enabled'] && team && team.get('useMfa') && !_this2.currentUser.user.isSuperuser) {\n              _this2.transitionTo('mfa-setup.request-verification');\n            }\n          });\n        });\n      }\n    }, {\n      key: \"fetchAirtableRoutes\",\n      value: function fetchAirtableRoutes() {\n        var _this3 = this;\n\n        var airtableKey = _environment.default.airtableKey;\n        var url = 'https://api.airtable.com/v0/appEVIfPVS9PTFnmM/Routes?view=Grid%20view';\n        var headers = {};\n        headers['Authorization'] = 'Bearer ' + airtableKey;\n\n        _jquery.default.ajax({\n          contentType: 'application/json',\n          method: 'GET',\n          headers: headers,\n          url: url\n        }).then(function (response) {\n          Ember.run(function () {\n            var routes = response.records;\n            var routesArray = [];\n            routes.map(function (record) {\n              if (record.fields.Name && record.fields.Route) {\n                routesArray.push({\n                  page: record.fields.Name,\n                  route: record.fields.Route,\n                  excludeRoute: record.fields.ExcludeRoute || null\n                });\n              }\n            });\n\n            _this3.controller.set('routesArray', routesArray);\n          });\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this4 = this;\n\n        // Set up the ajax request using the Airtable API key in the ENV and URL from Airtable\n        var airtableKey = _environment.default.airtableKey;\n        var url = 'https://api.airtable.com/v0/appEVIfPVS9PTFnmM/Content?view=Grid%20view';\n        var headers = {};\n        headers['Authorization'] = 'Bearer ' + airtableKey;\n\n        _jquery.default.ajax({\n          contentType: 'application/json',\n          method: 'GET',\n          headers: headers,\n          url: url\n        }).then(function (response) {\n          Ember.run(function () {\n            // First, we map the array of records that we get back from Airtable\n            // Since the content needs to be split up by route, we need to separate\n            // records out accordingly.\n            var content = response.records;\n            var pageDict = {};\n            content.filter(function (record) {\n              // Filter out the records that are incomplete and\n              // don't have pages. Letting through incomplete\n              // records will break things later.\n              var _record$fields = record.fields,\n                  Date = _record$fields.Date,\n                  Files = _record$fields.Files,\n                  Section = _record$fields.Section,\n                  Page = _record$fields.Page;\n              return Date && Files && Section && Files.length > 0 && Page;\n            }).map(function (record) {\n              // First, we need to get the Page from the Airtable record\n              var page = record.fields.Page; // Push the record into the right page in pageDict\n              // If the page isn't there yet, we'll create it in pageDict\n\n              if (page in pageDict) {\n                pageDict[page].push(record);\n              } else {\n                pageDict[page] = [record];\n              }\n            });\n            controller.set('commentaryContent', pageDict);\n\n            _this4.fetchAirtableRoutes();\n          });\n        }).then(function () {\n          controller.findCommentaryContentForRoute();\n        });\n      }\n    }, {\n      key: \"willTransition\",\n      value: function willTransition() {\n        this.controller.set('isShowingAccountDropdown', false);\n      }\n    }, {\n      key: \"error\",\n      value: function error(_error, transition) {\n        this.replaceWith('app.projections.index');\n      }\n    }]);\n\n    return AppRoute;\n  }(Ember.Route.extend(_authenticatedRouteMixin.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"metrics\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor4 = _applyDecoratedDescriptor(_class2.prototype, \"router\", [_dec4], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"willTransition\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"willTransition\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"error\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"error\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = AppRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/commentary\", [\"exports\", \"jquery\", \"moment\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _jquery, _moment, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var CommentaryRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(CommentaryRoute, _Ember$Route);\n\n    var _super = _createSuper(CommentaryRoute);\n\n    function CommentaryRoute() {\n      _classCallCheck(this, CommentaryRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(CommentaryRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this = this;\n\n        // Set up the ajax request using the Airtable API key in the ENV and URL from Airtable\n        var airtableKey = _environment.default.airtableKey;\n        var url = 'https://api.airtable.com/v0/appEVIfPVS9PTFnmM/Content?view=Grid%20view';\n        var headers = {};\n        headers['Authorization'] = 'Bearer ' + airtableKey;\n\n        _jquery.default.ajax({\n          contentType: 'application/json',\n          method: 'GET',\n          headers: headers,\n          url: url\n        }).then(function (response) {\n          Ember.run(function () {\n            // First, we map the array of records that we get back from Airtable\n            // Since the content is displayed segmented by months, we'll need to\n            // break the content up by month in a dictionary that we're creating\n            var content = response.records;\n            var sectionDict = {\n              'newB3iFeatures': [],\n              'b3iTips': [],\n              'whitePapers': [],\n              'inTheNews': [],\n              'articlesOfInterest': []\n            };\n            content.filter(function (record) {\n              var _record$fields = record.fields,\n                  Date = _record$fields.Date,\n                  Files = _record$fields.Files,\n                  Section = _record$fields.Section;\n              return Date && Files && Section && Files.length > 0;\n            }).map(function (record) {\n              var section = record.fields.Section.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, function (letter, index) {\n                return index == 0 ? letter.toLowerCase() : letter.toUpperCase();\n              }).replace(/\\s+/g, '');\n\n              if (section in sectionDict) {\n                sectionDict[section].push(record);\n              } else {\n                sectionDict[section] = [record];\n              }\n            });\n            Object.keys(sectionDict).forEach(function (section) {\n              var monthDict = {};\n              var sectionArray = sectionDict[section];\n\n              if (sectionArray.length > 0) {\n                sectionArray.forEach(function (record) {\n                  // Establish the month from the data field\n                  var month = (0, _moment.default)(record.fields.Date).format('YYYY-MM'); // Push the record into the right month in the monthDict.\n                  // If the month isn't there yet, add the month with the\n                  // record.\n\n                  if (month in monthDict) {\n                    monthDict[month].push(record);\n                  } else {\n                    monthDict[month] = [record];\n                  }\n                }); // Now we have a dictionary of months, each containing the content\n                // that has the Date field set inside of that month. Next, we need\n                // to sort it so that the most recent month appears at the top\n\n                var orderedMonthDict = {}; // Pull an array of the month keys (YYYY.MM) sorted in descending\n                // order, then push each one into the orderedMonthDict.\n\n                Object.keys(monthDict).sort(function (a, b) {\n                  return (0, _moment.default)(b).format('YYYY.MM') - (0, _moment.default)(a).format('YYYY.MM');\n                }).forEach(function (key) {\n                  orderedMonthDict[key] = monthDict[key];\n                });\n                sectionDict[section] = orderedMonthDict;\n              } else {\n                delete sectionDict[section];\n              }\n            }); // Set the array we created to a property on the controller so we can\n            // access it in the template.\n\n            controller.set('contentList', sectionDict);\n            controller.set('pageName', _this.get('router.currentRouteName'));\n          });\n        });\n      }\n    }]);\n\n    return CommentaryRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = CommentaryRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/comparative\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ComparativeRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(ComparativeRoute, _Ember$Route);\n\n    var _super = _createSuper(ComparativeRoute);\n\n    function ComparativeRoute() {\n      _classCallCheck(this, ComparativeRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ComparativeRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = ComparativeRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/comparative/departments\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _environment, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DepartmentsRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(DepartmentsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(DepartmentsRoute);\n\n    function DepartmentsRoute() {\n      var _this;\n\n      _classCallCheck(this, DepartmentsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(DepartmentsRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(DepartmentsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var settingsString = window.sessionStorage.getItem('comparativeDepartmentSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n\n          controller.saveSettings();\n        }\n\n        var departmentNamesUrl = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(departmentNamesUrl, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          Ember.run(function () {\n            if (response) {\n              var sectorDict = {};\n\n              _this2.store.pushPayload('department', response);\n\n              var departments = _this2.store.peekAll('department');\n\n              departments.forEach(function (department) {\n                var sector = department.get('sector.name');\n\n                if (sector in sectorDict) {\n                  sectorDict[sector].push(department);\n                } else {\n                  sectorDict[sector] = [department];\n                }\n              });\n              var orderedSectorDict = {};\n              Object.keys(sectorDict).sort().forEach(function (key) {\n                orderedSectorDict[key] = sectorDict[key];\n\n                if (orderedSectorDict[key].length < 1) {\n                  orderedSectorDict[key] = [];\n                }\n              });\n              var optionsList = []; //Department users should not have access to all sectors\n\n              if (_this2.isNotDepartment) {\n                optionsList.push({\n                  isGroupName: true,\n                  value: 'All Sectors'\n                });\n              }\n\n              for (var sector in orderedSectorDict) {\n                if (sectorDict.hasOwnProperty(sector)) {\n                  //Department user cant filter by sector\n                  if (_this2.isNotDepartment) {\n                    optionsList.push({\n                      isGroupName: true,\n                      value: sector\n                    });\n                  }\n                }\n              }\n\n              controller.set('sectorOptions', optionsList);\n\n              if (!controller.selectedSector) {\n                controller.set('selectedSector', optionsList[0]);\n              }\n            }\n          });\n        });\n        controller.fetchData();\n      }\n    }]);\n\n    return DepartmentsRoute;\n  }(Ember.Route.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = DepartmentsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/comparative/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var IndexRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      _classCallCheck(this, IndexRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        this.replaceWith('app.comparative.departments');\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/comparative/investigators\", [\"exports\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var InvestigatorsRoute = (_dec = Ember.inject.service, _dec2 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(InvestigatorsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(InvestigatorsRoute);\n\n    function InvestigatorsRoute() {\n      var _this;\n\n      _classCallCheck(this, InvestigatorsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"filtersFromAnotherRoute\", null);\n\n      return _this;\n    }\n\n    _createClass(InvestigatorsRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        _get(_getPrototypeOf(InvestigatorsRoute.prototype), \"beforeModel\", this).apply(this, arguments);\n\n        window.scrollTo(0, 0);\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(InvestigatorsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var settingsString = window.sessionStorage.getItem('comparativePiSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        this.ajax.request('department_names/').then(function (response) {\n          if (response) {\n            (function () {\n              var sectorDict = {};\n\n              _this2.store.pushPayload('department', response);\n\n              var departments = _this2.store.peekAll('department');\n\n              departments.forEach(function (department) {\n                var sector = department.get('sector.name');\n\n                if (sector in sectorDict) {\n                  sectorDict[sector].push(department);\n                } else {\n                  sectorDict[sector] = [department];\n                }\n              });\n              var orderedSectorDict = {};\n              Object.keys(sectorDict).sort().forEach(function (key) {\n                orderedSectorDict[key] = sectorDict[key];\n\n                if (orderedSectorDict[key].length < 1) {\n                  orderedSectorDict[key] = [];\n                }\n              });\n              var optionsList = []; //Department users should not have access to all sectors\n\n              if (_this2.isNotDepartment) {\n                optionsList.push({\n                  isGroupName: true,\n                  value: 'All'\n                });\n              }\n\n              for (var sector in orderedSectorDict) {\n                if (sectorDict.hasOwnProperty(sector)) {\n                  //Department user cant filter by sector\n                  if (_this2.isNotDepartment) {\n                    optionsList.push({\n                      isGroupName: true,\n                      value: sector\n                    });\n                  }\n\n                  var _departments = orderedSectorDict[sector];\n\n                  _departments.forEach(function (department) {\n                    optionsList.push({\n                      value: department.get('name'),\n                      id: department.get('id')\n                    });\n                  });\n                }\n              }\n\n              controller.set('departmentOptions', optionsList);\n\n              if (_this2.filtersFromAnotherRoute) {\n                controller.set('page', 1);\n                var deptIndex = null;\n\n                if (_this2.filtersFromAnotherRoute.deptId) {\n                  deptIndex = optionsList.findIndex(function (opt) {\n                    return opt.id === _this2.filtersFromAnotherRoute.deptId;\n                  });\n                }\n\n                controller.set('selectedSelectedDepartment', deptIndex ? optionsList[deptIndex] : optionsList[0]);\n                controller.set('selectedComparisonDepartment', optionsList[0]);\n\n                if (_this2.filtersFromAnotherRoute.classify) {\n                  controller.set('selectedSelectedClassify', _this2.filtersFromAnotherRoute.classify);\n                }\n\n                if (_this2.filtersFromAnotherRoute.quartile) {\n                  controller.set('selectedSelectedQuartile', _this2.filtersFromAnotherRoute.quartile);\n                }\n              } else {\n                if (!controller.selectedSelectedDepartment) {\n                  controller.set('selectedSelectedDepartment', optionsList[0]);\n                }\n\n                if (!controller.selectedComparisonDepartment) {\n                  controller.set('selectedComparisonDepartment', optionsList[0]);\n                }\n              }\n\n              controller.fetchData();\n            })();\n          }\n        });\n      }\n    }, {\n      key: \"willTransition\",\n      value: function willTransition() {\n        var controller = this.controllerFor('app.comparative.investigators');\n        controller.set('page', 1);\n        return true;\n      }\n    }]);\n\n    return InvestigatorsRoute;\n  }(Ember.Route.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"willTransition\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"willTransition\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = InvestigatorsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/data-import\", [\"exports\", \"b3i-analytics-web-app/mixins/admin-only-route\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _adminOnlyRoute, _environment, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DataImportRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(DataImportRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(DataImportRoute);\n\n    function DataImportRoute() {\n      var _this2;\n\n      _classCallCheck(this, DataImportRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this2 = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"currentUser\", _descriptor, _assertThisInitialized(_this2));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"ajax\", _descriptor2, _assertThisInitialized(_this2));\n\n      _initializerDefineProperty(_assertThisInitialized(_this2), \"year\", _descriptor3, _assertThisInitialized(_this2));\n\n      _defineProperty(_assertThisInitialized(_this2), \"attemptsLeft\", 1200);\n\n      _defineProperty(_assertThisInitialized(_this2), \"retriesLeft\", 10);\n\n      _defineProperty(_assertThisInitialized(_this2), \"pollTimeout\", 30000);\n\n      return _this2;\n    }\n\n    _createClass(DataImportRoute, [{\n      key: \"model\",\n      value: function model() {\n        return this.store.findAll('importFromCsv');\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(DataImportRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        this.store.findAll('importFromCsv', {\n          reload: true\n        }).then(function (importFromCsvs) {\n          if (importFromCsvs.content.length > 0) {\n            //Set the meta data\n            var importFromCsv = importFromCsvs.objectAt(0);\n            var metaString = importFromCsv.get('importMetadata');\n            var meta = JSON.parse(metaString);\n            controller.set('meta', meta);\n            controller.set('isLoading', false);\n          }\n        });\n      }\n    }, {\n      key: \"pollUploadStatus\",\n      value: function pollUploadStatus(taskId) {\n        var _this3 = this;\n\n        this.ajax.request(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/tasks/\").concat(taskId, \"/\")).then(function (response) {\n          var status = response.data.status;\n\n          if (status === 'succeeded') {\n            //Clear all records since they would be out of date\n            _this3.store.unloadAll(); //Reload the user\n\n\n            _this3.currentUser.load(); //Get the latest import from csv record\n\n\n            _this3.store.findAll('importFromCsv', {\n              reload: true\n            }).then(function (importFromCsvs) {\n              if (importFromCsvs.content.length > 0) {\n                //Set the meta data\n                var importFromCsv = importFromCsvs.objectAt(0);\n                var metaString = importFromCsv.get('importMetadata');\n                var meta = JSON.parse(metaString);\n\n                _this3.controller.set('meta', meta);\n              }\n\n              _this3.controller.set('isLoading', false);\n\n              _this3.controller.set('hasUploaded', true);\n            });\n          } else if (status === 'failed') {\n            _this3.controller.set('isLoading', false);\n\n            _this3.controller.set('errors', ['Huron Analytics has encountered a problem uploading your data.  Please make sure your uploads are properly formatted.  If there are no format issues, contact Huron Analytics Help at <a href=\"mailto:HRAsupport@huronconsultinggroup.com\">HRAsupport@huronconsultinggroup.com</a> for immediate assistance.']);\n          } else {\n            _this3.attemptsLeft--;\n\n            if (_this3.attemptsLeft <= 0) {\n              _this3.controller.set('isLoading', false);\n\n              _this3.controller.set('errors', ['Huron Analytics has encountered a problem getting the status of your data upload. Please contact Huron Analytics Help at <a href=\"mailto:HRAsupport@huronconsultinggroup.com\">HRAsupport@huronconsultinggroup.com</a> for immediate assistance.']);\n            } else {\n              setTimeout(function () {\n                _this3.pollUploadStatus(taskId);\n              }, _this3.pollTimeout);\n            }\n          }\n        }).catch(function (response) {\n          _this3.retriesLeft--;\n\n          if (_this3.retriesLeft <= 0) {\n            _this3.controller.set('errors', _errors.default.mapResponseErrors(response));\n\n            _this3.controller.set('isLoading', false);\n          } else {\n            setTimeout(function () {\n              _this3.pollUploadStatus(taskId);\n            }, _this3.pollTimeout);\n          }\n        });\n      }\n    }, {\n      key: \"uploadData\",\n      value: function uploadData(data) {\n        var _this4 = this;\n\n        var _this = this;\n\n        this.controller.set('meta', null);\n        this.controller.set('hasUploaded', false);\n        this.controller.set('errors', false);\n        this.controller.set('isLoading', true); //Save the updated pending cutoff date before uploading\n\n        this.controller.get('currentUser.team').save().then(function () {\n          _this4.ajax.post(\"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/import_from_csv/\"), {\n            processData: false,\n            contentType: false,\n            data: data\n          }).then(function (response) {\n            Ember.run(function () {\n              _this.pollUploadStatus(response.data.task_id);\n            });\n          }).catch(function (response) {\n            _this.controller.set('errors', _errors.default.mapResponseErrors(response));\n\n            _this.controller.set('isLoading', false);\n          });\n        }).catch(function (response) {\n          _this.controller.set('errors', _errors.default.mapResponseErrors(response));\n\n          _this.controller.set('isLoading', false);\n        });\n      }\n    }, {\n      key: \"resetController\",\n      value: function resetController(controller, isExiting) {\n        if (isExiting) {\n          //Reset the state of the controller back to its original form\n          controller.set('hasUploaded', false);\n          controller.set('meta', null);\n          controller.set('fd', new FormData());\n          controller.set('queryDate', null);\n          controller.set('facultyFileName', null);\n          controller.set('proposalsFileName', null);\n          controller.set('successesFileName', null);\n          controller.set('actualsFileName', null);\n          controller.set('coPisFileName', null);\n          controller.set('sectorsDepartmentsFileName', null);\n          controller.set('errors', null);\n        }\n      }\n    }]);\n\n    return DataImportRoute;\n  }(Ember.Route.extend(_adminOnlyRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"uploadData\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"uploadData\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DataImportRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/data-mining\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _environment, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DataMiningRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(DataMiningRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(DataMiningRoute);\n\n    function DataMiningRoute() {\n      var _this;\n\n      _classCallCheck(this, DataMiningRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor3, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(DataMiningRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(DataMiningRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('isLoading', true); // Load the sector and departments\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            (function () {\n              var sectorDict = {};\n\n              _this2.store.pushPayload('department', response);\n\n              var departments = _this2.store.peekAll('department');\n\n              departments.forEach(function (department) {\n                var sector = department.get('sector.name');\n\n                if (sector in sectorDict) {\n                  sectorDict[sector].push(department);\n                } else {\n                  sectorDict[sector] = [department];\n                }\n              });\n              var orderedSectorDict = {};\n              Object.keys(sectorDict).sort().forEach(function (key) {\n                orderedSectorDict[key] = sectorDict[key];\n\n                if (orderedSectorDict[key].length < 1) {\n                  orderedSectorDict[key] = [];\n                }\n              });\n              var optionsList = []; //Department users should not have access to all sectors\n\n              if (_this2.isNotDepartment) {\n                optionsList.push({\n                  isGroupName: true,\n                  value: 'All Sectors'\n                });\n              }\n\n              for (var sector in orderedSectorDict) {\n                if (sectorDict.hasOwnProperty(sector)) {\n                  //Department user cant filter by sector\n                  if (_this2.isNotDepartment) {\n                    optionsList.push({\n                      isGroupName: true,\n                      value: sector\n                    });\n                  }\n\n                  var _departments = orderedSectorDict[sector];\n\n                  _departments.forEach(function (department) {\n                    optionsList.push({\n                      value: department.get('name'),\n                      id: department.get('id')\n                    });\n                  });\n                }\n              }\n\n              controller.set('sectorOptions', optionsList);\n              controller.set('selectedSector', {\n                isGroupName: true,\n                value: 'All Sectors'\n              });\n              controller.fetchFilteredData();\n            })();\n          }\n        });\n      }\n    }]);\n\n    return DataMiningRoute;\n  }(Ember.Route.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = DataMiningRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments\", [\"exports\", \"jquery\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _jquery, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DepartmentsRoute = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember._action, _dec4 = Ember._action, _dec5 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(DepartmentsRoute, _Ember$Route);\n\n    var _super = _createSuper(DepartmentsRoute);\n\n    function DepartmentsRoute() {\n      var _this;\n\n      _classCallCheck(this, DepartmentsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"departmentId\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"piId\", null);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(DepartmentsRoute, [{\n      key: \"setupNavigation\",\n      value: function setupNavigation(transition) {\n        var controller = this.controllerFor('app.departments');\n\n        if (transition.to.name === 'app.departments.department') {\n          var departmentId = transition.to.params['department_id'];\n          this.store.findRecord('department', departmentId).then(function (department) {\n            controller.set('departmentName', department.get('name'));\n            controller.set('departmentId', departmentId);\n          });\n        } else if (transition.to.parent.name === 'app.departments.principal-investigator') {\n          var piId = transition.to.parent.params['principal_investigator_id'];\n          this.store.findRecord('principalInvestigator', piId).then(function (pi) {\n            pi.get('department').then(function (department) {\n              controller.set('departmentName', department.get('name'));\n              controller.set('piName', pi.get('name'));\n              controller.set('departmentId', department.get('id'));\n              controller.set('piId', piId);\n            });\n          });\n        } else {\n          controller.set('departmentName', null);\n          controller.set('piName', null);\n        }\n      }\n    }, {\n      key: \"beforeModel\",\n      value: function beforeModel(transition) {\n        this.setupNavigation(transition);\n      }\n    }, {\n      key: \"willTransition\",\n      value: function willTransition(transition) {\n        this.setupNavigation(transition);\n      }\n    }, {\n      key: \"setDepartmentsQueryParams\",\n      value: function setDepartmentsQueryParams(params) {\n        this.set('departmentsQueryParams', params);\n      }\n    }, {\n      key: \"exportData\",\n      value: function exportData(result) {\n        //Store the controller scope so we can set the comparative data on response\n        var queryParams = this.departmentsQueryParams;\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/departments/download/?\").concat(_jquery.default.param(queryParams));\n\n        _jquery.default.ajaxSetup({\n          beforeSend: function beforeSend(jqXHR, settings) {\n            if (settings.dataType === 'binary') {\n              settings.xhr().responseType = 'arraybuffer';\n              settings.processData = false;\n            }\n          }\n        });\n\n        this.ajax.raw(url, {\n          processData: false,\n          dataType: 'binary',\n          crossDomain: true,\n          xhr: function xhr() {\n            var xhr = new XMLHttpRequest();\n            xhr.responseType = 'blob';\n            return xhr;\n          }\n        }).then(function (result) {\n          var blob = result.payload;\n          var xhr = result.jqXHR;\n          var filename = 'export-departments.xlsx'; //Try to get filename from disposition header\n\n          var disposition = xhr.getResponseHeader('content-disposition');\n\n          if (disposition && disposition.indexOf('attachment') !== -1) {\n            var filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\n            var matches = filenameRegex.exec(disposition);\n\n            if (matches != null && matches[1]) {\n              filename = matches[1].replace(/['\"]/g, '');\n            }\n          }\n\n          var url = window.URL.createObjectURL(blob);\n          var a = document.createElement('a');\n          a.style.display = 'none';\n          a.href = url; // the filename you want\n\n          a.download = filename;\n          document.body.appendChild(a);\n          a.click();\n          window.URL.revokeObjectURL(url);\n          result.resolve();\n        }).catch(function (err) {\n          result.reject(err);\n        });\n      }\n    }]);\n\n    return DepartmentsRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"willTransition\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"willTransition\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"setDepartmentsQueryParams\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"setDepartmentsQueryParams\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"exportData\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"exportData\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = DepartmentsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/department\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var DepartmentRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(DepartmentRoute, _Ember$Route);\n\n    var _super = _createSuper(DepartmentRoute);\n\n    function DepartmentRoute() {\n      var _this;\n\n      _classCallCheck(this, DepartmentRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(DepartmentRoute, [{\n      key: \"model\",\n      value: function model(params) {\n        return this.store.findRecord('department', params.department_id);\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(DepartmentRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('tableModel', []);\n        var settingsString = window.sessionStorage.getItem('departmentSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        controller.fetchData();\n      }\n    }]);\n\n    return DepartmentRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = DepartmentRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      var _this;\n\n      _classCallCheck(this, IndexRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        var role = this.get('currentUser.role');\n\n        if (role === \"department\") {\n          this.replaceWith('app.departments.department', this.get('currentUser.departmentId'));\n        }\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(IndexRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var settingsString = window.sessionStorage.getItem('departmentsSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        var pagination = controller.get('meta.pagination'); //Ensure there is meta data\n\n        if (!pagination) {\n          controller.fetchData();\n        }\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/principal-investigator\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var PrincipalInvestigatorRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(PrincipalInvestigatorRoute, _Ember$Route);\n\n    var _super = _createSuper(PrincipalInvestigatorRoute);\n\n    function PrincipalInvestigatorRoute() {\n      var _this;\n\n      _classCallCheck(this, PrincipalInvestigatorRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(PrincipalInvestigatorRoute, [{\n      key: \"model\",\n      value: function model(params) {\n        return this.store.findRecord('principalInvestigator', params.principal_investigator_id);\n      }\n    }]);\n\n    return PrincipalInvestigatorRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = PrincipalInvestigatorRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/principal-investigator/comparative-statistics\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ComparativeStatisticsRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(ComparativeStatisticsRoute, _Ember$Route);\n\n    var _super = _createSuper(ComparativeStatisticsRoute);\n\n    function ComparativeStatisticsRoute() {\n      _classCallCheck(this, ComparativeStatisticsRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ComparativeStatisticsRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = ComparativeStatisticsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/principal-investigator/history\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var HistoryRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(HistoryRoute, _Ember$Route);\n\n    var _super = _createSuper(HistoryRoute);\n\n    function HistoryRoute() {\n      _classCallCheck(this, HistoryRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return HistoryRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = HistoryRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/principal-investigator/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var IndexRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      _classCallCheck(this, IndexRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        this.replaceWith('app.departments.principal-investigator.projections');\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/departments/principal-investigator/projections\", [\"exports\", \"b3i-analytics-web-app/mixins/investigator-projections-route\"], function (_exports, _investigatorProjectionsRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ProjectionsRoute = (_dec = Ember.inject.service('current-user'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ProjectionsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ProjectionsRoute);\n\n    function ProjectionsRoute() {\n      var _this;\n\n      _classCallCheck(this, ProjectionsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ProjectionsRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller, model) {\n        _get(_getPrototypeOf(ProjectionsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        this.setupPlan(controller, model);\n      }\n    }]);\n\n    return ProjectionsRoute;\n  }(Ember.Route.extend(_investigatorProjectionsRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = ProjectionsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/help\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var HelpRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(HelpRoute, _Ember$Route);\n\n    var _super = _createSuper(HelpRoute);\n\n    function HelpRoute() {\n      _classCallCheck(this, HelpRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return HelpRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = HelpRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/help/glossary\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var GlossaryRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(GlossaryRoute, _Ember$Route);\n\n    var _super = _createSuper(GlossaryRoute);\n\n    function GlossaryRoute() {\n      _classCallCheck(this, GlossaryRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return GlossaryRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = GlossaryRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/help/instructions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var InstructionsRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(InstructionsRoute, _Ember$Route);\n\n    var _super = _createSuper(InstructionsRoute);\n\n    function InstructionsRoute() {\n      _classCallCheck(this, InstructionsRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return InstructionsRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = InstructionsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/help/introduction\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var IntroductionRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IntroductionRoute, _Ember$Route);\n\n    var _super = _createSuper(IntroductionRoute);\n\n    function IntroductionRoute() {\n      _classCallCheck(this, IntroductionRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return IntroductionRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = IntroductionRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/help/primer\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var PrimerRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(PrimerRoute, _Ember$Route);\n\n    var _super = _createSuper(PrimerRoute);\n\n    function PrimerRoute() {\n      _classCallCheck(this, PrimerRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return PrimerRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = PrimerRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/insights\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var InsightsRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(InsightsRoute, _Ember$Route);\n\n    var _super = _createSuper(InsightsRoute);\n\n    function InsightsRoute() {\n      _classCallCheck(this, InsightsRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return InsightsRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = InsightsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/insights/comparative-proposals-successes\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _environment, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ComparativeProposalsSuccessesRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ComparativeProposalsSuccessesRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ComparativeProposalsSuccessesRoute);\n\n    function ComparativeProposalsSuccessesRoute() {\n      var _this;\n\n      _classCallCheck(this, ComparativeProposalsSuccessesRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ComparativeProposalsSuccessesRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(ComparativeProposalsSuccessesRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('isLoading', true); // Load the sector and departments\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            (function () {\n              var sectorDict = {};\n\n              _this2.store.pushPayload('department', response);\n\n              var departments = _this2.store.peekAll('department');\n\n              departments.forEach(function (department) {\n                var sector = department.get('sector.name');\n\n                if (sector in sectorDict) {\n                  sectorDict[sector].push(department);\n                } else {\n                  sectorDict[sector] = [department];\n                }\n              });\n              var orderedSectorDict = {};\n              Object.keys(sectorDict).sort().forEach(function (key) {\n                orderedSectorDict[key] = sectorDict[key];\n\n                if (orderedSectorDict[key].length < 1) {\n                  orderedSectorDict[key] = [];\n                }\n              });\n              var optionsList = []; //Department users should not have access to all sectors\n\n              if (_this2.isNotDepartment) {\n                optionsList.push({\n                  isGroupName: true,\n                  value: 'All Sectors'\n                });\n              }\n\n              for (var sector in orderedSectorDict) {\n                if (sectorDict.hasOwnProperty(sector)) {\n                  //Department user cant filter by sector\n                  if (_this2.isNotDepartment) {\n                    optionsList.push({\n                      isGroupName: true,\n                      value: sector\n                    });\n                  }\n\n                  var _departments = orderedSectorDict[sector];\n\n                  _departments.forEach(function (department) {\n                    optionsList.push({\n                      value: department.get('name'),\n                      id: department.get('id')\n                    });\n                  });\n                }\n              }\n\n              controller.set('sectorOptions', optionsList);\n              controller.set('selectedSector', optionsList[0]);\n              controller.fetchFilteredData();\n            })();\n          }\n        });\n      }\n    }]);\n\n    return ComparativeProposalsSuccessesRoute;\n  }(Ember.Route.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = ComparativeProposalsSuccessesRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/insights/core-detail\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/roles\", \"b3i-analytics-web-app/mixins/non-department-only-route\"], function (_exports, _environment, _roles, _nonDepartmentOnlyRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CoreDetailRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(CoreDetailRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(CoreDetailRoute);\n\n    function CoreDetailRoute() {\n      var _this;\n\n      _classCallCheck(this, CoreDetailRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(CoreDetailRoute, [{\n      key: \"model\",\n      value: function model() {\n        // For the CurrentYearProjections mixin to work in the controller, we need an empty projection key in the model\n        return Ember.RSVP.hash({\n          projection: {}\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(CoreDetailRoute.prototype), \"setupController\", this).apply(this, arguments); //Fetch the projection settings\n\n\n        var settingsString = window.sessionStorage.getItem('projectionsSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        controller.set('isLoading', true);\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          Ember.run(function () {\n            if (response) {\n              (function () {\n                var sectorDict = {};\n\n                _this2.store.pushPayload('department', response);\n\n                var departments = _this2.store.peekAll('department');\n\n                departments.forEach(function (department) {\n                  var sector = department.get('sector.name');\n\n                  if (sector in sectorDict) {\n                    sectorDict[sector].push(department);\n                  } else {\n                    sectorDict[sector] = [department];\n                  }\n                });\n                var orderedSectorDict = {};\n                Object.keys(sectorDict).sort().forEach(function (key) {\n                  orderedSectorDict[key] = sectorDict[key];\n\n                  if (orderedSectorDict[key].length < 1) {\n                    orderedSectorDict[key] = [];\n                  }\n                }); //Only admins and execs should have access to sectors\n\n                var optionsList = [];\n\n                if (_this2.get('currentUser.role') === _roles.default.ADMIN || _this2.get('currentUser.role') === _roles.default.EXECUTIVE) {\n                  optionsList.push({\n                    isGroupName: true,\n                    value: 'All Sectors'\n                  });\n                }\n\n                for (var sector in orderedSectorDict) {\n                  if (sectorDict.hasOwnProperty(sector)) {\n                    optionsList.push({\n                      isGroupName: true,\n                      value: sector\n                    });\n                    var _departments = orderedSectorDict[sector];\n\n                    _departments.forEach(function (department) {\n                      optionsList.push({\n                        value: department.get('name'),\n                        id: department.get('id')\n                      });\n                    });\n                  }\n                }\n\n                controller.set('coreDetailFilterOptions', optionsList);\n\n                if (!controller.selectedFilterOption) {\n                  controller.set('selectedFilterOption', optionsList[0]);\n                }\n\n                controller.fetchFilteredData();\n                controller.fetchProjection(controller.selectedFilterOption);\n              })();\n            }\n          });\n        });\n      }\n    }]);\n\n    return CoreDetailRoute;\n  }(Ember.Route.extend(_nonDepartmentOnlyRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = CoreDetailRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/insights/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var IndexRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      _classCallCheck(this, IndexRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        this.replaceWith('app.insights.comparative-proposals-successes');\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/investigators\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/mixins/permissions-check\"], function (_exports, _environment, _permissionsCheck) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var InvestigatorsRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(InvestigatorsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(InvestigatorsRoute);\n\n    function InvestigatorsRoute() {\n      var _this;\n\n      _classCallCheck(this, InvestigatorsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor3, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(InvestigatorsRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(InvestigatorsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var settingsString = window.sessionStorage.getItem('investigatorsSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        controller.fetchFilteredData();\n        var departmentNamesUrl = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(departmentNamesUrl, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          Ember.run(function () {\n            if (response) {\n              (function () {\n                var sectorDict = {};\n\n                _this2.store.pushPayload('department', response);\n\n                var departments = _this2.store.peekAll('department');\n\n                departments.forEach(function (department) {\n                  var sector = department.get('sector.name');\n\n                  if (sector in sectorDict) {\n                    sectorDict[sector].push(department);\n                  } else {\n                    sectorDict[sector] = [department];\n                  }\n                });\n                var orderedSectorDict = {};\n                Object.keys(sectorDict).sort().forEach(function (key) {\n                  orderedSectorDict[key] = sectorDict[key];\n\n                  if (orderedSectorDict[key].length < 1) {\n                    orderedSectorDict[key] = [];\n                  }\n                });\n                var optionsList = []; //Department users should not have access to all sectors\n\n                if (_this2.isNotDepartment) {\n                  optionsList.push({\n                    isGroupName: true,\n                    value: 'All Sectors'\n                  });\n                }\n\n                for (var sector in orderedSectorDict) {\n                  if (sectorDict.hasOwnProperty(sector)) {\n                    //Department user cant filter by sector\n                    if (_this2.isNotDepartment) {\n                      optionsList.push({\n                        isGroupName: true,\n                        value: sector\n                      });\n                    }\n\n                    var _departments = orderedSectorDict[sector];\n\n                    _departments.forEach(function (department) {\n                      optionsList.push({\n                        value: department.get('name'),\n                        id: department.get('id')\n                      });\n                    });\n                  }\n                }\n\n                controller.set('sectorOptions', optionsList);\n\n                if (!controller.selectedSector) {\n                  controller.set('selectedSector', optionsList[0]);\n                }\n              })();\n            }\n          });\n        });\n      }\n    }]);\n\n    return InvestigatorsRoute;\n  }(Ember.Route.extend(_permissionsCheck.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = InvestigatorsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/mega-grants\", [\"exports\", \"b3i-analytics-web-app/mixins/non-department-only-route\"], function (_exports, _nonDepartmentOnlyRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var MegaGrantsRoute = classic(_class = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(MegaGrantsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(MegaGrantsRoute);\n\n    function MegaGrantsRoute() {\n      _classCallCheck(this, MegaGrantsRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return MegaGrantsRoute;\n  }(Ember.Route.extend(_nonDepartmentOnlyRoute.default))) || _class;\n\n  _exports.default = MegaGrantsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/mega-grants/active\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ActiveRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(ActiveRoute, _Ember$Route);\n\n    var _super = _createSuper(ActiveRoute);\n\n    function ActiveRoute() {\n      _classCallCheck(this, ActiveRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(ActiveRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(ActiveRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var pagination = controller.get('meta.pagination'); //Ensure there is meta data\n\n        if (!pagination) {\n          this.store.query('megaGrant', {\n            page: 1,\n            ordering: controller.sortString,\n            type: 'active'\n          }).then(function (departments) {\n            controller.tableModel.pushObjects(departments.toArray());\n            controller.set('meta', departments.get('meta'));\n            controller.set('isLoading', false);\n          }).catch(function () {\n            controller.set('isLoading', false);\n          });\n        }\n      }\n    }]);\n\n    return ActiveRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = ActiveRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/mega-grants/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var IndexRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      _classCallCheck(this, IndexRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        this.replaceWith('app.mega-grants.summary');\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/mega-grants/pending\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var PendingRoute = classic(_class = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(PendingRoute, _Ember$Route);\n\n    var _super = _createSuper(PendingRoute);\n\n    function PendingRoute() {\n      var _this;\n\n      _classCallCheck(this, PendingRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"page\", 1);\n\n      return _this;\n    }\n\n    _createClass(PendingRoute, [{\n      key: \"model\",\n      value: function model() {\n        //Clear out the meta\n        this.set('meta', null);\n        this.set('page', 1);\n        return Ember.A();\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(PendingRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var pagination = this.get('meta.pagination'); //Ensure there is meta data\n\n        if (!pagination) {\n          this.fetchData(controller);\n        }\n      }\n    }, {\n      key: \"fetchData\",\n      value: function fetchData(controller) {\n        var _this2 = this;\n\n        this.store.query('megaGrant', {\n          page: this.page,\n          type: 'pending'\n        }).then(function (megaGrants) {\n          controller.model.pushObjects(megaGrants.toArray());\n\n          _this2.set('meta', megaGrants.get('meta'));\n\n          var pagination = _this2.get('meta.pagination');\n\n          if (pagination.pages > _this2.page) {\n            _this2.incrementProperty('page');\n\n            _this2.fetchData(controller);\n          }\n        }).catch(function () {\n          //TODO: Handle error\n          controller.set('isLoading', false);\n        });\n      }\n    }]);\n\n    return PendingRoute;\n  }(Ember.Route), _temp)) || _class;\n\n  _exports.default = PendingRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/mega-grants/summary\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SummaryRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SummaryRoute, _Ember$Route);\n\n    var _super = _createSuper(SummaryRoute);\n\n    function SummaryRoute() {\n      var _this;\n\n      _classCallCheck(this, SummaryRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(SummaryRoute, [{\n      key: \"model\",\n      value: function model() {\n        return this.store.query('projection', {}).then(function (projections) {\n          if (projections.content.length > 0) {\n            var projection = projections.objectAt(0);\n            return projection;\n          } else {\n            return [];\n          }\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(SummaryRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/mega_grants/summary_adjustment/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            controller.set('summaryAdjustment', response['data']);\n          }\n        });\n      }\n    }]);\n\n    return SummaryRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = SummaryRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/projections/forecast-modifier\", [\"exports\", \"b3i-analytics-web-app/mixins/projection-filter-route\"], function (_exports, _projectionFilterRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ForecastModifierRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ForecastModifierRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ForecastModifierRoute);\n\n    function ForecastModifierRoute() {\n      var _this;\n\n      _classCallCheck(this, ForecastModifierRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ForecastModifierRoute, [{\n      key: \"model\",\n      value: function model() {\n        var settingsString = window.localStorage.getItem('forecastModifierSettings');\n        return this.projectionsModelWithFilter(settingsString);\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(ForecastModifierRoute.prototype), \"setupController\", this).apply(this, arguments); //Load the previous settings from local storage if available\n\n\n        var settingsString = window.localStorage.getItem('forecastModifierSettings');\n\n        if (settingsString) {\n          var settings = JSON.parse(settingsString);\n\n          for (var key in settings) {\n            if (settings.hasOwnProperty(key)) {\n              Ember.set(controller, key, settings[key]);\n            }\n          }\n        }\n\n        this.populateProjectionFilterOnController(controller);\n      }\n    }]);\n\n    return ForecastModifierRoute;\n  }(Ember.Route.extend(_projectionFilterRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = ForecastModifierRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/projections/index\", [\"exports\", \"b3i-analytics-web-app/mixins/projection-filter-route\"], function (_exports, _projectionFilterRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(IndexRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      var _this;\n\n      _classCallCheck(this, IndexRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"model\",\n      value: function model() {\n        //If the user was previously viewing a different sector, load it.\n        var settingsString = window.sessionStorage.getItem('projectionsSettings');\n        return this.projectionsModelWithFilter(settingsString);\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller, model) {\n        _get(_getPrototypeOf(IndexRoute.prototype), \"setupController\", this).apply(this, arguments); //For recruitment mixin\n\n\n        controller.set('recruitment', this.get('currentUser.team.recruitment'));\n        controller.set('projection', model); //Setup recruitment\n\n        var recruitmentPlan = this.get('currentUser.team.recruitmentPlan');\n\n        if (recruitmentPlan) {\n          for (var key in recruitmentPlan) {\n            if (recruitmentPlan.hasOwnProperty(key)) {\n              controller.set(key, recruitmentPlan[key]);\n            }\n          }\n        } else {\n          //Setup the counts arrays\n          var emptyArray = Array(10).fill(0);\n          controller.set('recruitsJuniorCounts', emptyArray);\n          controller.set('recruitsSeniorCounts', emptyArray);\n          controller.set('attritionJuniorCounts', emptyArray);\n          controller.set('attritionSeniorCounts', emptyArray);\n        }\n\n        controller.updateRecruitCounts(controller.recruitsJuniorCounts, true);\n        controller.updateRecruitCounts(controller.recruitsSeniorCounts, false);\n        controller.updateAttritionCounts(controller.attritionJuniorCounts, true);\n        controller.updateAttritionCounts(controller.attritionSeniorCounts, false);\n        this.populateProjectionFilterOnController(controller);\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route.extend(_projectionFilterRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/recruitment\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RecruitmentRoute = (_dec = Ember.inject.service('current-user'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(RecruitmentRoute, _Ember$Route);\n\n    var _super = _createSuper(RecruitmentRoute);\n\n    function RecruitmentRoute() {\n      var _this;\n\n      _classCallCheck(this, RecruitmentRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(RecruitmentRoute, [{\n      key: \"setupController\",\n      value: function setupController(controller) {\n        _get(_getPrototypeOf(RecruitmentRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('recruitment', this.get('currentUser.team.recruitment')); //We need the projection object for the calculated Y1:Y2 ratios\n\n        this.store.findAll('projection').then(function (proj) {\n          var projections = proj.objectAt(0);\n          controller.updateProjection(projections);\n        });\n      }\n    }]);\n\n    return RecruitmentRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = RecruitmentRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/settings\", [\"exports\", \"b3i-analytics-web-app/mixins/admin-only-route\"], function (_exports, _adminOnlyRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SettingsRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(SettingsRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(SettingsRoute);\n\n    function SettingsRoute() {\n      var _this;\n\n      _classCallCheck(this, SettingsRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(SettingsRoute, [{\n      key: \"model\",\n      value: function model() {\n        var projection = this.store.query('projection', {}).then(function (projections) {\n          if (projections.content.length > 0) {\n            return projections.objectAt(0);\n          }\n\n          return [];\n        });\n        return Ember.RSVP.hash({\n          projection: projection,\n          team: this.store.findRecord('team', this.get('currentUser.team.id'))\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller, model) {\n        _get(_getPrototypeOf(SettingsRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        this.store.findAll('projection').then(function (proj) {\n          var projections = proj.objectAt(0);\n          controller.set('projections', projections);\n        }); //Check if the school (team) has an official set of projections.\n\n        if (controller.hasTeamOfficialProjections) {\n          var officialProjectionSettings = this.currentUser.team.officialProjectionSettings;\n\n          for (var pKey in officialProjectionSettings) {\n            if (officialProjectionSettings.hasOwnProperty(pKey)) {\n              controller.set(\"\".concat(pKey), officialProjectionSettings[pKey]);\n            }\n          }\n        }\n\n        controller.set('selectedOfficialAssumption', model.team.officialProjectionSettings ? 'Enabled' : 'Disabled');\n        controller.set('oldOfficialProjections', JSON.parse(JSON.stringify(model.team.officialProjectionSettings)));\n      }\n    }]);\n\n    return SettingsRoute;\n  }(Ember.Route.extend(_adminOnlyRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = SettingsRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/app/users\", [\"exports\", \"b3i-analytics-web-app/mixins/admin-only-route\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _adminOnlyRoute, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var UsersRoute = (_dec = Ember.inject.service('current-user'), _dec2 = Ember.inject.service(), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(UsersRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(UsersRoute);\n\n    function UsersRoute() {\n      var _this;\n\n      _classCallCheck(this, UsersRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(UsersRoute, [{\n      key: \"model\",\n      value: function model() {\n        return this.store.query('user-team-access', {\n          adapterOptions: {\n            team: this.currentUser.team.get('id'),\n            institution_access: true\n          }\n        });\n      }\n    }, {\n      key: \"setupController\",\n      value: function setupController(controller) {\n        var _this2 = this;\n\n        _get(_getPrototypeOf(UsersRoute.prototype), \"setupController\", this).apply(this, arguments);\n\n        controller.set('meta', this.meta);\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/department_names/\");\n        this.ajax.request(url, {\n          contentType: 'application/json'\n        }).then(function (response) {\n          if (response) {\n            _this2.store.pushPayload('department', response);\n\n            var departments = _this2.store.peekAll('department');\n\n            var departmentsList = [{\n              value: '0',\n              display: 'All Departments'\n            }];\n            var sectorDict = {};\n            departments.forEach(function (department) {\n              var sector = department.get('sector.name');\n              sectorDict[sector] = 1;\n              departmentsList.pushObject({\n                value: department.get('id'),\n                display: department.get('name')\n              });\n            });\n            var orderedSectorArray = [];\n            Object.keys(sectorDict).sort().forEach(function (key) {\n              orderedSectorArray.push(key);\n            });\n            controller.set('sectorsList', orderedSectorArray);\n            controller.set('departmentsList', departmentsList);\n          }\n        });\n      }\n    }]);\n\n    return UsersRoute;\n  }(Ember.Route.extend(_adminOnlyRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = UsersRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/application\", [\"exports\", \"ember-simple-auth/mixins/application-route-mixin\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _applicationRouteMixin, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ApplicationRoute = (_dec = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ApplicationRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ApplicationRoute);\n\n    function ApplicationRoute() {\n      var _this;\n\n      _classCallCheck(this, ApplicationRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"routeAfterAuthentication\", _environment.default.routeAfterAuthentication);\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(ApplicationRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        return this._loadCurrentUser();\n      }\n    }, {\n      key: \"sessionAuthenticated\",\n      value: function sessionAuthenticated() {\n        var _this2 = this;\n\n        //Load the user before transitioning\n        this._loadCurrentUser().then(function () {\n          var attemptedTransition = _this2.get('session.attemptedTransition');\n\n          var cookies = Ember.getOwner(_this2).lookup('service:cookies');\n          var redirectTarget = cookies.read('ember_simple_auth-redirectTarget');\n\n          if (attemptedTransition) {\n            attemptedTransition.retry();\n\n            _this2.set('session.attemptedTransition', null);\n          } else if (redirectTarget) {\n            _this2.transitionTo(redirectTarget);\n\n            cookies.clear('ember_simple_auth-redirectTarget');\n          } else {\n            _this2.transitionTo(_this2.routeAfterAuthentication);\n          }\n        });\n      }\n    }, {\n      key: \"_loadCurrentUser\",\n      value: function _loadCurrentUser() {\n        var _this3 = this;\n\n        return this.currentUser.load().catch(function (err) {\n          console.log(err);\n\n          _this3.session.invalidate();\n        });\n      }\n    }, {\n      key: \"sessionInvalidated\",\n      value: function sessionInvalidated() {\n        if (!Ember.testing) {\n          if (this.get('controller.currentPath') !== 'signup') {\n            var customLogoutPage = window.sessionStorage.getItem('customLogoutPage'); //Clear out the session storage\n\n            window.sessionStorage.clear();\n            window.localStorage.clear();\n\n            if (customLogoutPage) {\n              window.location.replace(customLogoutPage);\n            } else {\n              if (this._isFastBoot) {\n                this.transitionTo('/login');\n              } else {\n                window.location.replace('/login');\n              }\n            }\n          }\n        }\n      }\n    }]);\n\n    return ApplicationRoute;\n  }(Ember.Route.extend(_applicationRouteMixin.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = ApplicationRoute;\n});","define(\"b3i-analytics-web-app/routes/commentary\", [\"exports\", \"b3i-analytics-web-app/routes/app/commentary\"], function (_exports, _commentary) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _commentary.default;\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/export-investigators/index\", [\"exports\", \"ember-simple-auth/mixins/authenticated-route-mixin\", \"b3i-analytics-web-app/mixins/investigator-projections-route\"], function (_exports, _authenticatedRouteMixin, _investigatorProjectionsRoute) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexRoute = (_dec = Ember.inject.service, _dec2 = Ember.inject.service('current-user'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(IndexRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      var _this;\n\n      _classCallCheck(this, IndexRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"model\",\n      value: function model(params) {\n        var _this2 = this;\n\n        params.exportPlans = true; //Remove null keys from params\n\n        Object.keys(params).forEach(function (key) {\n          return params[key] == null && delete params[key];\n        });\n        return this.store.query('principal-investigator', params).then(function (pis) {\n          //Get the projection object for recruitment\n          return _this2.store.findAll('projection').then(function (proj) {\n            var projections = proj.objectAt(0);\n            var modelAndProps = [];\n            pis.forEach(function (pi) {\n              var props = Ember.Object.create({\n                'projection': projections\n              });\n\n              _this2.setupPlan(props, pi, false);\n\n              modelAndProps.push({\n                props: props,\n                model: pi\n              });\n            });\n            return modelAndProps;\n          });\n        });\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route.extend(_authenticatedRouteMixin.default, _investigatorProjectionsRoute.default)), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/forgot-password-success\", [\"exports\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\"], function (_exports, _unauthenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ForgotPasswordSuccessRoute = classic(_class = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ForgotPasswordSuccessRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ForgotPasswordSuccessRoute);\n\n    function ForgotPasswordSuccessRoute() {\n      _classCallCheck(this, ForgotPasswordSuccessRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ForgotPasswordSuccessRoute;\n  }(Ember.Route.extend(_unauthenticatedRouteMixin.default))) || _class;\n\n  _exports.default = ForgotPasswordSuccessRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/forgot-password\", [\"exports\", \"jquery\", \"b3i-analytics-web-app/config/environment\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _jquery, _environment, _unauthenticatedRouteMixin, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ForgotPasswordRoute = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ForgotPasswordRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ForgotPasswordRoute);\n\n    function ForgotPasswordRoute() {\n      _classCallCheck(this, ForgotPasswordRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(ForgotPasswordRoute, [{\n      key: \"sendResetEmail\",\n      value: function sendResetEmail(email, result) {\n        var _this = this;\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/password/reset/\");\n        var data = {\n          'email': email\n        };\n\n        _jquery.default.ajax({\n          contentType: 'application/json',\n          data: JSON.stringify(data),\n          method: 'POST',\n          url: url\n        }).then(function () {\n          Ember.run(function () {\n            _this.transitionTo('forgot-password-success');\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            result.reject();\n\n            _this.controller.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }]);\n\n    return ForgotPasswordRoute;\n  }(Ember.Route.extend(_unauthenticatedRouteMixin.default)), (_applyDecoratedDescriptor(_class2.prototype, \"sendResetEmail\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"sendResetEmail\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ForgotPasswordRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var IndexRoute = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(IndexRoute, _Ember$Route);\n\n    var _super = _createSuper(IndexRoute);\n\n    function IndexRoute() {\n      _classCallCheck(this, IndexRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(IndexRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        _get(_getPrototypeOf(IndexRoute.prototype), \"beforeModel\", this).apply(this, arguments);\n\n        window.scrollTo(0, 0);\n      }\n    }, {\n      key: \"didTransition\",\n      value: function didTransition() {\n        var _this = this;\n\n        Ember.run.later('afterRender', function () {\n          _this.controller.set('airtableSrc', 'https://airtable.com/embed/shrmQjpgHIRtu3aeT?backgroundColor=green');\n        });\n      }\n    }]);\n\n    return IndexRoute;\n  }(Ember.Route), (_applyDecoratedDescriptor(_class2.prototype, \"didTransition\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"didTransition\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = IndexRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/login\", [\"exports\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _unauthenticatedRouteMixin, _environment, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var LoginRoute = (_dec = Ember._action, _dec2 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(LoginRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(LoginRoute);\n\n    function LoginRoute() {\n      var _this;\n\n      _classCallCheck(this, LoginRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"routeIfAlreadyAuthenticated\", _environment.default.routeAfterAuthentication);\n\n      return _this;\n    }\n\n    _createClass(LoginRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        _get(_getPrototypeOf(LoginRoute.prototype), \"beforeModel\", this).apply(this, arguments);\n\n        window.scrollTo(0, 0);\n      }\n    }, {\n      key: \"model\",\n      value: function model() {\n        return Ember.Object.create({\n          email: null,\n          password: null\n        });\n      }\n    }, {\n      key: \"login\",\n      value: function login(email, password, result) {\n        var _this2 = this;\n\n        this.session.authenticate('authenticator:oauth2', email, password).catch(function (response) {\n          if (response === 'mfa is required') {\n            result.resolve();\n          } //MFA errors are formatted like this\n          else if (response.detail) {\n              _this2.controller.set('errors', [response.detail]);\n            } else {\n              _this2.controller.set('errors', _errors.default.mapResponseErrors(response));\n            }\n\n          result.reject();\n        });\n      }\n    }, {\n      key: \"verifyLogin\",\n      value: function verifyLogin(email, password, code, result) {\n        var _this3 = this;\n\n        this.session.authenticate('authenticator:oauth2', email, password, [], {}, code).catch(function (response) {\n          //MFA errors are formatted like this\n          if (response.detail) {\n            _this3.controller.set('errors', [response.detail]);\n          } else {\n            _this3.controller.set('errors', _errors.default.mapResponseErrors(response));\n          }\n\n          result.reject();\n        });\n      }\n    }]);\n\n    return LoginRoute;\n  }(Ember.Route.extend(_unauthenticatedRouteMixin.default)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"login\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"login\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"verifyLogin\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"verifyLogin\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = LoginRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/mfa-setup\", [\"exports\", \"ember-simple-auth/mixins/authenticated-route-mixin\"], function (_exports, _authenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var MfaSetupRoute = classic(_class = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(MfaSetupRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(MfaSetupRoute);\n\n    function MfaSetupRoute() {\n      _classCallCheck(this, MfaSetupRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return MfaSetupRoute;\n  }(Ember.Route.extend(_authenticatedRouteMixin.default))) || _class;\n\n  _exports.default = MfaSetupRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/mfa-setup/request-verification\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _environment, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var RequestVerificationRoute = (_dec = Ember.inject.service, _dec2 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(RequestVerificationRoute, _Ember$Route);\n\n    var _super = _createSuper(RequestVerificationRoute);\n\n    function RequestVerificationRoute() {\n      var _this;\n\n      _classCallCheck(this, RequestVerificationRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(RequestVerificationRoute, [{\n      key: \"requestVerificationCode\",\n      value: function requestVerificationCode(phoneNumber, result) {\n        var controller = this.controller;\n        var route = this;\n        var formData = {\n          'phone_number': phoneNumber\n        };\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/mfa/sms/request/\");\n        this.ajax.put(url, {\n          data: formData,\n          contentType: 'application/x-www-form-urlencoded'\n        }).then(function () {\n          Ember.run(function () {\n            result.resolve();\n            route.replaceWith('mfa-setup.verify');\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            result.reject();\n            controller.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }]);\n\n    return RequestVerificationRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"requestVerificationCode\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"requestVerificationCode\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = RequestVerificationRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/mfa-setup/success\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SuccessRoute = (_dec = Ember._action, classic(_class = (_class2 = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SuccessRoute, _Ember$Route);\n\n    var _super = _createSuper(SuccessRoute);\n\n    function SuccessRoute() {\n      _classCallCheck(this, SuccessRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(SuccessRoute, [{\n      key: \"goToApp\",\n      value: function goToApp() {\n        this.transitionTo('app.projections');\n      }\n    }]);\n\n    return SuccessRoute;\n  }(Ember.Route), (_applyDecoratedDescriptor(_class2.prototype, \"goToApp\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"goToApp\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SuccessRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/mfa-setup/verify\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _environment, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var VerifyRoute = (_dec = Ember.inject.service, _dec2 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(VerifyRoute, _Ember$Route);\n\n    var _super = _createSuper(VerifyRoute);\n\n    function VerifyRoute() {\n      var _this;\n\n      _classCallCheck(this, VerifyRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"ajax\", _descriptor, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(VerifyRoute, [{\n      key: \"verifyCode\",\n      value: function verifyCode(mfaCode, result) {\n        var controller = this.controller;\n        var route = this;\n        var formData = {\n          'mfa_code': mfaCode\n        };\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/mfa/sms/verify/\");\n        this.ajax.put(url, {\n          data: formData,\n          contentType: 'application/x-www-form-urlencoded'\n        }).then(function () {\n          Ember.run(function () {\n            result.resolve();\n            route.replaceWith('mfa-setup.success');\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            result.reject();\n            controller.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }]);\n\n    return VerifyRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"ajax\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"verifyCode\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"verifyCode\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = VerifyRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/reset-password-success\", [\"exports\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\"], function (_exports, _unauthenticatedRouteMixin) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var ResetPasswordSuccessRoute = classic(_class = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ResetPasswordSuccessRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ResetPasswordSuccessRoute);\n\n    function ResetPasswordSuccessRoute() {\n      _classCallCheck(this, ResetPasswordSuccessRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return ResetPasswordSuccessRoute;\n  }(Ember.Route.extend(_unauthenticatedRouteMixin.default))) || _class;\n\n  _exports.default = ResetPasswordSuccessRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/reset-password\", [\"exports\", \"jquery\", \"b3i-analytics-web-app/config/environment\", \"ember-simple-auth/mixins/unauthenticated-route-mixin\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _jquery, _environment, _unauthenticatedRouteMixin, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _class, _class2, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var ResetPasswordRoute = (_dec = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route$extend) {\n    _inherits(ResetPasswordRoute, _Ember$Route$extend);\n\n    var _super = _createSuper(ResetPasswordRoute);\n\n    function ResetPasswordRoute() {\n      var _this;\n\n      _classCallCheck(this, ResetPasswordRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"routeIfAlreadyAuthenticated\", _environment.default.routeAfterAuthentication);\n\n      return _this;\n    }\n\n    _createClass(ResetPasswordRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        _get(_getPrototypeOf(ResetPasswordRoute.prototype), \"beforeModel\", this).apply(this, arguments);\n\n        window.scrollTo(0, 0);\n      }\n    }, {\n      key: \"resetPassword\",\n      value: function resetPassword(token, uid, password, result) {\n        var _this2 = this;\n\n        var url = \"\".concat(_environment.default.host, \"/\").concat(_environment.default.namespace, \"/password/reset/confirm/\");\n        var data = {\n          new_password1: password,\n          new_password2: password,\n          token: token,\n          uid: uid\n        };\n\n        _jquery.default.ajax({\n          contentType: 'application/json',\n          dataType: 'json',\n          data: JSON.stringify(data),\n          url: url,\n          method: 'POST'\n        }).then(function () {\n          Ember.run(function () {\n            _this2.transitionTo('reset-password-success');\n          });\n        }).catch(function (response) {\n          Ember.run(function () {\n            result.reject();\n\n            _this2.controller.set('errors', _errors.default.mapResponseErrors(response));\n          });\n        });\n      }\n    }]);\n\n    return ResetPasswordRoute;\n  }(Ember.Route.extend(_unauthenticatedRouteMixin.default)), _temp), (_applyDecoratedDescriptor(_class2.prototype, \"resetPassword\", [_dec], Object.getOwnPropertyDescriptor(_class2.prototype, \"resetPassword\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = ResetPasswordRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/saml-complete\", [\"exports\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SamlCompleteRoute = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SamlCompleteRoute, _Ember$Route);\n\n    var _super = _createSuper(SamlCompleteRoute);\n\n    function SamlCompleteRoute() {\n      var _this;\n\n      _classCallCheck(this, SamlCompleteRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"currentUser\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(SamlCompleteRoute, [{\n      key: \"model\",\n      value: function model(params) {\n        var _this2 = this;\n\n        var access_token = params.access_token;\n        var refresh_token = params.refresh_token;\n        var expires_in = params.expires_in;\n        var scope = params.scope;\n        var data = {\n          access_token: access_token,\n          scope: scope,\n          refresh_token: refresh_token,\n          expires_in: expires_in\n        };\n        this.session.authenticate('authenticator:saml', data).then(function () {\n          //Load the current user before transitioning so the team will be present\n          _this2.currentUser.load().then(function () {\n            _this2.transitionTo(_environment.default.routeAfterAuthentication);\n          });\n        }).catch(function () {\n          _this2.transitionTo('saml-error');\n        });\n      }\n    }]);\n\n    return SamlCompleteRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"currentUser\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  })), _class2)) || _class);\n  _exports.default = SamlCompleteRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/saml-error\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var SamlErrorRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SamlErrorRoute, _Ember$Route);\n\n    var _super = _createSuper(SamlErrorRoute);\n\n    function SamlErrorRoute() {\n      _classCallCheck(this, SamlErrorRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return SamlErrorRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = SamlErrorRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/sandbox\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var SandboxRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SandboxRoute, _Ember$Route);\n\n    var _super = _createSuper(SandboxRoute);\n\n    function SandboxRoute() {\n      _classCallCheck(this, SandboxRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    return SandboxRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = SandboxRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/signup\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"jquery\", \"b3i-analytics-web-app/constants/errors\"], function (_exports, _environment, _jquery, _errors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var SignupRoute = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember._action, classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(SignupRoute, _Ember$Route);\n\n    var _super = _createSuper(SignupRoute);\n\n    function SignupRoute() {\n      var _this;\n\n      _classCallCheck(this, SignupRoute);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"welcome\", _descriptor2, _assertThisInitialized(_this));\n\n      return _this;\n    }\n\n    _createClass(SignupRoute, [{\n      key: \"afterModel\",\n      value: function afterModel() {\n        _get(_getPrototypeOf(SignupRoute.prototype), \"afterModel\", this).apply(this, arguments);\n\n        if (this.get('session.isAuthenticated')) {\n          this.session.invalidate();\n        }\n      }\n    }, {\n      key: \"signup\",\n      value: function signup(user, result) {\n        var _this2 = this;\n\n        _jquery.default.ajax({\n          url: _environment.default.host + '/api/v1/registration/',\n          type: 'POST',\n          data: JSON.stringify(user),\n          headers: {\n            'Accept': 'application/vnd.api+json'\n          },\n          contentType: 'application/vnd.api+json',\n          dataType: 'json'\n        }).then(function (response) {\n          var email = response.data.attributes.email;\n          var password = user.data.attributes.password;\n          Ember.run(function () {\n            _this2.session.authenticate('authenticator:oauth2', email, password).then(function () {\n              _this2.set('welcome.firstTime', true);\n\n              _this2.transitionTo(_environment.default.routeAfterAuthentication);\n            }).catch(function (response) {\n              _this2.session.invalidate();\n\n              _this2.controller.set('errors', _errors.default.mapResponseErrors(response));\n\n              result.reject();\n            });\n          });\n        }).catch(function (response) {\n          _this2.controller.set('errors', _errors.default.mapResponseErrors(response));\n\n          result.reject();\n        });\n      }\n    }]);\n\n    return SignupRoute;\n  }(Ember.Route), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"welcome\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"signup\", [_dec3], Object.getOwnPropertyDescriptor(_class2.prototype, \"signup\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = SignupRoute;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/routes/welcome\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var WelcomeRoute = classic(_class = /*#__PURE__*/function (_Ember$Route) {\n    _inherits(WelcomeRoute, _Ember$Route);\n\n    var _super = _createSuper(WelcomeRoute);\n\n    function WelcomeRoute() {\n      _classCallCheck(this, WelcomeRoute);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(WelcomeRoute, [{\n      key: \"beforeModel\",\n      value: function beforeModel() {\n        // Welcome route was removed. Direct users to login\n        this.replaceWith('login');\n      }\n    }]);\n\n    return WelcomeRoute;\n  }(Ember.Route)) || _class;\n\n  _exports.default = WelcomeRoute;\n});","define(\"b3i-analytics-web-app/serializers/-default\", [\"exports\", \"@ember-data/serializer/json\"], function (_exports, _json) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _json.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/serializers/-json-api\", [\"exports\", \"@ember-data/serializer/json-api\"], function (_exports, _jsonApi) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _jsonApi.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/serializers/-rest\", [\"exports\", \"@ember-data/serializer/rest\"], function (_exports, _rest) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _rest.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/serializers/application\", [\"exports\", \"ember-data/serializers/json-api\", \"ember-inflector\"], function (_exports, _jsonApi, _emberInflector) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var Application = classic(_class = /*#__PURE__*/function (_JSONAPISerializer) {\n    _inherits(Application, _JSONAPISerializer);\n\n    var _super = _createSuper(Application);\n\n    function Application() {\n      _classCallCheck(this, Application);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(Application, [{\n      key: \"keyForAttribute\",\n      value: function keyForAttribute(attr) {\n        return Ember.String.underscore(attr);\n      }\n    }, {\n      key: \"keyForRelationship\",\n      value: function keyForRelationship(rawKey) {\n        return Ember.String.underscore(rawKey);\n      }\n    }, {\n      key: \"payloadKeyFromModelName\",\n      value: function payloadKeyFromModelName(name) {\n        var inflector = new _emberInflector.default(_emberInflector.default.defaultRules);\n        return inflector.pluralize(Ember.String.underscore(name));\n      }\n    }]);\n\n    return Application;\n  }(_jsonApi.default)) || _class;\n\n  _exports.default = Application;\n});","define(\"b3i-analytics-web-app/serializers/mega-grant\", [\"exports\", \"b3i-analytics-web-app/serializers/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    attrs: {\n      isNew: {\n        serialize: false\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/serializers/membership\", [\"exports\", \"b3i-analytics-web-app/serializers/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    attrs: {\n      invitation: {\n        serialize: false\n      },\n      departmentName: {\n        serialize: false\n      },\n      user: {\n        serialize: false\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/serializers/principal-investigator\", [\"exports\", \"b3i-analytics-web-app/serializers/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    attrs: {\n      category: {\n        serialize: false\n      },\n      email: {\n        serialize: false\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/serializers/team\", [\"exports\", \"b3i-analytics-web-app/serializers/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _get(target, property, receiver) { if (typeof Reflect !== \"undefined\" && Reflect.get) { _get = Reflect.get; } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get(target, property, receiver || target); }\n\n  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var Team = classic(_class = /*#__PURE__*/function (_ApplicationSerialize) {\n    _inherits(Team, _ApplicationSerialize);\n\n    var _super = _createSuper(Team);\n\n    function Team() {\n      _classCallCheck(this, Team);\n\n      return _super.apply(this, arguments);\n    }\n\n    _createClass(Team, [{\n      key: \"serialize\",\n      value: function serialize(snapshot) {\n        var json = _get(_getPrototypeOf(Team.prototype), \"serialize\", this).apply(this, arguments); //If we are creating a new team only send only the required attributes\n\n\n        if (!snapshot.id) {\n          var requiredAttributes = [\"name\", \"use_mfa\", \"is_public\", \"is_medical_school\", \"state\", \"type\", \"fiscal_year_start_month\"];\n\n          for (var k in json.data.attributes) {\n            if (!requiredAttributes.includes(k)) {\n              delete json.data.attributes[k];\n            }\n          }\n        }\n\n        return json;\n      }\n    }]);\n\n    return Team;\n  }(_application.default)) || _class;\n\n  _exports.default = Team;\n});","define(\"b3i-analytics-web-app/serializers/user\", [\"exports\", \"b3i-analytics-web-app/serializers/application\"], function (_exports, _application) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _application.default.extend({\n    attrs: {\n      password: {\n        serialize: false\n      },\n      instanceAccessCount: {\n        serialize: false\n      },\n      lastActivity: {\n        serialize: false\n      },\n      systemRole: {\n        serialize: false\n      },\n      isSuperuser: {\n        serialize: false\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/services/-in-viewport\", [\"exports\", \"ember-in-viewport/services/-in-viewport\"], function (_exports, _inViewport) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _inViewport.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/services/ajax\", [\"exports\", \"b3i-analytics-web-app/config/environment\", \"ember-ajax/services/ajax\"], function (_exports, _environment, _ajax) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _class, _class2, _descriptor, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var _AjaxService = (_dec = Ember.inject.service, _dec2 = Ember.computed('session.data.authenticated.access_token').volatile(), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_AjaxService2) {\n    _inherits(_AjaxService, _AjaxService2);\n\n    var _super = _createSuper(_AjaxService);\n\n    function _AjaxService() {\n      var _this;\n\n      _classCallCheck(this, _AjaxService);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"host\", _environment.default.host);\n\n      _defineProperty(_assertThisInitialized(_this), \"namespace\", _environment.default.namespace);\n\n      _defineProperty(_assertThisInitialized(_this), \"contentType\", 'application/json');\n\n      return _this;\n    }\n\n    _createClass(_AjaxService, [{\n      key: \"headers\",\n      //trustedHosts: ['staging.b3ianalytics.com', 'b3ianalytics.com'], // eslint-disable-line ember/avoid-leaking-state-in-ember-objects\n      get: function get() {\n        var headers = {\n          'Accept': 'application/vnd.api+json'\n        };\n        var authToken = this.get('session.data.authenticated.access_token');\n\n        if (authToken) {\n          headers['Authorization'] = \"Bearer \".concat(authToken);\n        }\n\n        return headers;\n      }\n    }]);\n\n    return _AjaxService;\n  }(_ajax.default), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"headers\", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, \"headers\"), _class2.prototype)), _class2)) || _class);\n\n  _exports.default = _AjaxService;\n});","define(\"b3i-analytics-web-app/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 = void 0;\n  var _default = _cookies.default;\n  _exports.default = _default;\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/services/current-user\", [\"exports\", \"moment\", \"b3i-analytics-web-app/constants/sponsor-types\", \"b3i-analytics-web-app/utils/new-value-from-sponsors\", \"b3i-analytics-web-app/utils/display-value-from-sponsors\"], function (_exports, _moment, _sponsorTypes, _newValueFromSponsors, _displayValueFromSponsors) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _class, _class2, _descriptor, _descriptor2, _descriptor3, _temp;\n\n  function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\n  function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }\n\n  function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n  var CurrentUserService = (_dec = Ember.inject.service, _dec2 = Ember.inject.service, _dec3 = Ember.inject.service, _dec4 = Ember.computed('team'), _dec5 = Ember.computed('team'), _dec6 = Ember.computed('team'), _dec7 = Ember.computed('team'), _dec8 = Ember.computed('team'), _dec9 = Ember.computed('team'), _dec10 = Ember.computed('team'), _dec11 = Ember.computed('team'), _dec12 = Ember.computed('team'), _dec13 = Ember.computed('team'), _dec14 = Ember.computed('team'), _dec15 = Ember.computed('team'), _dec16 = Ember.computed('team'), _dec17 = Ember.computed('team'), _dec18 = Ember.computed('team'), _dec19 = Ember.computed('team'), _dec20 = Ember.computed('asOfDate', 'queryDate'), classic(_class = (_class2 = (_temp = /*#__PURE__*/function (_Ember$Service) {\n    _inherits(CurrentUserService, _Ember$Service);\n\n    var _super = _createSuper(CurrentUserService);\n\n    function CurrentUserService() {\n      var _this;\n\n      _classCallCheck(this, CurrentUserService);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"session\", _descriptor, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"store\", _descriptor2, _assertThisInitialized(_this));\n\n      _initializerDefineProperty(_assertThisInitialized(_this), \"year\", _descriptor3, _assertThisInitialized(_this));\n\n      _defineProperty(_assertThisInitialized(_this), \"asOfDate\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"queryDate\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"role\", null);\n\n      _defineProperty(_assertThisInitialized(_this), \"user\", null);\n\n      return _this;\n    }\n\n    _createClass(CurrentUserService, [{\n      key: \"getSponsorFilterValueForDisplayValue\",\n      value: function getSponsorFilterValueForDisplayValue(displayValue) {\n        if (!this.team || !this.team.sponsors) {\n          return displayValue;\n        }\n\n        return (0, _newValueFromSponsors.default)(displayValue, this.team.sponsors);\n      }\n    }, {\n      key: \"load\",\n      value: function load() {\n        var _this2 = this;\n\n        return new Ember.RSVP.Promise(function (resolve, reject) {\n          if (_this2.get('session.isAuthenticated')) {\n            _this2.store.queryRecord('user', {}).then(function (user) {\n              _this2.set('user', user);\n\n              user.get('membership').then(function (membership) {\n                _this2.set('role', membership.get('role'));\n\n                _this2.set('departmentId', membership.get('departmentId'));\n\n                _this2.set('departmentName', membership.get('departmentName'));\n\n                _this2.set('sectorName', membership.get('sectorName'));\n\n                membership.get('team').then(function (team) {\n                  _this2.set('team', team);\n\n                  var dateOfData = team.get('dateOfData');\n                  var queryDate = team.get('queryDate');\n\n                  if (dateOfData) {\n                    _this2.set('asOfDate', (0, _moment.default)(dateOfData).format('MM/DD/YYYY'));\n                  }\n\n                  if (queryDate) {\n                    _this2.set('queryDate', (0, _moment.default)(queryDate).format('MM/DD/YYYY'));\n                  }\n\n                  _this2.year.updateMonthAndYear(); //NYU requires a custom logout page\n\n\n                  if (team.get('id') === \"13\") {\n                    window.sessionStorage.setItem('customLogoutPage', 'https://shibboleth.nyu.edu/idp/profile/Logout');\n                  } else {\n                    window.sessionStorage.removeItem('customLogoutPage');\n                  }\n\n                  _this2.year.updateMonthAndYear(); //Resolve after user, membership and team have loaded\n\n\n                  resolve();\n                });\n              });\n            }).catch(function (err) {\n              reject(err);\n            });\n          } else {\n            resolve();\n          }\n        });\n      }\n    }, {\n      key: \"logout\",\n      value: function logout() {\n        this.session.invalidate();\n      }\n    }, {\n      key: \"isSponsorTypeNihTraining\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.isSponsorTypeNihTraining;\n      }\n    }, {\n      key: \"sponsorTypeNih\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.NIH;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.NIH, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeOtherFed\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.OtherFed;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.OtherFed, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeFFT\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.FFT;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.FFT, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeNonFed\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.NonFed;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.NonFed, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor5\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.Sponsor5;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.Sponsor5, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor6\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.Sponsor6;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.Sponsor6, this.team.sponsors);\n      }\n    }, {\n      key: \"sponsorTypeSponsor7\",\n      get: function get() {\n        if (!this.team) {\n          return _sponsorTypes.default.Sponsor7;\n        }\n\n        return (0, _displayValueFromSponsors.default)(_sponsorTypes.default.Sponsor7, this.team.sponsors);\n      }\n    }, {\n      key: \"isFft\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_fft;\n      }\n    }, {\n      key: \"isNih\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_nih;\n      }\n    }, {\n      key: \"isNonFed\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_non_fed;\n      }\n    }, {\n      key: \"isOtherFed\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_other_fed;\n      }\n    }, {\n      key: \"isSponsor5\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_sponsor5;\n      }\n    }, {\n      key: \"isSponsor6\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_sponsor6;\n      }\n    }, {\n      key: \"isSponsor7\",\n      get: function get() {\n        if (!this.team) {\n          return false;\n        }\n\n        return this.team.is_sponsor7;\n      }\n    }, {\n      key: \"sponsorlist\",\n      get: function get() {\n        var sponsor_list = ['All Sponsor Types'];\n        var fft = this.isFft;\n        var nih = this.isNih;\n        var nonfed = this.isNonFed;\n        var otherfed = this.isOtherFed;\n        var sponsor5 = this.isSponsor5;\n        var sponsor6 = this.isSponsor6;\n        var sponsor7 = this.isSponsor7;\n        fft ? [sponsor_list.push(this.sponsorTypeFFT)] : [];\n        nih ? [sponsor_list.push(this.sponsorTypeNih)] : [];\n        nonfed ? [sponsor_list.push(this.sponsorTypeNonFed)] : [];\n        otherfed ? [sponsor_list.push(this.sponsorTypeOtherFed)] : [];\n        sponsor5 ? [sponsor_list.push(this.sponsorTypeSponsor5)] : [];\n        sponsor6 ? [sponsor_list.push(this.sponsorTypeSponsor6)] : [];\n        sponsor7 ? [sponsor_list.push(this.sponsorTypeSponsor7)] : [];\n        return sponsor_list;\n      }\n    }, {\n      key: \"asOfQueryString\",\n      get: function get() {\n        if (!this.asOfDate) {\n          return \"No data imported\";\n        }\n\n        return \"As of \".concat(this.asOfDate, \" based on queries run on \").concat(this.queryDate);\n      }\n    }]);\n\n    return CurrentUserService;\n  }(Ember.Service), _temp), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, \"session\", [_dec], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor2 = _applyDecoratedDescriptor(_class2.prototype, \"store\", [_dec2], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _descriptor3 = _applyDecoratedDescriptor(_class2.prototype, \"year\", [_dec3], {\n    configurable: true,\n    enumerable: true,\n    writable: true,\n    initializer: null\n  }), _applyDecoratedDescriptor(_class2.prototype, \"isSponsorTypeNihTraining\", [_dec4], Object.getOwnPropertyDescriptor(_class2.prototype, \"isSponsorTypeNihTraining\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeNih\", [_dec5], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeNih\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeOtherFed\", [_dec6], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeOtherFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeFFT\", [_dec7], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeFFT\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeNonFed\", [_dec8], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeNonFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor5\", [_dec9], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor5\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor6\", [_dec10], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor6\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorTypeSponsor7\", [_dec11], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorTypeSponsor7\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isFft\", [_dec12], Object.getOwnPropertyDescriptor(_class2.prototype, \"isFft\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isNih\", [_dec13], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNih\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isNonFed\", [_dec14], Object.getOwnPropertyDescriptor(_class2.prototype, \"isNonFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isOtherFed\", [_dec15], Object.getOwnPropertyDescriptor(_class2.prototype, \"isOtherFed\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isSponsor5\", [_dec16], Object.getOwnPropertyDescriptor(_class2.prototype, \"isSponsor5\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isSponsor6\", [_dec17], Object.getOwnPropertyDescriptor(_class2.prototype, \"isSponsor6\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"isSponsor7\", [_dec18], Object.getOwnPropertyDescriptor(_class2.prototype, \"isSponsor7\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"sponsorlist\", [_dec19], Object.getOwnPropertyDescriptor(_class2.prototype, \"sponsorlist\"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, \"asOfQueryString\", [_dec20], Object.getOwnPropertyDescriptor(_class2.prototype, \"asOfQueryString\"), _class2.prototype)), _class2)) || _class);\n  _exports.default = CurrentUserService;\n});","define(\"b3i-analytics-web-app/services/in-viewport\", [\"exports\", \"ember-in-viewport/services/in-viewport\"], function (_exports, _inViewport) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _inViewport.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/media\", [\"exports\", \"ember-responsive/services/media\"], function (_exports, _media) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _media.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _metrics.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/moment\", [\"exports\", \"ember-moment/services/moment\", \"b3i-analytics-web-app/config/environment\"], function (_exports, _moment, _environment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var get = Ember.get;\n\n  var _default = _moment.default.extend({\n    defaultFormat: get(_environment.default, 'moment.outputFormat')\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/services/print-this\", [\"exports\", \"ember-print-this/services/print-this\"], function (_exports, _printThis) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _printThis.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _raven.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/resize-detector\", [\"exports\", \"ember-element-resize-detector/services/resize-detector\"], function (_exports, _resizeDetector) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _resizeDetector.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/scrollbar-thickness\", [\"exports\", \"ember-scrollable/services/scrollbar-thickness\"], function (_exports, _scrollbarThickness) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _scrollbarThickness.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/session\", [\"exports\", \"ember-simple-auth/services/session\"], function (_exports, _session) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _session.default;\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/services/store\", [\"exports\", \"ember-data/store\"], function (_exports, _store) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _store.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/services/text-measurer\", [\"exports\", \"ember-text-measurer/services/text-measurer\"], function (_exports, _textMeasurer) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _textMeasurer.default;\n    }\n  });\n});","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\ndefine(\"b3i-analytics-web-app/services/welcome\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _class, _temp;\n\n  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n  function _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\n  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\n  function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\n  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\n  function _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\n  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n  var classic = __EMBER_CLASSIC_DECORATOR;\n\n  var WelcomeService = classic(_class = (_temp = /*#__PURE__*/function (_Ember$Service) {\n    _inherits(WelcomeService, _Ember$Service);\n\n    var _super = _createSuper(WelcomeService);\n\n    function WelcomeService() {\n      var _this;\n\n      _classCallCheck(this, WelcomeService);\n\n      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n        args[_key] = arguments[_key];\n      }\n\n      _this = _super.call.apply(_super, [this].concat(args));\n\n      _defineProperty(_assertThisInitialized(_this), \"firstTime\", false);\n\n      return _this;\n    }\n\n    return WelcomeService;\n  }(Ember.Service), _temp)) || _class;\n\n  _exports.default = WelcomeService;\n});","define(\"b3i-analytics-web-app/services/year\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.Service.extend({\n    currentMomentDate: (0, _moment.default)(),\n    currentUser: Ember.inject.service('current-user'),\n    startFiscalMonth: 7,\n    fiscalYear: 2018,\n    init: function init() {\n      this._super.apply(this, arguments);\n\n      this.set('currentMonth', (0, _moment.default)().get('month'));\n    },\n    lastFiscalYear: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear - 1;\n    }),\n    fiscalYearTwoYearsAgo: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear - 2;\n    }),\n    fiscalYearThreeYearsAgo: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear - 3;\n    }),\n    fiscalYearFourYearsAgo: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear - 4;\n    }),\n    fiscalYearFiveYearsAgo: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear - 5;\n    }),\n    fiscalYearOneYearAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 1;\n    }),\n    fiscalYearTwoYearsAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 2;\n    }),\n    fiscalYearThreeYearsAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 3;\n    }),\n    fiscalYearFourYearsAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 4;\n    }),\n    fiscalYearFiveYearsAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 5;\n    }),\n    fiscalYearSixYearsAhead: Ember.computed('fiscalYear', function () {\n      return this.fiscalYear + 6;\n    }),\n    fiscalStartMonth: Ember.computed('currentUser', function () {\n      return this.get('currentUser.team.fiscalYearStartMonth');\n    }),\n    calculateFiscalMonth: function calculateFiscalMonth(startMonth, currentMonth) {\n      if (currentMonth >= startMonth) {\n        return currentMonth - (startMonth - 1);\n      } else {\n        return 12 - (startMonth - currentMonth - 1);\n      }\n    },\n    //Couldnt get the observer to fire after a data upload so manually call this function\n    updateMonthAndYear: function updateMonthAndYear() {\n      var team = this.get('currentUser.team');\n\n      if (team) {\n        var startFiscalMonth = team.get('fiscalYearStartMonth');\n        var currentFiscalYear = team.get('currentFiscalYear');\n\n        if (startFiscalMonth !== null && currentFiscalYear != null) {\n          this.set('fiscalYear', currentFiscalYear);\n          this.set('startFiscalMonth', startFiscalMonth);\n        }\n\n        var asOfMonth = (0, _moment.default)(this.get('currentUser.queryDate'), 'MM-DD-YYY').get('month');\n        var startMonth = this.get('currentUser.team.fiscalYearStartMonth');\n        var lastCompletedFiscalMonth = this.calculateFiscalMonth(startMonth, asOfMonth);\n\n        if (lastCompletedFiscalMonth) {\n          this.set('lastCompletedFiscalMonth', this.calculateFiscalMonth(startMonth, asOfMonth));\n        }\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/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 = void 0;\n\n  var _default = _adaptive.default.extend();\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"ddfJLsOz\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"navbar\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-top-section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"team-info\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/huron-logo-horizontal.svg\\\"],[14,0,\\\"logo-nav\\\"],[14,\\\"alt\\\",\\\"Huron Analytics\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"top-nav-text\\\"],[12],[2,\\\"\\\\n            ADMIN PANEL\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"secondary-nav\\\"],[12],[2,\\\"\\\\n          \\\"],[11,\\\"span\\\"],[24,0,\\\"account-name\\\"],[4,[38,1],[[32,0],\\\"toggleAccountDropdown\\\"],null],[12],[2,\\\"\\\\n            \\\"],[1,[35,0,[\\\"user\\\",\\\"name\\\"]]],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"nav-tick\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,3],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"account-dropdown\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[1,[35,0,[\\\"user\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"divider\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"logout\\\"],null],[12],[2,\\\"Logout\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-bottom-section\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"nav\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"admin.institutions\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Institutions\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"admin.users\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Users\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[1,[30,[36,5],[[30,[36,4],null,null]],null]],[2,\\\"\\\\n\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"currentUser\\\",\\\"action\\\",\\\"isShowingAccountDropdown\\\",\\\"if\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/admin/institutions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"oxOoP/9L\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Institutions\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@class\\\"],[[34,5],\\\"Search:\\\",\\\"Search for institutions...\\\",\\\"search\\\"]],null],[2,\\\"\\\\n          \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary pull-right\\\"],[4,[38,2],[[32,0],\\\"toggleAddModal\\\"],null],[12],[2,\\\"+ Add Institution\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,6],\\\"Type\\\",[34,7],[34,6],[30,[36,2],[[32,0],\\\"typeOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,8],\\\"Public/Private\\\",[34,9],[34,8],[30,[36,2],[[32,0],\\\"publicOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,10],\\\"Medical School\\\",[34,11],[34,10],[30,[36,2],[[32,0],\\\"medicalOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,12],\\\"Region\\\",[34,13],[34,12],[30,[36,2],[[32,0],\\\"regionOptionChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"table-institutions\\\",[],[[\\\"@model\\\",\\\"@isLoading\\\",\\\"@onEditInstitution\\\",\\\"@onViewInstitution\\\",\\\"@onDeleteInstitution\\\"],[[34,14],[34,4],[30,[36,2],[[32,0],\\\"toggleEditModal\\\"],null],[30,[36,2],[[32,0],\\\"viewInstitution\\\"],null],[30,[36,2],[[32,0],\\\"toggleDeleteModal\\\"],null]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,16],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-edit-institution\\\",[],[[\\\"@institution\\\",\\\"@createdInstitution\\\",\\\"@clearAddState\\\",\\\"@viewInstitution\\\",\\\"@isLoading\\\",\\\"@errors\\\",\\\"@close\\\",\\\"@saveAction\\\"],[[34,1],[34,3],[30,[36,2],[[32,0],\\\"toggleAddModal\\\",true],null],[30,[36,2],[[32,0],\\\"viewInstitution\\\"],null],[34,4],[34,0],[30,[36,2],[[32,0],\\\"toggleEditModal\\\"],null],[30,[36,2],[[32,0],\\\"saveAction\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,16],[[35,17]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-delete-institution\\\",[],[[\\\"@errors\\\",\\\"@title\\\",\\\"@institution\\\",\\\"@close\\\",\\\"@deleteAction\\\"],[[34,0],\\\"Delete Institution\\\",[34,1],[30,[36,2],[[32,0],\\\"toggleDeleteModal\\\"],null],[30,[36,2],[[32,0],\\\"deleteInstitution\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"selectedInstitution\\\",\\\"action\\\",\\\"createdInstitution\\\",\\\"isLoading\\\",\\\"search\\\",\\\"typeSelection\\\",\\\"typeOptions\\\",\\\"publicSelection\\\",\\\"publicOptions\\\",\\\"medicalSelection\\\",\\\"medicalOptions\\\",\\\"regionSelection\\\",\\\"regionOptions\\\",\\\"model\\\",\\\"isShowingEditModal\\\",\\\"if\\\",\\\"isShowingDeleteModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/admin/institutions.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/admin/users/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"LM9byUIV\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Users\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@class\\\"],[[34,4],\\\"Search:\\\",\\\"Search for users..\\\",\\\"search-users\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,5],\\\"System Role\\\",[34,6],[34,5],[30,[36,2],[[32,0],\\\"systemRoleOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@multiValues\\\"],[[34,7],\\\"Institution\\\",[34,8],[34,7],[30,[36,2],[[32,0],\\\"institutionOptionChanged\\\"],null],true]],null],[2,\\\"\\\\n          \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary pull-right\\\"],[4,[38,2],[[32,0],\\\"toggleAddModal\\\"],null],[12],[2,\\\"+ Add User\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"table-users-admin\\\",[],[[\\\"@model\\\",\\\"@handlePagination\\\",\\\"@isLoading\\\",\\\"@onViewUser\\\",\\\"@onDeleteUser\\\",\\\"@onResendInvitation\\\"],[[34,9],[30,[36,2],[[32,0],\\\"handlePagination\\\"],null],[34,10],[30,[36,2],[[32,0],\\\"viewUser\\\"],null],[30,[36,2],[[32,0],\\\"toggleDeleteModal\\\"],null],[30,[36,2],[[32,0],\\\"resendInvitation\\\"],null]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,12],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-add-user-admin\\\",[],[[\\\"@title\\\",\\\"@errors\\\",\\\"@store\\\",\\\"@close\\\",\\\"@saveAction\\\"],[\\\"Add User\\\",[34,0],[34,3],[30,[36,2],[[32,0],\\\"toggleAddModal\\\"],null],[30,[36,2],[[32,0],\\\"createUser\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,12],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-delete-user-admin\\\",[],[[\\\"@errors\\\",\\\"@title\\\",\\\"@user\\\",\\\"@close\\\",\\\"@deleteAction\\\"],[[34,0],\\\"Delete User\\\",[34,1],[30,[36,2],[[32,0],\\\"toggleDeleteModal\\\"],null],[30,[36,2],[[32,0],\\\"deleteUser\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"selectedUser\\\",\\\"action\\\",\\\"store\\\",\\\"search\\\",\\\"systemRoleSelection\\\",\\\"systemRoleOptions\\\",\\\"institutionSelection\\\",\\\"institutionOptions\\\",\\\"model\\\",\\\"isLoading\\\",\\\"isShowingAddModal\\\",\\\"if\\\",\\\"isShowingDeleteModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/admin/users/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/admin/users/user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"/wqbjIMX\",\n    \"block\": \"{\\\"symbols\\\":[\\\"access\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container projections-top-controls navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"projections-link\\\"]],[[\\\"@route\\\"],[\\\"admin.users\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"< View All Users\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-xs-offset-3\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h1\\\"],[12],[1,[35,1,[\\\"user\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"float-left role-wrapper\\\"],[12],[2,\\\"\\\\n           \\\"],[1,[35,1,[\\\"user\\\",\\\"email\\\"]]],[2,\\\" | \\\"],[1,[35,1,[\\\"user\\\",\\\"systemRoleString\\\"]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"float-right\\\"],[12],[2,\\\"\\\\n            \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,0,\\\"link-padding\\\"],[4,[38,2],[[32,0],\\\"toggleDeleteUserModal\\\"],null],[12],[2,\\\"Delete\\\"],[13],[2,\\\"\\\\n            \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"toggleEditUserModal\\\"],null],[12],[2,\\\"Edit\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,10],[[35,1,[\\\"user\\\",\\\"systemRole\\\"]],\\\"user\\\"],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"institution-access-header\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Institution Access\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,1,[\\\"userTeamAccess\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"row-institution-access\\\",[],[[\\\"@model\\\",\\\"@store\\\",\\\"@removeAccess\\\",\\\"@save\\\"],[[32,1],[34,5],[30,[36,2],[[32,0],\\\"deleteAccess\\\"],null],[30,[36,2],[[32,0],\\\"saveAccess\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n            \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"toggleIsShowingAddAccess\\\"],null],[12],[2,\\\" + Add Institution Access\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,9],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[8,\\\"form-add-edit-institution-access\\\",[],[[\\\"@model\\\",\\\"@store\\\",\\\"@isNew\\\",\\\"@close\\\",\\\"@save\\\",\\\"@errors\\\"],[[34,4],[34,5],\\\"true\\\",[30,[36,2],[[32,0],\\\"toggleIsShowingAddAccess\\\"],null],[30,[36,2],[[32,0],\\\"saveNewAccess\\\"],null],[34,0]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"institution-access-header\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Institution Access - All\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,9],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-edit-user-admin\\\",[],[[\\\"@title\\\",\\\"@name\\\",\\\"@systemRole\\\",\\\"@email\\\",\\\"@isLoading\\\",\\\"@errors\\\",\\\"@close\\\",\\\"@saveAction\\\"],[\\\"Edit User\\\",[34,1,[\\\"user\\\",\\\"name\\\"]],[34,1,[\\\"user\\\",\\\"systemRoleString\\\"]],[34,1,[\\\"user\\\",\\\"email\\\"]],[34,3],[34,0],[30,[36,2],[[32,0],\\\"toggleEditUserModal\\\"],null],[30,[36,2],[[32,0],\\\"saveUser\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,9],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-delete-user-admin\\\",[],[[\\\"@errors\\\",\\\"@title\\\",\\\"@user\\\",\\\"@close\\\",\\\"@deleteAction\\\"],[[34,0],\\\"Delete User\\\",[34,1,[\\\"user\\\"]],[30,[36,2],[[32,0],\\\"toggleDeleteUserModal\\\"],null],[30,[36,2],[[32,0],\\\"deleteUser\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"model\\\",\\\"action\\\",\\\"isLoading\\\",\\\"newAccess\\\",\\\"store\\\",\\\"-track-array\\\",\\\"each\\\",\\\"isShowingAddAccess\\\",\\\"if\\\",\\\"eq\\\",\\\"isShowingEditUserModal\\\",\\\"isShowingDeleteUserModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/admin/users/user.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"EWtzG60U\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"print-this\\\",[],[[\\\"@printSelector\\\"],[\\\".printArea\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"navbar\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-top-section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"team-info printArea\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"img\\\"],[15,\\\"src\\\",[34,6]],[15,0,[34,7]],[15,\\\"alt\\\",[34,8]],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"top-nav-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"team-name\\\"],[12],[2,\\\"\\\\n              \\\"],[1,[35,1,[\\\"team\\\",\\\"name\\\"]]],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[11,\\\"span\\\"],[24,0,\\\"account-name\\\"],[4,[38,2],[[32,0],\\\"toggleTeamSwitcherModal\\\"],null],[12],[2,\\\"Change Institution\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,5],[[30,[36,10],[[35,1,[\\\"user\\\",\\\"profile\\\",\\\"systemRole\\\"]],\\\"huron_admin\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[11,\\\"span\\\"],[24,0,\\\"account-name\\\"],[4,[38,2],[[32,0],\\\"adminPanelClicked\\\"],null],[12],[2,\\\"Admin Panel\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"data-update\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"light\\\"],[12],[1,[34,11]],[13],[2,\\\"\\\\n              \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"All Huron Analytics application pages will be noted in this manner. New queries are run periodically and imported to the application by the designated Administrator.  For comparative analytical purposes and certain forecasting routines in the application, imports are processed as of the month-end prior to the date on which the queries are run.  However, if queries include proposal submitted and successes that began after the prior month-end, those will be included in PI calculations and projections.  Check with your Administrator to see if queries include all proposal and success activity as of the date of the query or if the queries cut off all activity as of the prior month-end.\\\"]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"secondary-nav\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.users\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Users\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n            \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.settings\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Settings\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n            \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.data-import\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Data Import\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.help.introduction\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Help\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.commentary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Commentary\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[11,\\\"span\\\"],[24,0,\\\"account-name\\\"],[4,[38,2],[[32,0],\\\"toggleAccountDropdown\\\"],null],[12],[2,\\\"\\\\n            \\\"],[1,[35,1,[\\\"user\\\",\\\"name\\\"]]],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"nav-tick\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,5],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"div\\\"],[14,0,\\\"account-dropdown\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[1,[35,1,[\\\"user\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[1,[35,1,[\\\"user\\\",\\\"membership\\\",\\\"position\\\"]]],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"divider\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"logout\\\"],null],[12],[2,\\\"Logout\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-bottom-section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"nav\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.projections\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Projections\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.insights\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Insights\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,14]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.mega-grants\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Mega Grants\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.recruitment\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Recruitment\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.departments\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Department\\\"],[1,[30,[36,5],[[35,4],\\\"s\\\"],null]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.investigators\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Investigators\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.comparative\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Comparative Stats\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.data-mining\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Data Mining\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"],[1,[30,[36,16],[[30,[36,15],null,null]],null]],[2,\\\"\\\\n\\\\n\\\"],[6,[37,5],[[35,17,[\\\"firstTime\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\"],[[30,[36,2],[[32,0],\\\"closeWelcomeModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Welcome to Huron Analytics!\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"New users are encouraged to review the \\\"],[11,\\\"a\\\"],[24,6,\\\"\\\"],[4,[38,2],[[32,0],\\\"helpLinkClicked\\\"],null],[12],[2,\\\"Help\\\"],[13],[2,\\\" materials in the navigation bar at the top of the page.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Here's a quick overview of the sections in the app:\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Main Projection Page\\\"],[13],[2,\\\" forecasts research volumes econometrically based on leading indicator trends – i.e. proposal volumes and conversion ratios - in near real time.  Huron Analytics projections typically have a margin of error of less than 1% in contrast with simple extrapolation which is little more than speculation.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Insights Module\\\"],[13],[2,\\\" allows users to drill down and analyze leading indicator trends in depth by rank, sponsor and other key parameters.\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Mega Grant Module\\\"],[13],[2,\\\" tracks the lapsing schedule of larger grants and projects additional mega grant funding potentials actuarially based on pending proposals and historical hit rates.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Recruitment Page\\\"],[13],[2,\\\" projects proposal volumes, successes and grant spending and indirect cost recovery for any recruitment plan including an assessment of the financial impact of that plan.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Department Page\\\"],[13],[2,\\\" highlights historical spending and indirect cost recovery and the future potential to spend and earn indirects at the department level based on active PI grant portfolios with hyperlinks to individual PI pages.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Investigators Page\\\"],[13],[2,\\\" does the same for individual investigators with filters that allow users to drill down to any subset of the faculty based on department, rank, hire year and research volumes.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Comparative Department Stats Page\\\"],[13],[2,\\\" provides a variety of comparative performance metrics across departments with the ability to filter on key parameters including:  Sector, rank, spending tier, hire year, sponsor, and start and end years. \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Comparative PI Stats Page\\\"],[13],[2,\\\" allows the user to compare the performance of any subset of the faculty with any other subset of the faculty in terms of research spending, proposal counts and dollar volumes, and success rates.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"PI Page Module\\\"],[13],[2,\\\" provides a complete history of each PI’s grant activity along with pending and active grants with the ability to build PI-specific plans to project future spending, indirect cost recovery and compensation coverage.  These roll up to provide department, sector and institutional projections for budgeting purposes based on specific faculty input.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"PI Page Module\\\"],[13],[2,\\\" also provides the PI’s proposal history over the last five years and a range of comparative performance statistics. \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Data Mining Page\\\"],[13],[2,\\\" allows selected users to filter on a variety of parameters for both proposals and successes with the ability to export the results for further analytical and reporting purposes.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,2],[[32,0],\\\"closeWelcomeModal\\\"],null],[12],[2,\\\"Continue\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"commentary-drawer\\\",[],[[\\\"@content\\\"],[[34,3]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,18]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-team-switcher\\\",[],[[\\\"@errors\\\",\\\"@title\\\",\\\"@userTeamOptions\\\",\\\"@membership\\\",\\\"@close\\\"],[[34,0],\\\"Select School\\\",[34,1,[\\\"user\\\",\\\"teamsAccess\\\"]],[34,1,[\\\"user\\\",\\\"membership\\\"]],[30,[36,2],[[32,0],\\\"toggleTeamSwitcherModal\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"teamErrors\\\",\\\"currentUser\\\",\\\"action\\\",\\\"filteredCommentaryContent\\\",\\\"isNotDepartment\\\",\\\"if\\\",\\\"institutionLogo\\\",\\\"institutionLogoClasses\\\",\\\"institutionLogoName\\\",\\\"showTeamSwitcherOption\\\",\\\"eq\\\",\\\"lastImportedString\\\",\\\"isAdmin\\\",\\\"isShowingAccountDropdown\\\",\\\"isAdminOrExec\\\",\\\"-outlet\\\",\\\"component\\\",\\\"welcome\\\",\\\"isShowingTeamSwitcherModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/commentary\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Ydh8CffU\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app help-page-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"commentary-list\\\",[],[[\\\"@contentList\\\"],[[34,0]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"contentList\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/commentary.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/comparative\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"8cZepN2z\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pi-header navbar-top-margin navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Comparative Stats\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-navigation\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.comparative.departments\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Departments\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.comparative.investigators\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Investigators\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[1,[30,[36,1],[[30,[36,0],null,null]],null]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/comparative.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/comparative/departments\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"3U9fDwlM\",\n    \"block\": \"{\\\"symbols\\\":[\\\"scenario\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"comparative--departments row margin-top\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border full-height\\\"],[12],[2,\\\"\\\\n      \\\"],[3,\\\" Team data\\\"],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Select Scenario\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"a\\\"],[14,0,\\\"information\\\"],[15,\\\"onclick\\\",[30,[36,0],[[32,0],\\\"toggleHelp\\\"],null]],[12],[2,\\\"What's this?\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"ul\\\"],[14,0,\\\"scenario-list\\\"],[12],[2,\\\"\\\\n\\\\n\\\"],[6,[37,14],[[30,[36,13],[[30,[36,13],[[35,12]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"li\\\"],[14,0,\\\"scenario-option\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[30,[36,11],[[32,1,[\\\"id\\\"]],0],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"radio-button\\\",[],[[\\\"@value\\\",\\\"@checked\\\"],[[32,1,[\\\"id\\\"]],[34,10]]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"span\\\"],[14,0,\\\"scenario-option-label\\\"],[12],[2,\\\"\\\\n                      \\\"],[10,\\\"span\\\"],[12],[1,[32,1,[\\\"name\\\"]]],[13],[2,\\\"\\\\n                    \\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Comparison Columns:\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@selectedOption\\\",\\\"@wrapperClass\\\",\\\"@triggerClass\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[[34,15],\\\"full-width margin-top margin-bottom\\\",\\\"full-width\\\",[34,16],[30,[36,0],[[32,0],\\\"highlightColumnChanged\\\",1],null],[34,17]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@selectedOption\\\",\\\"@wrapperClass\\\",\\\"@triggerClass\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[[34,18],\\\"full-width margin-top margin-bottom\\\",\\\"full-width\\\",[34,16],[30,[36,0],[[32,0],[30,[36,19],[[35,18]],null]],null],[34,17]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@selectedOption\\\",\\\"@wrapperClass\\\",\\\"@triggerClass\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[[34,20],\\\"full-width margin-top margin-bottom\\\",\\\"full-width\\\",[30,[36,0],[[32,0],[30,[36,19],[[35,20]],null]],null],[34,17]]],null],[2,\\\"\\\\n          \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,0],[[32,0],\\\"resetScenario\\\"],null],[12],[2,\\\"Reset\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border full-height\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-3\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"Highlighting\\\"],[13],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"highlight-inputs\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"highlight-input\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"Less than\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"percent-input-threshold\\\",[],[[\\\"@value\\\",\\\"@highlightValue\\\"],[[34,21],\\\"negative\\\"]],null],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"of total/ave\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"highlight-input\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"Greater than\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"percent-input-threshold\\\",[],[[\\\"@value\\\",\\\"@highlightValue\\\"],[[34,22],\\\"positive\\\"]],null],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"of total/ave\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-9\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"Filters\\\"],[13],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"top-page-controls condensed-controls no-top-margin\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@triggerClass\\\",\\\"@options\\\"],[\\\"Sector\\\",[34,8],[30,[36,0],[[32,0],\\\"sectorChanged\\\"],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,8,[\\\"value\\\"]],\\\"All Sectors\\\"],null]],null],\\\"highlight-change\\\"],null],[34,9]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@label\\\",\\\"@optionChanged\\\",\\\"@classNames\\\",\\\"@options\\\"],[[34,24],\\\"Sponsor Type\\\",[30,[36,0],[[32,0],\\\"sponsorTypeChanged\\\"],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,24],\\\"All\\\"],null]],null],\\\"highlight-change\\\"],null],[34,25]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@label\\\",\\\"@optionChanged\\\",\\\"@classifyOptionsDisabled\\\",\\\"@classNames\\\",\\\"@options\\\"],[[34,26],\\\"Category\\\",[30,[36,0],[[32,0],\\\"classifyChanged\\\"],null],[30,[36,4],[[35,1,[\\\"team\\\",\\\"hasClassifyInfo\\\"]]],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,26],\\\"All\\\"],null]],null],\\\"highlight-change\\\"],null],[34,27]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@label\\\",\\\"@optionChanged\\\",\\\"@classNames\\\",\\\"@options\\\"],[[34,28],\\\"Tier - All Investigators\\\",[30,[36,0],[[32,0],\\\"quartileChanged\\\"],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,28],\\\"All\\\"],null]],null],\\\"highlight-change\\\"],null],[34,29]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@label\\\",\\\"@disabled\\\",\\\"@hoverText\\\",\\\"@optionChanged\\\",\\\"@classNames\\\",\\\"@options\\\"],[[34,30],\\\"Hire Year\\\",[34,31],[30,[36,5],[[35,31],\\\"Hire year data has not been provided.\\\"],null],[30,[36,0],[[32,0],\\\"hireYearFilterChanged\\\"],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,30],\\\"All\\\"],null]],null],\\\"highlight-change\\\"],null],[34,32]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,33],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item hire-year\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@classNames\\\",\\\"@disabled\\\",\\\"@options\\\"],[[34,2],[30,[36,0],[[32,0],\\\"selectedHireYearChanged\\\"],null],[30,[36,5],[[30,[36,4],[[30,[36,3],[[35,2],\\\"------\\\"],null]],null],\\\"highlight-change\\\"],null],[34,6],[34,7]]],null],[2,\\\"\\\\n\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Departments\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n      \\\"],[8,\\\"table-comparative-departments\\\",[],[[\\\"@model\\\",\\\"@isLoading\\\",\\\"@handleSortChange\\\",\\\"@columnNames\\\",\\\"@extra\\\",\\\"@sortValuePath\\\",\\\"@onDepartmentClicked\\\"],[[34,34],[34,35],[30,[36,0],[[32,0],\\\"handleSortChange\\\"],null],[34,36],[34,37],[34,38],[30,[36,0],[[32,0],\\\"departmentClicked\\\"],null]]],null],[2,\\\"\\\\n\\\\n    \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,5],[[35,39]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleHelp\\\"],null],\\\"\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The Comparative Department Stats Page provides high level views and comparisons of departmental activity across a number of key parameters.  Along with basic counts of investigators, the page looks at the basic leading indicator metrics:  Historical proposal volumes, hit rates, successes and the spending and indirect cost recovery outcomes those generated in the most recently completed fiscal year.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Now there’s a lot of data here.  To keep it from becoming overwhelming, there are ten pre-set comparison scenarios and those specific metrics will be highlighted in the data below when a scenario is selected. An additional column can be selected to the right for highlighting.  And if “No Scenario” is selected, the user has the option of selecting up to three columns for highlighting to the right.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Conditional formatting for the highlighted columns is based on the “Highlighting” selections below.  Upon opening, Huron Analytics defaults to 80% and 120% - i.e. any metric that is less than 80% of the total or average for a column will be highlighted in red.  Any metric that is more than 120% of the total or average will be highlighted in green.  But those thresholds can be changed by the user.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Upon opening, Huron Analytics defaults to highlighting Proposal Count, Hit Rate and Median Actuals in the prior year with the Top 25% Tier selected.  The user can select any one of the other pre-set scenarios or customize a comparison for review.  The filters then allow the user to drill down and look at any subset of the faculty:  Sector, sponsor category (\\\"],[1,[35,1,[\\\"sponsorTypeNih\\\"]]],[2,\\\", \\\"],[1,[35,1,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\", \\\"],[1,[35,1,[\\\"sponsorTypeFFT\\\"]]],[2,\\\", \\\"],[1,[35,1,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\"), faculty category (Junior, Senior, Other, rank or “Tier” based on total grant spending and indirects in the most recently completed year and hire year.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      Here are the kinds of questions that can be informed using the Comparative PI Stats Page:\\\\n      \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Is there any evidence of a correlation between proposal volumes and hit rates or success outcomes that might suggest that best practices are in place in certain departments or that certain departments are struggling?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"How do faculty in the Basic Sciences or the Clinical Departments or Arts and Sciences or any other Sector sub-set of the faculty compare across departments within that Sector?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"The top 10% typically account for 80%+ of total grant spending and indirect cost recovery and the top 25% typically account for about 95%.  How do departments compare in terms of the percentage of their faculty who are in top 10% and top 25% Tiers?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Where do the rising stars reside and do certain department stands out in that respect?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"What are the proposal and hit rate profiles of rising stars across departments? Are there similarities or differences that might suggest best practices?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"How do departments and the faculty at large or any subset of the faculty compare with respect to \\\"],[1,[35,1,[\\\"sponsorTypeNih\\\"]]],[2,\\\" grant activity in particular?  Do the data provide evidence of best practices or suggest that certain departments are struggling?\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"How do departments compare with respect to indirect cost recovery yields achieved by their investigators or any sub-set of their investigators?\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"But while Huron Analytics does offer a menu of common metric comparisons, the Comparative Department Stats Page is a powerful tool limited in its analytical capabilities only by your imagination and curiosity.\\\"],[13],[2,\\\"\\\\n\\\\n\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"currentUser\\\",\\\"selectedHireYear\\\",\\\"eq\\\",\\\"not\\\",\\\"if\\\",\\\"hireYearFieldDisabled\\\",\\\"hireYearListOptions\\\",\\\"selectedSector\\\",\\\"sectorOptions\\\",\\\"selectedScenarioId\\\",\\\"gte\\\",\\\"scenarioOptions\\\",\\\"-track-array\\\",\\\"each\\\",\\\"selectedHighlightColumn1\\\",\\\"isSelectHighlightColumnsDisabled\\\",\\\"columnNamesForHighlighting\\\",\\\"selectedHighlightColumn2\\\",\\\"mut\\\",\\\"selectedHighlightColumn3\\\",\\\"highlightLessThan\\\",\\\"highlightGreaterThan\\\",\\\"isNotDepartment\\\",\\\"selectedSponsorType\\\",\\\"sponsorTypeOptions\\\",\\\"selectedClassify\\\",\\\"classifyOptions\\\",\\\"selectedQuartile\\\",\\\"quartileOptions\\\",\\\"selectedHireYearFilter\\\",\\\"hireYearOptionsDisabled\\\",\\\"hireYearOptions\\\",\\\"unless\\\",\\\"departments\\\",\\\"isLoading\\\",\\\"columnNames\\\",\\\"tableExtra\\\",\\\"sortValuePath\\\",\\\"isShowingHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/comparative/departments.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/comparative/investigators\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"bMwtbP04\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container top-controls text-right\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Export to Excel\\\",[30,[36,0],[[32,0],\\\"exportData\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-2\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border full-height\\\"],[12],[2,\\\"\\\\n        \\\"],[3,\\\" Team data\\\"],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Summary\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-top-margin light\\\"],[12],[2,\\\"\\\\n              All investigators in data set\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,9,[\\\"team_total_pi_count\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[1,[30,[36,11],[[35,9,[\\\"team_total_pi_count\\\"]]],null]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                  0\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                investigators\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total \\\"],[1,[30,[36,15],[[35,14,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" Directs:\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,9,[\\\"team_actuals_one_year_ago_directs\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,10],[[35,9,[\\\"team_actuals_one_year_ago_directs\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total \\\"],[1,[30,[36,15],[[35,14,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" Indirects:\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,9,[\\\"team_actuals_one_year_ago_indirects\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,10],[[35,9,[\\\"team_actuals_one_year_ago_indirects\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-5\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border border-left-blue  full-height\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"comparative-faculty-summary-card\\\",[],[[\\\"@groupType\\\",\\\"@whatsThisClicked\\\",\\\"@classifyChanged\\\",\\\"@classifyOptions\\\",\\\"@classifyOptionsDisabled\\\",\\\"@selectedClassify\\\",\\\"@selectedCategory\\\",\\\"@quartileOptions\\\",\\\"@quartileChanged\\\",\\\"@selectedQuartile\\\",\\\"@hireYearChanged\\\",\\\"@hireYearOptions\\\",\\\"@hireYearOptionsDisabled\\\",\\\"@selectedHireYear\\\",\\\"@departmentChanged\\\",\\\"@departmentOptions\\\",\\\"@selectedDepartment\\\",\\\"@selectedComparisonGroup\\\",\\\"@summaryData\\\"],[\\\"Selected\\\",[30,[36,0],[[32,0],\\\"toggleHelp\\\"],null],[30,[36,0],[[32,0],\\\"selectedClassifyChanged\\\"],null],[34,16],[30,[36,18],[[35,17,[\\\"team\\\",\\\"hasClassifyInfo\\\"]]],null],[34,19],[34,20],[34,21],[30,[36,0],[[32,0],\\\"selectedQuartileChanged\\\"],null],[34,22],[30,[36,0],[[32,0],\\\"selectedHireYearChanged\\\"],null],[34,23],[30,[36,18],[[35,17,[\\\"team\\\",\\\"hasHireDate\\\"]]],null],[34,24],[30,[36,0],[[32,0],\\\"selectedDepartmentChanged\\\"],null],[34,25],[34,26],[34,27],[34,9]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-5\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border border-left-grey full-height\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"comparative-faculty-summary-card\\\",[],[[\\\"@groupType\\\",\\\"@selectedCategory\\\",\\\"@classifyChanged\\\",\\\"@classifyOptions\\\",\\\"@classifyOptionsDisabled\\\",\\\"@selectedClassify\\\",\\\"@quartileOptions\\\",\\\"@quartileChanged\\\",\\\"@selectedQuartile\\\",\\\"@selectedHireYear\\\",\\\"@hireYearChanged\\\",\\\"@hireYearOptions\\\",\\\"@hireYearOptionsDisabled\\\",\\\"@selectedDepartment\\\",\\\"@departmentChanged\\\",\\\"@departmentOptions\\\",\\\"@selectedComparisonGroup\\\",\\\"@comparisonGroupOptions\\\",\\\"@comparisonGroupChanged\\\",\\\"@summaryData\\\"],[\\\"Comparison\\\",[34,28],[30,[36,0],[[32,0],\\\"comparisonClassifyChanged\\\"],null],[34,16],[30,[36,18],[[35,17,[\\\"team\\\",\\\"hasClassifyInfo\\\"]]],null],[34,29],[34,21],[30,[36,0],[[32,0],\\\"comparisonQuartileChanged\\\"],null],[34,30],[34,31],[30,[36,0],[[32,0],\\\"comparisonHireYearChanged\\\"],null],[34,32],[30,[36,18],[[35,17,[\\\"team\\\",\\\"hasHireDate\\\"]]],null],[34,33],[30,[36,0],[[32,0],\\\"comparisonDepartmentChanged\\\"],null],[34,25],[34,27],[34,34],[30,[36,0],[[32,0],\\\"comparisonGroupChanged\\\"],null],[34,35]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row margin-top\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border no-padding\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-bottom-margin\\\"],[12],[2,\\\"Directs per PI - \\\"],[1,[30,[36,15],[[35,14,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" (000)\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-125\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@height\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"horizontalBoxplot\\\",125,[34,8],[34,4],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border no-padding\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-bottom-margin\\\"],[12],[2,\\\"Indirects per PI - \\\"],[1,[30,[36,15],[[35,14,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" (000)\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-125\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@height\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"horizontalBoxplot\\\",125,[34,7],[34,4],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border no-padding\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-bottom-margin\\\"],[12],[2,\\\"Proposal $$ Per PI Per Year - (000)\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-125\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@height\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"horizontalBoxplot\\\",125,[34,6],[34,4],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row margin-top\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border no-padding\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-bottom-margin\\\"],[12],[2,\\\"Proposal Count Per Year\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-125\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@height\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"horizontalBoxplot\\\",125,[34,5],[34,4],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border no-padding\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"no-bottom-margin\\\"],[12],[2,\\\"Hit Rate Per Year\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-125\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@height\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"horizontalBoxplot\\\",125,[34,3],[34,4],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-sm-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border padding-top-only\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-height-148\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,13],[[35,36]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"chart-loader\\\",[],[[\\\"@height\\\"],[125]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,1],[34,2],148,true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Selected Group Faculty\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[8,\\\"table-comparative-faculty\\\",[],[[\\\"@model\\\",\\\"@isLoading\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\"],[[34,37],[34,36],[30,[36,0],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,0],[[32,0],\\\"handlePagination\\\"],null]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,13],[[35,38]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleHelp\\\"],null],\\\"\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"You can compare the performance of any subset of the faculty with the faculty at large or any other subset of the faculty.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Filters include:\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[10,\\\"b\\\"],[12],[2,\\\"Department:\\\"],[13],[2,\\\" Select “All” or any Sector or Department\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[10,\\\"b\\\"],[12],[2,\\\"Rank:\\\"],[13],[2,\\\" If you provide rank information in your faculty upload, select “All”, “Junior”, “Senior” and “Other”. Selections will be based on the classification you enter in column I of your faculty upload. Most often, tenure track Assistant Professors are classified as “Junior” while tenure track Associate and Full Professors are classified as “Senior” and all other faculty are classified as “Other”. However, you can classify faculty in any way that suits your purposes.  If you do not provide rank and hire date, you will only be able to select “All”.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[10,\\\"b\\\"],[12],[2,\\\"Hire Year:\\\"],[13],[2,\\\" If you provide hire date information in your faculty upload, select “All”, “Base”, “New”, or individual years. Huron Analytics automatically classifies anyone hired in the last five years as “New” and anyone hired in prior years as “Base”. If you do not provide rank and hire date, you will only be able to select “All”.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[10,\\\"b\\\"],[12],[2,\\\"Tier:\\\"],[13],[2,\\\" Select “All” or any subset of the faculty based on direct research spending in the most recently completed fiscal year.  Tiers are based on count, not total dollars.  So, if there have been 1,862 active investigators over the past 5 years, for example, the “Top 10%” tier will include the first 186 PIs based on descending direct expenditures.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The exhibits provide comparative performance measures for your “Selected” group and your “Comparison” group. The median and interquartile ranges (25% to 75%) are displayed within the \\\\\\\"Box\\\\\\\".  The \\\\\\\"Whiskers\\\\\\\" display the 10% and 90% values.  Minimums and maximums are displayed when the user hovers on the box.  But they are not displayed on the exhibit per se since significant outliers will distort the exhibit.\\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"lineChartData\\\",\\\"lineChartOptions\\\",\\\"hitRateChartData\\\",\\\"proposalChartOptions\\\",\\\"proposalCountChartData\\\",\\\"proposalTotalChartData\\\",\\\"proposalIndirectsChartData\\\",\\\"proposalDirectsChartData\\\",\\\"selectedSummaryData\\\",\\\"format-money\\\",\\\"format-number\\\",\\\"canExportData\\\",\\\"if\\\",\\\"year\\\",\\\"sub\\\",\\\"classifyOptions\\\",\\\"currentUser\\\",\\\"not\\\",\\\"selectedSelectedClassify\\\",\\\"selectedSelectedCategory\\\",\\\"quartileOptions\\\",\\\"selectedSelectedQuartile\\\",\\\"selectedHireYearOptions\\\",\\\"selectedSelectedHireYear\\\",\\\"departmentOptions\\\",\\\"selectedSelectedDepartment\\\",\\\"selectedComparisonGroup\\\",\\\"selectedComparisonCategory\\\",\\\"selectedComparisonClassify\\\",\\\"selectedComparisonQuartile\\\",\\\"selectedComparisonHireYear\\\",\\\"comparisonHireYearOptions\\\",\\\"selectedComparisonDepartment\\\",\\\"comparisonGroupOptions\\\",\\\"comparisonSummaryData\\\",\\\"isLoading\\\",\\\"selectedPiList\\\",\\\"isShowingHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/comparative/investigators.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/data-import\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"QKg5VS7t\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-md-8\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Data Import\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row csv-upload-wrapper\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"h3\\\"],[12],[2,\\\"New Data Import\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n                \\\"],[11,\\\"a\\\"],[24,0,\\\"float-right\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"toggleFormattingHelp\\\"],null],[12],[2,\\\"Formatting Help\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"validated-date-input\\\",[],[[\\\"@value\\\",\\\"@onSelection\\\",\\\"@type\\\",\\\"@label\\\"],[[34,14],[30,[36,0],[[32,0],\\\"queryDateChanged\\\"],null],\\\"date\\\",\\\"Query Date for Uploads\\\"]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"field\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"As Of Date\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[12],[1,[34,13]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-sm-5 col-xs-6\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"validated-date-input\\\",[],[[\\\"@value\\\",\\\"@onSelection\\\",\\\"@type\\\",\\\"@label\\\"],[[34,1,[\\\"team\\\",\\\"cutoffDateForPendingProposals\\\"]],[30,[36,0],[[32,0],\\\"cutoffDateForPendingProposalsChanged\\\"],null],\\\"date\\\",\\\"Cutoff for pending proposals until Not Funded\\\"]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Sector/Department Data\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"sector_department_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setSectorDepartmentData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,12]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,12]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showSectorDepartmentFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"sectors_departments\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"sectors_departments\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showSectorDepartmentFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Required\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Faculty Data (Required)\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"faculty_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setFacultyData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,11]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,11]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showFacultyFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"faculty\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"faculty\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showFacultyFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Proposals Data (Required)\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"proposals_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setProposalsData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,10]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,10]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showProposalsFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"proposals\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"proposals\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showProposalsFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Successes Data (Required)\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"successes_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setSuccessesData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,9]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,9]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showSuccessesFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"successes\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"successes\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showSuccessesFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Optional\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Actuals Data (Optional)\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"actuals_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setActualsData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,8]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,8]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showActualsFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"actuals\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"actuals\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showActualsFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"csv-upload\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Co-PI Data (Optional)\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"input\\\"],[14,1,\\\"co_pis_uploader\\\"],[15,\\\"accept\\\",[34,15]],[15,\\\"onchange\\\",[30,[36,0],[[32,0],\\\"setCoPiData\\\"],null]],[14,5,\\\"display:none;\\\"],[14,4,\\\"file\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,5]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"filename\\\"],[12],[1,[34,5]],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"showCoPiFilePicker\\\"],null],[12],[2,\\\"Change\\\"],[13],[2,\\\"\\\\n                    \\\"],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"removeFile\\\",\\\"co_pis\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"data-import-message\\\",[],[[\\\"@meta\\\"],[[34,4,[\\\"co_pis\\\"]]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"showCoPiFilePicker\\\"],null],[12],[2,\\\"Choose File\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row left-xs\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n                \\\"],[11,\\\"button\\\"],[24,0,\\\"async-button\\\"],[16,\\\"disabled\\\",[34,16]],[4,[38,0],[[32,0],\\\"uploadDataButtonPressed\\\"],null],[12],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,16]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                    \\\"],[10,\\\"span\\\"],[14,0,\\\"button-animation\\\"],[12],[2,\\\"\\\\n                      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n                      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n                      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n                      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n                    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                    \\\"],[1,[34,3]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,16]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                  Uploading Data...\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,2]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Import History\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[8,\\\"table-data-import\\\",[],[[\\\"@model\\\"],[[34,17]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[35,18]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[\\\"Formatting Help\\\",[30,[36,0],[[32,0],\\\"toggleFormattingHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      As a Huron Analytics Application Administrator, your life will be made infinitely easier if you attend closely\\\\n      to these simple rules:\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          The Faculty File controls department designations for all other files. Make sure the PI ID is present and\\\\n          properly formatted in the Proposal, Success, Actuals and Co-investigator uploads. If the PI ID in the Faculty\\\\n          File is formatted as text, all PI IDs in all files must be formatted as text. If the PI ID in the Faculty File\\\\n          is formatted as a number or alpha/numeric combination, all PI IDs in all other files must be formatted the same\\\\n          way.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          Part of your monthly QC should be to identify all investigators who were not in the previous Faculty File and\\\\n          add them including at minimum PI ID, name, and primary administrative department. If the PI is not present in\\\\n          the Faculty File, proposal, success, actual and co-investigator records in their name will be ignored. The\\\\n          upload will proceed. But you will receive a message referencing the line number of the records which were\\\\n          ignored and the reason they were ignored.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Remove any extraneous characters in any file such as “Grand Total”.\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Format all dates in dd/mm/yyyy format, not number format such as 42567.\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Remove or correct any records that are missing key data elements such as ID#, PI ID, dates and the like.\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          Make sure you report any new department or sector designations or changes to Huron Analytics Help before\\\\n          uploading new data.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          The Co-PI File needs to be imported again whenever a new Success File is imported, even if the Co-PI File\\\\n          hasn't changed.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Make sure the only status categories in the Proposal File are “Funded, Not Funded, or Pending”.\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          Make sure the only sponsor categories in the Proposal and Success Files are “\\\"],[1,[35,1,[\\\"sponsorTypeNih\\\"]]],[2,\\\"”,\\\\n          “\\\"],[1,[35,1,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\"”, “\\\"],[1,[35,1,[\\\"sponsorTypeFFT\\\"]]],[2,\\\"”, “\\\"],[1,[35,1,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\"”, “\\\"],[1,[35,1,[\\\"sponsorTypeSponsor5\\\"]]],[2,\\\"”, “\\\"],[1,[35,1,[\\\"sponsorTypeSponsor6\\\"]]],[2,\\\"” and “\\\"],[1,[35,1,[\\\"sponsorTypeSponsor7\\\"]]],[2,\\\"”.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"Make sure the only responses for Resubmissions, Sub Awards, and Renewals are “Yes” or “No”.\\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"li\\\"],[12],[2,\\\"\\\\n          If you’re having trouble uploading, contact Huron Analytics Help to make sure your file is formatted\\\\n          correctly.\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"currentUser\\\",\\\"errors\\\",\\\"buttonText\\\",\\\"meta\\\",\\\"coPisFileName\\\",\\\"hasUploaded\\\",\\\"if\\\",\\\"actualsFileName\\\",\\\"successesFileName\\\",\\\"proposalsFileName\\\",\\\"facultyFileName\\\",\\\"sectorsDepartmentsFileName\\\",\\\"asOfDate\\\",\\\"queryDate\\\",\\\"acceptFileTypes\\\",\\\"isLoading\\\",\\\"model\\\",\\\"isShowingFormattingHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/data-import.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/data-mining\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"I+A0U11f\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@selectedOption\\\",\\\"@options\\\",\\\"@onChange\\\"],[[34,10],[34,11],[30,[36,3],[[32,0],\\\"viewChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"top-page-controls condensed-controls no-top-margin\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Department\\\",\\\"department-variable-width\\\",\\\"department-variable-width\\\",[34,12],[30,[36,3],[[32,0],\\\"selectSector\\\"],null],[34,13]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@disabled\\\",\\\"@hoverText\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Faculty Rank\\\",[34,14],[34,15],[34,16],[30,[36,3],[[32,0],\\\"selectClassify\\\"],null],[34,17]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Faculty Hire Year\\\",[34,18],[30,[36,3],[[32,0],\\\"selectHireYear\\\"],null],[34,19]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Faculty Tier\\\",[34,20],[30,[36,3],[[32,0],\\\"selectQuartile\\\"],null],[34,21]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Grant Type\\\",[34,22],[30,[36,3],[[32,0],\\\"selectGrantType\\\"],null],[34,23]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Sponsor Type\\\",[34,24],[30,[36,3],[[32,0],\\\"selectSponsor\\\"],null],[34,25]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,26]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Submitted\\\",[34,8],[30,[36,3],[[32,0],\\\"selectSubmitted\\\"],null],[34,9]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Start Year\\\",[34,28],[30,[36,3],[[32,0],\\\"selectStartYear\\\"],null],[34,29]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@selected\\\",\\\"@onchange\\\",\\\"@searchDisabled\\\",\\\"@searchEnabled\\\",\\\"@options\\\"],[\\\"Start Month\\\",[34,30],[30,[36,3],[[32,0],[30,[36,31],[[35,30]],null]],null],true,false,[34,32]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"End Year\\\",[34,33],[30,[36,3],[[32,0],\\\"selectEndYear\\\"],null],[34,34]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,26]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Status\\\",[34,4],[30,[36,3],[[32,0],\\\"selectStatus\\\"],null],[34,5]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Supplement\\\",[34,6],[30,[36,3],[[32,0],\\\"selectSupplement\\\"],null],[34,7]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,35]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-2 last-sm\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"async-button\\\",[],[[\\\"@classNames\\\",\\\"@label\\\",\\\"@submitAction\\\"],[\\\"float-right\\\",\\\"Export to Excel\\\",[30,[36,3],[[32,0],\\\"exportData\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[[34,10]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls condensed-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item data-item\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Count:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,0,[\\\"count\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"count\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[2,\\\"0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item data-item\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Investigators:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,0,[\\\"pi_count\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"pi_count\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[2,\\\"0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item data-item\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,0,[\\\"directs\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item data-item\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,0,[\\\"indirects\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item data-item\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,27],[[35,0,[\\\"total\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"total\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"search-input-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"search-input\\\"],[12],[2,\\\"Search:\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"input\\\",[[24,\\\"placeholder\\\",\\\"Search by investigator...\\\"]],[[\\\"@name\\\",\\\"@type\\\",\\\"@value\\\"],[\\\"search-input\\\",\\\"text\\\",[34,36]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"table-data-mining\\\",[],[[\\\"@model\\\",\\\"@hideStatusColumn\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\",\\\"@isLoading\\\"],[[34,37],[30,[36,38],[[35,26]],null],[30,[36,3],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,3],[[32,0],\\\"handlePagination\\\"],null],[34,39]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"meta\\\",\\\"format-money\\\",\\\"format-number\\\",\\\"action\\\",\\\"selectedStatus\\\",\\\"statusOptions\\\",\\\"selectedSupplement\\\",\\\"supplementOptions\\\",\\\"selectedSubmitted\\\",\\\"submittedOptions\\\",\\\"selectedView\\\",\\\"viewOptions\\\",\\\"selectedSector\\\",\\\"sectorOptions\\\",\\\"selectedClassify\\\",\\\"classifyOptionsDisabled\\\",\\\"facultyTypeHoverText\\\",\\\"classifyOptions\\\",\\\"selectedHireYear\\\",\\\"hireYearOptions\\\",\\\"selectedQuartile\\\",\\\"quartileOptions\\\",\\\"selectedGrantType\\\",\\\"grantTypeOptions\\\",\\\"selectedSponsor\\\",\\\"sponsorOptions\\\",\\\"isProposals\\\",\\\"if\\\",\\\"selectedStartYear\\\",\\\"startYearOptions\\\",\\\"selectedStartMonths\\\",\\\"mut\\\",\\\"startMonthOptions\\\",\\\"selectedEndYear\\\",\\\"endYearOptions\\\",\\\"canExportData\\\",\\\"searchValue\\\",\\\"model\\\",\\\"not\\\",\\\"isLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/data-mining.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"3jzXHSkT\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"navbar-secondary navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,4],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item department\\\"]],[[\\\"@route\\\"],[\\\"app.departments\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"All Departments\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,4],[[35,6]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,4],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"span\\\"],[14,0,\\\"divider\\\"],[12],[2,\\\" > \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"nav-item\\\"],[12],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\",\\\"@model\\\"],[\\\"app.departments.department\\\",[34,5]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,6]]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,4],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"divider\\\"],[12],[2,\\\" > \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"nav-item\\\"],[12],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\",\\\"@model\\\"],[\\\"app.departments.principal-investigator\\\",[34,1]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[34,2]]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"header-controls\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,4],[[30,[36,9],[[35,8],[35,7]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item is-inline\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Export to Excel\\\",[30,[36,0],[[32,0],\\\"exportDataClicked\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[1,[30,[36,11],[[30,[36,10],null,null]],null]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"piId\\\",\\\"piName\\\",\\\"isNotDepartment\\\",\\\"if\\\",\\\"departmentId\\\",\\\"departmentName\\\",\\\"isDepartmentsPage\\\",\\\"canExportData\\\",\\\"and\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/department\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"PKiLxPzv\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h1\\\"],[12],[1,[35,0,[\\\"name\\\"]]],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"departments-summary-cards\\\",[],[[\\\"@model\\\",\\\"@includeMega\\\"],[[34,0],false]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Potential to Spend and Earn Indirects - Active Contact PIs\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls highlight-thresholds\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"Highlight Thresholds\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"controls-row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"item-wrapper decline\\\"],[12],[8,\\\"percent-text-input\\\",[],[[\\\"@class\\\",\\\"@label\\\",\\\"@value\\\"],[\\\"sample\\\",\\\"Year-over-year gain or decline\\\",[34,1]]],null],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"item-wrapper change\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@label\\\",\\\"@value\\\"],[\\\"Directs Change\\\",[34,2]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@label\\\",\\\"@value\\\"],[\\\"Indirects Change\\\",[34,3]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Include Future Potential from Completed PI Plans\\\",[34,4],[34,5],[30,[36,6],[[32,0],\\\"includePlanChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"table-potential-to-spend\\\",[],[[\\\"@model\\\",\\\"@extra\\\",\\\"@isLoading\\\",\\\"@includePlanPts\\\",\\\"@displayType\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\"],[[34,7],[34,8],[34,9],[30,[36,10],[[35,5],\\\"Yes\\\"],null],\\\"Investigators\\\",[30,[36,6],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,6],[[32,0],\\\"handlePagination\\\"],null]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\\n\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"nearTermDecline\\\",\\\"directsChange\\\",\\\"indirectsChange\\\",\\\"optionsIncludePlan\\\",\\\"selectedIncludePlan\\\",\\\"action\\\",\\\"tableModel\\\",\\\"tableExtra\\\",\\\"isLoading\\\",\\\"eq\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/department.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"+SlCebwL\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"departments-summary-cards\\\",[],[[\\\"@model\\\",\\\"@includeMega\\\",\\\"@extrapolation\\\",\\\"@extrapolationHelpModalAction\\\"],[[34,1],false,[34,2,[\\\"team\\\",\\\"hasMonthlyActuals\\\"]],[30,[36,0],[[32,0],\\\"toggleDepartmentExtrapolationHelp\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Potential to Spend by Department\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls highlight-thresholds\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"Highlight Thresholds\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"controls-row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"item-wrapper decline\\\"],[12],[8,\\\"percent-text-input\\\",[],[[\\\"@label\\\",\\\"@value\\\"],[\\\"Year-over-year gain or decline\\\",[34,3]]],null],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"item-wrapper change\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@label\\\",\\\"@value\\\"],[\\\"Directs Change\\\",[34,4]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@label\\\",\\\"@value\\\"],[\\\"Indirects Change\\\",[34,5]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Set the dollar values of Potential Direct and Indirect declines or increases that you would like to highlight.\\\"]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Include Future Potential from Completed PI Plans\\\",[34,6],[34,7],[30,[36,0],[[32,0],\\\"includePlanChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"table-potential-to-spend\\\",[],[[\\\"@model\\\",\\\"@extra\\\",\\\"@isLoading\\\",\\\"@displayType\\\",\\\"@includePlanPts\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\"],[[34,8],[34,9],[34,10],\\\"Departments\\\",[34,11],[30,[36,0],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,0],[[32,0],\\\"handlePagination\\\"],null]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,13],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleDepartmentExtrapolationHelp\\\"],null],\\\"Year-to-Date Actuals\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      Year-to-date actuals reported here are as of the month-end date noted above, not as of the query date. If you provide\\\\n      monthly data in your actuals upload, the section immediately below tells you where year-to-date spending and\\\\n      indirect cost recovery stood relative to year-end in prior years. Upon opening, the slide indicator is set to assume\\\\n      spending and indirect cost recovery are spread out evenly over the course of the year which is most often not the\\\\n      case. Reset the slide indicator as appropriate based on prior years to generate a more meaningful year-end\\\\n      projection. If you do not provide monthly data in your actuals upload, you should make some allowance for the fact\\\\n      that spending and indirect cost recovery often balloon at year-end, particularly in portfolios that are predominantly\\\\n      biomedical. For other research institutions on a traditional semester schedule, however, spending and indirect cost\\\\n      recovery often balloon in the summer months and then taper over the course of the year before ballooning again at\\\\n      year end.\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"departmentsSummaryData\\\",\\\"currentUser\\\",\\\"nearTermDecline\\\",\\\"directsChange\\\",\\\"indirectsChange\\\",\\\"optionsIncludePlan\\\",\\\"selectedIncludePlan\\\",\\\"tableModel\\\",\\\"tableExtra\\\",\\\"isLoading\\\",\\\"includePlanPts\\\",\\\"isShowingDepartmentExtrapolationHelp\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/principal-investigator\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Km0jsEOD\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pi-header\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"h1\\\"],[12],[1,[35,0,[\\\"name\\\"]]],[2,\\\" \\\"],[1,[35,0,[\\\"degree\\\"]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"info-wrapper\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Rank\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,0,[\\\"rank\\\"]]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Research Type\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,0,[\\\"formattedSpaceType\\\"]]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Sector\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,0,[\\\"department\\\",\\\"sector\\\",\\\"name\\\"]]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Track\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,0,[\\\"track\\\"]]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Current FTE\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,2]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Hire\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,3]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Last Promo\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,4]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Current Appt. End\\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"value-or-not-provided\\\",[],[[\\\"@value\\\"],[[34,5]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Reserve Balance\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0,[\\\"reserves\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"reserves\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Not Provided\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"info\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[12],[2,\\\"Email\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0,[\\\"email\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"p\\\"],[12],[10,\\\"a\\\"],[15,6,[31,[\\\"mailto:\\\",[34,0,[\\\"email\\\"]]]]],[12],[1,[35,0,[\\\"email\\\"]]],[13],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Not Provided\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-navigation\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.departments.principal-investigator.projections\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Projections\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.departments.principal-investigator.comparative-statistics\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Comparative Statistics\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.departments.principal-investigator.history\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Proposal History\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[1,[30,[36,8],[[30,[36,7],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"format-money\\\",\\\"fte\\\",\\\"hireYear\\\",\\\"lastPromoYear\\\",\\\"appointmentEndDate\\\",\\\"if\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/principal-investigator.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/principal-investigator/comparative-statistics\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"78oeCVmM\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\",\\\"@viewOptions\\\",\\\"@optionsHoverText\\\",\\\"@switchAction\\\",\\\"@selectedView\\\"],[\\\"Comparative Statistics\\\",\\\"If rank is provided in the faculty data upload to Huron Analytics, this section will provide comparative statistics for this PI relative to peers of the same rank in the same department, sector and the institution as a whole.  If rank is not provided, this section will provide comparative statistics for all contact PIs in the department, sector and the institution as a whole.\\\",[34,0],\\\"This section provides two sets of comparative statistics – Dollar Density and Compensation – if the data required have been provided.  Check with your Huron Analytics Administrator for the “as of” date for compensation and dollar density comparisons.  Comparative percentages showing are the ratio of the investigator’s dollar density results or compensation to the averages for peer populations of the same rank,  Department, Sector and the Institution as a whole.\\\",[30,[36,1],[[32,0],\\\"switchSelectedView\\\"],null],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-comparative-statistics-pi\\\",[],[[\\\"@model\\\",\\\"@selectedView\\\"],[[34,3],[34,2]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Comparative Proposal Statistics\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@onChange\\\"],[\\\"Lookback\\\",[34,4],[34,5],[30,[36,1],[[32,0],\\\"lookbackChanged\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"Sponsor:\\\"],[13],[2,\\\"\\\\n      \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,6],[34,7],[30,[36,1],[[32,0],\\\"sponsorTypeChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"table-comparative-statistics-proposals\\\",[],[[\\\"@model\\\"],[[34,8]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"tableViewOptions\\\",\\\"action\\\",\\\"selectedPiView\\\",\\\"compStatsPiModel\\\",\\\"selectedLookbackOption\\\",\\\"lookbackOptions\\\",\\\"sponsorTypeOptions\\\",\\\"selectedSponsorOption\\\",\\\"compStatsProposalModel\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/principal-investigator/comparative-statistics.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/principal-investigator/history\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qTO06Rm1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Proposal History\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-proposal-history\\\",[],[[\\\"@model\\\"],[[34,0]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"tableModel\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/principal-investigator/history.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/principal-investigator/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0zGFA2p8\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/principal-investigator/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/departments/principal-investigator/projections\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"jm6FZtJZ\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container top-controls text-right\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,19,[\\\"planDate\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        Last saved: \\\"],[1,[30,[36,20],[[35,19,[\\\"planDate\\\"]],\\\"MM/DD/YYYY\\\"],null]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        Investigator does not have a saved plan.\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Save Plan\\\",[30,[36,2],[[32,0],\\\"savePlan\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,18]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[14,0,\\\"description-text warning\\\"],[12],[1,[34,18]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Pending Grants as Contact PI\\\",\\\"Pending grants appear here if they were entered in the data base as of the month-end date shown above or as of the query date shown above if queries are run up to the minute.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@onGrantChange\\\",\\\"@emptyTableMessage\\\"],[[34,21],[30,[36,2],[[32,0],\\\"grantProjectionChanged\\\"],null],[34,22]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Active Grants as Contact PI\\\",\\\"All grants with end dates at any time in the current fiscal year and beyond appear in this section.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@onGrantChange\\\",\\\"@isActiveGrants\\\",\\\"@emptyTableMessage\\\"],[[34,23],[30,[36,2],[[32,0],\\\"grantProjectionChanged\\\"],null],true,[34,24]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Future Proposal Submissions as Contact PI\\\",\\\"This section requests some indication of the investigator’s likely level of proposal effort and target hit rates relative to historical average proposal volumes and actual hit rates in years past.  The uncertainties and speculative nature of this sort of thing, including its dependence on outcomes for pending grants and renewals, is acknowledged fully.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls border-bottom condensed-controls\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"continue-submitting\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\" PI \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\"],[[34,25],[30,[36,2],[[32,0],\\\"continueSubmittingOptionChanged\\\"],null],[34,26]]],null],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\"continue submitting\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,27]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"div\\\"],[14,0,\\\"slider-wrapper\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"slider\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"\\\\n              Approximate level of submission relative to previous 5 years\\\\n\\\"],[6,[37,5],[[30,[36,4],[[35,3],\\\"dept_avg\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                (Department averages in use)\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,5],[[30,[36,4],[[35,3],\\\"new\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                (Institutional averages in use)\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              :\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"input\\\"],[14,1,\\\"rangeInput\\\"],[15,0,[31,[\\\"value-\\\",[34,6]]]],[14,\\\"max\\\",\\\"300\\\"],[14,\\\"min\\\",\\\"0\\\"],[14,\\\"step\\\",\\\"5\\\"],[15,2,[34,7]],[15,\\\"oninput\\\",[30,[36,2],[[32,0],[30,[36,8],[[35,7]],null]],[[\\\"value\\\"],[\\\"target.value\\\"]]]],[14,4,\\\"range\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"slider-labels\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"slider-label first\\\"],[12],[2,\\\"\\\\n                0%\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"slider-label second\\\"],[12],[2,\\\"\\\\n                100%\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"slider-label third\\\"],[12],[2,\\\"\\\\n                200%\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"slider-label last\\\"],[12],[2,\\\"\\\\n                300%\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"New Yearly Proposals:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"text-input-wrapper with-display-values no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\"],[[34,7]]],null],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"display-values-wrapper\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[35,9,[\\\"content\\\"]]],[10,\\\"span\\\"],[12],[2,\\\"submissions\\\"],[13],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,11],[[35,10,[\\\"content\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item margin-left-important\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper-with-value\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@displayValue\\\",\\\"@optionChanged\\\"],[\\\"Hit Rate\\\",[34,12],[34,13],[30,[36,2],[[32,0],\\\"hitRateOptionChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Target Hit Rate\\\",[34,14],[34,15],[30,[36,2],[[32,0],\\\"targetHitRateOptionChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"New Yearly Succeses:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"text-input-wrapper with-display-values vertical-align-middle no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"display-values-wrapper\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[35,16,[\\\"content\\\"]]],[10,\\\"span\\\"],[12],[2,\\\"successes\\\"],[13],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,11],[[35,17,[\\\"content\\\"]]],null]],[2,\\\" total\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Historical Actuals & Projected Potential to Spend and Earn Indirects as Contact PI\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-pi-projections\\\",[],[[\\\"@model\\\"],[[34,28]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Non-Contact PI, Senior/Key Person, or Co-PI on Active Grants Not Included Above\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@isCoPi\\\",\\\"@onGrantChange\\\"],[[34,29],true,[30,[36,2],[[32,0],\\\"grantProjectionChanged\\\"],null]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Compensation Coverage - Historical Actuals and Projected as PI and Non-Contact PI/Other\\\",\\\"This calculation of compensation coverage is meant only as a guide.  The uncertainties and variability of compensation coverage on specific grants at any point and over time is acknowledged fully.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-compensation-coverage\\\",[],[[\\\"@model\\\"],[[34,30]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-notes\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Notes\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      Leave notes for future reference.\\\\n      \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Use this section to note things like the reason why a pending proposal will be be funded such as “High priority score” or “Noted as “Pending” in Commons”.  All notes will be saved for future reference.  Notes recorded in the future will be added to existing notes. So, make notes as complete and informative as possible and Indicate who recorded the notes and the dates.  This section is not limited in terms of space and copy from word documents – such as an investigator’s activity as non-contact PI or co-PI if that information is not provided by the institution – can be copied and pasted into the note field.  The note field is particularly important since all sections of the PI Projection Page – i.e. Pending Proposals, Renewals, and Future Submissions – return to default settings when new proposal and success data is imported to Huron Analytics.\\\"]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"pell-editor\\\",[],[[\\\"@value\\\",\\\"@onChange\\\",\\\"@pellOptions\\\"],[[34,31],[30,[36,2],[[32,0],[30,[36,8],[[35,31]],null]],null],[34,32]]],null],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,33]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[11,\\\"button\\\"],[4,[38,2],[[32,0],\\\"savePiNotes\\\"],null],[12],[2,\\\"Save Notes\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,5],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"success-message\\\",[],[[\\\"@successMessage\\\"],[[34,1]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,5],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"piNotesErrors\\\",\\\"piNotesSuccess\\\",\\\"action\\\",\\\"projectionType\\\",\\\"eq\\\",\\\"if\\\",\\\"rangePercent\\\",\\\"submissionLevelValue\\\",\\\"mut\\\",\\\"futureAverageAnnualSubmissionCount\\\",\\\"futureAverageAnnualSubmissionTotal\\\",\\\"format-money\\\",\\\"hitRateOptions\\\",\\\"displayHitRate\\\",\\\"targetHitRateOptions\\\",\\\"selectedTargetHitRateOption\\\",\\\"futureSuccessesCountPerYear\\\",\\\"futureSuccessesTotalPerYear\\\",\\\"piPlanError\\\",\\\"model\\\",\\\"moment-format\\\",\\\"pendingGrants\\\",\\\"emptyTableMessagePending\\\",\\\"activeGrants\\\",\\\"emptyTableMessageActive\\\",\\\"continueSubmittingOptions\\\",\\\"selectedContinueSubmittingOption\\\",\\\"isContinueSubmitting\\\",\\\"ptsModel\\\",\\\"activeCOPiGrants\\\",\\\"compensationCoverageModel\\\",\\\"piNotes\\\",\\\"pellOptions\\\",\\\"piNotesUpdated\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/departments/principal-investigator/projections.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/help\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"BovC6pfL\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pi-header navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Help Center\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-navigation\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.help.introduction\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Introduction\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.help.instructions\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Instructions\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.help.glossary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Glossary\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.help.primer\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Primer\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app help-page-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n      \\\"],[1,[30,[36,1],[[30,[36,0],null,null]],null]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/help.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/help/glossary\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CybOci23\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"h1\\\"],[12],[2,\\\"Amortization\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Spending and indirect cost recovery on individual grants or pools of successes can be approximated by spreading out lifetime values over the lifetime of the individual grant or the weighted average duration of pools of successes.  Different amortization schedules could be used.  But using a straight-line schedule smooths out ebbs and flows in the aggregate.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Compensation Coverage\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Compensation coverage is the percentage of an investigator’s salary and fringe benefits that is charged to grants. The percentage can vary over the course of a year. Compensation charged to NIH grants can be limited if the investigator’s salary exceeds the NIH salary cap which presently stands at $187,000.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Contact PI\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The contact PI is the individual named as such on a proposal or success as opposed to individuals who might be named as non-contact PI, key person or co-PI on a proposal or success in another investigator’s name as contact PI.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Conversion Ratio\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Conversion ratios are calculated for core proposals and successes. They are the ratio of total core successes in a year in relation to total core proposals in the prior and current years differentiated by the Year 1: Year 2 Derivative Ratio. As such, Conversion Ratios do take dollar values into account.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Core Proposals\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"“Core” refers to proposals and successes with a lifetime value of directs and indirects combined that is $5 million or less. “Core” grant activity is analyzed “econometrically” - i.e. for the population as a whole.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Core Success\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"“Core” refers to proposals and successes with a lifetime value of directs and indirects combined that is $5 million or less.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Coverage Ratio\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics displays two coverage ratios:  The Potential to spend Coverage Ratio is the ratio of pending proposals with proposed start dates in the current fiscal year to any potential decline in the potential to spend in the current fiscal year.  A healthy Potential to spend Coverage Ratio is 20 or more.  The Ending Coverage Ratio is the ratio of pending proposals with proposed start dates in the current fiscal year to active grants that are ending in the current fiscal year.  The calculation is advanced each month to include only pending proposals and active grants with proposed start dates and ending dates respectively over the remaining months of the year.  A healthy Ending Coverage Ratio is typically 4 or more.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Dollar Density\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Dollar Density refers to the ratios of total direct spending and indirect cost recovery in the name of an investigator as contact PI to the square footage of the laboratory space assigned to that investigator.  The most reliable measure of direct spending for comparative purposes is Modified Total Direct Costs.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Econometrics\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"An econometric model looks at the behavior of a population as a whole rather than the behavior of individual members of that population to anticipate how future events might unfold. Huron Analytics is a hybrid that uses both econometrics and individual profiling.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"The Hedge\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Hedge is a method used to simulate future mega grant funding.  It assumes all active mega grants will renew or be replaced thereby relying on historical mega grant funding levels to predict future mega grant funding levels.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Hit Rate\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Hit Rate is the simple ratio of funded proposal counts to total proposals submitted.  As such, Hit Rates do not take dollar values into consideration.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Leading Indicators\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Awards, direct spending, and indirect cost recovery are “outcomes” and cannot be used with confidence for forecasting purposes. Proposals, conversion ratios and successes are leading indicators that will determine the trajectory of spending and indirects over time.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Lifetime Value\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Total proposed directs and indirects define the lifetime value of a proposal. Expected direct and indirect awards over all award periods of a funded proposal define the lifetime value of a success.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Mega Grants\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"“Mega” refers to proposals and successes with a lifetime value of directs and indirects combined that is greater than $5 million.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Modified Total Direct Costs (MTDC)\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"MTDC excludes sub-contract expenses and capital equipment purchases from total direct spending in the name of an investigator as contact PI.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Non-Contact PI, Key Person or Co-PI\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics analyzes historical and current leading indictor trends by tracking grant activity based on the contact PI to assure that all key metrics are accurately accounted for with no duplication.  But this cannot be considered a complete measure of PI effort and performance.  If your institution can provide the data, Huron Analytics will list all active grants on which an investigator serves in a status that is equal to are approaching the role of the contact PI.  Those roles are sometimes referred to as non-contact PI, key person or, outside of NIH, co-PI.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Potential to Spend\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Potential to spend is an estimate of the directs spending and indirect cost recovery that will be generated year by year for all the grants in the name of an investigator as contact PI. The potential to spend estimate is derived by amortizing individual grants over their individual lifetimes based on success start and end dates with an actuarial allowance for shrinkage and no cost extensions.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Scenario\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics does not “predict” future spending and indirect cost recovery outcomes.  It “projects” a range of plausible future spending and indirect cost recovery outcomes based on a range of plausible leading indicator trends over time.  Each set of leading indicator assumptions is a “scenario” and it is important to lay out those specific assumptions in detail when presenting or discussing the projections of spending and indirect cost recovery they produce.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Sector\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"In Huron Analytics, departments of like kind are grouped into Sectors to measure key variables and relationships.  The Basic Sciences, for example, would be a Sector.  The Social Sciences would be a Sector.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Shrinkage\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Shrinkage is an estimate of the extent to which actual spending and indirect cost recovery on grants in the aggregate ultimately fall short of the originally authorized levels of spending and indirect cost recovery in the aggregate.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Sponsor Category\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"For biomedical research portfolios, Huron Analytics further sub-divides the population into four sponsor categories to measure key variables and relationships:  NIH, Other Fed, Federal Flow Thru and Non-Fed.  For portfolios that are not focused primarily on biomedical research, there are also four sponsor categories:  NIH, NSF, Other Fed, and Non-Fed.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Weighted Average Duration\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The average duration of annual pools of core successes takes the dollar value of individual grants into consideration. A 4-year grant with a value of $1.5 million has a greater effect on the weighted average duration than a 3-year grant worth $500,000.\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Y1:Y2 Derivative\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The is the % of this year’s successes in the aggregate that are derived from last year’s proposals in the aggregate versus this year’s proposals in the aggregate. This ratio can be derived empirically from proposal submission and proposed start dates.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/help/glossary.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/help/instructions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UKUHuBpc\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[3,\\\" Projections \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Econometric Projections – The Projections Page\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Conventional wisdom suggests that past performance is a reliable predictor of future results. Spending and indirect cost recovery are typically projected simply by extrapolating from past results. And if this year's award volumes are on par with or ahead of last year's award volumes, then it is assumed that the portfolio is in good shape.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"But grant spending and indirect cost recovery in any given year are typically the product of thousands of events going as far back as six or more years.  Extrapolating from past results to project future spending and indirect cost recovery outcomes implicitly assumes that grant activity from years past that is exiting the pipeline will be replaced by new grants. And if recent trends in spending and indirect cost recovery have been positive, extrapolation implicitly assumes the dollar value of new grants will exceed the dollar value of ending grants. These assumptions are certainly plausible.  But they are also entirely speculative. Awards are, after all, nothing more than this year’s authorization to spend on new grants or grants that were first funded in years past. This year’s award totals tell you nothing about what’s ending and what new funding will be secured in the future.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Huron Analytics focuses on leading indicators, rather than past outcomes, to monitor the performance of a research portfolio and to project future spending and indirect cost recovery outcomes. In a nutshell:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Proposals in the aggregate in dollar terms convert to successes in the aggregate in dollar at measurable and reasonably predictable conversion ratios. Successes are the lifetime value of funded proposals broken out for directs and indirects.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Successes secured in prior years are known and the spending and indirect cost recovery they will generate over time is projected by amortizing each year's total direct and indirect successes over the weighted average duration of the grants in that annual pool with proper allowances for shrinkage, attrition, and no cost extensions. \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Successes that will be secured this year and beyond are derived from projections of proposal volumes and conversion ratios. These projections can be based passively on historical outcomes and trends or actively based on institutional priorities and objectives.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Past, current and future projections of annual spending and indirect cost recovery developed by amortizing annual pools successes in the manner described above are layered atop one another and the cross section of six years of amortized pools in one year defines that year’s projections of spending and indirect cost recovery.\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics goes into all of this in considerably more detail in both the front end of the application and the back end, and anyone who has an interest in learning more about the patented systems and methods that power Huron Analytics is encouraged to read the \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\"],[\\\"app.help.primer\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Primer on Econometric Research Enterprise Forecasting and Performance Assessment\\\"]],\\\"parameters\\\":[]}]]],[2,\\\" in another section of the Help Center. But the Projections Page of the Huron Analytics application provides a live demonstration of these principles.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"There is one important distinction to be made with respect to econometric projections.  Proposals and successes with a lifetime value of directs and indirects combined that exceed $5.0 million are considered to be mega grants and those are separated from proposals and successes with lifetime values of $5.0 million or less which are referred to as core grants. Spending and indirect is projected by amortizing each mega grant over its individual lifetime based on success start and end dates with proper allowances for shrinkage, carryovers and no cost extensions.  If mega grants are not separated from the core, they could easily distort measures of proposal volume and conversion ratios.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"When the Huron Analytics application is first opened, leading indicator assumptions are set to assume that core proposal volumes and conversion ratios will simply stay at the prior year's levels in the current year and beyond in each sponsor category and in all Departments. This scenario generates the opening baseline projection of spending and indirect cost recovery shown in the exhibit on the bottom of the Projections Page. You can modify these scenario assumptions to test the sensitivity of spending and indirect cost recovery projections. And you can reset any alternative scenario as the baseline projection. As the year progresses, modify the projection for the current year based on year-to-date leading indicator trends and see how those trends cause projected spending and indirect cost recovery to vary from the baseline you establish. Set assumptions about the transition to the next fiscal year and beyond and, again, see how those assumptions cause projected spending and indirect cost recovery to vary from your baseline.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"You can drill down on the Projections Page to view Sectors and individual Departments.  The baseline projection will change automatically when you drill down.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /Projections \\\"],[2,\\\"\\\\n\\\\n\\\\n\\\"],[3,\\\" Insights Section \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Exhibits and Analytics – The Insights Section\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Insights section has two pages:  The Core Detail page provides historical proposal, conversion ratio and successes along with projections for the current year based on institutional settings on the Projections Page.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  The more comprehensive page, however, is the Comparative Core Proposals and Successes page. And this is the default opening page when you navigate to this section.  This page provides a host of information about historical and current trends in core proposal and successes.  Drop down filters at the top of the page allow you to select:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The lookback period – from 1 year to 5 years\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The Sector or Department\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The Sponsor category\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Faculty categories\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Within the faculty category selector, the options include:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"All faculty\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Faculty Class – i.e. Senior faculty vs. junior faculty vs. other\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  For any set of selections, you can view many comparative metrics:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The top row of exhibits relates to core proposal volumes\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The middle row of exhibits relates to core successes\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The bottom row of exhibits relates to core hit rates and conversion ratios\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Core proposal exhibits include from right to left:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative month-by-month core proposals in dollar terms\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative year-to-date and year-end core proposal in dollar terms\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative year-to-date and year-end core proposal counts\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative year-to-date and year-end count of investigators\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Core success exhibits include from right to left:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative month-by-month core successes in dollar terms\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative year-to-date and year-end core successes in dollar terms\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Comparative month-by-month potential for core successes based on proposal start dates\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"On the left side of the bottom of the page, comparative hit rates are displayed for the major pools of proposals based on proposed start dates – i.e. July, September, December, and April. Hit rates are the simple ratio of funded proposals to all proposals.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"On the right side of the bottom of the page, comparative success rates are displayed for the same periods – i.e. the dollar value of successes starting in each month in relation to the dollar value of proposals with start dates in those months. This is not a pure conversion ratios since the relationship between starts and proposed starts isn’t always 1:1. But it is a reasonable and useful measure of trends in the ratio of successes to proposals.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"All of the exhibits on the Comparative Core Proposals and Successes page can be copied and pasted to reports or presentations. Paste directly, not as a picture.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /insights \\\"],[2,\\\"\\\\n\\\\n\\\\n\\\"],[3,\\\" Mega Grants \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Mega Grants Pages\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"As noted earlier, proposals and successes lifetime value of directs and indirects combined that exceeds $5.0 million are removed from the core population.  The core typically consists of a thousand or more active grants and that population is reviewed econometrically in the manner described earlier.  Mega grants, however significant in dollar terms, are small populations based on count that are cannot be modeled econometrically.  They are reviewed individually and they are removed from the core because they can unduly influence proposal and conversion ratio statistics by virtue of their sheer size.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  While Department Chairs and Administrators can see each PI’s entire portfolio including mega grants on their PI Pages, only users with executive privileges and application administrators have access to the mega grants pages at this time.  There are three Mega Grant Pages:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Active Mega Grants\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Mega Grant Summary\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Pending Mega Grants\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"When first opened, the Active Mega Grants page assumes that all mega grants will renew or be replaced.  This is referred to as the hedge.   The purpose of the hedge is not to predict which active grants will actually renew and how many new mega grants will be funded, but simply to use historical mega grant funding levels to simulate future levels of mega grant funding.  However, mega grants that are known to be ending in the current year can be noted as such.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"And if remaining balances are known or if it is known that a mega grant that is ending will not be spent out fully, an override can be applied that adjusts the remaining spending and indirect cost recovery appropriately.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Mega Grant Summary page tests whether the hedge assumption that all active mega grants will renew or be replaced is reasonable for the current year.  Totals for mega grants that are assumed to renew or be replaced are displayed.  Year-to-date totals for new mega grant funding are displayed.  The remaining hedge challenge is displayed.  Totals for pending mega grants with proposed start dates in the current year are displayed.  The conversion ratios that would be required to cover the remaining hedge challenge are displayed.  Historical hit rates are applied to pending mega grants with start dates in the current fiscal year and the potential gain or decline in mega grant funding is calculated. Those adjustments can be accepted and applied to spending and indirect cost recovery projections going forward.  Normally, those adjustments would only be accepted sometime in the second half of the year when most or all of the proposals that might cover the current hedge have been submitted and most or all of the new mega grants have started.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The mega grant summary page provides additional views of historical and future mega grant funding considerations along with the ability to add to or subtract mega grant funding in future years to adjust the hedge assumption that all active mega grants will renew or be replaced. For example: If the backlog of active mega grants that are assumed to renew or be replaced in a future year or years is well below the level of mega grant funding secured in recent years, you might anticipate one or more additional mega grants to be funded in that year.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Pending Mega Grant page provides counts and dollar values of pending mega grants by proposed start date with the ability to drill down and see the detail.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /mega grants \\\"],[2,\\\"\\\\n\\\\n\\\"],[3,\\\" Recruitment \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Recruitment Module\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics’s Recruitment Module allows users to construct recruitment plans and test the impact of different recruitment strategies and expectations.  It employs the same patented systems and methods that power Huron Analytics’s Econometric and Potential to Spend forecasting modules.  But it builds leading indicator and spending and indirect cost recovery outcomes based assumptions about proposal volumes, conversion ratios and other key performance metrics.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  These are the data elements that populate the Huron Analytics Recruitment Module:\\\\n  \\\"],[10,\\\"ol\\\"],[14,0,\\\"recruitment-list\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Number of recruits per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Average total compensation per recruit\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Average start up package per recruit\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Average spend out period per start up package\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Compensation covered by the institution vs. grants both during and after startup\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average NIH K type proposal count, dollar value and hit rate per prior recruit per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average NIH R type proposal count, dollar value and hit rate per prior recruit per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average Other Fed proposal count, dollar value and hit rate per prior recruit per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average Fed Flow Thru proposal count, dollar value and hit rate per prior recruit per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average Non Fed proposal count, dollar value and hit rate per prior recruit per year\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Successes transferred in by sponsor type per prior recruit\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Successes relinquished by sponsor type for faculty who have terminated\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Proposal expectation relative to prior recruits (Relative Performance Index)\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Hit rate expectation relative to prior recruits\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Year 1:Year2 Derivative Ratios for each sponsor category\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Weighted average duration of successes by sponsor category\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Average indirect cost recovery rate by sponsor category\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Since Huron Analytics models Junior and Senior recruits separately, there are, indeed, \\\"],[10,\\\"b\\\"],[12],[10,\\\"i\\\"],[12],[2,\\\"many\\\"],[13],[13],[2,\\\" inputs, as is the case with any comprehensive model of a complex system.  That’s the \\\"],[10,\\\"b\\\"],[12],[10,\\\"i\\\"],[12],[2,\\\"bad news.\\\"],[13],[13],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The \\\"],[10,\\\"b\\\"],[12],[10,\\\"i\\\"],[12],[2,\\\"good news\\\"],[13],[13],[2,\\\" is that if you provide rank, hire date and termination date in your faculty upload, you only need to provide data for \\\"],[10,\\\"span\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"items #1 through #5 and #13 and #14\\\"],[13],[2,\\\". These are the basic elements of your recruitment plan. Basically, those fields ask the user to indicate how many recruits are expected to come on board in each year, what the associated costs are, and how they are expected to perform relative to prior recruits.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"If you do provide rank, hire date and termination date (in columns 7,6 and 8 respectively of your faculty upload) , Huron Analytics will \\\"],[10,\\\"b\\\"],[12],[2,\\\"auto-populate\\\"],[13],[2,\\\" fields #6 through #12 based on your institutional history. Relative Performance Indices (\\\"],[10,\\\"span\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"Items #13 and #14\\\"],[13],[2,\\\") will default to the assumption that new recruits will perform like prior recruits unless you override.  And fields #15, #16, and #17 will auto-populate since those are system-generated metrics used in Huron Analytics’s basic Econometric and Potential to Spend projection modules.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Recruitment Module differentiates between Junior recruits and Senior recruits.  It displays expected proposal volumes, hit rates, successes and spending and indirect cost recovery generated by new recruits in total and individually.  NIH proposals are broken down further by “K” and “R” type based on indirect cost recovery rates.  It sets the projected year by year progression of new recruits on average in terms of proposals, successes and spending and indirects to provide specific and measurable performance benchmarks.  It nets the effects of recruitment and attrition on command. \\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Recruitment Module also displays all the cash flows associated with recruitment and, optionally, attrition over time.  To project costs associated with recruitment, average compensation and start up costs must be posted.  In the case of compensation, the portion of total compensation covered by the institution, as opposed to grants or the startup package, during and after the startup period must be posted.  In the case of startup packages, the period of time over which the bulk of the package will be spent out must be posted.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"If you do \\\"],[10,\\\"b\\\"],[12],[10,\\\"i\\\"],[12],[2,\\\"not\\\"],[13],[13],[2,\\\" provide rank, hire date and termination date in your faculty upload, Huron Analytics will auto populate fields #6 through #12 with composite metrics derived from a sampling of multiple Huron Analytics clients who do provide rank, hire date and termination date.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Whether your entries in fields #6 through #12 are specific to your institution or based on the composite metrics, you can modify core proposal and hit rate expectations using the Performance Index feature in \\\"],[10,\\\"span\\\"],[14,0,\\\"red\\\"],[12],[2,\\\"fields #13 and #14.\\\"],[13],[2,\\\" This feature can also be used to test what combinations of elevated proposal volumes and conversion ratios are required for a new recruit to achieve different levels of direct spending and indirect cost recovery over time.  Remember:  The proposal volumes and conversion ratios showing are averages for past recruits.  And, barring very, very fortunate circumstances, not all past recruits have performed to expectation or to a high standard. \\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics’s Recruitment Module interfaces with econometric projections on the Main Projection Page.  Using the “Type” selector above the numeric spending and indirect cost recovery display at the bottom of the page, select “Include Recruitment” if you wish to add anticipated proposals, successes and spending and indirects derived from recruitment to the “Core & Mega” base.   All exhibits will add in the impact of recruitment.  But the Core Conversion ratio display will be for core proposals submitted by current faculty, not new recruits.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Huron Analytics’s Recruitment Module will continue to evolve over time.\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"In its initial release, recruitment settings survive within a session but revert to null defaults between sessions.  A “Save” feature that will preserve settings between sessions is under consideration. \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"A “Recruitment History” capability is in development.  It will provide detail on the performance of prior recruits for institutions that provide rank and hire date in their faculty upload.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"An “Incremental F&A Cost” capability will be introduced based on client consultation.  It will not address space issues.  But it will allow users to specify how leading indicator and outcome volumes might impact research support costs in departments and central administrative units.\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[3,\\\" Departments \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Potential to Spend Projections – The Department Pages\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"While the econometric view is based on the behavior of the population as a whole, the potential to spend view is based on specific grants that are already in the pipeline. Each grant is amortized over its individual lifetime with proper allowances for shrinkage, carryovers and no cost extensions.  Essentially, the potential to spend view estimates the lapsing schedule of spending and indirect cost recovery that will be derived from active grants over time.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"On the Department Page, this year’s potential to spend in the aggregate and for each Department are compared with last year’s actual direct spending and indirect cost recovery outcomes.  Any potential gain or decline in spending and indirect cost recovery that exceeds a threshold that you specify is highlighted.  Pending proposal totals that might cover any potential declines are displayed.  The ratio of pending proposals to any potential decline in spending and indirect cost recovery is referred to as the potential to spend coverage ratio and that is displayed along with the ratio of pending proposals to ending successes which is the ending coverage ratio.  Newly funded grants factor into the potential to spend calculation and progressively reduce the potential decline in spending and indirect cost recovery over the course of the year.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"On the Department Page, select any Department by clicking on the Department name and the application will provide the same near-term potential to spend display for each of the Department’s investigators.  The Department’s potential to spend is simply the roll up of each investigator’s potential to spend on active grants that are in their name as contact PI.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Potential to Spend Projections – The Investigators Page\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"It is certainly helpful to know what is in the pipeline for each investigator and what the lapsing schedule for those active grants looks like over time.  This information is provided on the Investigators Page which looks ahead three years and highlights annual declines that exceed a threshold that you specify.  Pending proposal totals for each investigator are also displayed.  The page displays all investigators who have had any proposal, success or spending activity in their name as contact PI in any of the last five years, even if they have been terminated.  This is necessary to generate accurate measures of historical proposals, successes, conversion ratios and spending activity.  Upon opening, the Investigators Page is sorted by descending actual spending and indirect cost recovery in the most recently completed fiscal year. The page itself can be resorted. But a search feature at the top of the page allows you to go directly to individual PI Pages which are described below.  Users with executive privileges and system administrators can see all investigators.  Department Chairs and administrators see only the investigators in their Department.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /Departments \\\"],[2,\\\"\\\\n\\\\n\\\"],[3,\\\" Comparative Stats pages \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"Comparative PI Stats Page\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"How does a particular investigator in Department A perform relative to all other investigators in department A? How does that investigator perform relative to all other junior investigators in the same Department? How does that investigator perform relative to all other junior investigators in the same Department who were hired in the same year? How do all the junior investigators in Department A perform relative to all junior investigators in Department B? What performance metrics should we use to set objectives for new recruits? Do grant spending and indirect cost recovery outcomes suggest that there are best practices in place in certain Departments and that improvements are needed in others?\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"These and a vast array of additional questions can be addressed using Huron Analytics’s Comparative Faculty Stats Module. A single intuitive and easy-to-use page provides key summary statistics - for any “Selected Group” and any “Comparison Group”. And the comparison is illustrated further by a “Box and Whiskers” exhibit that compares highs, lows, and interquartile distribution with the median showing for average proposals submitted per year, average hit rates and average directs and indirects combined in the most recently completed fiscal year.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The drop down filters in the Selected and Comparative Group panels allow you to filter on faculty “Category” – i.e. Junior, Senior and Other - as classified in column 9 of the faculty upload data if rank information is provided. And you may also filter on “Hire Year” with the option of choosing “All”, “Base”, “New” or individual cohorts of new recruits hired in any of the last 5 years if hire date is provided in column 6 of the faculty upload.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The detail for the faculty in the “Selected Group” is provided at the bottom of the Comparative PI Stats page. The faculty detail for the Selected Group can be sorted by any of the column headings for analytical purposes. PI “Names” are highlighted. These are hyperlinks to individual PI pages if you would like to see more detail for selected individuals. Comparative PI Stat settings survive within a session. So you can select an individual for review and return to the Comparative page without having to reset anything. But the page defaults to “All” between sessions.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /Comparative Stats pages \\\"],[2,\\\"\\\\n\\\\n\\\"],[3,\\\" PI pages \\\"],[2,\\\"\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"PI pages\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The main Projections Page simulates institutional activity in the aggregate using econometric systems and methods.  Those generate reliable projections that are particularly useful for financial planning and overall performance assessment purposes at the Institutional, Sector, and Department levels. But a true planning process must engage the faculty directly.  And this is the purpose of the individual PI Pages. Individual PI Pages can be accessed from the Department Page, the Investigators Page or the Active or Pending Mega Grant Pages.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"There are three sections in the PI Page: PI Projections; PI Proposal History; and Comparative Statistics.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The PI page opens to the PI Projections Page which displays the investigator's spending and indirect cost recovery history as contact PI and provides a potential to spend estimate of future spending and indirects as contact PI based on the backlog and lapsing schedule of active grants. Pending proposals are then displayed, and the likelihood of funding can be noted by responding “Yes” if it certain the pending proposal will be funded, “No” if it is certain the pending proposal will not be funded and “Don’t Know” if it is too soon to know if a pending proposal is certain to be funded or certain not to be funded.  Active grants are then displayed, and the likelihood of a competing renewal can be noted in the same manner. And advice regarding the PI's approximate level of proposal effort as contact pI and target hit rates going forward is solicited. The individual PI’s historical average annual proposal counts and dollar values and 5-year and 3-year hit rates are displayed for that purpose.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"These three simple inputs generate a profile of the PI's potential future levels of spending and indirect cost recovery as contact PI. If the data are available, active grants are listed on which the investigator serves as non-contact PI, key person or co-PI. An optional percent effort feature on pending grants and active grants generates a rough estimate of future compensation coverage.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The PI Proposal History Page provides details of submissions and funding over the prior 5 years for reference purposes if there is a data element that clearly connects individual success records with the record of the specific proposals from which they were derived.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"If the data are available, the Comparative Metrics Page shows how the PI compares with others of the same rank in terms of dollar density (lab research only), compensation, reserve levels, compensation coverage, proposal volumes, conversion ratios and hit rates.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\"],[3,\\\" /PI pages \\\"],[2,\\\"\\\\n\\\\n\\\\n\\\"],[10,\\\"h1\\\"],[12],[2,\\\"In Summary\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Projections Page gives you the immediate ability to generate near and long-term projections at the institutional, Sector and Department levels and to test the sensitivity of those projections to a range of alternative assumptions regarding core proposals and conversion ratios.  The PI Pages provide a wealth of historical information about the PI’s research activity only give you the ability to project beyond the near-term if PI Page plans are completed thoughtfully and updated periodically. Huron Analytics has been developed to provide a convenient, intuitive and engaging medium for faculty participation in the planning process presumably in sessions facilitated by the Department Chair or administrator.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/help/instructions.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/help/introduction\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"QPhdpVQN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"h1\\\"],[12],[2,\\\"Huron Analytics – An Overview\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics is powered by patented econometric systems and methods for research portfolio forecasting and performance assessment (U.S. Patent 8,271,372) that have been developed, tested, and successfully deployed as \\\"],[10,\\\"strong\\\"],[12],[10,\\\"i\\\"],[12],[2,\\\"The Shulman Solution\\\"],[13],[13],[2,\\\" at six major research universities. Geisel School of Medicine at Dartmouth has been an active Shulman Solution client since 2007, New York University Medical Center since 2009, University of Maryland at Baltimore since 2010, University of Kansas at Lawrence since 2011, Yale Medical School since 2015, Yale's Schools Departments and Programs other than Medicine since 2016, and Brown University's Division of Biology and Medicine since 2017.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Shulman Solution application has been used primarily in the context of ongoing consulting relationships with these clients. Huron Analytics has been designed and developed to make the powerful insights and analytical capabilities of The Shulman Solution available to a much wider audience as a self-administered, state-of-the-art, web-deployed SaaS application. Huron Analytics takes the mystery out of near and long-term grant forecasting and provides unique insights for research portfolio performance assessment at every level of institutional responsibility.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  Huron Analytics provides three distinct views of research portfolio activity:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Econometric projections at the institutional, sector and department levels that are based on the behavior of each population as a whole.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Near-term institutional and department projections based on the potential to spend and earn indirects on individual grants that are already in the pipeline\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Individual PI projections based on the potential to spend and earn indirects on active grants and the spending and indirect cost recovery that would be derived from pending grants, renewals and future submissions if they were to be funded\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The econometric and potential to spend views employ totally different methodologies.  They provide compatible but not identical projections of spending and indirect cost recovery at the institutional, sector, and department levels.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"For users who prefer to find their way around an application of this sort by trial and error, there are pop up help notes throughout.  But the pages that follow provide a basic introduction to the theory, systems and methods that power Huron Analytics.  You are encouraged to spend a bit of time here to gain a better understanding of what makes Huron Analytics work.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/help/introduction.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/help/primer\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qmxCi8Rq\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"h1\\\"],[12],[2,\\\"A Primer on Econometric Research Enterprise Forecasting and Performance Assessment\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Conventional wisdom has it that the past performance of a sponsored research portfolio is a reliable predictor of future outcomes.  If grant spending and indirect cost recovery have been growing at the rate of 5% per year, it is reasonable to assume for planning purposes that grant spending and indirect cost recovery will continue to grow by 5% or, perhaps, by some modestly smaller amount, just to be safe.  Conventional wisdom also assumes that if year-to-date awards are equal to or ahead of the prior year-to-date awards, then things are on track.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"These assumptions prove out often enough for people to accept them on face value - until grant spending and indirect cost recovery significantly and unexpectedly decline, an unwelcome turn of events many, perhaps most, institutions have experienced at one time or another.  The problem with this conventional wisdom is simple:  It is little more than speculation.  Awards are simply the annual authorization to spend on a grant. There is nothing to suggest that growth in research volumes will continue, even if annual awards are on par with the previous year.  If a significant number of grants are ending and the inflow of new grants in not sufficient to replace them, comparative spending and award levels will both hold up until the bottom falls out the next year.  In essence, they will tell you after the fact that you have a problem.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The systems and methods that power Huron Analytics were developed in 2007. Relying on simple extrapolation, Dartmouth expected research volumes to grow by a \\\"],[10,\\\"strong\\\"],[12],[2,\\\"modest\\\"],[13],[2,\\\" 5% between 2006 and 2008.  That growth would have generated between $6 million and $8 million in new indirect cost recovery which was earmarked to cover the debt service on the new facility that would be needed to house the anticipated growth in research activity.  In early 2007, the first iteration of the systems and methods that powered The Shulman Solution - the Excel-based predecessor of Huron Analytics - predicted that total sponsored research revenues would not grow from $132 million to $148 million as assumed but would fall to $120 million in just two years. Fortunately, Dartmouth deferred the new construction based on this business intelligence because that is precisely what happened. \\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Since its introduction at Dartmouth, five more research universities either experienced unexpected declines in research volumes or were sufficiently uncertain or concerned about future research volumes and began to use The Shulman Solution for forecasting purposes.  The Shulman Solution was a business intelligence Application that modeled research portfolios using novel econometric systems and methods which were eventually patented in 2012. New York University Medical Center became a client in 2009 and remains active to this day.  The University of Maryland at Baltimore has been a client continuously since 2010.  The University of Kansas at Lawrence came on board in 2011. Yale Medical School went live in 2015 and Yale's Divisions and Departments other than Medicine followed in 2016.  Brown University’s Division of Biology and Medicine came on board in 2017.  All accounts remain active to this day. Some self-administer The Shulman Solution Application with consulting support. Some engage strictly as consulting clients.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Shulman Solution clients have provided a fertile proving ground for continued development and testing of the econometric systems and methods that power that Application. But that Solution is not particularly scalable.  Huron Analytics has been developed to introduce these econometric systems and methods to a much wider audience by means of a self-administered, state-of-the-art web-based Application. Huron Analytics has been carefully designed to be highly intuitive and the business insights it generates are indispensable for institutions that aspire to manage their research portfolios in the classic sense of the term from a financial and strategic planning and performance assessment perspective.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Some understanding of the econometric systems and methods that power the Huron Analytics Application will help users to appreciate its elegant simplicity and logic. All of these systems and methods are Copyright and Patent Protected under U.S. Patent 8,271,372 which was issued on September 18, 2012.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n  An econometric model looks at the behavior of a population rather attempting to drill down to and analyze the behavior of each of its members. The population is a large collection of essentially independent and random variables.  But, in total, it behaves in measurable and predictable ways. Specifically, in the case of research portfolios:\\\\n  \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Proposals generate \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Successes\\\"],[13],[2,\\\" which are defined simply as the lifetime value of those proposals that are funded.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"The ratio of successes in dollar terms to the dollar value of the proposals that generated those successes is defined as the \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Conversion Ratio\\\"],[13],[2,\\\".\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"li\\\"],[12],[2,\\\"Successes that begin this year in the aggregate are derived to a certain extent from proposals that were submitted last year in the aggregate and to the remaining extent from proposals that were submitted this year. The percentage of this year's successes derived from each of these years is referred to as the \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Year 1: Year 2\\\"],[13],[2,\\\" derivative ratio.\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"An illustration of these relationships:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/econometric-relationships.png\\\"],[14,\\\"alt\\\",\\\"Relationships\\\"],[12],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Note that directs and indirects are treated separately and total volumes are broken down by major sponsor categories. This expresses the econometric relationships for the first line – i.e. NIH Directs:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/2017-nih-directs.png\\\"],[14,\\\"alt\\\",\\\"2017 NIH Directs\\\"],[12],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Numerically:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/2017-nih-directs-numerical.png\\\"],[14,\\\"alt\\\",\\\"2017 NIH Directs Numerically\\\"],[12],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The Year 1: Year 2 derivative ratios used here are empirically based on the proposed start year of proposals submitted each year.  Proposals totals are expressed here in millions:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-9\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/y-1-y-2-derivative.png\\\"],[14,\\\"alt\\\",\\\"Y1:Y2 Derivative\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The summary ratios to the right are the 3-year average.  Note the consistency from year to year in each major sponsor category.  These Year 1: Year 2 derivative ratios are typical of those showing for universities on a 7-1 to 6-30 fiscal cycle.  The ratios are different for other fiscal cycles.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Spending and indirect cost recovery are separately projected in each major sponsor category by amortizing annual pools of successes over a period of time based on the weighted average duration of the successes in the annual pool.  In this illustration, NIH direct successes are amortized over 6 years with the first and last years being half years to simulate start up and no cost extensions:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/nih-directs-amoritization.png\\\"],[14,\\\"alt\\\",\\\"NIH Directs Amortization\\\"],[12],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"When 6 years are layered atop one another – 2018 in the first instance in this illustration – the cross-section is the projection of spending and indirect cost recovery.  This exhibit illustrates an important principle:  Note that annual NIH successes are projected to come in at $171.1 million in 2018 and stay at that level in 2019 and beyond.  But direct spending does not level out at that level until 2023, a full 6 years later.  We’ll return to this observation in a moment to demonstrate why spending outcomes and awards are not reliable indicators of future grant activity.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The amortization schedules differ for each major sponsor category and these, too, are empirically-based.  Each year’s successes are broken down by duration and the weighted average duration of each pool is calculated in this manner:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/core-nih-success-totals-by-duration.png\\\"],[14,\\\"alt\\\",\\\"Core NIH Success Totals by Duration\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"The 4.35 year average is rounded up to 5 years for amortization purposes in this instance to allow for no cost extensions.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Now let’s look at an entirely plausible scenario and assume NIH conversion ratios drop by 5% in FY 2018 from 2017’s 22.8% to 17.8% and stay at that level in 2019 and beyond.  This would be the success outcome:\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/help/primer/nih-conversion-dropped-by-5.png\\\"],[14,\\\"alt\\\",\\\"NIH Direct Successes Drop by 5%\\\"],[12],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Several key observations:  Success totals and conversion ratios indicate weaker performance in 2018.  But annual awards and spending outcomes are flip sides of the same coin.  They track together and remain elevated until 2022.  Leading indicators anticipate the possibility of stagnant volumes and eventual declines as early as 2018.  Awards and spending outcomes reveal the problem 4 years later.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"This, in a nutshell, provides a highly simplified illustration of the patented econometric systems and methods that power Huron Analytics.  There’s a lot more going on in the background to be sure.  For example, very large grants are separated from the “core” for conversion ratio and amortization purposes.  Leading indicator projections can be updated over the course of the year.  And any number of scenarios can be modeled to test the sensitivity of institutional outcomes to different leading indicator assumptions.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics offers views relying exclusively on these econometric systems and methods at both the institutional level and at the department level.  But it also modifies these econometric systems and methods and combines them with actuarial analytics at the individual PI level to simulate each PI’s potential to spend and earn indirects over time based on feedback regarding pending grants, potential renewals and future submissions.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"All told, Huron Analytics provides critical business intelligence in a form that is both intuitive and indispensable for institutions that wish to truly manage their research portfolios from a financial and strategic planning perspective.  And to the extent that leading indicator projections define institutional objectives, those become benchmarks against which performance can be assessed before the fact, not long after.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/help/primer.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/insights\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"A28ajLOK\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pi-header navbar-top-margin navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Insights\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"header-controls\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"printAction\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-navigation\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.insights.core-detail\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Core Detail\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.insights.comparative-proposals-successes\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Comparative Successes & Proposals\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app insights-padding\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[1,[30,[36,4],[[30,[36,3],null,null]],null]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"isNotDepartment\\\",\\\"if\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/insights.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/insights/comparative-proposals-successes\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"N0xKUu3b\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"print-this\\\",[],[[\\\"@printSelector\\\"],[\\\".printArea\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"top-page-controls condensed-controls\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item float-left\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@onChange\\\"],[\\\"Lookback\\\",[34,0],[34,1],[30,[36,2],[[32,0],\\\"lookbackChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@triggerClass\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Department\\\",\\\"department-variable-width\\\",[34,3],[30,[36,2],[[32,0],\\\"selectSector\\\"],null],[34,4]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Sponsor Type\\\",[34,5],[30,[36,2],[[32,0],\\\"selectSponsor\\\"],null],[34,6]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Grant Type\\\",[34,7],[30,[36,2],[[32,0],\\\"selectGrantType\\\"],null],[34,8]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@disabled\\\",\\\"@hoverText\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Faculty Type\\\",[34,9],[34,10],[34,11],[30,[36,2],[[32,0],\\\"selectFaculty\\\"],null],[34,12]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Category\\\",[34,13],[34,14],[30,[36,2],[[32,0],\\\"selectCategory\\\"],null],[34,15]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,16],[[35,14]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Category data has not been provided.\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Hire Year\\\",[34,17],[30,[36,2],[[32,0],\\\"selectHireYear\\\"],null],[34,18]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Supplement\\\",[34,19],[30,[36,2],[[32,0],\\\"selectSupplement\\\"],null],[34,20]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-charts\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,21],[34,22],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,23]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,24],[34,25],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,26]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,27],[34,28],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,29]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--wide\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-210\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,30],[34,31],256,true]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,32],[34,33],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,34]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,35],[34,36],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,37]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-182\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,38],[34,39],256,true]],null],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n                \\\"],[1,[34,40]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--wide\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-210\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,41],[34,42],256,true]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row chart-row full-width-charts\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-210\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,43],[34,44],200,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-210\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,45],[34,46],256,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-charts-print printArea\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,21],[34,22],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,23]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,24],[34,25],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,26]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,27],[34,28],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,29]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,32],[34,33],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,34]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,35],[34,36],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,37]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-150\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,38],[34,39],200,true]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"variance\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"This year-to-date:\\\"],[13],[2,\\\"\\\\n            \\\"],[1,[34,40]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--half\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-200\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,30],[34,31],200,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--half\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-200\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,41],[34,42],200,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--full\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-200\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,43],[34,44],200,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart-grid\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"insights-chart--full\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-200\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\",\\\"@animate\\\"],[\\\"line\\\",[34,45],[34,46],200,true]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedLookback\\\",\\\"lookbackOptions\\\",\\\"action\\\",\\\"selectedSector\\\",\\\"sectorOptions\\\",\\\"selectedSponsor\\\",\\\"sponsorOptions\\\",\\\"selectedGrantType\\\",\\\"grantTypeOptions\\\",\\\"selectedFaculty\\\",\\\"facultyOptionsDisabled\\\",\\\"facultyTypeHoverText\\\",\\\"facultyOptions\\\",\\\"selectedCategory\\\",\\\"categoryOptionsDisabled\\\",\\\"categoryOptions\\\",\\\"if\\\",\\\"selectedHireYear\\\",\\\"hireYearOptions\\\",\\\"selectedSupplement\\\",\\\"supplementOptions\\\",\\\"piProposalYTDChartData\\\",\\\"piProposalYTDChartOptions\\\",\\\"activePiProposalCountChangeString\\\",\\\"coreProposalCountChartData\\\",\\\"coreProposalYTDChartOptions\\\",\\\"coreProposalsCountChangeString\\\",\\\"coreProposalMMChartData\\\",\\\"coreProposalMMYTDChartOptions\\\",\\\"coreProposalsDollarChangeString\\\",\\\"proposalChartData\\\",\\\"proposalChartOptions\\\",\\\"piSuccessYTDChartData\\\",\\\"piSuccessYTDChartOptions\\\",\\\"activePiSuccessCountChangeString\\\",\\\"coreSuccessCountChartData\\\",\\\"coreSuccessYTDChartOptions\\\",\\\"coreSuccessesCountChangeString\\\",\\\"coreSuccessesYTDChartData\\\",\\\"coreSuccessesYTDChartOptions\\\",\\\"coreSuccessesDollarChangeString\\\",\\\"successChartData\\\",\\\"successChartOptions\\\",\\\"hitRatesChartData\\\",\\\"hitRatesChartOptions\\\",\\\"potentialSuccessChartData\\\",\\\"potentialSuccessOptions\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/insights/comparative-proposals-successes.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/insights/core-detail\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"V0H79/Ss\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Core Detail (mm)\\\",[34,0]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Department\\\",[34,1],[34,2],\\\"department-variable-width\\\",\\\"department-variable-width\\\",[30,[36,3],[[32,0],\\\"selectSector\\\"],null],[34,4]]],null],[2,\\\"\\\\n\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[8,\\\"table-core-detail\\\",[],[[\\\"@isLoading\\\",\\\"@model\\\"],[[34,5],[34,6]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"hoverText\\\",\\\"disableSectorSelect\\\",\\\"selectedFilterOption\\\",\\\"action\\\",\\\"coreDetailFilterOptions\\\",\\\"isLoading\\\",\\\"tableData\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/insights/core-detail.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/insights/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"a8VzNsQV\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/insights/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/investigators\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"dYRmfWyC\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container top-controls text-right navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,1],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,8],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Export to Excel\\\",[30,[36,1],[[32,0],\\\"exportData\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[16,\\\"disabled\\\",[30,[36,7],[[35,6]],null]],[4,[38,1],[[32,0],\\\"exportPlans\\\"],null],[12],[2,\\\"Print Plans \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"help-icon\\\",[],[[\\\"@side\\\",\\\"@hoverText\\\"],[\\\"left\\\",\\\"The department filter must be set in order to print plans.\\\"]],null],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Potential to Spend and Earn Indirects - Active Contact PIs\\\",\\\"This page provides 3 years of historical actuals for each PI sorted by descending totals from the most recently completed fiscal year plus 3 years of Potential to Spend projections as of the dates noted above. Check with your Huron Analytics Administrator to see if successes that start after the month-end date are included in the query and, therefore, in the Potential to Spend projections.\\\\nSet the percentage decline that you would like to highlight in the Potential to Spend projections.  The highlighted figures will represent Potential to Spend projections that are below the prior year by the specified percentage amount.\\\\nScroll to see which investigators with considerable research volumes might be at risk of significant declines or even lapses in funding in the near term.\\\\nSearch by name to find particular investigators and go directly to their PI Page to review their history and funding expectations if those have been entered.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"top-page-controls condensed-controls investigators\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@fieldClass\\\",\\\"@class\\\"],[[34,10],\\\"Search:\\\",\\\"Search for investigators by name...\\\",\\\"padding-0\\\",\\\"search no-margin\\\"]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,12],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Department\\\",\\\"department-variable-width\\\",\\\"department-variable-width\\\",[34,4],[30,[36,1],[[32,0],\\\"sectorChanged\\\"],null],[34,5]]],null],[2,\\\"\\\\n\\\"],[6,[37,8],[[30,[36,7],[[35,6]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Select a department to print plans.\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@hoverText\\\",\\\"@options\\\"],[\\\"Rank\\\",[34,13],[30,[36,1],[[32,0],\\\"classifyChanged\\\"],null],[34,14],[30,[36,8],[[35,14],\\\"Classify data has not been provided.\\\"],null],[34,15]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@hoverText\\\",\\\"@options\\\"],[\\\"Hire Year\\\",[34,16],[30,[36,1],[[32,0],\\\"hireYearFilterChanged\\\"],null],[34,17],[30,[36,8],[[35,17],\\\"Hire year data has not been provided.\\\"],null],[34,18]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,12],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item hire-year-field\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@options\\\"],[[34,0],[30,[36,1],[[32,0],\\\"selectedHireYearChanged\\\"],null],[34,2],[34,3]]],null],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Tier\\\",[34,19],[30,[36,1],[[32,0],\\\"quartileChanged\\\"],null],[34,20]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@disabled\\\",\\\"@class\\\",\\\"@label\\\",\\\"@value\\\"],[true,\\\"sample\\\",\\\"Year-over-year gain or decline\\\",[34,21]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Include Future Potential from Completed PI Plans\\\",[34,22],[34,23],[30,[36,1],[[32,0],\\\"includePlanChanged\\\"],null]]],null],[2,\\\"\\\\n\\\"],[6,[37,8],[[30,[36,24],[[35,23],\\\"Yes\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"span\\\"],[14,0,\\\"small-text\\\"],[12],[2,\\\"Highlighted PIs have completed their PI Plans\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item align-top\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Completed PI Plans Only\\\",[34,22],[34,25],[30,[36,1],[[32,0],\\\"completedPlanChanged\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[8,\\\"table-investigators\\\",[],[[\\\"@model\\\",\\\"@extra\\\",\\\"@displayType\\\",\\\"@isLoading\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\"],[[34,26],[34,27],\\\"Investigators\\\",[34,28],[30,[36,1],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,1],[[32,0],\\\"handlePagination\\\"],null]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedHireYear\\\",\\\"action\\\",\\\"hireYearFieldDisabled\\\",\\\"hireYearListOptions\\\",\\\"selectedSector\\\",\\\"sectorOptions\\\",\\\"selectedSectorDept\\\",\\\"not\\\",\\\"if\\\",\\\"canExportData\\\",\\\"search\\\",\\\"userIsDeptRole\\\",\\\"unless\\\",\\\"selectedClassify\\\",\\\"classifyOptionsDisabled\\\",\\\"classifyOptions\\\",\\\"selectedHireYearFilter\\\",\\\"hireYearOptionsDisabled\\\",\\\"hireYearOptions\\\",\\\"selectedQuartile\\\",\\\"quartileOptions\\\",\\\"nearTermDecline\\\",\\\"optionsIncludePlan\\\",\\\"selectedIncludePlan\\\",\\\"eq\\\",\\\"selectedCompletedPlan\\\",\\\"model\\\",\\\"tableExtra\\\",\\\"isLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/investigators.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/mega-grants\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"pzqaYhUL\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"pi-header navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Mega Grants\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"header-controls\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-navigation\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.mega-grants.active\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Active Mega Grants\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.mega-grants.summary\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Summary\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[8,\\\"link-to\\\",[[24,0,\\\"nav-item\\\"]],[[\\\"@route\\\"],[\\\"app.mega-grants.pending\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Pending Mega Grants\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[1,[30,[36,2],[[30,[36,1],null,null]],null]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/mega-grants.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/mega-grants/active\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"VbLeBk2C\",\n    \"block\": \"{\\\"symbols\\\":[\\\"error\\\"],\\\"statements\\\":[[10,\\\"p\\\"],[12],[2,\\\"Count: \\\"],[1,[35,5,[\\\"pagination\\\",\\\"count\\\"]]],[2,\\\", Total: \\\"],[1,[30,[36,6],[[35,5,[\\\"total\\\"]]],null]],[13],[2,\\\"\\\\n\\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@hoverIcons\\\",\\\"@label\\\",\\\"@hoverText\\\"],[[34,7],\\\"Mega Grants\\\",\\\"This page lists all grants with a lifetime value of directs and indirects combined that exceeds $5 million which have end dates in the current fiscal year or later.\\\\nUpon opening, the default setting for each mega grant is that it will renew or be replaced.  By definition, the default setting is that there are no overrides on projected spending and indirect cost recovery since overrides are only permissible on grants that are ending.  For the future, it is advisable to leave the default settings in place since these establish a basis for estimating future levels of mega grant funding as explained in the Mega Grants Summary section.  However, if there are particularly large grants that will not renew, that can be so noted.   For the current year, however, mega grants that will end can be so noted.  And if you know the remaining balances for directs and indirects, those can be entered as an override.  And if you know that the grant will not spend out completely, you can override with a lesser amount than the remaining balance to approximate that outcome.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"table-active-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"table-active-mega\\\",[],[[\\\"@model\\\",\\\"@disableDropdowns\\\",\\\"@isLoading\\\",\\\"@onGrantChange\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\"],[[34,8],[34,9],[34,10],[30,[36,4],[[32,0],\\\"grantProjectionChanged\\\"],null],[30,[36,4],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,4],[[32,0],\\\"handlePagination\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"],[6,[37,3],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[\\\"Active Mega Grants\\\",[30,[36,4],[[32,0],\\\"toggleActiveHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"If you have reason to believe that mega grant funding secured in the future might either exceed or fall short of the Hedge assumption that all active mega grants will renew or be replaced, you can anticipate additional mega grants or fewer mega grants in this section.  If, for example, the hedge challenge in an upcoming year is well below the levels of mega grant funding secured in recent years, you might anticipate that one or more additional mega grants will be secured.  If, on the other hand, the hedge challenge in an upcoming year is well in excess of the levels of mega grant secured in recent years, might anticipate that mega grant funding will fall short of the hedge challenge in that year by entering one or more negative mega grants in that year.\\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"save-action-bar \\\",[30,[36,3],[[30,[36,14],[[35,13],[35,12]],null],\\\"show\\\"],null],\\\" \\\",[30,[36,3],[[35,12],\\\"saved\\\"],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,15]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"success-message\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Mega grants saved successfully!\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,3],[[35,0]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text error\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Error!\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[35,0]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[1,[32,1]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text\\\"],[12],[2,\\\"\\\\n        You have unsaved changes. Make sure to save your changes before leaving this page.\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Save\\\",[30,[36,4],[[32,0],\\\"saveGrants\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-text\\\"],[4,[38,4],[[32,0],\\\"rollbackGrantChanges\\\"],null],[12],[2,\\\"Clear Changes\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"-track-array\\\",\\\"each\\\",\\\"if\\\",\\\"action\\\",\\\"meta\\\",\\\"format-money\\\",\\\"hoverIcons\\\",\\\"tableModel\\\",\\\"disableDropdowns\\\",\\\"isLoading\\\",\\\"isShowingActiveHelp\\\",\\\"savedSuccessfully\\\",\\\"showSaveAction\\\",\\\"or\\\",\\\"grantsSavedSuccess\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/mega-grants/active.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/mega-grants/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"myHLxCd/\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/mega-grants/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/mega-grants/pending\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Kc2NlUhS\",\n    \"block\": \"{\\\"symbols\\\":[\\\"error\\\"],\\\"statements\\\":[[10,\\\"p\\\"],[12],[2,\\\"Check \\\"],[10,\\\"a\\\"],[14,6,\\\"https://public.era.nih.gov/commons/public/login.do?TYPE=33554433&REALMOID=06-1edb031f-46c7-44b3-b803-60b537de74d2&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=-SM-938PYmoLVb4VrDeXo04LZUDVDvc%2b3899ByInEAjuSUvWNIGfB2zRpWiCivYGCogG&TARGET=-SM-HTTPS%3a%2f%2fpublic%2eera%2enih%2egov%2fcommons%2fcommonsInit%2edo\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[2,\\\"eRA Commons\\\"],[13],[2,\\\" for the status of pending mega grants.\\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,[34,5]]],null],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10 col-md-9\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[[34,6],\\\"This Page provides a summary of pending mega grants by proposed start date with the ability to drill down and see the detail behind each proposed start date with direct access to PI Pages to allow the user to see if there is any indication of the likelihood of funding.  A link to eRA Commons is provided at the top of the Page.  Users with access to Commons will be able to see if pending mega grant proposals with upcoming start dates are noted as “Pending” which means they will be awarded.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"table-pending-wrapper\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"table-pending-mega\\\",[],[[\\\"@model\\\",\\\"@onGrantChange\\\"],[[34,7],[30,[36,4],[[32,0],\\\"grantProjectionChanged\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10 col-md-9\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[[34,8]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"table-pending-wrapper\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"table-pending-mega\\\",[],[[\\\"@model\\\",\\\"@onGrantChange\\\"],[[34,9],[30,[36,4],[[32,0],\\\"grantProjectionChanged\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"save-action-bar \\\",[30,[36,3],[[30,[36,12],[[35,11],[35,10]],null],\\\"show\\\"],null],\\\" \\\",[30,[36,3],[[35,10],\\\"saved\\\"],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,13]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"success-message\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Mega grants saved successfully!\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,3],[[35,0]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text error\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Error!\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[35,0]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[1,[32,1]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text\\\"],[12],[2,\\\"\\\\n        You have unsaved changes. Make sure to save your changes before leaving this page.\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Save\\\",[30,[36,4],[[32,0],\\\"saveGrants\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-text\\\"],[4,[38,4],[[32,0],\\\"rollbackGrantChanges\\\"],null],[12],[2,\\\"Clear Changes\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"-track-array\\\",\\\"each\\\",\\\"if\\\",\\\"action\\\",\\\"eraHelpText\\\",\\\"currentYearLabel\\\",\\\"currentYearTableModel\\\",\\\"futureYearLabel\\\",\\\"futureYearTableModel\\\",\\\"savedSuccessfully\\\",\\\"showSaveAction\\\",\\\"or\\\",\\\"grantsSavedSuccess\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/mega-grants/pending.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/mega-grants/summary\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"GeSByEDz\",\n    \"block\": \"{\\\"symbols\\\":[\\\"row\\\",\\\"row\\\",\\\"row\\\",\\\"row\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@helpModalAction\\\",\\\"@viewOptions\\\",\\\"@switchAction\\\",\\\"@selectedView\\\"],[[34,1],[30,[36,0],[[32,0],\\\"toggleStatusHelp\\\"],null],[34,10],[30,[36,0],[[32,0],\\\"switchSelectedMegaGrantHedgeView\\\"],null],[34,11]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"static-table mega-grant-status-table\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"label-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-status\\\"],[12],[2,\\\"Status\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-adjustment\\\"],[12],[2,\\\"Percentage\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-directs\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-indirects\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-count\\\"],[12],[2,\\\"Count\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row top-row border-bottom\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Ending Mega Grants that are assumed to renew, be replaced, or go into no cost extension \\\"],[13],[10,\\\"i\\\"],[12],[2,\\\"(Hedge Projection)\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@classNames\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[[34,12],\\\"no-margin\\\",[34,9],[30,[36,0],[[32,0],\\\"selectedDiscountChanged\\\"],null],[34,13]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,14]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,15]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[34,16]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Mega Grants Secured this Year to Date\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,17]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,18]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[34,19]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Pending Mega Grants with Start Dates in this Year\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,20]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,21]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[34,22]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Accrue Additional Pending Mega Grant Proposals with Start Dates in this Fiscal Year?\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,24],[[35,23]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@classNames\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[[34,8],\\\"no-margin\\\",[34,9],[30,[36,0],[[32,0],\\\"accruePendingMegaGrantChanged\\\"],null],[34,7]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                  \\\"],[3,\\\" Not accruing mega grants for next year \\\"],[2,\\\"\\\\n                  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@classNames\\\",\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"No\\\",\\\"no-margin\\\",true,[30,[36,0],[[32,0],\\\"accruePendingMegaGrantChanged\\\"],null],[34,7]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,25]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,26]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[34,27]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                5 Year Hit Rate\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[35,28,[\\\"megaGrantsFiveYearHitRate\\\"]]],[2,\\\"%\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[35,28,[\\\"megaGrantsFiveYearHitRate\\\"]]],[2,\\\"%\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row border-bottom\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Potential Additional Mega Funding Using 5 Yr. Hit Rate\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,29]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,30]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Additional Guidance for Possible Mega Grant Adjustments based on the Past 5 Years over the Remaining Months of the Year:\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                High\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"high\\\",\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"high\\\",\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Average\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"avg\\\",\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"avg\\\",\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-status\\\"],[12],[2,\\\"\\\\n                Low\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"low\\\",\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-indirects\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,31,[\\\"low\\\",\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n        \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Future Gains or (Declines) in Mega Grant Successes (mm)\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"static-table future-mega-grants-backlog\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"label-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-fy\\\"],[12],[2,\\\"FY\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-adjustment\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[14,0,\\\"label-adjustment\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,32]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"div\\\"],[14,0,\\\"status-row top-row\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-fy\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"strong\\\"],[12],[1,[32,4,[\\\"year\\\"]]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@nomargin\\\",\\\"@decimal\\\",\\\"@options\\\",\\\"@value\\\"],[true,true,[30,[36,6],null,[[\\\"oncomplete\\\",\\\"digits\\\"],[[30,[36,0],[[32,0],\\\"saveTeam\\\"],null],1]]],[32,4,[\\\"directsAdjustment\\\"]]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@nomargin\\\",\\\"@decimal\\\",\\\"@options\\\",\\\"@value\\\"],[true,true,[30,[36,6],null,[[\\\"oncomplete\\\",\\\"digits\\\"],[[30,[36,0],[[32,0],\\\"saveTeam\\\"],null],1]]],[32,4,[\\\"indirectsAdjustment\\\"]]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[4]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n        \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@isLoading\\\"],[\\\"Projected Mega Grant Spending and Indirect Cost Recovery\\\",[34,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[8,\\\"table-mega-grants-summary-spending\\\",[],[[\\\"@model\\\"],[[34,33]]],null],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-7\\\"],[12],[2,\\\"\\\\n\\\\n        \\\"],[3,\\\" Hedge Exhibit \\\"],[2,\\\"\\\\n        \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Assumed to Renew or Be Replaced (The “Hedge”)\\\",\\\"The section notes the count and dollar values of active mega grants that are assumed to renew or be replaced this year and beyond.  These data can change from time to time when active mega grants receive supplementary funding or go into no cost extension.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"static-table mega-grant-hedge-table\\\"],[12],[2,\\\"\\\\n\\\\n\\\"],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,34]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"div\\\"],[14,0,\\\"hedge-row\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-year\\\"],[12],[2,\\\"\\\\n                  \\\"],[1,[32,3,[\\\"year\\\"]]],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Count:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"p\\\"],[12],[1,[32,3,[\\\"count\\\"]]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-total\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total:\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"p\\\"],[12],[1,[32,3,[\\\"total\\\"]]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"column-chart\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"split-bar-chart\\\",[],[[\\\"@leftLabel\\\",\\\"@leftData\\\",\\\"@rightLabel\\\",\\\"@rightData\\\",\\\"@percentFill\\\"],[\\\"Directs\\\",[32,3,[\\\"formattedDirects\\\"]],\\\"Indirects\\\",[32,3,[\\\"formattedIndirects\\\"]],[32,3,[\\\"percentFill\\\"]]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[3]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n        \\\"],[3,\\\" Mega Grant History Exhibit \\\"],[2,\\\"\\\\n        \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@viewOptions\\\",\\\"@switchAction\\\",\\\"@selectedView\\\",\\\"@hoverText\\\"],[\\\"Mega Grant History\\\",[34,35],[30,[36,0],[[32,0],\\\"switchSelectedMegaGrantHistoryView\\\"],null],[34,36],\\\"This section provides the history of mega grants secured over the prior five years.  The selectors on the top left allow the user to view either total dollar values with counts or simply counts with a calculation of hit rates.  The selectors on the top left allow the user to view activity by either the year in which the proposal was submitted or the year of the proposed start date.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"static-table mega-grant-hedge-table\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls border-bottom\\\"],[12],[2,\\\"\\\\n              \\\"],[11,\\\"span\\\"],[16,0,[30,[36,24],[[30,[36,38],[[35,37],\\\"totals\\\"],null],\\\"active\\\"],null]],[4,[38,0],[[32,0],\\\"setSelectedMegaGrantHistoryType\\\",\\\"totals\\\"],null],[12],[2,\\\"\\\\n                Totals\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[11,\\\"span\\\"],[16,0,[30,[36,24],[[30,[36,38],[[35,37],\\\"hitRates\\\"],null],\\\"active\\\"],null]],[4,[38,0],[[32,0],\\\"setSelectedMegaGrantHistoryType\\\",\\\"hitRates\\\"],null],[12],[2,\\\"\\\\n                Hit Rates\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,24],[[30,[36,38],[[35,37],\\\"totals\\\"],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,2]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"div\\\"],[14,0,\\\"hedge-row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-year\\\"],[12],[1,[32,2,[\\\"year\\\"]]],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-count\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Count:\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[12],[1,[32,2,[\\\"funded\\\"]]],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-total\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total:\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,5],[[32,2,[\\\"total\\\"]]],null]],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-chart\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"split-bar-chart\\\",[],[[\\\"@leftLabel\\\",\\\"@leftData\\\",\\\"@rightLabel\\\",\\\"@rightData\\\",\\\"@percentFill\\\"],[\\\"Directs\\\",[32,2,[\\\"formattedDirects\\\"]],\\\"Indirects\\\",[32,2,[\\\"formattedIndirects\\\"]],[32,2,[\\\"totalsPercentFill\\\"]]]],null],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[2]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,4],[[30,[36,3],[[30,[36,3],[[35,2]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"div\\\"],[14,0,\\\"hedge-row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-year\\\"],[12],[1,[32,1,[\\\"year\\\"]]],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-submitted\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Submitted:\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[12],[1,[32,1,[\\\"submitted\\\"]]],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-rate\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Hit Rate:\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[12],[1,[32,1,[\\\"hitRate\\\"]]],[2,\\\"%\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"column-chart\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"split-bar-chart\\\",[],[[\\\"@leftLabel\\\",\\\"@leftData\\\",\\\"@rightLabel\\\",\\\"@rightData\\\",\\\"@percentFill\\\"],[\\\"Funded\\\",[32,1,[\\\"funded\\\"]],\\\"Not Funded\\\",[32,1,[\\\"notFunded\\\"]],[32,1,[\\\"ratesPercentFill\\\"]]]],null],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,24],[[35,39]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[30,[36,0],[[32,0],\\\"toggleStatusHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      Future mega grant funding is projected simply by assuming all active mega grants renew or are replaced. This is\\\\n      referred to as the “Hedge Challenge” and it would keep spending and indirect cost recovery projections level over\\\\n      time. Now, of course, we know many, perhaps most, active mega grants will not renew. The Hedge is simply a way to\\\\n      estimate future levels of mega grant funding, not to predict which specific grants will renew.\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      As the current year progresses, the “Yes” default setting on specific mega grants with end dates this year can be\\\\n      changed to “No”. Projections of mega grant spending and indirect cost recovery will go down and the Hedge\\\\n      Challenge will go down. As the current year progresses and new mega grant proposals are submitted, the pool of\\\\n      pending mega grant proposals with start dates in the current year will increase and the ratio of pending mega\\\\n      grants to active mega grants that are assumed to renew or be replaced changes accordingly. That ratio can be\\\\n      compared with historical hit rates on mega grant proposals and the potential for a gain or decline in the backlog\\\\n      of mega grant funding is calculated. You can either apply the projected gain or decline to projected mega grant\\\\n      spending and indirect cost recovery or decline to do so. At the beginning of a fiscal year, it is customary to\\\\n      wait and see. As the year progresses and the potential gain or decline becomes clearer, the choice to apply the\\\\n      adjustment is typically based on its materiality.\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,24],[[35,40]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[\\\"Future Gains or Declines in Mega Grant Backlog\\\",[30,[36,0],[[32,0],\\\"toggleBacklogHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      If you have reason to believe that mega grant funding secured in the future might either exceed or fall short of\\\\n      the Hedge assumption that all active mega grants will renew or be replaced, you can anticipate additional mega\\\\n      grants or fewer mega grants in this section. If, for example, the hedge challenge in an upcoming year is well\\\\n      below the levels of mega grant funding secured in recent years, you might anticipate that one or more additional\\\\n      mega grants will be secured. If, on the other hand, the hedge challenge in an upcoming year is well in excess of\\\\n      the levels of mega grant secured in recent years, might anticipate that mega grant funding will fall short of the\\\\n      hedge challenge in that year by entering one or more negative mega grants in that year.\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"megaGrantStatusTitle\\\",\\\"megaGrantHistoryData\\\",\\\"-track-array\\\",\\\"each\\\",\\\"format-money\\\",\\\"hash\\\",\\\"accruePendingMegaGrantOptions\\\",\\\"selectedAccruePendingMegaGrantOption\\\",\\\"isLoading\\\",\\\"megaGrantHedgeViewOptions\\\",\\\"selectedMegaGrantHedgeView\\\",\\\"selectedDiscount\\\",\\\"selectedDiscountOptions\\\",\\\"megaGrantAssumedRenewReplaceDirects\\\",\\\"megaGrantAssumedRenewReplaceIndirects\\\",\\\"megaGrantAssumedRenewReplaceCount\\\",\\\"megaGrantSuccessesDirects\\\",\\\"megaGrantSuccessesIndirects\\\",\\\"megaGrantSuccessesCount\\\",\\\"megaGrantPendingDirects\\\",\\\"megaGrantPendingIndirects\\\",\\\"megaGrantPendingCount\\\",\\\"isHedgeSummaryCurrentYear\\\",\\\"if\\\",\\\"megaGrantPendingDirectsAccrual\\\",\\\"megaGrantPendingIndirectsAccrual\\\",\\\"megaGrantPendingCountAccrual\\\",\\\"model\\\",\\\"megaGrantsHedgeProjectionDirects\\\",\\\"megaGrantsHedgeProjectionIndirects\\\",\\\"summaryAdjustment\\\",\\\"futureMegaGrantData\\\",\\\"tableCurrentFutureCoreMegaModel\\\",\\\"hedgeData\\\",\\\"megaGrantHistoryViewOptions\\\",\\\"selectedMegaGrantHistoryView\\\",\\\"selectedMegaGrantHistoryType\\\",\\\"eq\\\",\\\"isShowingStatusHelp\\\",\\\"isShowingBacklogHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/mega-grants/summary.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/projections/forecast-modifier\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"kgi8dAst\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container projections-top-controls navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"projections-link\\\"]],[[\\\"@route\\\"],[\\\"app.projections.index\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"< Back To Main Projection Page\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,9],[34,10],[30,[36,0],[[32,0],\\\"projectionFilterOptionChanged\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@helpModalAction\\\"],[\\\"Reductions and Recovery Assumptions\\\",[30,[36,0],[[32,0],\\\"toggleForecastModifierHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row no-margin\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4 no-padding\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"forecast-modifier-controls-row\\\",[],[[\\\"@phaseNum\\\",\\\"@phaseStart\\\",\\\"@phaseEnd\\\",\\\"@isPhaseEnabled\\\",\\\"@phaseStartOptions\\\",\\\"@phaseEndOptions\\\",\\\"@phaseStartChanged\\\",\\\"@phaseEndChanged\\\",\\\"@phaseReductionsDirects\\\",\\\"@phaseReductionsIndirects\\\",\\\"@phaseReductionsDirectsChanged\\\",\\\"@phaseReductionsIndirectsChanged\\\",\\\"@phaseRecoveryDirects\\\",\\\"@phaseRecoveryIndirects\\\",\\\"@phaseRecoveryDirectsChanged\\\",\\\"@phaseRecoveryIndirectsChanged\\\"],[\\\"1\\\",[34,11],[34,12],\\\"true\\\",[34,13],[34,14],[30,[36,0],[[32,0],\\\"phaseStartChanged\\\",1],null],[30,[36,0],[[32,0],\\\"phaseEndChanged\\\",1],null],[34,15],[34,16],[30,[36,0],[[32,0],\\\"phaseReductionsDirectsChanged\\\",1],null],[30,[36,0],[[32,0],\\\"phaseReductionsIndirectsChanged\\\",1],null],[34,17],[34,18],[30,[36,0],[[32,0],\\\"phaseRecoveryDirectsChanged\\\",1],null],[30,[36,0],[[32,0],\\\"phaseRecoveryIndirectsChanged\\\",1],null]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4 no-padding\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"forecast-modifier-controls-row\\\",[],[[\\\"@phaseNum\\\",\\\"@phaseStart\\\",\\\"@phaseEnd\\\",\\\"@isPhaseEnabled\\\",\\\"@phaseStartOptions\\\",\\\"@phaseEndOptions\\\",\\\"@phaseStartChanged\\\",\\\"@phaseEndChanged\\\",\\\"@phaseReductionsDirects\\\",\\\"@phaseReductionsIndirects\\\",\\\"@phaseReductionsDirectsChanged\\\",\\\"@phaseReductionsIndirectsChanged\\\",\\\"@phaseRecoveryDirects\\\",\\\"@phaseRecoveryIndirects\\\",\\\"@phaseRecoveryDirectsChanged\\\",\\\"@phaseRecoveryIndirectsChanged\\\"],[\\\"2\\\",[34,19],[34,20],[34,21],[34,22],[34,23],[30,[36,0],[[32,0],\\\"phaseStartChanged\\\",2],null],[30,[36,0],[[32,0],\\\"phaseEndChanged\\\",2],null],[34,24],[34,25],[30,[36,0],[[32,0],\\\"phaseReductionsDirectsChanged\\\",2],null],[30,[36,0],[[32,0],\\\"phaseReductionsIndirectsChanged\\\",2],null],[34,26],[34,27],[30,[36,0],[[32,0],\\\"phaseRecoveryDirectsChanged\\\",2],null],[30,[36,0],[[32,0],\\\"phaseRecoveryIndirectsChanged\\\",2],null]]],null],[2,\\\"\\\\n\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4 no-padding\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"forecast-modifier-controls-row\\\",[],[[\\\"@phaseNum\\\",\\\"@phaseStart\\\",\\\"@phaseEnd\\\",\\\"@isPhaseEnabled\\\",\\\"@phaseStartOptions\\\",\\\"@phaseEndOptions\\\",\\\"@phaseStartChanged\\\",\\\"@phaseEndChanged\\\",\\\"@phaseReductionsDirects\\\",\\\"@phaseReductionsIndirects\\\",\\\"@phaseReductionsDirectsChanged\\\",\\\"@phaseReductionsIndirectsChanged\\\",\\\"@phaseRecoveryDirects\\\",\\\"@phaseRecoveryIndirects\\\",\\\"@phaseRecoveryDirectsChanged\\\",\\\"@phaseRecoveryIndirectsChanged\\\"],[\\\"3\\\",[34,28],[34,29],[34,30],[34,31],[34,32],[30,[36,0],[[32,0],\\\"phaseStartChanged\\\",3],null],[30,[36,0],[[32,0],\\\"phaseEndChanged\\\",3],null],[34,33],[34,34],[30,[36,0],[[32,0],\\\"phaseReductionsDirectsChanged\\\",3],null],[30,[36,0],[[32,0],\\\"phaseReductionsIndirectsChanged\\\",3],null],[34,35],[34,36],[30,[36,0],[[32,0],\\\"phaseRecoveryDirectsChanged\\\",3],null],[30,[36,0],[[32,0],\\\"phaseRecoveryIndirectsChanged\\\",3],null]]],null],[2,\\\"\\\\n\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Projected Spending and Indirect Cost Recovery\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n            \\\"],[8,\\\"table-projections-core-mega-future\\\",[],[[\\\"@model\\\",\\\"@isAllSelected\\\"],[[34,37],true]],null],[2,\\\"\\\\n          \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"],[2,\\\"      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@helpModalAction\\\",\\\"@label\\\"],[[30,[36,0],[[32,0],\\\"toggleResearchBackstopHelp\\\"],null],\\\"Potential Research Backstop\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls condensed-controls\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"projections-adjustments margin-left\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@classNames\\\",\\\"@options\\\"],[\\\"Sponsor Type\\\",[34,38],[30,[36,0],[[32,0],\\\"compensationReplacementSponsorChanged\\\"],null],\\\"vertical-align-initial\\\",[34,39]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_nih\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeNih\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,8],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeNih\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_other_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,7],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeOtherFed\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_fft\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeFFT\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,6],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeFFT\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_non_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,5],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeNonFed\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_sponsor5\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeSponsor5\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,4],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeSponsor5\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_sponsor6\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeSponsor6\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,3],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeSponsor6\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,40],[[35,1,[\\\"team\\\",\\\"is_sponsor7\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[12],[1,[35,1,[\\\"sponsorTypeSponsor7\\\"]]],[2,\\\":\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,2],[30,[36,0],[[32,0],\\\"compensationReplacementChanged\\\",[35,1,[\\\"sponsorTypeSponsor7\\\"]]],null],\\\"0\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-row\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs chart-wrapper chart-height-285 no-margin\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"bar\\\",[34,41],[34,42],285]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,40],[[35,43]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleForecastModifierHelp\\\"],null],\\\"Forecast Modifier\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      This utility has been developed to allow Huron Analytics users to estimate the impact of COVID-19 related work restrictions\\\\n      on grant spending and indirect cost recovery. Compensation can be charged to “currently active” grants while\\\\n      labs are closed but cannot be charged to newly issued grants according to OMB guidance (3/19/2020). And\\\\n      non-competing NIH renewals could be delayed if progress reports are not submitted in timely fashion. In\\\\n      addition, there are a number of other factors that might affect research spending and indirect cost recovery\\\\n      while work restrictions are in place. Here are some:\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Faculty might elect to conserve research dollars by covering salaries with reserves.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Staff might be furloughed if work restrictions stay in place for an extended period.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Some competing proposal submissions will be delayed.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Indirect bearing non-salary expenses will be off.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Hiring will stop while restrictions are in place.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Subcontract work might be affected.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Vulnerable investigators and staff might be hesitant to return to work when restrictions are lifted.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"li\\\"],[12],[2,\\\"Normal business operations that affect the recognition of grant activity may simply be disrupted.\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      The “Forecast Modifier” has been put in place to help Huron Analytics subscribers simulate the potential impact of work\\\\n      restrictions on grant spending and indirect cost recovery, It simply assumes that overall grant spending and\\\\n      indirect cost recovery could be depressed in as many as 3 “Phases” with the first beginning in March 2020. Phase\\\\n      2 might simulate a ramp up in depressed activity over the summer months as “currently active grants” end. And\\\\n      Phase 3 is available to simulate a gradual return to “normal”.\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      The percentage “recovery” can certainly be set to 100% or even higher for directs if you believe that\\\\n      underspent indirects might be re-budgeted. But it might make sense to discount the recovery somewhat for\\\\n      unforeseen circumstances.\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      Huron Analytics applies the underspending that is recovered to the end of each Sponsor/Success Year amortization\\\\n      schedule.\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,40],[[35,44]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleResearchBackstopHelp\\\"],null],\\\"Potential Research Backstop\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n      To the extent that compensation continues to be charged to grants while COVID-19 related work restrictions are in place, there will undoubtedly be pressure to “backstop” projects when they resume – i.e. to replace those funds so projects can run to completion.  Every grant will be unique in this respect and sponsors – federal in particular – may provide supplements for this purpose.  Based on the inputs above regarding the extent to which direct spending might be depressed during work restrictions, Huron Analytics estimates the funds that might be required to backstop grants and when they would be needed.  The timing is  based on the assumption that most labs could not “catch up” but, instead, would need additional time to complete their work. Upon opening, Huron Analytics defaults to 65% in all sponsor categories.  This acknowledges that facts that office-based research might have continued to a degree and some labs may have stayed open of necessity.  None of this assumes that universities “must” replace funds.  The intent is simply to estimate the extent and timing of the need.\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"currentUser\\\",\\\"compensationReplacementSponsor7\\\",\\\"compensationReplacementSponsor6\\\",\\\"compensationReplacementSponsor5\\\",\\\"compensationReplacementNonFed\\\",\\\"compensationReplacementFedFlowThru\\\",\\\"compensationReplacementOtherFed\\\",\\\"compensationReplacementNih\\\",\\\"projectionsFilterOptions\\\",\\\"selectedFilterOption\\\",\\\"phase1Start\\\",\\\"phase1End\\\",\\\"phase1StartOptions\\\",\\\"phase1EndOptions\\\",\\\"phase1ReductionsDirects\\\",\\\"phase1ReductionsIndirects\\\",\\\"phase1RecoveryDirects\\\",\\\"phase1RecoveryIndirects\\\",\\\"phase2Start\\\",\\\"phase2End\\\",\\\"isPhase2Enabled\\\",\\\"phase2StartOptions\\\",\\\"phase2EndOptions\\\",\\\"phase2ReductionsDirects\\\",\\\"phase2ReductionsIndirects\\\",\\\"phase2RecoveryDirects\\\",\\\"phase2RecoveryIndirects\\\",\\\"phase3Start\\\",\\\"phase3End\\\",\\\"isPhase3Enabled\\\",\\\"phase3StartOptions\\\",\\\"phase3EndOptions\\\",\\\"phase3ReductionsDirects\\\",\\\"phase3ReductionsIndirects\\\",\\\"phase3RecoveryDirects\\\",\\\"phase3RecoveryIndirects\\\",\\\"tableModel\\\",\\\"selectedCompensationReplacementSponsor\\\",\\\"sponsorOptions\\\",\\\"if\\\",\\\"compensationReplacementChartData\\\",\\\"compensationReplacementOptions\\\",\\\"isShowingForecastModifierHelp\\\",\\\"isShowingResearchBackstopHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/projections/forecast-modifier.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/projections/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"IhNhXjva\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container projections-top-controls navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-0\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@optionChanged\\\"],[[34,2],[34,3],\\\"department-variable-width\\\",\\\"department-variable-width\\\",[30,[36,0],[[32,0],\\\"projectionFilterOptionChanged\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Sponsor Type\\\",[34,4],[30,[36,0],[[32,0],\\\"selectSponsor\\\"],null],[34,5]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"link-to\\\",[[24,0,\\\"projections-link\\\"]],[[\\\"@route\\\"],[\\\"app.projections.forecast-modifier\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Forecast Modifier\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 end-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,\\\"These exhibits can be copied and pasted to a Word or other document simply be clicking on the main body of the exhibit, clicking \\\\\\\"Copy Image\\\\\\\" and pasting the image directly to the other document. Do not paste the copy as a picture or it will reproduce with a black background. If you use these exhibits in a report or presentation, it is very important that you post the underlying assumptions behind the exhibit. The safest way to present a scenario to avoid misrepresentation or confusion is to save the whole page using the 'Export'; feature and use that for display purposes.\\\"]],null],[2,\\\"\\\\n      \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,\\\"The Export function on each Huron Analytics page allows you to create a PDF of the page which you can name and archive as you wish.  This is particularly useful on the Projections Page where you generate different scenarios to test how leading indicator assumptions affect spending and indirect cost recovery over time and on the PI Pages when investigator feedback on pending grants, renewals and future submissions have been recorded.\\\"]],null],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container app projections\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"projections-controls-table\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@helpModalAction\\\"],[\\\"Projections of Core Proposal Totals and Conversion Ratios\\\",[30,[36,0],[[32,0],\\\"toggleProjectionsHelp\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[8,\\\"projections-settings\\\",[],[[\\\"@nihProposalsRowModel\\\",\\\"@otherFedProposalsRowModel\\\",\\\"@fedFlowThruProposalsRowModel\\\",\\\"@nonFedProposalsRowModel\\\",\\\"@sponsor5ProposalsRowModel\\\",\\\"@sponsor6ProposalsRowModel\\\",\\\"@sponsor7ProposalsRowModel\\\",\\\"@nihConversionRatiosRowModel\\\",\\\"@otherFedConversionRatiosRowModel\\\",\\\"@fedFlowThruConversionRatiosRowModel\\\",\\\"@nonFedConversionRatiosRowModel\\\",\\\"@sponsor5ConversionRatiosRowModel\\\",\\\"@sponsor6ConversionRatiosRowModel\\\",\\\"@sponsor7ConversionRatiosRowModel\\\",\\\"@proposalFutureOptionChanged\\\",\\\"@proposalDropdownOptionChanged\\\",\\\"@conversionRatiosFutureOptionChanged\\\",\\\"@conversionRatiosDropdownOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@resetToOfficialAssumptions\\\",\\\"@shouldShowOfficialAssumptions\\\",\\\"@showingOfficialAssumptions\\\"],[[34,6],[34,7],[34,8],[34,9],[34,10],[34,11],[34,12],[34,13],[34,14],[34,15],[34,16],[34,17],[34,18],[34,19],[30,[36,0],[[32,0],\\\"proposalFutureOptionChanged\\\"],null],[30,[36,0],[[32,0],\\\"proposalDropdownOptionChanged\\\"],null],[30,[36,0],[[32,0],\\\"conversionRatiosFutureOptionChanged\\\"],null],[30,[36,0],[[32,0],\\\"conversionRatiosDropdownOptionChanged\\\"],null],[34,4],[30,[36,0],[[32,0],\\\"resetToOfficialAssumptions\\\"],null],[34,20],[34,21]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-7\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-5-8 chart-wrapper\\\"],[14,5,\\\"margin: 0.50rem 0.25rem;\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"bar\\\",[34,22],[34,23],200]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-5-8 chart-wrapper\\\"],[14,5,\\\"margin: 0.50rem 0.25rem;\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"bar\\\",[34,24],[34,25],200]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-5-8 chart-wrapper\\\"],[14,5,\\\"margin: 0.50rem 0.25rem;\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"line\\\",[34,26],[34,27],200]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-5-8 chart-wrapper\\\"],[14,5,\\\"margin: 0.50rem 0.25rem;\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"bar\\\",[34,28],[34,29],200]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-lg-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Projected Spending and Indirect Cost Recovery\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls condensed-controls\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"control-item margin-left\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Types\\\",\\\"Select the category you would like to display.  If you select 'Base' or 'All', Core Proposal and Core Success exhibits above will change as instructed along with the Projected Spending and Indirect Cost recovery exhibits.  But the Core Conversion ratio exhibit will only show history and projections for core proposal activity for Base faculty - i.e. excluding recruitment.  If you have entered attrition assumptions on the Recruitment Page but have responded 'No' to 'Deduct Attrition' on that page, the displays on this Projections page will still net attrition from activity generated by new recruits.\\\",[34,30],[30,[36,0],[[32,0],\\\"grantTypeOptionChanged\\\"],null],[34,31]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\\n                \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n                  \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,0],[[32,0],\\\"setBaselineButtonPressed\\\"],null],[12],[2,\\\"Set Baseline\\\"],[13],[2,\\\"\\\\n                  \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Establish any set of assumptions regarding core proposals volumes and conversion ratios as the\\\\n      opening expectation for the current fiscal year. Most often both will be set on the \\\\\\\"Prior Year\\\\\\\", but that doesn't\\\\n      have to be the case, particularly if core proposal volumes and/or conversion ratios have been particularly volitile\\\\n      over time. And the baseline setting does not have to be the same in every sponsor category\\\"]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"projections-adjustments\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Mega Grant Adjustments:\\\"],[13],[2,\\\"\\\\n                    \\\"],[1,[30,[36,33],[[35,32],\\\"Yes\\\",\\\"No\\\"],null]],[2,\\\"\\\\n                    \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"\\\\\\\"Yes\\\\\\\" indicates that your B3i Administrator anticipates either an increase or a decrease in the backlog of mega grant funding sometime in the future based on the lapsing schedule of active mega grants and historical levels of new mega grant funding.\\\"]],null],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs Adjustment (mm): \\\"],[13],[2,\\\"\\\\n                    $\\\"],[1,[30,[36,35],[[30,[36,34],[[35,1,[\\\"team\\\",\\\"schoolProjectionAdjustmentDirects\\\"]],1000000],null]],[[\\\"precision\\\"],[1]]]],[2,\\\"\\\\n                    \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"The B3i Application Administrator for your institution has entered these adjustments to projected directs and indirects to account for any spending and indirect cost recovery that is reported as such but is not present in the proposal and success data base and to calibrate B3i's econometric calculations to align with what is happening in the field.\\\"]],null],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[14,0,\\\"adjustment\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects Adjustment (mm): \\\"],[13],[2,\\\"\\\\n                    $\\\"],[1,[30,[36,35],[[30,[36,34],[[35,1,[\\\"team\\\",\\\"schoolProjectionAdjustmentIndirects\\\"]],1000000],null]],[[\\\"precision\\\"],[1]]]],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"table-projections-core-mega-future\\\",[],[[\\\"@model\\\",\\\"@selectedGrantType\\\"],[[34,36],[34,30]]],null],[2,\\\"\\\\n          \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-lg-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Historical Core & Mega Grant Spending & Indirect Cost Recovery\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls condensed-controls\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 start-xs\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Grant Types\\\",[30,[36,37],[\\\"Base (Core & Mega)\\\"],null],true,\\\"Base (Core & Mega)\\\",[30,[36,0],[[32,0],\\\"grantTypeOptionChanged\\\"],null]]],null],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"table-projections-core-mega-prior\\\",[],[[\\\"@model\\\",\\\"@selectedGrantType\\\"],[[34,38],\\\"All\\\"]],null],[2,\\\"\\\\n          \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,33],[[35,39]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\",\\\"@title\\\"],[[30,[36,0],[[32,0],\\\"toggleProjectionsHelp\\\"],null],\\\"Setting Leading Indicator Assumptions\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"There are two selectors here – one for core conversion ratios which is the default selection upon opening and one for core proposal volumes.  Set opening expectations for the year by looking back one year or to the averages of either the past two or three years.  Looking back to the prior two or three-year averages is most appropriate when core conversion ratios or proposal volumes have been volatile over time or where the prior year shows a leading indicator that is an outlier that is unlikely to repeat.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"For larger Departments, Sectors, and, certainly, the Institution as a whole, the prior year is often the most appropriate selection.  Whatever selection you make for \\\"],[1,[35,1,[\\\"sponsorTypeNih\\\"]]],[2,\\\" will automatically post that selection to the other sponsor categories.  However, you can still override any one of those selections.  For example, the prior year might be an appropriate selection for NIH, Other Fed, and Non-federal sponsors.  But if your institution only recognizes sub-contracts when each year’s notice of renewal are received, a three-year look back for core Federal Flow Through conversion ratios would be more appropriate.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Set opening assumptions for the year in the first column. As the year progresses, revise the projection for the current year as appropriate.  You can “Stay” at the level originally projected for the year.  This might be appropriate in the case of Federal Flow Thru as noted above.  But typically, you should assume that core conversion ratios and proposal volumes will either increase or decrease by either the amount of the year-to-date (“YTD”) increase to year-end or, accepting what has happened year-to-date, by assuming that core conversion ratios or proposals will “Revert” to the opening levels assumed for the balance of the year.  Then you have to post assumptions about the transition to the next year.  Core conversion ratios and proposals could “Stay” at the revised levels projected for the current year, “Revert” to the opening expectations for the current year, or “Split” the difference between the two.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"After posting your assumptions for the current year and the transition to the next, you can post assumptions in percentage increments about core conversion ratio and proposal trends going forward.  The most common assumptions would be no change – i.e. 0%.  But there will be occasions when a greater or lesser assumption is appropriate. If, for example, you are due for an increase or decrease in the federal F&A rate, you might anticipate an increase in the dollar value of core proposals submitted in the year prior to the effective year for that increase.   If you are anticipating recruitment that will likely exceed normal attrition, you can project growth in core proposal volumes.  All assumptions in the future years columns carry over to the next year.\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"As you post different assumptions, all exhibits in the top right and at the bottom of the Projections Page will update immediately to give you feedback on the effect of those assumptions and the sensitivity of projections of spending and indirect cost recovery over time.  You will quickly discover that the immediate impact is often small, but the long-term impact is cumulative and significant.  The exhibit at the bottom of the age will show how a new set of assumptions or “scenario” varies from any projection you establish as a baseline.\\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"currentUser\\\",\\\"projectionsFilterOptions\\\",\\\"selectedFilterOption\\\",\\\"selectedSponsor\\\",\\\"sponsorOptions\\\",\\\"nihProposalsRowModel\\\",\\\"otherFedProposalsRowModel\\\",\\\"fedFlowThruProposalsRowModel\\\",\\\"nonFedProposalsRowModel\\\",\\\"sponsor5ProposalsRowModel\\\",\\\"sponsor6ProposalsRowModel\\\",\\\"sponsor7ProposalsRowModel\\\",\\\"nihConversionRatiosRowModel\\\",\\\"otherFedConversionRatiosRowModel\\\",\\\"fedFlowThruConversionRatiosRowModel\\\",\\\"nonFedConversionRatiosRowModel\\\",\\\"sponsor5ConversionRatiosRowModel\\\",\\\"sponsor6ConversionRatiosRowModel\\\",\\\"sponsor7ConversionRatiosRowModel\\\",\\\"hasTeamOfficialProjections\\\",\\\"showingOfficialAssumptions\\\",\\\"projectedCoreProposalsChartData\\\",\\\"projectedCoreProposalsOptions\\\",\\\"projectedCoreSuccessesChartData\\\",\\\"projectedCoreSuccessesOptions\\\",\\\"projectedConversionRatiosChartData\\\",\\\"conversionRatiosChartOptions\\\",\\\"projectedCoreMegaChartData\\\",\\\"projectedCoreMegaOptions\\\",\\\"selectedGrantType\\\",\\\"grantTypeOptions\\\",\\\"hasMegaGrantAdjustments\\\",\\\"if\\\",\\\"div\\\",\\\"format-number\\\",\\\"tableCurrentFutureCoreMegaModel\\\",\\\"array\\\",\\\"tablePriorYearsCoreMegaModel\\\",\\\"isShowingProjectionsHelp\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/projections/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/recruitment\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"+IR5nuWX\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container recruitment navbar-top-margin\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row end-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"message-wrapper\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[8,\\\"success-message\\\",[],[[\\\"@successMessage\\\"],[[34,1]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,2],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"div\\\"],[14,0,\\\"error-message\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Users with Adminstrator or Executive access can \\\\\\\"save\\\\\\\" all elements of a recruitment plan.  That plan will survive within sessions, between sessions and between data uploads. The is only one saved recruitment plan.  If a user overrides any element(s) of a previously saved plan and saves the new plan, that becomes the new saved plan.\\\"]],null],[2,\\\"\\\\n        \\\"],[8,\\\"async-button\\\",[],[[\\\"@isInline\\\",\\\"@label\\\",\\\"@class\\\",\\\"@submitAction\\\"],[true,\\\"Save\\\",\\\"margin-left\\\",[30,[36,3],[[32,0],\\\"savePlan\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary margin-left\\\"],[4,[38,3],[[32,0],\\\"openPrintDialog\\\"],null],[12],[2,\\\"Print\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"recruitment-table\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"recruitment-faculty-table\\\",[],[[\\\"@model\\\",\\\"@isJunior\\\",\\\"@hasRecruitment\\\",\\\"@isSchoolSpecific\\\",\\\"@isAdminOrExec\\\",\\\"@onRecruitValueChanged\\\",\\\"@onAvgCompensationChanged\\\",\\\"@onCompCoverageChangedStartUp\\\",\\\"@onCompCoverageChangedAfter\\\",\\\"@onStartUpChanged\\\",\\\"@onStartUpSpendYearsChanged\\\",\\\"@onPerformanceProposalsChanged\\\",\\\"@onPerformanceHitRateChanged\\\"],[[34,5],true,[34,6,[\\\"team\\\",\\\"recruitment\\\"]],[34,6,[\\\"team\\\",\\\"hasClassifyInfo\\\"]],[34,4],[30,[36,3],[[32,0],\\\"updateRecruitment\\\"],null],[30,[36,3],[[32,0],\\\"updateAvgComp\\\"],null],[30,[36,3],[[32,0],\\\"updateCompCoverageStartUp\\\"],null],[30,[36,3],[[32,0],\\\"updateCompCoverageAfter\\\"],null],[30,[36,3],[[32,0],\\\"updateStartUp\\\"],null],[30,[36,3],[[32,0],\\\"updateStartUpSpendYears\\\"],null],[30,[36,3],[[32,0],\\\"updatePerformanceProposals\\\"],null],[30,[36,3],[[32,0],\\\"updatePerformanceHitRate\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-md-6 col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"recruitment-table\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"recruitment-faculty-table\\\",[],[[\\\"@model\\\",\\\"@hasRecruitment\\\",\\\"@isJunior\\\",\\\"@isSchoolSpecific\\\",\\\"@isAdminOrExec\\\",\\\"@onRecruitValueChanged\\\",\\\"@onAvgCompensationChanged\\\",\\\"@onCompCoverageChangedStartUp\\\",\\\"@onCompCoverageChangedAfter\\\",\\\"@onStartUpChanged\\\",\\\"@onStartUpSpendYearsChanged\\\",\\\"@onPerformanceProposalsChanged\\\",\\\"@onPerformanceHitRateChanged\\\"],[[34,7],[34,6,[\\\"team\\\",\\\"recruitment\\\"]],false,[34,6,[\\\"team\\\",\\\"hasClassifyInfo\\\"]],[34,4],[30,[36,3],[[32,0],\\\"updateRecruitment\\\"],null],[30,[36,3],[[32,0],\\\"updateAvgComp\\\"],null],[30,[36,3],[[32,0],\\\"updateCompCoverageStartUp\\\"],null],[30,[36,3],[[32,0],\\\"updateCompCoverageAfter\\\"],null],[30,[36,3],[[32,0],\\\"updateStartUp\\\"],null],[30,[36,3],[[32,0],\\\"updateStartUpSpendYears\\\"],null],[30,[36,3],[[32,0],\\\"updatePerformanceProposals\\\"],null],[30,[36,3],[[32,0],\\\"updatePerformanceHitRate\\\"],null]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-sm-12 col-md-5 filters\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[14,0,\\\"dark\\\"],[12],[2,\\\"Display:\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"category\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Category\\\",[34,8],[30,[36,3],[[32,0],\\\"selectCategory\\\"],null],[34,9]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"deduct-attrition\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@options\\\"],[\\\"Deduct Attrition\\\",\\\"If “Yes” is selected, projected proposals, successes and spending and indirect cost recovery will be reduced based on estimates of what faculty who leave would have contributed in each category.  In addition, compensation savings will be deducted from investment estimates. These estimates are institutionally based if you provide termination dates in your faculty data.  Otherwise, they are composite estimates based on multiple Huron Analytics clients who do provide termination dates.  Caution is urged when netting recruitment and attrition.  Historical attrition samples can be small and the variation around averages can be very significant.\\\",[34,10],[30,[36,3],[[32,0],\\\"selectDeductAttrition\\\"],null],[34,11]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row chart-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-md-3\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-wrapper chart-height-215\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,12],[34,13],true]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-md-3\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs chart-wrapper chart-height-215\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,14],[34,15],true]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-md-3\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs chart-wrapper chart-height-215\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,16],[34,17],true]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-md-3\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs chart-wrapper chart-height-215\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,18],[34,19],true]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[\\\"Cumulative Financial Impact\\\",\\\"While the mission statement of a research university does not typically set forth financial objectives,  it is incumbent on leadership to manage affairs in way that is sustainable and research is a big part of that equation. This exhibit lays out the basic cash flows associated with any recruitment plan:\\\\n    Cumulative indirect cost recovery, cumulative incremental investments including start up packages and compensation not covered by grants after the start up period, and the net of these two over time.\\\\nAt the moment, Huron Analytics does not attempt to anticipate the impact of a recruitment plan on facilities and research support services.  That consideration will be built in in the future after consultation with clients.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs chart-wrapper chart-height-285 no-margin\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@animate\\\"],[\\\"bar\\\",[34,20],[34,21],true]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"saveRecruitmentError\\\",\\\"saveRecruitmentSuccessMessage\\\",\\\"if\\\",\\\"action\\\",\\\"isAdminOrExec\\\",\\\"juniorFacultyRecruitment\\\",\\\"currentUser\\\",\\\"seniorFacultyRecruitment\\\",\\\"selectedCategory\\\",\\\"categoryOptions\\\",\\\"selectedDeductAttrition\\\",\\\"deductAttritionOptions\\\",\\\"totalProposalData\\\",\\\"totalProposalOptions\\\",\\\"totalSuccessesData\\\",\\\"totalSuccessesOptions\\\",\\\"totalDirectsIndirectsData\\\",\\\"totalDirectIndirectsOptions\\\",\\\"directsIndirectsPerRecruitData\\\",\\\"directsIndirectsPerRecruitOptions\\\",\\\"cumulativeFinancialImpactData\\\",\\\"cumulativeFinancialImpactOptions\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/recruitment.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/settings\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"RGQyWyrN\",\n    \"block\": \"{\\\"symbols\\\":[\\\"error\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app settings navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Control Settings\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Default Settings\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"These set the defaults when Huron Analytics is opened for highlight thresholds and mega grant proposals on Department pages.\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Departments\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,15,[\\\"team\\\",\\\"departmentsDeclineFlagSummary\\\"]],\\\"Default Decline Flag\\\",\\\"0\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"departmentsDirectsChange\\\"]],\\\"Default Directs Change Highlight\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"departmentsIndirectsChange\\\"]],\\\"Default Indirects Change Highlight\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@label\\\",\\\"@options\\\"],[[34,19],[30,[36,4],[[32,0],\\\"dropdownOptionChangedDepartmentsMega\\\"],null],\\\"Include mega grants\\\",[34,20]]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Investigators\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,15,[\\\"team\\\",\\\"piDeclineFlagSummary\\\"]],\\\"Default Decline Flag\\\",\\\"0\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"piDirectsChange\\\"]],\\\"Default Directs Change Highlight\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"piIndirectsChange\\\"]],\\\"Default Indirects Change Highlight\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@label\\\",\\\"@options\\\"],[[34,21],[30,[36,4],[[32,0],\\\"dropdownOptionChangedPiMega\\\"],null],\\\"Include mega grants\\\",[34,22]]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Derivative Ratios\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[3,\\\" Fed Flow Thru \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_fft\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeFFT\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosFedFlowThruDirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeFFT\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosFedFlowThruIndirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" NIH \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_nih\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNih\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosNihDirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNih\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosNihIndirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" Non Fed \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_non_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosNonFedDirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosNonFedIndirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" Other Fed \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_other_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosOtherFedDirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosOtherFedIndirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" Sponsor 5 \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor5\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor5\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor5Directs\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor5\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor5Indirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" Sponsor 6 \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor6\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor6\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor6Directs\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor6\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor6Indirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"          \\\"],[3,\\\" Sponsor 7 \\\"],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor7\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor7\\\"]]],[2,\\\" Directs:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor7Directs\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor7\\\"]]],[2,\\\" Indirects:\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,18,[\\\"yoneYtwoDerivativeRatiosSponsor7Indirects\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[3,\\\" Weighted Average Duration \\\"],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Weighted Average Duration\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_fft\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeFFT\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationFft\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_nih\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNih\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationNih\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_non_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeNonFed\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationNonFed\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_other_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeOtherFed\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationOtherFed\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor5\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor5\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationSponsor5\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor6\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor6\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationSponsor6\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor7\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-info-item\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,16,[\\\"sponsorTypeSponsor7\\\"]]],[2,\\\":\\\"],[13],[10,\\\"span\\\"],[12],[2,\\\" \\\"],[1,[35,15,[\\\"team\\\",\\\"weightedAverageDurationSponsor7\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Investigator Profile Settings\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"The default settings for investigator profiles.\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,15,[\\\"team\\\",\\\"lookback\\\"]],\\\"Lookback Default\\\",[34,23],true]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@options\\\",\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,24],\\\"Sponsor Type Default\\\",[34,15,[\\\"team\\\",\\\"proposalSponsor\\\"]],[30,[36,4],[[32,0],\\\"dropdownOptionChangedProposalSponsor\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@label\\\",\\\"@options\\\"],[[34,15,[\\\"team\\\",\\\"proposalCountOrTotal\\\"]],[30,[36,4],[[32,0],\\\"dropdownOptionChangedProposalCountOrTotal\\\"],null],\\\"Show Proposal Count or Total\\\",[34,25]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@type\\\",\\\"@disabled\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"cutoffDateForPendingProposals\\\"]],\\\"date\\\",true,\\\"Cutoff for pending proposals until Not Funded:\\\"]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group sponsor-types\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Sponsor Types\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Optionally override the default sponsor type settings.\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"1\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,26,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: NIH\\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"div\\\"],[12],[2,\\\"\\\\n                      \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item\\\"],[12],[2,\\\"\\\\n                        \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[34,26,[\\\"isTrainingAward\\\"]]]],null],[2,\\\"\\\\n                        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n                        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text\\\"],[12],[2,\\\"Use Training Awards\\\"],[13],[2,\\\"\\\\n                      \\\"],[13],[2,\\\"\\\\n                    \\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,26,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: NIH\\\"],[13],[2,\\\"\\\\n\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"2\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,27,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Other Fed\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,27,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Other Fed\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"3\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@disabled\\\",\\\"@value\\\",\\\"@label\\\"],[[34,28,[\\\"displayValue\\\"]],[34,28,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Fed Flow Thru\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@disabled\\\",\\\"@value\\\",\\\"@label\\\"],[[34,28,[\\\"displayValue\\\"]],[34,28,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Fed Flow Thru\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"4\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,29,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Non Fed\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,29,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Non Fed\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"5\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,30,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 5\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,30,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 5\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"6\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,31,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 6\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,31,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 6\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card--border\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"7\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,32,[\\\"displayValue\\\"]],\\\"Display:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 7\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,32,[\\\"newValue\\\"]],\\\"Sponsor Category in Data Files:\\\"]],null],[2,\\\"\\\\n                    \\\"],[10,\\\"p\\\"],[14,0,\\\"small no-margin\\\"],[12],[2,\\\"Default: Sponsor 7\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Data Import Settings\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"These settings affect how data is processed when updated.  Any changes to settings will not affect Huron Analytics until new proposal and success data is imported or current proposal and success data is re-imported.\\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"No Cost Extension and Carryover\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Calibrate Huron Analytics by selecting an allowance for no cost extensions (\\\\\\\"NCE\\\\\\\") and carry overs that most closely aligns the potential for success projection of spending and indirect cost recovery with the econometric projection on the main projections page. This allowance extends the duration of active grants by the number of months selected to simulate the extent to which grants, on average, carry over funds and go into no cost extensions. The default setting is 5 months. To change the setting, select another NCE estimate, re-upload success data, and refresh this page.\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@type\\\",\\\"@value\\\",\\\"@label\\\"],[\\\"number\\\",[34,15,[\\\"team\\\",\\\"nceAndCarryover\\\"]],\\\"No Cost Extension and Carryover\\\"]],null],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Projection Adjustments\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Add an allowance for any direct spending and indirect cost recovery that is included in spending reports but is not run through the proposal and success databases. Any change will only take effect when the Projections Page is either refreshed manually or by log in or data import.\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"schoolProjectionAdjustmentDirects\\\"]],\\\"Directs Projection Adjustment\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"schoolProjectionAdjustmentIndirects\\\"]],\\\"Indirects Projection Adjustment\\\"]],null],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Add a note to explain these adjustments.\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"pell-editor\\\",[],[[\\\"@value\\\",\\\"@onChange\\\",\\\"@pellOptions\\\"],[[34,15,[\\\"team\\\",\\\"notes\\\"]],[30,[36,4],[[32,0],[30,[36,33],[[35,15,[\\\"team\\\",\\\"notes\\\"]]],null]],null],[34,34]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Mega Grant Definition\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Define the minimum amount for a grant to be considered a mega grant.\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@options\\\",\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,35],\\\"Mega Grant Definition\\\",[34,36],[30,[36,4],[[32,0],\\\"dropdownOptionChangedMegaGrant\\\"],null]]],null],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Shrinkage\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"100 percent of investigators will never spend 100 percent of grants. The extent to which actual spending and indirect cost recover overall fall short of overall success totals is referred to as shrinkage.\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_nih\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageNih\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeNih\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_fft\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageFft\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeFFT\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_other_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageOtherFed\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeOtherFed\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_non_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageNonFed\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeNonFed\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor5\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageSponsor5\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor5\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor6\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageSponsor6\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor6\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor7\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"shrinkageSponsor7\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor7\\\"]],\\\" Shrinkage\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Sponsor Discounts\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"This is an estimate of average overall sponsor discounts on pending proposals that are assumed to be funded.  \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_nih\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountNih\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeNih\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_fft\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountFft\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeFFT\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_other_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountOtherFed\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeOtherFed\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_non_fed\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountNonFed\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeNonFed\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor5\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountSponsor5\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor5\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor6\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountSponsor6\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor6\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[6,[37,3],[[35,16,[\\\"team\\\",\\\"is_sponsor7\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"sponsorDiscountSponsor7\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeSponsor7\\\"]],\\\" Discount\\\"],null]]],null]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"header-text\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h4\\\"],[12],[1,[32,0,[\\\"currentUser\\\",\\\"sponsorTypeFFT\\\"]]],[2,\\\" Multiples\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"If your institution only recognizes annual awards on sub contracts when they are awarded, the potential to spend in years 2, 3 and 4 is understated to the extent that sub contracts tend to run their full term.  Enter a factor that will inflate projected spending on successes in their second, third and fourth years to account for this.\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"fftMultipleOneYearAgo\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeFFT\\\"]],\\\" Multiple 1 year ago\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"fftMultipleTwoYearsAgo\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeFFT\\\"]],\\\" Multiple 2 years ago\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\"],[[34,15,[\\\"team\\\",\\\"fftMultipleThreeYearsAgo\\\"]],[30,[36,17],[[35,16,[\\\"sponsorTypeFFT\\\"]],\\\" Multiple 3 years ago\\\"],null]]],null],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Data Export Settings\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"These settings affect who can export data on the Comparative PI and Data Mining pages.\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@label\\\",\\\"@options\\\"],[[34,37],[30,[36,4],[[32,0],\\\"dropdownOptionChangedExecDownload\\\"],null],\\\"Allow users with \\\\\\\"Executive\\\\\\\" access to export data\\\",[34,38]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"settings-group\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Official Set of Assumptions\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Set the default set of assumptions for your institution. These will act as the default assumptions for each user in the institution.\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@label\\\",\\\"@options\\\"],[[34,39],[30,[36,4],[[32,0],\\\"dropdownOptionChangedOfficialAssumption\\\"],null],\\\"Official Assumptions\\\",[34,40]]],null],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,41],[[35,39],\\\"Enabled\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"div\\\"],[14,0,\\\"projections-controls-table\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"projections-settings\\\",[],[[\\\"@nihProposalsRowModel\\\",\\\"@otherFedProposalsRowModel\\\",\\\"@fedFlowThruProposalsRowModel\\\",\\\"@nonFedProposalsRowModel\\\",\\\"@nihConversionRatiosRowModel\\\",\\\"@otherFedConversionRatiosRowModel\\\",\\\"@fedFlowThruConversionRatiosRowModel\\\",\\\"@nonFedConversionRatiosRowModel\\\",\\\"@proposalFutureOptionChanged\\\",\\\"@proposalDropdownOptionChanged\\\",\\\"@conversionRatiosFutureOptionChanged\\\",\\\"@conversionRatiosDropdownOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@showingOfficialAssumptions\\\"],[[34,5],[34,6],[34,7],[34,8],[34,9],[34,10],[34,11],[34,12],[30,[36,4],[[32,0],\\\"proposalFutureOptionChanged\\\"],null],[30,[36,4],[[32,0],\\\"proposalDropdownOptionChanged\\\"],null],[30,[36,4],[[32,0],\\\"conversionRatiosFutureOptionChanged\\\"],null],[30,[36,4],[[32,0],\\\"conversionRatiosDropdownOptionChanged\\\"],null],[34,13],[34,14]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\\n\\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"settings-save-wrapper \\\",[30,[36,3],[[30,[36,44],[[35,43],[35,42]],null],\\\"show\\\"],null],\\\" \\\",[30,[36,3],[[35,42],\\\"saved\\\"],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,42]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"success-message\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Saved!\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,3],[[35,0]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text error\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Error!\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[35,0]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[1,[32,1]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"text\\\"],[12],[2,\\\"\\\\n        You have unsaved changes. Make sure to save your changes before leaving this page.\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[4,[38,4],[[32,0],\\\"save\\\"],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-text\\\"],[4,[38,4],[[32,0],\\\"rollback\\\"],null],[12],[2,\\\"Clear Changes\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"-track-array\\\",\\\"each\\\",\\\"if\\\",\\\"action\\\",\\\"nihProposalsRowModel\\\",\\\"otherFedProposalsRowModel\\\",\\\"fedFlowThruProposalsRowModel\\\",\\\"nonFedProposalsRowModel\\\",\\\"nihConversionRatiosRowModel\\\",\\\"otherFedConversionRatiosRowModel\\\",\\\"fedFlowThruConversionRatiosRowModel\\\",\\\"nonFedConversionRatiosRowModel\\\",\\\"selectedSponsor\\\",\\\"showingOfficialAssumptions\\\",\\\"model\\\",\\\"currentUser\\\",\\\"concat\\\",\\\"projections\\\",\\\"selectedOptionDepartmentsIncludeMega\\\",\\\"departmentsIncludeMegaOptions\\\",\\\"selectedOptionPiIncludeMega\\\",\\\"piIncludeMegaOptions\\\",\\\"lookbackOptions\\\",\\\"proposalSponsorOptions\\\",\\\"proposalCountOrTotalOptions\\\",\\\"sponsorTypeNih\\\",\\\"sponsorTypeOtherFed\\\",\\\"sponsorTypeFFT\\\",\\\"sponsorTypeNonFed\\\",\\\"sponsorTypeSponsor5\\\",\\\"sponsorTypeSponsor6\\\",\\\"sponsorTypeSponsor7\\\",\\\"mut\\\",\\\"pellOptions\\\",\\\"megaGrantDefinitionOptions\\\",\\\"selectedMegaGrantDefinition\\\",\\\"selectedOptionExecDownload\\\",\\\"execDownloadOptions\\\",\\\"selectedOfficialAssumption\\\",\\\"assumptionOptions\\\",\\\"eq\\\",\\\"savedSuccessfully\\\",\\\"showSaveAction\\\",\\\"or\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/settings.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/users\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"z3a6cNBO\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Add & Manage Users\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"Add a new user simply by entering the user’s e-mail address, title and Huron Analytics role. “Admin” users are the designated Huron Analytics Application Administrator(s). They have access to all Departments and administrative pages including Upload, Users and Settings. “Executive” users have access to all Departments but not to Upload, Users and Settings. “Department” users have access only to their Department pages and PIs.\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"When the Application Administrator adds a new user, the user will receive an e-mail to register. Once registered, the new user will have access to Huron Analytics. The Application Administrator may also modify an existing user’s title, role, and Department access using the Edit selector.\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Users\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Users who have been invited to register for Huron Analytics but have not done so are listed separately from users who have registered in case you would like to send them an invitation reminder.\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,11],[34,12],[30,[36,2],[[32,0],\\\"typeOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,13],\\\"Search:\\\",\\\"Search for users by name...\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,14],\\\"Role\\\",[34,15],[34,14],[30,[36,2],[[32,0],\\\"roleOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@multiValues\\\",\\\"@optionChanged\\\"],[[34,10],\\\"Departments\\\",[34,3],[34,10],true,[30,[36,2],[[32,0],\\\"departmentOptionChanged\\\"],null]]],null],[2,\\\"\\\\n          \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary pull-right\\\"],[4,[38,2],[[32,0],\\\"toggleAddModal\\\"],null],[12],[2,\\\"+ Add User\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"table-users\\\",[],[[\\\"@model\\\",\\\"@handleSortChange\\\",\\\"@handlePagination\\\",\\\"@typeSelection\\\",\\\"@onEditUser\\\",\\\"@onResendInvitation\\\",\\\"@onEditMembership\\\",\\\"@onDeleteUser\\\"],[[34,16],[30,[36,2],[[32,0],\\\"handleSortChange\\\"],null],[30,[36,2],[[32,0],\\\"handlePagination\\\"],null],[34,17],[30,[36,2],[[32,0],\\\"showEditUserModal\\\"],null],[30,[36,2],[[32,0],\\\"resendInvitation\\\"],null],[30,[36,2],[[32,0],\\\"showEditMembershipModal\\\"],null],[30,[36,2],[[32,0],\\\"showDeleteModal\\\"],null]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,19],[[35,18]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-add-user\\\",[],[[\\\"@title\\\",\\\"@samlKey\\\",\\\"@isNYU\\\",\\\"@isLoading\\\",\\\"@errors\\\",\\\"@departments\\\",\\\"@sectors\\\",\\\"@selectedDepartmentOption\\\",\\\"@close\\\",\\\"@saveAction\\\"],[\\\"Add a user\\\",[34,8],[34,9],[34,7],[34,0],[34,3],[34,4],[34,10],[30,[36,2],[[32,0],\\\"toggleAddModal\\\"],null],[30,[36,2],[[32,0],\\\"saveAction\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,19],[[35,20]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-edit-user\\\",[],[[\\\"@title\\\",\\\"@access\\\",\\\"@isLoading\\\",\\\"@errors\\\",\\\"@departments\\\",\\\"@sectors\\\",\\\"@close\\\",\\\"@saveAction\\\"],[\\\"Edit user\\\",[34,6],[34,7],[34,0],[34,3],[34,4],[30,[36,2],[[32,0],\\\"hideEditUserModal\\\"],null],[30,[36,2],[[32,0],\\\"saveUserAction\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"],[6,[37,19],[[35,21]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-edit-membership\\\",[],[[\\\"@errors\\\",\\\"@departments\\\",\\\"@sectors\\\",\\\"@title\\\",\\\"@membership\\\",\\\"@close\\\",\\\"@saveAction\\\"],[[34,0],[34,3],[34,4],\\\"Edit invitation\\\",[34,5],[30,[36,2],[[32,0],\\\"hideEditMembershipModal\\\"],null],[30,[36,2],[[32,0],\\\"saveMembershipAction\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,19],[[35,22]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-delete-user\\\",[],[[\\\"@errors\\\",\\\"@title\\\",\\\"@user\\\",\\\"@close\\\",\\\"@deleteAction\\\"],[[34,0],\\\"Delete user\\\",[34,1],[30,[36,2],[[32,0],\\\"hideDeleteModal\\\"],null],[30,[36,2],[[32,0],\\\"deleteUser\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"userToDelete\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"sectorsList\\\",\\\"selectedMembership\\\",\\\"selectedUser\\\",\\\"isLoading\\\",\\\"samlKey\\\",\\\"isNYU\\\",\\\"departmentSelection\\\",\\\"typeOptions\\\",\\\"typeSelection\\\",\\\"search\\\",\\\"roleSelection\\\",\\\"roleOptions\\\",\\\"model\\\",\\\"typeSelectionValue\\\",\\\"isShowingAddModal\\\",\\\"if\\\",\\\"isShowingEditUserModal\\\",\\\"isShowingEditMembershipModal\\\",\\\"isShowingDeleteModal\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/users.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/app/verify\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0oypvotb\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication navbar-top-margin\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Multi-Factor Authentication\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"We just sent a verification code to your phone number. Enter that code to finish setting up multi-factor authentication.\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"verificationCode\\\",\\\"Verification Code\\\",\\\"text\\\",\\\"Verification Code\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"verificationCode\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Submit\\\",[30,[36,4],[[32,0],[35,3]],null]]],null],[2,\\\"\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,5]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"verificationCode\\\",\\\"validations\\\",\\\"showError\\\",\\\"sendVerificationCode\\\",\\\"action\\\",\\\"errors\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/app/verify.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/application\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0zyj8KBi\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/application.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/commentary\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"QT3Q15Dq\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"commentary-page\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"sticky-element\\\",[],[[],[]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"sticky-nav sticky-nav-always-show\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row start-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 col-sm-6\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"scroll-to\\\",[],[[\\\"@target\\\"],[\\\"#hero\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-9 col-sm-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-text\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"a\\\"],[14,6,\\\"/\\\"],[14,0,\\\"link-green\\\"],[12],[2,\\\"\\\\n                About Huron Analytics\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container app help-page-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"commentary-list\\\",[],[[\\\"@contentList\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"contentList\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/commentary.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/async-button\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"3MYjdZhP\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[11,\\\"button\\\"],[16,0,[31,[\\\"async-button \\\",[34,3]]]],[16,\\\"disabled\\\",[34,4]],[4,[38,5],[[32,0],\\\"submitAction\\\"],null],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,4]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"span\\\"],[14,0,\\\"button-animation\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[3,\\\" TODO: set error and success states \\\"],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,2],[[35,1,[\\\"isFulfilled\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    Saved!\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,2],[[35,1,[\\\"isRejected\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    Submission failed\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"    \\\"],[1,[34,0]],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"activePromise\\\",\\\"if\\\",\\\"classNames\\\",\\\"isPending\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/async-button.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/basic-dropdown-content\", [\"exports\", \"ember-basic-dropdown/templates/components/basic-dropdown-content\"], function (_exports, _basicDropdownContent) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdownContent.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/templates/components/basic-dropdown-trigger\", [\"exports\", \"ember-basic-dropdown/templates/components/basic-dropdown-trigger\"], function (_exports, _basicDropdownTrigger) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdownTrigger.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/templates/components/basic-dropdown\", [\"exports\", \"ember-basic-dropdown/templates/components/basic-dropdown\"], function (_exports, _basicDropdown) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _basicDropdown.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/templates/components/cell-check-status\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"VNX14FNu\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"a\\\"],[14,6,\\\"https://public.era.nih.gov/commons/public/login.do?TYPE=33554433&REALMOID=06-1edb031f-46c7-44b3-b803-60b537de74d2&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=-SM-938PYmoLVb4VrDeXo04LZUDVDvc%2b3899ByInEAjuSUvWNIGfB2zRpWiCivYGCogG&TARGET=-SM-HTTPS%3a%2f%2fpublic%2eera%2enih%2egov%2fcommons%2fcommonsInit%2edo\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[2,\\\"Check Status\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-check-status.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-dropdown-effort\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7uYdMO9q\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"select-dropdown\\\",[],[[\\\"@selectClass\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[30,[36,1],[[35,0],\\\"hidden\\\"],null],[34,2],[34,3],[30,[36,4],[[32,0],\\\"optionChanged\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isHidden\\\",\\\"if\\\",\\\"options\\\",\\\"value\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-dropdown-effort.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-dropdown-funded\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"LCLPZwi+\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,0],[34,1],[30,[36,2],[[32,0],\\\"optionChanged\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"options\\\",\\\"value\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-dropdown-funded.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-dropdown-mega-grants\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"/ciYja5a\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"select-dropdown\\\",[],[[\\\"@disabled\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,0,[\\\"extra\\\",\\\"disabled\\\"]],[34,1],[30,[36,4],[[30,[36,3],[[35,2],true],null],\\\"Yes\\\"],null],[30,[36,5],[[32,0],\\\"optionChanged\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"column\\\",\\\"options\\\",\\\"value\\\",\\\"eq\\\",\\\"if\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-dropdown-mega-grants.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-edit-institution\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Gxfzre0F\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"cell-edit-membership\\\"],[12],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"deleteAction\\\"],null],[12],[2,\\\"Delete\\\"],[13],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"toggleEditModal\\\"],null],[12],[2,\\\"Edit\\\"],[13],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"viewAction\\\"],null],[12],[2,\\\"View\\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-edit-institution.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-edit-membership\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"LnhD6uRu\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"cell-edit-membership\\\"],[12],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"resendInvitation\\\"],null],[12],[2,\\\"Resend Invitation\\\"],[13],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"deleteAction\\\"],null],[12],[2,\\\"Delete\\\"],[13],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],\\\"toggleEditModal\\\"],null],[12],[2,\\\"Edit\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,3],[[35,1]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"success-message\\\",[],[[\\\"@successMessage\\\"],[[34,1]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,3],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"successMessage\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-edit-membership.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-edit-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"hXpYOQz3\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"toggleDeleteModal\\\"],null],[12],[2,\\\"Delete\\\"],[13],[2,\\\"\\\\n\\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"toggleEditModal\\\"],null],[12],[2,\\\"Edit\\\"],[13],[2,\\\"\\\\n\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-edit-user.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-input-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"zkvCkJhs\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@onValueChanged\\\"],[[34,0],[30,[36,1],[[32,0],\\\"onPercentageChanged\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-input-percentage.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-label-column\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"oiMaGXD1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,0,[\\\"isHeader\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[14,0,\\\"label-row-header\\\"],[12],[1,[35,0,[\\\"name\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,1],[[35,0,[\\\"name\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[1,[35,0,[\\\"name\\\"]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[1,[34,0]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-label-column.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-link-department\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"JUioIA8d\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,2],[[35,0,[\\\"id\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"linkClicked\\\"],null],[12],[1,[35,0,[\\\"name\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[1,[35,0,[\\\"name\\\"]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-link-department.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-link-is-new\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"vgA52Ml0\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@model\\\"],[[34,0,[\\\"link\\\"]],[34,0,[\\\"id\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,0,[\\\"name\\\"]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0,[\\\"isNew\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"div\\\"],[14,0,\\\"is-new-flag\\\"],[12],[2,\\\"New\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-link-is-new.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-link\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"noRt/hKE\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,0,[\\\"link\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@model\\\"],[[34,0,[\\\"link\\\"]],[34,0,[\\\"id\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[35,0,[\\\"name\\\"]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[1,[35,0,[\\\"name\\\"]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-link.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-mega-grant-variance\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"pnVODGX0\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"value\\\"],[12],[1,[30,[36,4],[[35,3,[\\\"value\\\"]]],[[\\\"precision\\\"],[0]]]],[13],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[31,[[30,[36,1],[[35,2],\\\"red\\\"],null],\\\" \\\",[30,[36,1],[[35,0],\\\"green\\\"],null],\\\" variance\\\"]]],[12],[1,[30,[36,1],[[35,0],\\\"+\\\"],null]],[1,[30,[36,4],[[35,3,[\\\"variance\\\"]]],[[\\\"precision\\\"],[0]]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isPositive\\\",\\\"if\\\",\\\"isNegative\\\",\\\"value\\\",\\\"format-money\\\",\\\"showVariance\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-mega-grant-variance.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-money-one-decimal\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UuJla6L6\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[30,[36,1],[[35,0],\\\"red\\\"],null]],[12],[1,[30,[36,3],[[35,2]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isNegative\\\",\\\"if\\\",\\\"value\\\",\\\"format-money\\\",\\\"showValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-money-one-decimal.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-money\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7bMeQ8UW\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[30,[36,1],[[35,0],\\\"red\\\"],null]],[12],[2,[34,2]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isNegative\\\",\\\"if\\\",\\\"formattedValue\\\",\\\"showValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-money.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-non-escape\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"ODWxCpkL\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[2,[34,0]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-non-escape.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-percentage-non-bold\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"y8zDtFcr\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[34,0]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"formattedValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-percentage-non-bold.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"H529H1Y2\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[30,[36,1],[[35,0],\\\"bold\\\",\\\"light\\\"],null]],[12],[2,[34,2]],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"%\\\"]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isBold\\\",\\\"if\\\",\\\"value\\\",\\\"isValid\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-percentage.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-title-is-new\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"V2hcIy6U\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[34,0]],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,1,[\\\"isNew\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"div\\\"],[14,0,\\\"is-new-flag\\\"],[12],[2,\\\"New\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"formattedTitle\\\",\\\"value\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-title-is-new.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"8HaUZlzj\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"deleteAction\\\"],null],[12],[2,\\\"Delete\\\"],[13],[2,\\\"\\\\n\\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,0],[[32,0],\\\"viewAction\\\"],null],[12],[2,\\\"View\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-user-admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-variance-money\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"KZ0c788P\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[31,[[30,[36,1],[[35,2],\\\"red\\\"],null],\\\" \\\",[30,[36,1],[[35,0],\\\"green\\\"],null]]]],[12],[1,[30,[36,4],[[35,3]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isPositive\\\",\\\"if\\\",\\\"isNegative\\\",\\\"value\\\",\\\"format-money\\\",\\\"showValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-variance-money.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/cell-variance-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"emv7Kao5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[31,[[30,[36,1],[[35,2],\\\"red\\\"],null],\\\" \\\",[30,[36,1],[[35,0],\\\"green\\\"],null]]]],[12],[2,[34,3]],[1,[30,[36,1],[[35,4],\\\"%\\\"],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isPositive\\\",\\\"if\\\",\\\"isNegative\\\",\\\"value\\\",\\\"isValid\\\",\\\"showValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/cell-variance-percentage.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/change-plus-minus\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Oc2is9M3\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"change-plus-minus\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"plus-minus\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"plus\\\"],[12],[2,\\\"+\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[12],[2,\\\"/\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"minus\\\"],[12],[2,\\\"-\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/change-plus-minus.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/chart-loader\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"7FOwWioL\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"chart-height-\\\",[34,0],\\\" chart-loader-wrapper\\\"]]],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-bar bar-1\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-bar bar-2\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"height\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/chart-loader.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/column-at-risk\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rX+gfwEB\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[2,[35,0,[\\\"label\\\"]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"column\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/column-at-risk.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/column-help-icon\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"k1fEFXCk\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[[34,0,[\\\"extra\\\"]]]],null],[2,[35,0,[\\\"label\\\"]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"column\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/column-help-icon.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/commentary-drawer\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"AB/LUHK7\",\n    \"block\": \"{\\\"symbols\\\":[\\\"contentItem\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"commentary-drawer\\\"],[12],[2,\\\"\\\\n  \\\"],[11,\\\"div\\\"],[24,0,\\\"commentary-trigger\\\"],[4,[38,0],[[32,0],\\\"toggleShowList\\\"],null],[12],[2,\\\"Commentary Articles and Tips\\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"commentary-list\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"ul\\\"],[14,0,\\\"commentary-content-list\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,1]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"li\\\"],[12],[10,\\\"a\\\"],[15,6,[32,1,[\\\"fields\\\",\\\"Files\\\",\\\"firstObject\\\",\\\"url\\\"]]],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[1,[32,1,[\\\"fields\\\",\\\"Name\\\"]]],[13],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"content\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/commentary-drawer.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/commentary-list\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"BNwUqVrC\",\n    \"block\": \"{\\\"symbols\\\":[\\\"contentSection\\\",\\\"sectionName\\\",\\\"records\\\",\\\"month\\\",\\\"content\\\"],\\\"statements\\\":[[10,\\\"h1\\\"],[12],[2,\\\"Commentary\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"White Papers, B3i Tips and Articles of Interest will be published here to help your institution get the most out of Huron Analytics.\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Access the latest news, OER Blog posts, upcoming events listing and videos from NIH at \\\"],[10,\\\"a\\\"],[14,6,\\\"https://grants.nih.gov/news/news.htm\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[2,\\\"https://grants.nih.gov/news/news.html\\\"],[13],[2,\\\".\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"p\\\"],[12],[2,\\\"Access the latest news from NSF at \\\"],[10,\\\"a\\\"],[14,6,\\\"https://www.nsf.gov/news/news_list.jsp?nt=2\\\"],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[2,\\\"https://www.nsf.gov/news/news_list.jsp?nt=2\\\"],[13],[2,\\\".\\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"section\\\"],[14,0,\\\"top-2\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,6],[[35,7]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"section\\\"],[14,0,\\\"top-2\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"h3\\\"],[12],[1,[30,[36,5],[[30,[36,4],[[30,[36,3],[[32,2]],null]],null]],null]],[13],[2,\\\"\\\\n        \\\"],[10,\\\"ul\\\"],[14,0,\\\"commentary-content-list\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,6],[[32,1]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"p\\\"],[14,0,\\\"bottom-small\\\"],[12],[10,\\\"strong\\\"],[12],[1,[30,[36,0],[[32,4],\\\"MMMM YYYY\\\",\\\"YYYY-MM\\\"],null]],[13],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[32,3]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"li\\\"],[12],[10,\\\"a\\\"],[15,6,[32,5,[\\\"fields\\\",\\\"Files\\\",\\\"firstObject\\\",\\\"url\\\"]]],[14,\\\"target\\\",\\\"_blank\\\"],[14,\\\"rel\\\",\\\"noopener\\\"],[12],[1,[32,5,[\\\"fields\\\",\\\"Name\\\"]]],[13],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[5]}]]]],\\\"parameters\\\":[3,4]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1,2]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"moment-format\\\",\\\"-track-array\\\",\\\"each\\\",\\\"dasherize-string\\\",\\\"humanize\\\",\\\"titleize\\\",\\\"-each-in\\\",\\\"contentList\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/commentary-list.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/comparative-faculty-summary-card\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"w0hAFY2T\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"comparative-summary\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[30,[36,8],[[30,[36,7],[[35,6],\\\"Selected\\\"],null],\\\"col-xs-12\\\",\\\"col-xs-8\\\"],null]],[12],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"strong\\\"],[12],[1,[34,6]],[2,\\\" Group\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,8],[[30,[36,7],[[35,6],\\\"Selected\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[10,\\\"a\\\"],[14,0,\\\"information\\\"],[15,\\\"onclick\\\",[30,[36,10],[[32,0],[35,9]],null]],[12],[2,\\\"What's this?\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,8],[[30,[36,7],[[35,6],\\\"Comparison\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,\\\"These data exclude the Selected Group.\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[14,0,\\\"no-top-margin light\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,8],[[30,[36,11],[[30,[36,7],[[35,3],\\\"External\\\"],null],[30,[36,7],[[35,6],\\\"Comparison\\\"],null]],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"          External data are not yet available.\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"          Adjust the filters to select \\\"],[1,[30,[36,8],[[30,[36,7],[[35,6],\\\"Comparison\\\"],null],\\\"a comparison group\\\",\\\"a group\\\"],null]],[2,\\\" from your institution\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,8],[[30,[36,7],[[35,6],\\\"Comparison\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@wrapperClass\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@onChange\\\"],[\\\"float-right no-margin\\\",[34,3],[34,4],[34,5]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row top-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"top-page-controls condensed-controls no-top-margin\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"select-grouped-dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@truncate\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@multiValues\\\",\\\"@disabled\\\",\\\"@options\\\"],[\\\"Department\\\",\\\"department-variable-width\\\",\\\"department-variable-width\\\",true,[34,12],[34,13],true,[30,[36,15],[[35,14],[30,[36,7],[[35,3],\\\"External\\\"],null]],null],[34,16]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@hoverText\\\",\\\"@hoverTextCondition\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@options\\\"],[\\\"Rank\\\",[34,17],[30,[36,8],[[35,18],\\\"Rank data has not been provided\\\"],null],[34,18],[34,19],[30,[36,15],[[35,14],[35,18]],null],[34,20]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@hoverText\\\",\\\"@label\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@options\\\"],[[34,21],[30,[36,8],[[35,22],\\\"Hire year data has not been provided\\\"],null],\\\"Hire Year\\\",[34,23],[30,[36,15],[[35,14],[35,22]],null],[34,24]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@options\\\"],[\\\"Tier - All Investigators\\\",[34,25],[34,26],[34,14],[34,27]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,8],[[35,0,[\\\"total_pi_count\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[1,[30,[36,2],[[35,0,[\\\"total_pi_count\\\"]]],null]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                0\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              investigators\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total \\\"],[1,[30,[36,29],[[35,28,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" Directs:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,8],[[35,0,[\\\"actuals_one_year_ago_directs\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"actuals_one_year_ago_directs\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"no-margin\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total \\\"],[1,[30,[36,29],[[35,28,[\\\"fiscalYear\\\"]],1],null]],[2,\\\" Indirects:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"strong\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,8],[[35,0,[\\\"actuals_one_year_ago_indirects\\\"]]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"h4\\\"],[12],[1,[30,[36,1],[[35,0,[\\\"actuals_one_year_ago_indirects\\\"]]],null]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"h4\\\"],[12],[2,\\\"$0\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"summaryData\\\",\\\"format-money\\\",\\\"format-number\\\",\\\"selectedComparisonGroup\\\",\\\"comparisonGroupOptions\\\",\\\"comparisonGroupChanged\\\",\\\"groupType\\\",\\\"eq\\\",\\\"if\\\",\\\"whatsThisClicked\\\",\\\"action\\\",\\\"and\\\",\\\"selectedDepartment\\\",\\\"departmentChanged\\\",\\\"disableControls\\\",\\\"or\\\",\\\"departmentOptions\\\",\\\"selectedClassify\\\",\\\"classifyOptionsDisabled\\\",\\\"classifyChanged\\\",\\\"classifyOptions\\\",\\\"selectedHireYear\\\",\\\"hireYearOptionsDisabled\\\",\\\"hireYearChanged\\\",\\\"hireYearOptions\\\",\\\"selectedQuartile\\\",\\\"quartileChanged\\\",\\\"quartileOptions\\\",\\\"year\\\",\\\"sub\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/comparative-faculty-summary-card.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/data-import-message\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YxkbNdsA\",\n    \"block\": \"{\\\"symbols\\\":[\\\"value\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"data-import-message\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,9]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[12],[10,\\\"strong\\\"],[14,0,\\\"success\\\"],[12],[2,\\\"All records imported successfully\\\"],[13],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[12],[10,\\\"strong\\\"],[14,0,\\\"error\\\"],[12],[1,[35,3,[\\\"number_of_rows_ignored\\\"]]],[2,\\\" total records ignored for the following reasons:\\\"],[13],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[30,[36,5],[[30,[36,5],[[35,4]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[14,0,\\\"red\\\"],[12],[1,[32,1,[\\\"error\\\"]]],[2,\\\": \\\"],[1,[32,1,[\\\"rows\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"ignored-rows \\\",[30,[36,2],[[35,1],\\\"show-more\\\"],null]]]],[12],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[12],[1,[34,7]],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[12],[11,\\\"a\\\"],[4,[38,0],[[32,0],\\\"toggleShowMore\\\"],null],[12],[2,\\\"Show \\\"],[1,[30,[36,2],[[35,1],\\\"less\\\",\\\"more\\\"],null]],[13],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"showMore\\\",\\\"if\\\",\\\"meta\\\",\\\"invalidValues\\\",\\\"-track-array\\\",\\\"each\\\",\\\"ignoredRowsString\\\",\\\"showShowMore\\\",\\\"allRowsImported\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/data-import-message.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/departments-summary-cards\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UiSpYEHb\",\n    \"block\": \"{\\\"symbols\\\":[\\\"data\\\",\\\"year\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"summary-card-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row top-xs\\\"],[12],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card summary actuals\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card-title-area\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[1,[35,11,[\\\"lastFiscalYear\\\"]]],[2,\\\" Actuals\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs no-min-height\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Active Grants\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"total-actual-grants\\\"],[12],[1,[30,[36,13],[[35,12,[\\\"pisActiveGrantsCount\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"actuals-directs\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"actualsOneYearAgoDirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"actuals-indirects\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"actualsOneYearAgoIndirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card summary ytd\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card-title-area bottom-0\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"Year-to-Date Actuals \\\"],[10,\\\"a\\\"],[14,0,\\\"information\\\"],[15,\\\"onclick\\\",[30,[36,8],[[32,0],\\\"whatsThisClicked\\\"],null]],[12],[2,\\\"What's this?\\\"],[13],[13],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[1,[35,0,[\\\"asOfQueryString\\\"]]],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,16],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"p\\\"],[12],[2,\\\"Prior Year Extrapolation Factors as of \\\"],[1,[30,[36,1],[[35,0,[\\\"asOfDate\\\"]],\\\"MM/DD\\\"],null]],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,4],[[30,[36,3],[[35,2]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[1,[32,2]],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[1,[32,1]],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1,2]}]]],[2,\\\"        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"slider-wrapper\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"slider\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"input\\\"],[14,1,\\\"rangeInput\\\"],[15,0,[31,[\\\"value-\\\",[34,5]]]],[14,\\\"max\\\",\\\"0.1\\\"],[14,\\\"min\\\",\\\"-0.1\\\"],[14,\\\"step\\\",\\\".001\\\"],[15,2,[34,6]],[15,\\\"oninput\\\",[30,[36,8],[[32,0],[30,[36,7],[[35,6]],null]],[[\\\"value\\\"],[\\\"target.value\\\"]]]],[14,4,\\\"range\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[1,[34,9]],[2,\\\" (\\\"],[1,[34,10]],[2,\\\")\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"YTD Directs\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"ytd-actuals-directs\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"ytdActualsDirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-7\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Projected YE Directs\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"ytd-year-end-directs\\\"],[12],[1,[30,[36,14],[[35,17]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-5\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"YTD Indirects\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"ytd-actuals-indirects\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"ytdActualsIndirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-7\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Projected YE Indirects\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"ytd-year-end-indirects\\\"],[12],[1,[30,[36,14],[[35,18]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card summary estimated\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card-title-area\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n          FY \\\"],[1,[35,11,[\\\"fiscalYear\\\"]]],[2,\\\" Potential to Spend and Earn Indirects \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,\\\"Potential to Spend is based on active grants as of the dates noted above.  If queries include successes that began after the month-end date, those will be included in the Potential to Spend calculation.  Check with your Huron Analytics Administrator to see if post-month-end successes are included in the data.\\\"]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[14,0,\\\"small last-imported-margin\\\"],[14,1,\\\"last-imported\\\"],[12],[2,\\\"Active Grants Only \\\"],[1,[35,0,[\\\"asOfQueryString\\\"]]],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"pts-directs\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"ptsCurrentYearDirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Potential Gain or Decline\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"potential-decline-directs\\\"],[12],[1,[30,[36,14],[[35,19]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"pts-indirects\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"ptsCurrentYearIndirects\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[14,1,\\\"potential-decline-indirects\\\"],[12],[1,[30,[36,14],[[35,20]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"card summary pending\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"summary-half\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"card-title-area\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Pending Core Proposals\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"with start dates \\\"],[1,[34,21]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs no-min-height\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Pending Proposals\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"total-pending-proposals\\\"],[12],[1,[30,[36,13],[[35,12,[\\\"pendingCurrentYearCountNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"pending-directs\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"pendingCurrentYearDirectsNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"\\\\n              Core Potential to Spend Coverage Ratio \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@hoverText\\\"],[true,\\\"The Core Potential to Spend Coverage Ratio is the ratio of pending proposals with start dates in the current year to any Potential to Spend decline.  This is most useful at the beginning of the fiscal year when new successes have not been recorded.  A Potential to Spend Coverage Ratio of 20 or more suggests that pending proposals have the statistical potential to generate enough additional spending and indirects in the current fiscal year to cover any decline in the Potential to Spend relative to the prior fiscal year-end.\\\"]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"directs-coverage-ratio\\\"],[12],[1,[34,22]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"pending-indirects\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"pendingCurrentYearIndirectsNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Core Potential to Spend Coverage Ratio\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"indirects-coverage-ratio\\\"],[12],[1,[34,23]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"summary-half\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"card-title-area\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Active Core Grants\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"with end dates \\\"],[1,[34,21]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs no-min-height\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Ending Grants\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"total-ending-grants\\\"],[12],[1,[30,[36,13],[[35,12,[\\\"endingGrantsCountNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"ending-directs\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"endingGrantsDirectsNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"\\\\n              Ending Core Grant Coverage Ratio \\\"],[8,\\\"help-icon\\\",[],[[\\\"@positionAbsolute\\\",\\\"@rightSide\\\",\\\"@hoverText\\\"],[true,true,\\\"The Core Ending Grant Coverage Ratio is the ratio of pending proposals with start dates in the current year to ending grants based on grant end dates.  An Ending Grant Coverage Ratio of 4 or more suggests that pending proposals have the statistical potential to generate additional successes that will offset ending successes.\\\"]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"directs-pending-ending-ratio\\\"],[12],[1,[30,[36,13],[[35,24]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"ending-indirects\\\"],[12],[1,[30,[36,14],[[35,12,[\\\"endingGrantsIndirectsNoMega\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Ending Core Grant Coverage Ratio\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[14,1,\\\"indirects-pending-ending-ratio\\\"],[12],[1,[30,[36,13],[[35,25]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"currentUser\\\",\\\"moment-format\\\",\\\"extrapolationData\\\",\\\"-each-in\\\",\\\"each\\\",\\\"rangePercent\\\",\\\"extrapolationFactor\\\",\\\"mut\\\",\\\"action\\\",\\\"extrapolationFactorDisplay\\\",\\\"resultingExtrapolationPercentage\\\",\\\"year\\\",\\\"model\\\",\\\"format-number\\\",\\\"format-money\\\",\\\"extrapolation\\\",\\\"if\\\",\\\"projectedYearEndDirects\\\",\\\"projectedYearEndIndirects\\\",\\\"potentialDeclineDirects\\\",\\\"potentialDeclineIndirects\\\",\\\"betweenDatesLabel\\\",\\\"directsCoverageRatio\\\",\\\"indirectsCoverageRatio\\\",\\\"directsPendingToEndingRatio\\\",\\\"indirectsPendingToEndingRatio\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/departments-summary-cards.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/dropdown-wrapper-multi-select\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"sLy7cVzK\",\n    \"block\": \"{\\\"symbols\\\":[\\\"sector\\\"],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[\\\"dropdown-wrapper-multi-select \\\",[30,[36,1],[[35,3],\\\"no-search\\\"],null]]]],[12],[2,\\\"\\\\n  \\\"],[10,\\\"label\\\"],[12],[1,[34,4]],[2,\\\":\\\"],[13],[2,\\\"\\\\n  \\\"],[8,\\\"power-select-multiple\\\",[],[[\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@searchEnabled\\\",\\\"@onChange\\\"],[[34,5],[34,6],[34,7],[34,8],[34,9]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[1,[32,1]],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[15,0,[31,[\\\"description-text \\\",[30,[36,1],[[35,0],\\\"warning\\\"],null]]]],[12],[1,[34,2]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"descriptionTextWarning\\\",\\\"if\\\",\\\"descriptionText\\\",\\\"searchDisabled\\\",\\\"label\\\",\\\"options\\\",\\\"selected\\\",\\\"placeholder\\\",\\\"searchEnabled\\\",\\\"onchange\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/dropdown-wrapper-multi-select.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/dropdown-wrapper-with-value\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"lhRCwtxC\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper with-display-value\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[2,\\\":\\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"select-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@disabled\\\",\\\"@options\\\",\\\"@multiValues\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,1],[34,2],[34,3],[34,4],[34,5]]],null],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"display-value\\\"],[12],[1,[34,6]],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"disabled\\\",\\\"options\\\",\\\"multiValues\\\",\\\"selectedOption\\\",\\\"optionChanged\\\",\\\"displayValue\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/dropdown-wrapper-with-value.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/dropdown-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"hMdDPE3s\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[\\\"dropdown-wrapper \\\",[34,5]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,4]],[2,\\\": \\\"],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[[34,3]]],null]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@disabled\\\",\\\"@options\\\",\\\"@multiValues\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[[34,6],[34,7],[34,8],[34,9],[34,10]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[15,0,[31,[\\\"description-text \\\",[30,[36,1],[[35,0],\\\"warning\\\"],null]]]],[12],[1,[34,2]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"descriptionTextWarning\\\",\\\"if\\\",\\\"descriptionText\\\",\\\"hoverText\\\",\\\"label\\\",\\\"classNames\\\",\\\"disabled\\\",\\\"options\\\",\\\"multiValues\\\",\\\"selectedOption\\\",\\\"optionChanged\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/dropdown-wrapper.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/error-message\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"GMwEVTUs\",\n    \"block\": \"{\\\"symbols\\\":[\\\"error\\\"],\\\"statements\\\":[[6,[37,3],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"div\\\"],[14,0,\\\"error-message\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"Error!\\\"],[13],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[30,[36,1],[[30,[36,1],[[35,0]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[12],[2,[32,1]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"-track-array\\\",\\\"each\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/error-message.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/forecast-modifier-controls-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Ew0ef2ya\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"margin-bottom\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"strong\\\"],[12],[2,\\\"Phase \\\"],[1,[34,1]],[13],[2,\\\"\\\\n\\\"],[6,[37,4],[[30,[36,3],[[30,[36,2],[[35,1],\\\"2\\\"],null],[30,[36,2],[[35,1],\\\"3\\\"],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"float-right no-margin\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item no-margin\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text no-margin\\\"],[12],[2,\\\"\\\\n            Enabled\\\\n            \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[34,0]]],null],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"condensed-controls no-top-margin\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"Start\\\",[34,5],[30,[36,6],[[35,0]],null],[34,7],[34,8]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"control-item\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@label\\\",\\\"@disabled\\\",\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\"],[\\\"End\\\",[30,[36,6],[[35,0]],null],[34,9],[34,10],[34,11]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"forecast-modifier-table\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"label-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"label-sponsor\\\"],[12],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"label-directs\\\"],[12],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"label-percentage\\\"],[12],[2,\\\"Reductions\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"label-percentage\\\"],[12],[2,\\\"Recovery\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"modifier-row top-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-sponsor\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"strong\\\"],[12],[2,\\\"All Sponsors\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-percentage\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,12],[30,[36,6],[[35,0]],null],[30,[36,14],[[32,0],[35,13]],null],\\\"0\\\"]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-percentage\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,15],[30,[36,6],[[35,0]],null],[30,[36,14],[[32,0],[35,16]],null],\\\"0\\\"]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"modifier-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-sponsor\\\"],[12],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-directs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-percentage\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,17],[30,[36,6],[[35,0]],null],[30,[36,14],[[32,0],[35,18]],null],\\\"0\\\"]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"column-percentage\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\",\\\"@placeholder\\\"],[[34,19],[30,[36,6],[[35,0]],null],[30,[36,14],[[32,0],[35,20]],null],\\\"0\\\"]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isPhaseEnabled\\\",\\\"phaseNum\\\",\\\"eq\\\",\\\"or\\\",\\\"if\\\",\\\"phaseStartOptions\\\",\\\"not\\\",\\\"phaseStart\\\",\\\"phaseStartChanged\\\",\\\"phaseEndOptions\\\",\\\"phaseEnd\\\",\\\"phaseEndChanged\\\",\\\"phaseReductionsDirects\\\",\\\"phaseReductionsDirectsChanged\\\",\\\"action\\\",\\\"phaseRecoveryDirects\\\",\\\"phaseRecoveryDirectsChanged\\\",\\\"phaseReductionsIndirects\\\",\\\"phaseReductionsIndirectsChanged\\\",\\\"phaseRecoveryIndirects\\\",\\\"phaseRecoveryIndirectsChanged\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/forecast-modifier-controls-row.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/form-add-edit-institution-access\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"gZgmSLVx\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@multiValues\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,2],[[32,0],[35,6]],null],true,[34,7],\\\"Institution\\\"]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,9,[\\\"position\\\"]],\\\"Position:\\\",\\\"Title or position\\\"]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,2],[[32,0],\\\"roleOptionChanged\\\"],null],[30,[36,10],[[35,9,[\\\"role\\\"]]],null],[34,11],\\\"Role\\\"]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,5],[[30,[36,13],[[30,[36,12],[[35,9,[\\\"role\\\"]],\\\"Department\\\"],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,5],[[35,4]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[true,\\\"All Sectors\\\",\\\"Sector\\\",[34,3],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@onchange\\\"],[\\\"Sectors\\\",[34,0],[34,1],\\\"Select sector(s)\\\",[30,[36,2],[[32,0],\\\"sectorOptionChanged\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,14],[30,[36,2],[[32,0],\\\"departmentOptionChanged\\\"],null],[34,9,[\\\"department\\\"]],\\\"Department\\\",[34,3],true]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@class\\\",\\\"@submitAction\\\"],[\\\"Save\\\",\\\"inline\\\",[30,[36,2],[[32,0],\\\"saveAction\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[11,\\\"a\\\"],[24,0,\\\"margin-left\\\"],[24,6,\\\"#\\\"],[4,[38,2],[[32,0],[35,15]],null],[12],[2,\\\"Cancel\\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,16]]],null],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"sectorsList\\\",\\\"selectedSectors\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"disableSectorSelect\\\",\\\"if\\\",\\\"teamOptionChanged\\\",\\\"teamOptions\\\",\\\"isNew\\\",\\\"model\\\",\\\"capitalize\\\",\\\"roleOptions\\\",\\\"eq\\\",\\\"not\\\",\\\"disableDepartmentSelect\\\",\\\"close\\\",\\\"errors\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/form-add-edit-institution-access.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/help-icon\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YQ+ZKYoD\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[\\\"help-icon \\\",[30,[36,1],[[35,0],\\\"hidden\\\"],null]]]],[15,1,[34,2]],[12],[2,\\\"\\\\n  ?\\\\n  \\\"],[8,\\\"ember-tooltip\\\",[],[[\\\"@side\\\",\\\"@text\\\",\\\"@popperContainer\\\",\\\"@targetId\\\",\\\"@event\\\",\\\"@tooltipClass\\\"],[[34,3],[34,4],\\\"body\\\",[34,2],\\\"hover\\\",\\\"tooltip\\\"]],null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"hidden\\\",\\\"if\\\",\\\"uniqueIdTarget\\\",\\\"side\\\",\\\"hoverText\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/help-icon.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/investigator-plan\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"IXrSgLfN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"investigator-plan-content\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"h1\\\"],[12],[1,[35,0,[\\\"name\\\"]]],[13],[2,\\\"\\\\n  \\\"],[10,\\\"h2\\\"],[12],[1,[35,0,[\\\"department\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Pending Grants as Contact PI\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@isExporting\\\",\\\"@emptyTableMessage\\\"],[[34,11],true,[34,12]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Active Grants as Contact PI\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@isExporting\\\",\\\"@isActiveGrants\\\",\\\"@emptyTableMessage\\\"],[[34,13],true,true,[34,14]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"],[6,[37,16],[[35,15]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Future Proposal Submissions as Contact PI\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls border-bottom condensed-controls\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Approximate level of submission:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[1,[34,2]],[2,\\\"%\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Relative to previous 5 years\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 center-xs\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"New Yearly Proposals:\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"text-input-wrapper with-display-values no-margin\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"display-values-wrapper\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[12],[1,[35,3,[\\\"content\\\"]]],[10,\\\"span\\\"],[12],[2,\\\"submissions\\\"],[13],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,4,[\\\"content\\\"]]],null]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[34,6]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[1,[34,7]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Target Hit Rate:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[1,[34,8]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"label\\\"],[12],[2,\\\"New Yearly Succeses:\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"text-input-wrapper with-display-values vertical-align-middle no-margin\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"span\\\"],[14,0,\\\"display-values-wrapper\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[12],[1,[35,9,[\\\"content\\\"]]],[10,\\\"span\\\"],[12],[2,\\\"successes\\\"],[13],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,5],[[35,10,[\\\"content\\\"]]],null]],[2,\\\" total\\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Historical Actuals & Projected Potential to Spend and Earn Indirects as Contact PI\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-pi-projections\\\",[],[[\\\"@model\\\",\\\"@isExporting\\\"],[[34,17],true]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Non-Contact PI, Senior/Key Person, or Co-PI on Active Grants Not Included Above\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-grants\\\",[],[[\\\"@model\\\",\\\"@isCoPi\\\",\\\"@isExporting\\\"],[[34,18],true,true]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n  \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"Compensation Coverage - Historical Actuals and Projected as PI and Non-Contact PI/Other\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[8,\\\"table-compensation-coverage\\\",[],[[\\\"@model\\\"],[[34,19]]],null],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,16],[[35,0,[\\\"notes\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"pi-notes\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Notes\\\"],[13],[2,\\\"\\\\n      \\\"],[1,[30,[36,1],[[35,0,[\\\"notes\\\"]]],null]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"html-safe\\\",\\\"submissionLevelValue\\\",\\\"futureAverageAnnualSubmissionCount\\\",\\\"futureAverageAnnualSubmissionTotal\\\",\\\"format-money\\\",\\\"selectedHitRateOptionHeader\\\",\\\"displayHitRate\\\",\\\"selectedTargetHitRateOption\\\",\\\"futureSuccessesCountPerYear\\\",\\\"futureSuccessesTotalPerYear\\\",\\\"pendingGrants\\\",\\\"emptyTableMessagePending\\\",\\\"activeGrants\\\",\\\"emptyTableMessageActive\\\",\\\"isContinueSubmitting\\\",\\\"if\\\",\\\"ptsModel\\\",\\\"activeCOPiGrants\\\",\\\"compensationCoverageModel\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/investigator-plan.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/loading-animation\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"PqHXKVOn\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[\\\"loading-animation \\\",[34,0]]]],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"className\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/loading-animation.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/mega-grant-status-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"zaK1bun1\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[18,1,null]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/mega-grant-status-row.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-add-institution-access\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"3b+5C0X2\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[18,1,null]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-add-institution-access.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-add-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"IzhGUClE\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,19],[34,20]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"p\\\"],[12],[2,\\\"After a user is added, the new user will get an email to register their account.\\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,21],\\\"Email Address:\\\",\\\"Type an email address...\\\"]],null],[2,\\\"\\\\n  \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"systemRoleOptionChanged\\\"],null],[34,22],[34,23],\\\"System Role\\\"]],null],[2,\\\"\\\\n  \\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n    \\\"],[1,[34,24]],[2,\\\"\\\\n\\\\n\\\"],[6,[37,7],[[30,[36,16],[[35,22],\\\"User\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@multiValues\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],[35,13]],null],true,[34,14],\\\"Institution\\\"]],null],[2,\\\"\\\\n      \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,15],\\\"Position:\\\",\\\"Title or position\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,16],[[35,11,[\\\"isSaml\\\"]],true],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,12],[[35,11,[\\\"samlKey\\\"]],null],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,10],\\\"SSO Identifier:\\\",\\\"SSO Identifier\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"roleOptionChanged\\\"],null],[34,17],[34,18],\\\"Role\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,12],[[35,17],\\\"Sector\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,8],[30,[36,4],[[32,0],\\\"departmentOptionChanged\\\"],null],[34,9],\\\"Department\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,12],[[35,17],\\\"Department\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[true,\\\"All Sectors\\\",\\\"Sector\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@onchange\\\"],[\\\"Sectors\\\",[34,1],[34,2],\\\"Select sector(s)\\\",[30,[36,4],[[32,0],[30,[36,3],[[35,2]],null]],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"save\\\"],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"sectors\\\",\\\"selectedSectors\\\",\\\"mut\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"disableSectorSelect\\\",\\\"if\\\",\\\"disableDepartmentSelect\\\",\\\"selectedDepartment\\\",\\\"samlAttr\\\",\\\"team\\\",\\\"not-eq\\\",\\\"teamOptionChanged\\\",\\\"teamOptions\\\",\\\"position\\\",\\\"eq\\\",\\\"role\\\",\\\"roleOptions\\\",\\\"title\\\",\\\"close\\\",\\\"email\\\",\\\"systemRole\\\",\\\"systemRoleOptions\\\",\\\"systemRoleDescription\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-add-user-admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-add-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"KZ8YP3jq\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,10],[34,11]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n    After a user is added, the new user will get an email to register their account. Enter the user’s email and choose\\\\n    a role. Admin users have access to the whole application and all departments, while Department Head users only have\\\\n    access to their department.\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"email\\\"]],\\\"Email Address:\\\",\\\"Type an email address...\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[14,0,\\\"description-text\\\"],[12],[2,\\\"\\\\n        Please invite the user using their NetID email address rather than an alias email\\\\n        address.\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"position\\\"]],\\\"Position:\\\",\\\"Title or position\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,14],[[35,13],null],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,9],\\\"SSO Identifier:\\\",\\\"SSO Identifier\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@descriptionText\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"roleOptionChanged\\\"],null],[34,15],[34,2,[\\\"role\\\"]],[34,16],\\\"Role\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,14],[[35,2,[\\\"role\\\"]],\\\"Sector\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,8],[30,[36,4],[[32,0],\\\"departmentOptionChanged\\\"],null],[34,2,[\\\"department\\\"]],\\\"Department\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,14],[[35,2,[\\\"role\\\"]],\\\"Department\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[true,\\\"All Sectors\\\",\\\"Sector\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@onchange\\\"],[\\\"Sectors\\\",[34,1],[34,2,[\\\"sectors\\\"]],\\\"Select sector(s)\\\",[30,[36,4],[[32,0],[30,[36,3],[[35,2,[\\\"sectors\\\"]]],null]],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"saveAction\\\"],null],[12],[2,\\\"Save & Send Registration Link\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"sectors\\\",\\\"user\\\",\\\"mut\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"disableSectorSelect\\\",\\\"if\\\",\\\"disableDepartmentSelect\\\",\\\"samlAttr\\\",\\\"title\\\",\\\"close\\\",\\\"isNYU\\\",\\\"samlKey\\\",\\\"not-eq\\\",\\\"descriptionTextRole\\\",\\\"roleOptions\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-add-user.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-delete-institution\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"j0o73hDm\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"Are you sure you want to delete \\\"],[10,\\\"b\\\"],[12],[1,[35,3,[\\\"name\\\"]]],[13],[2,\\\"? All data from \\\"],[10,\\\"b\\\"],[12],[1,[35,3,[\\\"name\\\"]]],[13],[2,\\\" will\\\\n          be erased from our system.\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"async-button\\\",[],[[\\\"@class\\\",\\\"@label\\\",\\\"@submitAction\\\"],[\\\"inline\\\",\\\"Yes, delete\\\",[30,[36,5],[[32,0],[35,4]],null]]],null],[2,\\\"\\\\n      \\\"],[11,\\\"a\\\"],[24,0,\\\"margin-left\\\"],[24,6,\\\"#\\\"],[4,[38,5],[[32,0],[35,2]],null],[12],[2,\\\"No, do not delete\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"title\\\",\\\"close\\\",\\\"institution\\\",\\\"deleteAction\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-delete-institution.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-delete-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"YS73MdIr\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"Are you sure you want to delete \\\"],[10,\\\"b\\\"],[12],[1,[35,3,[\\\"firstName\\\"]]],[2,\\\" \\\"],[1,[35,3,[\\\"lastName\\\"]]],[13],[2,\\\"? This user will be erased from the system and will lose access to all institutions.\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"async-button\\\",[],[[\\\"@class\\\",\\\"@label\\\",\\\"@submitAction\\\"],[\\\"inline\\\",\\\"Yes, delete\\\",[30,[36,5],[[32,0],[35,4]],null]]],null],[2,\\\"\\\\n      \\\"],[11,\\\"a\\\"],[24,0,\\\"margin-left\\\"],[24,6,\\\"#\\\"],[4,[38,5],[[32,0],[35,2]],null],[12],[2,\\\"No, do not delete\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"title\\\",\\\"close\\\",\\\"user\\\",\\\"deleteAction\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-delete-user-admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-delete-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CXer2zjy\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"Are you sure you want to delete \\\"],[1,[35,3,[\\\"nameComma\\\"]]],[2,\\\"? This action isn't reversible.\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"deleteAction\\\"],null],[12],[2,\\\"Yes DELETE\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,5],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"title\\\",\\\"close\\\",\\\"user\\\",\\\"action\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-delete-user.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-edit-institution\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"SUEdFeLQ\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,15],[34,16]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,12],[[35,17]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"h3\\\"],[12],[2,\\\"New Institution Created Successfully!\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"The new institution, \\\"],[10,\\\"b\\\"],[12],[1,[35,1,[\\\"name\\\"]]],[13],[2,\\\", has been created successfully. Next, complete the data upload for the school\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"h4\\\"],[12],[2,\\\"Next steps:\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,4],[[32,0],[35,13],[35,1],\\\"app.users\\\"],null],[12],[10,\\\"b\\\"],[12],[2,\\\"Add Users\\\"],[13],[13],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,4],[[32,0],[35,13],[35,1],\\\"app.data-import\\\"],null],[12],[10,\\\"b\\\"],[12],[2,\\\"Import Data\\\"],[13],[13],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,4],[[32,0],[35,13],[35,1],\\\"app.settings\\\"],null],[12],[10,\\\"b\\\"],[12],[2,\\\"Configure Settings\\\"],[13],[13],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n\\\\n    \\\"],[11,\\\"button\\\"],[24,0,\\\"secondary\\\"],[4,[38,4],[[32,0],[35,14]],null],[12],[2,\\\"Add Another Institution\\\"],[13],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@error\\\",\\\"@showError\\\"],[[34,1,[\\\"name\\\"]],\\\"Institution Name:\\\",\\\"Type a name...\\\",[34,2,[\\\"attrs\\\",\\\"email\\\",\\\"message\\\"]],[34,3]]],null],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"typeOptionChanged\\\"],null],[34,1,[\\\"type\\\"]],[34,5],\\\"Institution Type\\\"]],null],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item form\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[34,1,[\\\"isMedicalSchool\\\"]]]],null],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text\\\"],[12],[2,\\\"Medical School\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"stateOptionChanged\\\"],null],[34,1,[\\\"state\\\"]],[34,6],\\\"State\\\"]],null],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"publicOptionChanged\\\"],null],[34,7],[34,8],\\\"Public/Private\\\"]],null],[2,\\\"\\\\n      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"fiscalYearOptionChanged\\\"],null],[34,9],[34,10],\\\"Fiscal Year End\\\"]],null],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item form\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[34,1,[\\\"useMfa\\\"]]]],null],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text\\\"],[12],[2,\\\"Enforce Multi-Factor Authentication\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],[35,11],[35,1]],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,12],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"institution\\\",\\\"validations\\\",\\\"showError\\\",\\\"action\\\",\\\"typeOptions\\\",\\\"stateOptions\\\",\\\"selectedPublicOption\\\",\\\"publicOptions\\\",\\\"selectedFiscalYearEnd\\\",\\\"fiscalYearEndOptions\\\",\\\"saveAction\\\",\\\"if\\\",\\\"viewInstitution\\\",\\\"clearAddState\\\",\\\"title\\\",\\\"close\\\",\\\"createdInstitution\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-edit-institution.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-edit-membership\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"ifFcQm+/\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,9],[34,10]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"email\\\"]],true,\\\"Email Address:\\\",\\\"Type an email address...\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"position\\\"]],\\\"Position:\\\",\\\"Title or position\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"roleOptionChanged\\\"],null],[34,2,[\\\"role\\\"]],[34,11],\\\"Role\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,12],[[35,2,[\\\"role\\\"]],\\\"Sector\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,8],[30,[36,4],[[32,0],\\\"departmentOptionChanged\\\"],null],[34,2,[\\\"department\\\"]],\\\"Department\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,12],[[35,2,[\\\"role\\\"]],\\\"Department\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[true,\\\"All Sectors\\\",\\\"Sector\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@onchange\\\"],[\\\"Sectors\\\",[34,1],[34,2,[\\\"sectors\\\"]],\\\"Select sector(s)\\\",[30,[36,4],[[32,0],[30,[36,3],[[35,2,[\\\"sectors\\\"]]],null]],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"saveAction\\\"],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"sectors\\\",\\\"newMembership\\\",\\\"mut\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"disableSectorSelect\\\",\\\"if\\\",\\\"disableDepartmentSelect\\\",\\\"title\\\",\\\"close\\\",\\\"roleOptions\\\",\\\"not-eq\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-edit-membership.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-edit-user-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HE+UBpOC\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,3],\\\"Name:\\\",\\\"Type a name...\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,4],\\\"Email Address:\\\",\\\"Type an email address...\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,5],[[32,0],\\\"roleOptionChanged\\\"],null],[34,6],[34,7],\\\"System Role\\\"]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,5],[[32,0],[35,8],[35,3],[35,4],[35,6]],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,9],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"title\\\",\\\"close\\\",\\\"name\\\",\\\"email\\\",\\\"action\\\",\\\"systemRole\\\",\\\"roleOptions\\\",\\\"saveAction\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-edit-user-admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-edit-user\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Twaj8maM\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,9],[34,10]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@disabled\\\",\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[true,[34,2,[\\\"name\\\"]],\\\"Name:\\\",\\\"Type a name...\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"email\\\"]],\\\"Email Address:\\\",\\\"Type an email address...\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@value\\\",\\\"@label\\\",\\\"@placeholder\\\"],[[34,2,[\\\"position\\\"]],\\\"Position:\\\",\\\"Title or position\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@options\\\",\\\"@label\\\"],[[30,[36,4],[[32,0],\\\"roleOptionChanged\\\"],null],[34,2,[\\\"role\\\"]],[34,11],\\\"Role\\\"]],null],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,12],[[35,2,[\\\"role\\\"]],\\\"Sector\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@optionChanged\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[[34,8],[30,[36,4],[[32,0],\\\"departmentOptionChanged\\\"],null],[34,2,[\\\"department\\\"]],\\\"Department\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,12],[[35,2,[\\\"role\\\"]],\\\"Department\\\"],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[35,6]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@label\\\",\\\"@options\\\",\\\"@multiValues\\\"],[true,\\\"All Sectors\\\",\\\"Sector\\\",[34,5],true]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"dropdown-wrapper-multi-select\\\",[],[[\\\"@label\\\",\\\"@options\\\",\\\"@selected\\\",\\\"@placeholder\\\",\\\"@onchange\\\"],[\\\"Sectors\\\",[34,1],[34,2,[\\\"sectors\\\"]],\\\"Select sector(s)\\\",[30,[36,4],[[32,0],[30,[36,3],[[35,2,[\\\"sectors\\\"]]],null]],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"saveAction\\\"],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,7],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"sectors\\\",\\\"newUser\\\",\\\"mut\\\",\\\"action\\\",\\\"departmentsList\\\",\\\"disableSectorSelect\\\",\\\"if\\\",\\\"disableDepartmentSelect\\\",\\\"title\\\",\\\"close\\\",\\\"roleOptions\\\",\\\"not-eq\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-edit-user.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-team-switcher\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"AjsLJ4bX\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"modal-wrapper\\\",[],[[\\\"@title\\\",\\\"@close\\\"],[[34,1],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"stacked-field-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"dropdown-wrapper\\\",[],[[\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@multiValues\\\",\\\"@options\\\",\\\"@label\\\"],[[34,3],[30,[36,4],[[32,0],\\\"teamOptionChanged\\\"],null],true,[34,5],\\\"School\\\"]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,4],[[32,0],\\\"saveAction\\\"],null],[12],[2,\\\"Save\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,0]]],null],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"errors\\\",\\\"title\\\",\\\"close\\\",\\\"selectedTeamOption\\\",\\\"action\\\",\\\"teamOptions\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-team-switcher.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/modal-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0riEXeVP\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"modal-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"modal\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"top-bar\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"a\\\"],[24,6,\\\"\\\"],[24,0,\\\"cancel\\\"],[4,[38,1],[[32,0],[30,[36,1],[[32,0],[35,0]],null]],null],[12],[2,\\\"Close\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"title\\\"],[12],[1,[34,3]],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"modal-body\\\"],[12],[2,\\\"\\\\n      \\\"],[18,1,null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"close\\\",\\\"action\\\",\\\"if\\\",\\\"title\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/modal-wrapper.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/money-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"p7vt3Op0\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[15,0,[31,[\\\"money-input-wrapper\\\",[30,[36,2],[[35,1],\\\"--no-margin\\\"],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[2,\\\":\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[10,\\\"span\\\"],[14,0,\\\"input-wrapper\\\"],[12],[2,\\\"\\\\n    \\\"],[1,[30,[36,9],[[35,4]],[[\\\"decimal\\\",\\\"options\\\",\\\"update\\\",\\\"disabled\\\"],[[35,8],[35,7],[30,[36,6],[[32,0],[30,[36,5],[[35,4]],null]],null],[35,3]]]]],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"nomargin\\\",\\\"if\\\",\\\"disabled\\\",\\\"value\\\",\\\"mut\\\",\\\"action\\\",\\\"options\\\",\\\"decimal\\\",\\\"one-way-number-mask\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/money-text-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/multi-option-select\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"z2mHtIKk\",\n    \"block\": \"{\\\"symbols\\\":[\\\"option\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"multi-option-select-wrapper \\\",[34,6]]]],[12],[2,\\\"\\\\n\\\\n\\\"],[6,[37,2],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,5]],[2,\\\":\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"multi-option-select\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[35,7]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,2],[[35,4]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"span\\\"],[16,0,[30,[36,2],[[30,[36,1],[[32,1,[\\\"value\\\"]],[35,0]],null],\\\"active\\\"],null]],[4,[38,3],[[32,0],\\\"optionClicked\\\",[32,1,[\\\"value\\\"]]],null],[12],[1,[32,1,[\\\"display\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"span\\\"],[16,0,[30,[36,2],[[30,[36,1],[[32,1],[35,0]],null],\\\"active\\\"],null]],[4,[38,3],[[32,0],\\\"optionClicked\\\",[32,1]],null],[12],[1,[32,1]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedOption\\\",\\\"eq\\\",\\\"if\\\",\\\"action\\\",\\\"multiValues\\\",\\\"label\\\",\\\"wrapperClass\\\",\\\"options\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/multi-option-select.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/percent-input-threshold\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"N6sAbpV8\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[2,\\\":\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[10,\\\"span\\\"],[15,0,[31,[\\\"input-wrapper highlight-\\\",[34,2]]]],[12],[2,\\\"\\\\n  \\\"],[8,\\\"input\\\",[[16,0,[34,6]],[16,\\\"placeholder\\\",0]],[[\\\"@key-up\\\",\\\"@disabled\\\",\\\"@focus-in\\\",\\\"@max\\\",\\\"@maxlength\\\",\\\"@name\\\",\\\"@type\\\",\\\"@value\\\"],[[30,[36,3],[[32,0],\\\"onValueChanged\\\"],null],[34,4],[34,5],\\\"100\\\",\\\"2\\\",[34,7],\\\"number\\\",[34,8]]],null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"if\\\",\\\"highlightValue\\\",\\\"action\\\",\\\"disabled\\\",\\\"focusIn\\\",\\\"class\\\",\\\"name\\\",\\\"value\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/percent-input-threshold.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/percent-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"onF/TxtJ\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"percent-input-wrapper\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[2,\\\":\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[10,\\\"span\\\"],[15,0,[31,[\\\"input-wrapper \\\",[30,[36,1],[[30,[36,4],[[35,2],0],null],\\\"value-negative\\\"],null],\\\" \\\",[30,[36,1],[[30,[36,3],[[35,2],0],null],\\\"value-positive\\\"],null]]]],[12],[2,\\\"\\\\n    \\\"],[8,\\\"input\\\",[[16,0,[34,8]],[16,\\\"placeholder\\\",0]],[[\\\"@key-up\\\",\\\"@disabled\\\",\\\"@focus-in\\\",\\\"@max\\\",\\\"@maxlength\\\",\\\"@name\\\",\\\"@type\\\",\\\"@value\\\"],[[30,[36,5],[[32,0],\\\"onValueChanged\\\"],null],[34,6],[34,7],\\\"100\\\",\\\"2\\\",[34,9],\\\"number\\\",[34,2]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"if\\\",\\\"value\\\",\\\"gt\\\",\\\"lt\\\",\\\"action\\\",\\\"disabled\\\",\\\"focusIn\\\",\\\"class\\\",\\\"name\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/percent-text-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/projections-controls-row\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"0mzYPZVn\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"projections-controls-row \\\",[30,[36,1],[[35,0],\\\"disabled\\\"],null]]]],[12],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"label-column\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[15,0,[30,[36,1],[[35,0],\\\"disabled\\\"],null]],[12],[1,[34,2]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"open-2018 column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@selectClass\\\"],[[34,3],[34,4,[\\\"open\\\"]],[30,[36,5],[[32,0],\\\"openOptionChanged\\\"],null],[34,0],\\\"small\\\"]],null],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"openDirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"openIndirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2018-revised column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@selectClass\\\"],[[34,8],[34,4,[\\\"revised\\\"]],[30,[36,5],[[32,0],\\\"revisedOptionChanged\\\"],null],[34,0],\\\"small\\\"]],null],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"revisedDirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"revisedIndirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2019-transition column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@disabled\\\",\\\"@selectClass\\\"],[[34,9],[34,4,[\\\"transition\\\"]],[30,[36,5],[[32,0],\\\"transitionOptionChanged\\\"],null],[34,0],\\\"small\\\"]],null],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"transitionDirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"value-display \\\",[34,6]]]],[12],[1,[30,[36,7],[[35,4,[\\\"transitionIndirects\\\"]]],[[\\\"precision\\\"],[1]]]],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2019 change column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"change-plus-minus\\\",[],[[],[]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"oneYearAheadChangeDirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"oneYearAheadDirectsChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"oneYearAheadChangeIndirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"oneYearAheadIndirectsChanged\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2020 change column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"change-plus-minus\\\",[],[[],[]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"twoYearsAheadChangeDirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"twoYearsAheadDirectsChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"twoYearsAheadChangeIndirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"twoYearsAheadIndirectsChanged\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2021 change column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"change-plus-minus\\\",[],[[],[]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"threeYearsAheadChangeDirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"threeYearsAheadDirectsChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"threeYearsAheadChangeIndirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"threeYearsAheadIndirectsChanged\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,0,\\\"2022 change column\\\"],[12],[2,\\\"\\\\n    \\\"],[8,\\\"change-plus-minus\\\",[],[[],[]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"fourYearsAheadChangeDirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"fourYearsAheadDirectsChanged\\\"],null]]],null],[2,\\\"\\\\n    \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@onValueChanged\\\"],[[34,4,[\\\"fourYearsAheadChangeIndirects\\\"]],[34,0],[30,[36,5],[[32,0],\\\"fourYearsAheadIndirectsChanged\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"notSelectedSponsor\\\",\\\"if\\\",\\\"sponsorType\\\",\\\"open2018Options\\\",\\\"model\\\",\\\"action\\\",\\\"dataType\\\",\\\"format-number\\\",\\\"2018RevisedOptions\\\",\\\"2019TransitionOptions\\\",\\\"sponsorExists\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/projections-controls-row.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/projections-controls-table\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"p3W2Dn5F\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[18,1,null]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/projections-controls-table.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/projections-settings\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"2PrQ1JFe\",\n    \"block\": \"{\\\"symbols\\\":[\\\"@conversionRatiosFutureOptionChanged\\\",\\\"@conversionRatiosDropdownOptionChanged\\\",\\\"@proposalFutureOptionChanged\\\",\\\"@proposalDropdownOptionChanged\\\",\\\"@resetToOfficialAssumptions\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n  \\\"],[11,\\\"span\\\"],[16,0,[30,[36,18],[[30,[36,21],[[35,20],[35,19]],null],\\\"active\\\"],null]],[4,[38,2],[[32,0],\\\"setActiveProjectionsControls\\\",[35,19]],null],[12],[2,\\\"Conversion Ratios\\\"],[13],[2,\\\"\\\\n  \\\"],[11,\\\"span\\\"],[16,0,[30,[36,18],[[30,[36,21],[[35,20],[35,22]],null],\\\"active\\\"],null]],[4,[38,2],[[32,0],\\\"setActiveProjectionsControls\\\",[35,22]],null],[12],[2,\\\"Proposal Totals\\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"span\\\"],[14,5,\\\"float: right; margin-right: 0;\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,18],[[35,23]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,18],[[35,17]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"i\\\"],[12],[2,\\\"Showing Official Assumptions\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"a\\\"],[4,[38,2],[[32,0],[32,5]],null],[12],[2,\\\"Reset to Official Assumptions\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"      \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Core settings on the Main Projection Page can be manipulated by any user to test the sensitivity of projections to different core conversion ratio and proposal volume assumptions.   But from month to month, Huron Analytics clients are likely to settle on a set of “Official Assumptions” for forecasting and planning purposes.  Huron Analytics users with Administrator status can set that official set of core assumptions on the Settings Page.  Any user can test other scenarios and view the core conversion ratio, proposal, success and spending and indirect cost recovery results and then return to the Official Assumptions.\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"controls-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"label-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Open \\\"],[1,[35,24,[\\\"fiscalYear\\\"]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[1,[35,24,[\\\"fiscalYear\\\"]]],[2,\\\" Revised\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[12],[1,[35,24,[\\\"fiscalYearOneYearAhead\\\"]]],[2,\\\" Transition\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"text-input-column\\\"],[12],[1,[35,24,[\\\"fiscalYearOneYearAhead\\\"]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"text-input-column\\\"],[12],[1,[35,24,[\\\"fiscalYearTwoYearsAhead\\\"]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"text-input-column\\\"],[12],[1,[35,24,[\\\"fiscalYearThreeYearsAhead\\\"]]],[13],[2,\\\"\\\\n    \\\"],[10,\\\"label\\\"],[14,0,\\\"text-input-column\\\"],[12],[1,[35,24,[\\\"fiscalYearFourYearsAhead\\\"]]],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,18],[[30,[36,21],[[35,20],\\\"proposals\\\"],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeNih\\\"]],[34,10],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNih\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeOtherFed\\\"]],[34,11],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeOtherFed\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeFFT\\\"]],[34,12],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeFFT\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeNonFed\\\"]],[34,13],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeNonFed\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor5\\\"]],[34,14],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor5\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor6\\\"]],[34,15],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor6\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor7\\\"]],[34,16],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],1,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],1,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],2,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],2,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],3,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],3,false],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],4,true],null],[30,[36,2],[[32,0],[32,3],[35,0,[\\\"sponsorTypeSponsor7\\\"]],4,false],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,4],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"transition\\\"],null],[34,3],\\\"money\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeNih\\\"]],[34,1],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNih\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNih\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeOtherFed\\\"]],[34,4],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeOtherFed\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeOtherFed\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeFFT\\\"]],[34,5],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeFFT\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeFFT\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeNonFed\\\"]],[34,6],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeNonFed\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeNonFed\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor5\\\"]],[34,7],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor5\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor5\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor6\\\"]],[34,8],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor6\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor6\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n    \\\"],[8,\\\"projections-controls-row\\\",[],[[\\\"@sponsorType\\\",\\\"@model\\\",\\\"@oneYearAheadDirectsChanged\\\",\\\"@oneYearAheadIndirectsChanged\\\",\\\"@twoYearsAheadDirectsChanged\\\",\\\"@twoYearsAheadIndirectsChanged\\\",\\\"@threeYearsAheadDirectsChanged\\\",\\\"@threeYearsAheadIndirectsChanged\\\",\\\"@fourYearsAheadDirectsChanged\\\",\\\"@fourYearsAheadIndirectsChanged\\\",\\\"@openOptionChanged\\\",\\\"@revisedOptionChanged\\\",\\\"@transitionOptionChanged\\\",\\\"@selectedSponsor\\\",\\\"@dataType\\\"],[[34,0,[\\\"sponsorTypeSponsor7\\\"]],[34,9],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],1,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],1,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],2,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],2,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],3,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],3,false],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],4,true],null],[30,[36,2],[[32,0],[32,1],[35,0,[\\\"sponsorTypeSponsor7\\\"]],4,false],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"open\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"revised\\\"],null],[30,[36,2],[[32,0],[32,2],[35,0,[\\\"sponsorTypeSponsor7\\\"]],\\\"transition\\\"],null],[34,3],\\\"percent\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"currentUser\\\",\\\"nihConversionRatiosRowModel\\\",\\\"action\\\",\\\"selectedSponsor\\\",\\\"otherFedConversionRatiosRowModel\\\",\\\"fedFlowThruConversionRatiosRowModel\\\",\\\"nonFedConversionRatiosRowModel\\\",\\\"sponsor5ConversionRatiosRowModel\\\",\\\"sponsor6ConversionRatiosRowModel\\\",\\\"sponsor7ConversionRatiosRowModel\\\",\\\"nihProposalsRowModel\\\",\\\"otherFedProposalsRowModel\\\",\\\"fedFlowThruProposalsRowModel\\\",\\\"nonFedProposalsRowModel\\\",\\\"sponsor5ProposalsRowModel\\\",\\\"sponsor6ProposalsRowModel\\\",\\\"sponsor7ProposalsRowModel\\\",\\\"showingOfficialAssumptions\\\",\\\"if\\\",\\\"CONTROLS_CONVERSION\\\",\\\"activeProjectionsControls\\\",\\\"eq\\\",\\\"CONTROLS_PROPOSALS\\\",\\\"shouldShowOfficialAssumptions\\\",\\\"year\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/projections-settings.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/recruitment-faculty-table\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"sU1sRe2S\",\n    \"block\": \"{\\\"symbols\\\":[\\\"row\\\",\\\"row\\\",\\\"isAttrition\\\",\\\"value\\\",\\\"index\\\",\\\"year\\\"],\\\"statements\\\":[[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\",\\\"@hoverText\\\"],[[34,10,[\\\"name\\\"]],\\\"The format of the Junior Faculty section is the same as the Senior Faculty section.  The pre-populated performance metrics differ.  All of the “?” drop downs in the Junior Faculty section apply to the Senior Faculty section as well.  In each section, begin by posting the number of new recruits you plan to hire each year over the next 6 years.  In addition, build in an assumption for the number of faculty in each section that might leave each year over the next 6 years.\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls no-padding recruitment-faculty-table\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-grid\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"recruitment-left section--white\\\"],[12],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row margin-bottom\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-9 col-xs-offset-3 recruit-row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"recruit-row\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[35,10,[\\\"next6Years\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"span\\\"],[14,0,\\\"year-label\\\"],[12],[1,[32,6]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[6]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[35,10,[\\\"recruitInputRows\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[10,\\\"div\\\"],[14,0,\\\"row middle-xs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 d-flex\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"label\\\"],[14,0,\\\"recruit-row-label\\\"],[12],[1,[32,2,[\\\"label\\\"]]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-9\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"recruit-row\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[32,2,[\\\"values\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[10,\\\"div\\\"],[14,0,\\\"recruit-row-value\\\"],[12],[2,\\\"\\\\n                        \\\"],[10,\\\"span\\\"],[14,0,\\\"input-wrapper\\\"],[12],[2,\\\"\\\\n                          \\\"],[8,\\\"input\\\",[[24,\\\"placeholder\\\",\\\"0\\\"]],[[\\\"@type\\\",\\\"@value\\\",\\\"@min\\\",\\\"@disabled\\\",\\\"@change\\\"],[\\\"number\\\",[32,4],0,[30,[36,4],[[35,3]],null],[30,[36,7],[[32,0],[35,6],[32,5],[32,3],[35,5]],null]]],null],[2,\\\"\\\\n                        \\\"],[13],[2,\\\"\\\\n                      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[4,5]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[2,3]}]]],[2,\\\"          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row sponsor-row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"table\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"thead\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"tr\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"th\\\"],[14,0,\\\"text-left dark\\\"],[14,5,\\\"width: 120px;\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Ave/Recruit per year:\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"th\\\"],[14,0,\\\"text-right dark\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Ave Count:\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"th\\\"],[14,0,\\\"text-right dark\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"5 Yr. Total:\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"th\\\"],[14,0,\\\"text-right dark\\\"],[14,5,\\\"width: 90px;\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Modified Hit Rate:\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                      \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"This takes the raw hit rate for core proposals submitted by recruits in this category over the last five completed years (“Funded Count/Total Count”) and discounts it by the “Shrinkage” factor you have posted to the Settings page – i.e. the amount be which sponsors fund less than the amount requested on average.  \\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                  \\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"th\\\"],[14,0,\\\"text-right dark\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"label\\\"],[12],[2,\\\"Ave/Proposal:\\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"tbody\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[35,10,[\\\"recruitRows\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"tr\\\"],[15,0,[30,[36,1],[[30,[36,2],[[32,1,[\\\"description\\\"]],\\\"Total\\\"],null],\\\"has-total\\\"],null]],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,0,\\\"text-left\\\"],[12],[2,\\\"\\\\n                      \\\"],[10,\\\"label\\\"],[14,0,\\\"recruit-row-label\\\"],[12],[1,[32,1,[\\\"description\\\"]]],[13],[2,\\\"\\\\n                    \\\"],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,0,\\\"text-right has-total\\\"],[12],[1,[32,1,[\\\"count\\\"]]],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,0,\\\"text-right has-total\\\"],[12],[1,[32,1,[\\\"multipleYearCount\\\"]]],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,0,\\\"text-right\\\"],[12],[1,[32,1,[\\\"hitRate\\\"]]],[13],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,0,\\\"text-right\\\"],[12],[1,[32,1,[\\\"avg\\\"]]],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[6,[37,1],[[35,11]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[10,\\\"tr\\\"],[12],[2,\\\"\\\\n                    \\\"],[10,\\\"td\\\"],[14,\\\"colspan\\\",\\\"100%\\\"],[12],[2,\\\"\\\\n                      \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                          Metrics shown are institution specific averages over the past five years.  For historical detail on proposal counts and hit rates for new recruits, see the Comparative PI Stats page.\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                          Metrics shown are composite industry stats.\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                      \\\"],[13],[2,\\\"\\\\n                    \\\"],[13],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"recruitment-right\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row section\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"\\\\n              Ave. Total Compensation\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Estimate average salary and benefits combined for recruits in each category - i.e. Junior vs. Senior.  And post the percentage of total compensation that the institution will cover both during and after the start up period.  If compensation coverage during the startup period is already included in the startup package, simply enter \\\\\\\"0%\\\\\\\" for coverage during \\\\\\\"Start Up\\\\\\\" to avoid double counting the expense.\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@placeholder\\\",\\\"@disabled\\\",\\\"@options\\\"],[[34,10,[\\\"compensation\\\",\\\"totalCompensation\\\"]],0,[30,[36,4],[[35,3]],null],[30,[36,13],null,[[\\\"oncomplete\\\"],[[30,[36,7],[[32,0],[35,12],[35,5]],null]]]]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row bottom-xs\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"label\\\"],[12],[2,\\\"Start Up Coverage\\\"],[13],[2,\\\"\\\\n                \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectClass\\\",\\\"@selectedOption\\\",\\\"@disabled\\\",\\\"@optionChanged\\\"],[[34,10,[\\\"compensation\\\",\\\"compensationCoverageChoices\\\"]],\\\"small text-left margin-top\\\",[34,10,[\\\"compensation\\\",\\\"startUpCoverage\\\"]],[30,[36,4],[[35,3]],null],[30,[36,7],[[32,0],[35,14],[35,5]],null]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"label\\\"],[12],[2,\\\"After Start Up\\\"],[13],[2,\\\"\\\\n                \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectClass\\\",\\\"@selectedOption\\\",\\\"@disabled\\\",\\\"@optionChanged\\\"],[[34,10,[\\\"compensation\\\",\\\"compensationCoverageChoices\\\"]],\\\"small text-left margin-top\\\",[34,10,[\\\"compensation\\\",\\\"afterCoverage\\\"]],[30,[36,4],[[35,3]],null],[30,[36,7],[[32,0],[35,15],[35,5]],null]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row section\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 label-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Start Up Packages\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Amount\\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"Indicate the average start up package for recruits in each category – i.e. Junior vs. Senior.  And estimate the period of time over which that start up package is expected to be spent on average.  Even if faculty are allowed to carry unspent start up packages indefinitely, define a reasonable fixed period of time over which the bulk of the package will be spent out. \\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@value\\\",\\\"@disabled\\\",\\\"@options\\\"],[[34,10,[\\\"startUpPackages\\\",\\\"amount\\\"]],[30,[36,4],[[35,3]],null],[30,[36,13],null,[[\\\"oncomplete\\\"],[[30,[36,7],[[32,0],[35,16],[35,5]],null]]]]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-7\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Spent Over\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@selectClass\\\",\\\"@optionChanged\\\"],[[34,10,[\\\"startUpPackages\\\",\\\"spentOverChoices\\\"]],[30,[36,4],[[35,3]],null],[34,10,[\\\"startUpPackages\\\",\\\"spendYears\\\"]],\\\"small text-left margin-top\\\",[30,[36,7],[[32,0],[35,17],[35,5]],null]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row section\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 label-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n              Performance Index\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"If you provide rank and hire and termination dates in your faculty upload, the projected annual proposal counts, hit rates and average proposal value in each sponsor category are specific to your institution based on new recruit activity over the past five years.  If you do not provide those data elements, the projected proposal counts, hit rates and average proposal value in each sponsor category are composites derived from multiple Huron Analytics clients who do provide that information.  If you have reason to believe that new recruits might perform better or worse than the pre-populated metrics, you can modify them across-the-board here.  A 10% increase in an average annual proposal count of 1 would be 1.1.  A 10% increase in an average hit rate of 20% would be 22%.\\\"]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Proposals\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@selectClass\\\",\\\"@optionChanged\\\"],[[34,10,[\\\"performanceIndex\\\",\\\"choices\\\"]],[30,[36,4],[[35,3]],null],[34,10,[\\\"performanceIndex\\\",\\\"proposals\\\"]],\\\"small text-left margin-top\\\",[30,[36,7],[[32,0],[35,18],[35,5]],null]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Hit Rate\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@disabled\\\",\\\"@selectedOption\\\",\\\"@selectClass\\\",\\\"@optionChanged\\\"],[[34,10,[\\\"performanceIndex\\\",\\\"choices\\\"]],[30,[36,4],[[35,3]],null],[34,10,[\\\"performanceIndex\\\",\\\"hitRate\\\"]],\\\"small text-left margin-top\\\",[30,[36,7],[[32,0],[35,19],[35,5]],null]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isSchoolSpecific\\\",\\\"if\\\",\\\"eq\\\",\\\"isAdminOrExec\\\",\\\"not\\\",\\\"isJunior\\\",\\\"onRecruitValueChanged\\\",\\\"action\\\",\\\"-track-array\\\",\\\"each\\\",\\\"model\\\",\\\"hasRecruitment\\\",\\\"onAvgCompensationChanged\\\",\\\"hash\\\",\\\"onCompCoverageChangedStartUp\\\",\\\"onCompCoverageChangedAfter\\\",\\\"onStartUpChanged\\\",\\\"onStartUpSpendYearsChanged\\\",\\\"onPerformanceProposalsChanged\\\",\\\"onPerformanceHitRateChanged\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/recruitment-faculty-table.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/row-expanded-active-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"H01ePpBB\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row-expanded--active\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-4\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"active-mega-box renewal-box \\\",[30,[36,1],[[35,0,[\\\"renews\\\"]],\\\"active\\\"],null]]]],[12],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"notes\\\"],[12],[2,\\\"\\\\n          Note the remaining balances for directs and indirects as of the end of the last fiscal year or the actual\\\\n          amount of total directs and indirects that are expected to be spent and earned even if those amounts are less\\\\n          than the remaining balances.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"section--label\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"Renewal\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"data\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Year\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[12],[1,[35,0,[\\\"success\\\",\\\"startFiscalYear\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"section--data\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"data-row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"success\\\",\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"data-row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"success\\\",\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item\\\"],[12],[2,\\\"\\\\n        \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[34,0,[\\\"excludeFromHedgeChallenge\\\"]]]],null],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text\\\"],[12],[2,\\\"Exclude from hedge challenge calculation\\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-8\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"active-mega-box override-box active\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"notes\\\"],[12],[2,\\\"\\\\n          An override is only available for mega grants that are not expected to renew where the remaining balances for\\\\n          directs and indirects as of the end of the last fiscal year are known or where the actual amount of directs\\\\n          and indirects that are expected to be spent and earned can reasonably be estimated even if those amounts are\\\\n          less than the remaining balances.\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"section--label\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"label\\\"],[12],[2,\\\"Override\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"data\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"End Date\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[12],[1,[30,[36,3],[[35,0,[\\\"success\\\",\\\"endDate\\\"]],\\\"MM/DD/YYYY\\\"],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"section--data\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"label-row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[14,0,\\\"remaining-input\\\"],[12],[2,\\\"Enter Remaining Balances as of Prior Fiscal Year End\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,4,[\\\"fiscalYear\\\"]]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,4,[\\\"fiscalYearOneYearAhead\\\"]]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,4,[\\\"fiscalYearTwoYearsAhead\\\"]]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,4,[\\\"fiscalYearThreeYearsAhead\\\"]]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[1,[35,4,[\\\"fiscalYearFourYearsAhead\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"data-row \\\",[30,[36,1],[[35,0,[\\\"isSaving\\\"]],\\\"is-saving\\\"],null]]]],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@disabled\\\",\\\"@value\\\"],[[34,0,[\\\"isSaving\\\"]],[34,0,[\\\"remainingBalanceDirects\\\"]]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0,[\\\"isSaving\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[8,\\\"loading-animation\\\",[],[[],[]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsCurrentYearDirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsOneYearAheadDirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsTwoYearsAheadDirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsThreeYearsAheadDirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsFourYearsAheadDirects\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"data-row \\\",[30,[36,1],[[35,0,[\\\"isSaving\\\"]],\\\"is-saving\\\"],null]]]],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@disabled\\\",\\\"@value\\\"],[[34,0,[\\\"isSaving\\\"]],[34,0,[\\\"remainingBalanceIndirects\\\"]]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0,[\\\"isSaving\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"              \\\"],[8,\\\"loading-animation\\\",[],[[],[]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsCurrentYearIndirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsOneYearAheadIndirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsTwoYearsAheadIndirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsThreeYearsAheadIndirects\\\"]]],null]],[13],[2,\\\"\\\\n            \\\"],[10,\\\"span\\\"],[14,0,\\\"overide-data\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"ptsFourYearsAheadIndirects\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Mega grant overrides should only be entered by the Application Administrator(s).\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"row\\\",\\\"if\\\",\\\"format-money\\\",\\\"moment-format\\\",\\\"year\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/row-expanded-active-mega.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/row-expanded-pending-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"GqjS8FzO\",\n    \"block\": \"{\\\"symbols\\\":[\\\"megaGrant\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"row-expanded--pending\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row expanded-label-row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Investigator\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Sponsor Type\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"ID\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Title\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Directs\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Indirects\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Total\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,1,[\\\"megaGrants\\\"]]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"div\\\"],[14,0,\\\"row data-row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@model\\\"],[\\\"app.departments.principal-investigator\\\",[32,1,[\\\"principalInvestigatorId\\\"]]]],[[\\\"default\\\"],[{\\\"statements\\\":[[1,[32,1,[\\\"principalInvestigatorName\\\"]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[32,1,[\\\"proposal\\\",\\\"sponsorType\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-1\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[32,1,[\\\"proposal\\\",\\\"grantId\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[32,1,[\\\"proposal\\\",\\\"title\\\"]]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,0],[[32,1,[\\\"proposal\\\",\\\"directs\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,0],[[32,1,[\\\"proposal\\\",\\\"indirects\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-2\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,0],[[32,1,[\\\"proposal\\\",\\\"total\\\"]]],null]],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6 col-xs-offset-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[14,0,\\\"checkbox-item\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"input\\\",[],[[\\\"@type\\\",\\\"@checked\\\"],[\\\"checkbox\\\",[32,1,[\\\"excludeFromHedgeChallenge\\\"]]]],null],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-indicator\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"checkbox-text\\\"],[12],[2,\\\"Exclude from hedge challenge calculation\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"format-money\\\",\\\"row\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/row-expanded-pending-mega.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/row-institution-access\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"a27zecs+\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"card border-bottom\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,6],[[30,[36,8],[[35,5],[35,7]],null]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[6,[37,6],[[35,5]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"h2\\\"],[12],[1,[35,0,[\\\"team\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n    \\\"],[8,\\\"form-add-edit-institution-access\\\",[],[[\\\"@model\\\",\\\"@store\\\",\\\"@close\\\",\\\"@save\\\"],[[34,0],[34,4],[30,[36,1],[[32,0],\\\"toggleIsEditing\\\"],null],[30,[36,1],[[32,0],\\\"saveModel\\\"],null]]],null],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[12],[2,\\\"Remove access to \\\"],[10,\\\"b\\\"],[12],[1,[35,0,[\\\"team\\\",\\\"name\\\"]]],[2,\\\"?\\\"],[13],[13],[2,\\\"\\\\n\\\\n      \\\"],[8,\\\"async-button\\\",[],[[\\\"@class\\\",\\\"@label\\\",\\\"@submitAction\\\"],[\\\"inline\\\",\\\"Yes, Remove Access\\\",[30,[36,1],[[32,0],[35,3],[35,0]],null]]],null],[2,\\\"\\\\n      \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,0,\\\"link-padding\\\"],[4,[38,1],[[32,0],\\\"toggleIsRemoving\\\"],null],[12],[2,\\\"Cancel\\\"],[13],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"h2\\\"],[12],[1,[35,0,[\\\"team\\\",\\\"name\\\"]]],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"float-right\\\"],[12],[2,\\\"\\\\n        \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[24,0,\\\"link-padding\\\"],[4,[38,1],[[32,0],\\\"toggleIsRemoving\\\"],null],[12],[2,\\\"Remove\\\"],[13],[2,\\\"\\\\n      \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"toggleIsEditing\\\"],null],[12],[2,\\\"Edit\\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"institution-info-wrapper\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Position\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[1,[35,0,[\\\"position\\\"]]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Role\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[1,[30,[36,2],[[35,0,[\\\"role\\\"]]],null]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Sector\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[1,[35,0,[\\\"sectorNameDisplay\\\"]]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"span\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"label\\\"],[12],[2,\\\"Department\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[1,[35,0,[\\\"departmentNameDisplay\\\"]]],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\\n\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"model\\\",\\\"action\\\",\\\"capitalize\\\",\\\"removeAccess\\\",\\\"store\\\",\\\"isEditing\\\",\\\"if\\\",\\\"isRemoving\\\",\\\"or\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/row-institution-access.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/select-dropdown\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"OGi1uIUS\",\n    \"block\": \"{\\\"symbols\\\":[\\\"opt\\\"],\\\"statements\\\":[[10,\\\"select\\\"],[15,0,[34,4]],[15,\\\"disabled\\\",[34,5]],[15,\\\"onchange\\\",[30,[36,6],[[32,0],\\\"optionChanged\\\"],[[\\\"value\\\"],[\\\"target.value\\\"]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,9],[[30,[36,8],[[30,[36,8],[[35,7]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,3],[[35,2]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"option\\\"],[15,2,[32,1,[\\\"value\\\"]]],[15,\\\"selected\\\",[30,[36,1],[[32,1,[\\\"value\\\"]],[35,0]],null]],[12],[1,[32,1,[\\\"display\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"option\\\"],[15,2,[32,1]],[15,\\\"selected\\\",[30,[36,1],[[32,1],[35,0]],null]],[12],[1,[32,1]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[1]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedOption\\\",\\\"eq\\\",\\\"multiValues\\\",\\\"if\\\",\\\"selectClass\\\",\\\"disabled\\\",\\\"action\\\",\\\"options\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/select-dropdown.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/select-grouped-dropdown-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"LHUUtZIE\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"span\\\"],[14,0,\\\"dropdown-wrapper\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,3]],[2,\\\":\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[8,\\\"select-grouped-dropdown\\\",[],[[\\\"@label\\\",\\\"@selectedOption\\\",\\\"@optionChanged\\\",\\\"@triggerClass\\\",\\\"@optionsClass\\\",\\\"@options\\\"],[[34,3],[34,4],[34,5],[34,6],[34,7],[34,8]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,2]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"p\\\"],[15,0,[31,[\\\"description-text \\\",[30,[36,1],[[35,0],\\\"warning\\\"],null]]]],[12],[1,[34,2]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"descriptionTextWarning\\\",\\\"if\\\",\\\"descriptionText\\\",\\\"label\\\",\\\"selectedOption\\\",\\\"optionChanged\\\",\\\"triggerClass\\\",\\\"optionsClass\\\",\\\"options\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/select-grouped-dropdown-wrapper.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/select-grouped-dropdown\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"tJfwsvDi\",\n    \"block\": \"{\\\"symbols\\\":[\\\"opt\\\"],\\\"statements\\\":[[11,\\\"div\\\"],[16,0,[31,[\\\"select-group-dropdown-wrapper \\\",[34,8]]]],[4,[38,9],[[30,[36,3],[[32,0],\\\"hideOptions\\\"],null]],null],[12],[2,\\\"\\\\n  \\\"],[11,\\\"div\\\"],[16,0,[31,[\\\"select-group-trigger \\\",[34,12],\\\" \\\",[30,[36,0],[[35,11],\\\"disabled\\\"],null],\\\" \\\",[30,[36,0],[[35,10],\\\"truncate\\\"],null]]]],[4,[38,3],[[32,0],\\\"toggleShowOptions\\\"],null],[12],[1,[35,1,[\\\"value\\\"]]],[13],[2,\\\"\\\\n\\\\n\\\"],[6,[37,0],[[35,13]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[15,0,[31,[\\\"select-group-options \\\",[34,4]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,5]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"span\\\"],[24,\\\"preventDefault\\\",\\\"true\\\"],[16,0,[31,[[30,[36,0],[[30,[36,2],[[32,1,[\\\"value\\\"]],[35,1]],null],\\\"selected\\\"],null],\\\" \\\",[30,[36,0],[[32,1,[\\\"isGroupName\\\"]],\\\"group-header\\\"],null]]]],[4,[38,3],[[32,0],\\\"optionChanged\\\",[32,1]],null],[12],[1,[32,1,[\\\"value\\\"]]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"if\\\",\\\"selectedOption\\\",\\\"eq\\\",\\\"action\\\",\\\"optionsClass\\\",\\\"options\\\",\\\"-track-array\\\",\\\"each\\\",\\\"wrapperClass\\\",\\\"on-click-outside\\\",\\\"truncate\\\",\\\"disabled\\\",\\\"triggerClass\\\",\\\"showOptions\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/select-grouped-dropdown.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/slider-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"nU3PWtWt\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"slider\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[10,\\\"input\\\"],[14,1,\\\"rangeInput\\\"],[15,0,[31,[\\\"value-\\\",[34,2]]]],[15,\\\"max\\\",[34,3]],[15,\\\"min\\\",[34,4]],[15,\\\"step\\\",[34,5]],[15,2,[34,6]],[15,\\\"oninput\\\",[30,[36,7],[[32,0],\\\"changedSlider\\\"],null]],[15,\\\"onchange\\\",[30,[36,7],[[32,0],\\\"changedSlider\\\"],null]],[14,4,\\\"range\\\"],[12],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"label\\\",\\\"if\\\",\\\"rangePercent\\\",\\\"max\\\",\\\"min\\\",\\\"step\\\",\\\"value\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/slider-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/split-bar-chart\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rEYEa62k\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"split-bar-chart-wrapper\\\"],[12],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-label-row\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"chart-label-left\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[12],[1,[34,0]],[2,\\\":\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"data\\\"],[12],[1,[34,1]],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"chart-label-right\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"label\\\"],[12],[1,[34,2]],[2,\\\":\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[14,0,\\\"data\\\"],[12],[1,[34,3]],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"chart-bar\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[15,0,[31,[\\\"fill-\\\",[34,4]]]],[12],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"leftLabel\\\",\\\"leftData\\\",\\\"rightLabel\\\",\\\"rightData\\\",\\\"percentFill\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/split-bar-chart.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/success-message\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"eZNd6RuT\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[1,[34,0]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"successMessage\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/success-message.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-active-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"g+hR3Few\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@canExpand\\\",\\\"@isLoading\\\",\\\"@expandedRowComponent\\\",\\\"@tableActions\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\"],[[34,0],true,[34,1],\\\"row-expanded-active-mega\\\",[30,[36,4],null,[[\\\"onGrantChange\\\"],[[30,[36,3],[[32,0],[35,2]],null]]]],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"onGrantChange\\\",\\\"action\\\",\\\"hash\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-active-mega.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-base\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"OwEcnzkM\",\n    \"block\": \"{\\\"symbols\\\":[\\\"t\\\",\\\"body\\\",\\\"row\\\"],\\\"statements\\\":[[8,\\\"light-table\\\",[],[[\\\"@table\\\",\\\"@responsive\\\",\\\"@tableActions\\\",\\\"@extra\\\"],[[34,4],true,[34,5],[34,6]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n  \\\"],[8,[32,1,[\\\"head\\\"]],[],[[\\\"@iconSortable\\\",\\\"@iconAscending\\\",\\\"@iconDescending\\\",\\\"@onColumnClick\\\"],[\\\"sort\\\",\\\"sort asc\\\",\\\"sort desc\\\",[30,[36,7],[[32,0],\\\"onColumnClick\\\"],null]]],null],[2,\\\"\\\\n  \\\"],[8,[32,1,[\\\"body\\\"]],[],[[\\\"@canExpand\\\",\\\"@onScrolledToBottom\\\"],[[34,8],[30,[36,7],[[32,0],\\\"onScrolledToBottom\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n\\\"],[6,[37,3],[[35,9]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,[32,2,[\\\"loader\\\"]],[],[[],[]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-loader\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[6,[37,3],[[35,4,[\\\"isEmpty\\\"]]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,[32,2,[\\\"no-data\\\"]],[],[[],[]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[1,[30,[36,3],[[35,2],[35,2],\\\"No data provided.\\\"],null]],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,3],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[8,[32,2,[\\\"expanded-row\\\"]],[],[[],[]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[1,[30,[36,1],[[35,0]],[[\\\"row\\\"],[[32,3]]]]],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[3]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"]],\\\"parameters\\\":[2]}]]],[2,\\\"\\\\n\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"expandedRowComponent\\\",\\\"component\\\",\\\"emptyTableMessage\\\",\\\"if\\\",\\\"table\\\",\\\"tableActions\\\",\\\"extra\\\",\\\"action\\\",\\\"canExpand\\\",\\\"isLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-base.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-comparative-departments\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CH0zTIqH\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\",\\\"@onColumnClick\\\",\\\"@sortValuePath\\\",\\\"@tableActions\\\",\\\"@emptyTableMessage\\\"],[[34,0],[34,1],[30,[36,2],[[32,0],\\\"onColumnClick\\\"],null],[34,3],[30,[36,5],null,[[\\\"onDepartmentClicked\\\"],[[30,[36,2],[[32,0],[35,4]],null]]]],[34,6]]],null],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"action\\\",\\\"sortValuePath\\\",\\\"onDepartmentClicked\\\",\\\"hash\\\",\\\"emptyTableMessage\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-comparative-departments.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-comparative-faculty\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"g1tTvJXi\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@extra\\\",\\\"@isLoading\\\",\\\"@onColumnClick\\\",\\\"@onScrolledToBottom\\\"],[[34,0],[34,1],[34,2],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"extra\\\",\\\"isLoading\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-comparative-faculty.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-comparative-proposals-successes\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"kHD7IVxy\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"table-comparative-proposals-successes\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"table-base\\\",[],[[\\\"@isLoading\\\",\\\"@table\\\"],[[34,0],[34,1]]],null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"isLoading\\\",\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-comparative-proposals-successes.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-comparative-statistics-pi\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"JPc96jY5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-comparative-statistics-pi.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-comparative-statistics-proposals\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"a2akziR1\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-comparative-statistics-proposals.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-compensation-coverage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"HX96XD0z\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-compensation-coverage.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-controls\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"30+Bp6oo\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n  \\\"],[18,1,null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-controls.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-core-detail\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"D8w9iQk6\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\"],[[34,0],[34,1]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-core-detail.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-data-import\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"eFWim++G\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-data-import.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-data-mining\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"qrWx3mFO\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\",\\\"@emptyTableMessage\\\"],[[34,0],[34,1],[30,[36,2],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,2],[[32,0],\\\"onColumnClick\\\"],null],[34,3]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"action\\\",\\\"emptyTableMessage\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-data-mining.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-grants\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"xiaF4Y8a\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,5],[[35,2]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@tableActions\\\",\\\"@emptyTableMessage\\\"],[[34,0],[30,[36,4],null,[[\\\"onGrantChange\\\"],[[30,[36,3],[[32,0],[35,2]],null]]]],[34,1]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@emptyTableMessage\\\"],[[34,0],[34,1]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"emptyTableMessage\\\",\\\"onGrantChange\\\",\\\"action\\\",\\\"hash\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-grants.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-institutions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"C32lQUJy\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\",\\\"@tableActions\\\"],[[34,0],[34,1],[30,[36,6],null,[[\\\"onDeleteInstitution\\\",\\\"onEditInstitution\\\",\\\"onViewInstitution\\\"],[[30,[36,3],[[32,0],[35,5]],null],[30,[36,3],[[32,0],[35,4]],null],[30,[36,3],[[32,0],[35,2]],null]]]]]],null],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"onViewInstitution\\\",\\\"action\\\",\\\"onEditInstitution\\\",\\\"onDeleteInstitution\\\",\\\"hash\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-institutions.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-investigators\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"I4JEwfMe\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@extra\\\",\\\"@isLoading\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\"],[[34,0],[34,1],[34,2],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"extra\\\",\\\"isLoading\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-investigators.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-mega-grants-summary-spending\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"cHwPoKpO\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-mega-grants-summary-spending.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-pending-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"BwrgKZRe\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@canExpand\\\",\\\"@expandedRowComponent\\\"],[[34,0],true,\\\"row-expanded-pending-mega\\\"]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-pending-mega.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-pi-projections\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"xZRJrz7Z\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-pi-projections.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-potential-to-spend\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"ecGWt9F4\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@extra\\\",\\\"@isLoading\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\"],[[34,0],[34,1],[34,2],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"extra\\\",\\\"isLoading\\\",\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-potential-to-spend.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-projections-core-mega-future\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"eT3XjHuC\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-projections-core-mega-future.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-projections-core-mega-prior\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"1M/+lYs2\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-projections-core-mega-prior.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-projections-core-mega\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"C7TZVLa9\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-projections-core-mega.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-projections-proposals-conversions\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"n/uWoOMj\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-projections-proposals-conversions.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-proposal-history\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"iZWcURGz\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\"],[[34,0]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-proposal-history.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-users-admin\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"1/W1mTYA\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\",\\\"@tableActions\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\"],[[34,0],[34,1],[30,[36,6],null,[[\\\"onDeleteUser\\\",\\\"onViewUser\\\",\\\"onResendInvitation\\\"],[[30,[36,3],[[32,0],[35,5]],null],[30,[36,3],[[32,0],[35,4]],null],[30,[36,3],[[32,0],[35,2]],null]]]],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"onResendInvitation\\\",\\\"action\\\",\\\"onViewUser\\\",\\\"onDeleteUser\\\",\\\"hash\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-users-admin.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-users\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"d6bi0RuH\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[8,\\\"table-base\\\",[],[[\\\"@table\\\",\\\"@isLoading\\\",\\\"@tableActions\\\",\\\"@onScrolledToBottom\\\",\\\"@onColumnClick\\\"],[[34,0],[34,1],[30,[36,7],null,[[\\\"onDeleteUser\\\",\\\"onEditUser\\\",\\\"onResendInvitation\\\",\\\"onEditMembership\\\"],[[30,[36,3],[[32,0],[35,6]],null],[30,[36,3],[[32,0],[35,5]],null],[30,[36,3],[[32,0],[35,4]],null],[30,[36,3],[[32,0],[35,2]],null]]]],[30,[36,3],[[32,0],\\\"onScrolledToBottom\\\"],null],[30,[36,3],[[32,0],\\\"onColumnClick\\\"],null]]],null]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"table\\\",\\\"isLoading\\\",\\\"onEditMembership\\\",\\\"action\\\",\\\"onResendInvitation\\\",\\\"onEditUser\\\",\\\"onDeleteUser\\\",\\\"hash\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-users.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/table-wrapper\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"mK1mBrG+\",\n    \"block\": \"{\\\"symbols\\\":[\\\"option\\\",\\\"icon\\\",\\\"&default\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"table-wrapper\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"table-header\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"table-title\\\"],[12],[2,\\\"\\\\n      \\\"],[1,[34,11]],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,3],[[32,0],[30,[36,3],[[32,0],[35,10]],null]],null],[12],[2,\\\"What's this?\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,2],[[35,9]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[[34,9]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,2],[[35,8]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,8]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[[32,2]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[2]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"span\\\"],[14,0,\\\"table-view-options\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[[34,4]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,7],[[30,[36,6],[[30,[36,6],[[35,5]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"          \\\"],[11,\\\"a\\\"],[16,0,[30,[36,2],[[30,[36,1],[[32,1],[35,0]],null],\\\"is-active\\\"],null]],[4,[38,3],[[32,0],\\\"switchSelectedView\\\",[32,1]],null],[12],[1,[32,1]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[2,\\\"      \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,2],[[35,12]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[14,0,\\\"table-loading-overlay\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"loading-animation\\\",[],[[\\\"@className\\\"],[\\\"centered\\\"]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[18,3,null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"selectedView\\\",\\\"eq\\\",\\\"if\\\",\\\"action\\\",\\\"optionsHoverText\\\",\\\"viewOptions\\\",\\\"-track-array\\\",\\\"each\\\",\\\"hoverIcons\\\",\\\"hoverText\\\",\\\"helpModalAction\\\",\\\"label\\\",\\\"isLoading\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/table-wrapper.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/validated-date-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"dkLYuwcB\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"field \\\",[30,[36,1],[[35,4],[30,[36,1],[[35,0],\\\"error\\\"],null]],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[15,\\\"for\\\",[34,2]],[12],[1,[34,3]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[8,\\\"pikaday-input\\\",[],[[\\\"@value\\\",\\\"@onSelection\\\",\\\"@format\\\",\\\"@placeholder\\\",\\\"@useUTC\\\"],[[34,5],[34,6],\\\"MM/DD/YYYY\\\",\\\"mm/dd/yyyy\\\",true]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"error\\\",\\\"if\\\",\\\"name\\\",\\\"label\\\",\\\"showError\\\",\\\"value\\\",\\\"onSelection\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/validated-date-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/validated-phone-number-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"CvUw3bmn\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"field \\\",[30,[36,1],[[35,5],[30,[36,1],[[35,0],\\\"error\\\"],null]],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[15,0,[34,4]],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[15,\\\"for\\\",[34,2]],[12],[1,[34,3]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[8,\\\"masked-input\\\",[],[[\\\"@mask\\\",\\\"@class\\\",\\\"@guide\\\",\\\"@disabled\\\",\\\"@name\\\",\\\"@required\\\",\\\"@placeholder\\\",\\\"@value\\\"],[[34,6],[34,7],false,[34,8],[34,2],\\\"true\\\",\\\"(000) 000-0000\\\",[34,9]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[18,1,null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"error\\\",\\\"if\\\",\\\"name\\\",\\\"label\\\",\\\"icon\\\",\\\"showError\\\",\\\"mask\\\",\\\"class\\\",\\\"disabled\\\",\\\"value\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/validated-phone-number-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/validated-text-input\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"fke4W04A\",\n    \"block\": \"{\\\"symbols\\\":[\\\"&default\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[15,0,[31,[\\\"field \\\",[30,[36,1],[[35,6],[35,6]],null],\\\" \\\",[30,[36,1],[[35,5],[30,[36,1],[[35,0],\\\"error\\\"],null]],null]]]],[12],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,4]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"div\\\"],[15,0,[34,4]],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[6,[37,1],[[35,3]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[10,\\\"label\\\"],[15,\\\"for\\\",[34,2]],[12],[1,[34,3]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[8,\\\"input\\\",[[16,0,[34,8]],[24,\\\"required\\\",\\\"true\\\"],[16,\\\"placeholder\\\",[34,12]]],[[\\\"@focus-in\\\",\\\"@disabled\\\",\\\"@maxlength\\\",\\\"@name\\\",\\\"@type\\\",\\\"@value\\\"],[[34,7],[34,9],[34,10],[34,2],[34,11],[34,13]]],null],[2,\\\"\\\\n\\\"],[6,[37,1],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"      \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"parameters\\\":[]}]]],[2,\\\"  \\\"],[18,1,null],[2,\\\"\\\\n\\\"],[13]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"error\\\",\\\"if\\\",\\\"name\\\",\\\"label\\\",\\\"icon\\\",\\\"showError\\\",\\\"fieldClass\\\",\\\"focusIn\\\",\\\"class\\\",\\\"disabled\\\",\\\"maxlength\\\",\\\"type\\\",\\\"placeholder\\\",\\\"value\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/validated-text-input.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/components/value-or-not-provided\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"VlooxBVS\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[6,[37,1],[[35,0]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"p\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"  \\\"],[10,\\\"p\\\"],[12],[2,\\\"Not Provided\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"value\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/components/value-or-not-provided.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/export-investigators/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"Ph215vSZ\",\n    \"block\": \"{\\\"symbols\\\":[\\\"m\\\"],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container app investigator-plans\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,3],[[30,[36,2],[[30,[36,2],[[35,1]],null]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"    \\\"],[8,\\\"investigator-plan\\\",[],[[\\\"@store\\\",\\\"@model\\\",\\\"@props\\\"],[[34,0],[32,1,[\\\"model\\\"]],[32,1,[\\\"props\\\"]]]],null],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"page-break\\\"],[14,5,\\\"page-break-after: always; page-break-inside: avoid;\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[1]}]]],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"store\\\",\\\"model\\\",\\\"-track-array\\\",\\\"each\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/export-investigators/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/export-investigators/loading\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"rDtuJabY\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"app container investigator-plans-loading\\\"],[12],[2,\\\"\\\\n  \\\"],[8,\\\"loading-animation\\\",[],[[],[]],null],[2,\\\"\\\\n  \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Loading...\\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"p\\\"],[12],[2,\\\"This may take a few minutes. Please do not refresh the page\\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/export-investigators/loading.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/forgot-password-success\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"dbG0o6Cq\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"We just sent you an email with a link to reset your password. Follow the link to reset your password and login.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@id\\\"],[\\\"forgot-password\\\",\\\"forgot-password\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Send another email\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,1],[[35,0],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/forgot-password-success.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/forgot-password\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"20o/S+m8\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Forgot your password? Don't worry, just enter your email and we'll send you a link to reset your password.\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"email\\\",\\\"text\\\",\\\"Email\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"email\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Submit\\\",[30,[36,3],[[32,0],\\\"submitButtonPressed\\\"],null]]],null],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,4]]],null],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@id\\\"],[\\\"login\\\",\\\"login\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Go to back login\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,6],[[35,5],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"email\\\",\\\"validations\\\",\\\"showError\\\",\\\"action\\\",\\\"errors\\\",\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/forgot-password.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/index\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"JH/yUAS+\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"landing-page\\\"],[12],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"green-bg-wrapper\\\"],[12],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"hero\\\"],[14,1,\\\"hero\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"top-buttons\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\"],[\\\"login\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"button\\\"],[12],[2,\\\"Login\\\"],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"sticky-element\\\",[],[[],[]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"sticky-nav\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"row start-xs\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-3 col-sm-6\\\"],[12],[2,\\\"\\\\n                  \\\"],[8,\\\"scroll-to\\\",[],[[\\\"@target\\\"],[\\\"#hero\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"logo--horizontal\\\"],[12],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-9 col-sm-6\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"div\\\"],[14,0,\\\"nav-text\\\"],[12],[2,\\\"\\\\n                    \\\"],[8,\\\"scroll-to\\\",[],[[\\\"@target\\\"],[\\\"#demo\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"button\\\"],[12],[2,\\\"Schedule a Demo\\\"],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n                  \\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs hero-text\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-12 col-md-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Business Intelligence for\\\"],[10,\\\"br\\\"],[12],[13],[2,\\\" Research Universities\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"ul\\\"],[14,0,\\\"hero-subhead\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Instant\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Intuitive\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Indispensable\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"scroll-to\\\",[],[[\\\"@target\\\"],[\\\"#demo\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"button\\\"],[14,0,\\\"white\\\"],[12],[2,\\\"Request a Demo\\\"],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"value-section\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-sm start-md\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10 col-md-6 col-md-offset-1\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Data-driven forecasting, strategic and financial planning, and performance assessment for…\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"overlapping-cards-wrapper\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card overlap\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/admin.png\\\"],[14,\\\"alt\\\",\\\"Deans, CFOs and Other Administrators\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Deans, CFOs and other Central Administrators:\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Will we make budget for indirects this year and what should we set as the budget for next year?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"What projections should we use for long range planning?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"What would it take to increase research volumes by 10%?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"How might the $41.7 billion 2020 NIH budget affect our research volumes?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"How should we allocate funds available for program development?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"And more...\\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"overlapping-cards-wrapper overlap-left\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card overlap\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/dept-chair.png\\\"],[14,\\\"alt\\\",\\\"Department Chairs and Administrators\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Department Chairs and Administrators:\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Which investigators in my department are at risk of a lapse or serious decline in funding?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Is our lab space assigned properly?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Does a faculty member’s research performance and potential help make the case for promotion?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Should we recommend a retention package or provide bridge funding?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"How can I set the department's research budget for next year with confidence?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"And more...\\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"overlapping-cards-wrapper\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card overlap\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/investigator.png\\\"],[14,\\\"alt\\\",\\\"Investigators\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Investigators:\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"What do I have to do to maintain or increase funding for my lab over the next three to five years?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Will I be able to meet compensation coverage commitments?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"How am I performing relative to my peers?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"Can I make a compelling case for additional lab space?\\\"],[13],[2,\\\"\\\\n                  \\\"],[10,\\\"li\\\"],[12],[2,\\\"And more...\\\"],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"methods\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-10\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"overlapping-cards-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Built on systems and methods developed for and exhaustively tested at six  major research universities\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/divider.svg\\\"],[14,0,\\\"divider\\\"],[14,\\\"alt\\\",\\\"Divider\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Huron Analytics is built upon the patented econometric systems and methods that powered The Shulman Solution, a forecasting model that was deployed, extensively developed and exhaustively tested at six major research universities over the past decade. Huron Analytics leverages the insights and expertise gained from The Shulman Solution over the last decade and is now offered as a software as a service.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"Huron Analytics provides  needed business intelligence instantly, accurately, and at a fraction of the cost it would take to gather and analyze similar data in house on an ad hoc basis.\\\"],[13],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card overlap\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"bold\\\"],[12],[2,\\\"Active Clients:\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Geisel School of Medicine at Dartmouth since 2008\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"New York University Medical Center since 2009\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"University of Maryland at Baltimore since 2010\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Kansas University Center for Research since 2011\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Yale School of Medicine since 2015\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Yale University since 2016\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Brown University Division of Biology and Medicine since 2017\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"Brown University since 2018\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"New York University since 2019\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"li\\\"],[12],[2,\\\"University of Florida Jacksonville College of Medicine since 2019\\\"],[13],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"features\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-sm\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Developed for institutions of all sizes and types of research portfolios\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"The technology has been proven equally effective for small, mid-size and large portfolios. Huron Analytics clients have research portfolios that range in size from $60 million annually to $600 million.\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"The technology has been proven equally effective for institutions that are predominantly engaged in biomedical research and institutions where biomedical research is part of a more diverse portfolio. \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-sm\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Secure, intuitive business intelligence wherever and whenever you need it\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-sm\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-3\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/lock-icon.svg\\\"],[14,\\\"alt\\\",\\\"Lock\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Reliable & Secure\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Industry-standard security and data integrity ensure your data is accurate, reliable, and secure.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"SAML2 compatible \\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Multi-factor Authentication available\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-3\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/check-icon.svg\\\"],[14,\\\"alt\\\",\\\"Check\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Easy Implementation\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Huron Analytics is easy to implement and administer, with minimal training required for application administrators.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"A user-friendly and easy-to-navigate interface makes connecting the dots intuitive for every user.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-3\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"img\\\"],[14,\\\"src\\\",\\\"/img/landing-page/devices-icon.svg\\\"],[14,\\\"alt\\\",\\\"Devices\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Always Accessible\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"ul\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Access the highly-secure web-based application anywhere with any laptop, desktop, or tablet.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"li\\\"],[12],[2,\\\"Export exhibits to include in any report.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n  \\\"],[10,\\\"footer\\\"],[14,1,\\\"demo\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row between-sm\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-4\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Request a Demo\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"Fill out the form to preview Financial Forecasting Tool.\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"h3\\\"],[12],[2,\\\"Contact Us\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[12],[2,\\\"If you have any questions, please contact support at \\\"],[10,\\\"a\\\"],[14,6,\\\"mailto:HRAsupport@huronconsultinggroup.com\\\"],[12],[2,\\\"HRAsupport@huronconsultinggroup.com\\\"],[13],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12 col-sm-6\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"card form\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"iframe\\\"],[14,0,\\\"airtable-embed\\\"],[15,\\\"src\\\",[34,0]],[14,\\\"frameborder\\\",\\\"0\\\"],[14,\\\"onmousewheel\\\",\\\"\\\"],[14,\\\"width\\\",\\\"100%\\\"],[14,\\\"height\\\",\\\"533\\\"],[14,5,\\\"background: transparent; border: 1px solid #ccc;\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"scroll-to\\\",[],[[\\\"@target\\\"],[\\\"#hero\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Back to top\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"airtableSrc\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/index.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/login\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"98/BGwyN\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n\\\"],[6,[37,6],[[35,14]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Multi-Factor Authentication\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"We just sent a verification code to your phone number. Enter that code to finish logging in.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n                \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"verificationCode\\\",\\\"Verification Code\\\",\\\"text\\\",\\\"Verification Code\\\",[34,13],[34,3,[\\\"attrs\\\",\\\"verificationCode\\\",\\\"message\\\"]],[34,4]]],null],[2,\\\"\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Submit\\\",[30,[36,1],[[32,0],\\\"submitButtonPressed\\\"],null]]],null],[2,\\\"\\\\n              \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,10]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"        \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n              \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"centered\\\"],[12],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,5]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                    Enter your email to sign in.\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"                \\\"],[13],[2,\\\"\\\\n                \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@disabled\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"email\\\",\\\"Email\\\",\\\"text\\\",\\\"Email\\\",[34,7],[30,[36,8],[[35,5]],null],[34,3,[\\\"attrs\\\",\\\"email\\\",\\\"message\\\"]],[34,4]]],null],[2,\\\"\\\\n\\\"],[6,[37,6],[[30,[36,8],[[35,5]],null]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                  \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"password\\\",\\\"Password\\\",\\\"password\\\",\\\"Password\\\",[34,2],[34,3,[\\\"attrs\\\",\\\"password\\\",\\\"message\\\"]],[34,4]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n                    \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@id\\\"],[\\\"forgot-password\\\",\\\"forgot-password\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Forgot your password?\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n                  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[13],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,5]],null,[[\\\"default\\\",\\\"else\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Continue\\\",[30,[36,1],[[32,0],\\\"clickedContinue\\\"],null]]],null],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]},{\\\"statements\\\":[[2,\\\"                \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Login\\\",[30,[36,1],[[32,0],\\\"loginButtonPressed\\\"],null]]],null],[2,\\\"\\\\n                \\\"],[11,\\\"a\\\"],[24,6,\\\"#\\\"],[4,[38,1],[[32,0],\\\"clickedBackToEmail\\\"],null],[12],[2,\\\"< Back\\\"],[13],[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[6,[37,6],[[35,0]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"                \\\"],[10,\\\"div\\\"],[14,0,\\\"error-message\\\"],[12],[2,\\\"\\\\n                  \\\"],[10,\\\"p\\\"],[12],[1,[34,0]],[13],[2,\\\"\\\\n                \\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"              \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,9]]],null],[2,\\\"\\\\n              \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,10]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n\\\\n        \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,12],[[35,11],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"samlError\\\",\\\"action\\\",\\\"password\\\",\\\"validations\\\",\\\"showError\\\",\\\"emailStep\\\",\\\"if\\\",\\\"email\\\",\\\"not\\\",\\\"samlErrors\\\",\\\"errors\\\",\\\"now\\\",\\\"moment-format\\\",\\\"verificationCode\\\",\\\"needsToVerify\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/login.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/mfa-setup\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"NlNyGGJ5\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/mfa-setup.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/mfa-setup/request-verification\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"n9Fjm46Y\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Multi-Factor Authentication\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Your institution requires all users to use multi-factor authentication. This is a much more secure way to login, and will require your email, password, and a verification code sent to your mobile phone.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[10,\\\"strong\\\"],[12],[2,\\\"To set up multi-factor authentication\\\"],[13],[2,\\\", enter your mobile phone number below. We'll text you with a verification code that you'll enter on the next screen, then you'll be all set.\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"validated-phone-number-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"phoneNumber\\\",\\\"Phone Number\\\",\\\"Phone Number\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"phoneNumber\\\",\\\"message\\\"]],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n                \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Enter your 10-digit phone number, including area code\\\"],[13],[2,\\\"\\\\n              \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Continue\\\",[30,[36,3],[[32,0],\\\"requestVerification\\\"],null]]],null],[2,\\\"\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Logout\\\",[30,[36,3],[[32,0],\\\"logout\\\"],null]]],null],[2,\\\"\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,4]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"phoneNumber\\\",\\\"validations\\\",\\\"showError\\\",\\\"action\\\",\\\"errors\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/mfa-setup/request-verification.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/mfa-setup/success\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"n0xdE3uq\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Success!\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Multi-factor authentication is now enabled for your account. Next time you login to Huron Analytics, you'll be asked to enter a verification code that is sent to your phone number.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[11,\\\"button\\\"],[24,0,\\\"btn-primary\\\"],[4,[38,0],[[32,0],\\\"goToApp\\\"],null],[12],[2,\\\"Continue to Huron Analytics\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/mfa-setup/success.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/mfa-setup/verify\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"KCY6svR4\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Multi-Factor Authentication\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"We just sent a verification code to your phone number. Enter that code to finish setting up multi-factor authentication.\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"verificationCode\\\",\\\"Verification Code\\\",\\\"text\\\",\\\"Verification Code\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"mfaCode\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Submit\\\",[30,[36,3],[[32,0],\\\"verify\\\"],null]]],null],[2,\\\"\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,4]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"mfaCode\\\",\\\"validations\\\",\\\"showError\\\",\\\"action\\\",\\\"errors\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/mfa-setup/verify.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/reset-password-success\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UaORSjwF\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"We’ve just updated your password. Now you’ll be able to login with your new password.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@id\\\"],[\\\"login\\\",\\\"login\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n              \\\"],[10,\\\"button\\\"],[12],[2,\\\"Go to login\\\"],[13],[2,\\\"\\\\n            \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,1],[[35,0],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/reset-password-success.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/reset-password\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"E9r0b6ar\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Enter and confirm your new password.\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Must be at least 8 characters and contain at least 1 special character.\\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"password\\\",\\\"password\\\",\\\"New Password\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"password\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"confirmPassword\\\",\\\"password\\\",\\\"Confirm Password\\\",[34,3],[34,1,[\\\"attrs\\\",\\\"confirmPassword\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Save\\\",[30,[36,4],[[32,0],\\\"saveButtonPressed\\\"],null]]],null],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,5]]],null],[2,\\\"\\\\n\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\",\\\"@id\\\"],[\\\"login\\\",\\\"login\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"Go to back login\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,7],[[35,6],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"password\\\",\\\"validations\\\",\\\"showError\\\",\\\"confirmPassword\\\",\\\"action\\\",\\\"errors\\\",\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/reset-password.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/saml-complete\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"oIClm25v\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[],\\\"hasEval\\\":false,\\\"upvars\\\":[]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/saml-complete.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/saml-error\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"kUqGaVaP\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Email Not Found\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"Sorry, the email you used to login has not been registered for your institution's Huron Analytics account. Please contact your administrator to make sure that your email is added.\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"link-to\\\",[],[[\\\"@route\\\"],[\\\"login\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[10,\\\"button\\\"],[14,0,\\\"btn-primary\\\"],[12],[2,\\\"Return to login\\\"],[13]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,1],[[35,0],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/saml-error.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/sandbox\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"SrLkglEx\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"navbar\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--horizontal\\\"],[12],[13],[2,\\\"\\\\n    \\\"],[10,\\\"nav\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"Projections\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"Departments\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"Users\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"span\\\"],[12],[2,\\\"Data Import\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"right-nav\\\"],[12],[2,\\\"\\\\n      Steve Shulman\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"data-update\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[14,0,\\\"light\\\"],[12],[2,\\\"Last updated November 30, 2017\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"a\\\"],[14,6,\\\"#\\\"],[12],[2,\\\"Import Data\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"navbar-secondary\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"a\\\"],[14,6,\\\"#\\\"],[12],[2,\\\"All Departments\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"divider\\\"],[12],[2,\\\" > \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"span\\\"],[14,0,\\\"nav-item\\\"],[12],[2,\\\"Medicine\\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"container\\\"],[12],[2,\\\"\\\\n\\\\n\\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-6\\\"],[12],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h1\\\"],[12],[2,\\\"Sandbox\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"p\\\"],[14,0,\\\"light\\\"],[12],[2,\\\"This is a text of the sandbox\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Hover for a surprise ;) \\\"],[8,\\\"help-icon\\\",[],[[\\\"@hoverText\\\"],[\\\"I am the surprise, hehehe :D\\\"]],null],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Buttons\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"button\\\"],[12],[2,\\\"Primary Button\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"button\\\"],[14,0,\\\"secondary\\\"],[12],[2,\\\"Secondary Button\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"button\\\"],[14,0,\\\"small\\\"],[12],[2,\\\"Small Button\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"button\\\"],[14,0,\\\"secondary small\\\"],[12],[2,\\\"Secondary Button\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Async Button\\\",[30,[36,0],[[32,0],\\\"submitAsyncButton\\\"],null]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Text Fields\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"input\\\",[[24,\\\"placeholder\\\",\\\"Text Field...\\\"]],[[\\\"@name\\\",\\\"@type\\\"],[\\\"sampleInput\\\",\\\"text\\\"]],null],[2,\\\"\\\\n          \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@type\\\"],[\\\"email\\\",\\\"Email\\\",\\\"Email...\\\",\\\"email\\\"]],null],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"field error\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[14,\\\"for\\\",\\\"email\\\"],[12],[2,\\\"Email\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"input\\\",[[24,\\\"required\\\",\\\"true\\\"],[24,\\\"placeholder\\\",\\\"Email...\\\"]],[[\\\"@name\\\",\\\"@type\\\",\\\"@value\\\"],[\\\"email\\\",\\\"text\\\",\\\"email#gmailcom\\\"]],null],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"That doesn't look like a properly formatted email. Try again!\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Cards\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"This is a card\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"Cards are pretty cool, especially this one. It's extra cool\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"button\\\"],[12],[2,\\\"Why not a button?\\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Dropdowns\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\"],[[34,1]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"select-dropdown\\\",[],[[\\\"@options\\\",\\\"@selectClass\\\"],[[34,1],\\\"small\\\"]],null],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Slider\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"slider\\\"],[12],[2,\\\"\\\\n              \\\"],[8,\\\"slider-input\\\",[],[[\\\"@max\\\",\\\"@step\\\",\\\"@value\\\"],[[34,2],1,[34,3]]],null],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[1,[34,3]],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"section\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n            \\\"],[8,\\\"ember-chart\\\",[],[[\\\"@type\\\",\\\"@data\\\",\\\"@options\\\",\\\"@height\\\"],[\\\"bar\\\",[34,4],[34,5],100]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Multi-Option Select\\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"multi-option-select-wrapper\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"label\\\"],[12],[2,\\\"Lookback:\\\"],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"multi-option-select\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[12],[2,\\\"1yr\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[12],[2,\\\"2yrs\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[14,0,\\\"active\\\"],[12],[2,\\\"3yrs\\\"],[13],[2,\\\"\\\\n              \\\"],[10,\\\"span\\\"],[12],[2,\\\"4yrs\\\"],[13],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n          \\\"],[10,\\\"br\\\"],[12],[13],[2,\\\"\\\\n          \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@label\\\",\\\"@options\\\"],[\\\"Grant Type\\\",[34,6]]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"row\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Modals\\\"],[13],[2,\\\"\\\\n          \\\"],[11,\\\"button\\\"],[4,[38,0],[[32,0],\\\"toggleModal\\\"],null],[12],[2,\\\"Launch Modal\\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"table-wrapper\\\",[],[[\\\"@label\\\"],[\\\"PTS By Department\\\"]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"table-controls\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"span\\\"],[12],[2,\\\"Highlight Thresholds\\\"],[13],[2,\\\"\\\\n          \\\"],[8,\\\"multi-option-select\\\",[],[[\\\"@label\\\",\\\"@options\\\"],[\\\"Grant Type\\\",[34,6]]],null],[2,\\\"\\\\n\\\\n          \\\"],[8,\\\"percent-text-input\\\",[],[[\\\"@label\\\"],[\\\"New term decline\\\"]],null],[2,\\\"\\\\n\\\\n          \\\"],[8,\\\"money-text-input\\\",[],[[\\\"@label\\\"],[\\\"Directs Change\\\"]],null],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n        \\\"],[8,\\\"table-potential-to-spend\\\",[],[[\\\"@model\\\",\\\"@extra\\\"],[[34,7],[34,8]]],null],[2,\\\"\\\\n      \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-12\\\"],[12],[2,\\\"\\\\n      \\\"],[8,\\\"departments-summary-cards\\\",[],[[\\\"@model\\\"],[[34,9]]],null],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\\n\\\\n\\\"],[6,[37,11],[[35,10]],null,[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"  \\\"],[8,\\\"modal-wrapper\\\",[],[[\\\"@close\\\"],[[30,[36,0],[[32,0],\\\"toggleModal\\\"],null]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n    \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Hello There\\\"],[13],[2,\\\"\\\\n    \\\"],[10,\\\"p\\\"],[12],[2,\\\"Welcome to my modal\\\"],[13],[2,\\\"\\\\n  \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n\\\"],[10,\\\"div\\\"],[14,1,\\\"destination\\\"],[12],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"action\\\",\\\"grantTypeOptions\\\",\\\"maxValue\\\",\\\"sliderValue\\\",\\\"chartData\\\",\\\"chartOptions\\\",\\\"options\\\",\\\"ptsTableModel\\\",\\\"ptsTableExtra\\\",\\\"summaryCardModel\\\",\\\"isShowingModal\\\",\\\"if\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/sandbox.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/signup\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"+kk5Ki0j\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[10,\\\"div\\\"],[14,0,\\\"container authentication\\\"],[12],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"div\\\"],[14,0,\\\"card\\\"],[12],[2,\\\"\\\\n        \\\"],[10,\\\"div\\\"],[14,0,\\\"row center-xs\\\"],[12],[2,\\\"\\\\n          \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-8\\\"],[12],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"logo--stacked\\\"],[12],[13],[2,\\\"\\\\n            \\\"],[10,\\\"div\\\"],[14,0,\\\"card-content\\\"],[12],[2,\\\"\\\\n              \\\"],[10,\\\"p\\\"],[12],[2,\\\"\\\\n                Welcome to Huron Analytics! To get started, enter your name and create a password. Your password must\\\\n              be at least 8 characters and contains at least 1 special character.\\\\n              \\\"],[13],[2,\\\"\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"firstName\\\",\\\"First Name\\\",\\\"First name...\\\",[34,0],[34,1,[\\\"attrs\\\",\\\"firstName\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"lastName\\\",\\\"Last Name\\\",\\\"Last name...\\\",[34,3],[34,1,[\\\"attrs\\\",\\\"lastName\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"password\\\",\\\"Password\\\",\\\"password\\\",\\\"Password\\\",[34,4],[34,1,[\\\"attrs\\\",\\\"password\\\",\\\"message\\\"]],[34,2]]],null],[2,\\\"\\\\n\\\\n              \\\"],[8,\\\"validated-text-input\\\",[],[[\\\"@name\\\",\\\"@label\\\",\\\"@type\\\",\\\"@placeholder\\\",\\\"@value\\\",\\\"@error\\\",\\\"@showError\\\"],[\\\"password\\\",\\\"Confirm Password\\\",\\\"password\\\",\\\"Confirm your password...\\\",[34,5],[34,1,[\\\"attrs\\\",\\\"confirmPassword\\\",\\\"message\\\"]],[34,2]]],[[\\\"default\\\"],[{\\\"statements\\\":[[2,\\\"\\\\n              \\\"]],\\\"parameters\\\":[]}]]],[2,\\\"\\\\n            \\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"async-button\\\",[],[[\\\"@label\\\",\\\"@submitAction\\\"],[\\\"Register\\\",[30,[36,6],[[32,0],\\\"registerButtonPressed\\\"],null]]],null],[2,\\\"\\\\n            \\\"],[10,\\\"p\\\"],[12],[2,\\\"By registering, you are agreeing to the Huron Analytics terms of service displayed below.\\\"],[13],[2,\\\"\\\\n            \\\"],[8,\\\"error-message\\\",[],[[\\\"@errors\\\"],[[34,7]]],null],[2,\\\"\\\\n          \\\"],[13],[2,\\\"\\\\n        \\\"],[13],[2,\\\"\\\\n      \\\"],[13],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"© 2007 - \\\"],[1,[30,[36,9],[[35,8],\\\"YYYY\\\"],null]],[2,\\\" U.S. Patent 8,271,372\\\"],[13],[2,\\\"\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n  \\\"],[10,\\\"div\\\"],[14,0,\\\"row around-xs\\\"],[12],[2,\\\"\\\\n    \\\"],[10,\\\"div\\\"],[14,0,\\\"col-xs-10 col-sm-6\\\"],[12],[2,\\\"\\\\n\\\\n      \\\"],[10,\\\"h2\\\"],[12],[2,\\\"Huron Analytics Terms of Service\\\"],[13],[2,\\\"\\\\n      \\\"],[10,\\\"p\\\"],[12],[2,\\\"Your institution has subscribed to Huron Analytics and, among other things, that subscription states that information uploaded to Huron Analytics and shared with registered users is to be treated as privileged and confidential.  By registering, you agree to treat the content of Huron Analytics as confidential and protected information pursuant to both this registration agreement and any confidentiality agreement that might already be in place between you and your employer, you acknowledge that Huron Analytics is patent and copyright protected, and you agree not to share your access and pass codes to Huron Analytics with any other individual.\\\"],[13],[2,\\\"\\\\n\\\\n    \\\"],[13],[2,\\\"\\\\n  \\\"],[13],[2,\\\"\\\\n\\\"],[13],[2,\\\"\\\\n\\\"]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"firstName\\\",\\\"validations\\\",\\\"showError\\\",\\\"lastName\\\",\\\"password\\\",\\\"confirmPassword\\\",\\\"action\\\",\\\"errors\\\",\\\"now\\\",\\\"moment-format\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/signup.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/templates/welcome\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = Ember.HTMLBars.template({\n    \"id\": \"UYmuwEr+\",\n    \"block\": \"{\\\"symbols\\\":[],\\\"statements\\\":[[1,[30,[36,1],[[30,[36,0],null,null]],null]]],\\\"hasEval\\\":false,\\\"upvars\\\":[\\\"-outlet\\\",\\\"component\\\"]}\",\n    \"meta\": {\n      \"moduleName\": \"b3i-analytics-web-app/templates/welcome.hbs\"\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/boolean\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _private.BooleanTransform;\n    }\n  });\n});","define(\"b3i-analytics-web-app/transforms/date-only\", [\"exports\", \"@ember-data/serializer/transform\", \"moment\"], function (_exports, _transform, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _transform.default.extend({\n    deserialize: function deserialize(serialized) {\n      if (!serialized) {\n        return null;\n      }\n\n      return (0, _moment.default)(serialized).format('MM/DD/YYYY');\n    },\n    serialize: function serialize(deserialized) {\n      if (!deserialized) {\n        return null;\n      }\n\n      return (0, _moment.default)(deserialized).format('YYYY-MM-DD');\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/date\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _private.DateTransform;\n    }\n  });\n});","define(\"b3i-analytics-web-app/transforms/jsonstring\", [\"exports\", \"@ember-data/serializer/transform\"], function (_exports, _transform) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _transform.default.extend({\n    deserialize: function deserialize(serialized) {\n      return JSON.parse(serialized);\n    },\n    serialize: function serialize(deserialized) {\n      return JSON.stringify(deserialized);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/millions\", [\"exports\", \"@ember-data/serializer/transform\"], function (_exports, _transform) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _transform.default.extend({\n    deserialize: function deserialize(serialized) {\n      return serialized / 1000000;\n    },\n    serialize: function serialize(deserialized) {\n      return deserialized * 1000000;\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/number-not-null\", [\"exports\", \"ember-data\"], function (_exports, _emberData) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _emberData.default.NumberTransform.extend({\n    serialize: function serialize(deserialized) {\n      var transformed;\n\n      if (Ember.isEmpty(deserialized)) {\n        return 0;\n      } else {\n        transformed = Number(deserialized);\n        return !isNaN(transformed) ? transformed : null;\n      }\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/number\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _private.NumberTransform;\n    }\n  });\n});","define(\"b3i-analytics-web-app/transforms/percent\", [\"exports\", \"@ember-data/serializer/transform\"], function (_exports, _transform) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  var _default = _transform.default.extend({\n    deserialize: function deserialize(serialized) {\n      if (serialized != null) {\n        return (serialized * 100).toFixed(1);\n      } else {\n        return serialized;\n      }\n    },\n    serialize: function serialize(deserialized) {\n      return deserialized / 100;\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/transforms/string\", [\"exports\", \"@ember-data/serializer/-private\"], function (_exports, _private) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _private.StringTransform;\n    }\n  });\n});","define(\"b3i-analytics-web-app/transforms/utc\", [\"exports\", \"@ember-data/serializer/transform\", \"moment\"], function (_exports, _transform, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n\n  //http://blog.skylight.io/bringing-sanity-to-javascript-utc-dates-with-moment-js-and-ember-data/\n  var _default = _transform.default.extend({\n    serialize: function serialize(value) {\n      return value ? (0, _moment.default)(value).format(\"YYYY-MM-DD\") : null;\n    },\n    deserialize: function deserialize(value) {\n      if (!value) {\n        return null;\n      }\n\n      return _moment.default.utc(value);\n    }\n  });\n\n  _exports.default = _default;\n});","define(\"b3i-analytics-web-app/utils/airtable-content-from-route\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = airtableContentFromRoute;\n\n  function airtableContentFromRoute(content, routesArray, currentRoute) {\n    var routePageOptions = routesArray;\n    var filteredContent = [];\n    routePageOptions.filter(function (option) {\n      return currentRoute.includes(option.route);\n    }).map(function (option) {\n      if (currentRoute && currentRoute.includes(option.route) && !currentRoute.includes(option.excludeRoute)) {\n        filteredContent = content[option.page];\n      } else {\n        filteredContent = null;\n      }\n    });\n    return filteredContent;\n  }\n});","define(\"b3i-analytics-web-app/utils/calculate-position\", [\"exports\", \"ember-basic-dropdown/utils/calculate-position\"], function (_exports, _calculatePosition) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _calculatePosition.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/utils/cell-link-data\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = cellLinkData;\n\n  function cellLinkData(id, name, modelName) {\n    var link = '#';\n\n    if (modelName === 'department') {\n      link = 'app.departments.department';\n    } else if (modelName === 'principal-investigator') {\n      link = 'app.departments.principal-investigator';\n    }\n\n    return {\n      id: id,\n      name: name,\n      link: link\n    };\n  }\n});","define(\"b3i-analytics-web-app/utils/convert-to-fiscal-month\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = convertToFiscalMonth;\n\n  function convertToFiscalMonth(month, fiscalStartMonth) {\n    if (month >= fiscalStartMonth) {\n      return month - (fiscalStartMonth - 1);\n    } else {\n      return 12 - (fiscalStartMonth - month - 1);\n    }\n  }\n});","define(\"b3i-analytics-web-app/utils/display-value-from-new-value-sponsors\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = displayValueFromNewValueSponsors;\n\n  function displayValueFromNewValueSponsors(newValue, sponsors) {\n    if (!sponsors) {\n      return newValue;\n    }\n\n    var sponsor = sponsors.filterBy('newValue', newValue);\n\n    if (sponsor.length === 0) {\n      return newValue;\n    } else {\n      var displayValue = sponsor[0].displayValue;\n\n      if (!displayValue) {\n        return sponsor[0].newValue;\n      }\n\n      return displayValue;\n    }\n  }\n});","define(\"b3i-analytics-web-app/utils/display-value-from-sponsors\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = displayValueFromSponsors;\n\n  function displayValueFromSponsors(originalValue, sponsors) {\n    if (!sponsors) {\n      return originalValue;\n    }\n\n    var sponsor = sponsors.filterBy('originalValue', originalValue);\n\n    if (sponsor.length === 0) {\n      return originalValue;\n    } else {\n      var displayValue = sponsor[0].displayValue;\n\n      if (!displayValue) {\n        return sponsor[0].newValue;\n      }\n\n      return displayValue;\n    }\n  }\n});","define(\"b3i-analytics-web-app/utils/format-m-currency\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = formatMCurrency;\n\n  function formatMCurrency(number) {\n    if (number || number === 0) {\n      var value = number / 1000;\n      return value.toFixed(1);\n    }\n\n    return null;\n  }\n});","define(\"b3i-analytics-web-app/utils/format-mm-currency\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = formatMmCurrency;\n\n  function formatMmCurrency(number) {\n    if (number || number === 0) {\n      var value = number / 1000000;\n      return value.toFixed(1);\n    }\n\n    return null;\n  }\n});","define(\"b3i-analytics-web-app/utils/format-percentage\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = formatPercentage;\n\n  function formatPercentage(percentage, precision) {\n    if (percentage || percentage === 0) {\n      if (isNaN(percentage)) {\n        return percentage;\n      } else {\n        var value = percentage * 100;\n        return value.toFixed(precision ? precision : 0);\n      }\n    }\n\n    return null;\n  }\n});","define(\"b3i-analytics-web-app/utils/future-mega-projection\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = futureMegaProjection;\n\n  function futureMegaProjection(yearsAhead, isDirects, team) {\n    var futureProjection = 0;\n    var currentYear = isDirects ? team.get('megaGrantFutureCurrentYearDirects') : team.get('megaGrantFutureCurrentYearIndirects');\n    var oneYearAhead = isDirects ? team.get('megaGrantFutureOneYearAheadDirects') : team.get('megaGrantFutureOneYearAheadIndirects');\n\n    switch (yearsAhead) {\n      case 0:\n        futureProjection += currentYear / 2;\n        break;\n\n      case 1:\n        futureProjection += currentYear;\n        futureProjection += oneYearAhead / 2;\n        break;\n\n      default:\n        // Assume mega grants renew indefinitely\n        futureProjection += currentYear + oneYearAhead;\n    } //Ammoritze the mega grants over 5 years\n\n\n    futureProjection = futureProjection / 5;\n    return futureProjection;\n  }\n});","define(\"b3i-analytics-web-app/utils/highlight-pts-cells\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = highlightPtsCells;\n\n  function highlightPtsCells(rows, extra, includePlanPts) {\n    var currentYearDirectsKey = includePlanPts ? 'ptsWithPlanCurrentYearDirects' : 'ptsCurrentYearDirects';\n    var currentYearIndirectsKey = includePlanPts ? 'ptsWithPlanCurrentYearIndirects' : 'ptsCurrentYearIndirects';\n    var oneYearAheadDirectsKey = includePlanPts ? 'ptsWithPlanOneYearAheadDirects' : 'ptsOneYearAheadDirects';\n    var oneYearAheadIndirectsKey = includePlanPts ? 'ptsWithPlanOneYearAheadIndirects' : 'ptsOneYearAheadIndirects';\n    var twoYearsAheadDirectsKey = includePlanPts ? 'ptsWithPlanTwoYearsAheadDirects' : 'ptsTwoYearsAheadDirects';\n    var twoYearsAheadIndirectsKey = includePlanPts ? 'ptsWithPlanTwoYearsAheadIndirects' : 'ptsTwoYearsAheadIndirects';\n    var declineMultiplier = 1.0 - extra / 100;\n    var gainMultiplier = 1.0 + extra / 100;\n    rows.forEach(function (row) {\n      row.set('classNames', ['']);\n      var content = row.content; //Decline\n      // Current Year\n\n      var directsDeclineCurrentFY = content.get(currentYearDirectsKey) < declineMultiplier * content.get('actualsOneYearAgoDirects');\n      var indirectsDeclineCurrentFY = content.get(currentYearIndirectsKey) < declineMultiplier * content.get('actualsOneYearAgoIndirects'); // One Year Ahead\n\n      var directsDeclineOneYearAhead = content.get(oneYearAheadDirectsKey) < declineMultiplier * content.get(currentYearDirectsKey);\n      var indirectsDeclineOneYearAhead = content.get(oneYearAheadIndirectsKey) < declineMultiplier * content.get(currentYearIndirectsKey); // Two Years Ahead\n\n      var directsDeclineTwoYearsAhead = content.get(twoYearsAheadDirectsKey) < declineMultiplier * content.get(twoYearsAheadDirectsKey);\n      var indirectsDeclineTwoYearsAhead = content.get(twoYearsAheadIndirectsKey) < declineMultiplier * content.get(twoYearsAheadIndirectsKey);\n      var classNamesString = '';\n\n      if (directsDeclineCurrentFY) {\n        classNamesString += ' highlight-risk-current-year-directs';\n      }\n\n      if (indirectsDeclineCurrentFY) {\n        classNamesString += ' highlight-risk-current-year-indirects';\n      }\n\n      if (directsDeclineOneYearAhead) {\n        classNamesString += ' highlight-risk-one-year-directs';\n      }\n\n      if (indirectsDeclineOneYearAhead) {\n        classNamesString += ' highlight-risk-one-year-indirects';\n      }\n\n      if (directsDeclineTwoYearsAhead) {\n        classNamesString += ' highlight-risk-two-years-directs';\n      }\n\n      if (indirectsDeclineTwoYearsAhead) {\n        classNamesString += ' highlight-risk-two-years-indirects';\n      } //Gain\n      // Current Year\n\n\n      var directsGainCurrentFY = content.get(currentYearDirectsKey) > gainMultiplier * content.get('actualsOneYearAgoDirects');\n      var indirectsGainCurrentFY = content.get(currentYearIndirectsKey) > gainMultiplier * content.get('actualsOneYearAgoIndirects'); // One Year Ahead\n\n      var directsGainOneYearAhead = content.get(oneYearAheadDirectsKey) > gainMultiplier * content.get(currentYearDirectsKey);\n      var indirectsGainOneYearAhead = content.get(oneYearAheadIndirectsKey) > gainMultiplier * content.get(currentYearIndirectsKey); // Two Years Ahead\n\n      var directsGainTwoYearsAhead = content.get(twoYearsAheadDirectsKey) > gainMultiplier * content.get(oneYearAheadDirectsKey);\n      var indirectsGainTwoYearsAhead = content.get(twoYearsAheadIndirectsKey) > gainMultiplier * content.get(oneYearAheadIndirectsKey);\n\n      if (directsGainCurrentFY) {\n        classNamesString += ' highlight-gain-current-year-directs';\n      }\n\n      if (indirectsGainCurrentFY) {\n        classNamesString += ' highlight-gain-current-year-indirects';\n      }\n\n      if (directsGainOneYearAhead) {\n        classNamesString += ' highlight-gain-one-year-directs';\n      }\n\n      if (indirectsGainOneYearAhead) {\n        classNamesString += ' highlight-gain-one-year-indirects';\n      }\n\n      if (directsGainTwoYearsAhead) {\n        classNamesString += ' highlight-gain-two-years-directs';\n      }\n\n      if (indirectsGainTwoYearsAhead) {\n        classNamesString += ' highlight-gain-two-years-indirects';\n      }\n\n      row.set('classNames', [classNamesString]);\n    });\n  }\n});","define(\"b3i-analytics-web-app/utils/highlight-pts-rows\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = highlightPtsRows;\n\n  function highlightPtsRows(rows, extra, includePlanPts) {\n    var currentYearDirectsKey = includePlanPts ? 'ptsWithPlanCurrentYearDirects' : 'ptsCurrentYearDirects';\n    var currentYearIndirectsKey = includePlanPts ? 'ptsWithPlanCurrentYearIndirects' : 'ptsCurrentYearIndirects';\n    var lapse = 0;\n    var decline = 0;\n    rows.forEach(function (row) {\n      var content = row.content;\n      var directsDecline = content.get('actualsOneYearAgoDirects') > 0 && content.get(currentYearDirectsKey) < (1.0 - extra.nearTermDecline / 100) * content.get('actualsOneYearAgoDirects') && content.get(currentYearDirectsKey) - content.get('actualsOneYearAgoDirects') < extra.directsChange;\n      var indirectsDecline = content.get('actualsOneYearAgoIndirects') > 0 && content.get(currentYearIndirectsKey) < (1 - extra.nearTermDecline / 100) * content.get('actualsOneYearAgoIndirects') && content.get(currentYearIndirectsKey) - content.get('actualsOneYearAgoIndirects') < extra.indirectsChange;\n\n      if (content.get('actualsOneYearAgoDirects') > 0 && content.get(currentYearDirectsKey) === 0) {\n        row.set('classNames', ['highlight-risk']);\n        lapse++;\n      } else if (directsDecline || indirectsDecline) {\n        row.set('classNames', ['highlight-decline']);\n        decline++;\n      } else {\n        row.set('classNames', ['']);\n      }\n    });\n    return {\n      lapse: lapse,\n      decline: decline\n    };\n  }\n});","define(\"b3i-analytics-web-app/utils/new-value-from-sponsors\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = newValueFromSponsors;\n\n  function newValueFromSponsors(displayValue, sponsors) {\n    if (!sponsors) {\n      return displayValue;\n    }\n\n    var sponsor = sponsors.filterBy('displayValue', displayValue);\n\n    if (sponsor.length === 0) {\n      return displayValue;\n    } else {\n      return sponsor[0].newValue;\n    }\n  }\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _objectTransforms.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/utils/original-sponsor-for-type\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = originalSponsorForType;\n\n  function originalSponsorForType(originalValue, sponsors) {\n    if (!sponsors) {\n      return null;\n    }\n\n    var sponsor = sponsors.filterBy('originalValue', originalValue);\n\n    if (sponsor.length === 0) {\n      return null;\n    } else {\n      return sponsor[0];\n    }\n  }\n});","define(\"b3i-analytics-web-app/utils/percentiles-from-quartile\", [\"exports\", \"b3i-analytics-web-app/constants/tiers\"], function (_exports, _tiers) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = percentilesFromQuartile;\n\n  function percentilesFromQuartile(selectedQuartile) {\n    var percentiles = {};\n\n    switch (selectedQuartile) {\n      case _tiers.default.QUARTILE_OPTION_TOP_10:\n        percentiles.percentile_begin = 90;\n        break;\n\n      case _tiers.default.QUARTILE_OPTION_TOP_25:\n        percentiles.percentile_begin = 75;\n        break;\n\n      case _tiers.default.QUARTILE_OPTION_MID_TIER:\n        percentiles.percentile_begin = 25;\n        percentiles.percentile_end = 75;\n        break;\n\n      case _tiers.default.QUARTILE_OPTION_LOW_TIER:\n        percentiles.percentile_end = 25;\n        break;\n    }\n\n    return percentiles;\n  }\n});","define(\"b3i-analytics-web-app/utils/pts-ammortization\", [\"exports\", \"moment\", \"b3i-analytics-web-app/utils/convert-to-fiscal-month\"], function (_exports, _moment, _convertToFiscalMonth) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = ptsAmmortization;\n\n  function ptsAmmortization(grant, year, isDirects, fiscalMonth, nceAndCarryover, shrinkage, sponsorDiscount) {\n    var startMonth = grant.get('startFiscalMonth');\n    var startYear = grant.get('startFiscalYear');\n    var startDate = (0, _moment.default)(grant.get('startDate'));\n    var endDate = (0, _moment.default)(grant.get('endDate')); //Factor in the nce\n\n    var extendedMonths = nceAndCarryover;\n    var extendedDuration = endDate.diff(startDate, 'days') / 30.5 + extendedMonths; //Extend the end date\n\n    var extendedEndDate = endDate.add(_moment.default.duration({\n      'months': extendedMonths\n    }));\n    var extendedEndYear = extendedEndDate.month() + 1 >= fiscalMonth ? extendedEndDate.year() + 1 : extendedEndDate.year();\n    var extendedEndMonth = (0, _convertToFiscalMonth.default)(extendedEndDate.month() + 1, fiscalMonth);\n    var amount = isDirects ? grant.get('directs') : grant.get('indirects'); //Reduce the projected success amount by the shrinkage and sponsor discount\n\n    var successAmount = amount * (1 - shrinkage / 100) * (1 - sponsorDiscount / 100);\n    var result = 0;\n\n    if (year === startYear) {\n      result = successAmount * (13 - startMonth) / extendedDuration;\n    } else if (startYear < year && year < extendedEndYear) {\n      result = successAmount * 12 / extendedDuration;\n    } else if (year === extendedEndYear) {\n      result = successAmount * extendedEndMonth / extendedDuration;\n    }\n\n    return result;\n  }\n});","define(\"b3i-analytics-web-app/utils/pts-renewal-ammortization\", [\"exports\", \"moment\"], function (_exports, _moment) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = ptsRenewalAmmortization;\n\n  function ptsRenewalAmmortization(grant, year, isDirects, fiscalMonth, nceAndCarryover, shrinkage) {\n    var startDate = (0, _moment.default)(grant.get('startDate'));\n    var endDate = (0, _moment.default)(grant.get('endDate'));\n    var endFiscalMonth = grant.get('endFiscalMonth');\n    var endFiscalYear = grant.get('endFiscalYear'); //Factor in the nce\n\n    var extendedMonths = nceAndCarryover;\n    var extendedDuration = endDate.diff(startDate, 'days') / 30.5 + extendedMonths;\n    var amount = isDirects ? grant.get('directs') : grant.get('indirects'); //Account for school shrinkage\n\n    var successAmount = amount * (1 - shrinkage / 100);\n    var result = 0;\n\n    if (year === endFiscalYear) {\n      result = successAmount * (12 - endFiscalMonth) / extendedDuration;\n    } else if (year > endFiscalYear) {\n      result = successAmount * 12 / extendedDuration;\n    }\n\n    return result;\n  }\n});","define(\"b3i-analytics-web-app/utils/remove-from-dom\", [\"exports\", \"ember-metrics/utils/remove-from-dom\"], function (_exports, _removeFromDom) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _removeFromDom.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/utils/sort-string-with-plan\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = sortStringWithPlan;\n\n  function sortStringWithPlan(sortString, selectedIncludePlan) {\n    var position = sortString.indexOf('-') > -1 ? 4 : 3;\n\n    if (sortString.indexOf('pts') > -1) {\n      if (selectedIncludePlan === \"Yes\") {\n        if (sortString.indexOf('plan') === -1) {\n          return sortString.substr(0, position) + '_with_plan' + sortString.substr(position);\n        }\n      } else {\n        if (sortString.indexOf('plan') > -1) {\n          return sortString.substr(0, position) + sortString.substr(position + 10);\n        }\n      }\n    }\n\n    return null;\n  }\n});","define(\"b3i-analytics-web-app/utils/title-case\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = titleCase;\n\n  //https://medium.freecodecamp.org/three-ways-to-title-case-a-sentence-in-javascript-676a9175eb27\n  function titleCase(str) {\n    return str.toLowerCase().split(' ').map(function (word) {\n      if (!word || word.length === 0) {\n        return '';\n      }\n\n      return word.replace(word[0], word[0].toUpperCase());\n    }).join(' ');\n  }\n});","define(\"b3i-analytics-web-app/utils/titleize\", [\"exports\", \"ember-cli-string-helpers/utils/titleize\"], function (_exports, _titleize) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _titleize.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/utils/uuid-generator\", [\"exports\", \"ember-uuid/utils/uuid-generator\"], function (_exports, _uuidGenerator) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  Object.defineProperty(_exports, \"default\", {\n    enumerable: true,\n    get: function get() {\n      return _uuidGenerator.default;\n    }\n  });\n  Object.defineProperty(_exports, \"v4\", {\n    enumerable: true,\n    get: function get() {\n      return _uuidGenerator.v4;\n    }\n  });\n  Object.defineProperty(_exports, \"v1\", {\n    enumerable: true,\n    get: function get() {\n      return _uuidGenerator.v1;\n    }\n  });\n  Object.defineProperty(_exports, \"parse\", {\n    enumerable: true,\n    get: function get() {\n      return _uuidGenerator.parse;\n    }\n  });\n  Object.defineProperty(_exports, \"unparse\", {\n    enumerable: true,\n    get: function get() {\n      return _uuidGenerator.unparse;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _alias.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _belongsTo.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _collection.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _confirmation.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _date.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _dependent.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _dsError.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _exclusion.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _format.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _hasMany.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _inclusion.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _length.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _messages.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _number.default;\n    }\n  });\n});","define(\"b3i-analytics-web-app/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 get() {\n      return _presence.default;\n    }\n  });\n});","\n","define('b3i-analytics-web-app/config/environment', [], function() {\n  var prefix = 'b3i-analytics-web-app';\ntry {\n  var metaName = prefix + '/config/environment';\n  var rawConfig = document.querySelector('meta[name=\"' + metaName + '\"]').getAttribute('content');\n  var config = JSON.parse(decodeURIComponent(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","\n          if (!runningTests) {\n            require(\"b3i-analytics-web-app/app\")[\"default\"].create({\"name\":\"b3i-analytics-web-app\",\"version\":\"0.0.0+69db89d1\"});\n          }\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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACZA;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;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;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;;AC7BA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;;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;;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;;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;;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;AC1CA;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;;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;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9GA;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;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;;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;;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;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtGA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;AC9DA;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;;ACRA;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;;ACrBA;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;;ACRA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;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;;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;;ACvDA;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;;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;;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;;AClEA;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;;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;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;;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;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;;AC5CA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpGA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1NA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;;AC5CA;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;;ACnDA;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;;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;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5TA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5LA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC78BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7PA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5hBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvSA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9RA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACv4CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACngBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3wBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC39CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACt7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/lCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/hBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5HA;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;;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;;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;;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;;ACtCA;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;;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;;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;;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;;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;;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;;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;;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;;AChCA;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;;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;;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;;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;;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;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;;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;;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;;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;;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;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;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;;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;;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;;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;;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;;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;;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;;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;;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;;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;;ACjBA;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;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;;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;;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;;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;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;;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;;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;;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;;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;;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;;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;;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;;ACxBA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;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;;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;;ACpDA;AACA;AACA;AACA;AACA;AACA;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;;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;;ACdA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACt3BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACt5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClkCA;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;;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;;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnKA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACj2DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACriBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;;AC1EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9xBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvvBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;AACA;AACA;AACA;AACA;;AC3EA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACpNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC39BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5LA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3OA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3MA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACpGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;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;;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;;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;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;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;;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;;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;;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;;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;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;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;ACxIA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC7EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxDA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;;AChBA;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;;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;;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9FA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvUA;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;;ACbA;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;;ACRA;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;AACA;AACA;AACA;;ACxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrFA;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;;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;;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;;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;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;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;;ACrBA;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;;ACrBA;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;AACA;AACA;AACA;AACA;;ACrBA;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;;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;;AC1BA;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;;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;;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;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;;ACpBA;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;;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;;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;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;;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;;ACxBA;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;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;;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;;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;;ACXA;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjBA;AACA;AACA;AACA;AACA;","file":"b3i-analytics-web-app.js"}