Ecuaciones Estructurales

2024-02-28

Alexa Mariana Marin Villar A00831342

Ejercicio 1

Librerias

library("lavaan")
library("lavaanPlot")
library("dplyr")
library("readxl")

Teoria

Los modelos de ecuaciones estructurales (SEM) es una tecnica de analisis de estadistica multivariada, que permite analizar patrones complejos de relaciones entre v ariables, realizar comparaciones entre intragrupos, y validar modelos teoricos y empiricos.

Ejemplo 1. Estudio de Holzinger y Swineford (1939)

Contexto

Holzinger y Swineford realizaron examenes de habilidad mental a adolescentes de 7o y 8o grado de dos escuelas (Pasteur y Grand-White). La base de datos esta incluida como paquete en R, e incluye las siguientes columnas:

  • sex : genero (1 = male,2=female)

Visual

  • x1 : percepcion visual

  • x2 : juego con cubos

  • x3 : juego con pastillas/espacial

Textual

  • x4 : comprension de parrafos

  • x5 : completar oraciones

  • x6 : significado de palabras

Velocidad

  • x7 : sumas aceleradas

  • x8 : conteo acelerado

  • x9 : disciminacion acelerada de mayusculas rectas y curvas.

Se busca identificar las relaciones entre las habilidades (variables latentes) visual,textual y velocidad.

Importar la base de datos

df1 <- HolzingerSwineford1939
View(df1)
summary(df1)
##        id             sex            ageyr        agemo       
##  Min.   :  1.0   Min.   :1.000   Min.   :11   Min.   : 0.000  
##  1st Qu.: 82.0   1st Qu.:1.000   1st Qu.:12   1st Qu.: 2.000  
##  Median :163.0   Median :2.000   Median :13   Median : 5.000  
##  Mean   :176.6   Mean   :1.515   Mean   :13   Mean   : 5.375  
##  3rd Qu.:272.0   3rd Qu.:2.000   3rd Qu.:14   3rd Qu.: 8.000  
##  Max.   :351.0   Max.   :2.000   Max.   :16   Max.   :11.000  
##                                                               
##          school        grade             x1               x2       
##  Grant-White:145   Min.   :7.000   Min.   :0.6667   Min.   :2.250  
##  Pasteur    :156   1st Qu.:7.000   1st Qu.:4.1667   1st Qu.:5.250  
##                    Median :7.000   Median :5.0000   Median :6.000  
##                    Mean   :7.477   Mean   :4.9358   Mean   :6.088  
##                    3rd Qu.:8.000   3rd Qu.:5.6667   3rd Qu.:6.750  
##                    Max.   :8.000   Max.   :8.5000   Max.   :9.250  
##                    NA's   :1                                       
##        x3              x4              x5              x6        
##  Min.   :0.250   Min.   :0.000   Min.   :1.000   Min.   :0.1429  
##  1st Qu.:1.375   1st Qu.:2.333   1st Qu.:3.500   1st Qu.:1.4286  
##  Median :2.125   Median :3.000   Median :4.500   Median :2.0000  
##  Mean   :2.250   Mean   :3.061   Mean   :4.341   Mean   :2.1856  
##  3rd Qu.:3.125   3rd Qu.:3.667   3rd Qu.:5.250   3rd Qu.:2.7143  
##  Max.   :4.500   Max.   :6.333   Max.   :7.000   Max.   :6.1429  
##                                                                  
##        x7              x8               x9       
##  Min.   :1.304   Min.   : 3.050   Min.   :2.778  
##  1st Qu.:3.478   1st Qu.: 4.850   1st Qu.:4.750  
##  Median :4.087   Median : 5.500   Median :5.417  
##  Mean   :4.186   Mean   : 5.527   Mean   :5.374  
##  3rd Qu.:4.913   3rd Qu.: 6.100   3rd Qu.:6.083  
##  Max.   :7.435   Max.   :10.000   Max.   :9.250  
## 
glimpse(df1)
## Rows: 301
## Columns: 15
## $ id     <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, …
## $ sex    <int> 1, 2, 2, 1, 2, 2, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 2, 1, 2, 2, 1, …
## $ ageyr  <int> 13, 13, 13, 13, 12, 14, 12, 12, 13, 12, 12, 12, 12, 12, 12, 12,…
## $ agemo  <int> 1, 7, 1, 2, 2, 1, 1, 2, 0, 5, 2, 11, 7, 8, 6, 1, 11, 5, 8, 3, 1…
## $ school <fct> Pasteur, Pasteur, Pasteur, Pasteur, Pasteur, Pasteur, Pasteur, …
## $ grade  <int> 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, …
## $ x1     <dbl> 3.333333, 5.333333, 4.500000, 5.333333, 4.833333, 5.333333, 2.8…
## $ x2     <dbl> 7.75, 5.25, 5.25, 7.75, 4.75, 5.00, 6.00, 6.25, 5.75, 5.25, 5.7…
## $ x3     <dbl> 0.375, 2.125, 1.875, 3.000, 0.875, 2.250, 1.000, 1.875, 1.500, …
## $ x4     <dbl> 2.333333, 1.666667, 1.000000, 2.666667, 2.666667, 1.000000, 3.3…
## $ x5     <dbl> 5.75, 3.00, 1.75, 4.50, 4.00, 3.00, 6.00, 4.25, 5.75, 5.00, 3.5…
## $ x6     <dbl> 1.2857143, 1.2857143, 0.4285714, 2.4285714, 2.5714286, 0.857142…
## $ x7     <dbl> 3.391304, 3.782609, 3.260870, 3.000000, 3.695652, 4.347826, 4.6…
## $ x8     <dbl> 5.75, 6.25, 3.90, 5.30, 6.30, 6.65, 6.20, 5.15, 4.65, 4.55, 5.7…
## $ x9     <dbl> 6.361111, 7.916667, 4.416667, 4.861111, 5.916667, 7.500000, 4.8…

Tipos de fórmulas

  1. Regresion (~) : Variable que depende de otras
  2. Variables Latentes (=~) : No se observan se infiere.
  3. Varianzas y covarianzas (~~) : Relaciones entre variables latentes y observadas.(varianza es entre la variable misma, covarianza es entre otras)
  4. Intercepto (~1) : Valor esperado cuando las demas variables son cero.(Es la inclinación de una recta y se calcula buscando la razón del cambio en las coordenadas y (variación vertical) al cambio correspondiente en las coordenadas x (variación horizontal).

Estructurar el modelo

modelo1 <- ' # Regresiones 
             # Variables latentes
             visual  =~ x1 + x2 + x3
             textual =~ x4 + x5 + x6
             velocidad =~ x7 + x8 + x9
             # Varianzas y covarianzas
             visual ~~ textual
             textual ~~ velocidad
             velocidad~~ visual
             # Intercepto '

Generar el Analisis Factorial Confirmatorio (CFA)

fit <- cfa(modelo1, df1)
summary(fit)
## lavaan 0.6.17 ended normally after 35 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        21
## 
##   Number of observations                           301
## 
## Model Test User Model:
##                                                       
##   Test statistic                                85.306
##   Degrees of freedom                                24
##   P-value (Chi-square)                           0.000
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   visual =~                                           
##     x1                1.000                           
##     x2                0.554    0.100    5.554    0.000
##     x3                0.729    0.109    6.685    0.000
##   textual =~                                          
##     x4                1.000                           
##     x5                1.113    0.065   17.014    0.000
##     x6                0.926    0.055   16.703    0.000
##   velocidad =~                                        
##     x7                1.000                           
##     x8                1.180    0.165    7.152    0.000
##     x9                1.082    0.151    7.155    0.000
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   visual ~~                                           
##     textual           0.408    0.074    5.552    0.000
##   textual ~~                                          
##     velocidad         0.173    0.049    3.518    0.000
##   visual ~~                                           
##     velocidad         0.262    0.056    4.660    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .x1                0.549    0.114    4.833    0.000
##    .x2                1.134    0.102   11.146    0.000
##    .x3                0.844    0.091    9.317    0.000
##    .x4                0.371    0.048    7.779    0.000
##    .x5                0.446    0.058    7.642    0.000
##    .x6                0.356    0.043    8.277    0.000
##    .x7                0.799    0.081    9.823    0.000
##    .x8                0.488    0.074    6.573    0.000
##    .x9                0.566    0.071    8.003    0.000
##     visual            0.809    0.145    5.564    0.000
##     textual           0.979    0.112    8.737    0.000
##     velocidad         0.384    0.086    4.451    0.000
lavaanPlot(fit, coef=TRUE, cov= TRUE)

Ejercicio 2 : Democracia Política e Industrialización

La base de datos contiene distintas mediciones sobre la democracia política e industrialización en países en desarrollo durante 1960 y 1965.

La tabla incluye los siguientes datos :

  1. Democracia 60 * y1 :Calificaciones sobre libertad de prensa en 1960 * y2 :Libertad de la opisicion politica en 1960 * y3 :Imparcialidad de elecciones en 1960 * y4 :Eficacia de la legislatura electa en 1960

  2. Democracia 65 * y5 :Calificaciones sobre libertad de prensa en 1965 * y6 :Libertad de la opisicion politica en 1965 * y7 :Imparcialidad de elecciones en 1965 * y8 :Eficacia de la legislatura electa en 1965 (tomar en cuenta 1960 y predecir el 65)

  3. Industrializzación 60 * x1: PIB per capita en 1960 * x2: Consumo de energia en inanimada per capita (no viva) en 1960 * x3: Porcentaje de la fuerza laboral en la industria en 1960

Importar la base de datos

df2 <- PoliticalDemocracy
View(df2)
summary(df2)
##        y1               y2               y3               y4        
##  Min.   : 1.250   Min.   : 0.000   Min.   : 0.000   Min.   : 0.000  
##  1st Qu.: 2.900   1st Qu.: 0.000   1st Qu.: 3.767   1st Qu.: 1.581  
##  Median : 5.400   Median : 3.333   Median : 6.667   Median : 3.333  
##  Mean   : 5.465   Mean   : 4.256   Mean   : 6.563   Mean   : 4.453  
##  3rd Qu.: 7.500   3rd Qu.: 8.283   3rd Qu.:10.000   3rd Qu.: 6.667  
##  Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000  
##        y5               y6               y7               y8        
##  Min.   : 0.000   Min.   : 0.000   Min.   : 0.000   Min.   : 0.000  
##  1st Qu.: 3.692   1st Qu.: 0.000   1st Qu.: 3.478   1st Qu.: 1.301  
##  Median : 5.000   Median : 2.233   Median : 6.667   Median : 3.333  
##  Mean   : 5.136   Mean   : 2.978   Mean   : 6.196   Mean   : 4.043  
##  3rd Qu.: 7.500   3rd Qu.: 4.207   3rd Qu.:10.000   3rd Qu.: 6.667  
##  Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000  
##        x1              x2              x3       
##  Min.   :3.784   Min.   :1.386   Min.   :1.002  
##  1st Qu.:4.477   1st Qu.:3.663   1st Qu.:2.300  
##  Median :5.075   Median :4.963   Median :3.568  
##  Mean   :5.054   Mean   :4.792   Mean   :3.558  
##  3rd Qu.:5.515   3rd Qu.:5.830   3rd Qu.:4.523  
##  Max.   :6.737   Max.   :7.872   Max.   :6.425
glimpse(df2)
## Rows: 75
## Columns: 11
## $ y1 <dbl> 2.50, 1.25, 7.50, 8.90, 10.00, 7.50, 7.50, 7.50, 2.50, 10.00, 7.50,…
## $ y2 <dbl> 0.000000, 0.000000, 8.800000, 8.800000, 3.333333, 3.333333, 3.33333…
## $ y3 <dbl> 3.333333, 3.333333, 9.999998, 9.999998, 9.999998, 6.666666, 6.66666…
## $ y4 <dbl> 0.000000, 0.000000, 9.199991, 9.199991, 6.666666, 6.666666, 6.66666…
## $ y5 <dbl> 1.250000, 6.250000, 8.750000, 8.907948, 7.500000, 6.250000, 5.00000…
## $ y6 <dbl> 0.000000, 1.100000, 8.094061, 8.127979, 3.333333, 1.100000, 2.23333…
## $ y7 <dbl> 3.726360, 6.666666, 9.999998, 9.999998, 9.999998, 6.666666, 8.27125…
## $ y8 <dbl> 3.333333, 0.736999, 8.211809, 4.615086, 6.666666, 0.368500, 1.48516…
## $ x1 <dbl> 4.442651, 5.384495, 5.961005, 6.285998, 5.863631, 5.533389, 5.30826…
## $ x2 <dbl> 3.637586, 5.062595, 6.255750, 7.567863, 6.818924, 5.135798, 5.07517…
## $ x3 <dbl> 2.557615, 3.568079, 5.224433, 6.267495, 4.573679, 3.892270, 3.31621…

Tipos de formulas

  1. Regresión (~) : Variable que depende de otras
  2. Variables Latentes (=~) : No se observan se infiere.
  3. Varianzas y covarianzas (~~) : Relaciones entre variables latentes y observadas.(varianza es entre la variable misma, covarianza es entre otras)
  4. Intercepto (~1) : Valor esperado cuando las demas variables son cero.(Es la inclinación de una recta y se calcula buscando la razón del cambio en las coordenadas y (variación vertical) al cambio correspondiente en las coordenadas x (variación horizontal).

Estructurar el modelo

modelo2 <- ' # Regresiones 
             democracia65 ~ industrializacion60 + democracia60
             # Variables latentes
             democracia60  =~ y1 + y2 + y3 + y4
             democracia65 =~ y5 + y6 + y7 + y8
             industrializacion60 =~ x1 + x2 + x3
             # Varianzas y covarianzas
             # Intercepto '

Generar el Análisis Factorial Confirmatorio (CFA)

fit2 <- cfa(modelo2, df2)
summary(fit2)
## lavaan 0.6.17 ended normally after 39 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        25
## 
##   Number of observations                            75
## 
## Model Test User Model:
##                                                       
##   Test statistic                                72.462
##   Degrees of freedom                                41
##   P-value (Chi-square)                           0.002
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                          Estimate  Std.Err  z-value  P(>|z|)
##   democracia60 =~                                           
##     y1                      1.000                           
##     y2                      1.354    0.175    7.755    0.000
##     y3                      1.044    0.150    6.961    0.000
##     y4                      1.300    0.138    9.412    0.000
##   democracia65 =~                                           
##     y5                      1.000                           
##     y6                      1.258    0.164    7.651    0.000
##     y7                      1.282    0.158    8.137    0.000
##     y8                      1.310    0.154    8.529    0.000
##   industrializacion60 =~                                    
##     x1                      1.000                           
##     x2                      2.182    0.139   15.714    0.000
##     x3                      1.819    0.152   11.956    0.000
## 
## Regressions:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   democracia65 ~                                      
##     industrilzcn60    0.453    0.220    2.064    0.039
##     democracia60      0.864    0.113    7.671    0.000
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   democracia60 ~~                                     
##     industrilzcn60    0.660    0.206    3.202    0.001
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .y1                1.942    0.395    4.910    0.000
##    .y2                6.490    1.185    5.479    0.000
##    .y3                5.340    0.943    5.662    0.000
##    .y4                2.887    0.610    4.731    0.000
##    .y5                2.390    0.447    5.351    0.000
##    .y6                4.343    0.796    5.456    0.000
##    .y7                3.510    0.668    5.252    0.000
##    .y8                2.940    0.586    5.019    0.000
##    .x1                0.082    0.020    4.180    0.000
##    .x2                0.118    0.070    1.689    0.091
##    .x3                0.467    0.090    5.174    0.000
##     democracia60      4.845    1.088    4.453    0.000
##    .democracia65      0.115    0.200    0.575    0.565
##     industrilzcn60    0.448    0.087    5.169    0.000
lavaanPlot(fit2, coef=TRUE, cov= TRUE)

Estructurar el modelo

modelo3 <- ' # Regresiones 
             industrializacion60 ~ democracia60
             # Variables latentes
             democracia60  =~ y1 + y2 + y3 + y4
             democracia65 =~ y5 + y6 + y7 + y8
             industrializacion60 =~ x1 + x2 + x3
             # Varianzas y covarianzas
             # Intercepto '

Generar el Análisis Factorial Confirmatorio (CFA)

fit2 <- cfa(modelo3, df2)
summary(fit2)
## lavaan 0.6.17 ended normally after 45 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        24
## 
##   Number of observations                            75
## 
## Model Test User Model:
##                                                       
##   Test statistic                                76.467
##   Degrees of freedom                                42
##   P-value (Chi-square)                           0.001
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                          Estimate  Std.Err  z-value  P(>|z|)
##   democracia60 =~                                           
##     y1                      1.000                           
##     y2                      1.354    0.179    7.548    0.000
##     y3                      1.049    0.153    6.840    0.000
##     y4                      1.320    0.141    9.334    0.000
##   democracia65 =~                                           
##     y5                      1.000                           
##     y6                      1.289    0.170    7.570    0.000
##     y7                      1.308    0.164    7.983    0.000
##     y8                      1.335    0.160    8.342    0.000
##   industrializacion60 =~                                    
##     x1                      1.000                           
##     x2                      2.179    0.139   15.685    0.000
##     x3                      1.818    0.152   11.968    0.000
## 
## Regressions:
##                         Estimate  Std.Err  z-value  P(>|z|)
##   industrializacion60 ~                                    
##     democracia60           0.155    0.036    4.330    0.000
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   democracia60 ~~                                     
##     democracia65      4.405    0.904    4.872    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .y1                2.053    0.405    5.064    0.000
##    .y2                6.694    1.207    5.546    0.000
##    .y3                5.414    0.950    5.699    0.000
##    .y4                2.817    0.593    4.749    0.000
##    .y5                2.519    0.469    5.377    0.000
##    .y6                4.216    0.783    5.382    0.000
##    .y7                3.443    0.665    5.178    0.000
##    .y8                2.880    0.584    4.928    0.000
##    .x1                0.081    0.020    4.138    0.000
##    .x2                0.121    0.071    1.701    0.089
##    .x3                0.467    0.090    5.163    0.000
##     democracia60      4.734    1.081    4.381    0.000
##     democracia65      4.216    1.044    4.037    0.000
##    .industrilzcn60    0.336    0.067    5.045    0.000
lavaanPlot(fit2, coef=TRUE, cov= TRUE)

Actividad “Bienestar de los Colaboradores”: Parte 1, Parte 2, Parte 3

Teoria

Uno de los retos más importantes de las organizaciones es entender el estado y bienestar de los colaboradores, ya que puede impactar directamente en el desempeño y el logro de los objetivos.

Parte1.

Análisis factorial confirmatorio (segundo orden) sobre el constructo de experiencias de recuperación.

Las experiencias de recuperación se refieren a la medida en que un individuo percibe que las actividades que se realizan fuera del horario laboral le ayudarán a restaurar los recursos energéticos que le permitirán sortear efectivamente el estrés y las presiones laborales. Se distinguen entre cuatro dominios principales de experiencias de recuperación: desapego psicológico, relajación, dominio y control sobre el tiempo libre:

  • El desapego psicológico

  • Las experiencias de relajación

  • Las experiencias de dominio

  • Las experiencias de control sobre el tiempo libre

Realizar:

Un análisis factorial confirmatorio de segundo orden (Segundo orden es otra ecuacion latente dentro de unas latentes) del constructo de experiencias de recuperación. (Ver descripción de los instrumentos) Revisar los índices de ajuste del modelo. Depurar el modelo para mejorar el ajuste.

Importar BD

semm <- read_excel("C:/Users/alexa/OneDrive/Desktop/8VO/MODULO 1/Datos_SEM_Eng.xlsx")
glimpse(semm)
## Rows: 223
## Columns: 51
## $ ID    <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 1…
## $ GEN   <dbl> 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0…
## $ EXPER <dbl> 22, 22, 30, 17, 23, 31, 26, 30, 15, 15, 24, 21, 35, 26, 14, 25, …
## $ EDAD  <dbl> 45, 44, 52, 41, 51, 52, 53, 48, 40, 38, 45, 42, 59, 60, 36, 46, …
## $ RPD01 <dbl> 5, 4, 7, 5, 7, 3, 5, 6, 4, 2, 6, 3, 5, 7, 3, 3, 7, 5, 7, 6, 3, 7…
## $ RPD02 <dbl> 1, 4, 7, 5, 6, 4, 5, 7, 4, 3, 6, 3, 5, 7, 3, 3, 7, 3, 5, 6, 3, 6…
## $ RPD03 <dbl> 3, 6, 7, 1, 7, 5, 4, 6, 4, 2, 7, 3, 7, 7, 4, 3, 7, 7, 7, 7, 1, 7…
## $ RPD05 <dbl> 2, 5, 7, 1, 6, 4, 4, 7, 4, 3, 7, 2, 7, 7, 4, 2, 7, 3, 6, 6, 1, 7…
## $ RPD06 <dbl> 3, 3, 7, 3, 7, 3, 5, 2, 6, 7, 7, 2, 7, 7, 4, 3, 7, 5, 7, 7, 6, 7…
## $ RPD07 <dbl> 1, 2, 6, 5, 6, 5, 6, 5, 4, 1, 6, 3, 5, 7, 1, 4, 5, 3, 5, 6, 3, 5…
## $ RPD08 <dbl> 3, 3, 7, 3, 7, 4, 6, 2, 5, 3, 7, 1, 7, 7, 1, 3, 7, 4, 7, 7, 3, 7…
## $ RPD09 <dbl> 2, 4, 7, 2, 6, 4, 7, 4, 4, 2, 7, 2, 5, 7, 3, 1, 7, 4, 7, 6, 3, 7…
## $ RPD10 <dbl> 4, 4, 7, 2, 6, 4, 7, 1, 6, 2, 7, 2, 7, 7, 3, 3, 7, 4, 7, 7, 2, 7…
## $ RRE02 <dbl> 6, 6, 7, 6, 7, 5, 7, 5, 6, 7, 7, 6, 7, 7, 5, 4, 7, 6, 7, 7, 5, 6…
## $ RRE03 <dbl> 6, 6, 7, 6, 7, 4, 7, 4, 4, 7, 7, 3, 7, 7, 5, 4, 7, 7, 7, 7, 6, 6…
## $ RRE04 <dbl> 6, 6, 7, 6, 7, 4, 7, 4, 6, 7, 7, 3, 7, 7, 5, 4, 5, 7, 7, 7, 2, 6…
## $ RRE05 <dbl> 6, 6, 7, 6, 7, 5, 7, 4, 6, 7, 7, 3, 7, 7, 5, 5, 7, 7, 7, 7, 3, 6…
## $ RRE06 <dbl> 6, 6, 7, 6, 7, 4, 7, 4, 6, 7, 5, 1, 7, 7, 5, 4, 6, 7, 7, 4, 6, 6…
## $ RRE07 <dbl> 6, 6, 7, 6, 7, 4, 7, 4, 6, 7, 5, 5, 7, 7, 5, 3, 6, 6, 7, 6, 5, 6…
## $ RRE10 <dbl> 6, 6, 7, 6, 7, 4, 7, 4, 6, 7, 7, 3, 7, 7, 4, 4, 7, 1, 7, 7, 6, 6…
## $ RMA02 <dbl> 4, 6, 4, 3, 4, 7, 5, 2, 6, 7, 2, 1, 3, 1, 5, 6, 4, 4, 1, 5, 7, 7…
## $ RMA03 <dbl> 5, 6, 5, 4, 4, 7, 5, 1, 2, 7, 1, 1, 3, 7, 5, 6, 3, 5, 7, 5, 6, 5…
## $ RMA04 <dbl> 5, 5, 6, 4, 4, 5, 5, 1, 4, 7, 2, 1, 7, 1, 5, 6, 2, 4, 7, 7, 5, 6…
## $ RMA05 <dbl> 5, 5, 6, 4, 4, 6, 5, 3, 4, 7, 2, 1, 7, 7, 5, 6, 4, 4, 6, 7, 6, 5…
## $ RMA06 <dbl> 6, 6, 7, 6, 5, 4, 5, 7, 6, 7, 6, 6, 7, 1, 5, 5, 6, 5, 7, 7, 5, 6…
## $ RMA07 <dbl> 4, 6, 6, 5, 4, 5, 7, 4, 6, 7, 2, 1, 7, 1, 5, 6, 5, 4, 6, 7, 4, 5…
## $ RMA08 <dbl> 5, 6, 4, 4, 4, 6, 6, 4, 2, 7, 2, 2, 7, 1, 5, 6, 3, 3, 7, 7, 6, 6…
## $ RMA09 <dbl> 3, 5, 4, 3, 5, 4, 5, 2, 4, 7, 2, 2, 7, 1, 5, 5, 5, 3, 7, 5, 6, 5…
## $ RMA10 <dbl> 7, 5, 5, 4, 5, 5, 6, 4, 3, 7, 2, 1, 7, 7, 4, 5, 7, 2, 7, 5, 7, 5…
## $ RCO02 <dbl> 7, 7, 7, 5, 7, 6, 7, 7, 3, 7, 7, 4, 7, 2, 6, 7, 5, 2, 7, 6, 6, 5…
## $ RCO03 <dbl> 7, 7, 7, 5, 7, 5, 7, 7, 3, 7, 7, 3, 7, 5, 5, 6, 7, 3, 7, 6, 5, 6…
## $ RCO04 <dbl> 7, 7, 7, 6, 7, 4, 7, 7, 3, 7, 7, 5, 7, 5, 5, 6, 7, 5, 7, 6, 5, 6…
## $ RCO05 <dbl> 7, 7, 7, 6, 7, 4, 7, 7, 3, 7, 7, 4, 7, 7, 5, 6, 7, 7, 7, 7, 4, 6…
## $ RCO06 <dbl> 7, 7, 7, 6, 7, 4, 7, 7, 4, 7, 7, 3, 7, 3, 6, 6, 6, 5, 7, 7, 6, 6…
## $ RCO07 <dbl> 5, 7, 7, 6, 7, 4, 7, 7, 7, 7, 7, 3, 7, 2, 5, 5, 6, 5, 7, 7, 6, 6…
## $ EN01  <dbl> 6, 6, 7, 4, 6, 4, 7, 7, 4, 7, 5, 2, 7, 6, 4, 4, 4, 2, 6, 5, 6, 6…
## $ EN02  <dbl> 7, 6, 7, 4, 6, 4, 7, 7, 4, 7, 6, 2, 7, 3, 4, 5, 4, 2, 7, 6, 5, 6…
## $ EN04  <dbl> 6, 6, 7, 4, 6, 4, 7, 6, 4, 7, 6, 2, 7, 5, 4, 4, 3, 2, 6, 5, 6, 6…
## $ EN05  <dbl> 5, 5, 7, 5, 6, 5, 7, 6, 4, 7, 5, 2, 7, 3, 5, 5, 7, 2, 7, 6, 6, 6…
## $ EN06  <dbl> 5, 5, 7, 5, 6, 3, 7, 5, 5, 7, 5, 2, 5, 3, 5, 4, 5, 2, 7, 2, 7, 6…
## $ EN07  <dbl> 5, 5, 7, 2, 6, 4, 7, 4, 4, 7, 5, 2, 7, 2, 4, 3, 4, 1, 6, 2, 5, 5…
## $ EN08  <dbl> 6, 5, 7, 5, 6, 4, 7, 4, 4, 7, 5, 2, 7, 3, 4, 5, 4, 1, 7, 4, 5, 6…
## $ EVI01 <dbl> 6, 5, 7, 5, 6, 4, 7, 6, 6, 0, 5, 2, 7, 6, 5, 5, 4, 4, 6, 4, 6, 7…
## $ EVI02 <dbl> 6, 5, 7, 6, 6, 4, 6, 5, 5, 1, 5, 2, 7, 6, 5, 5, 2, 5, 6, 4, 6, 7…
## $ EVI03 <dbl> 6, 6, 6, 7, 6, 4, 6, 6, 7, 0, 6, 2, 7, 5, 6, 6, 1, 4, 6, 6, 7, 7…
## $ EDE01 <dbl> 6, 6, 6, 5, 7, 6, 7, 7, 7, 1, 6, 2, 7, 6, 6, 5, 2, 6, 7, 5, 6, 7…
## $ EDE02 <dbl> 7, 6, 7, 6, 7, 5, 7, 7, 7, 5, 6, 6, 5, 7, 6, 5, 3, 6, 7, 6, 7, 7…
## $ EDE03 <dbl> 7, 7, 7, 7, 7, 5, 7, 7, 7, 6, 6, 5, 7, 7, 6, 6, 4, 6, 7, 6, 7, 7…
## $ EAB01 <dbl> 7, 7, 7, 6, 7, 5, 7, 7, 7, 0, 6, 5, 7, 7, 6, 6, 2, 6, 7, 6, 5, 7…
## $ EAB02 <dbl> 7, 7, 7, 6, 7, 5, 7, 2, 5, 1, 5, 6, 7, 7, 6, 4, 1, 6, 7, 6, 7, 7…
## $ EAB03 <dbl> 6, 5, 6, 5, 6, 5, 7, 3, 5, 0, 4, 6, 5, 6, 6, 4, 4, 6, 7, 5, 7, 7…
summary(semm)
##        ID             GEN             EXPER            EDAD      
##  Min.   :  1.0   Min.   :0.0000   Min.   : 0.00   Min.   :22.00  
##  1st Qu.: 56.5   1st Qu.:0.0000   1st Qu.:15.00   1st Qu.:37.50  
##  Median :112.0   Median :1.0000   Median :20.00   Median :44.00  
##  Mean   :112.0   Mean   :0.5919   Mean   :21.05   Mean   :43.95  
##  3rd Qu.:167.5   3rd Qu.:1.0000   3rd Qu.:27.50   3rd Qu.:51.00  
##  Max.   :223.0   Max.   :1.0000   Max.   :50.00   Max.   :72.00  
##      RPD01           RPD02          RPD03           RPD05           RPD06      
##  Min.   :1.000   Min.   :1.00   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:3.000   1st Qu.:3.00   1st Qu.:3.000   1st Qu.:3.000   1st Qu.:3.000  
##  Median :5.000   Median :4.00   Median :5.000   Median :5.000   Median :5.000  
##  Mean   :4.596   Mean   :4.09   Mean   :4.789   Mean   :4.327   Mean   :4.798  
##  3rd Qu.:6.000   3rd Qu.:6.00   3rd Qu.:7.000   3rd Qu.:6.000   3rd Qu.:7.000  
##  Max.   :7.000   Max.   :7.00   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      RPD07           RPD08           RPD09           RPD10      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:2.000   1st Qu.:3.000   1st Qu.:3.000   1st Qu.:2.500  
##  Median :4.000   Median :5.000   Median :5.000   Median :5.000  
##  Mean   :3.794   Mean   :4.735   Mean   :4.466   Mean   :4.435  
##  3rd Qu.:5.500   3rd Qu.:7.000   3rd Qu.:6.000   3rd Qu.:6.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      RRE02           RRE03           RRE04           RRE05           RRE06    
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.0  
##  1st Qu.:5.000   1st Qu.:5.000   1st Qu.:5.000   1st Qu.:5.000   1st Qu.:4.0  
##  Median :6.000   Median :6.000   Median :6.000   Median :6.000   Median :6.0  
##  Mean   :5.691   Mean   :5.534   Mean   :5.668   Mean   :5.623   Mean   :5.3  
##  3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.0  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.0  
##      RRE07           RRE10           RMA02           RMA03      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:4.000   1st Qu.:5.000   1st Qu.:3.000   1st Qu.:3.000  
##  Median :6.000   Median :6.000   Median :4.000   Median :5.000  
##  Mean   :5.305   Mean   :5.664   Mean   :4.215   Mean   :4.377  
##  3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:6.000   3rd Qu.:6.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      RMA04           RMA05           RMA06           RMA07      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:3.000   1st Qu.:3.000   1st Qu.:5.000   1st Qu.:4.000  
##  Median :5.000   Median :5.000   Median :6.000   Median :5.000  
##  Mean   :4.686   Mean   :4.637   Mean   :5.511   Mean   :4.767  
##  3rd Qu.:6.000   3rd Qu.:6.000   3rd Qu.:7.000   3rd Qu.:6.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      RMA08           RMA09           RMA10          RCO02           RCO03      
##  Min.   :1.000   Min.   :1.000   Min.   :1.00   Min.   :1.000   Min.   :1.000  
##  1st Qu.:4.000   1st Qu.:3.000   1st Qu.:3.00   1st Qu.:5.000   1st Qu.:5.000  
##  Median :5.000   Median :5.000   Median :5.00   Median :6.000   Median :6.000  
##  Mean   :4.942   Mean   :4.614   Mean   :4.43   Mean   :5.336   Mean   :5.574  
##  3rd Qu.:6.500   3rd Qu.:6.000   3rd Qu.:6.00   3rd Qu.:7.000   3rd Qu.:7.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.00   Max.   :7.000   Max.   :7.000  
##      RCO04           RCO05           RCO06           RCO07      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:5.000   1st Qu.:5.000   1st Qu.:5.000   1st Qu.:5.000  
##  Median :6.000   Median :6.000   Median :6.000   Median :6.000  
##  Mean   :5.704   Mean   :5.668   Mean   :5.619   Mean   :5.632  
##  3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##       EN01            EN02            EN04            EN05      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:3.000   1st Qu.:4.000   1st Qu.:4.000   1st Qu.:4.000  
##  Median :5.000   Median :6.000   Median :5.000   Median :5.000  
##  Mean   :4.717   Mean   :5.004   Mean   :4.883   Mean   :4.928  
##  3rd Qu.:6.000   3rd Qu.:7.000   3rd Qu.:6.000   3rd Qu.:6.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##       EN06            EN07            EN08           EVI01      
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :0.000  
##  1st Qu.:3.000   1st Qu.:3.000   1st Qu.:4.000   1st Qu.:4.000  
##  Median :5.000   Median :5.000   Median :5.000   Median :5.000  
##  Mean   :4.767   Mean   :4.578   Mean   :4.776   Mean   :5.013  
##  3rd Qu.:6.000   3rd Qu.:6.000   3rd Qu.:6.000   3rd Qu.:6.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      EVI02           EVI03           EDE01           EDE02      
##  Min.   :0.000   Min.   :0.000   Min.   :0.000   Min.   :0.000  
##  1st Qu.:4.000   1st Qu.:4.000   1st Qu.:5.000   1st Qu.:5.000  
##  Median :6.000   Median :6.000   Median :6.000   Median :6.000  
##  Mean   :5.076   Mean   :4.973   Mean   :5.305   Mean   :5.543  
##  3rd Qu.:6.000   3rd Qu.:6.000   3rd Qu.:7.000   3rd Qu.:7.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000  
##      EDE03           EAB01           EAB02           EAB03      
##  Min.   :0.000   Min.   :0.000   Min.   :0.000   Min.   :0.000  
##  1st Qu.:6.000   1st Qu.:5.000   1st Qu.:5.000   1st Qu.:5.000  
##  Median :7.000   Median :6.000   Median :6.000   Median :6.000  
##  Mean   :6.135   Mean   :5.605   Mean   :5.821   Mean   :5.363  
##  3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000   3rd Qu.:7.000  
##  Max.   :7.000   Max.   :7.000   Max.   :7.000   Max.   :7.000

Diccionario

Desapego

  • RPD01 - Me olvidé del trabajo

  • RPD02 - No pensé en mi trabajo para nada

  • RPD03 - Me distancié de mi trabajo

  • RPD04 -Tuve un receso de las demandas del trabajo (eliminated)

  • RPD05 - Me desconecte completamente del trabajo

  • RPD06 - A propósito no hice, ni revisé nada de mi trabajo

  • RPD07 - Ni me acordé de mi trabajo

  • RPD08 - Con toda intención no hice nada sobre mi trabajo

  • RPD09 - Logré desligarme de mis responsabilidades laborales

  • RPD10 - Me deslinde de mis actividades laborales

Relajacion

  • RRE01 - Me puse cómodo y me relajé (eliminated)

  • RRE02 - Hice actividades relajantes

  • RRE03 - Usé mi tiempo para relajarme

  • RRE04 - Me tomé tiempo para el esparcimiento

  • RRE05 - Usé mi tiempo para despejarme

  • RRE06 - Dediqué tiempo a mis pasatiempos favoritos

  • RRE07 - Realicé actividades que me destensaron

  • RRE08 - Bajé mi estrés relajándome (eliminated)

  • RRE09 - Me enfoque en mis hobbies (eliminated)

  • RRE10 - Mi atención estuvo en distraerme del trabajo

Dominio/Maestria

  • RMA01 - Aprendí cosas nuevas (eliminated)

  • RMA02 - Busqué retos intelectuales

  • RMA03 - Hice cosas que me retaron

  • RMA04 - Hice algo que amplió mis horizontes

  • RMA05 - Hice algo que me reta a mejorar

  • RMA06 - Utilicé mi tiempo en actividades diferentes

  • RMA07 - Busqué ampliar mis perspectivas

  • RMA08 - Hice cosas diferentes que me enseñaron

  • RMA09 - Disfruté haciendo cosas novedosas

  • RMA10 - Salí de la rutina con actividades retadoras

Escala

  • RCO01 - Sentí que podía decidir por mí mismo/a qué hacer (eliminated)

  • RCO02 - Decidí por mi mismo mi propio horario

  • RCO03 - Determiné por mí mismo como pasar mi tiempo

  • RCO04 - Me hice cargo de cosas en la forma que yo quería hacerlas

  • RCO05 - Elegí cómo usar mi tiempo

  • RCO06 - Elegí libremente cómo organizar mis actividades

  • RCO07 - Tomé la decisión sobre cuándo y cómo hago las actividades fuera del trabajo

  • RCO08 - Puedo organizar mis actividades fuera del trabajo con libertad (eliminated)

Tipos de formulas

  1. Regresion (~) : Variable que depende de otras
  2. Variables Latentes (=~) : No se observan se infiere.
  3. Varianzas y covarianzas (~~) : Relaciones entre variables latentes y observadas.(varianza es entre la variable misma, covarianza es entre otras)
  4. Intercepto (~1) : Valor esperado cuando las demas variables son cero.(Es la inclinación de una recta y se calcula buscando la razón del cambio en las coordenadas y (variación vertical) al cambio correspondiente en las coordenadas x (variación horizontal).

Segundo orden es otra ecuacion latente dentro de unas latentes

Estructura del modelo

modelosemm <- ' # Regresiones 
             # Variables latentes
             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10
             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10
             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10
             control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07
             recuperacion =~ desapego + relajacion + dominio + control
             # Varianzas y covarianzas
             # Intercepto '
modelosemm
## [1] " # Regresiones \n             # Variables latentes\n             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10\n             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10\n             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10\n             control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07\n             recuperacion =~ desapego + relajacion + dominio + control\n             # Varianzas y covarianzas\n             # Intercepto "

Generar el Análisis Factorial Confirmatorio (CFA)

fit2 <- cfa(modelosemm, semm)
summary(fit2)
## lavaan 0.6.17 ended normally after 47 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        66
## 
##   Number of observations                           223
## 
## Model Test User Model:
##                                                       
##   Test statistic                              1221.031
##   Degrees of freedom                               430
##   P-value (Chi-square)                           0.000
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   desapego =~                                         
##     RPD01             1.000                           
##     RPD02             1.206    0.082   14.780    0.000
##     RPD03             1.143    0.085   13.374    0.000
##     RPD05             1.312    0.086   15.244    0.000
##     RPD06             1.088    0.089   12.266    0.000
##     RPD07             1.229    0.085   14.440    0.000
##     RPD08             1.164    0.087   13.447    0.000
##     RPD09             1.317    0.087   15.153    0.000
##     RPD10             1.346    0.088   15.258    0.000
##   relajacion =~                                       
##     RRE02             1.000                           
##     RRE03             1.120    0.065   17.227    0.000
##     RRE04             1.025    0.058   17.713    0.000
##     RRE05             1.055    0.056   18.758    0.000
##     RRE06             1.245    0.074   16.869    0.000
##     RRE07             1.117    0.071   15.689    0.000
##     RRE10             0.815    0.067   12.120    0.000
##   dominio =~                                          
##     RMA02             1.000                           
##     RMA03             1.155    0.096   12.079    0.000
##     RMA04             1.178    0.089   13.274    0.000
##     RMA05             1.141    0.087   13.072    0.000
##     RMA06             0.645    0.075    8.597    0.000
##     RMA07             1.103    0.084   13.061    0.000
##     RMA08             1.109    0.085   12.994    0.000
##     RMA09             1.028    0.084   12.246    0.000
##     RMA10             1.055    0.088   12.044    0.000
##   control =~                                          
##     RCO02             1.000                           
##     RCO03             0.948    0.049   19.182    0.000
##     RCO04             0.796    0.044   18.110    0.000
##     RCO05             0.818    0.043   18.990    0.000
##     RCO06             0.834    0.046   18.216    0.000
##     RCO07             0.835    0.046   18.057    0.000
##   recuperacion =~                                     
##     desapego          1.000                           
##     relajacion        1.149    0.131    8.787    0.000
##     dominio           0.858    0.129    6.666    0.000
##     control           1.341    0.156    8.605    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .RPD01             1.172    0.120    9.782    0.000
##    .RPD02             0.999    0.108    9.228    0.000
##    .RPD03             1.441    0.148    9.733    0.000
##    .RPD05             0.987    0.110    8.964    0.000
##    .RPD06             1.817    0.182    9.967    0.000
##    .RPD07             1.173    0.125    9.383    0.000
##    .RPD08             1.460    0.150    9.714    0.000
##    .RPD09             1.032    0.114    9.021    0.000
##    .RPD10             1.034    0.115    8.955    0.000
##    .RRE02             0.626    0.068    9.274    0.000
##    .RRE03             0.653    0.073    9.011    0.000
##    .RRE04             0.481    0.055    8.794    0.000
##    .RRE05             0.374    0.046    8.153    0.000
##    .RRE06             0.886    0.097    9.149    0.000
##    .RRE07             0.950    0.100    9.505    0.000
##    .RRE10             1.137    0.113   10.093    0.000
##    .RMA02             1.740    0.175    9.931    0.000
##    .RMA03             1.485    0.155    9.575    0.000
##    .RMA04             0.855    0.097    8.772    0.000
##    .RMA05             0.899    0.100    8.967    0.000
##    .RMA06             1.631    0.159   10.281    0.000
##    .RMA07             0.845    0.094    8.977    0.000
##    .RMA08             0.886    0.098    9.034    0.000
##    .RMA09             1.094    0.115    9.500    0.000
##    .RMA10             1.259    0.131    9.590    0.000
##    .RCO02             0.983    0.105    9.379    0.000
##    .RCO03             0.484    0.058    8.391    0.000
##    .RCO04             0.462    0.052    8.963    0.000
##    .RCO05             0.382    0.045    8.513    0.000
##    .RCO06             0.494    0.055    8.917    0.000
##    .RCO07             0.515    0.057    8.985    0.000
##    .desapego          0.943    0.152    6.207    0.000
##    .relajacion        0.333    0.089    3.757    0.000
##    .dominio           1.260    0.212    5.942    0.000
##    .control           0.900    0.159    5.666    0.000
##     recuperacion      0.978    0.202    4.833    0.000
lavaanPlot(fit2, coef=TRUE, cov= TRUE)

Estructura del modelo depurado

modelosemdepurado <- ' # Regresiones 
             # Variables latentes
             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD07 + RPD08 + RPD09 + RPD10
             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 
             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA07 + RMA08 + RMA09 + RMA10
             control =~ RCO02 + RCO03 + RCO05 + RCO06 + RCO07
             recuperacion =~ desapego + relajacion + dominio + control
             # Varianzas y covarianzas
             # Intercepto '
modelosemdepurado
## [1] " # Regresiones \n             # Variables latentes\n             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD07 + RPD08 + RPD09 + RPD10\n             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 \n             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA07 + RMA08 + RMA09 + RMA10\n             control =~ RCO02 + RCO03 + RCO05 + RCO06 + RCO07\n             recuperacion =~ desapego + relajacion + dominio + control\n             # Varianzas y covarianzas\n             # Intercepto "

Generar el Análisis Factorial Confirmatorio (CFA)

fit22 <- cfa(modelosemdepurado, semm)
summary(fit22)
## lavaan 0.6.17 ended normally after 48 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        58
## 
##   Number of observations                           223
## 
## Model Test User Model:
##                                                       
##   Test statistic                               886.791
##   Degrees of freedom                               320
##   P-value (Chi-square)                           0.000
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   desapego =~                                         
##     RPD01             1.000                           
##     RPD02             1.204    0.079   15.158    0.000
##     RPD03             1.146    0.083   13.750    0.000
##     RPD05             1.310    0.084   15.663    0.000
##     RPD07             1.219    0.083   14.675    0.000
##     RPD08             1.114    0.086   13.004    0.000
##     RPD09             1.301    0.085   15.315    0.000
##     RPD10             1.328    0.086   15.404    0.000
##   relajacion =~                                       
##     RRE02             1.000                           
##     RRE03             1.111    0.064   17.245    0.000
##     RRE04             1.025    0.057   17.974    0.000
##     RRE05             1.054    0.055   19.046    0.000
##     RRE06             1.237    0.073   16.904    0.000
##     RRE07             1.105    0.071   15.618    0.000
##   dominio =~                                          
##     RMA02             1.000                           
##     RMA03             1.155    0.095   12.223    0.000
##     RMA04             1.176    0.088   13.412    0.000
##     RMA05             1.140    0.086   13.220    0.000
##     RMA07             1.091    0.083   13.067    0.000
##     RMA08             1.103    0.084   13.087    0.000
##     RMA09             1.020    0.083   12.287    0.000
##     RMA10             1.049    0.087   12.097    0.000
##   control =~                                          
##     RCO02             1.000                           
##     RCO03             0.944    0.051   18.648    0.000
##     RCO05             0.820    0.044   18.683    0.000
##     RCO06             0.840    0.046   18.083    0.000
##     RCO07             0.842    0.047   18.010    0.000
##   recuperacion =~                                     
##     desapego          1.000                           
##     relajacion        1.145    0.132    8.696    0.000
##     dominio           0.843    0.129    6.525    0.000
##     control           1.356    0.159    8.549    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .RPD01             1.134    0.117    9.697    0.000
##    .RPD02             0.956    0.105    9.070    0.000
##    .RPD03             1.381    0.143    9.629    0.000
##    .RPD05             0.932    0.107    8.749    0.000
##    .RPD07             1.162    0.125    9.304    0.000
##    .RPD08             1.629    0.166    9.815    0.000
##    .RPD09             1.053    0.117    8.980    0.000
##    .RPD10             1.061    0.119    8.926    0.000
##    .RRE02             0.612    0.067    9.179    0.000
##    .RRE03             0.666    0.074    8.988    0.000
##    .RRE04             0.467    0.054    8.651    0.000
##    .RRE05             0.361    0.045    7.940    0.000
##    .RRE06             0.898    0.098    9.119    0.000
##    .RRE07             0.974    0.102    9.502    0.000
##    .RMA02             1.720    0.174    9.901    0.000
##    .RMA03             1.456    0.153    9.519    0.000
##    .RMA04             0.839    0.097    8.681    0.000
##    .RMA05             0.879    0.099    8.876    0.000
##    .RMA07             0.874    0.097    9.009    0.000
##    .RMA08             0.884    0.098    8.993    0.000
##    .RMA09             1.105    0.116    9.490    0.000
##    .RMA10             1.265    0.132    9.573    0.000
##    .RCO02             0.999    0.109    9.187    0.000
##    .RCO03             0.517    0.063    8.171    0.000
##    .RCO05             0.385    0.047    8.145    0.000
##    .RCO06             0.482    0.056    8.540    0.000
##    .RCO07             0.495    0.058    8.582    0.000
##    .desapego          0.985    0.157    6.286    0.000
##    .relajacion        0.360    0.092    3.917    0.000
##    .dominio           1.309    0.218    5.994    0.000
##    .control           0.850    0.159    5.341    0.000
##     recuperacion      0.974    0.203    4.795    0.000
lavaanPlot(fit22, coef=TRUE, cov= TRUE)

Parte 2. Energia recuperada

Diccionario

  1. Energía EN01 - Siento que pude cargarme de energía. (eliminated)

  2. EN02 - Considero que me siento completamente recuperado

  3. EN03 - Siento con la energía suficiente para un nuevo día

  4. EN04 - Me siento renovado/a

  5. EN05 - Logré recuperar mi energía

  6. EN06 - Pude descansar lo suficiente para re-energetizarme

  7. EN07 - Me siento como nuevo/a

  8. EN08 - Recuperé mis niveles de energía para trabajar

  9. EN09 - Me siento reconstituido después de alejarme del trabajo(eliminated)

  10. EN10 - Cada día es una nueva oportunidad para empezar (eliminated)

Estructura del modelo

modeloen <- ' # Regresiones 
             # Variables latentes
             energia  =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08 
             # Varianzas y covarianzas
             # Intercepto '
modeloen
## [1] " # Regresiones \n             # Variables latentes\n             energia  =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08 \n             # Varianzas y covarianzas\n             # Intercepto "

Generar el Análisis Factorial Confirmatorio (CFA)

Test statistic entre mas alto mejor

fit3 <- cfa(modeloen, semm)
summary(fit3)
## lavaan 0.6.17 ended normally after 32 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                        14
## 
##   Number of observations                           223
## 
## Model Test User Model:
##                                                       
##   Test statistic                                47.222
##   Degrees of freedom                                14
##   P-value (Chi-square)                           0.000
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   energia =~                                          
##     EN01              1.000                           
##     EN02              1.029    0.044   23.192    0.000
##     EN04              0.999    0.044   22.583    0.000
##     EN05              0.999    0.042   23.649    0.000
##     EN06              0.986    0.042   23.722    0.000
##     EN07              1.049    0.046   22.856    0.000
##     EN08              1.036    0.043   24.173    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .EN01              0.711    0.074    9.651    0.000
##    .EN02              0.444    0.049    9.012    0.000
##    .EN04              0.481    0.052    9.214    0.000
##    .EN05              0.375    0.042    8.830    0.000
##    .EN06              0.359    0.041    8.798    0.000
##    .EN07              0.499    0.055    9.129    0.000
##    .EN08              0.353    0.041    8.580    0.000
##     energia           2.801    0.327    8.565    0.000
lavaanPlot(fit3, coef=TRUE, cov= TRUE)

Despues de evaluar los valores estimados, los errores estandar y el p-value, determinamos innecesario depurar el modelo.

Parte 3. Engagement Laboral

Diccionario

Vigor

  1. EVI01 - En mi trabajo me siento lleno de energía

  2. EVI02 - Soy fuerte y vigoroso en mi trabajo

  3. EVI03 - Cuando me levanto por las mañanas tengo ganas de ir a trabajar Dedicación

  4. EDE01 - Estoy entusiasmado con mi trabajo

  5. EDE02 - Mi trabajo me inspira

  6. EDE03 - Estoy orgulloso del trabajo que hago Absorción

  7. EAB01 - Soy feliz cuando estoy absorto en mi trabajo

  8. EAB02 - Estoy inmerso en mi trabajo

  9. EAB03 - Me “dejo llevar” por mi trabajo

modelo3 <- ' # Regresiones 
             # Variables latentes 1
             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10
             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10
             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10
             control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07
             recuperacion =~ desapego + relajacion + dominio + control
             
             # Variables latentes 2
              energia  =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08 
              
             # Variables latentes 3
             vigor =~ EVI01 + EVI01 + EVI03
             dedicacion =~ EDE01 + EDE02 + EDE03
             absorcion =~ EAB01 + EAB02
             engagement =~ vigor + dedicacion + absorcion
            
             # Varianzas y covarianzas
             engagement  ~~ energia + recuperacion
             # Intercepto '
modelo3
## [1] " # Regresiones \n             # Variables latentes 1\n             desapego  =~ RPD01 + RPD02 + RPD03 + RPD05 + RPD06 + RPD07 + RPD08 + RPD09 + RPD10\n             relajacion =~ RRE02 + RRE03 + RRE04 + RRE05 + RRE06 + RRE07 + RRE10\n             dominio =~ RMA02 + RMA03 + RMA04 + RMA05 + RMA06 + RMA07 + RMA08 + RMA09 + RMA10\n             control =~ RCO02 + RCO03 + RCO04 + RCO05 + RCO06 + RCO07\n             recuperacion =~ desapego + relajacion + dominio + control\n             \n             # Variables latentes 2\n              energia  =~ EN01 + EN02 + EN04 + EN05 + EN06 + EN07 + EN08 \n              \n             # Variables latentes 3\n             vigor =~ EVI01 + EVI01 + EVI03\n             dedicacion =~ EDE01 + EDE02 + EDE03\n             absorcion =~ EAB01 + EAB02\n             engagement =~ vigor + dedicacion + absorcion\n            \n             # Varianzas y covarianzas\n             engagement  ~~ energia + recuperacion\n             # Intercepto "

Generar el Análisis Factorial Confirmatorio (CFA)

fit34 <- sem(modelo3, semm)
summary(fit34)
## lavaan 0.6.17 ended normally after 70 iterations
## 
##   Estimator                                         ML
##   Optimization method                           NLMINB
##   Number of model parameters                       100
## 
##   Number of observations                           223
## 
## Model Test User Model:
##                                                       
##   Test statistic                              2261.034
##   Degrees of freedom                               935
##   P-value (Chi-square)                           0.000
## 
## Parameter Estimates:
## 
##   Standard errors                             Standard
##   Information                                 Expected
##   Information saturated (h1) model          Structured
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   desapego =~                                         
##     RPD01             1.000                           
##     RPD02             1.209    0.081   14.867    0.000
##     RPD03             1.144    0.085   13.420    0.000
##     RPD05             1.313    0.086   15.318    0.000
##     RPD06             1.082    0.089   12.214    0.000
##     RPD07             1.229    0.085   14.488    0.000
##     RPD08             1.156    0.086   13.375    0.000
##     RPD09             1.315    0.087   15.164    0.000
##     RPD10             1.343    0.088   15.248    0.000
##   relajacion =~                                       
##     RRE02             1.000                           
##     RRE03             1.120    0.065   17.297    0.000
##     RRE04             1.021    0.058   17.625    0.000
##     RRE05             1.051    0.056   18.687    0.000
##     RRE06             1.246    0.074   16.924    0.000
##     RRE07             1.121    0.071   15.838    0.000
##     RRE10             0.814    0.067   12.134    0.000
##   dominio =~                                          
##     RMA02             1.000                           
##     RMA03             1.152    0.096   12.041    0.000
##     RMA04             1.178    0.089   13.266    0.000
##     RMA05             1.141    0.087   13.058    0.000
##     RMA06             0.648    0.075    8.625    0.000
##     RMA07             1.104    0.085   13.063    0.000
##     RMA08             1.110    0.085   13.001    0.000
##     RMA09             1.030    0.084   12.257    0.000
##     RMA10             1.056    0.088   12.047    0.000
##   control =~                                          
##     RCO02             1.000                           
##     RCO03             0.945    0.049   19.174    0.000
##     RCO04             0.794    0.044   18.100    0.000
##     RCO05             0.814    0.043   18.926    0.000
##     RCO06             0.837    0.045   18.409    0.000
##     RCO07             0.836    0.046   18.208    0.000
##   recuperacion =~                                     
##     desapego          1.000                           
##     relajacion        1.070    0.121    8.836    0.000
##     dominio           0.901    0.129    6.961    0.000
##     control           1.424    0.157    9.061    0.000
##   energia =~                                          
##     EN01              1.000                           
##     EN02              1.027    0.044   23.410    0.000
##     EN04              0.998    0.044   22.874    0.000
##     EN05              0.996    0.042   23.838    0.000
##     EN06              0.982    0.041   23.853    0.000
##     EN07              1.045    0.045   22.968    0.000
##     EN08              1.033    0.042   24.397    0.000
##   vigor =~                                            
##     EVI01             1.000                           
##     EVI03             1.204    0.061   19.725    0.000
##   dedicacion =~                                       
##     EDE01             1.000                           
##     EDE02             0.891    0.033   27.176    0.000
##     EDE03             0.550    0.037   15.054    0.000
##   absorcion =~                                        
##     EAB01             1.000                           
##     EAB02             0.648    0.053   12.224    0.000
##   engagement =~                                       
##     vigor             1.000                           
##     dedicacion        1.268    0.064   19.902    0.000
##     absorcion         0.998    0.061   16.342    0.000
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##   energia ~~                                          
##     engagement        1.549    0.217    7.151    0.000
##   recuperacion ~~                                     
##     engagement        0.855    0.147    5.813    0.000
##     energia           1.365    0.197    6.932    0.000
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|)
##    .RPD01             1.168    0.119    9.781    0.000
##    .RPD02             0.982    0.107    9.201    0.000
##    .RPD03             1.434    0.147    9.729    0.000
##    .RPD05             0.972    0.109    8.938    0.000
##    .RPD06             1.837    0.184    9.980    0.000
##    .RPD07             1.165    0.124    9.377    0.000
##    .RPD08             1.486    0.153    9.741    0.000
##    .RPD09             1.037    0.115    9.036    0.000
##    .RPD10             1.046    0.116    8.984    0.000
##    .RRE02             0.623    0.067    9.252    0.000
##    .RRE03             0.647    0.072    8.975    0.000
##    .RRE04             0.492    0.056    8.829    0.000
##    .RRE05             0.384    0.047    8.203    0.000
##    .RRE06             0.880    0.097    9.122    0.000
##    .RRE07             0.930    0.098    9.460    0.000
##    .RRE10             1.136    0.113   10.087    0.000
##    .RMA02             1.741    0.175    9.935    0.000
##    .RMA03             1.499    0.156    9.594    0.000
##    .RMA04             0.857    0.098    8.785    0.000
##    .RMA05             0.903    0.101    8.983    0.000
##    .RMA06             1.626    0.158   10.280    0.000
##    .RMA07             0.843    0.094    8.979    0.000
##    .RMA08             0.882    0.098    9.031    0.000
##    .RMA09             1.090    0.115    9.498    0.000
##    .RMA10             1.257    0.131    9.592    0.000
##    .RCO02             0.977    0.104    9.390    0.000
##    .RCO03             0.493    0.058    8.475    0.000
##    .RCO04             0.468    0.052    9.017    0.000
##    .RCO05             0.393    0.046    8.621    0.000
##    .RCO06             0.479    0.054    8.883    0.000
##    .RCO07             0.505    0.056    8.972    0.000
##    .EN01              0.696    0.072    9.659    0.000
##    .EN02              0.444    0.049    9.065    0.000
##    .EN04              0.472    0.051    9.235    0.000
##    .EN05              0.377    0.042    8.906    0.000
##    .EN06              0.366    0.041    8.900    0.000
##    .EN07              0.507    0.055    9.207    0.000
##    .EN08              0.353    0.041    8.658    0.000
##    .EVI01             0.727    0.087    8.338    0.000
##    .EVI03             0.677    0.101    6.727    0.000
##    .EDE01             0.283    0.056    5.102    0.000
##    .EDE02             0.547    0.066    8.324    0.000
##    .EDE03             0.921    0.091   10.090    0.000
##    .EAB01             0.343    0.130    2.629    0.009
##    .EAB02             1.164    0.122    9.517    0.000
##    .desapego          0.953    0.149    6.397    0.000
##    .relajacion        0.515    0.085    6.027    0.000
##    .dominio           1.190    0.200    5.955    0.000
##    .control           0.693    0.125    5.534    0.000
##     recuperacion      0.971    0.199    4.891    0.000
##     energia           2.816    0.327    8.605    0.000
##    .vigor             0.114    0.065    1.760    0.078
##    .dedicacion        0.041    0.076    0.539    0.590
##    .absorcion         0.543    0.141    3.843    0.000
##     engagement        2.195    0.281    7.803    0.000
lavaanPlot(fit34, coef=TRUE, cov= TRUE)
LS0tDQp0aXRsZTogIkVjdWFjaW9uZXMgRXN0cnVjdHVyYWxlcyINCmRhdGU6ICJgciBTeXMuRGF0ZSgpYCINCm91dHB1dDoNCiAgcm1kZm9ybWF0czo6ZG93bmN1dGU6DQogICAgc2VsZl9jb250YWluZWQ6IHRydWUNCiAgICBkZWZhdWx0X3N0eWxlOiAibGlnaHQiDQogICAgZG93bmN1dGVfdGhlbWU6ICJkZWZhdWx0Ig0KICAgIGNvZGVfZG93bmxvYWQgOiB0cnVlDQotLS0NCg0KKipBbGV4YSBNYXJpYW5hIE1hcmluIFZpbGxhciBBMDA4MzEzNDIqKiANCg0KYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9DQojIyBHbG9iYWwgb3B0aW9ucw0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGNhY2hlID0gVFJVRSxlY2hvID0gVFJVRSx3YXJuaW5nID0gRkFMU0UsbWVzc2FnZSA9IEZBTFNFKQ0KYGBgDQoNCiMgKipFamVyY2ljaW8gMSoqDQoNCmBgYHtyLGluY2x1ZGU9RkFMU0V9DQojIyBJbnN0YWxhciBwYXF1ZXRlcyB5IGxsYW1hciBsaWJyZXJpYXMNCiNpbnN0YWxsLnBhY2thZ2VzKCJsYXZhYW4iKQ0KI2luc3RhbGwucGFja2FnZXMoImxhdmFhblBsb3QiKQ0KI2FuYWxpc2lzIGRlIHZhcmlhYmxlcyBsYXRlbnRlcyhzb24gbGFzIHZhcmlhYmxlcyBxdWUgbm8gc2Ugb2JzZXJ2YW4gc2UgaW5maWVyZW4pDQpsaWJyYXJ5KCJsYXZhYW4iKQ0KbGlicmFyeSgibGF2YWFuUGxvdCIpDQpsaWJyYXJ5KCJkcGx5ciIpDQpgYGANCg0KIyMjICoqTGlicmVyaWFzKioNCg0KYGBge3J9DQpsaWJyYXJ5KCJsYXZhYW4iKQ0KbGlicmFyeSgibGF2YWFuUGxvdCIpDQpsaWJyYXJ5KCJkcGx5ciIpDQpsaWJyYXJ5KCJyZWFkeGwiKQ0KYGBgDQohW10oaS5zdGFja18uaW1ndXJfLmNvbS05cTlQWSAoMSkuZ2lmKXt3aWR0aD0iMzc3In0NCg0KIyMgKipUZW9yaWEqKg0KDQpMb3MgKiptb2RlbG9zIGRlIGVjdWFjaW9uZXMgZXN0cnVjdHVyYWxlcyAoU0VNKSoqIGVzIHVuYSB0ZWNuaWNhIGRlIGFuYWxpc2lzIGRlIGVzdGFkaXN0aWNhIG11bHRpdmFyaWFkYSwgcXVlIHBlcm1pdGUgYW5hbGl6YXIgcGF0cm9uZXMgY29tcGxlam9zIGRlIHJlbGFjaW9uZXMgZW50cmUgdiBhcmlhYmxlcywgcmVhbGl6YXIgY29tcGFyYWNpb25lcyBlbnRyZSBpbnRyYWdydXBvcywgeSB2YWxpZGFyIG1vZGVsb3MgdGVvcmljb3MgeSBlbXBpcmljb3MuDQoNCiMgKipFamVtcGxvIDEuIEVzdHVkaW8gZGUgSG9semluZ2VyIHkgU3dpbmVmb3JkICgxOTM5KSoqDQoNCiMjICoqQ29udGV4dG8qKg0KDQpIb2x6aW5nZXIgeSBTd2luZWZvcmQgcmVhbGl6YXJvbiBleGFtZW5lcyBkZSBoYWJpbGlkYWQgbWVudGFsIGEgYWRvbGVzY2VudGVzIGRlIDdvIHkgOG8gZ3JhZG8gZGUgZG9zIGVzY3VlbGFzIChQYXN0ZXVyIHkgR3JhbmQtV2hpdGUpLiBMYSBiYXNlIGRlIGRhdG9zIGVzdGEgaW5jbHVpZGEgY29tbyBwYXF1ZXRlIGVuIFIsIGUgaW5jbHV5ZSBsYXMgc2lndWllbnRlcyBjb2x1bW5hczoNCg0KLSAgIHNleCA6IGdlbmVybyAoMSA9IG1hbGUsMj1mZW1hbGUpDQoNCioqVmlzdWFsKioNCg0KLSAgIHgxIDogcGVyY2VwY2lvbiB2aXN1YWwNCg0KLSAgIHgyIDoganVlZ28gY29uIGN1Ym9zDQoNCi0gICB4MyA6IGp1ZWdvIGNvbiBwYXN0aWxsYXMvZXNwYWNpYWwNCg0KKipUZXh0dWFsKioNCg0KLSAgIHg0IDogY29tcHJlbnNpb24gZGUgcGFycmFmb3MNCg0KLSAgIHg1IDogY29tcGxldGFyIG9yYWNpb25lcw0KDQotICAgeDYgOiBzaWduaWZpY2FkbyBkZSBwYWxhYnJhcw0KDQoqKlZlbG9jaWRhZCoqDQoNCi0gICB4NyA6IHN1bWFzIGFjZWxlcmFkYXMNCg0KLSAgIHg4IDogY29udGVvIGFjZWxlcmFkbw0KDQotICAgeDkgOiBkaXNjaW1pbmFjaW9uIGFjZWxlcmFkYSBkZSBtYXl1c2N1bGFzIHJlY3RhcyB5IGN1cnZhcy4NCg0KU2UgYnVzY2EgaWRlbnRpZmljYXIgbGFzIHJlbGFjaW9uZXMgZW50cmUgbGFzIGhhYmlsaWRhZGVzICh2YXJpYWJsZXMgbGF0ZW50ZXMpICoqdmlzdWFsLHRleHR1YWwgeSB2ZWxvY2lkYWQuKioNCg0KIyMgKipJbXBvcnRhciBsYSBiYXNlIGRlIGRhdG9zKioNCg0KYGBge3J9DQpkZjEgPC0gSG9semluZ2VyU3dpbmVmb3JkMTkzOQ0KVmlldyhkZjEpDQpgYGANCg0KYGBge3J9DQpzdW1tYXJ5KGRmMSkNCmdsaW1wc2UoZGYxKQ0KYGBgDQoNCiMjICoqVGlwb3MgZGUgZsOzcm11bGFzKioNCg0KMS4gIFJlZ3Jlc2lvbiAoXH4pIDogVmFyaWFibGUgcXVlIGRlcGVuZGUgZGUgb3RyYXMNCjIuICBWYXJpYWJsZXMgTGF0ZW50ZXMgKD1cfikgOiBObyBzZSBvYnNlcnZhbiBzZSBpbmZpZXJlLg0KMy4gIFZhcmlhbnphcyB5IGNvdmFyaWFuemFzIChcflx+KSA6IFJlbGFjaW9uZXMgZW50cmUgdmFyaWFibGVzIGxhdGVudGVzIHkgb2JzZXJ2YWRhcy4odmFyaWFuemEgZXMgZW50cmUgbGEgdmFyaWFibGUgbWlzbWEsIGNvdmFyaWFuemEgZXMgZW50cmUgb3RyYXMpDQo0LiAgSW50ZXJjZXB0byAoXH4xKSA6IFZhbG9yIGVzcGVyYWRvIGN1YW5kbyBsYXMgZGVtYXMgdmFyaWFibGVzIHNvbiBjZXJvLihFcyBsYSBpbmNsaW5hY2nDs24gZGUgdW5hIHJlY3RhIHkgc2UgY2FsY3VsYSBidXNjYW5kbyBsYSByYXrDs24gZGVsIGNhbWJpbyBlbiBsYXMgY29vcmRlbmFkYXMgeSAodmFyaWFjacOzbiB2ZXJ0aWNhbCkgYWwgY2FtYmlvIGNvcnJlc3BvbmRpZW50ZSBlbiBsYXMgY29vcmRlbmFkYXMgeCAodmFyaWFjacOzbiBob3Jpem9udGFsKS4NCg0KIyMgKipFc3RydWN0dXJhciBlbCBtb2RlbG8qKg0KDQpgYGB7cn0NCm1vZGVsbzEgPC0gJyAjIFJlZ3Jlc2lvbmVzIA0KICAgICAgICAgICAgICMgVmFyaWFibGVzIGxhdGVudGVzDQogICAgICAgICAgICAgdmlzdWFsICA9fiB4MSArIHgyICsgeDMNCiAgICAgICAgICAgICB0ZXh0dWFsID1+IHg0ICsgeDUgKyB4Ng0KICAgICAgICAgICAgIHZlbG9jaWRhZCA9fiB4NyArIHg4ICsgeDkNCiAgICAgICAgICAgICAjIFZhcmlhbnphcyB5IGNvdmFyaWFuemFzDQogICAgICAgICAgICAgdmlzdWFsIH5+IHRleHR1YWwNCiAgICAgICAgICAgICB0ZXh0dWFsIH5+IHZlbG9jaWRhZA0KICAgICAgICAgICAgIHZlbG9jaWRhZH5+IHZpc3VhbA0KICAgICAgICAgICAgICMgSW50ZXJjZXB0byAnDQoNCmBgYA0KDQojIyAqKkdlbmVyYXIgZWwgQW5hbGlzaXMgRmFjdG9yaWFsIENvbmZpcm1hdG9yaW8gKENGQSkqKg0KDQpgYGB7cn0NCmZpdCA8LSBjZmEobW9kZWxvMSwgZGYxKQ0Kc3VtbWFyeShmaXQpDQpsYXZhYW5QbG90KGZpdCwgY29lZj1UUlVFLCBjb3Y9IFRSVUUpDQpgYGANCg0KIyAqKkVqZXJjaWNpbyAyIDogRGVtb2NyYWNpYSBQb2zDrXRpY2EgZSBJbmR1c3RyaWFsaXphY2nDs24qKg0KDQpMYSBiYXNlIGRlIGRhdG9zIGNvbnRpZW5lIGRpc3RpbnRhcyBtZWRpY2lvbmVzIHNvYnJlIGxhIGRlbW9jcmFjaWEgcG9sw610aWNhIGUgaW5kdXN0cmlhbGl6YWNpw7NuIGVuIHBhw61zZXMgZW4gZGVzYXJyb2xsbyBkdXJhbnRlIDE5NjAgeSAxOTY1Lg0KDQpMYSB0YWJsYSBpbmNsdXllIGxvcyBzaWd1aWVudGVzIGRhdG9zIDoNCg0KMS4gIERlbW9jcmFjaWEgNjAgXCogeTEgOkNhbGlmaWNhY2lvbmVzIHNvYnJlIGxpYmVydGFkIGRlIHByZW5zYSBlbiAxOTYwIFwqIHkyIDpMaWJlcnRhZCBkZSBsYSBvcGlzaWNpb24gcG9saXRpY2EgZW4gMTk2MCBcKiB5MyA6SW1wYXJjaWFsaWRhZCBkZSBlbGVjY2lvbmVzIGVuIDE5NjAgXCogeTQgOkVmaWNhY2lhIGRlIGxhIGxlZ2lzbGF0dXJhIGVsZWN0YSBlbiAxOTYwDQoNCjIuICBEZW1vY3JhY2lhIDY1IFwqIHk1IDpDYWxpZmljYWNpb25lcyBzb2JyZSBsaWJlcnRhZCBkZSBwcmVuc2EgZW4gMTk2NSBcKiB5NiA6TGliZXJ0YWQgZGUgbGEgb3Bpc2ljaW9uIHBvbGl0aWNhIGVuIDE5NjUgXCogeTcgOkltcGFyY2lhbGlkYWQgZGUgZWxlY2Npb25lcyBlbiAxOTY1IFwqIHk4IDpFZmljYWNpYSBkZSBsYSBsZWdpc2xhdHVyYSBlbGVjdGEgZW4gMTk2NSAodG9tYXIgZW4gY3VlbnRhIDE5NjAgeSBwcmVkZWNpciBlbCA2NSkNCg0KMy4gIEluZHVzdHJpYWxpenphY2nDs24gNjAgXCogeDE6IFBJQiBwZXIgY2FwaXRhIGVuIDE5NjAgXCogeDI6IENvbnN1bW8gZGUgZW5lcmdpYSBlbiBpbmFuaW1hZGEgcGVyIGNhcGl0YSAobm8gdml2YSkgZW4gMTk2MCBcKiB4MzogUG9yY2VudGFqZSBkZSBsYSBmdWVyemEgbGFib3JhbCBlbiBsYSBpbmR1c3RyaWEgZW4gMTk2MA0KDQojIyAqKkltcG9ydGFyIGxhIGJhc2UgZGUgZGF0b3MqKg0KDQpgYGB7cn0NCmRmMiA8LSBQb2xpdGljYWxEZW1vY3JhY3kNClZpZXcoZGYyKQ0KYGBgDQoNCmBgYHtyfQ0Kc3VtbWFyeShkZjIpDQpnbGltcHNlKGRmMikNCmBgYA0KDQojIyAqKlRpcG9zIGRlIGZvcm11bGFzKioNCg0KMS4gIFJlZ3Jlc2nDs24gKFx+KSA6IFZhcmlhYmxlIHF1ZSBkZXBlbmRlIGRlIG90cmFzDQoyLiAgVmFyaWFibGVzIExhdGVudGVzICg9XH4pIDogTm8gc2Ugb2JzZXJ2YW4gc2UgaW5maWVyZS4NCjMuICBWYXJpYW56YXMgeSBjb3ZhcmlhbnphcyAoXH5cfikgOiBSZWxhY2lvbmVzIGVudHJlIHZhcmlhYmxlcyBsYXRlbnRlcyB5IG9ic2VydmFkYXMuKHZhcmlhbnphIGVzIGVudHJlIGxhIHZhcmlhYmxlIG1pc21hLCBjb3ZhcmlhbnphIGVzIGVudHJlIG90cmFzKQ0KNC4gIEludGVyY2VwdG8gKFx+MSkgOiBWYWxvciBlc3BlcmFkbyBjdWFuZG8gbGFzIGRlbWFzIHZhcmlhYmxlcyBzb24gY2Vyby4oRXMgbGEgaW5jbGluYWNpw7NuIGRlIHVuYSByZWN0YSB5IHNlIGNhbGN1bGEgYnVzY2FuZG8gbGEgcmF6w7NuIGRlbCBjYW1iaW8gZW4gbGFzIGNvb3JkZW5hZGFzIHkgKHZhcmlhY2nDs24gdmVydGljYWwpIGFsIGNhbWJpbyBjb3JyZXNwb25kaWVudGUgZW4gbGFzIGNvb3JkZW5hZGFzIHggKHZhcmlhY2nDs24gaG9yaXpvbnRhbCkuDQoNCiMjICoqRXN0cnVjdHVyYXIgZWwgbW9kZWxvKioNCg0KYGBge3J9DQptb2RlbG8yIDwtICcgIyBSZWdyZXNpb25lcyANCiAgICAgICAgICAgICBkZW1vY3JhY2lhNjUgfiBpbmR1c3RyaWFsaXphY2lvbjYwICsgZGVtb2NyYWNpYTYwDQogICAgICAgICAgICAgIyBWYXJpYWJsZXMgbGF0ZW50ZXMNCiAgICAgICAgICAgICBkZW1vY3JhY2lhNjAgID1+IHkxICsgeTIgKyB5MyArIHk0DQogICAgICAgICAgICAgZGVtb2NyYWNpYTY1ID1+IHk1ICsgeTYgKyB5NyArIHk4DQogICAgICAgICAgICAgaW5kdXN0cmlhbGl6YWNpb242MCA9fiB4MSArIHgyICsgeDMNCiAgICAgICAgICAgICAjIFZhcmlhbnphcyB5IGNvdmFyaWFuemFzDQogICAgICAgICAgICAgIyBJbnRlcmNlcHRvICcNCmBgYA0KDQojIyAqKkdlbmVyYXIgZWwgQW7DoWxpc2lzIEZhY3RvcmlhbCBDb25maXJtYXRvcmlvIChDRkEpKioNCg0KYGBge3J9DQpmaXQyIDwtIGNmYShtb2RlbG8yLCBkZjIpDQpzdW1tYXJ5KGZpdDIpDQpsYXZhYW5QbG90KGZpdDIsIGNvZWY9VFJVRSwgY292PSBUUlVFKQ0KYGBgDQoNCiMjICoqRXN0cnVjdHVyYXIgZWwgbW9kZWxvKioNCg0KYGBge3J9DQptb2RlbG8zIDwtICcgIyBSZWdyZXNpb25lcyANCiAgICAgICAgICAgICBpbmR1c3RyaWFsaXphY2lvbjYwIH4gZGVtb2NyYWNpYTYwDQogICAgICAgICAgICAgIyBWYXJpYWJsZXMgbGF0ZW50ZXMNCiAgICAgICAgICAgICBkZW1vY3JhY2lhNjAgID1+IHkxICsgeTIgKyB5MyArIHk0DQogICAgICAgICAgICAgZGVtb2NyYWNpYTY1ID1+IHk1ICsgeTYgKyB5NyArIHk4DQogICAgICAgICAgICAgaW5kdXN0cmlhbGl6YWNpb242MCA9fiB4MSArIHgyICsgeDMNCiAgICAgICAgICAgICAjIFZhcmlhbnphcyB5IGNvdmFyaWFuemFzDQogICAgICAgICAgICAgIyBJbnRlcmNlcHRvICcNCmBgYA0KDQojIyAqKkdlbmVyYXIgZWwgQW7DoWxpc2lzIEZhY3RvcmlhbCBDb25maXJtYXRvcmlvIChDRkEpKioNCg0KYGBge3J9DQpmaXQyIDwtIGNmYShtb2RlbG8zLCBkZjIpDQpzdW1tYXJ5KGZpdDIpDQpsYXZhYW5QbG90KGZpdDIsIGNvZWY9VFJVRSwgY292PSBUUlVFKQ0KYGBgDQoNCiMgKipBY3RpdmlkYWQgIkJpZW5lc3RhciBkZSBsb3MgQ29sYWJvcmFkb3JlcyI6IFBhcnRlIDEsIFBhcnRlIDIsIFBhcnRlIDMqKg0KDQojIyAqKlRlb3JpYSoqDQoNClVubyBkZSBsb3MgcmV0b3MgbcOhcyBpbXBvcnRhbnRlcyBkZSBsYXMgb3JnYW5pemFjaW9uZXMgZXMgZW50ZW5kZXIgZWwgZXN0YWRvIHkgYmllbmVzdGFyIGRlIGxvcyBjb2xhYm9yYWRvcmVzLCB5YSBxdWUgcHVlZGUgaW1wYWN0YXIgZGlyZWN0YW1lbnRlIGVuIGVsIGRlc2VtcGXDsW8geSBlbCBsb2dybyBkZSBsb3Mgb2JqZXRpdm9zLg0KDQojIyAqKlBhcnRlMS4qKg0KDQpBbsOhbGlzaXMgZmFjdG9yaWFsIGNvbmZpcm1hdG9yaW8gKHNlZ3VuZG8gb3JkZW4pIHNvYnJlIGVsIGNvbnN0cnVjdG8gZGUgZXhwZXJpZW5jaWFzIGRlIHJlY3VwZXJhY2nDs24uDQoNCkxhcyBleHBlcmllbmNpYXMgZGUgcmVjdXBlcmFjacOzbiBzZSByZWZpZXJlbiBhIGxhIG1lZGlkYSBlbiBxdWUgdW4gaW5kaXZpZHVvIHBlcmNpYmUgcXVlIGxhcyBhY3RpdmlkYWRlcyBxdWUgc2UgcmVhbGl6YW4gZnVlcmEgZGVsIGhvcmFyaW8gbGFib3JhbCBsZSBheXVkYXLDoW4gYSByZXN0YXVyYXIgbG9zIHJlY3Vyc29zIGVuZXJnw6l0aWNvcyBxdWUgbGUgcGVybWl0aXLDoW4gc29ydGVhciBlZmVjdGl2YW1lbnRlIGVsIGVzdHLDqXMgeSBsYXMgcHJlc2lvbmVzIGxhYm9yYWxlcy4gU2UgZGlzdGluZ3VlbiBlbnRyZSBjdWF0cm8gZG9taW5pb3MgcHJpbmNpcGFsZXMgZGUgZXhwZXJpZW5jaWFzIGRlIHJlY3VwZXJhY2nDs246IGRlc2FwZWdvIHBzaWNvbMOzZ2ljbywgcmVsYWphY2nDs24sIGRvbWluaW8geSBjb250cm9sIHNvYnJlIGVsIHRpZW1wbyBsaWJyZToNCg0KLSAgIEVsIGRlc2FwZWdvIHBzaWNvbMOzZ2ljbw0KDQotICAgTGFzIGV4cGVyaWVuY2lhcyBkZSByZWxhamFjacOzbg0KDQotICAgTGFzIGV4cGVyaWVuY2lhcyBkZSBkb21pbmlvDQoNCi0gICBMYXMgZXhwZXJpZW5jaWFzIGRlIGNvbnRyb2wgc29icmUgZWwgdGllbXBvIGxpYnJlDQoNCipSZWFsaXphcjoqDQoNClVuIGFuw6FsaXNpcyBmYWN0b3JpYWwgY29uZmlybWF0b3JpbyBkZSBzZWd1bmRvIG9yZGVuICgqKlNlZ3VuZG8gb3JkZW4gZXMgb3RyYSBlY3VhY2lvbiBsYXRlbnRlIGRlbnRybyBkZSB1bmFzIGxhdGVudGVzKiopIGRlbCBjb25zdHJ1Y3RvIGRlIGV4cGVyaWVuY2lhcyBkZSByZWN1cGVyYWNpw7NuLiAoVmVyIGRlc2NyaXBjacOzbiBkZSBsb3MgaW5zdHJ1bWVudG9zKSBSZXZpc2FyIGxvcyDDrW5kaWNlcyBkZSBhanVzdGUgZGVsIG1vZGVsby4gRGVwdXJhciBlbCBtb2RlbG8gcGFyYSBtZWpvcmFyIGVsIGFqdXN0ZS4NCg0KDQojIyMgKipJbXBvcnRhciBCRCoqDQoNCmBgYHtyfQ0Kc2VtbSA8LSByZWFkX2V4Y2VsKCJDOi9Vc2Vycy9hbGV4YS9PbmVEcml2ZS9EZXNrdG9wLzhWTy9NT0RVTE8gMS9EYXRvc19TRU1fRW5nLnhsc3giKQ0KZ2xpbXBzZShzZW1tKQ0Kc3VtbWFyeShzZW1tKQ0KYGBgDQoNCiMjIyAqKkRpY2Npb25hcmlvKioNCg0KIyMjIyAqKkRlc2FwZWdvKioNCg0KLSAgIFJQRDAxIC0gTWUgb2x2aWTDqSBkZWwgdHJhYmFqbw0KDQotICAgUlBEMDIgLSBObyBwZW5zw6kgZW4gbWkgdHJhYmFqbyBwYXJhIG5hZGENCg0KLSAgIFJQRDAzIC0gTWUgZGlzdGFuY2nDqSBkZSBtaSB0cmFiYWpvDQoNCi0gICBSUEQwNCAtVHV2ZSB1biByZWNlc28gZGUgbGFzIGRlbWFuZGFzIGRlbCB0cmFiYWpvIChlbGltaW5hdGVkKQ0KDQotICAgUlBEMDUgLSBNZSBkZXNjb25lY3RlIGNvbXBsZXRhbWVudGUgZGVsIHRyYWJham8NCg0KLSAgIFJQRDA2IC0gQSBwcm9ww7NzaXRvIG5vIGhpY2UsIG5pIHJldmlzw6kgbmFkYSBkZSBtaSB0cmFiYWpvDQoNCi0gICBSUEQwNyAtIE5pIG1lIGFjb3Jkw6kgZGUgbWkgdHJhYmFqbw0KDQotICAgUlBEMDggLSBDb24gdG9kYSBpbnRlbmNpw7NuIG5vIGhpY2UgbmFkYSBzb2JyZSBtaSB0cmFiYWpvDQoNCi0gICBSUEQwOSAtIExvZ3LDqSBkZXNsaWdhcm1lIGRlIG1pcyByZXNwb25zYWJpbGlkYWRlcyBsYWJvcmFsZXMNCg0KLSAgICBSUEQxMCAtIE1lIGRlc2xpbmRlIGRlIG1pcyBhY3RpdmlkYWRlcyBsYWJvcmFsZXMNCg0KIyMjIyAqKlJlbGFqYWNpb24qKg0KDQotICAgUlJFMDEgLSBNZSBwdXNlIGPDs21vZG8geSBtZSByZWxhasOpIChlbGltaW5hdGVkKQ0KDQotICAgIFJSRTAyIC0gSGljZSBhY3RpdmlkYWRlcyByZWxhamFudGVzDQoNCi0gICBSUkUwMyAtIFVzw6kgbWkgdGllbXBvIHBhcmEgcmVsYWphcm1lDQoNCi0gICBSUkUwNCAtIE1lIHRvbcOpIHRpZW1wbyBwYXJhIGVsIGVzcGFyY2ltaWVudG8NCg0KLSAgIFJSRTA1IC0gVXPDqSBtaSB0aWVtcG8gcGFyYSBkZXNwZWphcm1lDQoNCi0gICBSUkUwNiAtIERlZGlxdcOpIHRpZW1wbyBhIG1pcyBwYXNhdGllbXBvcyBmYXZvcml0b3MNCg0KLSAgIFJSRTA3IC0gUmVhbGljw6kgYWN0aXZpZGFkZXMgcXVlIG1lIGRlc3RlbnNhcm9uDQoNCi0gICBSUkUwOCAtIEJhasOpIG1pIGVzdHLDqXMgcmVsYWrDoW5kb21lIChlbGltaW5hdGVkKQ0KDQotICAgUlJFMDkgLSBNZSBlbmZvcXVlIGVuIG1pcyBob2JiaWVzIChlbGltaW5hdGVkKQ0KDQotICAgUlJFMTAgLSBNaSBhdGVuY2nDs24gZXN0dXZvIGVuIGRpc3RyYWVybWUgZGVsIHRyYWJham8NCg0KIyMjIyAqKkRvbWluaW8vTWFlc3RyaWEqKg0KDQotICAgUk1BMDEgLSBBcHJlbmTDrSBjb3NhcyBudWV2YXMgKGVsaW1pbmF0ZWQpDQoNCi0gICBSTUEwMiAtIEJ1c3F1w6kgcmV0b3MgaW50ZWxlY3R1YWxlcw0KDQotICAgUk1BMDMgLSBIaWNlIGNvc2FzIHF1ZSBtZSByZXRhcm9uDQoNCi0gICBSTUEwNCAtIEhpY2UgYWxnbyBxdWUgYW1wbGnDsyBtaXMgaG9yaXpvbnRlcw0KDQotICAgUk1BMDUgLSBIaWNlIGFsZ28gcXVlIG1lIHJldGEgYSBtZWpvcmFyDQoNCi0gICBSTUEwNiAtIFV0aWxpY8OpIG1pIHRpZW1wbyBlbiBhY3RpdmlkYWRlcyBkaWZlcmVudGVzDQoNCi0gICBSTUEwNyAtIEJ1c3F1w6kgYW1wbGlhciBtaXMgcGVyc3BlY3RpdmFzDQoNCi0gICBSTUEwOCAtIEhpY2UgY29zYXMgZGlmZXJlbnRlcyBxdWUgbWUgZW5zZcOxYXJvbg0KDQotICAgUk1BMDkgLSBEaXNmcnV0w6kgaGFjaWVuZG8gY29zYXMgbm92ZWRvc2FzDQoNCi0gICBSTUExMCAtIFNhbMOtIGRlIGxhIHJ1dGluYSBjb24gYWN0aXZpZGFkZXMgcmV0YWRvcmFzDQoNCiMjIyMgKipFc2NhbGEqKg0KDQotICAgUkNPMDEgLSBTZW50w60gcXVlIHBvZMOtYSBkZWNpZGlyIHBvciBtw60gbWlzbW8vYSBxdcOpIGhhY2VyIChlbGltaW5hdGVkKQ0KDQotICAgUkNPMDIgLSBEZWNpZMOtIHBvciBtaSBtaXNtbyBtaSBwcm9waW8gaG9yYXJpbw0KDQotICAgUkNPMDMgLSBEZXRlcm1pbsOpIHBvciBtw60gbWlzbW8gY29tbyBwYXNhciBtaSB0aWVtcG8NCg0KLSAgIFJDTzA0IC0gTWUgaGljZSBjYXJnbyBkZSBjb3NhcyBlbiBsYSBmb3JtYSBxdWUgeW8gcXVlcsOtYSBoYWNlcmxhcw0KDQotICAgIFJDTzA1IC0gRWxlZ8OtIGPDs21vIHVzYXIgbWkgdGllbXBvDQoNCi0gICBSQ08wNiAtIEVsZWfDrSBsaWJyZW1lbnRlIGPDs21vIG9yZ2FuaXphciBtaXMgYWN0aXZpZGFkZXMNCg0KLSAgIFJDTzA3IC0gVG9tw6kgbGEgZGVjaXNpw7NuIHNvYnJlIGN1w6FuZG8geSBjw7NtbyBoYWdvIGxhcyBhY3RpdmlkYWRlcyBmdWVyYSBkZWwgdHJhYmFqbw0KDQotICAgUkNPMDggLSBQdWVkbyBvcmdhbml6YXIgbWlzIGFjdGl2aWRhZGVzIGZ1ZXJhIGRlbCB0cmFiYWpvIGNvbiBsaWJlcnRhZCAoZWxpbWluYXRlZCkNCg0KIyMjICoqVGlwb3MgZGUgZm9ybXVsYXMqKg0KDQoxLiAgUmVncmVzaW9uIChcfikgOiBWYXJpYWJsZSBxdWUgZGVwZW5kZSBkZSBvdHJhcw0KMi4gIFZhcmlhYmxlcyBMYXRlbnRlcyAoPVx+KSA6IE5vIHNlIG9ic2VydmFuIHNlIGluZmllcmUuDQozLiAgVmFyaWFuemFzIHkgY292YXJpYW56YXMgKFx+XH4pIDogUmVsYWNpb25lcyBlbnRyZSB2YXJpYWJsZXMgbGF0ZW50ZXMgeSBvYnNlcnZhZGFzLih2YXJpYW56YSBlcyBlbnRyZSBsYSB2YXJpYWJsZSBtaXNtYSwgY292YXJpYW56YSBlcyBlbnRyZSBvdHJhcykNCjQuICBJbnRlcmNlcHRvIChcfjEpIDogVmFsb3IgZXNwZXJhZG8gY3VhbmRvIGxhcyBkZW1hcyB2YXJpYWJsZXMgc29uIGNlcm8uKEVzIGxhIGluY2xpbmFjacOzbiBkZSB1bmEgcmVjdGEgeSBzZSBjYWxjdWxhIGJ1c2NhbmRvIGxhIHJhesOzbiBkZWwgY2FtYmlvIGVuIGxhcyBjb29yZGVuYWRhcyB5ICh2YXJpYWNpw7NuIHZlcnRpY2FsKSBhbCBjYW1iaW8gY29ycmVzcG9uZGllbnRlIGVuIGxhcyBjb29yZGVuYWRhcyB4ICh2YXJpYWNpw7NuIGhvcml6b250YWwpLg0KDQoqKlNlZ3VuZG8gb3JkZW4gZXMgb3RyYSBlY3VhY2lvbiBsYXRlbnRlIGRlbnRybyBkZSB1bmFzIGxhdGVudGVzKioNCg0KIyMgKipFc3RydWN0dXJhIGRlbCBtb2RlbG8qKg0KDQpgYGB7cn0NCm1vZGVsb3NlbW0gPC0gJyAjIFJlZ3Jlc2lvbmVzIA0KICAgICAgICAgICAgICMgVmFyaWFibGVzIGxhdGVudGVzDQogICAgICAgICAgICAgZGVzYXBlZ28gID1+IFJQRDAxICsgUlBEMDIgKyBSUEQwMyArIFJQRDA1ICsgUlBEMDYgKyBSUEQwNyArIFJQRDA4ICsgUlBEMDkgKyBSUEQxMA0KICAgICAgICAgICAgIHJlbGFqYWNpb24gPX4gUlJFMDIgKyBSUkUwMyArIFJSRTA0ICsgUlJFMDUgKyBSUkUwNiArIFJSRTA3ICsgUlJFMTANCiAgICAgICAgICAgICBkb21pbmlvID1+IFJNQTAyICsgUk1BMDMgKyBSTUEwNCArIFJNQTA1ICsgUk1BMDYgKyBSTUEwNyArIFJNQTA4ICsgUk1BMDkgKyBSTUExMA0KICAgICAgICAgICAgIGNvbnRyb2wgPX4gUkNPMDIgKyBSQ08wMyArIFJDTzA0ICsgUkNPMDUgKyBSQ08wNiArIFJDTzA3DQogICAgICAgICAgICAgcmVjdXBlcmFjaW9uID1+IGRlc2FwZWdvICsgcmVsYWphY2lvbiArIGRvbWluaW8gKyBjb250cm9sDQogICAgICAgICAgICAgIyBWYXJpYW56YXMgeSBjb3Zhcmlhbnphcw0KICAgICAgICAgICAgICMgSW50ZXJjZXB0byAnDQptb2RlbG9zZW1tDQpgYGANCg0KIyMgKipHZW5lcmFyIGVsIEFuw6FsaXNpcyBGYWN0b3JpYWwgQ29uZmlybWF0b3JpbyAoQ0ZBKSoqDQoNCmBgYHtyfQ0KZml0MiA8LSBjZmEobW9kZWxvc2VtbSwgc2VtbSkNCnN1bW1hcnkoZml0MikNCmxhdmFhblBsb3QoZml0MiwgY29lZj1UUlVFLCBjb3Y9IFRSVUUpDQpgYGANCg0KIyMgKipFc3RydWN0dXJhIGRlbCBtb2RlbG8gZGVwdXJhZG8qKg0KDQpgYGB7cn0NCm1vZGVsb3NlbWRlcHVyYWRvIDwtICcgIyBSZWdyZXNpb25lcyANCiAgICAgICAgICAgICAjIFZhcmlhYmxlcyBsYXRlbnRlcw0KICAgICAgICAgICAgIGRlc2FwZWdvICA9fiBSUEQwMSArIFJQRDAyICsgUlBEMDMgKyBSUEQwNSArIFJQRDA3ICsgUlBEMDggKyBSUEQwOSArIFJQRDEwDQogICAgICAgICAgICAgcmVsYWphY2lvbiA9fiBSUkUwMiArIFJSRTAzICsgUlJFMDQgKyBSUkUwNSArIFJSRTA2ICsgUlJFMDcgDQogICAgICAgICAgICAgZG9taW5pbyA9fiBSTUEwMiArIFJNQTAzICsgUk1BMDQgKyBSTUEwNSArIFJNQTA3ICsgUk1BMDggKyBSTUEwOSArIFJNQTEwDQogICAgICAgICAgICAgY29udHJvbCA9fiBSQ08wMiArIFJDTzAzICsgUkNPMDUgKyBSQ08wNiArIFJDTzA3DQogICAgICAgICAgICAgcmVjdXBlcmFjaW9uID1+IGRlc2FwZWdvICsgcmVsYWphY2lvbiArIGRvbWluaW8gKyBjb250cm9sDQogICAgICAgICAgICAgIyBWYXJpYW56YXMgeSBjb3Zhcmlhbnphcw0KICAgICAgICAgICAgICMgSW50ZXJjZXB0byAnDQptb2RlbG9zZW1kZXB1cmFkbw0KYGBgDQoNCiMjICoqR2VuZXJhciBlbCBBbsOhbGlzaXMgRmFjdG9yaWFsIENvbmZpcm1hdG9yaW8gKENGQSkqKg0KDQpgYGB7cn0NCmZpdDIyIDwtIGNmYShtb2RlbG9zZW1kZXB1cmFkbywgc2VtbSkNCnN1bW1hcnkoZml0MjIpDQpsYXZhYW5QbG90KGZpdDIyLCBjb2VmPVRSVUUsIGNvdj0gVFJVRSkNCmBgYA0KDQojIyAqKlBhcnRlIDIuIEVuZXJnaWEgcmVjdXBlcmFkYSoqDQoNCiMjIyAqKkRpY2Npb25hcmlvKioNCg0KMS4gIEVuZXJnw61hIEVOMDEgLSBTaWVudG8gcXVlIHB1ZGUgY2FyZ2FybWUgZGUgZW5lcmfDrWEuIChlbGltaW5hdGVkKQ0KDQoyLiAgRU4wMiAtIENvbnNpZGVybyBxdWUgbWUgc2llbnRvIGNvbXBsZXRhbWVudGUgcmVjdXBlcmFkbw0KDQozLiAgRU4wMyAtIFNpZW50byBjb24gbGEgZW5lcmfDrWEgc3VmaWNpZW50ZSBwYXJhIHVuIG51ZXZvIGTDrWENCg0KNC4gIEVOMDQgLSBNZSBzaWVudG8gcmVub3ZhZG8vYQ0KDQo1LiAgRU4wNSAtIExvZ3LDqSByZWN1cGVyYXIgbWkgZW5lcmfDrWENCg0KNi4gIEVOMDYgLSBQdWRlIGRlc2NhbnNhciBsbyBzdWZpY2llbnRlIHBhcmEgcmUtZW5lcmdldGl6YXJtZQ0KDQo3LiAgRU4wNyAtIE1lIHNpZW50byBjb21vIG51ZXZvL2ENCg0KOC4gIEVOMDggLSBSZWN1cGVyw6kgbWlzIG5pdmVsZXMgZGUgZW5lcmfDrWEgcGFyYSB0cmFiYWphcg0KDQo5LiAgRU4wOSAtIE1lIHNpZW50byByZWNvbnN0aXR1aWRvIGRlc3B1w6lzIGRlIGFsZWphcm1lIGRlbCB0cmFiYWpvKGVsaW1pbmF0ZWQpDQoNCjEwLiBFTjEwIC0gQ2FkYSBkw61hIGVzIHVuYSBudWV2YSBvcG9ydHVuaWRhZCBwYXJhIGVtcGV6YXIgKGVsaW1pbmF0ZWQpDQoNCiMjICoqRXN0cnVjdHVyYSBkZWwgbW9kZWxvKioNCg0KYGBge3J9DQptb2RlbG9lbiA8LSAnICMgUmVncmVzaW9uZXMgDQogICAgICAgICAgICAgIyBWYXJpYWJsZXMgbGF0ZW50ZXMNCiAgICAgICAgICAgICBlbmVyZ2lhICA9fiBFTjAxICsgRU4wMiArIEVOMDQgKyBFTjA1ICsgRU4wNiArIEVOMDcgKyBFTjA4IA0KICAgICAgICAgICAgICMgVmFyaWFuemFzIHkgY292YXJpYW56YXMNCiAgICAgICAgICAgICAjIEludGVyY2VwdG8gJw0KbW9kZWxvZW4NCmBgYA0KDQojIyAqKkdlbmVyYXIgZWwgQW7DoWxpc2lzIEZhY3RvcmlhbCBDb25maXJtYXRvcmlvIChDRkEpKioNCg0KVGVzdCBzdGF0aXN0aWMgZW50cmUgbWFzIGFsdG8gbWVqb3INCg0KYGBge3J9DQpmaXQzIDwtIGNmYShtb2RlbG9lbiwgc2VtbSkNCnN1bW1hcnkoZml0MykNCmxhdmFhblBsb3QoZml0MywgY29lZj1UUlVFLCBjb3Y9IFRSVUUpDQpgYGANCg0KRGVzcHVlcyBkZSBldmFsdWFyIGxvcyB2YWxvcmVzIGVzdGltYWRvcywgbG9zIGVycm9yZXMgZXN0YW5kYXIgeSBlbCBwLXZhbHVlLCBkZXRlcm1pbmFtb3MgaW5uZWNlc2FyaW8gZGVwdXJhciBlbCBtb2RlbG8uDQoNCiMjICoqUGFydGUgMy4gRW5nYWdlbWVudCBMYWJvcmFsKioNCg0KIyMjICpEaWNjaW9uYXJpbyoNCg0KVmlnb3INCg0KMS4gIEVWSTAxIC0gRW4gbWkgdHJhYmFqbyBtZSBzaWVudG8gbGxlbm8gZGUgZW5lcmfDrWENCg0KMi4gIEVWSTAyIC0gU295IGZ1ZXJ0ZSB5IHZpZ29yb3NvIGVuIG1pIHRyYWJham8NCg0KMy4gICBFVkkwMyAtIEN1YW5kbyBtZSBsZXZhbnRvIHBvciBsYXMgbWHDsWFuYXMgdGVuZ28gZ2FuYXMgZGUgaXIgYSB0cmFiYWphciBEZWRpY2FjacOzbg0KDQo0LiAgRURFMDEgLSBFc3RveSBlbnR1c2lhc21hZG8gY29uIG1pIHRyYWJham8NCg0KNS4gIEVERTAyIC0gTWkgdHJhYmFqbyBtZSBpbnNwaXJhDQoNCjYuICBFREUwMyAtIEVzdG95IG9yZ3VsbG9zbyBkZWwgdHJhYmFqbyBxdWUgaGFnbyBBYnNvcmNpw7NuDQoNCjcuICBFQUIwMSAtIFNveSBmZWxpeiBjdWFuZG8gZXN0b3kgYWJzb3J0byBlbiBtaSB0cmFiYWpvDQoNCjguICBFQUIwMiAtIEVzdG95IGlubWVyc28gZW4gbWkgdHJhYmFqbw0KDQo5LiAgIEVBQjAzIC0gTWUg4oCcZGVqbyBsbGV2YXLigJ0gcG9yIG1pIHRyYWJham8NCg0KYGBge3J9DQptb2RlbG8zIDwtICcgIyBSZWdyZXNpb25lcyANCiAgICAgICAgICAgICAjIFZhcmlhYmxlcyBsYXRlbnRlcyAxDQogICAgICAgICAgICAgZGVzYXBlZ28gID1+IFJQRDAxICsgUlBEMDIgKyBSUEQwMyArIFJQRDA1ICsgUlBEMDYgKyBSUEQwNyArIFJQRDA4ICsgUlBEMDkgKyBSUEQxMA0KICAgICAgICAgICAgIHJlbGFqYWNpb24gPX4gUlJFMDIgKyBSUkUwMyArIFJSRTA0ICsgUlJFMDUgKyBSUkUwNiArIFJSRTA3ICsgUlJFMTANCiAgICAgICAgICAgICBkb21pbmlvID1+IFJNQTAyICsgUk1BMDMgKyBSTUEwNCArIFJNQTA1ICsgUk1BMDYgKyBSTUEwNyArIFJNQTA4ICsgUk1BMDkgKyBSTUExMA0KICAgICAgICAgICAgIGNvbnRyb2wgPX4gUkNPMDIgKyBSQ08wMyArIFJDTzA0ICsgUkNPMDUgKyBSQ08wNiArIFJDTzA3DQogICAgICAgICAgICAgcmVjdXBlcmFjaW9uID1+IGRlc2FwZWdvICsgcmVsYWphY2lvbiArIGRvbWluaW8gKyBjb250cm9sDQogICAgICAgICAgICAgDQogICAgICAgICAgICAgIyBWYXJpYWJsZXMgbGF0ZW50ZXMgMg0KICAgICAgICAgICAgICBlbmVyZ2lhICA9fiBFTjAxICsgRU4wMiArIEVOMDQgKyBFTjA1ICsgRU4wNiArIEVOMDcgKyBFTjA4IA0KICAgICAgICAgICAgICANCiAgICAgICAgICAgICAjIFZhcmlhYmxlcyBsYXRlbnRlcyAzDQogICAgICAgICAgICAgdmlnb3IgPX4gRVZJMDEgKyBFVkkwMSArIEVWSTAzDQogICAgICAgICAgICAgZGVkaWNhY2lvbiA9fiBFREUwMSArIEVERTAyICsgRURFMDMNCiAgICAgICAgICAgICBhYnNvcmNpb24gPX4gRUFCMDEgKyBFQUIwMg0KICAgICAgICAgICAgIGVuZ2FnZW1lbnQgPX4gdmlnb3IgKyBkZWRpY2FjaW9uICsgYWJzb3JjaW9uDQogICAgICAgICAgICANCiAgICAgICAgICAgICAjIFZhcmlhbnphcyB5IGNvdmFyaWFuemFzDQogICAgICAgICAgICAgZW5nYWdlbWVudCAgfn4gZW5lcmdpYSArIHJlY3VwZXJhY2lvbg0KICAgICAgICAgICAgICMgSW50ZXJjZXB0byAnDQptb2RlbG8zDQpgYGANCg0KIyMgKipHZW5lcmFyIGVsIEFuw6FsaXNpcyBGYWN0b3JpYWwgQ29uZmlybWF0b3JpbyAoQ0ZBKSoqDQoNCmBgYHtyfQ0KZml0MzQgPC0gc2VtKG1vZGVsbzMsIHNlbW0pDQpzdW1tYXJ5KGZpdDM0KQ0KbGF2YWFuUGxvdChmaXQzNCwgY29lZj1UUlVFLCBjb3Y9IFRSVUUpDQpgYGANCg==