From e96ba7392adc2d1b2519bdf35fc1d1a170a8f6d0 Mon Sep 17 00:00:00 2001 From: Marko Lalovic Date: Sat, 22 Jun 2024 15:30:05 +0200 Subject: [PATCH] prepare for cran --- NEWS.html | 441 --- NEWS.md | 55 +- R/discretization.R | 59 +- R/estimation.R | 75 +- R/part_bfi.R | 2 +- R/simulation.R | 54 +- R/utilities.R | 88 +- README.Rmd | 9 +- README.html | 72 +- README.md | 48 +- dev/prepare_data.R | 5 +- docs/articles/using_latent2likert.html | 170 +- docs/index.html | 42 +- docs/news/index.html | 46 +- docs/pkgdown.yml | 2 +- docs/reference/discretize_density.html | 7 +- docs/reference/figures/courses-grouped.png | Bin 67037 -> 0 bytes docs/reference/figures/courses-grouped.svg | 1238 ------- docs/reference/figures/courses-stacked.png | Bin 134301 -> 0 bytes docs/reference/figures/courses-stacked.svg | 3718 -------------------- docs/reference/figures/hex-drawings.svg | 1904 ---------- docs/reference/figures/overview.svg | 953 ----- docs/reference/figures/scales.png | Bin 123863 -> 0 bytes docs/reference/figures/scales.svg | 2632 -------------- docs/reference/part_bfi.html | 2 +- docs/reference/plot_likert_transform.html | 30 +- docs/reference/simulate_likert.html | 28 +- docs/search.json | 2 +- man/discretize_density.Rd | 7 +- man/figures/courses-grouped.png | Bin 67037 -> 0 bytes man/figures/courses-grouped.svg | 1238 ------- man/figures/courses-stacked.png | Bin 134301 -> 0 bytes man/figures/courses-stacked.svg | 3718 -------------------- man/figures/hex-drawings.svg | 1904 ---------- man/figures/overview.svg | 953 ----- man/figures/scales.png | Bin 123863 -> 0 bytes man/figures/scales.svg | 2632 -------------- man/part_bfi.Rd | 2 +- man/plot_likert_transform.Rd | 24 +- man/simulate_likert.Rd | 26 +- tests/testthat/test_discretization.R | 34 +- tests/testthat/test_estimation.R | 98 +- tests/testthat/test_simulation.R | 138 +- tests/testthat/test_utilities.R | 13 +- vignettes/using_latent2likert.Rmd | 136 +- 45 files changed, 680 insertions(+), 21925 deletions(-) delete mode 100644 NEWS.html delete mode 100644 docs/reference/figures/courses-grouped.png delete mode 100644 docs/reference/figures/courses-grouped.svg delete mode 100644 docs/reference/figures/courses-stacked.png delete mode 100644 docs/reference/figures/courses-stacked.svg delete mode 100644 docs/reference/figures/hex-drawings.svg delete mode 100644 docs/reference/figures/overview.svg delete mode 100644 docs/reference/figures/scales.png delete mode 100644 docs/reference/figures/scales.svg delete mode 100644 man/figures/courses-grouped.png delete mode 100644 man/figures/courses-grouped.svg delete mode 100644 man/figures/courses-stacked.png delete mode 100644 man/figures/courses-stacked.svg delete mode 100644 man/figures/hex-drawings.svg delete mode 100644 man/figures/overview.svg delete mode 100644 man/figures/scales.png delete mode 100644 man/figures/scales.svg diff --git a/NEWS.html b/NEWS.html deleted file mode 100644 index ce062b2..0000000 --- a/NEWS.html +++ /dev/null @@ -1,441 +0,0 @@ - - - - - - - - - - - - - -NEWS - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - -
-

responsesR 0.1.0 (Release date: 2020-10-17)

-
    -
  • Initial release.
  • -
  • Tested on platforms: x86_64-pc-linux-gnu (64-bit) and -x86_64-w64-mingw32 (64-bit).
  • -
-
-
-

responsesR 1.0.0 (Release date: 2024-03-28)

-
    -
  • The option to generate correlated Likert scale items was added to -the function generate_responses().
  • -
  • New function estimate_parameters() was added that -allows for the estimation of parameters from existing survey data to -replicate it more accurately.
  • -
  • Issues related to the dependencies have been resolved.
  • -
  • This version now only imports mvtnorm, along with the standard R -packages stats and graphics, which are typically included in R -releases.
  • -
  • An additional suggested dependency is the package sn, necessary only -when generating correlated responses based on skew normal -distribution.
  • -
  • However, the package prompts the user to install this dependency -during interactive sessions.
  • -
-
-
-

responsesR 1.1.0 (Release date: 2024-06-06)

-
    -
  • A minor update of functions and vignettes.
  • -
-
-
-

responsesR 1.1.1 (Release date: 2024-06-06)

-
    -
  • Improvements of package website and documentation.
  • -
-
- - - - -
- - - - - - - - - - - - - - - diff --git a/NEWS.md b/NEWS.md index 0a24ae6..3776035 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,33 +1,30 @@ -# latent2likert 0.1.0 (Release date: 2020-10-17) - +## Version 0.1.0 +- Release date: 2020-10-17 - Initial release (development version). - Tested on platforms: x86_64-pc-linux-gnu (64-bit) and x86_64-w64-mingw32 (64-bit). -# latent2likert 1.0.0 (Release date: 2024-03-28) - -- The option to generate correlated Likert scale items was added to the function `rLikert()`. -- New function `estimate_parameters()` was added that allows for the estimation of parameters from existing survey data to replicate it more accurately. -- Issues related to the dependencies have been resolved. -- This version now only imports the standard R packages mvtnorm, stats, and graphics packages stats and graphics, which are typically included in R releases. -- The package sn is necessary only when generating correlated responses based on skew normal distribution. -- Added user prompts for installing the sn package when necessary. - -# latent2likert 1.1.0 (Release date: 2024-06-06) - -- A minor update of functions and vignettes. - -# latent2likert 1.1.1 (Release date: 2024-06-06) - -- The package was renamed from responsesR to latent2likert. -- To capture the essence of converting latent variables into Likert scale responses. -- Improvements of package website and documentation. - -# latent2likert 1.2.1 (Release date: 2024-06-12) - -- Refactored code for improved modularity and maintainability. -- Modularized core functions for better readability. +## Version 1.0.0 +- Release date: 2024-03-28 +- Added the option to generate correlated Likert scale items in the `rlikert()` function. +- Added the `estimate_params()` function for estimating parameters from existing survey data. +- Resolved dependency issues. +- Reduced dependency to only standard R packages: mvtnorm, stats, and graphics. +- The sn package is now required only for generating correlated responses using a skew normal distribution. +- Added user prompts to install the sn package when needed. + +## Version 1.1.0 +- Release date: 2024-06-06 +- Minor updates to functions and vignettes. + +## Version 1.1.1 +- Release date: 2024-06-06 +- Renamed the package from `responsesR` to `latent2likert` to better reflect its purpose of converting latent variables into Likert scale responses. +- Improved the package website and documentation. +- **Note:** The codebase is under development, and finer details may change. + +## Version 1.2.1 +- Release date: 2024-06-12 +- Refactored code for enhanced modularity and maintainability. +- Modularized core functions for improved readability. - Improved the structure and organization of the codebase. -- Improved error handling of different cases for correlations input. -- Updated the `estimate_parameters()` function for estimating latent parameters from survey data. -- The codebase is currently in development, finer details may change. - +- Enhanced error handling for various correlation input scenarios. diff --git a/R/discretization.R b/R/discretization.R index db49749..d2dc5ae 100644 --- a/R/discretization.R +++ b/R/discretization.R @@ -18,14 +18,15 @@ #' @examples #' discretize_density(density_fn = stats::dnorm, n_levels = 5) #' discretize_density(density_fn = function(x) { -#' 2 * stats::dnorm(x) * stats::pnorm(0.5 * x)}, n_levels = 4) -#' @details -#' The function addresses the problem of transforming a continuous random -#' variable \eqn{X} into a discrete random variable \eqn{Y} with minimal +#' 2 * stats::dnorm(x) * stats::pnorm(0.5 * x) +#' }, n_levels = 4) +#' @details +#' The function addresses the problem of transforming a continuous random +#' variable \eqn{X} into a discrete random variable \eqn{Y} with minimal #' distortion. Distortion is measured as mean-squared error (MSE): #' \deqn{ -#' \text{E}\left[ (X - Y)^2 \right] = -#' \sum_{k=1}^{K} \int_{x_{k-1}}^{x_{k}} f_{X}(x) +#' \text{E}\left[ (X - Y)^2 \right] = +#' \sum_{k=1}^{K} \int_{x_{k-1}}^{x_{k}} f_{X}(x) #' \left( x - r_{k} \right)^2 \, dx #' } #' where: @@ -38,41 +39,41 @@ #' } #' This problem is solved using the following iterative procedure: #' \describe{ -#' \item{\eqn{1.}}{Start with an arbitrary initial set of representation +#' \item{\eqn{1.}}{Start with an arbitrary initial set of representation #' points: \eqn{r_{1} < r_{2} < \dots < r_{K}}.} -#' \item{\eqn{2.}}{Repeat the following steps until the improvement in MSE +#' \item{\eqn{2.}}{Repeat the following steps until the improvement in MSE #' falls below given \eqn{\varepsilon}.} #' \item{\eqn{3.}}{Calculate endpoints as \eqn{x_{k} = (r_{k+1} + r_{k})/2} -#' for each \eqn{k = 1, \dots, K-1} and set \eqn{x_{0}} and \eqn{x_{K}} to +#' for each \eqn{k = 1, \dots, K-1} and set \eqn{x_{0}} and \eqn{x_{K}} to #' \eqn{-\infty} and \eqn{\infty}, respectively.} -#' \item{\eqn{4.}}{Update representation points by setting \eqn{r_{k}} +#' \item{\eqn{4.}}{Update representation points by setting \eqn{r_{k}} #' equal to the conditional mean of \eqn{X} given \eqn{X \in (x_{k-1}, x_{k})} #' for each \eqn{k = 1, \dots, K}.} #' } -#' +#' #' With each execution of step \eqn{(3)} and step \eqn{(4)}, the MSE decreases -#' or remains the same. As MSE is nonnegative, it approaches a limit. -#' The algorithm terminates when the improvement in MSE is less than a given -#' \eqn{\varepsilon > 0}, ensuring convergence after a finite number +#' or remains the same. As MSE is nonnegative, it approaches a limit. +#' The algorithm terminates when the improvement in MSE is less than a given +#' \eqn{\varepsilon > 0}, ensuring convergence after a finite number #' of iterations. -#' -#' This procedure is known as Lloyd-Max's algorithm, initially used for scalar -#' quantization and closely related to the k-means algorithm. Local convergence -#' has been proven for log-concave density functions by Kieffer. Many common -#' probability distributions are log-concave including the normal and skew +#' +#' This procedure is known as Lloyd-Max's algorithm, initially used for scalar +#' quantization and closely related to the k-means algorithm. Local convergence +#' has been proven for log-concave density functions by Kieffer. Many common +#' probability distributions are log-concave including the normal and skew #' normal distribution, as shown by Azzalini. #' #' @references -#' Azzalini, A. (1985). -#' A class of distributions which includes the normal ones. +#' Azzalini, A. (1985). +#' A class of distributions which includes the normal ones. #' \emph{Scandinavian Journal of Statistics} \bold{12(2)}, 171–178. -#' +#' #' Kieffer, J. (1983). -#' Uniqueness of locally optimal quantizer for log-concave density and convex +#' Uniqueness of locally optimal quantizer for log-concave density and convex #' error function. #' \emph{IEEE Transactions on Information Theory} \bold{29}, 42–47. -#' -#' Lloyd, S. (1982). +#' +#' Lloyd, S. (1982). #' Least squares quantization in PCM. #' \emph{IEEE Transactions on Information Theory} \bold{28 (2)}, 129–137. #' @@ -134,7 +135,7 @@ update_epresentatives <- function(density_fn, midp) { #' Compute Distortion #' -#' Computes the distortion (mean-squared error) given the midpoints and +#' Computes the distortion (mean-squared error) given the midpoints and #' representation points. #' #' @param density_fn probability density function. @@ -148,7 +149,8 @@ compute_distortion <- function(density_fn, midp, repr) { endp <- c(-Inf, midp, Inf) mse <- vapply(seq_len(n_levels), function(k) { stats::integrate(function(x) { - density_fn(x) * (x - repr[k])^2}, endp[k], endp[k + 1])[[1]] + density_fn(x) * (x - repr[k])^2 + }, endp[k], endp[k + 1])[[1]] }, numeric(1)) return(sum(mse)) } @@ -166,7 +168,8 @@ calc_probs <- function(density_fn, endp) { n_levels <- length(endp) - 1 prob <- vapply(seq_len(n_levels), function(k) { stats::integrate(function(x) { - density_fn(x)}, endp[k], endp[k + 1])[[1]] + density_fn(x) + }, endp[k], endp[k + 1])[[1]] }, numeric(1)) return(prob) } diff --git a/R/estimation.R b/R/estimation.R index 0716265..74ca600 100644 --- a/R/estimation.R +++ b/R/estimation.R @@ -46,7 +46,7 @@ #' * Estimates the probabilities \eqn{p_{k}} for each item. #' * Computes the estimates of \eqn{\xi} and \eqn{\omega} for each item. #' * Combines the estimated parameters for all items into a table. -#' +#' #' @seealso \code{\link{discretize_density}} for details on calculating #' the endpoints, and \code{\link{part_bfi}} for example of the survey data. #' @export @@ -78,26 +78,26 @@ estimate_params <- function(data, n_levels, skew = 0) { } #' Estimate mean and standard deviation -#' -#' Estimates the mean and standard deviation of a latent variable given the +#' +#' Estimates the mean and standard deviation of a latent variable given the #' discrete probabilities of its observed Likert scale responses. -#' +#' #' @param prob vector of probabilities for each response category. #' @param n_levels number of response categories for the Likert scale item. #' @param skew marginal skewness of the latent variable, defaults to 0. #' @param eps tolerance for convergence, defaults to 1e-6. #' @param maxit maximum number of iterations, defaults to 100. -#' -#' @return A numeric vector with two elements: the estimated mean and +#' +#' @return A numeric vector with two elements: the estimated mean and #' standard deviation. -#' +#' #' @details #' This function uses an iterative algorithm to solve the system of non-linear -#' equations that describe the relationship between the continuous latent +#' equations that describe the relationship between the continuous latent #' variable and the observed discrete probability distribution of Likert scale #' responses. The algorithm ensures stability by reparameterizing the system #' and applying constraints to prevent stepping into invalid regions. -#' +#' #' @noRd estimate_mean_and_sd <- function(prob, n_levels, skew = 0, eps = 1e-6, maxit = 100) { @@ -134,14 +134,14 @@ estimate_mean_and_sd <- function(prob, n_levels, skew = 0, #' Initialize CDF and PDF Functions #' -#' Initializes the cumulative distribution function (CDF) and probability +#' Initializes the cumulative distribution function (CDF) and probability #' density function (PDF) based on the skewness parameter. #' #' @param skew numeric value representing the skewness of the distribution. -#' -#' @return A list containing the CDF and PDF functions appropriate for the +#' +#' @return A list containing the CDF and PDF functions appropriate for the #' given skewness. -#' +#' #' @noRd initialize_distributions <- function(skew) { if (abs(skew) > 0) { @@ -163,15 +163,15 @@ initialize_distributions <- function(skew) { #' #' @param x numeric vector of current estimates for the location and scaling #' parameters. -#' @param endp numeric vector of endpoints defining the boundaries of the +#' @param endp numeric vector of endpoints defining the boundaries of the #' response categories. #' @param prob numeric vector of probabilities for each response category. #' @param cdf_X function representing the cumulative distribution function #' (CDF) of the latent variable. -#' +#' #' @return A matrix of differences between the CDF evaluated at the endpoints #' and the observed probabilities. -#' +#' #' @noRd fn <- function(x, endp, prob, cdf_X) { u <- x[1] @@ -184,16 +184,16 @@ fn <- function(x, endp, prob, cdf_X) { #' #' Computes the Jacobian matrix used in the iterative root-finding process. #' -#' @param x numeric vector of current estimates for the location and scaling +#' @param x numeric vector of current estimates for the location and scaling #' parameters. -#' @param endp numeric vector of endpoints defining the boundaries of the +#' @param endp numeric vector of endpoints defining the boundaries of the #' response categories. #' @param pdf_X function representing the probability density function (PDF) #' of the latent variable. -#' +#' #' @return A matrix representing the Jacobian of the system of equations with #' respect to the parameters. -#' +#' #' @noRd jac <- function(x, endp, pdf_X) { u <- x[1] @@ -209,38 +209,3 @@ jac <- function(x, endp, pdf_X) { return(cbind(du, dv)) } - -#' Plot Contour -#' -#' Plots the contour of the objective function values over a grid -#' of parameter values. It visualizes the norm of the function \code{fn} -#' for different values of \code{u} (mean) and \code{v} (1/standard deviation) -#' and overlays the trace of parameter updates during the optimization process. -#' -#' @param fn objective function to be minimized. -#' @param endp endpoints of intervals that partition the continuous domain. -#' @param prob discrete probability distribution. -#' @param cdf_X cumulative distribution function of the latent variable. -#' @param trace matrix of parameter updates. -#' @noRd -plot_contour <- function(fn, endp, prob, cdf_X, trace) { - xlen <- 50 - ylen <- 50 - xgrid <- seq(-3, 3, length.out = xlen) # Range for mean (mu) - ygrid <- seq(0.1, 3, length.out = ylen) # Range for 1/sd - zvals <- matrix(NA, ncol = xlen, nrow = ylen) - for (i in seq_len(xlen)) { - for (j in seq_len(ylen)) { - zvals[i, j] <- norm(fn( - matrix(c(xgrid[i], ygrid[j])), - endp, prob, cdf_X - ), "2") - } - } - graphics::contour( - x = xgrid, y = ygrid, z = zvals, - col = "gray42", xlab = "u = mu", ylab = "v = 1/sd" - ) - graphics::grid(col = "lightgray", lty = "dotted") - graphics::points(trace[1, ], trace[2, ], pch = 20, col = "blue") -} diff --git a/R/part_bfi.R b/R/part_bfi.R index 5b168c9..1bfc362 100644 --- a/R/part_bfi.R +++ b/R/part_bfi.R @@ -23,7 +23,7 @@ #' \item{A5}{Make people feel at ease.} #' \item{gender}{Gender of the respondent.} #' } -#' @source {International Personality Item Pool (ipip.ori.org)} +#' @source {International Personality Item Pool ({https://ipip.ori.org})} #' @source {https://search.r-project.org/CRAN/refmans/psychTools/html/bfi.html} #' @references #' Revelle, W. (2024). diff --git a/R/simulation.R b/R/simulation.R index 56430db..6d0d9d9 100644 --- a/R/simulation.R +++ b/R/simulation.R @@ -1,12 +1,12 @@ #' Simulate Likert Scale Item Responses -#' -#' Simulates Likert scale item responses based on a specified number +#' +#' Simulates Likert scale item responses based on a specified number #' of response categories and the centered parameters of the latent variable. -#' -#' @param n_levels Integer. The number of response categories for the Likert scale item. -#' @param cp Named vector. The centered parameters of the latent variable, including -#' mean (`mu`), standard deviation (`sd`), and skewness (`skew`). -#' Skewness must be between -0.95 and 0.95. +#' +#' @param n_levels number of response categories for the Likert scale item. +#' @param cp centered parameters of the latent variable. +#' Named vector including mean (`mu`), standard deviation (`sd`), +#' and skewness (`skew`). Skewness must be between -0.95 and 0.95. #' @return A named vector of probabilities for each response category. #' @examples #' cp <- c(mu = 0, sd = 1, skew = 0.5) @@ -14,10 +14,10 @@ #' cp2 <- c(mu = 1, sd = 2, skew = -0.3) #' simulate_likert(n_levels = 7, cp = cp2) #' @details -#' The simulation process uses the following model detailed by Boari and Nai-Ruscone. -#' Let \eqn{X} be the continuous variable of interest, measured using Likert scale -#' questions with \eqn{K} response categories. The observed discrete variable \eqn{Y} is -#' defined as follows: +#' The simulation process uses the following model detailed by +#' Boari and Nai-Ruscone. Let \eqn{X} be the continuous variable of interest, +#' measured using Likert scale questions with \eqn{K} response categories. The +#' observed discrete variable \eqn{Y} is defined as follows: #' \deqn{ #' Y = k, \quad \text{ if } \ \ x_{k - 1} < X \leq x_{k} #' \quad \text{ for } \ \ k = 1, \dots, K @@ -27,26 +27,28 @@ #' \deqn{ #' -\infty = x_{0} < x_{1} < \dots < x_{K - 1} < x_{K} = \infty. #' } -#' The endpoints dictate the transformation of the density \eqn{f_{X}} of \eqn{X} -#' into a discrete probability distribution: +#' The endpoints dictate the transformation of the density +#' \eqn{f_{X}} of \eqn{X} into a discrete probability distribution: #' \deqn{ #' \text{Pr}(Y = k) = \int_{x_{k - 1}}^{x_{k}} f_{X}(x) \, dx #' \quad \text{ for } \ \ k = 1, \dots, K. #' } -#' +#' #' The continuous latent variable is modeled using a skew normal distribution. #' The function \code{simulate_likert} performs the following steps: #' * Ensures the centered parameters are within the acceptable range. #' * Converts the centered parameters to direct parameters. #' * Defines the density function for the skew normal distribution. -#' * Computes the probabilities for each response category using optimal endpoints. +#' * Computes the probabilities for each response category +#' using optimal endpoints. #' #' @references #' Boari, G. and Nai Ruscone, M. (2015). -#' A procedure simulating Likert scale item responses. -#' \emph{Electronic Journal of Applied Statistical Analysis} \bold{8(3)}, 288–297. -#' \doi{10.1285/i20705948v8n3p288} -#' +#' A procedure simulating Likert scale item responses. +#' \emph{Electronic Journal of Applied Statistical Analysis} \bold{8(3)}, +#' 288–297. +#' \doi{10.1285/i20705948v8n3p288} +#' #' @seealso \code{\link{discretize_density}} for details on how to calculate #' the optimal endpoints. #' @export @@ -156,12 +158,12 @@ rlikert <- function(size, n_items, n_levels, #' Calculate Optimal Endpoints #' -#' Returns the optimal endpoints of intervals that transform +#' Returns the optimal endpoints of intervals that transform #' a neutral density into discrete probability distribution. -#' +#' #' @param n_levels integer. Number of response categories. #' @param skew numeric. Skewness parameter of the latent variable. -#' +#' #' @return A numeric vector of optimal endpoints. #' @noRd calc_endpoints <- function(n_levels, skew) { @@ -184,7 +186,7 @@ calc_endpoints <- function(n_levels, skew) { #' @param mean numeric. Mean of the latent variable. #' @param sd numeric. Standard deviation of the latent variable. #' @param skew numeric. Skewness parameter of the latent variable. -#' +#' #' @return A numeric vector of simulated responses. #' @noRd generate_responses <- function(size, n_levels, mean, sd, skew) { @@ -198,7 +200,7 @@ generate_responses <- function(size, n_levels, mean, sd, skew) { #' Determines the type of correlation input provided. #' #' @param corr numeric or character or matrix. Correlation input. -#' +#' #' @return An integer representing the correlation case. #' @noRd handle_corr_case <- function(corr) { @@ -226,7 +228,7 @@ handle_corr_case <- function(corr) { #' @param corr numeric or matrix. Correlation input. #' @param corr_case integer. Correlation case identifier. #' @param n_items integer. Number of Likert scale items. -#' +#' #' @return A numeric matrix representing the correlation matrix. #' @noRd generate_corr_matrix <- function(corr, corr_case, n_items) { @@ -252,7 +254,7 @@ generate_corr_matrix <- function(corr, corr_case, n_items) { #' @param mean means of the latent variables. Numeric vector. #' @param sigma covariance matrix of the latent variables. #' @param skew skewness parameters of the latent variables. Numeric vector. -#' +#' #' @return A matrix of generated latent variables. #' @noRd generate_latent_variables <- function(size, mean, sigma, skew) { diff --git a/R/utilities.R b/R/utilities.R index 042c502..c112103 100644 --- a/R/utilities.R +++ b/R/utilities.R @@ -1,40 +1,84 @@ #' Plot Transformation #' -#' Plots the densities of latent variables in the first row -#' and transformed discrete probability distributions below. +#' Plots the densities of latent variables and the corresponding +#' transformed discrete probability distributions. #' #' @param n_items number of Likert scale items (questions). -#' @param n_levels number of response categories for each Likert item. Integer or vector of integers. -#' @param mean means of the latent variables. Numeric or vector of numerics. Defaults to 0. -#' @param sd standard deviations of the latent variables. Numeric or vector of numerics. Defaults to 1. -#' @param skew marginal skewness of the latent variables. Numeric or vector of numerics. Defaults to 0. -#' @return a plot showing the densities of latent variables and the corresponding discrete probability distributions. +#' @param n_levels number of response categories for each Likert item. +#' Integer or vector of integers. +#' @param mean means of the latent variables. +#' Numeric or vector of numerics. Defaults to 0. +#' @param sd standard deviations of the latent variables. +#' Numeric or vector of numerics. Defaults to 1. +#' @param skew marginal skewness of the latent variables. +#' Numeric or vector of numerics. Defaults to 0. +#' @return NULL. The function produces a plot. #' @examples #' plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)) -#' plot_likert_transform(n_items = 3, n_levels = 5, mean=c(0, 1, 2)) -#' plot_likert_transform(n_items = 3, n_levels = 5, sd=c(0.8, 1, 1.2)) -#' plot_likert_transform(n_items = 3, n_levels = 5, skew=c(-0.5, 0, 0.5)) +#' plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, 1, 2)) +#' plot_likert_transform(n_items = 3, n_levels = 5, sd = c(0.8, 1, 1.2)) +#' plot_likert_transform(n_items = 3, n_levels = 5, skew = c(-0.5, 0, 0.5)) #' @export -plot_likert_transform <- function(n_items, n_levels, mean=0, sd=1, skew=0) { +plot_likert_transform <- function( + n_items, n_levels, + mean = 0, sd = 1, skew = 0) { n_levels <- rep(n_levels, length.out = n_items) mean <- rep(mean, length.out = n_items) sd <- rep(sd, length.out = n_items) skew <- rep(skew, length.out = n_items) - graphics::layout(matrix(seq_len(n_items * 2), nrow=2, ncol=n_items)) + graphics::layout(matrix(seq_len(n_items * 2), nrow = 2, ncol = n_items)) x <- seq(-3, 3, length = 1000) for (i in seq_len(n_items)) { # Draw the densities of latent variables cp <- c("mu" = mean[i], "sd" = sd[i], "skew" = skew[i]) dp <- convert_params(cp) y <- density_sn(x, dp[["xi"]], dp[["omega"]], dp[["alpha"]]) - graphics::plot(x, y, type="l", lwd = 2, xlab = "", ylab = "", main="") + graphics::plot(x, y, type = "l", lwd = 2, xlab = "", ylab = "", main = "") graphics::title(paste("X", i, sep = "")) - + # Draw the corresponding discrete probability distributions prob <- simulate_likert(n_levels[i], cp) graphics::barplot(prob) graphics::title(paste("Y", i, sep = "")) } + invisible(NULL) +} + +#' Plot Contour +#' +#' Plots the contour of the objective function values over a grid +#' of parameter values. It visualizes the norm of the function \code{fn} +#' for different values of \code{u} (mean) and \code{v} (1/standard deviation) +#' and overlays the trace of parameter updates during the estimation process. +#' +#' @param fn objective function to be minimized. +#' @param endp endpoints of intervals that partition the continuous domain. +#' @param prob discrete probability distribution. +#' @param cdf_X cumulative distribution function of the latent variable. +#' @param trace matrix of parameter updates. +#' @return NULL. The function produces a plot. +#' @noRd +plot_contour <- function(fn, endp, prob, cdf_X, trace) { + xlen <- 50 + ylen <- 50 + xgrid <- seq(-3, 3, length.out = xlen) # Range for mean (mu) + ygrid <- seq(0.1, 3, length.out = ylen) # Range for 1/sd + zvals <- matrix(NA, ncol = xlen, nrow = ylen) + for (i in seq_len(xlen)) { + for (j in seq_len(ylen)) { + zvals[i, j] <- norm(fn( + matrix(c(xgrid[i], ygrid[j])), + endp, prob, cdf_X + ), "2") + } + } + graphics::contour( + x = xgrid, y = ygrid, z = zvals, + col = "gray42", xlab = "u = mu", ylab = "v = 1/sd" + ) + graphics::grid(col = "lightgray", lty = "dotted") + graphics::points(trace[1, ], trace[2, ], pch = 20, col = "blue") + invisible(NULL) } #' Calculate Response Proportions @@ -65,8 +109,8 @@ response_prop <- function(data, n_levels) { #' Pad Missing Levels #' -#' Helper function that takes a vector of proportions or probabilities -#' across possible responses and pads the missing levels with zeros up +#' Helper function that takes a vector of proportions or probabilities +#' across possible responses and pads the missing levels with zeros up #' to the specified number of response categories. #' #' @param pr proportions or probabilities across possible responses. @@ -92,7 +136,7 @@ pad_levels <- function(pr, n_levels) { #' @noRd validate_skewness <- function(skew) { if (skew > 0.95 || skew < -0.95) { - stop("The value of skewness must be in the range -0.95 to 0.95: + stop("The value of skewness must be in the range -0.95 to 0.95: `skew >= -0.95` and `skew <= 0.95`.") } } @@ -105,9 +149,11 @@ validate_skewness <- function(skew) { #' @noRd check_package <- function(pkg) { if (!requireNamespace(pkg, quietly = TRUE)) { - stop(sprintf('Package "%s" must be installed. - Please run:\n\n\tinstall.packages("%s")\n\n', - pkg, pkg), call. = FALSE) + stop(sprintf( + 'Package "%s" must be installed. + Please run:\n\n\tinstall.packages("%s")\n\n', + pkg, pkg + ), call. = FALSE) } } @@ -129,7 +175,7 @@ density_sn <- function(x, xi = 0, omega = 1, alpha = 0) { #' Convert Centered Parameters #' -#' Converts centered parameters to direct parameters used in the +#' Converts centered parameters to direct parameters used in the #' skew normal density. #' #' @param cp numeric vector. Centered parameters c(mu, sd, skew). diff --git a/README.Rmd b/README.Rmd index ed4bbca..a2d2b0c 100644 --- a/README.Rmd +++ b/README.Rmd @@ -17,12 +17,12 @@ knitr::opts_chunk$set( [![R-CMD-check](https://github.com/markolalovic/latent2likert/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/markolalovic/latent2likert/actions/workflows/R-CMD-check.yaml) -[![codecov](https://codecov.io/gh/markolalovic/latent2likert/branch/main/graph/badge.svg?token=HZTG6RUB2J)](https://codecov.io/gh/markolalovic/latent2likert) +[![codecov](https://codecov.io/gh/markolalovic/latent2likert/branch/main/graph/badge.svg?token=HZTG6RUB2J)](https://app.codecov.io/gh/markolalovic/latent2likert) ## Overview -The R package **latent2likert** is designed to effectively simulate the discretization process inherent to Likert scales while minimizing distortion. It converts continuous latent variables into ordinal categories to generate Likert scale item responses. This is particularly useful for accurately modeling and analyzing survey data that use Likert scales, especially when applying statistical techniques that require metric data. +The **latent2likert** package is designed to effectively simulate the discretization process inherent to Likert scales while minimizing distortion. It converts continuous latent variables into ordinal categories to generate Likert scale item responses. This is particularly useful for accurately modeling and analyzing survey data that use Likert scales, especially when applying statistical techniques that require metric data. ## Installation @@ -35,8 +35,7 @@ devtools::install_github("markolalovic/latent2likert") ## Dependencies -To keep the package lightweight, **latent2likert** only imports [mvtnorm](https://cran.r-project.org/package=mvtnorm), along with the standard R packages stats and graphics, which are typically included in R releases. An additional suggested dependency is the [sn package](https://cran.r-project.org/package=sn), which is required only for generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions if needed. - +To keep the package lightweight, **latent2likert** only imports [mvtnorm](https://cran.r-project.org/package=mvtnorm), along with the standard R packages stats and graphics, which are typically included in R releases. An additional suggested dependency is the package [sn](https://cran.r-project.org/package=sn), which is required only for generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions if needed. ## Features @@ -133,6 +132,6 @@ Note that, depending on the value of the skewness parameter, the normal latent d To simulate Likert item responses, the `draw_likert` function from the [fabricatr](https://CRAN.R-project.org/package=fabricatr) package can be used to recode a latent variable into a Likert response variable by specifying intervals that subdivide the continuous range. The **latent2likert** package, however, offers an advantage by automatically calculating optimal intervals that minimize distortion between the latent variable and the Likert response variable for both normal and skew normal latent distributions, eliminating the need to manually specify the intervals. -There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete probability distribution and sampling from it using the sample function in R or the `likert` function from the [wakefield](https://CRAN.R-project.org/package=wakefield) package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use [LikertMakeR](https://CRAN.R-project.org/package=LikertMakeR) or [SimCorMultRes](https://CRAN.R-project.org/package=SimCorMultRes) to generate correlated multinomial responses. +There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete probability distribution and sampling from it using the `sample` function in R or the `likert` function from the [wakefield](https://CRAN.R-project.org/package=wakefield) package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use [LikertMakeR](https://CRAN.R-project.org/package=LikertMakeR) or [SimCorMultRes](https://CRAN.R-project.org/package=SimCorMultRes) to generate correlated multinomial responses. Additionally, you can define a data generating process. For those familiar with item response theory, the [mirt](https://CRAN.R-project.org/package=mirt) package allows users to specify discrimination and difficulty parameters for each response category. diff --git a/README.html b/README.html index fd71523..b92648a 100644 --- a/README.html +++ b/README.html @@ -607,24 +607,24 @@

latent2likert Package logo

-

R-CMD-check - +

R-CMD-check + - + - + - - + + codecov codecov - 96% - 96% + 98% + 98% @@ -632,13 +632,13 @@

latent2likert

Overview

-

The R package latent2likert is designed to -effectively simulate the discretization process inherent to Likert -scales while minimizing distortion. It converts continuous latent -variables into ordinal categories to generate Likert scale item -responses. This is particularly useful for accurately modeling and -analyzing survey data that use Likert scales, especially when applying -statistical techniques that require metric data.

+

The latent2likert package is designed to effectively +simulate the discretization process inherent to Likert scales while +minimizing distortion. It converts continuous latent variables into +ordinal categories to generate Likert scale item responses. This is +particularly useful for accurately modeling and analyzing survey data +that use Likert scales, especially when applying statistical techniques +that require metric data.

Installation

You can install the development version from GitHub with:

# install.packages("devtools")
@@ -647,7 +647,8 @@ 

Dependencies

To keep the package lightweight, latent2likert only imports mvtnorm, along with the standard R packages stats and graphics, which are typically -included in R releases. An additional suggested dependency is the sn package, which is +included in R releases. An additional suggested dependency is the +package sn, which is required only for generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions @@ -673,7 +674,7 @@

Using rlikert

Likert scale, use:

library(latent2likert)
 rlikert(size = 10, n_items = 1, n_levels = 5)
-#>  [1] 4 2 3 2 1 3 2 3 2 3
+#> [1] 2 5 2 3 3 1 2 2 1 5

To generate responses to multiple items with specified parameters:

rlikert(size = 10,
@@ -683,16 +684,16 @@ 

Using rlikert

sd = c(0.8, 1, 1), corr = 0.5) #> Y1 Y2 Y3 -#> [1,] 3 2 6 -#> [2,] 2 2 5 -#> [3,] 2 2 3 -#> [4,] 3 1 3 -#> [5,] 3 1 5 -#> [6,] 3 3 6 -#> [7,] 4 3 3 -#> [8,] 3 3 6 -#> [9,] 2 3 3 -#> [10,] 3 2 3
+#> [1,] 4 3 5 +#> [2,] 3 2 3 +#> [3,] 3 3 3 +#> [4,] 2 3 4 +#> [5,] 2 3 4 +#> [6,] 3 2 4 +#> [7,] 3 1 3 +#> [8,] 2 1 3 +#> [9,] 2 1 6 +#> [10,] 3 1 3

You can also provide a correlation matrix:

corr <- matrix(c(1.00, -0.63, -0.39, 
                  -0.63, 1.00, 0.41, 
@@ -708,17 +709,17 @@ 

Using rlikert

and these estimates are typically lower:

cor(data)
 #>            Y1         Y2         Y3
-#> Y1  1.0000000 -0.5634259 -0.3760927
-#> Y2 -0.5634259  1.0000000  0.4362989
-#> Y3 -0.3760927  0.4362989  1.0000000
+#> Y1 1.0000000 -0.5277858 -0.3678057 +#> Y2 -0.5277858 1.0000000 0.3983187 +#> Y3 -0.3678057 0.3983187 1.0000000

Using estimate_params

Given the data, you can estimate the values of latent parameters using:

estimate_params(data, n_levels = c(4, 5, 6), skew = 0)
 #>          items
-#> estimates            Y1            Y2            Y3
-#>      mean -0.0415071755 -0.9654381812  0.0004640853
-#>      sd    0.8131470573  0.9995025670  1.0275232490
+#> estimates Y1 Y2 Y3 +#> mean 0.08270757 -1.10356623 0.01029328 +#> sd 0.79986937 1.06032921 1.01115089

Transformation

To visualize the transformation, you can use plot_likert_transform(). It plots the densities of latent @@ -764,8 +765,9 @@

manually specify the intervals.

There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete -probability distribution and sampling from it using the sample function -in R or the likert function from the wakefield +probability distribution and sampling from it using the +sample function in R or the likert function +from the wakefield package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use LikertMakeR diff --git a/README.md b/README.md index 68ff6cc..44573f3 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,12 @@ [![R-CMD-check](https://github.com/markolalovic/latent2likert/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/markolalovic/latent2likert/actions/workflows/R-CMD-check.yaml) -[![codecov](https://codecov.io/gh/markolalovic/latent2likert/branch/main/graph/badge.svg?token=HZTG6RUB2J)](https://codecov.io/gh/markolalovic/latent2likert) +[![codecov](https://codecov.io/gh/markolalovic/latent2likert/branch/main/graph/badge.svg?token=HZTG6RUB2J)](https://app.codecov.io/gh/markolalovic/latent2likert) ## Overview -The R package **latent2likert** is designed to effectively simulate the +The **latent2likert** package is designed to effectively simulate the discretization process inherent to Likert scales while minimizing distortion. It converts continuous latent variables into ordinal categories to generate Likert scale item responses. This is particularly @@ -33,9 +33,9 @@ devtools::install_github("markolalovic/latent2likert") To keep the package lightweight, **latent2likert** only imports [mvtnorm](https://cran.r-project.org/package=mvtnorm), along with the standard R packages stats and graphics, which are typically included in -R releases. An additional suggested dependency is the [sn -package](https://cran.r-project.org/package=sn), which is required only -for generating random responses from correlated Likert items based on a +R releases. An additional suggested dependency is the package +[sn](https://cran.r-project.org/package=sn), which is required only for +generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions if needed. @@ -64,7 +64,7 @@ scale, use: ``` r library(latent2likert) rlikert(size = 10, n_items = 1, n_levels = 5) -#> [1] 4 2 3 2 1 3 2 3 2 3 +#> [1] 2 5 2 3 3 1 2 2 1 5 ``` To generate responses to multiple items with specified parameters: @@ -77,16 +77,16 @@ rlikert(size = 10, sd = c(0.8, 1, 1), corr = 0.5) #> Y1 Y2 Y3 -#> [1,] 3 2 6 -#> [2,] 2 2 5 -#> [3,] 2 2 3 -#> [4,] 3 1 3 -#> [5,] 3 1 5 -#> [6,] 3 3 6 -#> [7,] 4 3 3 -#> [8,] 3 3 6 -#> [9,] 2 3 3 -#> [10,] 3 2 3 +#> [1,] 4 3 5 +#> [2,] 3 2 3 +#> [3,] 3 3 3 +#> [4,] 2 3 4 +#> [5,] 2 3 4 +#> [6,] 3 2 4 +#> [7,] 3 1 3 +#> [8,] 2 1 3 +#> [9,] 2 1 6 +#> [10,] 3 1 3 ``` You can also provide a correlation matrix: @@ -110,9 +110,9 @@ these estimates are typically lower: ``` r cor(data) #> Y1 Y2 Y3 -#> Y1 1.0000000 -0.5634259 -0.3760927 -#> Y2 -0.5634259 1.0000000 0.4362989 -#> Y3 -0.3760927 0.4362989 1.0000000 +#> Y1 1.0000000 -0.5277858 -0.3678057 +#> Y2 -0.5277858 1.0000000 0.3983187 +#> Y3 -0.3678057 0.3983187 1.0000000 ``` ## Using `estimate_params` @@ -122,9 +122,9 @@ Given the data, you can estimate the values of latent parameters using: ``` r estimate_params(data, n_levels = c(4, 5, 6), skew = 0) #> items -#> estimates Y1 Y2 Y3 -#> mean -0.0415071755 -0.9654381812 0.0004640853 -#> sd 0.8131470573 0.9995025670 1.0275232490 +#> estimates Y1 Y2 Y3 +#> mean 0.08270757 -1.10356623 0.01029328 +#> sd 0.79986937 1.06032921 1.01115089 ``` ## Transformation @@ -180,8 +180,8 @@ specify the intervals. There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete -probability distribution and sampling from it using the sample function -in R or the `likert` function from the +probability distribution and sampling from it using the `sample` +function in R or the `likert` function from the [wakefield](https://CRAN.R-project.org/package=wakefield) package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use diff --git a/dev/prepare_data.R b/dev/prepare_data.R index 9b0ccdc..1b7d124 100644 --- a/dev/prepare_data.R +++ b/dev/prepare_data.R @@ -20,8 +20,5 @@ for (var in vars) { } str(part_bfi) -# Save it to `./data` directory -#save(part_bfi, file="./data/part_bfi.rda") - -# Save and add `LazyData: true` in DESCRIPTION +# Save the data set usethis::use_data(part_bfi) diff --git a/docs/articles/using_latent2likert.html b/docs/articles/using_latent2likert.html index 094e02a..2629e0c 100644 --- a/docs/articles/using_latent2likert.html +++ b/docs/articles/using_latent2likert.html @@ -82,7 +82,7 @@

Marko Lalovic

-

Last Updated: 2024-06-21

+

Last Updated: 2024-06-22

Source: vignettes/using_latent2likert.Rmd
using_latent2likert.Rmd
@@ -91,8 +91,11 @@

Last Updated: 2024-06-21

-

Introduction +

Using latent2likert

+
+

Introduction +

In social sciences, variables of interest are often conceptualized as latent variables — hidden continuous variables measured through Likert scale questions, typically categorized as Strongly disagree, Disagree, @@ -105,9 +108,9 @@

Introduction -

Simulating Survey Data -

+
+

Simulating Survey Data +

The following hypothetical survey simulation is loosely based on an actual comparative study on teaching and learning R in a pair of introductory statistics labs (McNamara 2024).

@@ -129,24 +132,31 @@

Simulating Survey Data
-library(latent2likert) # load the package
-set.seed(12345) # to ensure reproducible results
+library(latent2likert) # Load the package
+set.seed(12345) # Ensure reproducible results
 
-course_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1)
-course_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1)
+# Generate responses for Course A and Course B +responses_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1) +responses_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1)

To summarize the results, create a data frame from all responses:

 n_levels <- 4
 n_groups <- 2
-cats <- c("Poor", "Fair", "Good", "Excellent")
-data <- data.frame(
+categories <- c("Poor", "Fair", "Good", "Excellent")
+
+# Create a data frame to summarize the responses
+response_data <- data.frame(
   Course = rep(c("A", "B"), each = n_levels),
-  Response = factor(rep(cats, n_groups), levels = cats),
-  Proportion = c(response_prop(course_A, n_levels),
-                 response_prop(course_B, n_levels))
+  Response = factor(rep(categories, n_groups), levels = categories),
+  Proportion = c(
+    response_prop(responses_A, n_levels),
+    response_prop(responses_B, n_levels)
+  )
 )
-data <- data[data$Prop > 0, ]
-data
+
+# Filter out rows with zero proportions
+response_data <- response_data[response_data$Proportion > 0, ]
+response_data
 #>   Course  Response Proportion
 #> 1      A      Poor       0.30
 #> 2      A      Fair       0.20
@@ -158,9 +168,9 @@ 

Simulating Survey DataThe results can then be visualized using a grouped bar chart:

Grouped bar chart

-
-

Pre and Post Comparison -

+
+

Pre and Post Comparison +

Now suppose that the survey also asked the participants to rate their skills on a 5-point Likert scale, ranging from 1 (very poor) to 5 (very good) in:

@@ -189,23 +199,35 @@

Pre and Post Comparisonpost_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(0, 0, 0))

Create a data frame from all responses to summarize the results:

-pre_post <- list(pre_A, post_A, pre_B, post_B)
-n_items <- 6 # for 3 questions before and after
-n_levels <- 5 # for a 5-point Likert scale
+# Combine pre and post responses into a list
+pre_post <- list(pre_A, post_A, pre_B, post_B)
+
+# Number of items and response levels
+n_items <- 3
+n_levels <- 5
+
+# Define skills assessed
 skills <- c("Programming", "Searching online", "Solving problems")
-questions <- rep(as.vector(sapply(skills, 
-                                  function(skill) rep(skill, n_levels))), 4)
+
+# Generate repeated skill labels for questions
+questions <- rep(rep(skills, each = n_levels), 4)
 questions <- factor(questions, levels = skills)
-data <- data.frame (
-  Course = c(rep("Course A", n_items * n_levels), 
-             rep("Course B", n_items * n_levels)),
+
+# Create a data frame to summarize the responses
+response_data <- data.frame(
+  Course = rep(c("Course A", "Course B"), each = 2 * n_items * n_levels),
   Question = questions,
-  Time = as.factor(rep(c(rep("before", 3*n_levels), 
-                         rep("after", 3*n_levels)), 2)),
-  Response = rep(rep(seq_len(n_levels), 3), length(pre_post)),
-  Proportion = as.vector(sapply(pre_post, function(d) { 
-    as.vector(t(response_prop(d, n_levels))) })))
-head(data)
+  Time = as.factor(rep(c(
+    rep("before", n_items * n_levels),
+    rep("after", n_items * n_levels)
+  ), 2)),
+  Response = rep(seq_len(n_levels), 2 * n_items * 2),
+  Proportion = as.vector(sapply(pre_post, function(d) {
+    as.vector(t(response_prop(d, n_levels)))
+  }))
+)
+
+head(response_data)
 #>     Course         Question   Time Response Proportion
 #> 1 Course A      Programming before        1        0.5
 #> 2 Course A      Programming before        2        0.2
@@ -216,14 +238,15 @@ 

Pre and Post ComparisonAnd visualize the results with a stacked bar chart:

Stacked bar chart

-
-

Recreating Scale Scores -

-

We will use part of bfi +

+

Recreating Scale Scores +

+

We will use part of the bfi data set from (Revelle -2024). In particular only the first 5 items corresponding to -agreeableness. To investigate the differences in agreeableness between -men and women we will also use the gender attribute.

+2024). Specifically, we’ll focus on the first 5 items +corresponding to agreeableness. To investigate the differences in +agreeableness between men and women, we’ll also use the gender +attribute.

Load the data:

 data(part_bfi)
@@ -238,38 +261,42 @@ 

Recreating Scale ScoresSeparate the items into two groups according to their gender:

 vars <- c("A1", "A2", "A3", "A4", "A5")
-items_M <- part_bfi[part_bfi$gender == 0, vars]
-items_F <- part_bfi[part_bfi$gender == 1, vars]
-

To reproduce the items, start by estimating the parameters of the -latent variables, assuming they are normal and providing the number of -possible response categories ‘n_levels = 6’:

+items_male <- part_bfi[part_bfi$gender == 0, vars] +items_female <- part_bfi[part_bfi$gender == 1, vars]

+

Estimate the parameters of the latent variables, assuming they are +normal and providing the number of possible response categories +n_levels = 6:

-params_M <- estimate_params(data = items_M, n_levels = 6)
-params_F <- estimate_params(data = items_F, n_levels = 6)
-

Then, generate new responses to the items using the estimated -parameters and estimated correlations:

+params_male <- estimate_params(data = items_male, n_levels = 6) +params_female <- estimate_params(data = items_female, n_levels = 6)
+

Generate new responses to the items using the estimated parameters +and estimated correlations:

-set.seed(12345) # to ensure reproducible results
+set.seed(12345) # Ensure reproducible results
 
-new_items_M <- rlikert(size = nrow(items_M), 
-                       n_items = 5,
-                       n_levels = 6,
-                       mean = params_M["mean", ], 
-                       sd = params_M["sd", ],
-                       corr = cor(items_M))
+new_items_male <- rlikert(
+  size = nrow(items_male),
+  n_items = 5,
+  n_levels = 6,
+  mean = params_male["mean", ],
+  sd = params_male["sd", ],
+  corr = cor(items_male)
+)
 
-new_items_F <- rlikert(size = nrow(items_F), 
-                       n_items = 5,
-                       n_levels = 6,
-                       mean = params_F["mean", ], 
-                       sd = params_F["sd", ],
-                       corr = cor(items_F))
-

The next step would be to create agreeableness scale scores for both -groups of participants, by taking the average of these 5 items.

+new_items_female <- rlikert( + size = nrow(items_female), + n_items = 5, + n_levels = 6, + mean = params_female["mean", ], + sd = params_female["sd", ], + corr = cor(items_female) +)
+

Create agreeableness scale scores for both groups of participants by +taking the average of these 5 items:

 # Combine new items and gender in new data frame
-new_data <- data.frame(rbind(new_items_M, new_items_F))
-new_data$gender <- c(rep(0, nrow(items_M)), rep(1, nrow(items_F)))
+new_data <- data.frame(rbind(new_items_male, new_items_female))
+new_data$gender <- c(rep(0, nrow(items_male)), rep(1, nrow(items_female)))
 head(new_data)
 #>   Y1 Y2 Y3 Y4 Y5 gender
 #> 1  3  5  5  4  5      0
@@ -280,19 +307,19 @@ 

Recreating Scale Scores#> 6 5 4 5 6 5 0

 
-# We also need to reverse the first item because it has negative correlations
+# Reverse the first item because it has negative correlations
 part_bfi$A1 <- (min(part_bfi$A1) + max(part_bfi$A1)) - part_bfi$A1
 new_data$Y1 <- (min(new_data$Y1) + max(new_data$Y1)) - new_data$Y1
 
 # Create agreeableness scale scores
 part_bfi$agreeable <- rowMeans(part_bfi[, vars])
 new_data$agreeable <- rowMeans(new_data[, c("Y1", "Y2", "Y3", "Y4", "Y5")])
-

And visualize the results with a grouped boxplot:

+

The results can be visualized with a grouped boxplot:

Scales
-
-

References -

+
+

References +

McNamara, Amelia. 2024. “Teaching Modeling in Introductory @@ -304,6 +331,7 @@

Referenceshttps://CRAN.R-project.org/package=psych.

+
diff --git a/docs/index.html b/docs/index.html index f301fd3..11e7c9a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -84,7 +84,7 @@

Overview

-

The R package latent2likert is designed to effectively simulate the discretization process inherent to Likert scales while minimizing distortion. It converts continuous latent variables into ordinal categories to generate Likert scale item responses. This is particularly useful for accurately modeling and analyzing survey data that use Likert scales, especially when applying statistical techniques that require metric data.

+

The latent2likert package is designed to effectively simulate the discretization process inherent to Likert scales while minimizing distortion. It converts continuous latent variables into ordinal categories to generate Likert scale item responses. This is particularly useful for accurately modeling and analyzing survey data that use Likert scales, especially when applying statistical techniques that require metric data.

Installation @@ -97,7 +97,7 @@

Installation

Dependencies

-

To keep the package lightweight, latent2likert only imports mvtnorm, along with the standard R packages stats and graphics, which are typically included in R releases. An additional suggested dependency is the sn package, which is required only for generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions if needed.

+

To keep the package lightweight, latent2likert only imports mvtnorm, along with the standard R packages stats and graphics, which are typically included in R releases. An additional suggested dependency is the package sn, which is required only for generating random responses from correlated Likert items based on a multivariate skew normal distribution. The package prompts the user to install this dependency during interactive sessions if needed.

Features @@ -123,7 +123,7 @@

Using rlikert
 library(latent2likert)
 rlikert(size = 10, n_items = 1, n_levels = 5)
-#>  [1] 4 2 3 2 1 3 2 3 2 3
+#> [1] 2 5 2 3 3 1 2 2 1 5

To generate responses to multiple items with specified parameters:

 rlikert(size = 10,
@@ -133,16 +133,16 @@ 

Using rlikert sd = c(0.8, 1, 1), corr = 0.5) #> Y1 Y2 Y3 -#> [1,] 3 2 6 -#> [2,] 2 2 5 -#> [3,] 2 2 3 -#> [4,] 3 1 3 -#> [5,] 3 1 5 -#> [6,] 3 3 6 -#> [7,] 4 3 3 -#> [8,] 3 3 6 -#> [9,] 2 3 3 -#> [10,] 3 2 3

+#> [1,] 4 3 5 +#> [2,] 3 2 3 +#> [3,] 3 3 3 +#> [4,] 2 3 4 +#> [5,] 2 3 4 +#> [6,] 3 2 4 +#> [7,] 3 1 3 +#> [8,] 2 1 3 +#> [9,] 2 1 6 +#> [10,] 3 1 3

You can also provide a correlation matrix:

 corr <- matrix(c(1.00, -0.63, -0.39, 
@@ -158,9 +158,9 @@ 

Using rlikert
 cor(data)
 #>            Y1         Y2         Y3
-#> Y1  1.0000000 -0.5634259 -0.3760927
-#> Y2 -0.5634259  1.0000000  0.4362989
-#> Y3 -0.3760927  0.4362989  1.0000000
+#> Y1 1.0000000 -0.5277858 -0.3678057 +#> Y2 -0.5277858 1.0000000 0.3983187 +#> Y3 -0.3678057 0.3983187 1.0000000

Using estimate_params @@ -170,9 +170,9 @@

Using estimate_params
 estimate_params(data, n_levels = c(4, 5, 6), skew = 0)
 #>          items
-#> estimates            Y1            Y2            Y3
-#>      mean -0.0415071755 -0.9654381812  0.0004640853
-#>      sd    0.8131470573  0.9995025670  1.0275232490
+#> estimates Y1 Y2 Y3 +#> mean 0.08270757 -1.10356623 0.01029328 +#> sd 0.79986937 1.06032921 1.01115089

Transformation @@ -203,7 +203,7 @@

Further ReadingRelated R Packages

To simulate Likert item responses, the draw_likert function from the fabricatr package can be used to recode a latent variable into a Likert response variable by specifying intervals that subdivide the continuous range. The latent2likert package, however, offers an advantage by automatically calculating optimal intervals that minimize distortion between the latent variable and the Likert response variable for both normal and skew normal latent distributions, eliminating the need to manually specify the intervals.

-

There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete probability distribution and sampling from it using the sample function in R or the likert function from the wakefield package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use LikertMakeR or SimCorMultRes to generate correlated multinomial responses.

+

There are also several alternative approaches that do not rely on latent distributions. One method involves directly defining a discrete probability distribution and sampling from it using the sample function in R or the likert function from the wakefield package. Another approach is to specify the means, standard deviations, and correlations among Likert response variables. For this, you can use LikertMakeR or SimCorMultRes to generate correlated multinomial responses.

Additionally, you can define a data generating process. For those familiar with item response theory, the mirt package allows users to specify discrimination and difficulty parameters for each response category.

@@ -242,7 +242,7 @@

Developers

Dev status

diff --git a/docs/news/index.html b/docs/news/index.html index b6e58e3..3ca2e13 100644 --- a/docs/news/index.html +++ b/docs/news/index.html @@ -51,37 +51,41 @@
-

latent2likert 0.1.0 (Release date: 2020-10-17)

-
-

latent2likert 1.0.0 (Release date: 2024-03-28)

-
-

latent2likert 1.1.0 (Release date: 2024-06-06)

-
-

latent2likert 1.1.1 (Release date: 2024-06-06)

-
-

latent2likert 1.2.1 (Release date: 2024-06-12)

-
diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml index 93b4516..3c858b2 100644 --- a/docs/pkgdown.yml +++ b/docs/pkgdown.yml @@ -3,7 +3,7 @@ pkgdown: 2.0.9 pkgdown_sha: ~ articles: using_latent2likert: using_latent2likert.html -last_built: 2024-06-20T22:53Z +last_built: 2024-06-22T13:27Z urls: reference: https://markolalovic.github.io/latent2likert/reference article: https://markolalovic.github.io/latent2likert/articles diff --git a/docs/reference/discretize_density.html b/docs/reference/discretize_density.html index 830e694..f152551 100644 --- a/docs/reference/discretize_density.html +++ b/docs/reference/discretize_density.html @@ -104,8 +104,8 @@

Details
\(f_{X}\)
@@ -182,7 +182,8 @@

Examples#> [1] 0.07994185 #> discretize_density(density_fn = function(x) { - 2 * stats::dnorm(x) * stats::pnorm(0.5 * x)}, n_levels = 4) + 2 * stats::dnorm(x) * stats::pnorm(0.5 * x) +}, n_levels = 4) #> $prob #> [1] 0.1647781 0.3380772 0.3359810 0.1611637 #> diff --git a/docs/reference/figures/courses-grouped.png b/docs/reference/figures/courses-grouped.png deleted file mode 100644 index db5f60c97f42acf36c3405c65342ad2896b70e2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67037 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 diff --git a/docs/reference/figures/courses-grouped.svg b/docs/reference/figures/courses-grouped.svg deleted file mode 100644 index f8c5ee0..0000000 --- a/docs/reference/figures/courses-grouped.svg +++ /dev/null @@ -1,1238 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Excellent - Good - Fair - Poor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - How would you rate your experience with the course? - Course A - Course B - 0% - 20% - 40% - 60% - - diff --git a/docs/reference/figures/courses-stacked.png b/docs/reference/figures/courses-stacked.png deleted file mode 100644 index 52fe1dd75b2ebbc1ea54bbe28ad02dc43b502023..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 134301 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�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

BGc4qTTka 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 X$c*es>4h|(OQueoH6dc0x%>YD-~{gC diff --git a/docs/reference/figures/courses-stacked.svg b/docs/reference/figures/courses-stacked.svg deleted file mode 100644 index 26c0846..0000000 --- a/docs/reference/figures/courses-stacked.svg +++ /dev/null @@ -1,3718 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Course B - - Course A - - Course B - - - Course B - 100 - 50 - 0 - 50 - 100 - before - after - Percentage - - - - - - - - - - - - Very poor - Poor - Fair - Good - Very good - Course A - Course A - Programming - - Searching - online - - - Solving - problems - - before - after - before - after - before - after - before - after - before - after - - diff --git a/docs/reference/figures/hex-drawings.svg b/docs/reference/figures/hex-drawings.svg deleted file mode 100644 index 7ad0f52..0000000 --- a/docs/reference/figures/hex-drawings.svg +++ /dev/null @@ -1,1904 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - latent2likert - - - - - - - latent2likert - - - - - - - - - latent2likert - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - diff --git a/docs/reference/figures/overview.svg b/docs/reference/figures/overview.svg deleted file mode 100644 index 43de556..0000000 --- a/docs/reference/figures/overview.svg +++ /dev/null @@ -1,953 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - Likert-type data - - - - - Estimation - mean - - sd - Estimates - - - - - - (data, n_levels = 5, skew = 0)#> items#> estimates Y1 Y2 Y3#> 1.0245888 1.9838485 2.8588634#> 0.5114207 0.9639142 1.2789577 - mean - sd - estimate_params - estimate_params() - n_levels - - - - skew - - - - - - - - mean - - sd - - Parameters - - - - - - - - - - - - - - - - - - - - - - Likert-type data - - rlikert() - size - - - - n_levels - - - - n_items - - - - - - - - - - - Simulation - data <- (size = 2, n_items = 4, n_levels = 5, = 0, = 1, ...)data#> Y1 Y2 Y3 Y4#> [1,] 1 4 4 2#> [2,] 2 5 5 1 - rlikert - mean - sd - - diff --git a/docs/reference/figures/scales.png b/docs/reference/figures/scales.png deleted file mode 100644 index dd96b4bf33aff4eb0b3d401baa2ad9ce6bca2b8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123863 zcmd?RhdY;l|39ofG*l!FN=6}yvPTh;qGV*3UD<@pO0ttZGRnvbA$yfQLXzxFWXs<7 z*RHDv zttVZ`uaL9cJ#aOttJ9(bR^#8M)dVcc(oY%nx;WNVpv*QgJnTX(VC^R?w$c6m=9||M5h;|D zKa-AyhJ{I01hC43U zJ%=suQ8$9lUtyy@derUgo%gswY^gFvKE7k`-o4|tn(B!PN=#(tH0*GZ3gh)x)A+9q zH!G|0jL+NYoMPHmoB6Q@_Xr-d?O1{5VPUFgwM4I8mE|v7`t^pkY@FnENQhgYx;<4O ztLpQD0=u)?#7F)8C4D;ayVTQR#mL6rAN5<=t1?SVuj+T^X1w4amROC?a>CD}JKJPS zYHBKd=-&UjDS>h9Q>`m`7URXWZ@9GEDcRIip0|=6I6zU<(V^0sxnn=I-#v!EKN5eN zWx?_D-iBK!y|*&anP-A!J6QeF#U*ZWX=O#SoLM&RDV9CJnDf7X^phrW_Z>wJG|HL! z7qUI%6U!!xHq_X6;o|(CQgP_K)u{~;)%f}IXAqYWb#)+{`gO(sy6%R?>i3@xowSx` zQ7=6HO-uv)>T{!-s;f@orkv?iw9jscknJjRA`}SnP;_}?6 zw~voZ$A51;;&%wh5zpy;Xz1||Y6VJcUGHxmyJ*;P({TeCfQpnCldN%nHe+Gp~L9{hi)$8PPH`lTJ)b#K|We{g9MYJ8~znsjsWR#!II* z1?$Ts|6!-6n5L_rTuoh_n6U6>A79_zkrB7+{!Cw5TXSSht7>aSZEg9#fB$|@TYH;= zf9%d#T)e!*O-&dPN^DZehVG zBO^nt%F)r$(evxqc1Fh7gZ1>6F3sI$t*fi^GJT>{zeSSi%$d*Q?OEQTp?moF__Fiz zN=iz$SXfxZgoP-YnwfbA1-ZOqtoZk?d9a;G`6&K ze)C2-K2#mo=9TOuFE8&^H<$Ky%If=XbNoHVr0Wf{kPuClQMZ`2HSY^DuZi)&nn1Sk zA0#AIRaL|_r=_R&;_~+I_c~Za^FB7Vzb=fg^6S^DWo{I`gM-_4>~KC<`^+!LVM7pi z=N%BReaDU+Sig5zs+h2!rm9}WA?2Ub8 z?sFQMnVCn}wRVzxZf&JnTUn_19wX__V)kc1A{2$JHsliX{Bbt5e3y?O&l6{_*opMp z!wk{3u+Y$NY1)!6UcT&$2~>OTu3AI z!^5o>IxT6|EFV5(vR|81z{WqSTOaNu70aA9R_0FG`}=qN;>zaFoq3ki6*La_R_4dK z?N_tANVYtB^hh>Qe((DF`fz&|Tdw7#+J|ig&iiS~-6)uidp>Vc$+t?awA@O)zP+%p zaOa*qrQhC(G@y29RGnsI+<|Rgj-@vl{&q^G$X=C=k|a(hX7}pqDj6Bs(*vi)K9`h4 z-Tm|AyAvtpNAuq@SH;BoaF3O>wdcMYK6>PivKNV?c0|DX;=`XG6ltFXkD$Djr)k%G z#D#?NKHj~wv?SU#K0basR_esoty}MXdwXTLB{iyQ3tOg9_p7+LGX;y$627x_zmIVl z^5-%TKY}ME+Ln}*)DS63x^>&O`?JFhdf(nYli;C>Lft2BP$lP}^S%?s{>%!q0cX_< z`9rvjUiI|c+jD}KJmXPwrWG}QMa#$gTTmj57pLy46xu49=8QBYmUMU1Y}&Nx2(P(b zDtSm}j@b_E%8D=)$ zWjt(>Su$YJ#R6F`P_wbI-3VrnxyC|Izb#QdsTdW=WOn#A9X z$EI_MTxr6`e6*f>IM$XyioPg(<;oRr3r{geG0&s#G%H>m;Wj>r(tUF=pqiYz8SSrh zy1&BP-(N1ev%Gve_L2@w&Io78b+hYmSjdh~O+Y-M56i_@Tu+?Ae@QL{BoyCu`$ z*ehy*gaw;TmmRn7B_k()@lM1!Qp9;5!=P-(pFe*-0)33Nq;9!=`*ybVTte66UVhv6 z51W%u@R|=l^*${giGs&q#KFOFC|#%ayZg%Wvc}?6uc!tdd`tclj-N@&&Rcfu>p|bN z9>rrhb^bh=fX#eq&lku0nwm>OclJ~ByJ*)0+^-K8$TsPJsg~#LyrV74$O}zK^Yhb9 zF`SDZzhxSgZfjgJHA(&FO1 z@6i$rb5t}mUbx|V08%clu3vC;=K@U3&9Ay2K1XcrQz9?#4&*#RmF2dX|Da~u_UVD> z#DddMd+y^=e3U0P^=|=5K3?8PxkPzlCzN|oMd^`AtEe28|8Vyis%QV~@5aiyx}VDB z?d`{~sdnz&TZWr*Ppafc-@s<6K$9~Ws60SNM>l-#PL8SeCxiCGIKLI2pKU?y)A^o> z)-W{~s6JAr{7LT_b|IxJ+W7tca?iU(_5%BkbDw;p(3_!!6Qi@=kKuo}yGR*2mr5;# zWR(L)J;g}Q{P~S;>^(R?(V3XFhvdSOKLZ-IY^JC^N=jB}L_|cxcx-g^HNz+X5U&8mEWk`}{;<%-YC4MBh(+3gJj=<$=afF(@+T!ZaQrw6pe;*)xQ0fg)nviKRg`1dp}yha zGipx;DZF35zV|&7r;2_hNhxC_N;_G-h;?~>JaOc1MrP(=-0L9}a)wFDoHY|*P2UxA zVHXbFI+tYCyo9c1)Yn6N7Gvihydh4SRs;Z=?WY^Iw)rSHpFU=0%4bA~dmK6Cd38zsiqfRpqAj)U>pN*mvX#DQX$lsB?01H0H-zBTWaZ6C9W+DJii?TJGb4 z4jXF;V+P*haZ82J$&sgh%wU~h!4RFi(O z*70!O$JfnAen`xj3=9o1;@CZGurnV0d9JDXI7wg5Q23#uwfQ#^6|-nE^ed~sV zxS;d($o)r;5)-=7&s}l)gXh8`{QUjtu@_^OC!O$^To<|>)U~v<;<|KHR6?~PaDW{? zc}T?`x_|$EaYco=oZ8$-6US0c$X}iNIt@7V*Qo|^8i{qy<&aB{+*o3p9+sKa3&duH z=H=yquv|$UKsn*W34EV>d0;xywRrQR_~Nr>yE_UB3Y^G`1rY3$9Xiq7p9s&v$3}?TXY)dFw?0Z0 z1I3lY#0fR>F8%|&<^K8e<@9+kUtiyyq@*0oUX8KRM9Wng$UmP&X7=UzHl467P7&ze z?%2r9A5?DKR@pYu(9j_4;@rH`EcrfhezFWZnd($eN+f*l#O~ZVZA|9TwuxHW{=IaB znwAZ3nAF#B0p&T8lnSBw`FWiPWv9a|ci-kdU9FP7ckk`U7dg{y6K21@9uVGXGC!tR z^~~nF5H&S5EfZ5U?Mmfw90qcKCOP(%TtHtY;Bq-5_2kb2=g;5TdFrZ?Qpj*)tXI_& zoCa5;qP3r6YZomiRD8GZqp*Me{CO!JsbtJ&0eX7TwBc4j(CAIUt*x!at*wfGZ1@G= zUfY}V#THymro&l2kwV>mDQ0A|QG9)+_vxF|Kj;*C>?b;Sy#4&NzJD&O5JK;z02~(0 z%+aja*W25BU%u!Nqm&GUmizagI{>;YvckRMG0RpoCG8vjm zfq`jEbmZtv(){m2OUv|xfP%NLTzQ5P_;W?v95~+F*EcF_^+)_2`i+K8zerk5`DB#` z^3RleE6U15SLd45eK=A=?)0doYKW%l)E+HMe|(JDnC;9NGE_T`m6gNxIFC9%_jIA5 z9|Sf?yDNxReks1P;O*PXnI~(0czJqywtRZvo4~(^BAZP$_s5uqaZm48Z>O@45AUXZ z7U1DgoZFN7Qt$+y1v!@1EsIT|r_f?tDHQ z#;%C8UHWslMkK1iWgF??AV2qx%V+Nhp}n1(rh4z5_}Q*GSyf|wb?I=9*eCr~nSo!w z4$p+2xsH8m=0WXKha1aol7;@ zD$iEX97Sbi{UnUopZvK49wS3_gSNEf*&giRtl`JRH2~BmR*NKmF1Y!IllIi9D;JHr zI%so(XF~Zk%lEhse2bPibiugia#dy@i!r5eWua#;Xj{TcTmF;uG0W8fUuoHez`#Jp zC+EyeOm6dEV`FBPeDUJN-B~Ncj_g#4p;%l5fL!fS@|ne0;3=>0-;}H>dfqF?NT%0U zCKJ~Sz1|2p6pDr)dgg3o-&SCg)n`yck!?Br?Fy=)_{9g`OKG1Nw0!*X!R~J&OkcnI zs+JFd^?=;0r>{6}|MKO_6*fVvK$ZPrHZ}c*{K&}2sXsMrQE%UV9!>*+Ah-yMi&kQ$$NKUp`iE@0EQG!zjiKuz-Y?OPI&mwUbdG|COlL`O%{5pWeHA+58a z;eer`AzCbFn}UuG!}9EJN20`x<=+5re-5mDoY(xC1r?eg+U+rr551-YiUiqsjgR$? zJN6SLGHpdX9$;Jp*fFhnD_Sl=f2*q(Pk+IazwmfO*7wiiXi5>;!Gq7C;i;ndcWl5eMk%2181hEzs%GN z?I)gU-0hMcBP)QN{KY=^%F4=HVfFoJz0ZI?PC?#FE0_w`1gZO!0&x-BqWXjFjZ0XE zs0ve5+HW~#x_gdulNH!3h~e}B70~77lWp#=@Tvg9uB~GO(=D)`EB@UWOW#f!A+UFF zCfoH8V;_1%!pz-l<5Q>x@p`SrGa?g$Rw$q!RP*E??+f^rq|8;dh^-;Jkny0Ap*0iw zSmMOw;&i`Ha~eR$5!(P3^k=7U-)`YF98swQ8{T{L;?trcA(R^zEY2|%l#UsKU*bnS zf4wb@yB%fx`#XJAX0fLDh>_4)f;52}zIr_R^M3J*U1rO0>}P7ZTs%BvKaKhR zsta?M@MWM{ZEt`cfwCY9l6R}f-VW%jiuH}JucM&da;4f9zw0+{T=k+BFvj&)%@;p% zjf#qjTrc;c@q%iRZu(dKjyx!zJ2!V#It6q>vTh$G1qFSc)EiEN*?_FHw6qqMw-OQ( zfD;uxV~=r+H9&}H1qIg|_B_WaSj7|TgCcpGzyCcCM|O=}et!N{W8;rU_^m!3;nWWr zZp%p2YfXzG9{3oi;QFFw>pFIE8ERh{K}~lE#TC-syNO3omQu9N1RlRDvp+!eGeh-({I4KioDp2?+0qNhp101`Z5wrFe-2eg#OhsT zWp^N5H;^6oA3uJGkB*x2n)DWLo9?vib_H;&N(QiHgN#BxNpp(2uI~5m-)Gx(@ytpA zux7jLy(1#nP$L;}hR)_CJ32bLczVkDiKCYeJkFjvL`HTp6WD}jW(=FTbidH*$)#Vf zioJlOAa^PFN$Tr=_?VvVJ5~XVeIuM-5rT`@BtJlYA4ql|PWvV9_J@;Q1r&q#ca>ej zD%ew9dg#|uU}Nb$8VAGx5x6fgrSKp+oWE)}TJz+xa%i-UvBRH!oEnCkA#}vWfrGhy zprNE>3^=FE0N!cz(F;JiQcar6u;UD*G`CqB0Cb{{H)K3ga5R!xTI~0da~QJhwrlQL z-++2k3i?0yGw<yLyjD|hN9?p- zc^>0Bnx82Raedx82#pLH`WdB9dZ*gOu{|h?eqT1+ZW%8P?Xrwm8dkOZy8|HsAt6kV zO$Y+@XzFe#r$I=)Ev5S;X)twFqc)5!|I(5 zj_e2_2etVYIifH1ENzQ(u&ITMK)0fpZTv2B4$qD0jk{RX0d$0a2p&W<(VqmTVq&@u z58z9W-Nz?0zY@B5Pjfl0_&%BY-6;M+IZJ9X7af6?xT@{@saclh6N{x|uKT}mcXwCI z2bUlSRbRR1G129lH*Zo9#F0QjRw^qiE6nT3PQ(tdnIHfn4w@oy1|}8h1O!xHI6EH; zRV^^=%%$byYuDRn%8@N;hf;F}MS^)94V;!ICOXH(}v#1=^n) zW>)Y?fQz*AsYIJ_w;!r~!?@%%9%1{(RrF8D`TNhugobUbt=-V6j*g4OHoA(sA9e-( zpkg`yQR~^t(@k4Sp>dE?-k^k19;koC3X;t~6>c7)Bm?9jZL{_qv)De{Jrw0%gD!}q zTo$iJsUi4)7R}?4AKonab~0ebXVeSxwP=8k4x*FYnYCkQXTJ($u2s|s!GU}(D*AH) zFxB=Q&g76#HGu317@V0BBN@n4ExEIXJR9_99<)2>liao;-4%37yK zbA5M*ot<47%D(5ke|WgzR8|Cs?yE?<)1@Vmx#*G-^Wfm831}Y|f&EHqV`Ecg4~rl! z&I{+G%03nf0(0(mh(hk@BQ^6J*0Xw|IkOX;%JWKgkf%iLh-V`kFC)qs2<&rqq(X)M zc28IC<3~hAh_WMo5M-s*-hO>a*Q_X6qkMOVBQQQ55c%9Chjm*=r%*2kCb{ z7p^X=lAcS2(OTNtRpFCz39<*oUmd^wgMb{RQ@tg%g5rMU+3hVYEC=Lki*5$f>F3nm3FBvyxLqpQ-qE`34OQ%>gQ^_%qJFjM8q{+coo-?iX(@>#n%_ z%*ONRrBXa4@;M3$3T{y zh58_NUtf2$0XLSb1G1l0GL&wb$of$k4L0%go!Xqv9nLwgV+aw!>>SyrrnZxV&>{}i6;EN2c&i?-X1QY7Be?g|v`2J>E z*~{y@tp|5E`q%AIJ;TMNu+=re=F|V11=zMtVt%l%Ps6H z3Ih8ljx2#b+i$E{wtn%uTt%K;w7xvb(7mv`VD6`~SPG$FyREf|vX7$R?{O&hHg5J$UGlwtL5=qn?qQ{DhCN8mHWjdO4yyJUpxywZ#{9mfXfU z^S;tut-ALvaro_rk~1&(2PZDBT4G|+)WoF0#=X+lgCZLk&E0NgKEAr*+u9#Iu!QBm z;njD|ZL~55RX+6A7a&WcR325SZ)`k-7S`xaII&pcOU$t}_KTYUancMRHt97)Iwh>* zHr;`dgrgdQ`~#2UM^O;=96A3vdXAFi?o+7pqh$s8`5(b*;mJvvsKcGQo2ub7z)N_K z5VrOvv%UD7H(AKsIuEAR@5$A5E0mPvlVRsksE2;~ur7Q8}$m7y&pfIHo<0nqcwe5pakJUXhF)Bg9EPqu?i!Q&QfFdQTL2n9# zQZh5<{rf%?9EPE&mmLLmP~r7jKE6vR1b#hlGp}EjiM<#7{(VB-q{&gw?EtY?A%Msx zEi8|wL=kIhP##{k+YWTVXByU(2HU z)8&!Gl%CPiM9TWgN`lfPC!|yW!4PWO@Q--kgt;zAq*m6}*E7!+1R!1TKVP?h6LEm+ z;$GBca0BQ1#@jMP!gwEhB(o`OEwY-{@HMNht@US-A)!88HaphZ7;O*t=7M1dx9<$Q z7Kn6$yE5r-bKX@HWFG@O3R$^q`8YUDR)hWubnS!;W!#C=Dsi|&F7DQ*Zu^y_5fzeq zIJZ8c-Eb4ja?FPIB->2)iB@H|6}Jk5C_abJrp7NIZ~|T}XMDXdWHx#@c@MtlqPGQ{ zd#(g}%k$u@=}_H?f4unQ2EFs>=1paZBw+5F9UL4Ate_8M>bGjhgcCbB2>(;(Ef1oxm1uc*TB8MPHZw9ZqQifW zHha+X`I*l&6V-Uw`o#s9UTo= zqCN&jg-Z-dnfmd1E7A!{8BFU7MH>>CqN1X~m$DxWe|tAIGsE$q^MYo1WhN?Y-N2Va zfJXry%qK`@`@Mv&?|XXeg2q<3hH^uiFb!5z2iC>pG;mtQyw09QhyW15SxZ?$HT|zF z+CP@KjD+D!ZO!y7$`Kf19i5$XePGh;Ib_ptw9?WI>`_A)<`m-|H7DyNu~me&ozr_HDZ#=NO5ghdiI1^_!(v4dd|S3C%g;Hwdx8VDl517@ar*a9A6)k zFe%2Bc~VVY%LxyZfZulLl6#XGFO8lfsp^+-MNNuC_x8z&j)@8Wp{sZvo=_A=K+W{@ zw0GDprK(hr%k8OWnhNb~S~+uUULG`P`{eDxNJn=>)e<$@#ofKpy*d8Qj?-cu=Xn_K zOjen~bJUb+nCl;vJR9GS{czJ~VIDR~SM)kQS$oGqkeLxg3ZJlPwOwZOGjMn4`n$Ti zbOelAT3Ui0cZJko-Czh?PX`4Zaom!(8y_ga_A^$RW_Gk$x*<&_I$Q#Z1fnGVi?f9$hf4ek+QHCy8Ml|0Me-?u?xWiuSM}69SZc2))6>h5b(N#T6z+xYgxD#a)js%I<^zxjMmFH8FS z!#R`fS<>v3IbY67Z@HthZXX(7VW^0`bg4BHog=s-rQ>lQ*r8anf8Jq;wm*jN?H94N zv!kEkHT$&(Uc2mqf=b05i30j}VA?(l7UJUKzAJutSVEU!b#loFemj;=Dued@|GQm@*)P+57cRkuqR-uh=?ve`a_^?Z!%o`iPn znTDd^2y*`Av1fzc#Un!Y`C9GZUv#=GY=%e(AtK|a&oLCDib`0eE1D$#XjTP<;Ig4% zvRXcNhmHUTWFg6Yr3l&(9^%M4+B;o0`#V3L=7WDhL#AU0aYYw{-o6eGPo@lfL6T zE5ZKm9UnfJ7FnA3Fz;dZ)Oc6%#M-+0@XoT*Qu20-Lx&F0uViIqiRzO}q;+^s9@hGQ+~YE)EJwc7`}GT*-Fc*6SF!A8cU(-+`+AP0#pcXW}ErmV9! z3JwQon>v2IK66xS=3X0;KgNaAN~KCR@`hdaRpM)GLBHblpnPV_nhT-k~w# zFp7C+A_~@OmirA%V7lkamV#{A1MB_pOSMV=IPX2CW2_qUa^H#Fz;Oju0JEw4ZT(JL zc5)7d7#JAr)z#Il;?!&&_gUxLectZ%d!FzzU6TL(EFw3KLI{aJsqmCl;UjBBef@qQ zqb4GXSsqO_G2pfx5F#cwC5;v0G5qo-cTmS2a6wsmn zL8g1d#MCI@V`7atH-?N#AHb^0#FH2w(-eP4Jagw5sMqCd*IdTd zPY*`xWNq`H$;WpQOM39C`b(f<-2=(dwWT9bMt`h?)U;mO2(YEnoVZ| z=q*`}w$~G02~0>WhX5-<76afoU;bExBp%_!wziX!2IB#0O&9&(_3~ws$;!y^x68Z! z4!4J{CBnwa6;wtJ_g1g%Q@ob4i6G@s+J6>&Z;*Xwz)E`zR`6H!mdooQ24hPfxPz?E zAwBs&Uy*4d)@_2c-^~WADXxl&{w@;`5Rj{H`2h3;pXeW3eR9u6aA zXOetkbEeILA%U?GF&l15q|7z{{T$+I4K?M}7|{v-h3V{=r`t%mGVxJlz$t@3H-<_gLkxvR48(WcngW7PKlQZ+$7%T>~P!T9-bj=rJ zd-jo_D^(B~foMB01#HFFVZ9CzZLBWA%>$ zvAzR^S#%8uv^ta6t&i2TJ0T#_^@DJJs{HC`IxwHEB8b9LlK*7J?OX(m966^f;hm7s z$k7JxBAbeojjDc*|EGWY&7hk;%asXBFVtCFN~%E?cad*Q)p%6=ome78QkGT=%}*~w zskK!Gvdu?CNw#j^PJ7|PZPQ@1I2N`1BdDq`(VhQK4$d514fgL-2*RSKcD+uNQ_!D! zld`&e!fsyVNlsV5%T&0(o;4ebbEWX2c!(A#u&=ZyEKKMzt z{hIZI*gFpgUb*W2R?G(P41%zzW(z&?2#1b`8vlh02MFo-;LM*t&x?vSqBabX4TBRX zqxDfAnN@-`5|Lj)z+w6wV&l%r@?o8dHOobzKl)6^K6ri4#MRy1*N#-y z*w{GLAh22ge~uIW#P0NDvW#Kb3kf8`a?@&;WGm2;iMaIe$7fQu{I`_SH*b~!B9Skg zR+xIIsksH5z}J+y28N-ecAn`<&Zj@O@0>Y^WEX(^TWDR20O1kweHJ9fCMMnjLDGrzZp3-637vVll_0N)I$@aVX7Y~v{ghVANha}*GKdy&xt=r{mTCQ-Do`S-X@HR}shT^w>{kpHmzN{qksP`7kQ|EVY2}mBvK`fJ0!u{$Kn|cam*MtK zfqrkqy0>pyTIo+`x8a-mc%-wo_9j~)GLBV)sBQ@h0k2`o9j4lpp5{0kn;%g0Jj;}U%Z%}~b1(vj%Rm5PDcg|;(29WG*X)i0PrCOQr=R4?ft;D2-yO*Y zc6a#t_^{-L#U6-I|BKEHKhU_-wu?+)@4)UlqwYda(9$;@DL?kOkPxzqN}k1D6dLw6 zXC&veIuM;0$ggJ4v6ELqN5*z4*U^`fmKH}eY#Mm|s7l?>pNAo;izDH7>z(kns^BY| z?$rdG%eGlau39?Gn9~iT{cUNMVn=vDaPDJX)zk?G5xrD?fB&BUT2!VH%5hD z;E|mtqC_bT3}JEM+rUk_Jmjc@eOXtjaopYM5cB1;vt2aD~25~IaL zhby+=n-E^4VLdT`a}eG4s;n&e`s$4IDikpypdGns3lu3rpCN+FEULM(bA=~mB$KUL zYHCR91r}6L?SXB}ep)JWKKM@8+GhdI;c?``W`c>~@KMyN2;TerRQLU7Rl}bXx(2_7 zVZj4|izGH3cAf0Z%ewZ==IYh0kSN_)4jnv5`=qX|rR6P_zfGNQv7Qy^kt!AG zA(`Ou3H02G*a&+jzV`d4M7B-vhV4WAzsy@Lej3!lgCJCp_E>uLPbz<1ZIl)|b>>Xm zi}WXYP=3=K+40<7M%XV)SiGN)y$vR&rIOrIdvL&h0k-oYqk=j4RD*>FeZ9TU78k7w z76FNF16;~fR%UPCdlWI>?Lquc*ij^;!uef+t@`cS#nQlKO$=tS!#@>sl%2V_0MncPz$SM3zLRL?`)gD!d zO|fTv@m@Qm&VrS<>FFHslB3U9=4`g4cdYtxO;Xa=3OW4{S{w~ zyC|USpK`VAa&k~yHZF`5x+Z6CDCnBj0i-+toXWhF;(eIEo=Ivgt5Fh!MH|HXI6oJq9>bp_QZ>_X-!rZ+dOVQHk|@+w@S9`%PaHQV0ciA&esSxw+?l zs?GK5*S+U4B1d(6Q5Q9*b+Vu1%Vc+vdP?W5hE?B(KjKbN2|+0ob%;VjPO==)QKM7? z{v;?~bUVa^tfoi^FT=^>uZ3|LNJRl9$=N(ZM2FbfziZIsjO(|ii8io|p%wXf)KFOQ z*Ak|=V&&tRUpG;_V@hWpAReb>i*=?Ctr9_N^O*+cEUBwYevy8b3dqpMBxk0WIFhLC z>2DV|{4&f+e9(T~pnG5lMlsC}TY}!lxu8G*St3_Bmr7}CU-LE zjkRC8CXi!e14vGc7#6qs-NcUZw-vbwMR?4kOF9uhQ_|k9%vPvdPfa4~{+$$wf(pGN zd~CBj1z}>p3JMCMH2`c#JEJCrnZbKV3{%!uR~JJ&r&!Q*c~=OnRL9$ZzZR7oiL)(L znM6kYMfzV`w)W^Rhd=3j8QQ64zGAn3n-;sV_{?4&n*Ape8?koZ2ErG zNV$cWh|S5#$!ShhIM!^v`cKj1)!6NcC_f`(pfM*gJ4N4LKk~tU*REaMa9XsKF%jr) zkO#9lAaoN4STw2lmt0FX#7!Bx0JkM935C1Y|je70> zbr8xB!w|c6HF;~W$=*R>Emn+*{D3HyW`IUOA6lC}T4Z6w-Q95FiqGc3qoL6J`G#}*Q^p}HpK!n203&k#@i<~}qy*h_Se1{IPX zC@nrF@l+g5!1NG|>Dk!o$6D)%+)ePCsHoEr#%f2}$$(N8F=d%)htOSFW@oGfM1g^m zPthP?$Y5EK0JwtXpA&?z#gW*Ju-diqy#-JD)9VF&zhb(={sPZ_#1z4pu4mHI(FJv| zc^@=g7=R`D%;?j{*Rj95)ItW_VmIKa9IT68lnApVEJlEx~Bo$i%!R#Y+?1I6juU%?!C_+Bds1-^BR%kLgTKrgidHGd!ny0ImY@mfK5|o~k z>M!s^yJayY|0?^y?iy?rHI{7$Aq&4|*)Cu?ahwdZjflE37ksN8bxJgO~Uyw0OjO(B>zho?lh61`t$+9r&dSkbAJ?- zV*=Z6nry7wwF=YG?}lALcmbI>ay#JKFf1gMzCI;F*AG2k_{I&7)-}>o#z-ipube%H z(KL|$0R0vCBU6y3(z6h{e(~dnY*ft?8ym^;6qTIketzV>S?YzhPpYz!#T!w1MI&Tr zO8wIGi7BTVt)y=rqk68nM1!)P-z{rtdwGhA0z9kH7IfRH(LhmC#{h)sYpoM+qita7 z<=&s=vUk`w5a-wq*3{Qmz~)WN(vJ|dBVS<7*bh|m0^sO(+2HP&y;Op>*#pzINNBAt zkA5L5#ES*~^Im|IgcX~PXIplBL~*Ig#1vIX(?U8Xake7WYCZk@`R1>oJdL#N1a8>D z{ns}4ZiQ}1*GuRPuU-Y{!z{U)s^5qiA9S$*eGX3dJcJVT)u7IlLdm;P{QykZP3JY+ z1ES=H#h6w5on2g+EUF!GK%IpjsH#WqV+Uzf+jS0GU1?5N!&BA z%?lJmP1IzuKrCmPmMtD6gMknx#9&N%hsiaDPHrc`2+TfWyhF(n@t|z0=}4{ipbMH` zB_zFxIX$>sY{`wk&zle5f@m7jw6TN6_9+0ACM+YJxjP|5-i>Ml7e**KK~0vJ%M=zC z{)PZgsGwb2PZ~~b01HVyv~|$48+BJE7Li%?R*l6{`%JsI>?}~Ubmya_mDKAl6oC13 zwspSzm{E{wXrb+r>5mk38l0zI4zB)e8PkP%prqj0Um@Uxd#L%3U^DuR|LSU&lmwRh zkL>_kO?iIh=nR4%#K`2YXdM$sZNyxl8j-8FzHn*V1jy|-=FskRU9T>?pNJH|Ud!*Z zCzXqr*@ihaAAM}qkiJb}($%)!!APd*>(`oN#_)z`7U5^)5pWv+4(dAXg#^;bG-Tn26KHF zJ;j>Hsh&4Q{1mf8pT5==auNPE;e!%6X`=l7n8XGrLh(>-h=G!wyLYqaPKI23K+ESi z{^|tZ)K6uj;7>GWrl#jLN_XnFXYK{IL!OkmaIufn(McD>Rj)lFxJ`uTZsZbEw6|`N zp|H{AdE}%UGt$$)L&HcQy+`ECyKE*UGMkVThZCeT7=zp$so?6ANL40;Orj`MR#(e( zrjTt$1*ibXh80NNsRKRK$*VhhSxz?h>%k74`qfc&PMV z@TRZo^hM_NTb`wn?+znka#OS1;~B=_;RZS(N8XWVSsyAJaUI(RphpvSaKbXck}yK5 zdkZfWA2ez?b54dMXv_ZY&F8f$$(puo23yliRZKc}vue)>(pJK#B@_#aC_a$AFjk42 z%_I*e9o^MGwRf%)15!RltrC)wA|SMKMT(+{O~iO2x8+2rR$h)#y7ghZsV_UyjO?kn z3`47oSP)Sq^05$DJs=XjL$*ez=p9D=|JT=g9tyf zR!p}sQLTVi&2CPvDigO9g;M5|&U?Kz_c1frzzZCHW~IW5=tsnb_!tmlop89xC@5mG zi|}*^yPlZqgdId(hHBb7G^G0}n~2K4eDmgwRy(q!7hsFYiFN=`i$MECSR+LILXtdz z@9)D?OdBPty1e}Nz@(1ANpm32;p2J>j62?>&oYW@V9s-0HJMga!rIl(?$#Mq6eQcs|ODr5HSh;`=Ndi zV=+BakqN5X7h=eLKOf0ZbD^);6G6W3)L%>%J{fK(b9V%j^yWGvQhQ z6$AD89M<`XJ1KGA&pg2fqwx^Kjn4=Jx|7qvjoS~b#%3C^&bD*cu4kB|(rQNu^ip?N zYto|ubxl-Ad5PC-Gz>+>=6tpThSbB`B>pkPz9AogesN@6JhrhHGF35Dlgt9s#wxRikbEf}3U0U>;A8$(qhLns^by0UQU8-i)yDe16p=&JkZ^5d_87Nj7+wgU0 zYI|Fol0|@_qzS6rISth`E!T!Q-MY|S$R$=~7HzB_L#^azkP3AnXy|h%h{yVP!r0H3 z9*B*9p8_j?_YZr57gAFWX_;*_&ke|-(sG`3iR_eF#U^cvrLYJEu}(u|k4lf6;iB8nV9JL-ibr zg?`(oU6}m$YNO`2dJ0{!57!`yEk}qfq8xg_tj)vh*MXj>U}ArPoyq`nGG#G5`9VS20>`33)I3!@-;`n2X z{F-;)9iD*PtibJn!Nl)KtEj{c5C_Q?bwAs5&`oWHc&`Ac@|WgjN_6sf5=KpD&VsKI z&u9;;=JjVbDQX4xkRWa+;yJ`{?!(Gik^C?>9(jM9^)1UEV55uOs^cr+&-H z91rBrii?ZCR?jHTw>?TB+Ln(2@}-EWvtTx1YNI7@W-6iD%wf@zLHOzAAg#lt2~XwA zni1 zOH1q}$u6pE^OO6%c*G7?emr&T&yotI1OKC>AvH^%u!6%=s`VJYeV7qJCl7@VD8Um8 zTLJu`GFWmUHrzVFc^vPZ!q-#Y_;rWmciy@1C=xsDi+3?zjg<P_2oPt&4C_pv!FNrqbWxymIQDk&))UFa~A?m%S78?#wJjIS{NUIG3{4a#}5 zm4YeJH!zS=T4>FD7VKZCXc6^mBwOC!1imEIYrw2m z&eYa=fk|EKF^>BMxlxCRH@AHFvycq4$}n#{GkZL@&feJ&O*)fy3CP9vpY-VG?|E~e{= zbJ1=${2pcQ0*VOc(V8q)7S|>nXi!=`o7HR#-q^*&#Fz|)S(b-cc2N4juCl z?$;B}K`CbE`XT&u|LS#5d5G=pDKCQ@$`eeV@GLJ(s%z_E+(XbEqh*kG`)R}h*flY+ z?T(bq8D{20t6Ee@y}Y3#Jf>QqW_3J#W7~XUa5>YnjnWmEBuH4@8g!NRfS17hUHqC6nIDLfIP znl8)8=1f$aWCAfww8)sjS(eWWS)0ep2{>QzO=JgMdL-|^vNAWSFdlojNfz4fjgX6H zx9>SZhT8dsbH&}wt&gi{>E`M$t|C|1FtQySDXMv#h?rA@pwwARcEbqNKoKTx&w4J0 zQBqRUU7W`5;wwx-5v@Iu{}*g8FEjuFp!7(%FAd1c183TO09g`Tn{C9Kkkm4I7hGH> zZHM?SU|1|{j{ZM~lf;I5ljWitJdiT{yy{>fx~D_ntnpZCg&6Q%mf|3v_qEb3`}xU= zRyrp$`5f>92@}BY3S`Q&J73>5F)@L9&y6WfmGKJ*u1|MP+H+AO;M!()An%*~$~Yw= zq#7`*wDQzzz#RG~9X4!|9&WT3tttO=r~?Az`+0;`TI(^D!pE97mNss`fxt2u>0y>Q zlTK9Ca!`@J?EY8ny{W_ogM(WR#-6AmF`bBvWLk-}Zuk?OPY@KUpH_p{=9MfpQQ>VQ z2zzp1o97zL`v(L}od3Kc2lD8S7jBgnu1qKo*^dw%Vfx1%=`uy#u#8UUZHVy7B=+3X z(b4HJsW@=~Z|Kna)cSS;Pe2d&xWl~hW)t-toY%?16~iPo1>#yT8zK%8ZDFMk#?QYp zmVQCM4DV z?jV5q)4Ss~<$-SQ?pZ76rLGch0qK7&vd*GbMgKWOYnu2&;Bx(uMLYVbPd`7PGS^`{p`D4a3Sk179_MK`r;}pOq zui)E1$xF$BWN5U|D3_4H2l@dtX~f>v5p~I^iys;$6|jyqrr`71`tgho!pSjBdblv! z%!Uzp;>{6r28aH${q&+O#@Vx8_fdoEGAXzkf?9`Kv^~g+cAlM`eONNH^TxRLBQJ;t>WiWK9ID@T$4ftq#Ww*<)2vz z{J*eh3Ae8m{_`N!HN2@@lUI+168h+m_hw&Cy zObD~u&qmSE$Eb-AClmF(&vke)z^u~o7D9rJkKx?Sg& z9W=*@Q*#`Pk`clMvx+$7qo0Zm)^rl1?z^pM!n)qs9wWluSo`T@T8Ps&R{?`l$6oA zDpu&8uL9Mq&lb*vP12>N5AdL@ChjGJ!}R-cvQ68ASh*ED%$?p18?{$O7w@ClSQJ;W z>UENc=fayHtk4Qxv_B$9-ZV~k8G5K{%E~kwlE@YGfhq?bR@%Eq3cd^d=iz_L-j!XV zz(4hQi<}`+`C6D)w+)=Tt@_yxhX-j}kE2c8{T>_yF7!Ag#r^K*5RIU%715PUs?Wy$ zur?HVfQCu5l5kw!!;%(0AM{XMf*K~APugPQ&o}sXs=Od49QnHr|?^{sH_>zov_)uu>o_OINo{ia9 zAy2GN{LkJV7dEva6lf^|cSs4)wQt&SoQ!CUC_;Sm00g{E=$LXUkDKID?|pgBjhP?c zj{7BiC=>l9`-MD+t_!tYKK3a1lLHQ+gDWP+nyt!aQwUUn{my|Cmx0k(<1mqQWZK<; zCIt|LuRWS{Qr&;cKJJrv9gKg_`TN3z$0K!#mi86zNF1^xQXM!BKufAays!7bnI>p# z8APD|ZzB7X?sy_zm_1cYstL{Og7xe$on`h4-jAW4kC_RRt|vpHVq#)RzmPTJ!pk^L z5a0{ySNQ?)q40CyM@2e;29s;@Bt3Q=IkBsb+F1zZm7bigQoT8t>YDD_#s zydNTf#AKhO5N~kg#!ebl$pTPpNKr2`$b_RUu#b26EpKzub>hHc*Lz^PvCLbXS~2$M zj^oCcZ-jE=wI)HgV^^M+v*L9~hS|L@-JE?#tko~#HC#lU?c49LD1sLY&{e5!{?DHB zytx)Q{9K@vz&39k_a(4@y50TJ%wQZG&ZJd4unhm6*_x$Q<)hRT%wwhlHp57qn0mn# zeN1k?uhxVn-p#!<;M-qJ%JzYr4AbB7e-_b(CZ<-AMQKVVDN2{Wk0_8HQ7_dnkOZL0 zNDMA{p&*JQbLC$FV~PJ2Al*N|W~F<>UPj~s=#kfGavrNa3R(qbkBJo01u)Eq4%-h9 zJkk>z{FD^Wpx+UwqXh~wV-O|qQY(5uRWeL8S)!Qo5r1~Q8d4JsfY5XA~AHkyE7q$nzgN)ZGisB{pO-i(QgR1pCSNCXWX zq<64T6a-XyH(V)Fy&%2KJ~x_}nf1+Dv)*a%_x)KbM!e}a-Hx>ar%a6C z>78gF&CJ`A67IV@tK{*=-IKjXJMYlwqmdk+JJN7#r^%6ncf~f-O`||-a4aPyr4AQo z2oT&F-(39t`rzv~N3UacNY6~v<`-cuE=T-k{1T>cP^s$lP3mDr_R_N)`}1lsHg1mf zq0Z-yXh?z1Mb&_WTtOd+FvX$#;W#UG$^0!#Mx3iDwp{oS)tpp48?)}4M^&N*MRl7^OGPP4 z3^}K3frTf)W)vCNu39g5iQ%fF41^NiND&JtT)}Wi7~xsYEL`8Q(xysn8!Q;cT1NA@ zFm57;C7q!DY_C1i+Ee(;Jbtay&4`&F=-KpyA!cShC!1PbuGwMzSq{pI3=u7>xAdfd zL~~_{06#q@Ji44W(M>dJO1ETh0?RY2ET_BwZr-tGv&6LflL?Ru=myyIB%4m7IL*i% zZDGYdp)(&Na7(zNb4H9#os!4q#Ym}C@$}r1wE+bE6Yr{ zeo7kSS*>`!J?f(m{8gd{d31wD(-U?f9*xPFmrxSAZ@+A@wZL@AGu=`{sH z;{z~y4RlZ3I1p@kmeEz>K$IKuWaT#3ps-0m8;X_<8#Zn70`jhiIDp*kh8NHDn|A{1YW z3yHJex&{#qT=9MYSL%YurzO63=hyv@ZFRBtSwq@pl{{T6J7Y~T`=VFue+>ru(<%BR zpTO5U&rl#0&gEL8yh)&Jx2_T07~m61$B);GO>%BIu>w(s zRc^&UpJ3BZx+K+m5_P_|TZTT@5HX~;q`Hn~x2khnf{7k+R_gCBXWJiC|7sE2i=!GE zoSnhvRbGZjL6^fo-TJvZ!kVh6nxm>R94KMB1x#)M1~QTI{Xd^or^D=_WVjf409-4O zet`kWfF{!y54I}09J@ywvH(x{)rn~tN8JLP?8yyp^PCH}KaaJj2nZ6F zU9*iQ*0i;Wd;dNewmJ=M+~b`WmOU=_4-FL{EP?X#8K$qBytOsc)^`9W27{Qb;Pvo< z5j3@>d+9%){-)`^+D6O+N>ot1nIgy#+u|yizJ_D=(i|m3V&&P#UoC20_s{3NZ(jUj zz_4vxMc4Vy&&BV)vis*Zwj;m&``vpU^ZoPc#hX8Zy#4o&obnH6=l%T~+mCC%%b4@e zuh*A;)AY|BW83%r*Zu#z$oAlye;@YJf4{??61y5Au!TS6fR9NCajylvj-q`s6=Ae!M~fzu36x|I)}` zmHc^ey?EsY|Fsp3?fzFR=lrfbuCs%YsNS6BbTFuQ^R}?&65T3xxxP&so_pt88P~qD zU}Jl9m;KXX`ny_BP`SLx=k7cgG5ic}F8wr&+xL{jN zhQE0INXSJe(gkh=$Q*Q2yFz;C;3l24O&e3cc#rM8ulx5OL-yu2UaEiNi16*0CtrkS zy^FtT^54Y$EBM#R-nJ!n@s*ykmH?cxN=nJ5u$h4i0L{-wf)r|5{4-_>9MfTjGKqoVlFs z3cS2oe5=DQ)L+t)8V^de9TW-2->+Ey9YWfg-CorExIZ4ulDygJfnvZ3I*AtW8?>%c zQ>xBvL2c-;Nh3rsyy-2DX1NpJ>{I`CK*hH#L3*i9M}^m5+a-^__mXj8^?TMU^l#%* zP)T6$#6MAt>|$sdRvuU)|HP?69w*4rSebN3F}bB!$#cM2wL1sYTxLfYp zH>+3U>#hnk36w1ssF&mWlsmFL?%%&X?p{er3Bl+AX)-`%VXCJe;Yi96g10ybFOj0M zN&-KCyp^ibO!;7^{!9Wb>yY)4k9{J1K**V#0sP1N+Xc3Lrs3eqJFx0T&SM|Cfa6kH zoyYXHlFxUYZYvQ^@B(OT5;QWW*YRPDtWUf6A}@8jQ0{N7RO6Og`nqpuy&-V7b2q!N zrIe&bi$e*QuzT{+0Ipb1_0iyErB*yE?&`T_9LYd~4mIuN-wwzuizx~fIN;VO;t@2H z{L3y2>5>EU4eJ*b7kKDgm1i0am@i{}Y0|d&Eq8cAXL596ow{qY^Ij-+`Ikx+m3-f+ zI9~g-PhYu!D_=x-eK2q6i53&h^uHf@w&+)*Yq~&Spb7*B1NkB)UOmUmFfjs(KsNC~ z1$0qzHS#0tsgd-2Z=e80C^PU8SeG+cBFw}ug@l3t3fKmMG*uTEkLN7$+EFec2srX+ z#QExDQ1MIws_Uroc#qwpJ(FF6|3If`v%q^R3KDt%;P_naE)*wDfaOKoTK8|zpt3F>~ z-JI_;*6)F12-Vxcrz!QYfN_{D8MCHF55Z+y5ztbhJ#a0!H`Z?0vL#+UgsR5?1<7PD zAZ@hkwIEosT;fe<_nrV*o&~r9!#Vu^7Ro|}z{A4fi>uMuv z8F=c3z?@$r%~75NHF-HuuR$^W1&=1RhhAlD5Yf_1{-m7_$1 zx{d5^EFc*u^|isl$VY#=Tay_fJH2r?3J8QT3YX2|jC4>h>!YB#y5+Tq53FH2r?~PYn9=hil=9YUbf#+K* z8Sb?QTJ|4N!c$*#n|=wB#c8c8r3d7~iU7<<%OpXVs2O{JB7<<*wQQ z&*g#LA-}17e$+o#tixE=pZh9*;RCn#NJ2ePrKpW80tJ9I0Sl@5fDfPHcRwzyD+S+I=8`99Uwk>X~obQweCQiOlUrA$}2&7AkH$P}c3j{0=2LGbO{+~9q9 z3QTt?K^U1>#soLW6kPEgNNR=Ca%r_dO?*w<`rl8QN81^TuU>ks?qhfOaKc`B`QgX zW%fV2*Z1v3nZj!i^`#$VzmuI^9{TX1=vi^LULTDuR{ZQ`JXwp_E-Lnf=8xI#EIn8= z_!FDlUX$Y*oa+OFitqGVGHvhrhXJ1Dw}1P~6-!TDkkYKxw_FHWh^Xd6H5*wG3Vq$r zuK!J~-SV^gxKyw>Q&|H58m8zKwP(H^MK6P5)ZNv#^`ivk-Qj|Iun&T=I*{h&o!J*o zfDP2mca}&wfIadJny~(ijaRtog=fl6y!LIo!fP4%-NrIhq`-F&j_b{n0b1gPV6ir% z7OQa0nAXT9M1p>f)^4dvI&~;TX!r*~w%$bNpV`@L zsve{qr5JZ-aMRO=uQ!Fygc>hodvGPpi<6zH(0^>*rBjJsCzm>lzI6p@OescVHl4E{ zOk<*r^xJmQXjD5g=r$`Tj?tw2Y{go{QTH6GXrWpn;+eu z`6?U5TXmi#sMev9aXdVecqa(C9vPfK!zIj5y$<;(4*2mCdJvvanZr1B(trM!##@dm$!;Ab50Vjnvezl6E30L}Ab zEwg+$4bpjnttBcc-!EHttU-+SItETvPryX#Pr;DRm$#3aNQ0N4T{ZxC>mk#JpOfu~ zrkdiQhP==rv!yzf&fo3dzT9Z1s&-u1g&4iHdrcJmA5;rHf7#63(|h>%QmfmgOD*$1 zAOB~k2Xp-2_6W!N@=1yH<34#X1%0KLf?IzcmZIi6MnO~Yf(76sgC-Q4iGTUfu$%WR zO0(C%|J??snK<&7F+@!+5qAqca?U?w!2DM$Vdz*p2y>A;XHfoR;EQ9JQ|MrGj0a-l zPSJaf;1VedKekdumBcJ3N!rN=gl;9oG$`0?!$jxF3Q@d&O1;PUNKRghjq-UZt0A_9 zHb?U^bqX3L+zgZ)&Qx}}zD*bO3-tRfo+n-2wb*^pi_CT6&7JOD)lUYLT>|1vIk*+f z{Ex&)OI1wPs%U^dB;fKJVbif9b%?1>=GQt9=?*(cvNzMP)u?gz7?zC*SnPcQ!u#A3^4$3thiiG>L7 z;dm9%ZYo_-Ol;B!>Wg;59bU02>E9e^fjfDXPlLhenQ%EX3VYVy2a(Qjmo3Hjc;|Vqxc!^Y^9mhyGlBfD7MpWRxOpN%t4#a4Br@UPEx-Ig&f8`Ia+dd?(&NZ2y zWo{VlTF}$Fke%Jn>EpM4f%PdZHh213^)qDl-*GvwC0{j=3lSP>8+X2k72{t&k8StM ztlhKPukK7EMbwZ$MX$(5D8Yh^i=~mI252lI9?S)VO)b;X*o&<@ZW|Q=brViIjk-Nm zXW=8`3l4J;Rs8Wb#BNr{rc6K?%dMDJS9j6BShP8NGCgcOy*yIWyXh-K!I&M=wD0?&56?}P(^?DiuJe#l1DlOgh zc@AHc(Lwh9D1v&H1>3baFj16CG-!nJO&jP*aVy+h)JH*{uAa=H0xSNe0A#Q*4Lqye z{YbdRip290n=^0Ue&HgCx}`;OAO6u3AYo1B8F1@dw7)(gH+g>c2LwIW-c&CzlM$!$ z?=z_#pqZEBpWubSXt~brF`c;1Gw*DCa<>FOT9#$nq`f42*ZfwOT^_P7$tpvQE(1Q# zUs{B|!)MZrntr&e@3ON*EIzt&>Sd0~YumBZ{r%Kgm-RCut#P*XS{}dF>`>_JiA00R zQjz?Xu%>h^%tKq!f@|yVX$_nw+Aqy74`wpJ&+Suzm zWr2A%w(HNke&T)EU>HO74+VdfTvJhz?Beur##(>Dxc%iS-LXvN(&t`_8T{VCdd1bI zdS@E@U%xM|Tpg}n98#$zSleDw?^oUaxZ#lU0neQKnhK?cN&~@v@MQLjyDc@5%#_;w z!EF0E?V=X(Ee+rEeSR>H?Fbl?)#v6YuYJZgg=fmY z%enC7bL0AxTsC!M55!A7!AT7@mYJIM{Mg&kC@Zm9Mth~T%7y8|1Fs*XePwRCC3*ja z><({Zhu%o{6fZvhd-p1Zc6r@hVWE<$JXW4k(HA3_-N`O0C9!$6Q>bA0WS@=B@ZY5_ z9>K3hL(E~?8Bm1%$rp5Y;@$|Q!N!s1>5X%Fh&ms<$p9yAf0T|UIxS)455@8}xBHuY zqVFX)hc`ReDb$*^del5~W3O*s;`x!&0u|Qqc0Ir5A*t6LDLrA0!vhM912eOJfz>I$ zNVN<-Jbg;BhdtlRGT%YA;hy#0oy`MXBK$)84tRb%ua_t~ zdfF~(J{SI~zeyI4LByv?u)_1D2H)z<)3ZQ3w+aIC#x+7a$-nUUxaVRfh=g$$| zNAm?p9N5u*qO~s&?nHsh)&eU}b8W!i(O9{|puin!prg4J0sGdF#dAO!$MWS>#{G~58iHsw-2Z2f3W{Bz z)Jh2z5ygZ7^7gg8OJq`tM4=PoxxnH0b7x8SBmES9W{j~+nf>0SB-7j+Fy4U zl=5bA%xIpmoHTZOJ;o>Se2af|wC;t;vdKlwe*@sX*0FE%{IS<=Du;mF!y1tU*lW3O zw!sDHKuIPp6NToInD^xn&0QVx00SC=5nps2Q*JCRDd}#m+`m3#IWfyttY3O9qbtla zEF&XB5kib1#&bbmubB8Op^ej@rz-v*b>OiJ7c>y&sguOjC(_)T^6GrIS!ITfW#(F{ zzMJ~$=h$1Xbouz2iCoPxd7xCivj_gDGDPiGZUpl!1l+3vv6wQ=>PA{b`_fx|h_ng8 z%~AxF!~I`W>GvJ_xlPvv5X~$Y!N+SzzwCSB(xYQjAsc$|@j|&|Co45HX~dFEq|R-wQ)60?$~<(L_05%9 z;+vH-S~UAY@oRapZ%-@9Jq-IUCLt}O}32|Qo*&K=pM-ZHHfIP$uN`Ff32ib`>BVc zsW}vfETSH*MZ_LMP7Ze}6Ud#S8m4|-ylVr|_2AOMUHSzmyvCESY4kc=|A_EXS)>AU z38KFj4fGH}kQl|HyYs=#BpJhstv|~(jA4T82#mtjF_CfFz=7f+Q`*j~J14Ei828a10H+(@3X$%@&jiZLK@x;9O~DS0Zg5&FgW=%kva zmg2f3t-+OKT_kbips}V-reOedN1*7EXmb~AL-QveP`T90#=$$+x9A+5n(CW%mj+cU z5ui;p1MHldE~jhm68#wr7TFPDf3ZH;(A0O0B~<~}1vmE^?Twf`VbCRs>U|=4)7cx3 zEpIZr4{1W`om!LvB_MdQbJ7E;h}c!BSry=k(w@3v{XP4(Efv@|PkRp$Up}>DNP(z0 zgvr?G{f$tvvDHbvJM$%jf=zzIzjzKm%>R-~H#Ke+{_* z;cd$EfB)^5T!8EUxn-ZG=>PDR(d+*mZqqxX&lBa;Ar%#A-8Z`%H?pOf89KCVsW_e* z_iAXxb*%;BqNP-mp3*Dv?m zzh>e0exaWvf^3f>h-?Y)EzR)5w^7H0jzk@6(6Wqo$zuE2idk6en80LXtNQ!X-bLwo z!*OFZ>3IQtE1aLe?UVuUK~-K}FrlgNa^M=<#e>?9e%^!TYk<`kFhKb%wOxr5W(!jI zj1m4fc^>~+nrP&(vHdT#g8$_D_q@5jlFH4fC>lx4WplcQ3}+33bYeE^p}1mR{L9=w zsjvoc`3&B0%KPsbrcQM<5^1IxvOVIuv&~R3O;GOF4_31yRtR(5&5PMC#=a=C{p;@j z^{4yce=!GFE&mr)@HYf}pWgjreaR9&&VWgQ8+|L-cK$Fvpn9#TeW3qi@L-;i{OO)8 zP8-#`JS$y|-$zh$!(mhYUc=JX1e_sImzd!oTe?H2(Y5%!RtlNM; z_WgGs602kzzcRL`nGOMfdND~{Azs+D?u$)sWUlR5qjZX;VcL8*I)Rugjeei+0PWIp zxqWYE(AT2~<_+7k&VaN^(y5ZJFX=C9_U3XlwE}4;9ovqq4!{k=u#P;ZSo=j9_9OTI z`P_A%l5sFX9nOUWYc)esu;+WS^Pe+eTl0c{bB6DVZL6WEe6)Vx3z{|73h^(P-iSR7 zmJGaIeEpj!cdZP^qs}RD4zVwqMRsdxvNwxac-EB7PvVPHo3z(GzNzsrXHRKK_@T;6 zU9XZhEH+lV)u(lR!vak!52F@c_5(E*K2LLUBrNED%*#Ex9zO7Hy z;Pst1?(SVRe>eoY6nvGaKeX<+N{zh>s#Q5R?2OHy3;PTnlOL*E8ls^opKm_T>|MN5 zceB0Qctm29G)J7rIYw2&1^3dqwk5WkK3(RIzl=;=nj{w~Xah-1WQ@AtyUyCy^c<8f z(CbAVDoAM*1@oKl=%}f&6Iu#*1STpr%elCWr1epKk3EsO9sfq66Z!_P*5dvK2s&;; z%mCU`FRY+m<4Kw;8Hl9WR;G9VVLS@?vF zyT4Pacd+?Yi#1|aG49rGI-LG3y4;>M=Fzs3Px?FUXm8r^%KLUGI_{w zuqi-I@3u0po26xejL2q>wy>!&-;-AhUj5o|YU4@9&|_hN!Z`_>uO$tZh%_HrI_uQY zwqetAZ#T(!vlGs-Uk}{dK2qpbV3-`JAhde5RcpoE^Q+V3Pd3RooyULL7cA>{-plzI zXYcB*&V_|wYTq9pf8{o^Y}^Ru?z>F6wc@LEaH^Czyq6$7F5!i|?m zWXhu4fLNl0!5jvK4hiB(b_0KeLTG<^iPGR*J4u=>s!dL40~(T-e{dwq9uy$Pr3G6e zg^cXrfd-RLUXVSA{F5;~(r5^Yf1~aw2~r23{a`U5K8au;6fyw4{2K6_LOW>XVFzv- zH_OlB2Y}sS0K$YC%xF-~cnw^OWI^ zN|G}&B!DCH;aojPbtNPuG-AAE#IhnMd3E_%^IhiiSl`)*rhD<*13c;ltlYOPYxVUM zxXl-89_hOH_Hc(%Put7ZT<%d7os{NtPVxm)0ii`A`dUA9N=pd0=riB*t9(~KI^&_r zh_O@g-9Hc?sbM)AaZKKPld!MA?qSQ|p|`Ogx{v4AShn!&b(>ah5;tVpmh^=-CdF;< z4@uj4Wo9BkE8n4q|6tvixwkuGX7)C-OSZI6D)H2GheUT!CB~odsC^5k@y~t|>isGbagX3I>pc4f%Pk%TShPtG{UJ3sJigAdwWC*t=lk=oPC+#}nd5)v~ zeDEG~thRvRnFm;O+kGTEZlR_t+r*pK7Ptfa9Z>+=R3Pg9437v5k5TsC7oy=qikz5n02MXuJ>LX`?e37m0>x~ zqpsan&W?K0A4+aae6O(5sq^E8<}Ahnxx7srQT83vs%?$FdFsAVpP$negM^J4`S9C* zO)6Az%M%ZdWN*2ouAxzcqU#DM!pQNyuf`=8Hwp$@Z*T2(ar7>SaiNJbP-oK1786H| z93@&^Myod%;Xcyf#{|_0pVWr`7@@V+jTY%tEb{J*yJo2L=VR zt~-Qmhcbm%hlOqDFq)e2cHCF+R{xN%_S7AD`2v?6oW)a16E@zqZIjs%ZXmwp<#^a= zU_jCIj=(b#pOtB^ULnDjTSt;G0^v=it}h{J5d^(d*axky2y)qFgq+e~6v-}!^c8)V zxJiBcuA?S)Ko*MVXxVgli;x_Yj0S*^lAHy;oRTC6Pmv_s6H=EWi3YG3VVdIx!R(v; z>lI*%#&WQM9G&*=O~-HKg};*-ZCVB~u@|Tr16ylht7Q26`YQ6JNMVu?my8z(x?Ik| zQAqys=P$LrE+M zXDJD?<{?d9wIm4vL35S*BqA@zg64{yn!zRFtkp9vkRa?i`G<%HuWI-0C&#>XP786Q zADsCyO{24`|i{wook ziuIQLOJ@}BrfU@Wt}FM}x$3s|*C?L!yR#LOYHE$PF#CSc);K$@ku#An2bgf8)68@L z^L=2J^A&laem9$wC&V5dE!zIMp0-H!SCNb$s4XQsgZ(uut-u$P2C0LV8`I8Na@qjf zV>huFq7%tT0g~2xV^5a29%f9IRaE$f&Q5h&gDE5r!9;4KJ}e(3aO*1Pzax)~>QMM) zbFqkFBsmsK2Sn>Sk{nuiNWA%`*lw^eLO7dX(9@7|&I$IfFnSY<&+3kT{^G@csZo;N zy3LNd`2q$nM61M@BACFfBx8wSIAutU_uExaJwL7qb)%qS5m%-s$(NYpMLAT-BB^*sVj7z4n+)B!3UGmph z^49#X%Il7@K!cp!5GwmT`H<`~k05lBZFsYuC&XbmH9phA}?7CU%5ZG0f@Rz?+!~ zvl9udcLkq)`aSvoSd6B*jMT3up?F_lqu_4gKW4{@Wqoi1A9|x~H6-;CR$e8vi&Pe| zOfm>n4``f?f)0fWG!kzw&UsT*?9H3rJjCLp;g=qU5)JR1?w!P~QUe<@z$-y^rw+a+-%RGMAi{zYp_ z+-haz^ctBTwz-ZBMwagWbM~f(dql^kipR>%hmWLtKFsU7lAjZrn97rV%zU<$FWap9 zQY!cH&snAq<%(0TXd@?9|vndn68g{pu$U#LUJZE_RhIW609%aD}Y z`*^dl9}s^tJ9rY3RhFb*Yy=bl1=M3=LMF-n2C0UgO)#{@v;}f*w$0^jUnJi218O5m z)z;wa6CqSen(8%)aB_-fw89yQoGSY6N#W12J}bAoX(L$Z0fPJ-l({9VE6l#@{?%w7 zSk3W+cmHxr=X52h@Uf4?yv~H?exH+<$(UIC^1}1qDjA)MnC@x)CN$EE}Y%|y=}9h@wlXzJ6y z1xFfnORxLw$vcuX3`c5nToYF%NEr5nq}pf~)tJV1wA*;w4P{li{vzW1wSv4*dBZN5 zIZ=_QBxfrX~WumoJ#$`~IgZm=LKzBoz>N@CQ)0;0%2EnB(RuOH! zw;8|s9V}1G{7A*~@NjUH9EH7iuj-O;Cv zgoIcrCWg>B8?s&w(zQLV{lo>1Rf%vv;;D$RZoHX1t*VJmQ`{$Fwl&@;so0k(v)bTj z^pCmo<~jL!9J4HP%@BXLv-IUp-c5nQFLOuhZuE$*T_)DKv&{CJyi*RAce6HMPk#0p zOa9#tz}3a9TN2g=4NMqQhC2-18HksJ|4s^{R=;A(@-bEH8mzJ3k&U0|okpZdrmYpQ zTS;@WB!U<6&+Z=JX0g^qZEYW$MX0d@BU5Sz`ipPayg6>y7VK8ws)rX1K@VJKT+=&b z&;mnYs+7OjCpO~B;g=b6sbt5o63bqp?PE9mOI~=FT$x@vS1Qmy)1XtVLZ92Owo_wK7T*|T0T1}F{hv+m81211vrUQUd=HM?-h9;A zA)N`=ndUp8p`m#%Tu+~V7Nt-I%52{lh-?YW_(AqimjR@N2Y8R3jre2!QJw8+8fvCy z7XJ!*{GGYrh{Il8?wP{;Bb0y+EiPT1ikG?1ma0qSxlhQyyml9^r9 z6Ayo}K6@;&iD2|J3!PkFk6YXp6>-l4(X1%^ESG^x<_Yy}5kiOUdhc5ALAat`Is}Qf zReBBa$5KU2qp4Qtx(VTcUSH=gS1b-F6r|La8tTk-4AVDh6}s|qMN-eQ`iHlZOAJpR zZ?1j+Ch5m3EBm*d9N0N+#gTaK{29Fn)!pwdN<{a4mA%_9WTH5y#6Ek?4le$cO=-s$ zO4bc&>c-vDXWyaWGU9ZkR_KDIp5;RBciW<3eod2aVxDm*s+k;&uuyZ$GT&FYhxf$$ zuXe5kn34!4I8uKEIH_f8*)Cp*Ldz+{Jbq#|AoiQ`?n&&t>2ilx#7OEJHaS6C`Mbeg zRjGRhbQkRWnsPWYdK{`U;tgx>>@0>-BsthaW}|rej9$!0mm3EU*~hHd`lFy33YZl((m7e_FXUF|<(=LmJ=IZcqt`jx1wBiTrDv^lO zr{esVw204L*cIT1twyRPnBS)LsH{O~*rgR)-)3aZ3scNF!nUZ4JUlh?Cwg5TcOA`R zw`dp}-Nn{RcD4ct{LVDgb)D4fNj3rQ!5kb&4*8nxcjiQqp9})0U+R6ndUTX5ByaDS z#nuoM6qM+*bZ!32p5GYtYcsQYj!v=W5_7&CT=8+$Q^D>T9R+g) zMdm0R-CY@_uIAO}k0maISn{$<+Rdqjd(9_EUQ~9gEXS%QH{!bnUDw-?oprnGwG$PbVk6t$GCVWhIBN8#g@Y&(;~r6x@~So;=C_gX+tf2O2|4BRwmw+HEL5 z8(kE4$l70G=)<(((^kzYQ`gF=ri{r=QkRVyHb=OwotduBOuZ*N+?{Y{>t}7?s~_6? zCvKi1UYp?h^)8z2@Q69J@z4ksr!CkR)oq%gUb&Z}wQ1Xg2hXC>OnICSpZYQ2n!TaNoa1FbuEE=qf=2mf;TmnriC!_W?V zbE=gDgSO5fny3rk8ZgmsIphZCbU)>XNjI+)#qKQ)vwu4!*w$t!rKI+x+-_%orv6Yy zPw%rfk3G$+#gziG@|JUT6o(k`@ywbTj~Z8B=oDD@#xnHj7<1#i;?2*T6i&MS>QaA6 zdwjrZ)c1f--;wana88AB=Hv0{ueU1&e&zzSHKuL|JaRtWnQ=X1yz1BR{VnmKzVnC9 zGa@2}Jwjc>YqwN99O>U3V>i{+BNL{mDc3H)^7Va%gZXC;=XRRDjNg4O=vD1lg?TFwMdNded8r`w~tGW0zq!Ww6+ zoqffuPjv=*^f~RbR8a}8%{L5ot@~=5;hzn+GS42`q^rrv3m{pca;mE#%Vc41%euK2 z%;M@)!fgxR##`e*X3u+1!#7f)1zCsMu?%qg-Cg!=rsV5~hlVl?e(qe+B$&;WCc3V* zE7#3Ad~}9ldi#%Mz6^hFov^UBWY4j|!E<3Qo=-F0KKHS}-=?a6`(#YRq#&n5TAojezoO(7olA}^b6du%aG7`hY!RXf5E1;R+( z(g>@ZaL*`)pZ?}Pd-xZL-jhPWf3O%<+Q=2j*xe9sQ#T~CKBZNDcXfu6y5SwQ0*F_v zulvrQ;_h%3aJwva-!ZY0JVZZ|vutp~XjNBj!b#bAJ5QC}c~|)2YA@G%fh7I3aJevD z(MYosq8lc;9x*fhTpEk_tsRl)mU*Oe!ui96`rqxkPk%rz{z6;9AlgbDU=FHhexRd7*!0w!@6)MDS{Skg?RIYqb|j9;sBNp zNX>vW%??R}wK+2L?9QN@Hw%cFrg_4;(AJ6sHHznSL9rwDU`isK7mLZHus7vmsPaS7 znEAln9R^0n$qLt+3|tYKE1vrdT;M!k_=9j^V*}D`kt!f2a(AoN0+i<5XQuB-(o7<2 zN=$TxhXc4HpJVjIQ#%MP6PaWY8?ibVQRxbh&&BdCdy(%D1C2rZeQc90bkD{TRuwcaA`sEXuTH0IRnJowMem)kBnb_vinWs)$cWYJAcHvxS` z62pzE`MWKh2=aFVClXQ1b&4~!ulBF>{jFefwsD!e+# zaz1uf3k%jShKn%iD1vQjjwj+#Ml+Y}9{Z7u?Res>Un_8d>&f)=diTZczOfNCtL>}M zH99ToPt=P@?`o>=M}l`$Nblfx>P#k#!E9wK%pXtLsH@Ib%hoQml5T`9SpWl*cGsmlS8MP0un-Agi~Lz2X$spoJS#VWF|ebe6w z@lMm9E>$A~ECDc~lmr2ikKInQ8uP22wh(^OG$RQQ11_EQe;R&4Gwqe>jw zSE?s#QKD2P@qJEh@#%f;O+>U9bL(w(%BVJMk^NAyTfNKqZ1=@rkLRm8S6tp8dZs{P zq1yH>irhR|#;1b$rB#;v`9wnA$6K1Q@`(L)o|{MKU46bGD(yj4ylz~pz)-S4sdn~A zOJDOue>3>L)7EZzt&@4OH8XmeHT}8$pz?kCVgKyJ!uoy9zg?%U{o7`0^>_c`TYmTN zkN(@a;y)k#bc3(|=Qe%16aTXfiOZRmpRVlUDdDLp@8_YDC*vF0eh+-EFKrhxx?Dwo zE9&?%aXInpXU#M^v*xhvTlu%wT8+@aq@>!1>EILTU&-;^m~HMokq)-xPwkyqUu-9A z?*BG+TQ&cD^QS|yy-)*gN~#Y!q>omjfdch8KyO{cn7FhO8>z#>DaNl?*KTH$Q~Cb$ zv_1R>Jj=+uzXJlpZg+6i3k`i`I05$fLi7DD3&bkZU#3oc_IP3)>OTv_|D?nB|A(vh z;afd(f82F~(t9T1amJO=iY*-o;&~JU6H9bCT6ReE98vW3=~0 zsVTSd@w`_*8&;y#0?ol=$=KgXhoK#Z&}~M43BClnvpSQAkaJKw9VW~xkm)*uS_;#Z zj(||sQFaNN&0z#14U^-r^)E<(#%iUlylz|iPoJkN{=eq`n;r6}lkvPbdZfx-^Q8R^ z8IN8y^5fTiN$_~_8XdxYk?f{iJCZzbQ$~ld7*w1TuM%|tCp(~L9bWnT^P_C-XK01~ zN$%gV!uS8SJNv&mR*;Jug%=FVGzRw7TIR`RV$^Fn5*D?7z;EZI2NaF8!8WI!kp%CN{BIqmySzHFtqZMKzBM%n--LPYpKVHIeMS){=TD|XFV;_sc%35;6aH$>MX2($i~~6 zQa3s%Fy^QyByhPHtp!^Es_>fpNnG9^({YCAue1T^&(Zr3Di?tA!cKn4a8pmbk{!N9 z=%o#vUBEC>e{v@x^^VDKh;740BDOS|Cm*6BD)RYd(CT@@?LDH|j@)C>B9QzS>aJVR z$9q`a4j}x(hJzp14qvw^!>LiXSv&1GkgSLiLfa8>obq6EfwJn1-$>pJfB_Z<3y=dB zcpc4GEbnS>5(!X#c&-`nmYf2$Bu#{yNHN5UrKY5gr-CJwE~yfIYY4(-B|2vW;3mUd zdiJZx@}6ga8>gU^4ggY-?7kXh^~+(Gj>=`wukm>0XNE1cr~y$VL_-SMEh}lYNUL8L zmxom)0|iSmd#83TLDf#U2dJ4(&3zw~#d2AVRA*_t{ADL|D%!HITZIxLlZZ z=Q^9uK3ilB3FjZxaDK@ucdNY``i`~nU-ZyMg~W?TR4C3Cl!0Sihd$8Y1cGU&-G`LT zojeh=od_2c8o=<~uppg_gX8q{6*0Q#XIZfGee<*r0=)xNj5b?@`uNm)RX2~te7hc0 z^E-Ck=Xvj!wV!MXBSpzXVGOxYX%W&)R-O0h5d5{-fn^wKTfpd}x<&xsde{Lh0VC8{ zcbsN`0h*wOo~h4#@WMra02#=i-k8E4)g8-T?0HL29LOETBo$J04KueY3)dYu*D9WT zX$u#k%9V*V#vU=FWJB?rcNGwHEl)b1Q1T49^0CQZ!*5O$bCCIu_-cQN*n@YvneE@ts!G!IM zq${YCAbjJmfk3*Rj-wjN#V8EJ;BB&A}DKt5SG-y+MEZC=7{a!9a)CYq<08B6r|R>c(QV5?8ALRZQ}4!F1uGn?l3CIE2=yb`#VA z6)nJnxCW41-Pje{Xln4XKgISgYti^Xcg5CY%oi z&p>cpN>2;kHWAgTm<1VV^b(FeTCy7&JvK3w*~$FbyCcIawjQyUsfkv3Ce{;+sXwm@ zQ1hIUBH(83*sjwW90@F%QB7Ocgl`#8j>8790?b8~1*sJ%;M0LwC{dLoz|o(B!4IN# z11S?^me_IED!wY>Id0I!?rjc(?+DSWw?|Y%c8cmIacEf?;f-Fd0*C=x9f#-PK&R5N zN1UpP9`t?>s^>voE-o(3%=Kbhjv#22i?byn8^}cWI4woM?IzeALyVIZ2jRnPk-vco zCOUsXWyPzR_Vg&t0z9coTJ`i3^6KpOIpQs;HLSKoprcmirRCsZG0`xD6)8NUVMIT_ z+eX8dsTYftNh)Z=S#Nr#1`9?ur_~wcP8cxMGWvD!rW-7f(JVf5T^uebnLNYV0L+%F zY2wAlsw21}nu`G)v}6#noL~bXuo-s z2qdRdvFI1WWG-~1hzD0qKap7og(znKD}JCFNXU6QJ$rQHDkYa!A`o|5`tABMT9ihC zk0Q+!ZG?T~qZl=KhXQf%R-IjR=#ECKp-37A_JFxGB0FQ0t5|!=Mehny`BSe$Y+!-a zRE#KaXD1^aMOW7e$wtaF>1mR^!I*>eIF-pTFPwfIKGcWi1r)^)^%h}Ox^}HJX0YMM zuGiIBlpsBFWjXBs$h{k(W)}uEdHTiWJzFeQ0AdUe9*{e{dWs>#`GHmqYOm9mM+Tap z41|Gt$eUzgn)#FkyBucMcO5^SdiAsN<>DatNgIimNuqs&@?go+!$>4pCJd?N&8P-2 zuoo}4jCeCx>#_h-r2kOJE>WO9fBigGi~t*oRl-7Bt<|z_&950qX31ignrI;|%KmEC zgLrF_5CSklu5x8DpLSnQe_Equb>3gsM!_)gcIv?ZD3a`@C5EteYUO7QQ!Q5GG|Fwr z;19VmCp$ZGDON;}zE0dm!PbhsNu^sP`)@V;^B_N+9^2t;ioK}sAqD<`#!sa0<@?_y zl7B_UpFi<`fW%n0{`0H*{@u-B>A$-s$p0HnWB>o*NALd?SKxZg&B;=dCPSquO$PM8 zTGUXCj-;G$bT}Aef#M`p1s65Ys)+?>5Luv5?V-Q!g!w_La6x0B8pFZKiK^iHxqZ~g z+#2PPKdM1H;zSPH`nwD3-BWA+3yFQez0Dgwa{>OJM!MxfK4PA~Gao=u6x=s`pt`;k zT^pdcP;Yb$06KJTBCBK2VS>D7Xu!rdMy4R7ZO>v=JAMz`@K+j)`MMh`_A-jD5Si{K z0}uF(?nnJfNnRd;bQGyJVf<&;!NiezIIy_vFnCRy#`4OSkT+pU)1QgWt%!1FDtTh$ z)}i@|Arf3~gmb%4SZ@!?CS#Xs3r!9!^AAR_`X*n#z(R4LdtU>zmV?w(qj-U4g~Y1Cap<1)?ol5zQ8W zg~mXg+WnK87z2x-r~Av!_ef6K#8%kAeE>vL_j(Rt&3G@|Jz7yxESq;_*$wd1DN(GAuR7Pf zordW3A047j@TF2}036~ZI+~ID)@DL?NOX0%lV$^}A`2rDta8(NT^~ucfbCQmfwbEF zNjJ3ZDFj=YdNE#u7-2OkbfLDnP^@eNwe?&l!VD!47k6}%Szj;A1DInB-(s?4Ij71S zicB8uMor^n;*Te2)fL!dq5LG;CuvlcLiwmSMHmB}<^LlrdUqVJte;={93z zj(V_qiycngn)tdnI{|%kx4+y8JD^=eXeLpB@NnyHBw(~WYsbL~7CD>XYI3pjfmB0t ztiBt23z_Pe2!uttQxz9*(_Ia4s&%{sWb=;n$WKj*=D_5MtZBDQ%00~@{DI{JL*`}g zr|I@x%rcpFEu}b+jZN|c(i?2W7GRBl5!HuB2&*W%f0bYR zPquUN1zoSh$?S%SBCDnZ+X;4hgk;a80+!ynXMG&o&=Q??t1tvn0gk$zsMi8X@*tlW z2NgVVU1Z?kRVW&|}l4|7qK<)MrM$X4W$KS$i% zsnZ(vJ1!&$_5q<0p$BkYAU{#pETLg@ZvoleSr^_f#ZJ`gIC_|aS}|kXi4(s;S*DTl z^WY0__LHnH=`5=ox zp*qkpu^P%D5kKZ==|E1s&#o@fPY^}!%Sou+n-|Tp$U8K{uxtb@9)KIrI_ft1>%1jC z82mzg)0I8DkZ>uNIUynorz5^r5>Pj34JFD2z_?63fvxWD64Wq~JoMf)Vf`vZeky?A zP$z+3s0RdhPZBVY!K_dMS@KeoMMHGYtgfS!i|sIP`@`tLMmzdD+w)(jcP=#-MZ#H@ zL2;_YpT8|@BOL&MaRt~tg+pgZKKP%PmgBY3)Y=Z8i9Nf7fE|pyASaqAtOk5ID?UKR zOz_PqY6WYx#T|HSoJ}7frUHs%bM>HkMCkr9va`KieS^6yGHIIKiqmNM>`vHd9#$|f zGjASI4=g7I39iF2b*3?K0A)FFQ}n6zl_6G^zf%azo za$9i$peq6T5)zf60 zLu({yDFr6CH4OvTCSDesH04^AreJEve3-{aya&RoYib|iNirK-XT%mmLPC25gMd-$ zGkp)yJZZCPhRY$$qGphnM<~c*>t6S%Txfb3I~pq`1+G(`VN2FwpgAq0T*7XK*e;-# zI&MNbA9oKN98$XWV%6^H{SzDrF9=FcFB*b&W*havlYo6wa``k+RmPhGBHrkp8<_2? zKBr$6hFy(?2-n!DH!0z1o3u{gNm3V5K&B6y_2EBC{Ra^MiyN}|IOJeWSCZT>irh}3 zFQw9;$cvl1mfXEyx%F7vY5IL0R;e>pz%+OX!=y=dypwPTQnFFQ!vJdwlytnX8z{ir zDsvLaOA&Z6>@cw_%@_fMyp6otC|k)KD)!=DhLEOWLYkT`km=jGPQ_TMw=D?lS)xs> zH-t{6&cZ%Q1c59M*gfSLuEaOOpvkV`UtJ^eHV+sZHFj@aSoabOyYjEXvA zog=J?G9<6egq%TTKo%AutW1r~=BO*Hkb))D!yZX}@|DH}G#n$5a4iqa_gNDWIRR); zK^nAZ0wq?DybA2;^rCbDZ17AFwgP$aPGejhHEbn*w-SJY%Of#fC^`{#L3fa~qhRGW z0EA5zU4=jAWCu#%NE6}xK%N2lGZksy;;y9&hlX6stOC}5o=Cc6 z!&{(*CZcO5)={_6O>Wqri?Nd2wYI?Y=#f^K#wt|CW0~I_9n*$sqhp2xQB!f+1QTk9 zj@^R@LXr$oVX%mUqk91w{n6%1u@iuT=NU89`xnQ`*K>(2MN7_`qD`*2I@;&*G5C>> zvf?F99dkd{y?OF2SJl3J8s&0*pGYQhany#=s{t*%d8n`Y2Oe^-BwAE?B;4I9dxE7< z1EIpr_HIh~U@9&oR)5NW{_t6#c$(3j9$9GrMq6JwkAX-9$%e@UC^8hwzBOFp0@<@rwJ&a<6S=>;Pj4Dk8wBvs8 z)1=~*)B|)%81QmbxEC=<(ITbc2rQyrP18bw-T%}#eS)j0aktQD;ua+FWfQ9|Q7>-- z%jU;XSN9CG9!!qM*s)5m^Zn~Stoh3_MK11oUrHbB*N~UCyH-zUw@z;fAEDv{R-c+( z1NWTz313yqhsSHJgX5HlE+RwfWT^i54m_-R zkLnDSjkt%&vb??gHo_Xh>%v{BvmQ?E*q^!RJI}g<-`VG*CPRtixz2!5>C+255)P$x znox9rx`(D|NGPTJgmr3|meUeW`^xri(yUT1KxK>qobgILu>CPWk!-i2NrrM^DZ9U$j59ma@a~gp`MOF>5HI+vX1AW3W z6!$S_kmQR2izgzEM8&RZlZ8+3YXqgrqi2h_jZXb@;pU>m-xc7X{ zIqLm>y`Im#*IsMwy(>xGfLW{X+;7@skNdDYM&d-nHYfwS-?O&E4o28wmmAhww3Rud zDiRNh5RFfN_Q}Oy$hjySvvz33_jhLw4k9jh*&=~;Ir_UgXX81?3O64Fsp&g5+cVhQ z`Xw!H`Y#IuAn)yn#d$UPW6qG4ao+&w~!UH9+dLc%nMahp`?!skD}$tr2Z}6#=pu zZG|Wopx&yMgSo`!`6Cc2$|LCo>KUK3#mRp7Gw%}qIdSFDDF@Pmzrd5n17~35Ct}2K z1y}!_*3({Kp9dAD$6cd>7vXXEE}bClxW06h_}MH7~3kSrd|m zI8O^reQS=R)S%tTagxBEH^-@RMpIX5B>q=Mkqfm>hdk)HI95dVJz6>vS6+emP;GO& zGX+1xsxnFTRhMXeaQ;8lK^=Bn@)aXQAvyflT=1oHTphP_qUNO7|_+>-FhM*HQVXu zH*2i{^qqh<5?`PbR?IjeQg-pLXl zKOUL2O28c%H1z;+{L5g2-Gn>9R;g7=EPC}AZN)`N8~H$%w$kE>#6C!^wlI~S{)SIZ zOpAPAX{+h^P?T;9N}`<ZC$0>6K{ehX7vQo;@Rhi--x94t$uvmM+;3v2g0g% z`;$rFIE}JD`8*5ENk$E&GSXO}Xm02lx-O$J&{0l3^(n?K@zLC(`jx*{Ebadjw~hz= zPu#**mt|NkZ&GdN0x5_3=m~9FG2QVv2DI%vKOOd2!H_iEf7Q6VTL9Q@kscXWjY~sB zVQOzOSVHs4q`)oNkR#rqvoXdICj^PgJPu!HwxYoK=WTX%b8_6oE>>2j~kLDJ5C?%D6}ah z;9O_a($FiNX=(TViP=l^2^j#8*iyzwf<@&Qoi@!go%c5Q9{}aJ78j9b3QXso8Yike zF&wun5@*#Q5r>?&=~cM-T)*G_Gnpj90G)YK@v7dVHE(Od6z&Tx&9YH?9fqQyi!WAjQ-La!8t6Xu{iD2^m~4f?-viwlg{ z)kZr%QTFuiTYh)a*&2ws`d*>U4Xn6$hl%Rqom5>8XMr9G(t3~wLZl<{zHUW$l*xQ3hbN180z}$lYvYVpMh%AV^sc1 zP$M?id4Lw{emI&ut6RmJmm4YMcSA?~_aWUN)Hk%Z9hVdp%QA?MJUx(@;;oH%l4Q@| zeNSWQag*uqyZH9s6}3?hdpf@(f_VcCcF0td=}NWA4yC+h3Z1jCXH^+Hf-szx5q}i^=zldxF;pVV=RYu5que zuAt2WJvBr3_o2n20hS`EzK4Q)COQprijJPdqE?z#Tcu^pb8x(_=G#Rs^@5|nzx25; zrT{ybj$sQGX3jiVl>qq=Pi|7hnN#kAs2jw+Cg}1@pMQi`J8^rtgHof_d4umz*Nk^tF+{y z)~1QbJ#Z=FbzrtWQX@y1156=<5%S(N@qy+h#~K{_t>oPGUCd*2ulm3jATbL3vGv2L zK}7>y2Y*YG@xLPlLwqJWFjaf2cpV6|Z&Z_ob$)($+{Oyz1VsvXG|HSaF}LtNm66!t zWbgg^*K~S_H2RxGLl0mk0Cm}fObW}7?g2pFKHlJg!%j61)o?{U$v}Qtw>~0dliI(z z?jghhs~~5~SX6hxj@^w}+cBwt?`<$v+q(^a;UmHjF{bF~!F0RBgWa_xLFj)?q>W1S z5dNa?(lb8yz`1e%b@1Tzdz=%vw0Eyxi`9@_n zev)|#0rpe0ARBCvh)gwj4jTJStKDfT(Oj|2jR5U00a2pLeCV8f;W%B`p#%NfXV<0(q5VRnqLo zd-v|0R<&vW8cnluD@&G_h0Ebo0sj^AlybNgsBr-;TYX2c2cWGt2jXx#K6MDyZ{Wrr z)Jj4nk5%Z`K%Kj4szrWkRY(?`7TF_Nebei}V99Cg4Hn!(Q&@>zM)tS!v&GZ6j6uJ6cK-XI-v8eR&Bqy-fvBiwI;-KZrxCjL60r$tXPwu~=9 z-l3J;_%gnUleC5Jp1O3@CyDO87>fcOQij|;iMAL*GwqlIQIcIFS}O*sVfw=%>Kn8( z3+(a9M-EAz`ZawIf7Lw19oDW;rnth8n@t`;T3gnu7l@CyTsZKwb_yC}uz08iy2DM} z;FTg{62EBLh&+~skJR=NHH*1aR&3lVN?VXXU!LjVy|T=HcV*oEt)zv~@NFQC9*1tQ zvK!F3V$eGbHTpgAPaowlPXtu&Z@Kqk`8`1GVDl#lPQyJZm(Wb_NE-v!TxQfusZ14x^n zuoxsYY{Fh2F4U|IUFWQEGvOG2rrq@&by#E9?BzMQpvOZ~u^hYU%rzo5LbCWN*F{Nlv->i;x?>Tv6MiJ)q*6XgfyFTK9nN^4 z2!5MHkm=?#yyiqW7Raqb>N9O(H_uuC|E)J!UZAju=uQWc9|>Vk!Xb0wKj*JcQ<->@ zH))`kO@R|?03!3VZef)TA0c0&%6SZoJ;0-g=&IoRnUUgKDD==gOL_<|gJ?#V8Do##^o1VLpueumoFSuA?rf5&3{7g zSmx^%x1pGW-dN$pGQD0Vck!d&_0wJ6=V!j78FkYwX`rN}`s(p@mq=LaHk_{5XLO;4 z*5CXvB%+$EM0A-PmV*nqg>ka$$w(D2GAR=XCWUAmbYf0MZz)3!vVzb)b^#eU1>?9* z>m|g0#w;wMaT=6m5r7UnokBmO@&sOLY-P)5`n_n(Y(Of}JMd>p6h+NjerOU4V&8XX+xKd*}dDN); zZFF>e${*5J-6`P8_Xsk4q(of33PfT)=mLE0@KW^`n%1VBwxCrZ|24{u14PPCHT@p< zARcfVUS0A5iA;f!j)BvNllchLWQw?nAli{~k~A*Tv&f4?Q+8BK<&nw^k&Gs2un=l_ zeWx7M-pJrf$+1YeI-q@`_iWBm3Jye>z3%#sCb(-9UT7WS)q?CGTF3ydq%7(I{^-?T zzgP!pR08O7-J`Y=Fda=RU$Ej*?IcxdWJ;?i9-)>Z?w$y4U8fv~Pt#EpOuaYM7A2Sj z<=%_@$twy6e0r9ip1wxg7-#_}ID*B*Aktq;9{-HzHf^o^kBUQM@s0x0`b|DqhgDu! zZ}HBFxL_1o9VYK-7&n%gT_byRk*}y3Dn~7x5K=cuEg{K;nqZ4Bo=w2$s$a;g2Q34T zS$c+wn$X+#6V#za3S3ZGpPu$-8NrK2VhC9t$d?AmVs#qsADH;-xUwq13M4*J9#zI) z$2j&9WW(?)y39XeP?}ys3YQxP2Vn^6+@<}kly&|=34y@;qR7GhjBFg{n4qPT8;I#9 z9Fg|r=cHl&D(W_9JSUBZNbRsj9b>da3?sBeDhNj26m1fNTLJuA234Nq(!(?1qNqsc zfxF>|(Vr^p}&2cbUTkB7%>;7~=kV2pN)+cz@t;(AVdv}w{O^5R?k>}O!< z@o(KA5}EAANvJj_ZGW`*zI7tmz}zy-HJ_ zRB!)`IXEd25(k({PcZua^lf8cmib%g6y)J}EvEnoBqw$w>J%i}l?;276m)6AR=|h{ z_#EO{3y$((ha1*sq)4lhs}pU57p{NOjzeNPW_!} z9T|$MiCBF?KlHe%T|2{V>6WAHC@*iEbnDtbjmp=o`Fz`VS~}15{Er_dS^-ar zxO>*$!}8~UYX9dmO#jdGy8qXc!~Nes`rpU&-y`wgoAci&@#hSz{BK13^B@@hn>hYH zi2ojmzYpTSN8&#Z;@?N&l9&GmVC?r`8o$9)RdO@|XqqT$2~7^>XiRGnLX~&tM+Y<4+mFV1Dl}rDk{N5q5f$=Z>d`Xe^qJzC(FgB$@Q6g4{KZ88}>EIS#PtGIf{I zOzIlbv!=Vo(Kuq(T5wlF^W*!plT9nYUX{O$!=gQZN!ypfqKpimx@p=Zk=G$v_*O*K z@J3Rf52}jeCezDdsB7vGM(>g^3v!=}*49z~i-hT-zfbJoM#kRfi-{uVp~3KBBh*ep zvORP|T7_|)T5E`Jpz=Qi#cGuyTDo?$#i0p^2zFR&>MN?@H=ypOZ)B6nEBgDRe?8-{ zyOKpi>1o@0mD~wPA0a5;r%jX=4^0=r9$zJg%5I19B!)+?<$|AvDqW0x;wE;bT9bO0 z=|8R9EKy zU}|`J8LYnwkx9Go@@QUfmeB^iq$hgetJk|_sH-E;B=(}f&()5S&#`xY}WKLa7VHa>f-(`{IE!v^A| z$R$K_0Fj&fF=EK(H+eXIg0-Ti-RNXoh$#4ovbTQ)5V1SPKzfV+^ z76`V`oaM6d9;g81xgj45HCY;sledEUddT^=1;l7{7%HCb3Sufr$EC5{)I>*&7Fd+@ zbJJ2XzVx`MJ3jkCL82GPDn-Nk$(lp2+-Q8-ybVjnq{(tT1m!biBt&IIeNDG$^#ALg zzt63bWyaaa8N>t-&jb}0)ZTc-4+x;sqsBV^b2jj=KWS%4-^uopCTW4-E_!K;yF|^d zj{oyO>1Rqn)U*B!lQ!qUu}=?^PPo8SI_x0v_t)Y7X*#f4zhwCJ%m(c>M8=an{H85g z|5D5JAWP6lQZUI%V8@r?j?#J%dZyLRB4#)wiJ-(jXE<14ee5pW|7WQ0CG^W7GE6Ua zG&X)25fm-5em$);$VUvJ5%M2lt)_|YL}KrJ>zj--Nkc~<%gBK(h!zoq@F5E0_;4p_l|N#mf1t|H1DI{G?zol=^*)|8`i zJp$&IM%03eK1IfIlr?%o>rV-Sr`g@GJz-mWbzV0wmIO+ZkzIK+gnZr`bsF7ixtgd#CsEm}rp=8yX!Ni9C)zuvK14 z401eeP<@6WEA;3l55O?`GpIvl---}&b3(48rh5=?AuvC>lr@dJOyb3e(v}wlJL)77 zPgv#Z>MCcH1CGcWw6Zduqjz9SOfdyzdWraZ1(+^HVGA!YI%Ud7aP2@)D1IY7D`hgH zB=%pg$D){6JY(!1&Fo0FaLjBssETM3tx7oPQ7%OXLBiCy3_*Z{=qN;L6?gZkAO{uW z#&I-(Z^FsoCQm#rl^_U$k#Q*xFw``q`!i;UljcFJ=TR6u+~Yj2kG5`)!t0r4w9wc@ z@3S)V;q_m?B);G4i-70l88|7uDY-~Aj*>n?Cj_xtwxieo+zNEE)4l;ZY%X%|L%%w_ z0kcfj=0yA<`VB!2XZN{poeuRoO2=w;2j$I(hcaa}vll{seE(9HD~J@KD^3KH>hHrgUteFM>4z362ki@mh%~)_%w=+@hUluRG{TO0B@i=3 zlCy}LL-#SX8V?#(_YogbwQ3;;i4D~DCte3?Yz0~X%7Q$^z^P38U(q{`)}|D-CQ@Qx zHh3`5Kz2-`#G!?l(Ks>aTsP&&5(2l76oxl&(b#Q>u*Fj4_ij+DD`}idF>q}oEyWclKx4r?K@gd@DL)^gF&8G&0X1{)XCF&3Bjdx)LWL(KGwds+YAC~r0 zux;jp>K)Bs$|qHfi0_XfD(_n}S~VmZTrF-x?Rj-^T!CVVA77AwCMQ;<|5_uUs>i;u`I(7Yu#xOG0AL1w$p;* zl3|$Aj^b#Y#yukc_BLc7xfgan$yWe{eAB6K`O}Z`^KV&9rIUtF(%L43cp8f^eLjEs zCb$ZbQ=Ocvg9s3xW>nKw38IKCQx4JyNqB(8ZD~#-W=6iJCZB1;e8(}c=q)tq4n}_! zkno~IfaKV8f^F7}tSlWRhmE zpq`em=%fIr8TU9UxlS0~;*}5~NggM##BeJIUk-CObXc+u5k*O)xBNq6kxsNVm5;f< zAXJCJ3U0l>Aq~HkM-Rr$;m0Rlt_4AA5^hUVOG%l8Erz;Pc=}Xqz~htg7KW<#v_zVw zJ>D7#AA=>-<0>i0DIQ~v8^5*O>4D}xeQ4L}gy+LG4n0_Wyb@{;R9|*nV0Blt3B`R_ zz-0isn3^AGTMrb7B=;anOO$8JzzEYCQf}bVgnZdAFMyNYqqAX&hTNz*Sr8F69({~J z<{_6a=^kddntEgFeq#2#xm%wb++yY_r5IMS0?5n>Zj~d@NfL3naLOyAxS(bbLdnPX z&iMGbI`_X>)Mg z*aYJUEb55QM-p_An`!RiftQ&~Itbbu%(L9SiMF- zbb4zyW@(Tguw+RLvdbyDAv79?*|!L3X5+&>JZ?0ff_5>HUw!t1 z6%!egED>mWnS!zW9YzQZXUe(hQ=%qS3D)6!0KAxmojDNfkHFYsQAe~q&1~J(M5hJ` zhJ^H=(4EZ#`bZ3*ynq%qVh11Y6B<_tesDc85~S2B@j3O9rVt zZt&6G2kZ7wpK&O%tI_)neX#Ui5rV-4Jr>$N0|BIcR&Sz~0a-U(uK*fx8R2hT6CY^e zP%2Rf%pmHxj@r;-TSz9`<0Dvzh~fjY+NQNwdG_KmwID`Fk$XB6c1Ni%XLOS7U zQPuu9_dYZx0y<2L-E!b{RX7v+1Q7&lH>;<0?8bu?)!m6BkW`k8k0rRr#~h_!A^gfO zYW&fuW%_kI6R((z@u~na4$@PAe|xggbtVk-P}Z}u?+vD>_>ho~oTRQk1jxENXRIp0 z2cJrR|9U#Q_Aujiq^yw3SdNEZ2$R|V?+$rX)5NySUm=sO=7uJLqNsSFM`0Sukc5-1 zT9pd0Y5#r$8b~W21yfCI5ACweHTE{97pUe;Q6q@ad&GC}yX!uk6oc3tJMMws>@r4`a>hT;ZrGoT1xoXw*{Mb4 z-;2gDuQsv9p#%x#9`g#Pl~QO+u|HRWbo_AQ+v1$v$gjy|uaK2nsg@bdItq+)55HY_ zEmmrznLS5XYlWJ>j|Q{`SYs5b2F$AWDZTjmzktiZ==~RnpFwg^Jon+LJ=8J9tJ_CM zOMfi2W8gWQr>)HLzZ5<}$_*&zqgu#k+NR&<2}RG(u>rr@_xo1#OtvDt*sG^fHzf}e zq~o$@f_voLPa^Rx?l?U^3MoY#y1Z4( zZ;+=E5M>^_CkEs2)e4d0?EPP4o*&12ox7+=R#P%{nBU<(b_SnhHNsxesMGz$c7TjI z!MMhovEs^MSn90u%w9lq^=#DF2H!ucxGvMoni}gWX3K1~hS|q=e$OtYPv9F`kurY2 zW@d9opN#HJ3L_57OV~{#Qt}ueeYA?rP z;@=NYx<_nimcwmyyPP6A){q5RHoEP0FFMrAc`ru&69=43KivmcnmSE*>SK8AUHTCybc@Lc1V(e%F7%?!faYNRG0|=t;^8RV zn*Gxorfeapn&&UhyFd)Jhy7UpyTlZNof;V|9ZZ8&atU%5(%kHT3wwgIXj)M%7E-7? zJX~y-gT8@#f}_8#Sn4_7qB6)C;aAi`HIF*+X5vQMB(2 zP?7F;W^tgf$bK91{P&*C=$eS%<@F-iAlD5w!5$yiiJ2L@ym|G;KGQUYQ5X>9%Xi+< zbDlAR#~?(37j2?OVed21p2gF*SXe#a5j<*1MIBFyTpvut!f(*AOmU){T)>6Yz8ui8 zL97{2_!m_rB3UZEI8T0jOw|`rgtmg8h}3;PnfwCWh#-<(amM9-M%?wY8a}NpeEKwb zTrau@9cPjKw>LzOHPS8`4a>3sqg69T1osrVc~j52h(sgy4h_V%ur1m6M7w1@DxfYW zl`n65&}I9_3jnaL-V$q^8m%qQUUH@}9XCoe>qOG526P+w;B%Ox6!T?m@)(oEKA)R> zNw;uCj{&k^kzVV7y_#sGG9>N?3n%){lK~L{Uht9 zFUPVaObv&{h7EGFG8xXmIA#CxQzvHV+{?T0Ti&H(x&GUqlfNClFW2&)#qrjQaZ%_R za8*o93JVpq63^-!-(-FBUH%FQ>)31VRiEXonYgZbeO_AXb=B~>=PnL~W7@reO?)!H zxOz*nUb%=p{N^lME_b_ZBU0v=LgS6(yD3)E1zxSxt z)<&^8+o41KSyWV1Ws@67T-Iw&!+lK&3-iKn-I_0j`bIA_J~CGp1){_3V;dMpV3S$9 ztUxO<2sTe&2X|L>v>;!vYtqUcFk7pI_mQ7=BtPsz+5>dE4X1oo?@4=jmc+ zw-NazNqfQ?uP02c+(a`im!>1;fB9m1%1p7YGA*{89^7>@pr?XYsPn0WAuxv zQM8_d%!G7qDmQT3b2pnJe# zC(Fl=A43tURktTBUT2tVL!SpRrVxnu{x_ZSAX(p+pE%H0`RhpvL)!Iyrlx^4MN$`^ z&+6qK*_a)Z{55MuEW}9v-gxlN_sjBN4IV%NXu} z7Qa05)4d3hW1;#vt;B0e0!hvTmIubI;)dZj2~F9g@o{{q*GiWE{a@{^J3P0073|Ps z96_n0HDY$+L|H9ner@_WFmP|2BNAsXzpBbNJtN~TZh65ZgO#mqsnO|t&h%m~g-ANnks-zrcr{&&%(mqM&)eTvgPWvYjg0T4^Me}dd`s88T5?t ztejb-%+o4xNo|(DB{yy2$A<~Ug5dnJGWA}=FnoOVfNgoNe!o4kiD&zn*akCe&|aso zg9UL=I4v#BKABz8y7FphM8rUU8wx`EaU&g_dmz9r{Tdy;i>lfOjxRgbw4@g=I)pea z<}|cf1W0Vz(kih65&V|Hu9Ft54av#LetBEDAN%{)y?5DxShfcxbK43Xu!^DLu1SaH zG`P9BSzNDobacFiFVK-lf`OO5Kd#1I(bE$tw*vwLrH1a_xH0$SPvfIUBTZhlx3}jP z7G6WC{}_w>uIc0+1ORsal6>R(_1&n!+v-x&(pHz1l~DnZpO>f5o^F~r)Yo({>~(!7 zUj2C7&6_vrSy>%!hM(QER91`UL9S`_=kSOK;gKm5N0eQn*KXdt?=1hZva(h7U{j*m zl_xF8()SxCmn>Ow2aod}@aY{m+wESy!#eWvT4wx!M(a86-o4B0l|`oFtW>$aa?uUH zzNOK(mZNicB@U4gC=k4MyDbs&hoNl%dWn9wLLL0@$16o&X$%p&KvY**vPFbR+%|-W@Cqjxw&9%w%hiI0Uw)< z2{>_?0#zvBTIC)tS-OW4#+5cR^v)KL6>5k^n+}d~ORrKR?o5#imps}|AEnlH^7M7MiV5byJs=K} z9J4ui7x9@Azf8(6vWuS^JQ^NHS2EaR%1_39!Z7*^WR^k{P`gnfKI*w};ezvM60o?R zo7u5rdoW{613aFH#pBZA;#D2x!NQnw6=uS5{B5|Zr^}He&q_*qX3Ut;3Nv}7S~n7% zNrt_$<)OQH{d>@|(59oWzX+nvwGz3`iiicZSuR@(OG;u}_n$i_U7O(`tTRvFQAf8~ zy&h+JH^zY!poHH8YX0ZXpZxLh@vV3dYU2nBY8;n$3krbOU$t25ze;+`b0H#;`E_jZ{VrTK`I1#SUiQw}t{bGs)@a5xHx6T0^)9Vo*YZn zef8{_KtCo_uxn^&_~ld}F-VO+TT>-um+%sR`7Ri7pMU;2+K>K++dT-Ld(_oeqlmii zELQpPBgg%rgKJFmpKIyptjf#FYen@eK$>6W6o5f1MjNii-xXKBg5#}wI5;qH`6!Iy zp=IAQGiB_7Z^a$j)%d!R#czvUql zEiH~w+~_?ZLH#6uF^MNK^`^uD-~Jx@w{###fZLKP=cC{AEtm@#d$o%rTb&i#VlYm<#9yp$^o-FKAKV~c>}1)QVU zxfv+(F1iRpfVt%jxpRY&CQD72dhzB1nAT!zQOUd`-1SK6+lCe__Iwo-v|<$F5Td*e zJ7X%r^)Y@N=XvwwLx2^n~jjiI&4<9AzYF}fYhS{D=-ky5dMbY7=FNGQX%2uKKKJhn)?8K+;73#UlR8W%Ve7~+L0j79 z`V{0p!Q4sQ*GG!t2tn#G9LSeRr&@Nke>OXMw7{i}`)QUjsHq@={(-ij_s zU$4>Jm}a}*=gytn!fG^NZ)3hiMMbdt*fkx^lZe{iKRlgTu_*XS`2s$%R8)?iILOuyEIcB^%GncuWP{ zq^==a2-6jSw$Qv~5!HvE>*~aN^54C)@1LW<&h)?k8};}}?s5fl%`c22K0ch^Iy;Ld z&QG)!a%D(@%YDQ%UshID)Z+O)$jX~^*t?pWR~lSgsnIOwGJL$T))%yKNs5)3*_*YZ zfij*h;31r>)MA>EVAZt35D|nAS47aS_Zw9MUch>(^Y;R~yN_G0HUbbWd!5HhDF)@- zo9;KbURI`E0A`e)GhM;Inq6<$pK_GnAaroJXa5mvYgOCdFd6+Q+F+!so4?G=#MD%( z_KuKFFQ%3O^3&OXU}+yT&2oD;rDPZe>cF92XVd-;%2%udK3!S~oK zSQ;uSDz4$>RlTE>oUml)?$ITU(R!kme1$uMau8>xCgh*=ILcTxrBdZPJgd08uL3o;w5&!p6qtUe52S#}5yJptY#m4)sfTDUR-u zAbB8>_JDmay?{nG1}8J}Rq#($;r{--&SQg74Z}t3=?h?@scS@S z_Td!Hz4y5jF)=a4fer5m^jp6j37kmd5wIrx>+PXXbjh+j|A`e0Y-sA7^6l9LOn zQ?a(Twx20OA2wRdgpuXwbH;?@$B(zBSgv^ng@s z733208%*@?-Vw4}z{bWs=sF6bc}{k_?lKXq35jJ-(uYvBia5$B(buyggNfsrTXs4-as3WoE4?a4n_|aMz=F zkQ!HV84=>V)*63H)5N5tgtsx#Ohv(gNs$E=viXV{#6_uE)bRV%)V9Tq?Vzr1@o|%X zk~zA*971xIO4YzHpV{hjGTi6z3vS$a$ND6cWc&Ie&UA;YsTeAzqO(v-vm{;lH?m@@ zWKdxDr91tjzuyb3=9*nYgM)|A-e%te-uw;xUc2J9q_IoA6hLn9GoR}3xs^5x56P>f#3 zG4o=fWqHuPxb3dLHYS_8yUPu{*q?04hDk{0Ux_4@I{&N?u&%L>#SvORN@J)kWH zD9ntE`Wd_{5}y)^5YzG-;u&a%PMv_X&Td{_QZf$#QaNt#zJ0#+*^!YfpdFOr28M?( zgV3APAA>Mf;-IC~(9qC~=6xHJqETASL7->Ipu|L*u+ z7Ejzdoi6D0EVx0fJsM~YJp`OvDeYXdqALLQvKa_sjacVEg|@Lf^iPFh5ltPP3j{0s zD*9pClv={etLnQ~kn?l0)osP>Q(s|sv}-Nkh_b)Cn+cF((Pv z7!Ead1NG*b?1QtD+m@DceJ#uDhNjkIErfD z7e=l;AZ(`E*p)Ie%M=wAonCNVQ!2@Bx9?lKZrw$E(tE}`b-&TSr)_~+LED0ZgQK#eA(~yW8A7vm8$?zwoaCb8E_l+NZbtj| zv7tj$lqvze8|I4aYvm@k_g7PLB7(CvghODL+a+}zV|^+ zWX+l<4~n@$lCeNz{WdA7J+?R|KB8yz(!@Yzg^wvd=BgHgbTtQG+N;jk(C|DmMe42M z(fxraQ%&vmL%$7g_CT!gy5NV=6}!2mXBPB{DYC!>=WRTK(Oq-1J5W?<2WR9T*<_M# zr*NkfN`}sbkn}?*PnIwI68$aU)5nib8(X+IIiG-1@jA}CWXTTDpplLy?N5__frgv) zLa()vi-SYKZG$$#2(-Gn!*dv(z{1FyYOv5BV|-SwUcKu?{YYQa-mJZ!Dk?6(!lBoh zSyobVf3(|3!QNgRhRR*h0ef@Tb_Ej4l~-E2?}UpHRguy`ZLO`jxa3Urdgk3{&YrcZ zhV;NP|ChO`C_?Q8NGg7|b6Hs*mG@kiF{rJtzi{Qs6M@`u0|XDtNdD=LAe_ zbD!9j3J=*=uUT+xN=i!7c?UF#)eQ;?nh*7oJHXF`1ICPfrTW1SA2I`DeE{d$DEU~z zX0>7NxqN}@7T7P(-+&};Pvjcbq5~6DK1_1#^v?}BtcNy)suy#gW^%UrsbzDC< z9m6;DwjDllL}1&!v$KG?nU^kI8WkIpl=M6){yRKb!Mr0p+-YzMr zf9Ib>#p5DOpp~qDr~&8v8Xq4>qtBj~U1_;+c{%J&YHaTSy0i*T?0Xgw!3;|7M}OPi zC}|@`Rp+DD)?Oqa1}u1DqI(?mfl`1|{_&eBZOG+!YySGiX{HqE40HrC2`!GZ-SN3IvSddfe5}SpEMTt-r7Z+EQkvH4Cc~7v9n{`y@pq7Eb z;s!|obmJ9EmPBgW?X+z}`BrIf(U4;(utJ~D;Dvl_w{Ox!)O^DZ;eES9tO21SMYBNi zv@Z#pcOcVAfm;~WVllU4;Z6;W+q|(q;Wl&{?)FnmyOhhS^kmL6xi;7d?Qkfjft=-R z<9OUw%?s)v+`d9BD>)Nu6P+;&qssnx0VV*JOS&tnW)(j~$WWb?w(|8RNy+dB#oIk> zw!>lZC&yZT<5I)pn0sSR>Q(Q?GX*9~&V?_RaeA&O zS2cTZa4@%`LMM6xJY|Wmg2=C~gq+YKk@gtO3($6qU0J5_RF(@ROfg%M_pMvua$^2| zexC3}HB8!j4ym`ojwoSIwa(`EhSeghCOt`v(wA<1xgM);s9?+cN?Cv-x$oGXx&N1& zQMfZULu5He=%No$sIT6-bs75y?N1DVxVOG6h59$ld^HYO_=AdzhoZew1yAi`X)xL= z{^D50Wk1>5VxUoV_e13nk&HPnG&}N^nx|tRSP<=EBcq^ExLTahSaGRx*Zv3N$f}iL zsQ}0pmi4WyO*Z~RAL|+$gI?;&JX;bw6`xSk0}LD020*I!SyFV#b;tOQ_V(8};9*6| z0(Z41qP#~c>L7YBs;H<~n>seOw0!#(`7IK)ji}IE!6t`9>BF;%3b?Mkeg9tPcQ}5G z+FcI5i-UI)62u@4Yj&ahng_=F*@23xJn-L_|`& z&`K08x+Jt)f6Gd}qb}81ena!#U8&o$g0Zs6Av%qJuu%tvlgXaw>=N%|o~OYoS01nB zMg_A|S64So9A9wBHoKMBfIT|8N7kzG)!79|kbaU-6&!4R<=fAf@{pL)$k7-gSBBft_Aw zS8_Mzcq~ASwHqI{bs8I73)sCA2}go`1_RSv5z5LrJKehbpvyP`l&7i-++E|EU7=sY zaHuKAuqG%fYAyD3?dCtoaNaq4%{lq?qM{ejK|urw)%D`V^XHmH>BXGViSZ+KEHSs&tzYl^NoCzrpIA9U7pUR#h=dqI`E&{9HU&^X zx$oaIBl6}#;(w|qX$Ver1^BnQfL!;Z(bjbtlQ46U5%Y?R=VoSQJ%tZTb&itqozC+T zV%3$Ex=7KB8W|E zQ#a@Ep`oEm;HviezR%Ck1?j6`3+%Jr)bsCvJ3wzsaKjPz%EhA-r3p7 z&c(ILiKk_7@U*qFwRN<%co~HF4qZ)USN_7&Hz(jKA`x6AA7@RJScT5&a7y2cLs;t9U2bB$tyTi^{u)33m2^v->|b*j^i z`4W&|)Zp0h_vnk;!aoRpMg{bh0s3N}h5kXrG%bh?zgT+zC;DK%5N?`JH- zWtc=C@|uLNv$o&xcCkJm#E+f8>8U*i2l%k?ha0R_GmNtl)m)0r7{O!LR>X}FMEtnJ zJA&ohp5QIfr473khm9GcI5MxnE=3K&pl8?Lx@Q|?AO;4^vF;Ax!zq{r88K|sYvuLa zmyK3fo?$z_@W$IaKxlw7RcW_hdMOEbVszv5*TZa*;Gxb1u`bB^JSg#ZylvE702P4& zDteUK=S`b7l}Lgje<(6{-n`hs-!N}P=eog;r~4S7*H@&XvhpJ2!_AYCJAC_;jtcbp z?>?mFayO>gh0Hi@q~0J^CrwR{am!-hQ9Erw>Xs)WLi8u0+CN%ZG?b!Yb_ z7uh^JshbB&&|w&psEYUPdn}~-;ll?8Q0?3h)3|45A zjBA))kx0|+7}eIvaocA)Q!%pCEd@mk1)X*1i{sg%qX3w^O!nMD2UK!`k zy`kF1d5uY6)hbb6@F7dK9Mudxrjt>o4KzUgPj+&zj~-~ zxO7iOO50B5%VW`0eMF5%-KeaTiF@*dp{S^6$IhAZqW`{PRdchi?P8w+vk)&X>if~Y z;-aEM=%3JTgMM~VEN6lf5`pu0E@!*`R*BSu48zPl{_NMIRF{-;rYAqRZaH)bM2Nd< zsHU#2()xrs9A|A`h06wmx#KLcf&_+!> zVf|pscUugdJ$33XXB-d;Dl%s174bf$ID~HynMEdTjf{9qGM%)F#10-js6Lhaj?IEu z;5pMktkr1wHGke$bNC_VJsCVS`(GplQxt3Tat@_g; z57TObARxMq8+R@SXt9sT2p%pQ6w2bfyjLdwX zr(Ktgk^?#AiX8$V5@!2(Km~sS@9zhA*Po}PFoAKSnt$vS5b_)NtDVN5!s)XQU)JpVaS%9ZBP;`k8TLZ4`(Mn*s85m4 zi&55rCh>$G3vq{8Y1c0M6=rz)aEooj{CD(@E(6mz8(f8#n*zIBWtz)C2RNHWzsANC zU0pLvawwzHbr&HK5N z@OxRKfkB+dl&~-E*|mgQ@TGn@6F5G{cghAe0hmW|F__W zzmDo7%}@6{o&yG#Eg-ZK^^$@uy6g_4MK1Grk{quwScr!~`inrOMoZTBAG+pieI%+M z{uOMizQ#WKTG~>7SXzH}T)EWdXX|*k99`)pw zP66tQN*(`NlKdhJ-@NwQ%qGb~G?F0=36Hs*31f zXJBAsWBUQR85F#(h`dAl&B~@vOuZ=7bYHBbWh^qN^4i_b>hYgLti~dx0UT>p%qqc3<>HmaKc9!)_cXG{KJPk z#$}y10I@*A?93`Y7qJG`1zpeW!6gYrUXJ^&T)ap~POqD7+$8#1cGP^dHO|0Ui>P+| z{%IBhA~Wg~k)O(N^$FaqEV#~CHK)sDtGM_P)~sl*2fJT@b+l`hbOQO@i zeE7hQ9^-lFQmzu&rYj+F>b6zjje~AO+$8^2r8T`|in$%G5j-C(rGDbph7UD0SKxGY zFWK?f*LN1EL-ys%*#NFD!yi_BJO}m&Y+X$`cJFoeBY%HI2$~l!UPNmZ>>d2l(!7-K zP`ZH(C_TPkUw<}upqVHm9&J4A^*Vdy)pf9f?SM_wpKY78wEt-L1r{@e>=LPRT+zcg z*Akrhruz?-diyR{JFxTzY&4wd@-D;kK$$Oqx-sK?|C5O58QRDUR;(W(p0grK*ufHX z+X9&B2Rug3eX4Etr@KUy4MQ#_f2Z6@$X*0 z3%c;ya5W8$j`hzDyA_O~u5cRHH=vpzHB)j^b{x@*XX%P-NqDuR?cfm(G4h$V5f`~Kec^F#?>pUbyr{1Octni zH1z7YYLB!fAZo}b(l?r3maQyThqE@3Wep3N5w&^NIi;rP9kScAovaWKb`10yeQzId@! zg6oW$TFHBl3dRkHpcZv(XhRYi2c(gkdKDVVgzvU)Xe(sOn!)XN%deqDLMwO<82FLU*PDYesmHmi=F`v24!xgPr z4B`aEo+3*Fn)!_3&)sgh9h9H7)V_728D@tME3D6P8Hq>ga|6s@maw2h3wUk+em1d|j7q2YfdwqYc&LfW(2(Z>eJE3sEM|}uwHFhX* z(6P-h)Q9MG7+Wrwsb@=(}r0Sn8WV`qOfLtlaV;sviC1H;uDH!fh{sOk{h7$1_YG}PT^Mz#kQ zAo!B7RVi)MrzE!+C;ZV2en;o{fBV2za!)6(5)>d&Z4ii_n-_AHodHbOSPwT%)K;Dc zF|RpYwo6Gx;i+RcfoAbNAD<_&v1)6_(>;F6NpwBfE$D^wDPEtEo~~Jps_N;&oQ0kb z0_QW_ueNeMMY;rNJe{{e&lA4q=jZblX6rvLU!|M@-ghX#!NDPB(^ICsDJEPUM;upi zUVFsTUmhS8f(QS0leP6Hoo~1Ym4@f@&{-eZhLM$EETRCU+&&IG3ja%)>pE@qXQ$Rj#V*|b*Ww3$%?r=Hc7yN*sC(7(ZV`fIf z=v{Ab@5=2ryu28}C`}#B5rH+dGM8~t>{$VbkpZ>^DA;pz88FWvEM>CN!my9Su6x(N z(njaZHFhfO+%3JmWhH5(BY|^nF@IlO{lH)E9y_D3Mv!j7`?>;TlSg}XYLq1RZ{51} z18n#r;0tA8u3T%u2j~*|puWDoxa4Rt=V}$)^tWQlhb$IjE4)ska2py4w2Cn*JmP*y zDaK!VVMBo`4WZZesDHYXc_RoKk;OOO+F@($CAY6Qgr+-o?%WwIvuf2$6sfwsx5Z)I z4SfKohyL532@gX7-#WW5`pmI5eXtVam9+7+8NI&a|04qR1%#&1A_5(Cb;fN|kzRny zxj2i&ZE2;lHkg{2MCP#p5ZWQ2Q>pm6w$`ss1t+g$$IVVbAazbIuCO!!@jS_g>-Wz_ z{R%l@k#VA-+R&;^o3!lgE?&Mo8#8*uDqrGXYL{7}aDP@;<1%h;Ju^}NN)>T&@yIp_ zsReP~mF@o@dv6`p<+^>3VjwnRONfn#fJF!bDhe3DMnI&I5NQ!9L9kF73`AN%M7pF~ zDM^)XT0FHTHlN)NdrwabhpD%^&%nvOm>Rvy4^vnUFAJSqr z^{fA-WcQzus%Qm>ELWBx7xg{F$j;7gM{vZr-5VV~FrQsQ1umc5;JKB^ao@b^?d?5o z=TPMULc{Um4rbfgw=wq|&MhV4lj>NTiPeowO`+}34jd{zSM+fIEzAi>aTH(;0sEhH z1!U)cbxSAT`tk77IL6s1h8iGpya^88Kb8c}U~7NBc*5t6>9Q;!d6kqnM3}@!4S{i| zn-aKZ)%jzB@sC%5-1r1X^Xf!J#p^B_kZ*Dxe_?KV>{jb(-6J2`WMn=+OGUYmogdPK1mP0=sR9$tB z8Qm(Pj0jG2bpCkuE8r>gL8NUI2#(FUVL7&fK2YP z9*SZO)7z;~BUkldb*~rqo;`v24}-$j0QV#`2N@*jYo%MusJ*l2&{H7o72KIf8IIn$ zjX(?(0MiL1NbDFq2k~nwj;Bh#>c%;f$75;A$+wmuL6qrR_aDgO!-Ly^LWr${z>psf z_KXP}$BsSs7IzZ4c@y1ttiAQjf`@CfBrSh+J^REBn)sHDHkq~yJE4A*hy>slxMIzR zMJj|P80bn_Hp;sj5W1fr@?Z3DLTwHuN(phJSOHCuZWDBzn@4()@2pNp`uOqPE4Jr! zvq(-JQpbX5gr>J>WJ9uXkXis06++1>6t&L|X|uPl&(3@gz?XDU&0#qkCAe+66qtz-2)_o4jvvjefFYgj?nlIMT)CfXM z#+q;nB8Inf@yC*TySt@|6Fz?YpkXFH`EXZJASMu$c*K(I2N~Jw!M!XjH0U^NNtE^s zb+zn5^DlULu_+U{R=T(DpqNBeD6zZ2QLy3=!>i<3a6qnv2cyNe^3`A(Nbmy2OWq6t@Y6sK0%elNOXVhn65<2s^>&%U(LAArYrRX8RQP zKgSH*%P9A2lgI=#9d+P(xVJVc5Xkr$od3Z^`!}w-?0w=w%*uWI{0xM}uG@r$*&Ead zw++A@^H;zsv&r%L!hFi&P0Y|s57r5gCWbmn8P0ISiIoP8t%vu#k6d4xFbnXGgy|eJ z&%^R(*|k^ou=Su23pEA!pnb#oXAv+eQobC4!QDYNwih!K$m}cEqB)(_nO=WRcI9rs zC@<+t(+f8m0ivL5&b-G~*a6hy^&V9YN(w?N5veF7fn1VvwgDtbfE7z^F!}{{F zEiP(a`-gvm43YGamfMYtJ)bDSunRkyhU;|vHcU1sGT3Zefw4>1;C}d z`v$v$Fm$Yhk!z`;Brr8I^@EoFAr5Vsle?Fn6&4Q7VrE9+%7Tq)#i) z&CXg-PgcYw!%Fr^#e51WwR#xe;&225=D_4^8WJbc{Z}aP_Oy<=dGlsA^2QIQ5Jat} z8Nd*BddwAChT;XZjQ8&B{|OTPSc63Q-4g;d6Fg^;j+70gtGyoh&=7bUS9);pzsq(M^hTyhxCJ}U`GQTyred!HMCvQLYdRtmuy_K+8Ygx`iI;QFP z+Ndd&8l;@o3>jgCxG1+3A zB!Zkxb44@Ua#q4(Y!B}SH6Wm5(<42NQOj96G%?}1<0Hnb9l@fw(!OKIjv+#}9NEpy zy%kVsa8XrdO6_ufQH$4YtziNDet=OtsU_s#>+qWNN)R$)VI%#s?xR_a)@5x)BC!aAx^$j-C+WY8-<>2hiMoo>u z2n(!jhyL^QA6iNhw?{aUX-Y~(l^Igp(NB?ZK|4aml}|p9Ta#baUSmORCtv4aoXOVwvq>{ z>MWA44>%qoAAyv1EA9nyAAlu~pvY3Vj)VaZmI}?VEA3uhUSC5bnak?p30x1!MMXu}v9PSYQd4b zt?1!Bz`z%-7hB{ zF3xYi5Yyj4L+i2pCr-R0u*@K}npR@}w;-D18k5LMvYVQiK;$W{+lH0?i#7) z5M@6EM?({`%ZBf{VpQ#HfomcDkj}0{3yubi`^Q*mDWk}XRprQo19o&hDtUwzeHDmc zX*V6Xtaf8u=1$%Q!4iJ~AJ(o@5Mq%VC#P16Tmp#qN=Q9@E*5N~qg#T97Wty?P8OC% zOj1%vbzW}nX*6mqs2}`9p#h+?#P?+U6B(E%iON(o3qB!z;LT`QdazufCCNy2u^DcI)ATDsNls?993+ft zL{X87JZa_n^-oZIj(G2#BR2@wagj~Fy}kVmZXBba^|k8(bpLVQJtkDn14M^UwJQN! z6EU3`%wgPX%1m_{(}g~L$plMtAm|xQU%6(@UesN$rrD8vh~2q! zf_y8&w6~Q8LRV&k8o*6Q6r&0*`|>`6c1GH*bELgk6ByGw49M~=OTZy!GTsYL^o#Bq zl&4>i5z5v|kH8(=h1+a-&RKaSxcoD@I36V9e!VLF*nUs zhbg+)a@Xqt<*M>d#UoGln$tHjlEhfov*=*Is|RVr4b9HW9mCeCXgaC-T3>mIB>l^; zAUs@6grA?taF`o#Zazl}1;Xw{l6x~r=8YA5KzZb~m@#@GF+FKJpI&JMzNaK~`DbS5 z<{VIL_sT&+$vdS9b+dr|F^Eu*W!^g|(4*2~!jydTD&zCRVv1sX#bG=^&Hm5`l z_!@)uAmCoMU9p}~47~xggH~1KBf+_Vh3v%*Fq)&n4P6F0Pna^=W zL18+!36Dq&)!7axevqoQTf5?wa)vDgG4R#L8R8C5>;(d0s8ul$iIVrl&d{uftu#B`Z#GxSfDtI3ndI4Wp0w~IBZa@=-7(T37=ChuWcUOfQ$RMEZ73d>( z79$6VN%PC+&(DJHdI5y*P;M;eDbNGj$02uqS2COkuxB5}ewXi4BEEtTayUY*5 z;XVNY5S1UaMUmzR1zWRm+ z>3*OqhcrD+nfXmR)@n1LsD6G@0*IS0;m@Yq%z4+V9Nzi@2#z}<^G0-2!q$N-GlIIr z%Z4O)4G=)Qlnaot8*>Iu#%kAh+s;%%P9K|T-?3wH-|t1l#JDSE-1V@A4Cx&jNXHs% zQ$aKkixL8lL^H8-x~a0$T9m$dp3+;r3Su zgwWyr`vVnEfLM>#d9LVfs>Xxd!gm#^WLOg!_0dPaV~12f*$we7_^_hcNT9Kzcqj$F zdp)5^#)K(%q;MVSx!=A?4WxwvK9O!vf#3!g9}NA4Od8N5slxvolgWzkRtisVSvr9% zR2}m3CO1sD0GReulPs?iT7v*XP&diE2Te45G;tY3Yr@ORd&G`riz3D%HM%({VVa2| zNE2dE7ZZj24w!>O^B-{ex^~_TU0sC>cMiGrY)#&DR!m8WarBX9-g}J4Ku3HqfE|JF3uge{Q5LHts;Qi+Fgx_Zp3sB=|9GIdKZp`fQgig5k6o9 zyg;yf0lEvBwSd_q`{VtvU|3@3u-Q&7yh69}@>>p17bkbm{kM3yxU}l4Dk}D(@w6Lb zEcX!!-sU4(U|n8%9d-Bt|L(_-e4QN_lr!%C)m!5RM#3{_Xxat`B{ABN-P{?%g-|7C z-S}+34QD0%PkrfD3a=N1m}L*%@L7W>;2r@MAx!?^ta*i{OD3Cu0-=d0L~eC1vQ}5F~vwtMiSxM zd=U^r2_Oc(oCA#apgL#7Db;?*5Mt=UwcEqqWUg*R-{E9S5_m2r1vbSbq989G3*lbV zxN0}iV|&bGE~NtGy|$tJbdF_v6P8T!`Y0=XQ>fSY)@CsfUf6T-}JN3+*euQoSsHhKz=cN-9MA z?*dwh!$U*vQ?u*;5X_=%yz>-tj(_4d=j0cqw{KRHn~(OE{nQc%Np2kehQ=G)hnwKl zD$go>cn$ROm`qIeF>5Ah3on3n5BI3bu54Vzx^172mltcoAYLNwf66k@T@}Z8hsPJW z>O{!bdT5jdmztj~DwjQ<`&xFQzq|WFBxUa{NERRvwUw|U0|N62&q9Kc|H-gXeM&Dj1M%i z9sCf~b6}%GA@HtH(}eS_5-WEDrSg4ra8e)W#+H{;yaED#FKV9*cA#*!l7I zp%!Ra`?A1&IUYZWUQYY;=Z(oofV?cMtl07-u?3&MdX?Xsbmcu+a8T!O-ncO?N;oQf zq|yxct9^7eM~;d0jQyooKO`}oBjif{m#_wu$6tVL^3LpjCRPaOFY=BMRkD`K)dL4_ zg^c1!tzxBJ;foFVn0%V`m^&mV7~qub3h=`#p9 zjR?R(%NeppR}Xi$U?A3R{wllha5n6z z(+Hn0)j=y<3xGKrEsov%2!RBVi;0QZpf7ys(i*}~X|Wz%hX(kepR}i^QttNE9!0q> zQz(I^bSvlvUlCvI?k%PIT3!7FjmA$fcB3NH`-U~Z$}kuM{X@Gq<6yAfqU5iGgRI*p z=-Gg`WaF*Xkd(c7pKr8U?dHvupz1-U7Vb`qs{sLV8A`I%by6!3=AVKeCt(D?N3oO*X8aix4y@d06|F`W z>tPue`l@1LV)ws({Udl1!^u`5>3&jJD26Und!-0EoiNs>MO!)j?2IAiF3h5ABg_nB zD9gr-NEf&^6Y-R^It!oerEZ`)$Xw2;lD-nLPO8u~5NlKz~(u(g%4@RxZ2)Uw2zYYo8rwe|J&z73$s zO(Nq}1HPh$+-b8aanKVd*ho zUbf04bck`t(_r~O!8F1v3&6|xhad;ZnfbsDqullLv!jwALu}LkTv)ggd^H8`R#)hk+Bn8EEMSnkEx|CE^SQVR7`y|dxxap8R%bC6PgFhwPcxf*$O zuTZI=Bbb9|4VH?OyAamZ273C{_)2yd^R+ro%479|CR8ukjg7u?iXckkydXk=uIfl1 zP|rEMd5qQrxxG(j$;I5SsjAw7dV3wP71^-YKXFGkFfy)%o>@-O+}xaWo*g!^ETuYl zzI8oSD}}NQBYKvjIoWK0Q{y^1?Bv!0344PBVKX#?=Yz?*LG24fr@cuPq8tecLLfno zM?KMkn7v)W7T6bV#)K7WJOpYSXxOD{D~>Y)^Gq@#93XrbLPHu% z#HZPzDnRWJ7QBaT`KC%^d z*Gp0NG7vx!fmHm~22b!#2+fKRVvsF7)W?+RHQ+0#p>g;y&j?Ezfo<3B-Aiz9mH|F` z*oV2Q^qA$ShM^G;skQJ`Hf-HWcq2zFM>NlHZ#Y+nFTMh`0}XLl*)luK3V{UX!x|DE zCP_fP?5tJ>Z*MhfhQ|Qmh723PKP8eb=rEU(`+_d@v^lErAsip9J-U&*_U&6vB4Z;+e9cxTIUZz$l_S7w?E2yc;vH9TR@}OC=P@1)91mSucUfU* z5?OaJbU4U9Ic9PeI{=mZuKoL|pU^UM@Lsn==af;%h7r8%BZUxR|07EXrF$HrDdJv! zAB=CQyvT^Yn~nseArLFLqtd+#=&()N_BB~rRJD5v&GR$peLCP1Xusv?K3EiE>rC{QbNV1_hzAX;UxSs$CUwf(P!)oRhk#9G0-UZR^YPbQ|sE zS6wI@q%Ej?y-QxAP}CwL%Bgq6vTU?5fZ_S3vYd&|lL$9Pw=<+A1-OV~?=_5($53X0 z*jqn7fgf%8?n5JDO zF1LuM7V!Qgq$`)G@}eR~_)PMEzPt%}OPwz7+XSd?nLz||#WdeNsL*!c;JSrrSMR?i z0IaZbX5#0D9j`Ajhwc^NhN5sq&dXO%#Ar|cbVs_Ya|#pVG1=KX7nr#Qa8{S7e!xhK zFvlSS_a`yhTV+th0o4@OG?$^_*O7|#aCf!9$Xj*TNf?tU<2XAh!JaCPSi2%MgRpfc zQ~ilyZpA$7GGN@qRtW6gE2pM@zAzrln8=4o!wz7k(^n?|&gJ9m(Lk6!iVoOSzt)91 zmCUJ9qkP!7j3xIcHmDTp4Y!N3w=ecKm9%GVi2B?E;ZRuwm6 zqJtmYzc*gTf+1_nWRNy-_a-l&1c8)6ISn2I`Kwrb7suOUCQ6)PW>{F*w=wa1&Hk9$ z>+&R^;n4PvgPAk=#DNLf;ZbBTLgO5je#U!9s1t-w2D|gC3L;_DnAad z0b*-Q6KsFWjL7gUTBp7ab6|H62x7H zQpP{%Ok61dcQHg1gD?fa_!P3c?Eq$7F{n1JnL_SVI-pV)6%C9#2(S_^1GY|ougr$8 z@f7YlF^wR$s4l=@3b5o8s-!hWM@KbKuMl63t8+ULD!A(9&VB58!3%(@jVx|t>v`yX zv|;eF6Wojrq1&IB8UiBYa8t79vI)wx6=N6+X?^^C5_SZmROT51V&ySCE_G zuU-%|vaeR*{Lt@9YOz_@p*SPh2d^rlU%!5KG;7Z4qz$C%5&v)FDp|Qa^8Cpzgl);4 za3KmNlBr|eFZz41hWKtoc4_#{MGu=!DJZ&Ak>NQr-WHrbp4Ub&WV%y_ctD&Ch5?Qh zpe;iA!V=&NvCxTBv+Vmz$b;wY|5%}p!53pY`6pW+Q68@0u*Z4JRhyJh^Dv;RGPL6A z0*8SM^oJt7iN8b~?A;aw6_amWCzHv^L}dh4m7r*cJ%Tp<$H-QN&jx+^gb;QtL;B$5 zPu-QGJ1vO;LvW5&88V5)umK3x+TfR>GjumK!8GXr1~X<(WDMqER1qUBd{fAT?qL$a z#xiV>JTTtMUb1Kdj|OVubf|DC2?!z!r6CEnGI4pTu`7B;#b`!$$}`lNdr9< zJPn5DV3ez4m>u_P$(kIHjPbKiQbbozM^5djw1NUX;4)`?)m=r!#bh8TrnzrJd&(YW z-$CbDWNqt7^aG`1T?c`#t|jWr2U+Rr=~0NsG*aALVy1)mL0$&X`-0*w9^&y!!K6J` zSmPWd?~3~L8^UlcHsklZOD#D(F+zL_v|X4drsL%E(`-u>!Y~&Q?;VJ819ldHz_^G( z2r=YI3)nMBJY)C=(>H+$Lavo;8gLhkxQ-k_EPIX7_m8H?;PBx}X~_iBG#z5Rb1gwv z776kpat|=N3HTnF+Ct3P`{%hrKYXyqly?h2jY0TeVh#dQSu93%=L17fu%5P-4!#l! zv4Iw7B^-#6f!O!o(6ImWY93xlLaJ>-{KOHsBI$a319a^M1(WaH)8SD zhhW=3K7T_LJozWY-(&OEt@+5!7Y%$cm7U+enQ4bxNQwmUtQ&Ey|Vkt7BtBAI4ge>(f&ch!0mTVhSAsPxSh`GfD_ z*|e1TExrZ$AAKL#iJ$%?BP$ymT!t8{4q<|eAUAsTAC;E<{;gep#9eyhJD}yRr$!22 zpES7fB`IlSXIf$%YdzD@;;K5=Bd2&T9TCSE=7GfVZgDxF1|bG;#Q%&~CJ~pC%Ia!E(}mcA zoeXYpLB|}3r1LYszc^Lofu`kD?i+X-ZwaHFn!gT||1JucVB`pee%K~n591(C?X+lJ z^26-+i*|iG){utpEBFd^5fc4-#4-IF8ZkHwdn4l8h&dN_QgGyf->*2WNbI7;UK4W` z@Mzj#&ESG9l9*fu%xN)0fX~KW_{==dU;p=wsDDD1%hIudCjR+O+j$n^RtI3-8BMeE z=!zw#L}NgOG2A{1us;|eig2rt;5XpEv*!1wy6@Z(Ds!l+S)7Xh2|6+s6c--)5_4cT z>v>!6W6`P=T)|#gm@E)dN5us0MJi;Uu4LzpCB~XE&1$Xa8Ew4CR?O5NgAS5R0bgknpm6< z?Cr@ufhs7&kAErEO$MN5PB<>=^)?;kOkRQ~-3DyohDwAeoPPuF$2f4+42e_y(I>+b*eHvP4P#2zo6jpR@FnJRFA z1mX~FRsu&93;m-s*+Jn*<_@v3kpv6e7-sP7#_MsmdSAeaw)i^kSQy?wsD3>orQCH1 zm6;5&NJNA1JQ#~sNpNsgJ^249{+%_m;#quWs_Zh#uS`94Pv5X{!)2{&dh6Ph+n9r! z1kFo_(;}QQ_&kh4T<=RB<}7v!;T|&_Fg+w?!|$olVX`g5@( zQ~7_BPiQ8YFS9=C2LOr~(54Q9FT_kdJ;^cn_mB0rRml~5Fpp3dB>zdbD(~Uvy3qDNGToJr*We#~%_YzOgXE5VwRX_{saxZFzzki;e&K3}d$tN8_ z$`tg+C^`Q5joZvsvVi00)h z1vi25YXB|}uqXWMEvPbA;ypfKoXbEm#r0$5#ZH}}fBRe2-R8S|f5X9sm-Sb6 zFbkMiy`1Zx|6r|m;atCvQFZY^g6JJ4zTK%zCf9%dY6xLUd&jC9UKFG`94R&4HYYVz zrn>h^f~lL<#Lmsiv|byUTxV(uyEEkY%~t(&f3sbSRt-eTNK0=*aTCeI1AO2hhhd#g zFfj=S9+YHw3MDo1BUP+|afJ>FE|xOB-iYl`$--vi$lZwnCP3Vh=w%$3rwGmOeZ{HT z9Hw`o1|?^kXV$D1@w+F0Co3x6E$9llg6)(~9BZ-OO3eD7GPUTrwb0q7SxnT91-Im9 zdsmtM7?-?L9Ojte7~tmI60lR!+UVTNZQBy1Lt;iPe&sV4gtzS6yb!0OvbH;UIN-{nHe8dk_Gkz-u+y3(59^hzxzbw$2}ou z8F5p7Q+U5G{$#se%obRO*?w8X3b-d9wLU@76Fy*@#P_&l4Z9efGc_%KD2$n>u5bh9 zBk(@)v<1S*29XXu$O(?XFD&4))&{pQ6D89sSz|!pxj@CX0;Vwfmf#KC=TH=!ZELZ& zDEuu`5(G<=`s0rcnA7PD{F0x%kq`{*CkOCcsnhBK1(%51M@OmhVj=v z%6ia~AH|TH$qCzqiGyqnW?ct?uL0Iz20928=))VT(X7p29Zwd?Wo}%U3Ru_yc58zY zhG~A=n8Ej7!kUY?2y&<3a9||f?`2$$m+rSS|tTWE?T9H z@}+B&Y}HRkxM|xO+jyrv^lNyMFqrQjU8ZlAJhw@h&%klU_SQx3w7~tk#XR}bEig!} zO1x=1CDf58>ST1mMDF9cQqf-Z&wees#$p+L!8CzCInCdvu>G|isLZY+g2y0J#q=E) z7|Vt?TboE2O9o#tE@mGSRtfN3-O{+Jk$52zWS}P>9647-!<7BaHZ%Rn-S2(c9ND7m zndiDhjc59k3P7@yq5 zTQAB1#$I`#lTl#eXRnfRwif40yY{FL7S$*y2kBiEKb$%icH)k(Q}7k3=^CL#eWQFKn8gLr z23b#S>h5;fdZ9{2^ovQnqH;*;O<9@DSl)F^zfb&__+p%iX3GPXH-f`LuR1^CNx^D$ zvbP8BlMEL~4RpL4B8KZKnnT2Wu5Oz*EL$}|juY@lQilPnw!M2HQQwhC8l5{~^O`yg zOCCmmypBLgPfXP-j>3pLxp@+O6EdRNX24&VR^S9_ASDAx= z@&Q}L6{kd#Y{jH=Aw}!@n^p|j<{M5;R&Z9&_l;W!?bToiUqY4nx`>R!lO$iDMyXdbCK3l%C2yLna&60@|lXs}@ zp(Sj(WWwI+?N)2N3n=g77GF=&7g+yL8>=zw2Z(;tb8_LD@eZ20d!13as?9sTUwFhm(O{oPv zT8a;<^bWR~Rle=(H{jF_Yvam%rAqZ#P+^OuVq@(p2kEM2Y>$tAQ9fyQsQ+S)7qh7{ zDaYy7r>z50BkkqEK*!uE(Y`{=^F&^WnPI^CWJ&K6tnkTG;jtM=>1>18XQp$2P?MNt zWfx|%>R9|O)HBrXnn>Id8p>WqLAxq?h6~`(fqsZ|90B6rHSyt2nE%!Lbm!d<&68Ma zq|v~oGiaFBzmpvYe96+CKL#}&_KfMwxZ z|I0U*neN-$#69GXuA%Q+#8TLqbgkKcZ-bixe?GAcqG*DFag~)d&VI!vpNqk59X>`; zJUnQ-+@*B*wl>r6Fc>oK0zD^+M-V5tPlAw;P*$^rBF~y^mN5Pk{UVO<4~F-1g?wmOM3hc=!bunW-=Y$Z?(lZK-&xyfdQva&KP>l;Ax^K!K-YTn&6_Q? zXJ&fI zuQzfAO;QC@zx;Gq+m7Y4U5&7BnHw+{Z$^GSeV2j;+6l`+xJ4@rE}tx~K$Gl1z~S<3 z!lpU_AMTl%X^MnZC0ykHWq2!|`m1$bir2Hd1~%^~W?_L{9hP;je6J?#Cx_g0LOm*s z0t#DdYT`2PaCC2sop1hF+4I#_?B^gw&+Crt4$<8AMW3*JCWSCUfo^!Xbi~W6Y!?-k z+2y?6dmEXlVocZu%q?UtbW&0AzX2IfR904YbNeqhd;5}-l11RqJkRyhrLGf``q^{t z!s{KN>nI>G%HAHcbEFCX!x%)06SXsS6-|gw)vdO=wuv^1rlXS0wa>!ue@itWn z0WO3}Nq=*LzPi|mD%0Cf{Wq(Qrt8avH~a2T6toDcGF>m&-!RN6oaz0<^=9bA)yBP7++?W+}-illSo&lOp|qHgaV zJa*Fb4`%?Ep#X=EkBqG%QV*d#{6_|mHliE$H}0fcCt)wCD{iJ#_f$gH)WuDgKmUyC z%nka~C42S=c3EkL>*?2iKPnREJ-jWVP^OY(KUt2Ib!QfR`| z5)(qLaYLW5x)iB4$(!23!lN8<{_|t@^#+m+r4M~tW158)Z*`BJt%8OvM~uL_h5V{m zj;bJ8u8ZqW@}%Br*)PttM0LiEzilo|A~G!Yc57~7e>0mn)3+;4t|>?2%y-m=(Pv0Z zT{w56q3O$o3b;)fJ*&#F4cGm3YOKfJ+4+R&?{Yl5>~LBJL#-4>L+#JR{VFiBooPr- z@iEFgi7k?vI;<^e8i2-Dc=QaK8VK3P0|~rM%3mi`k@@Jw2$>t1ncdA|g5AaT!#3?6 za_Ugr8X1@3Bu{+5-|U!|d|m8Jo=IC!i?dsqS5;}V>Q`1F*R-x_?yj|FDt>7l=Q~(= z&b5Euc0Qz}{>Gr~TU|9@N>vPtrj)ypUWq>f7NAA6VK$-O%0I5Z;Z|u zS7_1zk=_yKa^kc%X%K<2P~`%a#1LEs2Dm@>8$eyV9!+OCqbN+!fi-hon<`q{bpu(n znYH7*KR*=mYTS5PZFaLd)0}@`lWNLcDNW7kqpP~P+kTp8v|slWkry8|jJT^aYIt=1 zNw7iX7WQw(<-$QNcJX`TO(qOD=U=ApEq75_81&}uaeUQv!b0;`MyqRK-^+%GdrfW` zNACLFmSr%d{wp!fE)%;Qzm5qU5mK?I8Uu};?UuB4w0{zkB#DIiSjC2S_rOc(b>T#U zf!2g&PV=35tHF$37l>r1%z7UC)y->^IcIuuIGXeKWt1kgC)5o$w|+4$S;r|_(AYuE z{op-=?GF#B(Xljj`F4&5B}Ii7OqWbV^H`J8=~9}k44w|$bmgFNc39#m#N;>X*3?lS zVR$d7ypBgCz{Jqe`7raomnW2;O4v7XSRLc*H~Gn3bHlWSYuexTQs1$uY5TQCtbbh# zl^FAvKyGdX{A;Pd0zyg&RzoN{Bp2{0Mg{=I-~0Bv=xImrkTR*_N>Z>Z4jcX3<9rSxQEz45bw|4Y?Iw@(?K~sXrLny&>;p#$Js8ih7s) z!cLlThT7)-PZHO=j&4%NKW)PeQ4WFHgFrXJH2^1fxyv);DaKLedKwRQ+n!^bC{@kP zS(dcG^6cxKlXFjVqgw7AKGbrJF_^P?n+Kb}V^5&$Gr%ogmiK}vJ848cg(Vyt_a5My zd3-A|di}EX&P^OsCNhUrw`*}WGjB2CaPc;kxV_anWZq-_*h{L zX~4!{orI53L=u4-E^%gTu2C`(C#i*$l2T)j|Gz%*zUIbTE$i2x8pjVz))xUqCpI=DL zvK8cCxBZu1Rr(aeDi}7GLXkBm$<2hIgwXs_Q*bU$)|K0A6`H9lPfU#l8|WFP9|LcR z@KH=NGpL`QM&iUkz#Al@frf?zvLG24GV4He$Z-}kpf~RdCc}!Ei8}27Lhi#T78V16 z-+3c>9&O7f`hPkfFSEyRfNCFpFe){WVu;Tq7~;x7^|yXeGYAerEb1EqY-CJfF$YJ6 zU_@9h*l>$XF|3ihi!2Q24^UAz-#pQ11CnC?@$yrfKzo%`gxUP>pVK2NlZ{wN$qkx9 zT5}_qdksGoplo&oMQoqVs835S6o84TQPArcqms%4U`0>EY<+7jvtW8Ng&@P2O8zb~ z8hOQJ)1b{ZsKXsVrxCq+wYoEEF%Jh4=7u}6XL`KfCsFYC2cr|FSwsL-dyEv?3_`gn z1r(n63o``O;_dV`>B+}q(;LY&y4R~{N*7VOmHs8bTL@;Eaaf2lww$hwd*{E$1O& zX%L)j7>Rj4CSwEvt08zK;=H+aJDaKl#wZ-9`F*tG+h+blBztbQ5_xu0RdOrJCt8MWmi#=5~V_giO`-=(hbx}ZH+7WD4$p!I`= zyAKTC)NRueJ+k7w{rwM0=k1K$_8KO$7#`KFeAbmwaC++t2l~>7a!g}AE_@re<(oPm z(PccJM=iB9aLJi7bW7-NdS~c#h0TaYF%{qF4o>Ygn6obHHn9k}8xWG&6ir>_ZzKS_ zlHWfLZ~n;#IrvYe$?AdMzleYDd-#z5-~RaDm;QA#+*kgeberr_{>nMBc?vG+@rk6} zFfd_S_U4Pi$CN6La!WnsnQN)R=l8x_lGzs|&Tc|5v&^lV|Kgn7Jh7l$zrTi#Dsx*Q5SQ$%n>Xg31XJ?GBBpsd3e%RGFFIyYIZK=(Zoq z1lHbjG3PH1!3x3zB^{gN`8Gq3n9pGZ!|j(Vsoq?NI{Y94(`L-mF&?Xu>*T|=oVXx( z=yy*8U*Pnf|L%c5pTmFm`=9sW|1V48@0~|=nnF0Y)N8i>Bg*mSuX|9c5Pdh}R|P1jPX zv5c7fxr_d~_&vY(?&6=tR#N|iFZT9G&F`$P&@Ynap3ryp`gXn*r(eiU&aZivHEYB# zpxt1@A`*5lTIAw#>$j~Hby7n)Y$;&&R6hTGoMiJ{OMPeZ?jqmfD?JRGZ+mvWQ!sUw zX^3)hUojb%?y)9lSIus!`wGS7|K7N#vi}1#&%b|m?f&OiUH;Fndgia_u=xA;&;9eI zbpL(npZ9U&e{a*DH)7ZS^d<55lM>CFZh4e!Aee_yz{Vp*=K4*)_bV<_mB#E=NcA{I zw;|6LuBw6X!n0TG&+8}un_YAIQGaVDVhQ19U#-!HAk?~7v8AZT`(M9AwNLobmPQDU zx1ir}^J>j0XpY*@4J-bSU$Xgqj4!_Q^yA;VfANp2q-tMFnh_)cFmLavEa(|A6c~3b zHG$pr(L~pVv;>YK(-XR(_)iDsOyv(xT1)GPMmYQTE945%*0PUx)gG()_8}OeMoQ6w z?>06beFw*)qOQt7UXGLLR*dmA11YY*`8@KY2}bk;Yrh($v;zr=J(?Aw*ROxRS4>bF zOs^6_EDuBzG{IXDBT7gQ0y?9cxG#{)XbQAInodF8?gm)?CT8QpTXauvxs)Q{Z3o%# zt9cOdlNW!3C`UJrc{}8pN4abgsBZW7u+bnn780RA>w-~Mo-D+8gr80 zh2$;0Nx50&lPBh_=8LYy>*(ccP)}JN{ixl*Ya*7k{adt#>&7e6@q)?>H4E*JCN)bt z#Dc?xniJ2*^IC~bB&%7J=hKQto)WUvY8>*URsZ~|XtF2RmzPp;u%z5cW5(P;&#i%t zW$HspF|!qC^Q?tqMuEk)Bg2fnprg78Yyc{fSs`QbnMP{krxB z^)|&z>XimYxeq-U=uhtE8XHpe%=4?p9M@>97%Z6X zf7y@~!|vf4(ivs{W0T65x&B!X(cG98NvG}x)+AebzCBls>bK4;*eINuYu0vo`5Sel z&#wt<&4dJqh-5VgC`EJ?q`{}#33oyv(x)a3DWzLE)cl77Z0m?#1}I_Vv;xG(B|bcy z>(NSD)QqB?L=-{JC&@Y{nn$7(B`QGx9bpB;L7FUtML`}>-a_?yC9)&~=uk3^YX*_qVule&*Mf$cz@DX zBr58+$k)xumD_B$wbqaq&I2Ku{M=tLk-(Z<4mg|;vWQ6eoq5cfK2HdPlA$V5haxcc zwpQsHGdem12Nxne2EwHfG%5tf5HBM3qOKbWB*q3>G(twrRpccRLf}ra$*Q_iKx*4b z@Wqzd4jw5Ll~E=xX0Vrdf4U2+L(k3SFU>$6oV3Kr{Tx}dBiG{J-^jxx&5m3`?|~ii zy65DM)%~2%P+?jf8+s?VwxBcLaSYcyoZWDV@=ZR0Q;I`Tai`ouXJc)8Rg=Q=wm8vd zm;HL&HFuk1aRiFd>Se zZOV6~P?5eqt}RhDiRA)noU1*6I!w(tPh_k9=tW6VRLOHCXI?vUYQ+9r9IXJ^)}n_F?_YR~Cht!y3r%Ky^U zUV47gtYk9asV4hxhV6-02UKrC2<=8BenE}Rm}C4JDp+U+Q|qS|rlS|=3C!Mjw>MH& z1Cx4hH<~pV7^7QQJ!y&2LzJYfIfL0QQ6WbR9@2Hg@+&4XE$z*Ps^B<;37MlmNyZoO zcD&XID{X?ib>pqi>x|I{xZx~`ARR(I5gwI#D5y~d)6X#R%ARx&Mn;ZJO!5;!xwg=Z z{35p#O#vAfA?PoMXGhBmo{8>Ec>ytE6!ibP?c?YLoUoZlYaxfhv3wAedo0H5v?&DP z2B}0Ox5eC+yp&SP)8Y&sUqt)TH^XxyS%M!X=tl(`Hms2|aUqrRA0C2CTdwegfY%;%$-p* zRg#g}Tn<#)tQh=ItTzzWl5(lHDY+lDftWB4gRk{w(?N<+n+2n**)T<5Pg~6A^-d6& zTBNxp7&h^#kfz$JhQ0GDmlyIlZRkS$%oOq`k)&jOc191;@)V-`4ubD1D;ei)sVeGM zy@^bc3~Y!6SxVa(gcqH(&YC4b5@ikvDkWU6VHr5fw`ag-{tHKW&<|vA6gz6u7Kep3K8Frz)PJgy z7dxjM$=R|M@i%ngY`48o>9wm1rXS*~7}(TDtEcaE{aj;f@gpcALb&Pje1oGiB^Afv z(B})IJ==cgY`1rD`bCwyl$+}#4KW7!?1ppG?PB)Wa>1F(yOE^tO%&6*l)orkx!zoQ zVfmy9K8a3iYB3jxIYgUFK>V;+(p!@docgKTiLp@vuh?fquXhrX4r!-|)X_pLNGP$# z^2y3VCuEkRGjpVf&A9gZQ!Qsy>5CCww^I;-+xXKe78$0__V)8Qq%bD+hG+Tci-6gE zhN<1}!zj=@7o=PAbDaH!q1@!x!zf6WjuRSLzrWR&{hqlv2R&lPK`jVGGbyda6m+9} zjMWWyg>rM!0(;2(y<}>cR?a=W}8by#QA=4L$g0*e)dmK1bg$Ps4G-g2VU2l@kSBQcQI!qLg3J%hpuBg$k-Xs+>8R_RQZ9HW6tS4Q2@BXEke+>Ny|JIkmxQl zx;U$_6Y~X$S-=-g-Xi;6|AwEq-MYA*^-72krrzeb-}zhQl%x!1v8}%xOoA)#0Swnr z4C2C|#%-k6g0LN;+lO?r$uMUwob;6G1w_x~q7`!`vX$_(s&5W}*cax4Hl=ohfH|fX zk|8T$6!5X=JsS4zK`ei1oUZxhIelq^2Ur~W%Vwy z!7iQ4+z4`&&xfiJhC;P?$qTb5eXegc$a zB)8un#iB1YAm(j@As;{9N$Y$Cbv~+&@J#GeH+t>EtgK&nn?WFQ=^Q8_txwVt#>$=Z}}@&-h8;) z{NBZJCG#fJSg^&a?lyzB67B*yJqJqaS4X*VZ!J3g%yrWT(1$$kiZO8XAg@QuuHyd! zN*N_I#NQDn00r1(i?Uxd@BrQw-+g9lh3PD+?B$p}p%l(_HCjd4z{MNmRBc_NwQz`p z%}r39HtSd1dDN;SF(M+t>cZ&ul$Ju}0I^5c6zPWR6&re#Q6+4zOfzxrYgg#Fn8X!& z?FcCLZz7Cn6Xl+6J$jqD=9rv9b-Zf}o?yA@K4g_(YIl%9LHXA(ULbwp0pql_qDo1b=}M~m zjC`4LHb1wW=)QM-$;P+P&!b8Wl${>*QGuI%J_c>v_I1pE8PIZT!JiwoJ2FsGyW>hg z&eYW)9o38)m=^1eP*0#Aor`?G4W)sLqhnuxjDn(Sh6v`x5_VIXieB~m$IX8Y9&jl~ zp3pLOfvU3jaaIN$Ls75lZK3`*nMbW}C6S|V=d9+{62;iJ&Aq-Rljea7hWknQU+ZR{ z)|o}W#bb=KLdANr`DnW8)9I&y5>G^Pmt_UK@}TvfZEeMSWJSqeb4azgZIK%zblFMY z`oPqOjI`XLA1z@EXHSqaoDfNZRNKE#<~%D9A#DYwRa9@zki-scg=a^{AMJG;pQpKf zv;Lz@iN9~}W-6+b(F*A&qNrE_xxV?b$ci7UX^G_HIC!v7LG<o*qSwk921Qx z`77kjk)W-MGt{s|mKlT^cewQtZO6yPo!^esdFAI>d^heSG=$u}FzAl^_G->x_Yo{w6bh)v3*Tn>#x5Sd02s{jspH%6%JM z4Rc82UnSh>ii!{X$=cEwJ&_O##yA)SbD6>KXS>r;VI3o7D(JMb8dwi*$cs<9p6qx{ zEMft~?5$5U@GbZK+>- zWkR`;Q{bKXX71L0gAZOB6Wxq2=2JhKr6q?1g~iLe2W-=z9cARJ47e$o#0wojM{-8AvNKsY#H5Boo{MGEtgpNE9`iy|;eOJ*)GbAptggB=kNyks^obDWFFfi=@oGd9>aU{-oz2;5K<4is_&`3b2J$ zE+Zpik*5-SGHaharVL5zg$MGnH!7-a zPYnfcwBk~wXST9v*a4G!!#9ynrKa3H7EaR1R5#S8yedtV;bbKdXW+;b1N1|!CVwvjzM zA=)rmDnjcZLb6m!rIOZXhLNQ*ls$>krV`p!Zd3|2(xyd}q+My#dS0(@nfrF0>w2!| zT<1K`IoEYg|I9Uh_51z4pXI&0-mmxTeJ}Cu4>Gcyr*|E3u&N3vds^l(0NCy6yja&3 zBn9cqd-tBU<$@Pr?LE1j)hyDTmNcLvY|Ry=#k(up+-tsRw`^|x>a|Q;jp4{x-vmqf z>A|JNr@nTK^(s!QD_$BBd?I4s@$!flgI8p?&Fq~Ucip(8+?H!5A*muFz)abQc#H{ZNAtKy=oy54fFyW^NKOS4v68+_M(F2MQJBcJBBeNZlM zo7=UJ8uiA`iZLgTRn>{_9$KCJg>9juS%!9 zc2n5BC(`}iIH#TCXV31ml{>b`)oK63!2|fD+n~F(X+QnqF>Zkzs22vd-Efzw>|TWW z%HlOX5=Ny`%I6egUAGHv7eLX*do4Mdd1+sD>?#Vk-LOV!_kO21Yn|?{lk3WT;x(_! zipokkY#8AawORe6LXTUrRn6vN2vl`}Spk5228%v+SDe09~mmcNG{tUYu4=lCeu zg$4oFG;7~IkJJfMaLV?a8|-*#Q={D4ikeb?6Qx71{^%%fZnf&$tXW=aQfq9y!bDg9 z#&wgAzr24Hp`az1yFg1aZga%-+uwej80`^qZkX5JZw=CYBWHT123|5Ylau;gW7RSj zm%C;g$CQ=Yx5ss#D(QQ5Kg&bvrDB?Aos_DBsl~mHH#Mt+K9)DiNNBCvsunQenq|;g zF1XFb&ne#RKy~pF@>%212NLE94ahO<=pZt*U@H_zQp;0M7^81;kGs3aF32g2O$YE9 z+*CqFO|g}%><-{|&mr?n1-raLO81bFBAfEVid4}0<`C-n&HZmn|5Eod-o&uIwAbo| zOqV1rd*vQDA-Us;fz!4}6i3BWA;HL)i26FtMoT zP=ipe=)fERFTe>~vJ%18ssQgbdyHn#i#*Yfw(MGC8k<(gW)G%09tDW@#CKrahZTax zbo2|>_RP>Jxdk-FamcmxF(O(9KlU}_3N(vk=Sz6_*R6C#B$;_TP^O;5j8DN8kjyW~A z?W13x65b~E#a~*}{`;I1Rgoa+q8actKL8D^bBY-bs%<^xBT+{(!j|_X8rkOiaKUMk3 zEP8d&7$Quergi>DrH_-I4_&x>1QF5j`v|F%BnfQk(vCAA(_|m_3Yiu~hr;Y5fQKK1 z7R(Nye?p$sBw=}PuC!}+Qygwv1z{M76s04XHHMyd6MJZp^0JF0V=T zKCW2)Q)|{Hzm^tjVnT(#66ZI|`x#3^&q$rTEm@X`mWd6rW$(9>FRxM+3LT^NgbUEm z7nUXtFgm3(FVb#FJ2u1Yly$`P@6 zBCVedG?DGDuc{NEGW)DU1=qs#GUnbW7+b7;Qf0*AMOrs3W@Ae?P~JyuWIJc%;=nvM zu?iX~4mAi6yc0Hgp zLz`y{nn*gw+&=q*e>SWDCyn$PWOkVvLx{~KOg~AY-t+brVmE&*8;msfAAfaf#Q&LI^JN|Ge@I;e zEBD`v)b%Cf>fg@u>sD=Rn4g(h(=F4kJZ#4IzfXSVel6$w6&vPm`)d66&!^@Weq+4m zuiu`XYLuaoyUk;ReAIY3Q#beNjdY=->kiK53J|Lt!N<_vw>x56b$bxPGx zo%3%bUnk@@r`o7yzv_DTbZf-M-733f2KLA86 zXx^9dBV)gmMEd{svEvt&e(tJ0rLwqDRc3Mgf}GMp_wA-Tww^OlIiqN~Ps z)w?;r{ZqBYS0cfGK8Ty|&smH7ZX|x=CbhLKwol6*B4xKqA8XnFQ%PN9#Q4v=Ag<}s z-yX01^JQ}hTMQ<~fRdoZVQy0S6wkxBOXz1vp<7AaUU8}D%a>V)zj0eLPeW_pbLY;bS#a-yMX>@DM4g-q zRzps%V7>GvL9hRfvme6r8&MK=@*5GNq*hxDRIPMm1f@`0uwXO1j8twqqB|e{p$M=?>|R@RNjuY?WGRH ztRU$rNnGJVwjFAn%y|ki^(AK6?z%mfVW7=*STv%VVj zicF1-!4nS`^FbdwVXN5eLA}>_O2?2nfX>V`MChUMigs%8)!6t#hi+t!CsAyg(j#^U zGP(kP2Alwz{$%6^RJ+&#mFywoI|%roFNo_HzCwJ<_c*BP##ERm=tmlgfA8Bf>(bCiWl%bkE^_?}R?HFJ zJ5j;7`W0G^uHz!_eNUpe+ikizb_q?&MYE3tvoMyQHG(ZMpPCA_acxCr#;9;kYQ;pf zbf)WTJ5ACVu$YgsFR@x>=-SgdsQ^UwrXsV*RJ1uIrdr|hAD4kRC_BJTZvytc12YcU zMY^wtw`KhTat(N}fVe7EIt$v1ZcpzzeQMr=#Rjx?BfyR*0z`gwq<4M#l`1xYzINVB z;e&^{G@UT=K3r@A`6*oHXMzgGdTG={43@_wA+>A5-|w3XmJv(xD}mjNGF_+KsvF(% z*psS$!FE)>00QA-xEp=TP)p8K?q&V>y5|x(|Ao-zm#Zc1%dMt~n}DQAGXh|O(W>xG z(K&@;ctxa=*a=0omhVHZ8uesWqW9v3_%4)TI*f|!i_p8OcIKXsMMOeN(X@4Hzw_(= zHFza9V7h!dlrW|HApWlr0l0qCq$D2g^~%6*PQ;hOTAlXb0q`Yef9&bbZyCPkfcQ)pcEKY_|<1n3AJ;%Dg!ce=NB+QWp2{X+I z$edrpIt{#oE`b5cyF>8F-8~phg-YO7{O()7P8%N}QVjFgAv-?o4!BB_@1@*9!&=;% z-z3W2z8)^P8n}-iP&YabmGcQKN)T!KUR*rrx~<)aS8M+&GOq}#H>0$=kGoUjnv_U% zx#NA;U&I-I1X_WvHPxZhp$hJs=E+YC4hDUGqTwRUG?tZxYQ-p425^!lLnI@n0|#*j z^n)g4hi^?N7E3j=k*zhFOjxbu?nL z;#DfWb;oh=^{QtKTbd@;HToVm(BL5R&-R9%$n*0x#F@iu3bKG;E_YhR+a^ z0PlB{1_Cy+*x!y<44N}Jxx&Q=!5|b_k`zy?S}fd~Gm(l?^7evbFrjSwn6$bU|A<1z*!;k_j;fdDT0@TUDg&4;}Y6#VM z7`1aBN`OjH2EPfKauc8C0S_b3GUwy^i-L*zP=@G2(qOBDiT0@;o&rK=rn$kt-^k(; zuCBzj_N3zO+fIT*pjHM%P2ejrX?<5-_x=>;j88j3!W62tI=|($!_bn@K&If3R+N&{ za8SY`x7#T|dU9zR8G|HL(L+qmg@f-Sg^oeMT3?={Q<;#}r^3>-c+R^k2gz<-|7Mzp z*VW}Vm80|VM=sF3^fJgfsb}}R`OY=?^sBnxWY(8%MZF-epQMPRWIs(<7#K6!O|zBN(n6 z2!<#&b(QrczfHgeVFYjy9$#_V9#VT-4xGx>Mq0 z>Ms0>WGAD+xTMfh7|0+Y_$>tW9-5@xrA4nU0SZoOv+=GKs5UWO!(ni z^t)<6{wA=y43+-%M@SIk?11HQ%9uea5LXvl2kif|;W1!YqFw#z+lqL!h!0AAU29#S zd0rBlTO@KB<6W+GsiOF*8S$Ose0IXhfIa#_C`!fXMxY?CtBoDb|cY1z{}2 zk;<;)uJpTZ;k`PH5Z^UDG3uS?zYvNS2SE&eBH49RwR`+47_-y0&=2Eu6usET!)Jtb zq+ znXs7Guv_f2KD`Oq!^tsoWf{Of&eBraoe0Haj#o;-G@$a7ii~rH*6Kv(i*H)SxYGJW z*P?qG-Qd&pmQ;axD~?wGh@8d34ROKi_$l_{Yz}mojiGuu|9I~D8fY%ud zBF)~bkb{sR?mYsN5(prk(_!0n|LGMIA-_%o>mqn)BiEY zh8Enax0RKFiBfi7O5^W5EF4UJnf{+I)tYyH*`NMj1Qz`F;6#Es=cC@wdIvI?Cn{PK z{Lcc^LzY`|!=xf$SWHXO_~`(%e!m4gkSGiX2(G>ovg+$Xxn0YcoV6EEPi&;G_WgzX10n<~%USc$6mM0L- z!H@ZrKiAjXgA_P6J8+yBgE|&20qTf}QA-1g87IIUOWUwYYBU;6PJj}|UQM5HjMTm% zq{|r8O#7H>VB|cSbzT(w_8@5n-CKn-WymTW2NK1!v9b7D68uNL3x$J*9PO>#Xl;*U z?s0EVYwiH2_oTZ!1};59>M)utMk>O9%Q*^k(dRJKn6b)U`yMC`y0Z|*j+k%7 zXOX1*7z!cqGAj|rRj@(|XOu<*1$ z;{Y>s46)fG#NAs=YMC;SuR=6}Qk|5oLb$X~ZDL~(2gpEVO?FZ2q23a0I4cUC(EW4r zP)BENWCe7kjzN8c>wwvSLX<=47!G*L%lXNK<>7B<-y6X)8-!kzRS+vt^ny!=@J{#> z7*KvArrE!rIdi7rERC$&(9?RCBd+TUo49Q{OKQ-787XMVA*7kr9tX4~4I@Xy;opzf z)rEImd%?jX*xGS0xU&mBGT10VB=Q_{#5%A?jB(b+mBD0jKvhTuW{_P6#-rX!D-M#N zI6b>xUw2jDm4(Sn;0tfP`N6T|o`VhbTRFhRr^}YZ^mYJKrz5itGkU?K&jLviQ=fRP z6WI_uBEc6NX)&q~2Nul4!-A5nAdH?umia_E0tqNpnNu;XbgRE>7jC9B`xBPWgdOD} z789eHA1bXBSK=6koXiS2(iA86Yf6I!e5!#dYa9n$b8 z$*i8L30Fv&KTm3%KB(nViYVR)cRV*%Sjn8%kgfIN3^z7}h!S*Sy2zyaI=ZZyK!n#d z?Li1au%rTc({y{0#j-nqr4rqOre#5Cs>whG@N?g;66b9d-hYw`yngt_Dqa^*?eyeE zxS-*YBy7Eg5pAv%*SQQ@0W%`qgXVj|#Sn)#EDl`^lD-5#Jy5Hm_wR6|(iGU;f6x^n z9*ffqW^np-P3vX07Qh(m?J1#p4J5~o;lKrJ*Y@8ylp#P2dO2YIQ*z zQ-Otd$HuSJ*VlK#ki)saSI#f7HN`-zeO3+NUx3Q~Q6tF@)5H-@tPTZ~ zs0qW0Fci!sb1n_3z-B${(wzYZr4239l3X_$oko)JNptu;s- zz*qbp=4ZX@iwMN z-lEb2I!e%#3d}Nk>DJ|nA=)NG$ISWB6VnLyU>u!=St#@(OZ~LK`K9zfDUI zhvGim)epc=WX?25AqC^=V`R>B+fowlDVv1;t+fg5R2ODQj&D567Q0kY0WD#Tc)uI# z{G`Dyk+U^dd-+v6Xrqttz|!zSE*QvmqmDzZPT>BjfUNC%AO&Jq#M5WCjfjF?E!?bH zx~EhHkgV0g1UlI(2*(qc{2Top^_-$G7&;(|dd`wCt0oabvuoY?KMNq3?8G#f?9Une~jEHSBl{MQD%TIe)&(VudFE756i{Dg(J>cj+C zbx$ieG@8){c}r}@1Px^z5)CiB@f>C{Ac1)?Yf*pG=I&0k*d)#w-|L2q8=*PY0%u0I1VH^}Cr*u)BF;gW#(yh{cZim3qg#Y|T;?(Zb)&*roPHL9 z*1SY&*~M4Ahn=D#zj`bBe*K?Dk!8;DZ6V1BqtZZ!lc7pp{Gm8#X-?0zaR50jiVEr^gp->v15cYDzx(p|S(RWno-;@p9r8$q5z-` zUC?!idmk$2U2rc6tf!kkw^1Y&32pE8S>i?hJP@bZBx zLSCCARS2%vW_E%%9iz|yx}sTTyi4Z`KmE9)1L*ycbRPn(!TbM6K@ef$-chC6=YUf1 ztq009Um60(x2!%X%Un zm>Jlq2A)21M!=Ylq_0pjbZ*U4j|S)$zGQ8(JmM$~hrjefjAgUG<%o`Dp-FcF{fOAX zPLKL*r`MyeBp7Dyfoo#jZOy=U>Lv(x0zES@-{i=*;*;}qd|&wv$KFJIIFG0=6~%}% zHM@On^#cznU|+7Icr+xMMi7CIjtcM9~PHjtQ9+cVB3Q?RRoGu68{jwyp^fIM0{Zn@RnC4W zs}>-bT;;@5re4gUusCVRQv6z;B1YKq#-S?9_mVCZvq5t)2+dye0e4_h-f#eEsO*Qf zT&6PKQ@D8lHiXZUmD|DWO-D?2rUpg0;FcmNH>?f~T;iWB%hCoSnwRA+n+RTpZ}8!p z1Z)aTN{q&;hJSjwqI-8^cjLW~HX$OsRq^MpM#K98%j*>bZfpMZ{M-pDaGL-$Lz``( z4sk)(3`tZj>Q9*kMf!XxpolX~5l9&YRvF@^Y45|usobO}TaJo_C$b}r@Fc`K0h>5V z6baF+#5(PW#T@X8)5QsO3+dwgoSN06>w;=>aEStnuocr=#(AfM)_Pi30@+2TAWe=?I;oVGgQBMv3BY~bmJDiFT7bmVLyA(@UJe>ZcBi*D+b0^^WNKu*xwlSOW8X8M*Z2th6Xyb-h37glckaL ziI5Vbm-21}aF|*h1v=Wr)E z+(#v?SNnvI60<^>Y*6jQuYA940E%*}e?STb_&FjN^i-E%;+0Y!-3q}h+x79FM; zdg@c3i`&%%k}^VK;14)qAvU8EC?uyoPsu}NEur)`q^dY^e!5{;F0dHxXcVYd4S1K& zXL9E~Le;+KuR!h808PycH>NO@ipKV{i}~(aoJ`zXtV#Tut;b{hcgfe1oyb9Dbz@EW)ZV`t}8R~tDstpEy_{J^FZg*Bg=Hz+k}hCV|) zOOamPgAtq|14Vm-5S363Fa{_=tKLdJIaqUQ9%!_QiapfTC+96RFC4+U+foFN zMEQg?1e-A(hM_$zn6uz`sUb+0g-2)zM}CMyK-7V;3x2whI0%dx^`39~1(0(ZcF9{e z1pyGF{os~+h#W1PP+i>oVjLgg*4G1M)E_Gdm4(Crq+^75dx2piTikWBtq;R_*T zq#U?|B)}k}H1RY-;SXc1r$&Gmq3t(q>eRw=NhY?`SO`gm^_mCy^vIKV zqMJ{5#~z_-2GWHyHH0In0dRK4M(u`pW(TCev(yRCW{gBgXrDo_pebboU}Ke?U9+DY zd03pU9AD6jFKx^w8{#Oj1o?+vp9+ zJ-TqA`D!Q?ma|?@F=wY;ILzdiDNy_w8LoOe>{T;q#DR`eH8B=T2`@yUvtm*yDskG9 zU~AG!TQ*JXA_s~EHUi-nKYaB&Zz_(Yj!TE&&%PrGUFgN`i^XB9M~aBNWJ7Z>6RNFLn(H5SwOJAm*l{YvOcy z1W%cl6JdS`RcSX?RaLEmYdT#6Cd&?p2L(O-qzO;fsD{8@LwR2kB5-O%u#*Hi#T+!l zupN9Z`j41rj73PIZai+G`4|==;l?ek>PZR!bA-j%KouJ{enD$_6g-Rvj`}JhYe0es z&XNL+U{8}o=4#p6`VcVFu4V=I{cBmlIn06-{1Dqy1E4-#sJUpP!;)Sy1Xxri_?C{)z zC>XlW^gnsi+^Ho7N!{Sy=mqXbeZFUC}_UxzQ5%Hla2 z>oQL@A>OXQ7b-26eEISvd79~fjbVv9(M_M3mp)|56SQ(1y z>Om#v>{WYWsVPsl8HWR*X{vg8S1;%*XU#lOyG?~dd@|Z1QWW90^*sROR%v5*KZ5Nz z(|{9|4%mN7!zY$f5afmS(-G<(ImMzLi=Sc-_#cIpo|0pk#~opF+akiognTkzw_=^2 zC>J1!9!ox69k7|v4cD=!f(AHcklsY)h2Yo_CSytUw%$iV>&%;JFXGctHcbVBFA1Ys zrvJ?ygi$iAB4M7)xmscH8fGSK3h^@r5LCg8x&*p9o0I%p)+5*iqOVBt@!v0PZkm4_ z0O#n)KG*tEP51mt>A@cw6|esmdux#GQ^z@3vNjt|pFjS#=Xl66(OL6~6t-V_r1yOJ z{>soFL>n@{Zyr8t*WrmjiD~ZM^LzW44d&aPP83uB{lXoE%MUNi-!#ACeRr9SieF`; z^OdrX5(jsEY_4=j=~>9gC$?SX7@oEg%Wz?dZOy3GjqpWUek#6b;%v)71rfA^#RIP?pVJUl!$g61G6*V}8>fa*$6M8vFfvyHL}86ptEaT` zMcjba_ua^--htVbfdK9@xM~L+j4A;@Lq)9y*aE#+crjXuHcYBs}~X z-ry8CAeHbh_07q!LsT!|)gg0nsML~{Xw5Asq5IHn-XA3;mr)UV3-7tt z!XgXb=?eaofOJK=S2hgB9Y~wp13D|!2Io8zq}+yFOFS*E{+igTxPwhQhD$3!6)P(s zFmTe$nKQ>iMF0@&6&Mi{5M3{*y1E?w(10NGHhlANXGm`~oty2ddho-KN57M4(DehI z$m^#{*Ge4ky?gdNMy1jQF5_-Y%scqnkefH3BB#{R(K& z9X4!O{Qft~QGdLUpPxT513A?^2(OTHfk8A{ux`Ex%o>hmcQ^Gzf*@33Qa>%&4qs#}_SfL7YztUCe9K%1+&nVFeJ zpmu0j7)D2Q%-DE)BDgS(&!@MjTf?f#FIr?D>;Z-dyg|c;6xVp`N{w;j##y6A(~a!t z6GAd;L=%LZ5EZY+cz8rSXW=nh-@6LJg_N>2lqENFBRyE_{ID4+kkjh;e7kn07}ijBhyb;5>@L@0Ynns z;IeN-hK_G|s04y|;l8E_@UUuGXHNG2uF2;a*$Mu*E+8a5rm64j?6hbsyR&;8G>%F` zl40qFN-Vs&XeF7ZU{HU4f-QFeC)bt4&sT4TS>A= z1S(kjY=iJbS7-F|Rz#MH-@QLq%t%D!FSpdymg&aERsqYGGR2a80>U*9t`T}o({L0V zKD=IbbODatOCU;Q0p;f9*>)?m9is68z&FK;Y7lSNswZ*i<;pGh_{pLa;*v_f=i>aF_Uqi&$}Z0RD9rKXT`)z(nj z^(cu7gkVdXKy@u?PJfNmJLPz?w6I?ynHks!KLBWx2Y)C16t~PV*SP%Av6q;ufJ(N_ z8$03GI=M$A!`OWbps}5k>x9=x}v}TI(Rp-9U3}7F_*Az$`951zn0SH zuQhuQ{t`qVYtZF*f1ve*`AB-0wAzf)Qzd{ROw_{j)tycv -FemaleMale246agreeableAgreeableness in men and womenFemaleMale246agreeableReproduced agreeableness in men and women diff --git a/docs/reference/part_bfi.html b/docs/reference/part_bfi.html index 4f2b36f..daf860f 100644 --- a/docs/reference/part_bfi.html +++ b/docs/reference/part_bfi.html @@ -106,7 +106,7 @@

Format<

Source

-

International Personality Item Pool (ipip.ori.org)

+

International Personality Item Pool (https://ipip.ori.org)

https://search.r-project.org/CRAN/refmans/psychTools/html/bfi.html

diff --git a/docs/reference/plot_likert_transform.html b/docs/reference/plot_likert_transform.html index f3a1bd2..b094485 100644 --- a/docs/reference/plot_likert_transform.html +++ b/docs/reference/plot_likert_transform.html @@ -1,7 +1,7 @@ -Plot Transformation — plot_likert_transform • latent2likertPlot Transformation — plot_likert_transform • latent2likert @@ -54,8 +54,8 @@
-

Plots the densities of latent variables in the first row -and transformed discrete probability distributions below.

+

Plots the densities of latent variables and the corresponding +transformed discrete probability distributions.

@@ -70,37 +70,41 @@

Arguments

Value

-

a plot showing the densities of latent variables and the corresponding discrete probability distributions.

+

NULL. The function produces a plot.

Examples

plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5))
 
-plot_likert_transform(n_items = 3, n_levels = 5, mean=c(0, 1, 2))
+plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, 1, 2))
 
-plot_likert_transform(n_items = 3, n_levels = 5, sd=c(0.8, 1, 1.2))
+plot_likert_transform(n_items = 3, n_levels = 5, sd = c(0.8, 1, 1.2))
 
-plot_likert_transform(n_items = 3, n_levels = 5, skew=c(-0.5, 0, 0.5))
+plot_likert_transform(n_items = 3, n_levels = 5, skew = c(-0.5, 0, 0.5))
 
 
diff --git a/docs/reference/simulate_likert.html b/docs/reference/simulate_likert.html index 6c94ae8..f5c8248 100644 --- a/docs/reference/simulate_likert.html +++ b/docs/reference/simulate_likert.html @@ -66,13 +66,13 @@

Usage

Arguments

n_levels
-

Integer. The number of response categories for the Likert scale item.

+

number of response categories for the Likert scale item.

cp
-

Named vector. The centered parameters of the latent variable, including -mean (mu), standard deviation (sd), and skewness (skew). -Skewness must be between -0.95 and 0.95.

+

centered parameters of the latent variable. +Named vector including mean (mu), standard deviation (sd), +and skewness (skew). Skewness must be between -0.95 and 0.95.

@@ -83,10 +83,10 @@

Value

Details

-

The simulation process uses the following model proposed by Boari and Nai-Ruscone. -Let \(X\) be the continuous variable of interest, measured using Likert scale -questions with \(K\) response categories. The observed discrete variable \(Y\) is -defined as follows: +

The simulation process uses the following model detailed by +Boari and Nai-Ruscone. Let \(X\) be the continuous variable of interest, +measured using Likert scale questions with \(K\) response categories. The +observed discrete variable \(Y\) is defined as follows: $$ Y = k, \quad \text{ if } \ \ x_{k - 1} < X \leq x_{k} \quad \text{ for } \ \ k = 1, \dots, K @@ -96,8 +96,8 @@

DetailsDetailssimulate_likert performs the following steps:

  • Ensures the centered parameters are within the acceptable range.

  • Converts the centered parameters to direct parameters.

  • Defines the density function for the skew normal distribution.

  • -
  • Computes the probabilities for each response category using optimal endpoints.

  • +
  • Computes the probabilities for each response category +using optimal endpoints.

References

Boari, G. and Nai Ruscone, M. (2015). -A procedure simulating likert scale item responses. -Electronic journal of applied statistical analysis 8(3), 288–297. +A procedure simulating Likert scale item responses. +Electronic Journal of Applied Statistical Analysis 8(3), +288–297. doi:10.1285/i20705948v8n3p288

diff --git a/docs/search.json b/docs/search.json index 9fb0fa5..379f2de 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -[{"path":"https://markolalovic.github.io/latent2likert/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"MIT License","title":"MIT License","text":"Copyright (c) 2024 Marko Lalovic Permission hereby granted, free charge, person obtaining copy software associated documentation files (“Software”), deal Software without restriction, including without limitation rights use, copy, modify, merge, publish, distribute, sublicense, /sell copies Software, permit persons Software furnished , subject following conditions: copyright notice permission notice shall included copies substantial portions Software. SOFTWARE PROVIDED “”, WITHOUT WARRANTY KIND, EXPRESS IMPLIED, INCLUDING LIMITED WARRANTIES MERCHANTABILITY, FITNESS PARTICULAR PURPOSE NONINFRINGEMENT. EVENT SHALL AUTHORS COPYRIGHT HOLDERS LIABLE CLAIM, DAMAGES LIABILITY, WHETHER ACTION CONTRACT, TORT OTHERWISE, ARISING , CONNECTION SOFTWARE USE DEALINGS SOFTWARE.","code":""},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"Using latent2likert","text":"social sciences, variables interest often conceptualized latent variables — hidden continuous variables measured Likert scale questions, typically categorized Strongly disagree, Disagree, Neutral, Agree, Strongly agree. Researchers frequently aim uncover latent variables using various statistical techniques. Accurate modeling survey data essential comparative analysis simulation. latent2likert package addresses need providing effective algorithm simulate Likert response variables hypothetical latent variables. vignette provides two practical workflow examples demonstrating use latent2likert package.","code":""},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"simulating-survey-data","dir":"Articles","previous_headings":"","what":"Simulating Survey Data","title":"Using latent2likert","text":"following hypothetical survey simulation loosely based actual comparative study teaching learning R pair introductory statistics labs (McNamara 2024). Imagine situation 10 participants Course 20 participants Course B completed survey. Suppose initial question : “rate experience course?” four possible answers: Poor, Fair, Good, Excellent. Let’s assume participants Course neutral regarding question, participants Course B positive experience average. choosing appropriate parameters latent distributions setting number categories n_levels = 4, can generate hypothetical responses (standard deviation sd = 1 skewness skew = 0, default): summarize results, create data frame responses: results can visualized using grouped bar chart:","code":"library(latent2likert) # load the package set.seed(12345) # to ensure reproducible results course_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1) course_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1) n_levels <- 4 n_groups <- 2 cats <- c(\"Poor\", \"Fair\", \"Good\", \"Excellent\") data <- data.frame( Course = rep(c(\"A\", \"B\"), each = n_levels), Response = factor(rep(cats, n_groups), levels = cats), Proportion = c(response_prop(course_A, n_levels), response_prop(course_B, n_levels)) ) data <- data[data$Prop > 0, ] data #> Course Response Proportion #> 1 A Poor 0.30 #> 2 A Fair 0.20 #> 3 A Good 0.20 #> 4 A Excellent 0.30 #> 6 B Fair 0.10 #> 7 B Good 0.25 #> 8 B Excellent 0.65"},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"pre-and-post-comparison","dir":"Articles","previous_headings":"","what":"Pre and Post Comparison","title":"Using latent2likert","text":"Now suppose survey also asked participants rate skills 5-point Likert scale, ranging 1 (poor) 5 (good) : Programming, Searching Online, Solving Problems. survey completed participants taking course pre post-comparison. Suppose participants’ assessments : Programming skills average increased, Searching Online stayed , Solving Problems increased Course , decreased participants Course B. Let’s simulate survey data scenario: Create data frame responses summarize results: visualize results stacked bar chart:","code":"# Pre- and post-assessments of skills for Course A pre_A <- rlikert(size = 10, n_items = 3, n_levels = 5, mean = c(-1, 0, 1)) post_A <- rlikert(size = 10, n_items = 3, n_levels = 5, mean = c(0, 0, 2)) # Pre- and post-assessments of skills for Course B pre_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(-1, 0, 1)) post_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(0, 0, 0)) pre_post <- list(pre_A, post_A, pre_B, post_B) n_items <- 6 # for 3 questions before and after n_levels <- 5 # for a 5-point Likert scale skills <- c(\"Programming\", \"Searching online\", \"Solving problems\") questions <- rep(as.vector(sapply(skills, function(skill) rep(skill, n_levels))), 4) questions <- factor(questions, levels = skills) data <- data.frame ( Course = c(rep(\"Course A\", n_items * n_levels), rep(\"Course B\", n_items * n_levels)), Question = questions, Time = as.factor(rep(c(rep(\"before\", 3*n_levels), rep(\"after\", 3*n_levels)), 2)), Response = rep(rep(seq_len(n_levels), 3), length(pre_post)), Proportion = as.vector(sapply(pre_post, function(d) { as.vector(t(response_prop(d, n_levels))) }))) head(data) #> Course Question Time Response Proportion #> 1 Course A Programming before 1 0.5 #> 2 Course A Programming before 2 0.2 #> 3 Course A Programming before 3 0.3 #> 4 Course A Programming before 4 0.0 #> 5 Course A Programming before 5 0.0 #> 6 Course A Searching online before 1 0.1"},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"recreating-scale-scores","dir":"Articles","previous_headings":"","what":"Recreating Scale Scores","title":"Using latent2likert","text":"use part bfi data set (Revelle 2024). particular first 5 items corresponding agreeableness. investigate differences agreeableness men women also use gender attribute. Load data: Separate items two groups according gender: reproduce items, start estimating parameters latent variables, assuming normal providing number possible response categories ‘n_levels = 6’: , generate new responses items using estimated parameters estimated correlations: next step create agreeableness scale scores groups participants, taking average 5 items. visualize results grouped boxplot:","code":"data(part_bfi) head(part_bfi) #> A1 A2 A3 A4 A5 gender #> 61617 2 4 3 4 4 0 #> 61618 2 4 5 2 5 1 #> 61620 5 4 5 4 4 1 #> 61621 4 4 6 5 5 1 #> 61622 2 3 3 4 5 0 #> 61623 6 6 5 6 5 1 vars <- c(\"A1\", \"A2\", \"A3\", \"A4\", \"A5\") items_M <- part_bfi[part_bfi$gender == 0, vars] items_F <- part_bfi[part_bfi$gender == 1, vars] params_M <- estimate_params(data = items_M, n_levels = 6) params_F <- estimate_params(data = items_F, n_levels = 6) set.seed(12345) # to ensure reproducible results new_items_M <- rlikert(size = nrow(items_M), n_items = 5, n_levels = 6, mean = params_M[\"mean\", ], sd = params_M[\"sd\", ], corr = cor(items_M)) new_items_F <- rlikert(size = nrow(items_F), n_items = 5, n_levels = 6, mean = params_F[\"mean\", ], sd = params_F[\"sd\", ], corr = cor(items_F)) # Combine new items and gender in new data frame new_data <- data.frame(rbind(new_items_M, new_items_F)) new_data$gender <- c(rep(0, nrow(items_M)), rep(1, nrow(items_F))) head(new_data) #> Y1 Y2 Y3 Y4 Y5 gender #> 1 3 5 5 4 5 0 #> 2 1 5 4 4 4 0 #> 3 2 6 5 6 4 0 #> 4 4 4 4 6 5 0 #> 5 4 5 3 2 2 0 #> 6 5 4 5 6 5 0 # We also need to reverse the first item because it has negative correlations part_bfi$A1 <- (min(part_bfi$A1) + max(part_bfi$A1)) - part_bfi$A1 new_data$Y1 <- (min(new_data$Y1) + max(new_data$Y1)) - new_data$Y1 # Create agreeableness scale scores part_bfi$agreeable <- rowMeans(part_bfi[, vars]) new_data$agreeable <- rowMeans(new_data[, c(\"Y1\", \"Y2\", \"Y3\", \"Y4\", \"Y5\")])"},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Marko Lalovic. Author, maintainer.","code":""},{"path":"https://markolalovic.github.io/latent2likert/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Lalovic M (2024). latent2likert: Converting Latent Variables Likert Scale Responses. R package version 1.2.1, https://lalovic.io/latent2likert/.","code":"@Manual{, title = {latent2likert: Converting Latent Variables into Likert Scale Responses}, author = {Marko Lalovic}, year = {2024}, note = {R package version 1.2.1}, url = {https://lalovic.io/latent2likert/}, }"},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"overview","dir":"","previous_headings":"","what":"Overview","title":"Converting Latent Variables into Likert Scale Responses","text":"R package latent2likert designed effectively simulate discretization process inherent Likert scales minimizing distortion. converts continuous latent variables ordinal categories generate Likert scale item responses. particularly useful accurately modeling analyzing survey data use Likert scales, especially applying statistical techniques require metric data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Converting Latent Variables into Likert Scale Responses","text":"can install development version GitHub :","code":"# install.packages(\"devtools\") devtools::install_github(\"markolalovic/latent2likert\")"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"dependencies","dir":"","previous_headings":"","what":"Dependencies","title":"Converting Latent Variables into Likert Scale Responses","text":"keep package lightweight, latent2likert imports mvtnorm, along standard R packages stats graphics, typically included R releases. additional suggested dependency sn package, required generating random responses correlated Likert items based multivariate skew normal distribution. package prompts user install dependency interactive sessions needed.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"features","dir":"","previous_headings":"","what":"Features","title":"Converting Latent Variables into Likert Scale Responses","text":"rlikert: Generates random responses Likert scale questions based specified means standard deviations latent variables, optional settings skewness correlations. estimate_params: Estimates latent parameters existing survey data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"structure","dir":"","previous_headings":"","what":"Structure","title":"Converting Latent Variables into Likert Scale Responses","text":"Overview inputs outputs.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"using-rlikert","dir":"","previous_headings":"","what":"Using rlikert","title":"Converting Latent Variables into Likert Scale Responses","text":"generate sample random responses one item 5-point Likert scale, use: generate responses multiple items specified parameters: can also provide correlation matrix: Note correlations among Likert response variables estimates actual correlations latent variables, estimates typically lower:","code":"library(latent2likert) rlikert(size = 10, n_items = 1, n_levels = 5) #> [1] 4 2 3 2 1 3 2 3 2 3 rlikert(size = 10, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = 0.5) #> Y1 Y2 Y3 #> [1,] 3 2 6 #> [2,] 2 2 5 #> [3,] 2 2 3 #> [4,] 3 1 3 #> [5,] 3 1 5 #> [6,] 3 3 6 #> [7,] 4 3 3 #> [8,] 3 3 6 #> [9,] 2 3 3 #> [10,] 3 2 3 corr <- matrix(c(1.00, -0.63, -0.39, -0.63, 1.00, 0.41, -0.39, 0.41, 1.00), nrow=3) data <- rlikert(size = 10^3, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = corr) cor(data) #> Y1 Y2 Y3 #> Y1 1.0000000 -0.5634259 -0.3760927 #> Y2 -0.5634259 1.0000000 0.4362989 #> Y3 -0.3760927 0.4362989 1.0000000"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"using-estimate_params","dir":"","previous_headings":"","what":"Using estimate_params","title":"Converting Latent Variables into Likert Scale Responses","text":"Given data, can estimate values latent parameters using:","code":"estimate_params(data, n_levels = c(4, 5, 6), skew = 0) #> items #> estimates Y1 Y2 Y3 #> mean -0.0415071755 -0.9654381812 0.0004640853 #> sd 0.8131470573 0.9995025670 1.0275232490"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"transformation","dir":"","previous_headings":"","what":"Transformation","title":"Converting Latent Variables into Likert Scale Responses","text":"visualize transformation, can use plot_likert_transform(). plots densities latent variables first row transformed discrete probability distributions : Transformation latent variables Likert response variables. Note , depending value skewness parameter, normal latent distribution used skew = 0, otherwise skew normal distribution used. value skewness restricted range -0.95 0.95, skew >= -0.95 skew <= 0.95.","code":"plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, -1, 0), sd = c(0.8, 1, 1), skew = c(0, 0, 0.5))"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"further-reading","dir":"","previous_headings":"","what":"Further Reading","title":"Converting Latent Variables into Likert Scale Responses","text":"detailed information practical examples, please refer package vignette. implemented algorithms described functions reference.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"related-r-packages","dir":"","previous_headings":"","what":"Related R Packages","title":"Converting Latent Variables into Likert Scale Responses","text":"simulate Likert item responses, draw_likert function fabricatr package can used recode latent variable Likert response variable specifying intervals subdivide continuous range. latent2likert package, however, offers advantage automatically calculating optimal intervals minimize distortion latent variable Likert response variable normal skew normal latent distributions, eliminating need manually specify intervals. also several alternative approaches rely latent distributions. One method involves directly defining discrete probability distribution sampling using sample function R likert function wakefield package. Another approach specify means, standard deviations, correlations among Likert response variables. , can use LikertMakeR SimCorMultRes generate correlated multinomial responses. Additionally, can define data generating process. familiar item response theory, mirt package allows users specify discrimination difficulty parameters response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":null,"dir":"Reference","previous_headings":"","what":"Discretize Density — discretize_density","title":"Discretize Density — discretize_density","text":"Transforms density function continuous random variable discrete probability distribution minimal distortion using Lloyd-Max algorithm.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Discretize Density — discretize_density","text":"","code":"discretize_density(density_fn, n_levels, eps = 1e-06)"},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Discretize Density — discretize_density","text":"density_fn probability density function. n_levels cardinality set possible outcomes. eps convergence threshold algorithm.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Discretize Density — discretize_density","text":"list containing: prob discrete probability distribution. endp endpoints intervals partition continuous domain. repr representation points intervals. dist distortion measured mean-squared error (MSE).","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Discretize Density — discretize_density","text":"function addresses problem transforming continuous random variable \\(X\\) discrete random variable \\(Y\\) minimal distortion. Distortion measured mean-squared error (MSE): $$ \\text{E}\\left[ (X - Y)^2 \\right] = \\sum_{k=1}^{K} \\int_{x_{k-1}}^{x_{k}} f_{X}(x) \\left( x - r_{k} \\right)^2 \\, dx $$ : \\(f_{X}\\) probability density function \\(X\\), \\(K\\) number possible outcomes \\(Y\\), \\(x_{k}\\) endpoints intervals partition domain \\(X\\), \\(r_{k}\\) representation points intervals. problem solved using following iterative procedure: \\(1.\\) Start arbitrary initial set representation points: \\(r_{1} < r_{2} < \\dots < r_{K}\\). \\(2.\\) Repeat following steps improvement MSE falls given \\(\\varepsilon\\). \\(3.\\) Calculate endpoints \\(x_{k} = (r_{k+1} + r_{k})/2\\) \\(k = 1, \\dots, K-1\\) set \\(x_{0}\\) \\(x_{K}\\) \\(-\\infty\\) \\(\\infty\\), respectively. \\(4.\\) Update representation points setting \\(r_{k}\\) equal conditional mean \\(X\\) given \\(X \\(x_{k-1}, x_{k})\\) \\(k = 1, \\dots, K\\). execution step \\((3)\\) step \\((4)\\), MSE decreases remains . MSE nonnegative, approaches limit. algorithm terminates improvement MSE less given \\(\\varepsilon > 0\\), ensuring convergence finite number iterations. procedure known Lloyd-Max's algorithm, initially used scalar quantization closely related k-means algorithm. Local convergence proven log-concave density functions Kieffer. Many common probability distributions log-concave including normal skew normal distribution, shown Azzalini.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Discretize Density — discretize_density","text":"Azzalini, . (1985). class distributions includes normal ones. Scandinavian Journal Statistics 12(2), 171–178. Kieffer, J. (1983). Uniqueness locally optimal quantizer log-concave density convex error function. IEEE Transactions Information Theory 29, 42–47. Lloyd, S. (1982). Least squares quantization PCM. IEEE Transactions Information Theory 28 (2), 129–137.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Discretize Density — discretize_density","text":"","code":"discretize_density(density_fn = stats::dnorm, n_levels = 5) #> $prob #> [1] 0.1063142 0.2444957 0.2983803 0.2444957 0.1063142 #> #> $endp #> [1] -Inf -1.2463707 -0.3831349 0.3831349 1.2463707 Inf #> #> $repr #> [1] -1.7264716 -0.7662698 0.0000000 0.7662698 1.7264716 #> #> $dist #> [1] 0.07994185 #> discretize_density(density_fn = function(x) { 2 * stats::dnorm(x) * stats::pnorm(0.5 * x)}, n_levels = 4) #> $prob #> [1] 0.1647781 0.3380772 0.3359810 0.1611637 #> #> $endp #> [1] -Inf -0.5537368 0.3597728 1.2808536 Inf #> #> $repr #> [1] -1.04423728 -0.06323628 0.78278182 1.77892538 #> #> $dist #> [1] 0.1026681 #>"},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":null,"dir":"Reference","previous_headings":"","what":"Estimate Latent Parameters — estimate_params","title":"Estimate Latent Parameters — estimate_params","text":"Estimates location scaling parameters latent variables existing survey data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Estimate Latent Parameters — estimate_params","text":"","code":"estimate_params(data, n_levels, skew = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Estimate Latent Parameters — estimate_params","text":"data survey data columns representing individual items. Apart , data can almost class \"data.frame\" \"matrix\" \"array\". n_levels number response categories, vector number. skew marginal skewness latent variables, defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Estimate Latent Parameters — estimate_params","text":"table estimated parameters latent variable.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Estimate Latent Parameters — estimate_params","text":"relationship continuous random variable \\(X\\) discrete probability distribution \\(p_k\\), \\(k = 1, \\dots, K\\), can described system non-linear equations: $$ p_{k} = F_{X}\\left( \\frac{x_{k - 1} - \\xi}{\\omega} \\right) - F_{X}\\left( \\frac{x_{k} - \\xi}{\\omega} \\right) \\quad \\text{} \\ k = 1, \\dots, K $$ : \\(F_{X}\\) cumulative distribution function \\(X\\), \\(K\\) number possible response categories, \\(x_{k}\\) endpoints defining boundaries response categories, \\(p_{k}\\) probability \\(k\\)-th response category, \\(\\xi\\) location parameter \\(X\\), \\(\\omega\\) scaling parameter \\(X\\). endpoints \\(x_{k}\\) calculated discretizing random variable \\(Z\\) mean 0 standard deviation 1 follows distribution \\(X\\). solving system non-linear equations iteratively, can find parameters best fit observed discrete probability distribution \\(p_{k}\\). function estimate_params: Computes proportion table responses item. Estimates probabilities \\(p_{k}\\) item. Computes estimates \\(\\xi\\) \\(\\omega\\) item. Combines estimated parameters items table.","code":""},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Estimate Latent Parameters — estimate_params","text":"","code":"data(part_bfi) vars <- c(\"A1\", \"A2\", \"A3\", \"A4\", \"A5\") estimate_params(data = part_bfi[, vars], n_levels = 6) #> items #> estimates A1 A2 A3 A4 A5 #> mean -0.9759824 1.0830781 0.9776057 1.1723519 0.9006478 #> sd 1.1798137 0.7968668 0.8432599 1.3825407 0.8648150"},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":null,"dir":"Reference","previous_headings":"","what":"Agreeableness and Gender Data — part_bfi","title":"Agreeableness and Gender Data — part_bfi","text":"dataset cleaned version small part bfi dataset psychTools package. contains responses first 5 items agreeableness scale International Personality Item Pool (IPIP) gender attribute. includes responses 2800 subjects. item answered six point Likert scale ranging 1 (inaccurate), 6 (accurate). Gender coded 0 male 1 female. Missing values addressed using mode imputation.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Agreeableness and Gender Data — part_bfi","text":"","code":"data(part_bfi)"},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Agreeableness and Gender Data — part_bfi","text":"object class \"data.frame\" 2800 observations following 6 variables: A1 indifferent feelings others. A2 Inquire others' well-. A3 Know comfort others. A4 Love children. A5 Make people feel ease. gender Gender respondent.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Agreeableness and Gender Data — part_bfi","text":"International Personality Item Pool (ipip.ori.org) https://search.r-project.org/CRAN/refmans/psychTools/html/bfi.html","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Agreeableness and Gender Data — part_bfi","text":"Revelle, W. (2024). Psych: Procedures Psychological, Psychometric, Personality Research. Evanston, Illinois: Northwestern University. https://CRAN.R-project.org/package=psych","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Agreeableness and Gender Data — part_bfi","text":"","code":"data(part_bfi) head(part_bfi) #> A1 A2 A3 A4 A5 gender #> 61617 2 4 3 4 4 0 #> 61618 2 4 5 2 5 1 #> 61620 5 4 5 4 4 1 #> 61621 4 4 6 5 5 1 #> 61622 2 3 3 4 5 0 #> 61623 6 6 5 6 5 1"},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Transformation — plot_likert_transform","title":"Plot Transformation — plot_likert_transform","text":"Plots densities latent variables first row transformed discrete probability distributions .","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Transformation — plot_likert_transform","text":"","code":"plot_likert_transform(n_items, n_levels, mean = 0, sd = 1, skew = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Transformation — plot_likert_transform","text":"n_items number Likert scale items (questions). n_levels number response categories Likert item. Integer vector integers. mean means latent variables. Numeric vector numerics. Defaults 0. sd standard deviations latent variables. Numeric vector numerics. Defaults 1. skew marginal skewness latent variables. Numeric vector numerics. Defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Transformation — plot_likert_transform","text":"plot showing densities latent variables corresponding discrete probability distributions.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Plot Transformation — plot_likert_transform","text":"","code":"plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)) plot_likert_transform(n_items = 3, n_levels = 5, mean=c(0, 1, 2)) plot_likert_transform(n_items = 3, n_levels = 5, sd=c(0.8, 1, 1.2)) plot_likert_transform(n_items = 3, n_levels = 5, skew=c(-0.5, 0, 0.5))"},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate Response Proportions — response_prop","title":"Calculate Response Proportions — response_prop","text":"Returns table proportions possible response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate Response Proportions — response_prop","text":"","code":"response_prop(data, n_levels)"},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate Response Proportions — response_prop","text":"data numeric vector matrix responses. n_levels number response categories.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate Response Proportions — response_prop","text":"table response category proportions.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate Response Proportions — response_prop","text":"","code":"data <- c(1, 2, 2, 3, 3, 3) response_prop(data, n_levels = 3) #> 1 2 3 #> 0.1666667 0.3333333 0.5000000 data_matrix <- matrix(c(1, 2, 2, 3, 3, 3), ncol = 2) response_prop(data_matrix, n_levels = 3) #> Response #> Item 1 2 3 #> [1,] 0.3333333 0.6666667 0 #> [2,] 0.0000000 0.0000000 1"},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":null,"dir":"Reference","previous_headings":"","what":"Generate Random Responses — rlikert","title":"Generate Random Responses — rlikert","text":"Generates array random responses Likert-type questions based specified latent variables.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generate Random Responses — rlikert","text":"","code":"rlikert(size, n_items, n_levels, mean = 0, sd = 1, skew = 0, corr = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Generate Random Responses — rlikert","text":"size number observations. n_items number Likert scale items (number questions). n_levels number response categories item. Integer vector integers. mean means latent variables. Numeric vector numerics. Defaults 0. sd standard deviations latent variables. Numeric vector numerics. Defaults 1. skew marginal skewness latent variables. Numeric vector numerics. Defaults 0. corr correlations latent variables. Can single numeric value representing correlation pairs, actual correlation matrix. Defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Generate Random Responses — rlikert","text":"matrix random responses dimensions size n_items. column names Y1, Y2, ..., Yn n number items. entry matrix represents Likert scale response, ranging 1 n_levels.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Generate Random Responses — rlikert","text":"","code":"# Generate responses for a single item with 5 levels rlikert(size = 10, n_items = 1, n_levels = 5) #> [1] 3 5 4 3 3 2 2 3 4 4 # Generate responses for three items with different levels and parameters rlikert( size = 10, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = 0.5 ) #> Y1 Y2 Y3 #> [1,] 3 1 3 #> [2,] 2 1 3 #> [3,] 3 4 2 #> [4,] 2 1 2 #> [5,] 2 2 2 #> [6,] 3 2 2 #> [7,] 3 4 4 #> [8,] 2 1 2 #> [9,] 2 2 4 #> [10,] 3 4 4 # Generate responses with a correlation matrix corr <- matrix(c( 1.00, -0.63, -0.39, -0.63, 1.00, 0.41, -0.39, 0.41, 1.00 ), nrow = 3) data <- rlikert( size = 1000, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = corr )"},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Likert Scale Item Responses — simulate_likert","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"Simulates Likert scale item responses based specified number response categories centered parameters latent variable.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"","code":"simulate_likert(n_levels, cp)"},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"n_levels Integer. number response categories Likert scale item. cp Named vector. centered parameters latent variable, including mean (mu), standard deviation (sd), skewness (skew). Skewness must -0.95 0.95.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"named vector probabilities response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"simulation process uses following model proposed Boari Nai-Ruscone. Let \\(X\\) continuous variable interest, measured using Likert scale questions \\(K\\) response categories. observed discrete variable \\(Y\\) defined follows: $$ Y = k, \\quad \\text{ } \\ \\ x_{k - 1} < X \\leq x_{k} \\quad \\text{ } \\ \\ k = 1, \\dots, K $$ \\(x_{k}\\), \\(k = 0, \\dots, K\\) endpoints defined domain \\(X\\) : $$ -\\infty = x_{0} < x_{1} < \\dots < x_{K - 1} < x_{K} = \\infty. $$ endpoints dictate transformation density \\(f_{X}\\) \\(X\\) discrete probability distribution: $$ \\text{Pr}(Y = k) = \\int_{x_{k - 1}}^{x_{k}} f_{X}(x) \\, dx \\quad \\text{ } \\ \\ k = 1, \\dots, K. $$ continuous latent variable modeled using skew normal distribution. function simulate_likert performs following steps: Ensures centered parameters within acceptable range. Converts centered parameters direct parameters. Defines density function skew normal distribution. Computes probabilities response category using optimal endpoints.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"Boari, G. Nai Ruscone, M. (2015). procedure simulating likert scale item responses. Electronic journal applied statistical analysis 8(3), 288–297. doi:10.1285/i20705948v8n3p288","code":""},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"","code":"cp <- c(mu = 0, sd = 1, skew = 0.5) simulate_likert(n_levels = 5, cp = cp) #> 1 2 3 4 5 #> 0.15995244 0.29511214 0.28435807 0.18964493 0.07093241 cp2 <- c(mu = 1, sd = 2, skew = -0.3) simulate_likert(n_levels = 7, cp = cp2) #> 1 2 3 4 5 6 7 #> 0.08311645 0.07169556 0.07928979 0.08940184 0.10477572 0.13413804 0.43758260"},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"latent2likert-010-release-date-2020-10-17","dir":"Changelog","previous_headings":"","what":"latent2likert 0.1.0 (Release date: 2020-10-17)","title":"latent2likert 0.1.0 (Release date: 2020-10-17)","text":"Initial release (development version). Tested platforms: x86_64-pc-linux-gnu (64-bit) x86_64-w64-mingw32 (64-bit).","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"latent2likert-100-release-date-2024-03-28","dir":"Changelog","previous_headings":"","what":"latent2likert 1.0.0 (Release date: 2024-03-28)","title":"latent2likert 1.0.0 (Release date: 2024-03-28)","text":"option generate correlated Likert scale items added function rLikert(). New function estimate_parameters() added allows estimation parameters existing survey data replicate accurately. Issues related dependencies resolved. version now imports standard R packages mvtnorm, stats, graphics packages stats graphics, typically included R releases. package sn necessary generating correlated responses based skew normal distribution. Added user prompts installing sn package necessary.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"latent2likert-110-release-date-2024-06-06","dir":"Changelog","previous_headings":"","what":"latent2likert 1.1.0 (Release date: 2024-06-06)","title":"latent2likert 1.1.0 (Release date: 2024-06-06)","text":"minor update functions vignettes.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"latent2likert-111-release-date-2024-06-06","dir":"Changelog","previous_headings":"","what":"latent2likert 1.1.1 (Release date: 2024-06-06)","title":"latent2likert 1.1.1 (Release date: 2024-06-06)","text":"package renamed responsesR latent2likert. capture essence converting latent variables Likert scale responses. Improvements package website documentation.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"latent2likert-121-release-date-2024-06-12","dir":"Changelog","previous_headings":"","what":"latent2likert 1.2.1 (Release date: 2024-06-12)","title":"latent2likert 1.2.1 (Release date: 2024-06-12)","text":"Refactored code improved modularity maintainability. Modularized core functions better readability. Improved structure organization codebase. Improved error handling different cases correlations input. Updated estimate_parameters() function estimating latent parameters survey data. codebase currently development, finer details may change.","code":""}] +[{"path":"https://markolalovic.github.io/latent2likert/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"MIT License","title":"MIT License","text":"Copyright (c) 2024 Marko Lalovic Permission hereby granted, free charge, person obtaining copy software associated documentation files (“Software”), deal Software without restriction, including without limitation rights use, copy, modify, merge, publish, distribute, sublicense, /sell copies Software, permit persons Software furnished , subject following conditions: copyright notice permission notice shall included copies substantial portions Software. SOFTWARE PROVIDED “”, WITHOUT WARRANTY KIND, EXPRESS IMPLIED, INCLUDING LIMITED WARRANTIES MERCHANTABILITY, FITNESS PARTICULAR PURPOSE NONINFRINGEMENT. EVENT SHALL AUTHORS COPYRIGHT HOLDERS LIABLE CLAIM, DAMAGES LIABILITY, WHETHER ACTION CONTRACT, TORT OTHERWISE, ARISING , CONNECTION SOFTWARE USE DEALINGS SOFTWARE.","code":""},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"introduction","dir":"Articles","previous_headings":"Using latent2likert","what":"Introduction","title":"Using latent2likert","text":"social sciences, variables interest often conceptualized latent variables — hidden continuous variables measured Likert scale questions, typically categorized Strongly disagree, Disagree, Neutral, Agree, Strongly agree. Researchers frequently aim uncover latent variables using various statistical techniques. Accurate modeling survey data essential comparative analysis simulation. latent2likert package addresses need providing effective algorithm simulate Likert response variables hypothetical latent variables. vignette provides two practical workflow examples demonstrating use latent2likert package.","code":""},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"simulating-survey-data","dir":"Articles","previous_headings":"Using latent2likert","what":"Simulating Survey Data","title":"Using latent2likert","text":"following hypothetical survey simulation loosely based actual comparative study teaching learning R pair introductory statistics labs (McNamara 2024). Imagine situation 10 participants Course 20 participants Course B completed survey. Suppose initial question : “rate experience course?” four possible answers: Poor, Fair, Good, Excellent. Let’s assume participants Course neutral regarding question, participants Course B positive experience average. choosing appropriate parameters latent distributions setting number categories n_levels = 4, can generate hypothetical responses (standard deviation sd = 1 skewness skew = 0, default): summarize results, create data frame responses: results can visualized using grouped bar chart:","code":"library(latent2likert) # Load the package set.seed(12345) # Ensure reproducible results # Generate responses for Course A and Course B responses_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1) responses_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1) n_levels <- 4 n_groups <- 2 categories <- c(\"Poor\", \"Fair\", \"Good\", \"Excellent\") # Create a data frame to summarize the responses response_data <- data.frame( Course = rep(c(\"A\", \"B\"), each = n_levels), Response = factor(rep(categories, n_groups), levels = categories), Proportion = c( response_prop(responses_A, n_levels), response_prop(responses_B, n_levels) ) ) # Filter out rows with zero proportions response_data <- response_data[response_data$Proportion > 0, ] response_data #> Course Response Proportion #> 1 A Poor 0.30 #> 2 A Fair 0.20 #> 3 A Good 0.20 #> 4 A Excellent 0.30 #> 6 B Fair 0.10 #> 7 B Good 0.25 #> 8 B Excellent 0.65"},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"pre-and-post-comparison","dir":"Articles","previous_headings":"Using latent2likert","what":"Pre and Post Comparison","title":"Using latent2likert","text":"Now suppose survey also asked participants rate skills 5-point Likert scale, ranging 1 (poor) 5 (good) : Programming, Searching Online, Solving Problems. survey completed participants taking course pre post-comparison. Suppose participants’ assessments : Programming skills average increased, Searching Online stayed , Solving Problems increased Course , decreased participants Course B. Let’s simulate survey data scenario: Create data frame responses summarize results: visualize results stacked bar chart:","code":"# Pre- and post-assessments of skills for Course A pre_A <- rlikert(size = 10, n_items = 3, n_levels = 5, mean = c(-1, 0, 1)) post_A <- rlikert(size = 10, n_items = 3, n_levels = 5, mean = c(0, 0, 2)) # Pre- and post-assessments of skills for Course B pre_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(-1, 0, 1)) post_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(0, 0, 0)) # Combine pre and post responses into a list pre_post <- list(pre_A, post_A, pre_B, post_B) # Number of items and response levels n_items <- 3 n_levels <- 5 # Define skills assessed skills <- c(\"Programming\", \"Searching online\", \"Solving problems\") # Generate repeated skill labels for questions questions <- rep(rep(skills, each = n_levels), 4) questions <- factor(questions, levels = skills) # Create a data frame to summarize the responses response_data <- data.frame( Course = rep(c(\"Course A\", \"Course B\"), each = 2 * n_items * n_levels), Question = questions, Time = as.factor(rep(c( rep(\"before\", n_items * n_levels), rep(\"after\", n_items * n_levels) ), 2)), Response = rep(seq_len(n_levels), 2 * n_items * 2), Proportion = as.vector(sapply(pre_post, function(d) { as.vector(t(response_prop(d, n_levels))) })) ) head(response_data) #> Course Question Time Response Proportion #> 1 Course A Programming before 1 0.5 #> 2 Course A Programming before 2 0.2 #> 3 Course A Programming before 3 0.3 #> 4 Course A Programming before 4 0.0 #> 5 Course A Programming before 5 0.0 #> 6 Course A Searching online before 1 0.1"},{"path":"https://markolalovic.github.io/latent2likert/articles/using_latent2likert.html","id":"recreating-scale-scores","dir":"Articles","previous_headings":"Using latent2likert","what":"Recreating Scale Scores","title":"Using latent2likert","text":"use part bfi data set (Revelle 2024). Specifically, ’ll focus first 5 items corresponding agreeableness. investigate differences agreeableness men women, ’ll also use gender attribute. Load data: Separate items two groups according gender: Estimate parameters latent variables, assuming normal providing number possible response categories n_levels = 6: Generate new responses items using estimated parameters estimated correlations: Create agreeableness scale scores groups participants taking average 5 items: results can visualized grouped boxplot:","code":"data(part_bfi) head(part_bfi) #> A1 A2 A3 A4 A5 gender #> 61617 2 4 3 4 4 0 #> 61618 2 4 5 2 5 1 #> 61620 5 4 5 4 4 1 #> 61621 4 4 6 5 5 1 #> 61622 2 3 3 4 5 0 #> 61623 6 6 5 6 5 1 vars <- c(\"A1\", \"A2\", \"A3\", \"A4\", \"A5\") items_male <- part_bfi[part_bfi$gender == 0, vars] items_female <- part_bfi[part_bfi$gender == 1, vars] params_male <- estimate_params(data = items_male, n_levels = 6) params_female <- estimate_params(data = items_female, n_levels = 6) set.seed(12345) # Ensure reproducible results new_items_male <- rlikert( size = nrow(items_male), n_items = 5, n_levels = 6, mean = params_male[\"mean\", ], sd = params_male[\"sd\", ], corr = cor(items_male) ) new_items_female <- rlikert( size = nrow(items_female), n_items = 5, n_levels = 6, mean = params_female[\"mean\", ], sd = params_female[\"sd\", ], corr = cor(items_female) ) # Combine new items and gender in new data frame new_data <- data.frame(rbind(new_items_male, new_items_female)) new_data$gender <- c(rep(0, nrow(items_male)), rep(1, nrow(items_female))) head(new_data) #> Y1 Y2 Y3 Y4 Y5 gender #> 1 3 5 5 4 5 0 #> 2 1 5 4 4 4 0 #> 3 2 6 5 6 4 0 #> 4 4 4 4 6 5 0 #> 5 4 5 3 2 2 0 #> 6 5 4 5 6 5 0 # Reverse the first item because it has negative correlations part_bfi$A1 <- (min(part_bfi$A1) + max(part_bfi$A1)) - part_bfi$A1 new_data$Y1 <- (min(new_data$Y1) + max(new_data$Y1)) - new_data$Y1 # Create agreeableness scale scores part_bfi$agreeable <- rowMeans(part_bfi[, vars]) new_data$agreeable <- rowMeans(new_data[, c(\"Y1\", \"Y2\", \"Y3\", \"Y4\", \"Y5\")])"},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Marko Lalovic. Author, maintainer.","code":""},{"path":"https://markolalovic.github.io/latent2likert/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Lalovic M (2024). latent2likert: Converting Latent Variables Likert Scale Responses. R package version 1.2.1, https://lalovic.io/latent2likert/.","code":"@Manual{, title = {latent2likert: Converting Latent Variables into Likert Scale Responses}, author = {Marko Lalovic}, year = {2024}, note = {R package version 1.2.1}, url = {https://lalovic.io/latent2likert/}, }"},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"overview","dir":"","previous_headings":"","what":"Overview","title":"Converting Latent Variables into Likert Scale Responses","text":"latent2likert package designed effectively simulate discretization process inherent Likert scales minimizing distortion. converts continuous latent variables ordinal categories generate Likert scale item responses. particularly useful accurately modeling analyzing survey data use Likert scales, especially applying statistical techniques require metric data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Converting Latent Variables into Likert Scale Responses","text":"can install development version GitHub :","code":"# install.packages(\"devtools\") devtools::install_github(\"markolalovic/latent2likert\")"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"dependencies","dir":"","previous_headings":"","what":"Dependencies","title":"Converting Latent Variables into Likert Scale Responses","text":"keep package lightweight, latent2likert imports mvtnorm, along standard R packages stats graphics, typically included R releases. additional suggested dependency package sn, required generating random responses correlated Likert items based multivariate skew normal distribution. package prompts user install dependency interactive sessions needed.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"features","dir":"","previous_headings":"","what":"Features","title":"Converting Latent Variables into Likert Scale Responses","text":"rlikert: Generates random responses Likert scale questions based specified means standard deviations latent variables, optional settings skewness correlations. estimate_params: Estimates latent parameters existing survey data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"structure","dir":"","previous_headings":"","what":"Structure","title":"Converting Latent Variables into Likert Scale Responses","text":"Overview inputs outputs.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"using-rlikert","dir":"","previous_headings":"","what":"Using rlikert","title":"Converting Latent Variables into Likert Scale Responses","text":"generate sample random responses one item 5-point Likert scale, use: generate responses multiple items specified parameters: can also provide correlation matrix: Note correlations among Likert response variables estimates actual correlations latent variables, estimates typically lower:","code":"library(latent2likert) rlikert(size = 10, n_items = 1, n_levels = 5) #> [1] 2 5 2 3 3 1 2 2 1 5 rlikert(size = 10, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = 0.5) #> Y1 Y2 Y3 #> [1,] 4 3 5 #> [2,] 3 2 3 #> [3,] 3 3 3 #> [4,] 2 3 4 #> [5,] 2 3 4 #> [6,] 3 2 4 #> [7,] 3 1 3 #> [8,] 2 1 3 #> [9,] 2 1 6 #> [10,] 3 1 3 corr <- matrix(c(1.00, -0.63, -0.39, -0.63, 1.00, 0.41, -0.39, 0.41, 1.00), nrow=3) data <- rlikert(size = 10^3, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = corr) cor(data) #> Y1 Y2 Y3 #> Y1 1.0000000 -0.5277858 -0.3678057 #> Y2 -0.5277858 1.0000000 0.3983187 #> Y3 -0.3678057 0.3983187 1.0000000"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"using-estimate_params","dir":"","previous_headings":"","what":"Using estimate_params","title":"Converting Latent Variables into Likert Scale Responses","text":"Given data, can estimate values latent parameters using:","code":"estimate_params(data, n_levels = c(4, 5, 6), skew = 0) #> items #> estimates Y1 Y2 Y3 #> mean 0.08270757 -1.10356623 0.01029328 #> sd 0.79986937 1.06032921 1.01115089"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"transformation","dir":"","previous_headings":"","what":"Transformation","title":"Converting Latent Variables into Likert Scale Responses","text":"visualize transformation, can use plot_likert_transform(). plots densities latent variables first row transformed discrete probability distributions : Transformation latent variables Likert response variables. Note , depending value skewness parameter, normal latent distribution used skew = 0, otherwise skew normal distribution used. value skewness restricted range -0.95 0.95, skew >= -0.95 skew <= 0.95.","code":"plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, -1, 0), sd = c(0.8, 1, 1), skew = c(0, 0, 0.5))"},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"further-reading","dir":"","previous_headings":"","what":"Further Reading","title":"Converting Latent Variables into Likert Scale Responses","text":"detailed information practical examples, please refer package vignette. implemented algorithms described functions reference.","code":""},{"path":"https://markolalovic.github.io/latent2likert/index.html","id":"related-r-packages","dir":"","previous_headings":"","what":"Related R Packages","title":"Converting Latent Variables into Likert Scale Responses","text":"simulate Likert item responses, draw_likert function fabricatr package can used recode latent variable Likert response variable specifying intervals subdivide continuous range. latent2likert package, however, offers advantage automatically calculating optimal intervals minimize distortion latent variable Likert response variable normal skew normal latent distributions, eliminating need manually specify intervals. also several alternative approaches rely latent distributions. One method involves directly defining discrete probability distribution sampling using sample function R likert function wakefield package. Another approach specify means, standard deviations, correlations among Likert response variables. , can use LikertMakeR SimCorMultRes generate correlated multinomial responses. Additionally, can define data generating process. familiar item response theory, mirt package allows users specify discrimination difficulty parameters response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":null,"dir":"Reference","previous_headings":"","what":"Discretize Density — discretize_density","title":"Discretize Density — discretize_density","text":"Transforms density function continuous random variable discrete probability distribution minimal distortion using Lloyd-Max algorithm.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Discretize Density — discretize_density","text":"","code":"discretize_density(density_fn, n_levels, eps = 1e-06)"},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Discretize Density — discretize_density","text":"density_fn probability density function. n_levels cardinality set possible outcomes. eps convergence threshold algorithm.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Discretize Density — discretize_density","text":"list containing: prob discrete probability distribution. endp endpoints intervals partition continuous domain. repr representation points intervals. dist distortion measured mean-squared error (MSE).","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Discretize Density — discretize_density","text":"function addresses problem transforming continuous random variable \\(X\\) discrete random variable \\(Y\\) minimal distortion. Distortion measured mean-squared error (MSE): $$ \\text{E}\\left[ (X - Y)^2 \\right] = \\sum_{k=1}^{K} \\int_{x_{k-1}}^{x_{k}} f_{X}(x) \\left( x - r_{k} \\right)^2 \\, dx $$ : \\(f_{X}\\) probability density function \\(X\\), \\(K\\) number possible outcomes \\(Y\\), \\(x_{k}\\) endpoints intervals partition domain \\(X\\), \\(r_{k}\\) representation points intervals. problem solved using following iterative procedure: \\(1.\\) Start arbitrary initial set representation points: \\(r_{1} < r_{2} < \\dots < r_{K}\\). \\(2.\\) Repeat following steps improvement MSE falls given \\(\\varepsilon\\). \\(3.\\) Calculate endpoints \\(x_{k} = (r_{k+1} + r_{k})/2\\) \\(k = 1, \\dots, K-1\\) set \\(x_{0}\\) \\(x_{K}\\) \\(-\\infty\\) \\(\\infty\\), respectively. \\(4.\\) Update representation points setting \\(r_{k}\\) equal conditional mean \\(X\\) given \\(X \\(x_{k-1}, x_{k})\\) \\(k = 1, \\dots, K\\). execution step \\((3)\\) step \\((4)\\), MSE decreases remains . MSE nonnegative, approaches limit. algorithm terminates improvement MSE less given \\(\\varepsilon > 0\\), ensuring convergence finite number iterations. procedure known Lloyd-Max's algorithm, initially used scalar quantization closely related k-means algorithm. Local convergence proven log-concave density functions Kieffer. Many common probability distributions log-concave including normal skew normal distribution, shown Azzalini.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Discretize Density — discretize_density","text":"Azzalini, . (1985). class distributions includes normal ones. Scandinavian Journal Statistics 12(2), 171–178. Kieffer, J. (1983). Uniqueness locally optimal quantizer log-concave density convex error function. IEEE Transactions Information Theory 29, 42–47. Lloyd, S. (1982). Least squares quantization PCM. IEEE Transactions Information Theory 28 (2), 129–137.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/discretize_density.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Discretize Density — discretize_density","text":"","code":"discretize_density(density_fn = stats::dnorm, n_levels = 5) #> $prob #> [1] 0.1063142 0.2444957 0.2983803 0.2444957 0.1063142 #> #> $endp #> [1] -Inf -1.2463707 -0.3831349 0.3831349 1.2463707 Inf #> #> $repr #> [1] -1.7264716 -0.7662698 0.0000000 0.7662698 1.7264716 #> #> $dist #> [1] 0.07994185 #> discretize_density(density_fn = function(x) { 2 * stats::dnorm(x) * stats::pnorm(0.5 * x) }, n_levels = 4) #> $prob #> [1] 0.1647781 0.3380772 0.3359810 0.1611637 #> #> $endp #> [1] -Inf -0.5537368 0.3597728 1.2808536 Inf #> #> $repr #> [1] -1.04423728 -0.06323628 0.78278182 1.77892538 #> #> $dist #> [1] 0.1026681 #>"},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":null,"dir":"Reference","previous_headings":"","what":"Estimate Latent Parameters — estimate_params","title":"Estimate Latent Parameters — estimate_params","text":"Estimates location scaling parameters latent variables existing survey data.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Estimate Latent Parameters — estimate_params","text":"","code":"estimate_params(data, n_levels, skew = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Estimate Latent Parameters — estimate_params","text":"data survey data columns representing individual items. Apart , data can almost class \"data.frame\" \"matrix\" \"array\". n_levels number response categories, vector number. skew marginal skewness latent variables, defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Estimate Latent Parameters — estimate_params","text":"table estimated parameters latent variable.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Estimate Latent Parameters — estimate_params","text":"relationship continuous random variable \\(X\\) discrete probability distribution \\(p_k\\), \\(k = 1, \\dots, K\\), can described system non-linear equations: $$ p_{k} = F_{X}\\left( \\frac{x_{k - 1} - \\xi}{\\omega} \\right) - F_{X}\\left( \\frac{x_{k} - \\xi}{\\omega} \\right) \\quad \\text{} \\ k = 1, \\dots, K $$ : \\(F_{X}\\) cumulative distribution function \\(X\\), \\(K\\) number possible response categories, \\(x_{k}\\) endpoints defining boundaries response categories, \\(p_{k}\\) probability \\(k\\)-th response category, \\(\\xi\\) location parameter \\(X\\), \\(\\omega\\) scaling parameter \\(X\\). endpoints \\(x_{k}\\) calculated discretizing random variable \\(Z\\) mean 0 standard deviation 1 follows distribution \\(X\\). solving system non-linear equations iteratively, can find parameters best fit observed discrete probability distribution \\(p_{k}\\). function estimate_params: Computes proportion table responses item. Estimates probabilities \\(p_{k}\\) item. Computes estimates \\(\\xi\\) \\(\\omega\\) item. Combines estimated parameters items table.","code":""},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/reference/estimate_params.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Estimate Latent Parameters — estimate_params","text":"","code":"data(part_bfi) vars <- c(\"A1\", \"A2\", \"A3\", \"A4\", \"A5\") estimate_params(data = part_bfi[, vars], n_levels = 6) #> items #> estimates A1 A2 A3 A4 A5 #> mean -0.9759824 1.0830781 0.9776057 1.1723519 0.9006478 #> sd 1.1798137 0.7968668 0.8432599 1.3825407 0.8648150"},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":null,"dir":"Reference","previous_headings":"","what":"Agreeableness and Gender Data — part_bfi","title":"Agreeableness and Gender Data — part_bfi","text":"dataset cleaned version small part bfi dataset psychTools package. contains responses first 5 items agreeableness scale International Personality Item Pool (IPIP) gender attribute. includes responses 2800 subjects. item answered six point Likert scale ranging 1 (inaccurate), 6 (accurate). Gender coded 0 male 1 female. Missing values addressed using mode imputation.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Agreeableness and Gender Data — part_bfi","text":"","code":"data(part_bfi)"},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Agreeableness and Gender Data — part_bfi","text":"object class \"data.frame\" 2800 observations following 6 variables: A1 indifferent feelings others. A2 Inquire others' well-. A3 Know comfort others. A4 Love children. A5 Make people feel ease. gender Gender respondent.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Agreeableness and Gender Data — part_bfi","text":"International Personality Item Pool (https://ipip.ori.org) https://search.r-project.org/CRAN/refmans/psychTools/html/bfi.html","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Agreeableness and Gender Data — part_bfi","text":"Revelle, W. (2024). Psych: Procedures Psychological, Psychometric, Personality Research. Evanston, Illinois: Northwestern University. https://CRAN.R-project.org/package=psych","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/part_bfi.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Agreeableness and Gender Data — part_bfi","text":"","code":"data(part_bfi) head(part_bfi) #> A1 A2 A3 A4 A5 gender #> 61617 2 4 3 4 4 0 #> 61618 2 4 5 2 5 1 #> 61620 5 4 5 4 4 1 #> 61621 4 4 6 5 5 1 #> 61622 2 3 3 4 5 0 #> 61623 6 6 5 6 5 1"},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Transformation — plot_likert_transform","title":"Plot Transformation — plot_likert_transform","text":"Plots densities latent variables corresponding transformed discrete probability distributions.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Transformation — plot_likert_transform","text":"","code":"plot_likert_transform(n_items, n_levels, mean = 0, sd = 1, skew = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Transformation — plot_likert_transform","text":"n_items number Likert scale items (questions). n_levels number response categories Likert item. Integer vector integers. mean means latent variables. Numeric vector numerics. Defaults 0. sd standard deviations latent variables. Numeric vector numerics. Defaults 1. skew marginal skewness latent variables. Numeric vector numerics. Defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Transformation — plot_likert_transform","text":"NULL. function produces plot.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/plot_likert_transform.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Plot Transformation — plot_likert_transform","text":"","code":"plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)) plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, 1, 2)) plot_likert_transform(n_items = 3, n_levels = 5, sd = c(0.8, 1, 1.2)) plot_likert_transform(n_items = 3, n_levels = 5, skew = c(-0.5, 0, 0.5))"},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":null,"dir":"Reference","previous_headings":"","what":"Calculate Response Proportions — response_prop","title":"Calculate Response Proportions — response_prop","text":"Returns table proportions possible response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Calculate Response Proportions — response_prop","text":"","code":"response_prop(data, n_levels)"},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Calculate Response Proportions — response_prop","text":"data numeric vector matrix responses. n_levels number response categories.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Calculate Response Proportions — response_prop","text":"table response category proportions.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/response_prop.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Calculate Response Proportions — response_prop","text":"","code":"data <- c(1, 2, 2, 3, 3, 3) response_prop(data, n_levels = 3) #> 1 2 3 #> 0.1666667 0.3333333 0.5000000 data_matrix <- matrix(c(1, 2, 2, 3, 3, 3), ncol = 2) response_prop(data_matrix, n_levels = 3) #> Response #> Item 1 2 3 #> [1,] 0.3333333 0.6666667 0 #> [2,] 0.0000000 0.0000000 1"},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":null,"dir":"Reference","previous_headings":"","what":"Generate Random Responses — rlikert","title":"Generate Random Responses — rlikert","text":"Generates array random responses Likert-type questions based specified latent variables.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generate Random Responses — rlikert","text":"","code":"rlikert(size, n_items, n_levels, mean = 0, sd = 1, skew = 0, corr = 0)"},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Generate Random Responses — rlikert","text":"size number observations. n_items number Likert scale items (number questions). n_levels number response categories item. Integer vector integers. mean means latent variables. Numeric vector numerics. Defaults 0. sd standard deviations latent variables. Numeric vector numerics. Defaults 1. skew marginal skewness latent variables. Numeric vector numerics. Defaults 0. corr correlations latent variables. Can single numeric value representing correlation pairs, actual correlation matrix. Defaults 0.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Generate Random Responses — rlikert","text":"matrix random responses dimensions size n_items. column names Y1, Y2, ..., Yn n number items. entry matrix represents Likert scale response, ranging 1 n_levels.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/rlikert.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Generate Random Responses — rlikert","text":"","code":"# Generate responses for a single item with 5 levels rlikert(size = 10, n_items = 1, n_levels = 5) #> [1] 3 5 4 3 3 2 2 3 4 4 # Generate responses for three items with different levels and parameters rlikert( size = 10, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = 0.5 ) #> Y1 Y2 Y3 #> [1,] 3 1 3 #> [2,] 2 1 3 #> [3,] 3 4 2 #> [4,] 2 1 2 #> [5,] 2 2 2 #> [6,] 3 2 2 #> [7,] 3 4 4 #> [8,] 2 1 2 #> [9,] 2 2 4 #> [10,] 3 4 4 # Generate responses with a correlation matrix corr <- matrix(c( 1.00, -0.63, -0.39, -0.63, 1.00, 0.41, -0.39, 0.41, 1.00 ), nrow = 3) data <- rlikert( size = 1000, n_items = 3, n_levels = c(4, 5, 6), mean = c(0, -1, 0), sd = c(0.8, 1, 1), corr = corr )"},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulate Likert Scale Item Responses — simulate_likert","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"Simulates Likert scale item responses based specified number response categories centered parameters latent variable.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"","code":"simulate_likert(n_levels, cp)"},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"n_levels number response categories Likert scale item. cp centered parameters latent variable. Named vector including mean (mu), standard deviation (sd), skewness (skew). Skewness must -0.95 0.95.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"named vector probabilities response category.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"simulation process uses following model detailed Boari Nai-Ruscone. Let \\(X\\) continuous variable interest, measured using Likert scale questions \\(K\\) response categories. observed discrete variable \\(Y\\) defined follows: $$ Y = k, \\quad \\text{ } \\ \\ x_{k - 1} < X \\leq x_{k} \\quad \\text{ } \\ \\ k = 1, \\dots, K $$ \\(x_{k}\\), \\(k = 0, \\dots, K\\) endpoints defined domain \\(X\\) : $$ -\\infty = x_{0} < x_{1} < \\dots < x_{K - 1} < x_{K} = \\infty. $$ endpoints dictate transformation density \\(f_{X}\\) \\(X\\) discrete probability distribution: $$ \\text{Pr}(Y = k) = \\int_{x_{k - 1}}^{x_{k}} f_{X}(x) \\, dx \\quad \\text{ } \\ \\ k = 1, \\dots, K. $$ continuous latent variable modeled using skew normal distribution. function simulate_likert performs following steps: Ensures centered parameters within acceptable range. Converts centered parameters direct parameters. Defines density function skew normal distribution. Computes probabilities response category using optimal endpoints.","code":""},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"Boari, G. Nai Ruscone, M. (2015). procedure simulating Likert scale item responses. Electronic Journal Applied Statistical Analysis 8(3), 288–297. doi:10.1285/i20705948v8n3p288","code":""},{"path":[]},{"path":"https://markolalovic.github.io/latent2likert/reference/simulate_likert.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulate Likert Scale Item Responses — simulate_likert","text":"","code":"cp <- c(mu = 0, sd = 1, skew = 0.5) simulate_likert(n_levels = 5, cp = cp) #> 1 2 3 4 5 #> 0.15995244 0.29511214 0.28435807 0.18964493 0.07093241 cp2 <- c(mu = 1, sd = 2, skew = -0.3) simulate_likert(n_levels = 7, cp = cp2) #> 1 2 3 4 5 6 7 #> 0.08311645 0.07169556 0.07928979 0.08940184 0.10477572 0.13413804 0.43758260"},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"version-010","dir":"Changelog","previous_headings":"","what":"Version 0.1.0","title":"Version 0.1.0","text":"Release date: 2020-10-17 Initial release (development version). Tested platforms: x86_64-pc-linux-gnu (64-bit) x86_64-w64-mingw32 (64-bit).","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"version-100","dir":"Changelog","previous_headings":"","what":"Version 1.0.0","title":"Version 1.0.0","text":"Release date: 2024-03-28 Added option generate correlated Likert scale items rlikert() function. Added estimate_params() function estimating parameters existing survey data. Resolved dependency issues. Reduced dependency standard R packages: mvtnorm, stats, graphics. sn package now required generating correlated responses using skew normal distribution. Added user prompts install sn package needed.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"version-110","dir":"Changelog","previous_headings":"","what":"Version 1.1.0","title":"Version 1.1.0","text":"Release date: 2024-06-06 Minor updates functions vignettes.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"version-111","dir":"Changelog","previous_headings":"","what":"Version 1.1.1","title":"Version 1.1.1","text":"Release date: 2024-06-06 Renamed package responsesR latent2likert better reflect purpose converting latent variables Likert scale responses. Improved package website documentation. Note: codebase development, finer details may change.","code":""},{"path":"https://markolalovic.github.io/latent2likert/news/index.html","id":"version-121","dir":"Changelog","previous_headings":"","what":"Version 1.2.1","title":"Version 1.2.1","text":"Release date: 2024-06-12 Refactored code enhanced modularity maintainability. Modularized core functions improved readability. Improved structure organization codebase. Enhanced error handling various correlation input scenarios.","code":""}] diff --git a/man/discretize_density.Rd b/man/discretize_density.Rd index 7ea03ee..6a65229 100644 --- a/man/discretize_density.Rd +++ b/man/discretize_density.Rd @@ -32,8 +32,8 @@ The function addresses the problem of transforming a continuous random variable \eqn{X} into a discrete random variable \eqn{Y} with minimal distortion. Distortion is measured as mean-squared error (MSE): \deqn{ - \text{E}\left[ (X - Y)^2 \right] = - \sum_{k=1}^{K} \int_{x_{k-1}}^{x_{k}} f_{X}(x) + \text{E}\left[ (X - Y)^2 \right] = + \sum_{k=1}^{K} \int_{x_{k-1}}^{x_{k}} f_{X}(x) \left( x - r_{k} \right)^2 \, dx } where: @@ -73,7 +73,8 @@ normal distribution, as shown by Azzalini. \examples{ discretize_density(density_fn = stats::dnorm, n_levels = 5) discretize_density(density_fn = function(x) { - 2 * stats::dnorm(x) * stats::pnorm(0.5 * x)}, n_levels = 4) + 2 * stats::dnorm(x) * stats::pnorm(0.5 * x) +}, n_levels = 4) } \references{ Azzalini, A. (1985). diff --git a/man/figures/courses-grouped.png b/man/figures/courses-grouped.png deleted file mode 100644 index db5f60c97f42acf36c3405c65342ad2896b70e2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67037 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 diff --git a/man/figures/courses-grouped.svg b/man/figures/courses-grouped.svg deleted file mode 100644 index f8c5ee0..0000000 --- a/man/figures/courses-grouped.svg +++ /dev/null @@ -1,1238 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Excellent - Good - Fair - Poor - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - How would you rate your experience with the course? - Course A - Course B - 0% - 20% - 40% - 60% - - diff --git a/man/figures/courses-stacked.png b/man/figures/courses-stacked.png deleted file mode 100644 index 52fe1dd75b2ebbc1ea54bbe28ad02dc43b502023..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 134301 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�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

BGc4qTTka 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 X$c*es>4h|(OQueoH6dc0x%>YD-~{gC diff --git a/man/figures/courses-stacked.svg b/man/figures/courses-stacked.svg deleted file mode 100644 index 26c0846..0000000 --- a/man/figures/courses-stacked.svg +++ /dev/null @@ -1,3718 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Course B - - Course A - - Course B - - - Course B - 100 - 50 - 0 - 50 - 100 - before - after - Percentage - - - - - - - - - - - - Very poor - Poor - Fair - Good - Very good - Course A - Course A - Programming - - Searching - online - - - Solving - problems - - before - after - before - after - before - after - before - after - before - after - - diff --git a/man/figures/hex-drawings.svg b/man/figures/hex-drawings.svg deleted file mode 100644 index 7ad0f52..0000000 --- a/man/figures/hex-drawings.svg +++ /dev/null @@ -1,1904 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - latent2likert - - - - - - - latent2likert - - - - - - - - - latent2likert - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - - - - - - - - - - - - latent2likert - - - - - - diff --git a/man/figures/overview.svg b/man/figures/overview.svg deleted file mode 100644 index 43de556..0000000 --- a/man/figures/overview.svg +++ /dev/null @@ -1,953 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - Likert-type data - - - - - Estimation - mean - - sd - Estimates - - - - - - (data, n_levels = 5, skew = 0)#> items#> estimates Y1 Y2 Y3#> 1.0245888 1.9838485 2.8588634#> 0.5114207 0.9639142 1.2789577 - mean - sd - estimate_params - estimate_params() - n_levels - - - - skew - - - - - - - - mean - - sd - - Parameters - - - - - - - - - - - - - - - - - - - - - - Likert-type data - - rlikert() - size - - - - n_levels - - - - n_items - - - - - - - - - - - Simulation - data <- (size = 2, n_items = 4, n_levels = 5, = 0, = 1, ...)data#> Y1 Y2 Y3 Y4#> [1,] 1 4 4 2#> [2,] 2 5 5 1 - rlikert - mean - sd - - diff --git a/man/figures/scales.png b/man/figures/scales.png deleted file mode 100644 index dd96b4bf33aff4eb0b3d401baa2ad9ce6bca2b8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123863 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 -FemaleMale246agreeableAgreeableness in men and womenFemaleMale246agreeableReproduced agreeableness in men and women diff --git a/man/part_bfi.Rd b/man/part_bfi.Rd index 709a0c6..4853a9b 100644 --- a/man/part_bfi.Rd +++ b/man/part_bfi.Rd @@ -17,7 +17,7 @@ the following 6 variables:} } } \source{ -{International Personality Item Pool (ipip.ori.org)} +{International Personality Item Pool ({https://ipip.ori.org})} {https://search.r-project.org/CRAN/refmans/psychTools/html/bfi.html} } diff --git a/man/plot_likert_transform.Rd b/man/plot_likert_transform.Rd index 3e23ab4..57a8340 100644 --- a/man/plot_likert_transform.Rd +++ b/man/plot_likert_transform.Rd @@ -9,24 +9,28 @@ plot_likert_transform(n_items, n_levels, mean = 0, sd = 1, skew = 0) \arguments{ \item{n_items}{number of Likert scale items (questions).} -\item{n_levels}{number of response categories for each Likert item. Integer or vector of integers.} +\item{n_levels}{number of response categories for each Likert item. +Integer or vector of integers.} -\item{mean}{means of the latent variables. Numeric or vector of numerics. Defaults to 0.} +\item{mean}{means of the latent variables. +Numeric or vector of numerics. Defaults to 0.} -\item{sd}{standard deviations of the latent variables. Numeric or vector of numerics. Defaults to 1.} +\item{sd}{standard deviations of the latent variables. +Numeric or vector of numerics. Defaults to 1.} -\item{skew}{marginal skewness of the latent variables. Numeric or vector of numerics. Defaults to 0.} +\item{skew}{marginal skewness of the latent variables. +Numeric or vector of numerics. Defaults to 0.} } \value{ -a plot showing the densities of latent variables and the corresponding discrete probability distributions. +NULL. The function produces a plot. } \description{ -Plots the densities of latent variables in the first row -and transformed discrete probability distributions below. +Plots the densities of latent variables and the corresponding +transformed discrete probability distributions. } \examples{ plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)) -plot_likert_transform(n_items = 3, n_levels = 5, mean=c(0, 1, 2)) -plot_likert_transform(n_items = 3, n_levels = 5, sd=c(0.8, 1, 1.2)) -plot_likert_transform(n_items = 3, n_levels = 5, skew=c(-0.5, 0, 0.5)) +plot_likert_transform(n_items = 3, n_levels = 5, mean = c(0, 1, 2)) +plot_likert_transform(n_items = 3, n_levels = 5, sd = c(0.8, 1, 1.2)) +plot_likert_transform(n_items = 3, n_levels = 5, skew = c(-0.5, 0, 0.5)) } diff --git a/man/simulate_likert.Rd b/man/simulate_likert.Rd index daa4ad8..122d302 100644 --- a/man/simulate_likert.Rd +++ b/man/simulate_likert.Rd @@ -7,11 +7,11 @@ simulate_likert(n_levels, cp) } \arguments{ -\item{n_levels}{Integer. The number of response categories for the Likert scale item.} +\item{n_levels}{number of response categories for the Likert scale item.} -\item{cp}{Named vector. The centered parameters of the latent variable, including -mean (\code{mu}), standard deviation (\code{sd}), and skewness (\code{skew}). -Skewness must be between -0.95 and 0.95.} +\item{cp}{centered parameters of the latent variable. +Named vector including mean (\code{mu}), standard deviation (\code{sd}), +and skewness (\code{skew}). Skewness must be between -0.95 and 0.95.} } \value{ A named vector of probabilities for each response category. @@ -21,10 +21,10 @@ Simulates Likert scale item responses based on a specified number of response categories and the centered parameters of the latent variable. } \details{ -The simulation process uses the following model detailed by Boari and Nai-Ruscone. -Let \eqn{X} be the continuous variable of interest, measured using Likert scale -questions with \eqn{K} response categories. The observed discrete variable \eqn{Y} is -defined as follows: +The simulation process uses the following model detailed by +Boari and Nai-Ruscone. Let \eqn{X} be the continuous variable of interest, +measured using Likert scale questions with \eqn{K} response categories. The +observed discrete variable \eqn{Y} is defined as follows: \deqn{ Y = k, \quad \text{ if } \ \ x_{k - 1} < X \leq x_{k} \quad \text{ for } \ \ k = 1, \dots, K @@ -34,8 +34,8 @@ of \eqn{X} such that: \deqn{ -\infty = x_{0} < x_{1} < \dots < x_{K - 1} < x_{K} = \infty. } -The endpoints dictate the transformation of the density \eqn{f_{X}} of \eqn{X} -into a discrete probability distribution: +The endpoints dictate the transformation of the density +\eqn{f_{X}} of \eqn{X} into a discrete probability distribution: \deqn{ \text{Pr}(Y = k) = \int_{x_{k - 1}}^{x_{k}} f_{X}(x) \, dx \quad \text{ for } \ \ k = 1, \dots, K. @@ -47,7 +47,8 @@ The function \code{simulate_likert} performs the following steps: \item Ensures the centered parameters are within the acceptable range. \item Converts the centered parameters to direct parameters. \item Defines the density function for the skew normal distribution. -\item Computes the probabilities for each response category using optimal endpoints. +\item Computes the probabilities for each response category +using optimal endpoints. } } \examples{ @@ -59,7 +60,8 @@ simulate_likert(n_levels = 7, cp = cp2) \references{ Boari, G. and Nai Ruscone, M. (2015). A procedure simulating Likert scale item responses. -\emph{Electronic Journal of Applied Statistical Analysis} \bold{8(3)}, 288–297. +\emph{Electronic Journal of Applied Statistical Analysis} \bold{8(3)}, +288–297. \doi{10.1285/i20705948v8n3p288} } \seealso{ diff --git a/tests/testthat/test_discretization.R b/tests/testthat/test_discretization.R index 7511131..9d4104e 100644 --- a/tests/testthat/test_discretization.R +++ b/tests/testthat/test_discretization.R @@ -1,21 +1,23 @@ context("Testing discretization") -testthat::test_that("discretization of N(0,1) using 4 levels gives expected results", { - res = discretize_density(density_fn = dnorm, n_levels = 4) - expected = list( - prob = c(0.16, 0.34, 0.34, 0.16), - endp = c(-Inf, -0.98, 0, 0.98, Inf), - repr = c(-1.51, -0.45, 0.45, 1.51), - dist = 0.12) - testthat::expect_equal(res, expected, tolerance = 0.05) +test_that("discretization of N(0,1) using 4 levels gives expected results", { + res <- discretize_density(density_fn = dnorm, n_levels = 4) + expected <- list( + prob = c(0.16, 0.34, 0.34, 0.16), + endp = c(-Inf, -0.98, 0, 0.98, Inf), + repr = c(-1.51, -0.45, 0.45, 1.51), + dist = 0.12 + ) + expect_equal(res, expected, tolerance = 0.05) }) -testthat::test_that("discretization of N(0,1) using 5 levels gives expected results", { - res = discretize_density(density_fn = dnorm, n_levels = 5) - expected = list( - prob = c(0.11, 0.24, 0.30, .24, 0.11), - endp = c(-Inf, -1.25, -0.38, 0.38, 1.25, Inf), - repr = c(-1.73, -0.77, 0, 0.77, 1.73), - dist = 0.08) - testthat::expect_equal(res, expected, tolerance = 0.05) +test_that("discretization of N(0,1) using 5 levels gives expected results", { + res <- discretize_density(density_fn = dnorm, n_levels = 5) + expected <- list( + prob = c(0.11, 0.24, 0.30, .24, 0.11), + endp = c(-Inf, -1.25, -0.38, 0.38, 1.25, Inf), + repr = c(-1.73, -0.77, 0, 0.77, 1.73), + dist = 0.08 + ) + expect_equal(res, expected, tolerance = 0.05) }) diff --git a/tests/testthat/test_estimation.R b/tests/testthat/test_estimation.R index fd92e8a..a9be9e8 100644 --- a/tests/testthat/test_estimation.R +++ b/tests/testthat/test_estimation.R @@ -1,14 +1,14 @@ context("Testing estimation of parameters") -testthat::test_that("`mean` and `sd` are well estimated given `prob` +test_that("`mean` and `sd` are well estimated given `prob` for normal case", { actual <- c(-1, 0.5) # actual mean and sd prob <- c("1" = 0.313, "2" = 0.579, "3" = 0.105, "4" = 0.003) estimates <- estimate_mean_and_sd(prob, 5) - testthat::expect_equal(estimates, actual, tolerance = 0.1) + expect_equal(estimates, actual, tolerance = 0.1) }) -testthat::test_that("`mean` and `sd` are well estimated given `prob` +test_that("`mean` and `sd` are well estimated given `prob` for skew case", { actual <- c(0.146858, 1.084341) # actual mean and sd skew <- -0.4565873 # skewness @@ -17,87 +17,89 @@ testthat::test_that("`mean` and `sd` are well estimated given `prob` "4" = 0.185, "5" = 0.21, "6" = 0.201, "7" = 0.137 ) estimates <- estimate_mean_and_sd(prob, 7, skew) - testthat::expect_equal(estimates, actual, tolerance = 0.05) + expect_equal(estimates, actual, tolerance = 0.05) }) -testthat::test_that("estimate_params returns accurate estimates for +test_that("estimate_params returns accurate estimates for latent parameters when data is a vector", { set.seed(12345) # for reproducibility - + # Generate test data for a single item (vector data) - data_vector <- rlikert(size = 1000, - n_items = 1, - n_levels = 5, - mean = 0.5, - sd = 1.2, - skew = 0) - + data_vector <- rlikert( + size = 1000, + n_items = 1, + n_levels = 5, + mean = 0.5, + sd = 1.2, + skew = 0 + ) + # Estimate parameters estimates <- estimate_params(data_vector, n_levels = 5, skew = 0) - + # Extract estimated means and standard deviations estimated_mean <- as.numeric(estimates["mean"]) estimated_sd <- as.numeric(estimates["sd"]) - + # Actual means and standard deviations actual_mean <- 0.5 actual_sd <- 1.2 - - # Check if estimated means are close to actual means - testthat::expect_equal(estimated_mean, actual_mean, tolerance = 0.1) - - # Check if estimated standard deviations are close to actual standard deviations - testthat::expect_equal(estimated_sd, actual_sd, tolerance = 0.1) + + # Check that estimates are close to actual mean and sd + expect_equal(estimated_mean, actual_mean, tolerance = 0.1) + expect_equal(estimated_sd, actual_sd, tolerance = 0.1) }) -testthat::test_that("estimate_params returns accurate estimates for +test_that("estimate_params returns accurate estimates for latent parameters", { set.seed(12345) # for reproducibility - + # Generate test data - corr <- matrix(c(1.00, -0.63, -0.39, - -0.63, 1.00, 0.41, - -0.39, 0.41, 1.00), nrow = 3) - data <- rlikert(size = 1000, - n_items = 3, - n_levels = c(4, 5, 6), - mean = c(0, -1, 0), - sd = c(0.8, 1, 1), - corr = corr) - + corr <- matrix(c( + 1.00, -0.63, -0.39, + -0.63, 1.00, 0.41, + -0.39, 0.41, 1.00 + ), nrow = 3) + data <- rlikert( + size = 1000, + n_items = 3, + n_levels = c(4, 5, 6), + mean = c(0, -1, 0), + sd = c(0.8, 1, 1), + corr = corr + ) + # Estimate parameters estimates <- estimate_params(data, n_levels = c(4, 5, 6), skew = 0) - + # Extract estimated means and standard deviations estimated_means <- as.numeric(estimates["mean", ]) estimated_sds <- as.numeric(estimates["sd", ]) - + # Actual means and standard deviations actual_means <- c(0, -1, 0) actual_sds <- c(0.8, 1, 1) - - # Check if estimated means are close to actual means - testthat::expect_equal(estimated_means, actual_means, tolerance = 0.1) - - # Check if estimated sds are close to actual sds - testthat::expect_equal(estimated_sds, actual_sds, tolerance = 0.1) + + # Check if estimated means are close to actual means and sds + expect_equal(estimated_means, actual_means, tolerance = 0.1) + expect_equal(estimated_sds, actual_sds, tolerance = 0.1) }) -testthat::test_that("plot_contour executes without errors", { - # Define a simple objective function for testing +test_that("plot_contour executes without errors", { + # Define a simple objective function test_fn <- function(x, endp, prob, cdf_X) { u <- x[1] v <- x[2] y <- cdf_X(v * endp - u * v) return(matrix(utils::tail(y, -1) - utils::head(y, -1) - prob)) } - - # Example parameters for the test + + # Example parameters endp <- c(-Inf, -1, 0, 1, Inf) prob <- c(0.1, 0.2, 0.4, 0.3) cdf_X <- stats::pnorm trace <- matrix(c(rep(0, 100), rep(1, 100)), nrow = 2) - - # Run the plotting function - testthat::expect_silent(plot_contour(test_fn, endp, prob, cdf_X, trace)) + + # Check if plotting function executes without errors + expect_silent(plot_contour(test_fn, endp, prob, cdf_X, trace)) }) diff --git a/tests/testthat/test_simulation.R b/tests/testthat/test_simulation.R index 95ee455..1dbf3ae 100644 --- a/tests/testthat/test_simulation.R +++ b/tests/testthat/test_simulation.R @@ -1,42 +1,42 @@ context("Testing simulation") -testthat::test_that("simulate_likert using 4 levels and N(0,1) gives +test_that("simulate_likert using 4 levels and N(0,1) gives expected result", { n_levels <- 4 - cp <- c("mu"=0, "sd"=1, "skew"=0) + cp <- c("mu" = 0, "sd" = 1, "skew" = 0) prob <- simulate_likert(n_levels, cp) prob <- as.numeric(prob) expected_prob <- c(0.163, 0.337, 0.337, 0.163) - testthat::expect_equal(prob, expected_prob, tolerance = 0.05) + expect_equal(prob, expected_prob, tolerance = 0.05) }) -testthat::test_that("simulate_likert using 5 levels and N(0,1) gives +test_that("simulate_likert using 5 levels and N(0,1) gives expected result", { n_levels <- 5 - cp <- c("mu"=0, "sd"=1, "skew"=0) + cp <- c("mu" = 0, "sd" = 1, "skew" = 0) prob <- simulate_likert(n_levels, cp) prob <- as.numeric(prob) expected_prob <- c(0.106, 0.244, 0.298, 0.244, 0.106) - testthat::expect_equal(prob, expected_prob, tolerance = 0.05) + expect_equal(prob, expected_prob, tolerance = 0.05) }) -testthat::test_that("Correlation input is handled correctly", { +test_that("Correlation input is handled correctly", { corr_matrix <- generate_rand_corr_matrix(3) corr_inputs <- list(0, "random", 0.5, corr_matrix) - + for (i in seq_along(corr_inputs)) { - corr <- corr_inputs[[i]] - corr_case <- handle_corr_case(corr) - testthat::expect_equal(i, corr_case) + corr <- corr_inputs[[i]] + corr_case <- handle_corr_case(corr) + expect_equal(i, corr_case) } }) -testthat::test_that("Invalid corr input raises error", { +test_that("Invalid corr input raises error", { res <- try(handle_corr_case("Invalid"), silent = TRUE) - testthat::expect_equal(class(res), "try-error") + expect_equal(class(res), "try-error") }) -testthat::test_that("generate_corr_matrix returns a matrix that +test_that("generate_corr_matrix returns a matrix that resembles a correlation matrix", { n_items <- 3 corr_matrix <- generate_rand_corr_matrix(n_items) @@ -47,35 +47,37 @@ testthat::test_that("generate_corr_matrix returns a matrix that corr_case <- handle_corr_case(corr) res <- generate_corr_matrix(corr, corr_case, n_items) - testthat::expect_true(all(diag(res) == 1), - info = paste("Failed on input:", i)) - testthat::expect_true(isSymmetric(res), - info = paste("Failed on input:", i)) + expect_true(all(diag(res) == 1), + info = paste("Failed on input:", i) + ) + expect_true(isSymmetric(res), + info = paste("Failed on input:", i) + ) } }) -testthat::test_that("proportions of generated responses match actual - probabilities for single item", { +test_that("generated response proportions closely approximate the + probabilities for a single item", { set.seed(12345) # for reproducibility - size <- 10^6 + size <- 1000 n_items <- 1 n_levels <- 5 mean <- 0 sd <- 1 skew <- 0 - + data <- rlikert(size, n_items, n_levels, mean, sd, skew) - cp <- c("mu"=mean, "sd"=sd, "skew"=skew) + cp <- c("mu" = mean, "sd" = sd, "skew" = skew) prob <- simulate_likert(n_levels, cp) data_prop <- response_prop(data, n_levels) - testthat::expect_equal(prob, data_prop, tolerance = 0.05) + expect_equal(prob, data_prop, tolerance = 0.05) }) -testthat::test_that("proportions of generated responses match actual +test_that("generated response proportions closely approximate the probabilities for multiple items without corr", { set.seed(12345) # for reproducibility - size <- 10^6 + size <- 1000 n_levels <- 5 n_items <- 3 @@ -83,20 +85,20 @@ testthat::test_that("proportions of generated responses match actual sd <- c(0.5, 1, 0.5) skew <- c(0.5, 0.5, 0.5) corr <- 0 - + data <- rlikert(size, n_items, n_levels, mean, sd, skew, corr) for (i in seq_len(n_items)) { - cp <- c("mu"=mean[i], "sd"=sd[i], "skew"=skew[i]) - prob <- simulate_likert(n_levels, cp) - data_prop <- response_prop(data[,i], n_levels) - testthat::expect_equal(prob, data_prop, tolerance = 0.05) + cp <- c("mu" = mean[i], "sd" = sd[i], "skew" = skew[i]) + prob <- simulate_likert(n_levels, cp) + data_prop <- response_prop(data[, i], n_levels) + expect_equal(prob, data_prop, tolerance = 0.05) } }) -testthat::test_that("proportions of generated responses match actual +test_that("generated response proportions closely approximate the probabilities for multiple items with corr", { set.seed(12345) # for reproducibility - size <- 10^6 + size <- 1000 n_levels <- 5 n_items <- 3 @@ -104,20 +106,20 @@ testthat::test_that("proportions of generated responses match actual sd <- c(1, 1, 0.5) skew <- c(0.5, 0.5, 0.5) corr <- 0.5 - + data <- rlikert(size, n_items, n_levels, mean, sd, skew, corr) for (i in seq_len(n_items)) { - cp <- c("mu"=mean[i], "sd"=sd[i], "skew"=skew[i]) - prob <- simulate_likert(n_levels, cp) - data_prop <- response_prop(data[,i], n_levels) - testthat::expect_equal(prob, data_prop, tolerance = 0.05) + cp <- c("mu" = mean[i], "sd" = sd[i], "skew" = skew[i]) + prob <- simulate_likert(n_levels, cp) + data_prop <- response_prop(data[, i], n_levels) + expect_equal(prob, data_prop, tolerance = 0.05) } }) -testthat::test_that("proportions of generated responses match actual +test_that("generated response proportions closely approximate the probabilities, when using a random corr matrix", { - set.seed(12345) # for reproducibility - size <- 10^6 + set.seed(12345) # for reproducibility + size <- 1000 n_levels <- 5 n_items <- 3 @@ -125,56 +127,60 @@ testthat::test_that("proportions of generated responses match actual sd <- c(1, 1, 0.5) skew <- c(0, 0, 0) corr <- "random" - + data <- rlikert(size, n_items, n_levels, mean, sd, skew, corr) for (i in seq_len(n_items)) { - cp <- c("mu"=mean[i], "sd"=sd[i], "skew"=skew[i]) - prob <- simulate_likert(n_levels, cp) - data_prop <- response_prop(data[,i], n_levels) - testthat::expect_equal(prob, data_prop, tolerance = 0.05) + cp <- c("mu" = mean[i], "sd" = sd[i], "skew" = skew[i]) + prob <- simulate_likert(n_levels, cp) + data_prop <- response_prop(data[, i], n_levels) + expect_equal(prob, data_prop, tolerance = 0.05) } }) -testthat::test_that("correlations of random responses match actual - correlations", { - set.seed(12345) # for reproducibility - size <- 10^6 +test_that("generated response proportions closely approximate the + correlations between latent variables", { + set.seed(12345) # for reproducibility + size <- 1000 n_levels <- 5 n_items <- 3 - - mean <- c(0, -1, -1) - sd <- c(1, 1, 0.5) - skew <- c(0.5, 0.5, 0.5) + + mean <- c(0, 0, 0) + sd <- c(1, 1, 1) + skew <- c(0, 0, 0) corr <- 0.5 - + data <- rlikert(size, n_items, n_levels, mean, sd, skew, corr) data_corr_matrix <- cor(data) - + actual_corr_matrix <- generate_corr_matrix(corr, 3, n_items) dimnames(actual_corr_matrix) <- dimnames(data_corr_matrix) - testthat::expect_equal(actual_corr_matrix, - data_corr_matrix, tolerance = 0.05) + expect_equal(actual_corr_matrix, + data_corr_matrix, + tolerance = 0.1 + ) }) -testthat::test_that("correlations of random responses match actual - correlations, harder case", { +test_that("generated response proportions closely approximate the + correlations between latent variables, harder case", { set.seed(12345) # for reproducibility - size <- 10^6 + size <- 1000 n_levels <- 6 n_items <- 3 - + mean <- c(-0.5, 0, 0.5) sd <- c(0.5, 0.5, 0.5) skew <- c(-0.3, -0.4, -0.5) corr <- 0.7 - + data <- rlikert(size, n_items, n_levels, mean, sd, skew, corr) data_corr_matrix <- cor(data) - + actual_corr_matrix <- generate_corr_matrix(corr, 3, n_items) dimnames(actual_corr_matrix) <- dimnames(data_corr_matrix) - testthat::expect_equal(actual_corr_matrix, - data_corr_matrix, tolerance = 0.11) + expect_equal(actual_corr_matrix, + data_corr_matrix, + tolerance = 0.2 + ) }) diff --git a/tests/testthat/test_utilities.R b/tests/testthat/test_utilities.R index b6c209a..7b36916 100644 --- a/tests/testthat/test_utilities.R +++ b/tests/testthat/test_utilities.R @@ -8,7 +8,7 @@ testthat::test_that("pad_levels gives the correct result", { testthat::expect_equal(padded_pr, actual_pr) }) -testthat::test_that("response_prop gives the correct result, +testthat::test_that("response_prop gives the correct result, univariate case", { data <- rep(c(1, 2, 3, 4), each = 2) tab <- response_prop(data, n_levels = 4) @@ -17,7 +17,7 @@ testthat::test_that("response_prop gives the correct result, testthat::expect_true(identical(tab, correct_tab)) }) -testthat::test_that("response_prop gives the correct result, +testthat::test_that("response_prop gives the correct result, multivariate case", { y <- rep(c(1, 2, 3, 4), each = 2) data <- cbind(y, y) @@ -69,7 +69,7 @@ testthat::test_that("density_sn gives the same results as sn::dsn", { testthat::test_that("plot_likert_transform runs without errors", { testthat::expect_error( - plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)), + plot_likert_transform(n_items = 3, n_levels = c(3, 4, 5)), NA ) testthat::expect_error( @@ -80,10 +80,6 @@ testthat::test_that("plot_likert_transform runs without errors", { plot_likert_transform(n_items = 3, n_levels = 5, sd = c(0.8, 1, 1.2)), NA ) - testthat::expect_error( - plot_likert_transform(n_items = 3, n_levels = 5, skew = c(-0.5, 0, 0.5)), - NA - ) }) testthat::test_that("delta_skew_normal returns correct value", { @@ -114,6 +110,3 @@ testthat::test_that("scale_and_shift returns correct values", { expected_result <- c(-0.7179052, -0.2179052, 0.2820948) testthat::expect_equal(result, expected_result, tolerance = 0.05) }) - - - diff --git a/vignettes/using_latent2likert.Rmd b/vignettes/using_latent2likert.Rmd index ec68cc1..cf97112 100644 --- a/vignettes/using_latent2likert.Rmd +++ b/vignettes/using_latent2likert.Rmd @@ -18,13 +18,13 @@ knitr::opts_chunk$set( ) ``` -## Introduction +# Using latent2likert +## Introduction In social sciences, variables of interest are often conceptualized as latent variables — hidden continuous variables measured through Likert scale questions, typically categorized as Strongly disagree, Disagree, Neutral, Agree, and Strongly agree. Researchers frequently aim to uncover these latent variables using various statistical techniques. Accurate modeling of survey data is essential for comparative analysis through simulation. The **latent2likert** package addresses this need by providing an effective algorithm to simulate Likert response variables from hypothetical latent variables. This vignette provides two practical workflow examples demonstrating the use of the **latent2likert** package. ## Simulating Survey Data - The following hypothetical survey simulation is loosely based on an actual comparative study on teaching and learning R in a pair of introductory statistics labs [@mcnamara2024teaching]. Imagine a situation where 10 participants from Course A and 20 participants from Course B have completed the survey. Suppose the initial question was: @@ -40,11 +40,12 @@ Let's assume that the participants in Course A were neutral regarding the questi By choosing appropriate parameters for the latent distributions and setting the number of categories n_levels = 4, we can generate hypothetical responses (standard deviation sd = 1 and skewness skew = 0, by default): ```{r} -library(latent2likert) # load the package -set.seed(12345) # to ensure reproducible results +library(latent2likert) # Load the package +set.seed(12345) # Ensure reproducible results -course_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1) -course_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1) +# Generate responses for Course A and Course B +responses_A <- rlikert(size = 10, n_items = 1, n_levels = 4, mean = 0, sd = 1) +responses_B <- rlikert(size = 20, n_items = 1, n_levels = 4, mean = 1, sd = 1) ``` To summarize the results, create a data frame from all responses: @@ -52,15 +53,21 @@ To summarize the results, create a data frame from all responses: ```{r} n_levels <- 4 n_groups <- 2 -cats <- c("Poor", "Fair", "Good", "Excellent") -data <- data.frame( +categories <- c("Poor", "Fair", "Good", "Excellent") + +# Create a data frame to summarize the responses +response_data <- data.frame( Course = rep(c("A", "B"), each = n_levels), - Response = factor(rep(cats, n_groups), levels = cats), - Proportion = c(response_prop(course_A, n_levels), - response_prop(course_B, n_levels)) + Response = factor(rep(categories, n_groups), levels = categories), + Proportion = c( + response_prop(responses_A, n_levels), + response_prop(responses_B, n_levels) + ) ) -data <- data[data$Prop > 0, ] -data + +# Filter out rows with zero proportions +response_data <- response_data[response_data$Proportion > 0, ] +response_data ``` The results can then be visualized using a grouped bar chart: @@ -69,8 +76,8 @@ The results can then be visualized using a grouped bar chart: Grouped bar chart -## Pre and Post Comparison +## Pre and Post Comparison Now suppose that the survey also asked the participants to rate their skills on a 5-point Likert scale, ranging from 1 (very poor) to 5 (very good) in: * Programming, @@ -98,23 +105,35 @@ post_B <- rlikert(size = 20, n_items = 3, n_levels = 5, mean = c(0, 0, 0)) Create a data frame from all responses to summarize the results: ```{r} +# Combine pre and post responses into a list pre_post <- list(pre_A, post_A, pre_B, post_B) -n_items <- 6 # for 3 questions before and after -n_levels <- 5 # for a 5-point Likert scale + +# Number of items and response levels +n_items <- 3 +n_levels <- 5 + +# Define skills assessed skills <- c("Programming", "Searching online", "Solving problems") -questions <- rep(as.vector(sapply(skills, - function(skill) rep(skill, n_levels))), 4) + +# Generate repeated skill labels for questions +questions <- rep(rep(skills, each = n_levels), 4) questions <- factor(questions, levels = skills) -data <- data.frame ( - Course = c(rep("Course A", n_items * n_levels), - rep("Course B", n_items * n_levels)), + +# Create a data frame to summarize the responses +response_data <- data.frame( + Course = rep(c("Course A", "Course B"), each = 2 * n_items * n_levels), Question = questions, - Time = as.factor(rep(c(rep("before", 3*n_levels), - rep("after", 3*n_levels)), 2)), - Response = rep(rep(seq_len(n_levels), 3), length(pre_post)), - Proportion = as.vector(sapply(pre_post, function(d) { - as.vector(t(response_prop(d, n_levels))) }))) -head(data) + Time = as.factor(rep(c( + rep("before", n_items * n_levels), + rep("after", n_items * n_levels) + ), 2)), + Response = rep(seq_len(n_levels), 2 * n_items * 2), + Proportion = as.vector(sapply(pre_post, function(d) { + as.vector(t(response_prop(d, n_levels))) + })) +) + +head(response_data) ``` And visualize the results with a stacked bar chart: @@ -125,8 +144,7 @@ And visualize the results with a stacked bar chart: ## Recreating Scale Scores - -We will use part of [bfi](https://search.r-project.org/CRAN/refmans/psych/html/bfi.html) data set from [@psych]. In particular only the first 5 items corresponding to agreeableness. To investigate the differences in agreeableness between men and women we will also use the gender attribute. +We will use part of the [bfi](https://search.r-project.org/CRAN/refmans/psych/html/bfi.html) data set from [@psych]. Specifically, we'll focus on the first 5 items corresponding to agreeableness. To investigate the differences in agreeableness between men and women, we'll also use the gender attribute. Load the data: @@ -139,43 +157,50 @@ Separate the items into two groups according to their gender: ```{r} vars <- c("A1", "A2", "A3", "A4", "A5") -items_M <- part_bfi[part_bfi$gender == 0, vars] -items_F <- part_bfi[part_bfi$gender == 1, vars] +items_male <- part_bfi[part_bfi$gender == 0, vars] +items_female <- part_bfi[part_bfi$gender == 1, vars] ``` -To reproduce the items, start by estimating the parameters of the latent variables, assuming they are normal and providing the number of possible response categories 'n_levels = 6': +Estimate the parameters of the latent variables, assuming they are normal and providing the number of possible response categories `n_levels = 6`: + ```{r} -params_M <- estimate_params(data = items_M, n_levels = 6) -params_F <- estimate_params(data = items_F, n_levels = 6) +params_male <- estimate_params(data = items_male, n_levels = 6) +params_female <- estimate_params(data = items_female, n_levels = 6) ``` -Then, generate new responses to the items using the estimated parameters and estimated correlations: +Generate new responses to the items using the estimated parameters and estimated correlations: + ```{r} -set.seed(12345) # to ensure reproducible results - -new_items_M <- rlikert(size = nrow(items_M), - n_items = 5, - n_levels = 6, - mean = params_M["mean", ], - sd = params_M["sd", ], - corr = cor(items_M)) - -new_items_F <- rlikert(size = nrow(items_F), - n_items = 5, - n_levels = 6, - mean = params_F["mean", ], - sd = params_F["sd", ], - corr = cor(items_F)) +set.seed(12345) # Ensure reproducible results + +new_items_male <- rlikert( + size = nrow(items_male), + n_items = 5, + n_levels = 6, + mean = params_male["mean", ], + sd = params_male["sd", ], + corr = cor(items_male) +) + +new_items_female <- rlikert( + size = nrow(items_female), + n_items = 5, + n_levels = 6, + mean = params_female["mean", ], + sd = params_female["sd", ], + corr = cor(items_female) +) ``` -The next step would be to create agreeableness scale scores for both groups of participants, by taking the average of these 5 items. +Create agreeableness scale scores for both groups of participants by taking the average of these 5 items: + ```{r} # Combine new items and gender in new data frame -new_data <- data.frame(rbind(new_items_M, new_items_F)) -new_data$gender <- c(rep(0, nrow(items_M)), rep(1, nrow(items_F))) +new_data <- data.frame(rbind(new_items_male, new_items_female)) +new_data$gender <- c(rep(0, nrow(items_male)), rep(1, nrow(items_female))) head(new_data) -# We also need to reverse the first item because it has negative correlations +# Reverse the first item because it has negative correlations part_bfi$A1 <- (min(part_bfi$A1) + max(part_bfi$A1)) - part_bfi$A1 new_data$Y1 <- (min(new_data$Y1) + max(new_data$Y1)) - new_data$Y1 @@ -184,12 +209,13 @@ part_bfi$agreeable <- rowMeans(part_bfi[, vars]) new_data$agreeable <- rowMeans(new_data[, c("Y1", "Y2", "Y3", "Y4", "Y5")]) ``` -And visualize the results with a grouped boxplot: +The results can be visualized with a grouped boxplot:

Scales
+ ## References