################################################################################
# LOAD PACKAGES AND SCRIPTS IN SEQUENCE TO PRODUCE AHV EXPENDITURE PROJECTIONS #
################################################################################

# Preamble. ------------------------------------------------------------------------------

# Clear workspace and load necessary packages.
sapply(c("tidyverse", "magrittr", "simputation", "readxl", "tidymodels",
         "collapse" , "dqrng"   , "ggshadow"   , "strucchange"), 
       library, char = TRUE)

# Suppress column type guessing messages from 'readr' functions.
options(readr.show_col_types = FALSE)

# Calculations. --------------------------------------------------------------------------

# Load baseline parameters.
source("scripts/base_par.R")

# Define auxiliary functions.
source("scripts/aux_fun.R")

# Read and process all necessary inputs.
source("scripts/prepare_inputs.R")

# Conduct crossvalidation for trend extrapolations and save optimal parameter values.
if (par$cv)
  source("scripts/cv_out.R")

# Produce and return total expenditure projections.
source("scripts/proj_out.R", echo = TRUE)
