Preguntas parte 1: (30 puntos) Utilice el conjunto de datos “chicago” disponibles en la librerıa
“faraway”. Considere Y = involact como variable respuesta, todas las dem ́as ser ́an variables explica-
tivas.

1. Realizar una an ́alisis descriptivo de las variables de la base de datos. Debe incluir indicadores y
gráficas.

# Cargar la librería necesaria
library(faraway)

#Obtención informacion de dataset chicago
?faraway::chicago

# Cargar el conjunto de datos
data(chicago)

head(chicago, n=10)

# Obtener un resumen estadístico de las variables
summary(chicago)
      race            fire           theft             age            volact         involact          income     
 Min.   : 1.00   Min.   : 2.00   Min.   :  3.00   Min.   : 2.00   Min.   : 0.50   Min.   :0.0000   Min.   : 5583  
 1st Qu.: 3.75   1st Qu.: 5.65   1st Qu.: 22.00   1st Qu.:48.60   1st Qu.: 3.10   1st Qu.:0.0000   1st Qu.: 8447  
 Median :24.50   Median :10.40   Median : 29.00   Median :65.00   Median : 5.90   Median :0.4000   Median :10694  
 Mean   :34.99   Mean   :12.28   Mean   : 32.36   Mean   :60.33   Mean   : 6.53   Mean   :0.6149   Mean   :10696  
 3rd Qu.:57.65   3rd Qu.:16.05   3rd Qu.: 38.00   3rd Qu.:77.30   3rd Qu.: 9.65   3rd Qu.:0.9000   3rd Qu.:11989  
 Max.   :99.70   Max.   :39.70   Max.   :147.00   Max.   :90.10   Max.   :14.30   Max.   :2.2000   Max.   :21480  
# Ver los nombres de las variables en el conjunto de datos
names(chicago)
[1] "race"     "fire"     "theft"    "age"      "volact"   "involact" "income"  
# O usar str() para ver la estructura del conjunto de datos
str(chicago)
'data.frame':   47 obs. of  7 variables:
 $ race    : num  10 22.2 19.6 17.3 24.5 54 4.9 7.1 5.3 21.5 ...
 $ fire    : num  6.2 9.5 10.5 7.7 8.6 34.1 11 6.9 7.3 15.1 ...
 $ theft   : num  29 44 36 37 53 68 75 18 31 25 ...
 $ age     : num  60.4 76.5 73.5 66.9 81.4 52.6 42.6 78.5 90.1 89.8 ...
 $ volact  : num  5.3 3.1 4.8 5.7 5.9 4 7.9 6.9 7.6 3.1 ...
 $ involact: num  0 0.1 1.2 0.5 0.7 0.3 0 0 0.4 1.1 ...
 $ income  : num  11744 9323 9948 10656 9730 ...
# Crear gráficas
# Histograma para la variable target del dataset
hist(chicago$involact)



# Diagrama de dispersión para todas las variables
plot(chicago)


# Diagrama de dispersión para dos variables numéricas
plot(chicago$age, chicago$involact)


#Generamos gráfico de dispersión para la data Chicago
ggplot(chicago, aes(x=fire, y=involact)) + geom_point()

ggplot(chicago, aes(x=fire)) + geom_histogram(binwidth=1)

2. Utilizando alguno de los criterios de selección de variables, determine el modelo lineal que mejor ajusta a la variable respuesta. Indique el criterio utilizado

# Fit all possible linear models using the lm function
model1 <- lm(involact ~ ., data = chicago)

# Print the summary of the best model based on AIC
summary(model1)

Call:
lm(formula = involact ~ ., data = chicago)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.84296 -0.14613 -0.01007  0.18386  0.81235 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -4.862e-01  6.020e-01  -0.808 0.424109    
race         8.527e-03  2.863e-03   2.978 0.004911 ** 
fire         3.778e-02  8.982e-03   4.206 0.000142 ***
theft       -1.016e-02  2.908e-03  -3.494 0.001178 ** 
age          7.615e-03  3.330e-03   2.287 0.027582 *  
volact      -1.018e-02  2.773e-02  -0.367 0.715519    
income       2.568e-05  3.220e-05   0.798 0.429759    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3387 on 40 degrees of freedom
Multiple R-squared:  0.7517,    Adjusted R-squared:  0.7144 
F-statistic: 20.18 on 6 and 40 DF,  p-value: 1.072e-10
# Ajustar un modelo lineal con criterio de selección por AIC
model2 <- step(lm(involact ~ . , data = chicago), direction = "both", trace = 1000)
Start:  AIC=-95.34
involact ~ race + fire + theft + age + volact + income

         Df Sum of Sq    RSS     AIC
- volact  1   0.01546 4.6047 -97.184
- income  1   0.07300 4.6622 -96.601
<none>                4.5892 -95.342
- age     1   0.59993 5.1892 -91.568
- race    1   1.01743 5.6067 -87.931
- theft   1   1.40048 5.9897 -84.825
- fire    1   2.02990 6.6191 -80.129

Step:  AIC=-97.18
involact ~ race + fire + theft + age + income

         Df Sum of Sq    RSS     AIC
- income  1   0.06710 4.6718 -98.504
<none>                4.6047 -97.184
+ volact  1   0.01546 4.5892 -95.342
- age     1   0.99296 5.5977 -90.007
- theft   1   1.46328 6.0680 -86.215
- race    1   1.74657 6.3513 -84.070
- fire    1   2.37807 6.9828 -79.615

Step:  AIC=-98.5
involact ~ race + fire + theft + age

         Df Sum of Sq    RSS     AIC
<none>                4.6718 -98.504
+ income  1   0.06710 4.6047 -97.184
+ volact  1   0.00955 4.6622 -96.601
- age     1   0.99734 5.6691 -91.410
- theft   1   1.41436 6.0862 -88.074
- race    1   2.05375 6.7256 -83.379
- fire    1   2.38365 7.0554 -81.128
# Ajustar un modelo lineal con criterio de selección por AIC
model3 <- step(lm(involact ~ . , data = chicago), trace = 0, k=log(length(chicago$involact)))

# Imprimir los resultados del modelo ajustado
summary(model3)

Call:
lm(formula = involact ~ race + fire + theft + age, data = chicago)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.87108 -0.14830 -0.01961  0.19968  0.81638 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -0.243118   0.145054  -1.676 0.101158    
race         0.008104   0.001886   4.297 0.000100 ***
fire         0.036646   0.007916   4.629 3.51e-05 ***
theft       -0.009592   0.002690  -3.566 0.000921 ***
age          0.007210   0.002408   2.994 0.004595 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3335 on 42 degrees of freedom
Multiple R-squared:  0.7472,    Adjusted R-squared:  0.7231 
F-statistic: 31.03 on 4 and 42 DF,  p-value: 4.799e-12

3. Analice la significancia del modelo obtenido luego del proceso de selección, y responda si:

```r
anova(model1)
```
```
Analysis of Variance Table

Response: involact
          Df Sum Sq Mean Sq F value    Pr(>F)    
race       1 9.4143  9.4143 82.0556 3.087e-11 ***
fire       1 2.2326  2.2326 19.4597 7.556e-05 ***
theft      1 1.1635  1.1635 10.1409  0.002808 ** 
age        1 0.9973  0.9973  8.6929  0.005312 ** 
volact     1 0.0096  0.0096  0.0833  0.774414    
income     1 0.0730  0.0730  0.6363  0.429759    
Residuals 40 4.5892  0.1147                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
```
```r
anova(model2)
```
```
Analysis of Variance Table

Response: involact
          Df Sum Sq Mean Sq F value    Pr(>F)    
race       1 9.4143  9.4143 84.6358 1.274e-11 ***
fire       1 2.2326  2.2326 20.0716 5.645e-05 ***
theft      1 1.1635  1.1635 10.4598  0.002379 ** 
age        1 0.9973  0.9973  8.9662  0.004595 ** 
Residuals 42 4.6718  0.1112                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
```
```r
anova(model3)
```
```
Analysis of Variance Table

Response: involact
          Df Sum Sq Mean Sq F value    Pr(>F)    
race       1 9.4143  9.4143 84.6358 1.274e-11 ***
fire       1 2.2326  2.2326 20.0716 5.645e-05 ***
theft      1 1.1635  1.1635 10.4598  0.002379 ** 
age        1 0.9973  0.9973  8.9662  0.004595 ** 
Residuals 42 4.6718  0.1112                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
```

4. Fijar al menos 5 valores para las covariables del modelo y con ellas realizar la predicci ́on de la
media y la predicci ́on individual de la variable objetivo (incluir los intervalos de confianza).

# Fit the linear regression model
model <- lm(involact ~ ., data = chicago)

summary(model)

Call:
lm(formula = involact ~ ., data = chicago)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.84296 -0.14613 -0.01007  0.18386  0.81235 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -4.862e-01  6.020e-01  -0.808 0.424109    
race         8.527e-03  2.863e-03   2.978 0.004911 ** 
fire         3.778e-02  8.982e-03   4.206 0.000142 ***
theft       -1.016e-02  2.908e-03  -3.494 0.001178 ** 
age          7.615e-03  3.330e-03   2.287 0.027582 *  
volact      -1.018e-02  2.773e-02  -0.367 0.715519    
income       2.568e-05  3.220e-05   0.798 0.429759    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3387 on 40 degrees of freedom
Multiple R-squared:  0.7517,    Adjusted R-squared:  0.7144 
F-statistic: 20.18 on 6 and 40 DF,  p-value: 1.072e-10
# Set values for the covariates
new_data <- data.frame( age =c(18.0, 23.0, 28.0, 56.0, 40.0),
                        race = c(15.0, 22.0, 35.0, 44.0, 60.0),
                       theft = c(5.0, 16.0, 20.0, 15.0, 22.0),
                       volact =c(5.0, 7.0 , 9.0, 10.0, 9.0),
                       income= c(6000.0, 6500.0, 7800.0, 7200.0, 8800.0),
                       fire = c(4.0, 15.0, 24.0, 30.0, 22.0),
                       involact = c(0.23,0.43,0.65,0.77,0.45))

model_new <- lm(involact ~ ., data = new_data)

summary(model_new)

Call:
lm(formula = involact ~ ., data = new_data)

Residuals:
ALL 5 residuals are 0: no residual degrees of freedom!

Coefficients: (2 not defined because of singularities)
             Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.472708        NaN     NaN      NaN
age         -0.001310        NaN     NaN      NaN
race        -0.006684        NaN     NaN      NaN
theft       -0.008587        NaN     NaN      NaN
volact       0.173896        NaN     NaN      NaN
income             NA         NA      NA       NA
fire               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 4 and 0 DF,  p-value: NA
# Make predictions for the mean and individual values
mean_pred <- predict(model, newdata = new_data, interval = 'confidence')
indiv_pred <- predict(model, newdata = new_data, interval = 'prediction')

# Print the results
print(mean_pred)
          fit         lwr       upr
1 -0.01768718 -0.62262004 0.5872457
2  0.37638419 -0.07781537 0.8305838
3  0.83772323  0.45078257 1.2246639
4  1.37958497  0.88262419 1.8765458
5  1.07209165  0.74534069 1.3988426
print(indiv_pred)
          fit         lwr       upr
1 -0.01768718 -0.93124662 0.8958723
2  0.37638419 -0.44516576 1.1979341
3  0.83772323  0.05135807 1.6240884
4  1.37958497  0.53364342 2.2255265
5  1.07209165  0.31353165 1.8306517
# Comparación de modelos según explicación
summary(reg1)

Call:
lm(formula = O3 ~ ., data = ozone)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.1011  -2.9289  -0.2715   2.7080  13.3687 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) 20.3135755 29.5193067   0.688  0.49186    
vh          -0.0054271  0.0053985  -1.005  0.31551    
wind        -0.0545832  0.1348425  -0.405  0.68590    
humidity     0.0809741  0.0188394   4.298 2.29e-05 ***
temp         0.2755492  0.0497912   5.534 6.52e-08 ***
ibh         -0.0002338  0.0002956  -0.791  0.42944    
dpg         -0.0033629  0.0112805  -0.298  0.76581    
ibt          0.0296411  0.0136088   2.178  0.03013 *  
vis         -0.0079910  0.0037503  -2.131  0.03387 *  
doy         -0.0091194  0.0027745  -3.287  0.00113 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.441 on 320 degrees of freedom
Multiple R-squared:  0.7012,    Adjusted R-squared:  0.6927 
F-statistic: 83.42 on 9 and 320 DF,  p-value: < 2.2e-16
summary(reg2)

Call:
lm(formula = O3 ~ wind + temp + humidity, data = ozone)

Residuals:
    Min      1Q  Median      3Q     Max 
-10.307  -3.180  -0.366   2.873  15.335 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -16.73118    1.33189 -12.562  < 2e-16 ***
wind         -0.15890    0.12785  -1.243    0.215    
temp          0.39128    0.01941  20.161  < 2e-16 ***
humidity      0.08797    0.01449   6.071 3.53e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.767 on 326 degrees of freedom
Multiple R-squared:  0.6492,    Adjusted R-squared:  0.646 
F-statistic: 201.1 on 3 and 326 DF,  p-value: < 2.2e-16
anova(reg2, reg1)
Analysis of Variance Table

Model 1: O3 ~ wind + temp + humidity
Model 2: O3 ~ vh + wind + humidity + temp + ibh + dpg + ibt + vis + doy
  Res.Df    RSS Df Sum of Sq      F    Pr(>F)    
1    326 7407.0                                  
2    320 6310.3  6    1096.8 9.2696 2.248e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# seleccion de modelos automatizado
mod1.step0=step(reg1) # backward por AIC
Start:  AIC=993.78
O3 ~ vh + wind + humidity + temp + ibh + dpg + ibt + vis + doy

           Df Sum of Sq    RSS     AIC
- dpg       1      1.75 6312.0  991.87
- wind      1      3.23 6313.5  991.95
- ibh       1     12.34 6322.6  992.42
- vh        1     19.93 6330.2  992.82
<none>                  6310.3  993.78
- vis       1     89.53 6399.8  996.43
- ibt       1     93.55 6403.8  996.63
- doy       1    213.04 6523.3 1002.74
- humidity  1    364.30 6674.6 1010.30
- temp      1    603.94 6914.2 1021.94

Step:  AIC=991.87
O3 ~ vh + wind + humidity + temp + ibh + ibt + vis + doy

           Df Sum of Sq    RSS     AIC
- wind      1      3.75 6315.8  990.07
- ibh       1     11.15 6323.2  990.45
- vh        1     19.28 6331.3  990.88
<none>                  6312.0  991.87
- vis       1     89.85 6401.9  994.53
- ibt       1    122.86 6434.9  996.23
- doy       1    211.85 6523.9 1000.76
- humidity  1    475.74 6787.8 1013.85
- temp      1    755.99 7068.0 1027.20

Step:  AIC=990.07
O3 ~ vh + humidity + temp + ibh + ibt + vis + doy

           Df Sum of Sq    RSS     AIC
- ibh       1     14.91 6330.7  988.84
- vh        1     16.61 6332.4  988.93
<none>                  6315.8  990.07
- vis       1     94.54 6410.3  992.97
- ibt       1    120.10 6435.9  994.28
- doy       1    211.28 6527.1  998.93
- humidity  1    479.79 6795.6 1012.23
- temp      1    756.65 7072.4 1025.41

Step:  AIC=988.84
O3 ~ vh + humidity + temp + ibt + vis + doy

           Df Sum of Sq    RSS     AIC
- vh        1     28.99 6359.7  988.35
<none>                  6330.7  988.84
- vis       1    103.89 6434.6  992.22
- doy       1    267.47 6598.2 1000.50
- ibt       1    521.66 6852.4 1012.97
- humidity  1    538.82 6869.5 1013.80
- temp      1    820.77 7151.5 1027.07

Step:  AIC=988.35
O3 ~ humidity + temp + ibt + vis + doy

           Df Sum of Sq    RSS     AIC
<none>                  6359.7  988.35
- vis       1     96.83 6456.5  991.34
- doy       1    341.33 6701.0 1003.60
- ibt       1    531.82 6891.5 1012.85
- humidity  1    690.57 7050.3 1020.37
- temp      1    817.49 7177.2 1026.26
mod1.step1=step(reg1, k=log(length(ozone$O3))) # backward por BIC
Start:  AIC=1031.77
O3 ~ vh + wind + humidity + temp + ibh + dpg + ibt + vis + doy

           Df Sum of Sq    RSS    AIC
- dpg       1      1.75 6312.0 1026.1
- wind      1      3.23 6313.5 1026.1
- ibh       1     12.34 6322.6 1026.6
- vh        1     19.93 6330.2 1027.0
- vis       1     89.53 6399.8 1030.6
- ibt       1     93.55 6403.8 1030.8
<none>                  6310.3 1031.8
- doy       1    213.04 6523.3 1036.9
- humidity  1    364.30 6674.6 1044.5
- temp      1    603.94 6914.2 1056.1

Step:  AIC=1026.06
O3 ~ vh + wind + humidity + temp + ibh + ibt + vis + doy

           Df Sum of Sq    RSS    AIC
- wind      1      3.75 6315.8 1020.5
- ibh       1     11.15 6323.2 1020.9
- vh        1     19.28 6331.3 1021.3
- vis       1     89.85 6401.9 1024.9
<none>                  6312.0 1026.1
- ibt       1    122.86 6434.9 1026.6
- doy       1    211.85 6523.9 1031.2
- humidity  1    475.74 6787.8 1044.2
- temp      1    755.99 7068.0 1057.6

Step:  AIC=1020.46
O3 ~ vh + humidity + temp + ibh + ibt + vis + doy

           Df Sum of Sq    RSS    AIC
- ibh       1     14.91 6330.7 1015.4
- vh        1     16.61 6332.4 1015.5
- vis       1     94.54 6410.3 1019.6
<none>                  6315.8 1020.5
- ibt       1    120.10 6435.9 1020.9
- doy       1    211.28 6527.1 1025.5
- humidity  1    479.79 6795.6 1038.8
- temp      1    756.65 7072.4 1052.0

Step:  AIC=1015.44
O3 ~ vh + humidity + temp + ibt + vis + doy

           Df Sum of Sq    RSS    AIC
- vh        1     28.99 6359.7 1011.1
- vis       1    103.89 6434.6 1015.0
<none>                  6330.7 1015.4
- doy       1    267.47 6598.2 1023.3
- ibt       1    521.66 6852.4 1035.8
- humidity  1    538.82 6869.5 1036.6
- temp      1    820.77 7151.5 1049.9

Step:  AIC=1011.15
O3 ~ humidity + temp + ibt + vis + doy

           Df Sum of Sq    RSS    AIC
- vis       1     96.83 6456.5 1010.3
<none>                  6359.7 1011.1
- doy       1    341.33 6701.0 1022.6
- ibt       1    531.82 6891.5 1031.8
- humidity  1    690.57 7050.3 1039.4
- temp      1    817.49 7177.2 1045.2

Step:  AIC=1010.33
O3 ~ humidity + temp + ibt + doy

           Df Sum of Sq    RSS    AIC
<none>                  6456.5 1010.3
- doy       1    292.59 6749.1 1019.2
- ibt       1    709.75 7166.3 1039.0
- temp      1    771.17 7227.7 1041.8
- humidity  1   1035.22 7491.8 1053.6
mod1.step2=step(reg2, scope=list(lower=reg2, upper=reg1), direction="both") # ambos
Start:  AIC=1034.66
O3 ~ wind + temp + humidity

       Df Sum of Sq    RSS    AIC
+ ibh   1    735.40 6671.6 1002.1
+ ibt   1    659.81 6747.2 1005.9
+ doy   1    350.86 7056.2 1020.6
+ vis   1    160.33 7246.7 1029.4
+ dpg   1     84.87 7322.2 1032.9
<none>              7407.0 1034.7
+ vh    1      9.39 7397.7 1036.2

Step:  AIC=1002.15
O3 ~ wind + temp + humidity + ibh

       Df Sum of Sq    RSS     AIC
+ doy   1    130.06 6541.6  997.66
+ vis   1     66.60 6605.0 1000.84
+ ibt   1     61.46 6610.2 1001.10
<none>              6671.6 1002.15
+ dpg   1     10.15 6661.5 1003.65
+ vh    1      0.03 6671.6 1004.15
- ibh   1    735.40 7407.0 1034.66

Step:  AIC=997.66
O3 ~ wind + temp + humidity + ibh + doy

       Df Sum of Sq    RSS     AIC
+ ibt   1    125.94 6415.6  993.24
+ vis   1    104.59 6437.0  994.34
+ dpg   1     40.48 6501.1  997.61
<none>              6541.6  997.66
+ vh    1      6.67 6534.9  999.32
- doy   1    130.06 6671.6 1002.15
- ibh   1    514.61 7056.2 1020.65

Step:  AIC=993.24
O3 ~ wind + temp + humidity + ibh + doy + ibt

       Df Sum of Sq    RSS     AIC
+ vis   1    84.321 6331.3  990.88
- ibh   1    30.844 6446.5  992.82
<none>              6415.6  993.24
+ vh    1    13.748 6401.9  994.53
+ dpg   1     1.449 6414.2  995.17
- ibt   1   125.944 6541.6  997.66
- doy   1   194.549 6610.2 1001.10

Step:  AIC=990.88
O3 ~ wind + temp + humidity + ibh + doy + ibt + vis

       Df Sum of Sq    RSS     AIC
- ibh   1    24.783 6356.1  990.17
<none>              6331.3  990.88
+ vh    1    19.277 6312.0  991.87
+ dpg   1     1.101 6330.2  992.82
- vis   1    84.321 6415.6  993.24
- ibt   1   105.670 6437.0  994.34
- doy   1   227.624 6558.9 1000.53

Step:  AIC=990.17
O3 ~ wind + temp + humidity + doy + ibt + vis

       Df Sum of Sq    RSS     AIC
<none>              6356.1  990.17
+ vh    1     32.91 6323.2  990.45
+ ibh   1     24.78 6331.3  990.88
+ dpg   1      0.00 6356.1  992.17
- vis   1     90.38 6446.5  992.82
- doy   1    338.35 6694.4 1005.28
- ibt   1    480.79 6836.9 1012.23
# analisis de multicolinealidad
vif(ozone[,-1]) # no se considera la variable objetivo
       vh      wind  humidity      temp       ibh       dpg       ibt       vis       doy 
 5.433339  1.359493  2.336734  8.646941  4.742458  2.708380 18.167487  1.477973  1.399167 
vif(ozone[,-c(1,8)])
      vh     wind humidity     temp      ibh      dpg      vis      doy 
4.371083 1.340957 2.332862 4.608365 1.868366 2.290083 1.475888 1.388378 
cor(ozone[,-8])
                   O3          vh         wind    humidity         temp         ibh        dpg        vis         doy
O3        1.000000000  0.60734379  0.002471078  0.44922399  0.780702835 -0.58953415  0.2140464 -0.4409895  0.06763357
vh        0.607343794  1.00000000 -0.225820526  0.07448508  0.808058890 -0.50483503 -0.1480705 -0.3600802  0.33787912
wind      0.002471078 -0.22582053  1.000000000  0.22286832 -0.005885934  0.19674570  0.3419509  0.1277023 -0.25112456
humidity  0.449223990  0.07448508  0.222868318  1.00000000  0.340474212 -0.24232766  0.6477889 -0.4010085  0.04126119
temp      0.780702835  0.80805889 -0.005885934  0.34047421  1.000000000 -0.53264472  0.1892419 -0.3877210  0.23933504
ibh      -0.589534148 -0.50483503  0.196745705 -0.24232766 -0.532644723  1.00000000  0.0370779  0.3866858  0.04260315
dpg       0.214046394 -0.14807054  0.341950922  0.64778894  0.189241917  0.03707790  1.0000000 -0.1258547 -0.15274230
vis      -0.440989465 -0.36008025  0.127702305 -0.40100846 -0.387721044  0.38668582 -0.1258547  1.0000000 -0.21770068
doy       0.067633574  0.33787912 -0.251124564  0.04126119  0.239335037  0.04260315 -0.1527423 -0.2177007  1.00000000
reg0=lm(O3~temp+humidity, data=ozone[,-8])
reg3=lm(O3~., data=ozone[,-8])
mod1.step3=step(reg0, scope=list(lower=reg0, upper=reg3), direction="both") # ambos
Start:  AIC=1034.22
O3 ~ temp + humidity

       Df Sum of Sq    RSS    AIC
+ ibh   1    769.08 6673.1 1000.2
+ doy   1    275.86 7166.3 1023.8
+ vis   1    187.11 7255.0 1027.8
+ dpg   1    109.15 7333.0 1031.3
<none>              7442.1 1034.2
+ wind  1     35.10 7407.0 1034.7
+ vh    1     22.98 7419.2 1035.2

Step:  AIC=1000.22
O3 ~ temp + humidity + ibh

       Df Sum of Sq    RSS     AIC
+ doy   1    124.92 6548.2  995.99
+ vis   1     60.94 6612.1  999.20
<none>              6673.1 1000.22
+ dpg   1      8.23 6664.8 1001.82
+ wind  1      1.42 6671.6 1002.15
+ vh    1      0.25 6672.8 1002.21
- ibh   1    769.08 7442.1 1034.22

Step:  AIC=995.99
O3 ~ temp + humidity + ibh + doy

       Df Sum of Sq    RSS     AIC
+ vis   1    109.48 6438.7  992.43
+ dpg   1     43.88 6504.3  995.77
<none>              6548.2  995.99
+ vh    1      9.34 6538.8  997.52
+ wind  1      6.57 6541.6  997.66
- doy   1    124.92 6673.1 1000.22
- ibh   1    618.13 7166.3 1023.76

Step:  AIC=992.43
O3 ~ temp + humidity + ibh + doy + vis

       Df Sum of Sq    RSS     AIC
<none>              6438.7  992.43
+ dpg   1     34.37 6404.3  992.66
+ vh    1      2.78 6435.9  994.28
+ wind  1      1.69 6437.0  994.34
- vis   1    109.48 6548.2  995.99
- doy   1    173.46 6612.1  999.20
- ibh   1    452.84 6891.5 1012.85
# comparación de modelos
summary(mod1.step0)

Call:
lm(formula = O3 ~ humidity + temp + ibt + vis + doy, data = ozone)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.2499  -3.0600  -0.1662   2.8773  13.2690 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -10.017861   1.653058  -6.060 3.78e-09 ***
humidity      0.085101   0.014347   5.931 7.70e-09 ***
temp          0.232806   0.036074   6.454 3.98e-10 ***
ibt           0.034913   0.006707   5.205 3.45e-07 ***
vis          -0.008201   0.003692  -2.221    0.027 *  
doy          -0.010197   0.002445  -4.170 3.91e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.43 on 324 degrees of freedom
Multiple R-squared:  0.6988,    Adjusted R-squared:  0.6942 
F-statistic: 150.3 on 5 and 324 DF,  p-value: < 2.2e-16
summary(mod1.step1)

Call:
lm(formula = O3 ~ humidity + temp + ibt + doy, data = ozone)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.0766  -3.2887  -0.1914   2.9635  13.1982 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -12.067079   1.379914  -8.745  < 2e-16 ***
humidity      0.096852   0.013417   7.219 3.74e-12 ***
temp          0.225055   0.036122   6.230 1.44e-09 ***
ibt           0.038879   0.006505   5.977 5.97e-09 ***
doy          -0.009316   0.002428  -3.838 0.000149 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.457 on 325 degrees of freedom
Multiple R-squared:  0.6942,    Adjusted R-squared:  0.6905 
F-statistic: 184.5 on 4 and 325 DF,  p-value: < 2.2e-16
summary(mod1.step2)

Call:
lm(formula = O3 ~ wind + temp + humidity + doy + ibt + vis, data = ozone)

Residuals:
     Min       1Q   Median       3Q      Max 
-12.0063  -3.1273  -0.1615   2.8612  13.3120 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -9.902115   1.677129  -5.904 8.97e-09 ***
wind        -0.055275   0.129250  -0.428   0.6692    
temp         0.236255   0.037009   6.384 6.01e-10 ***
humidity     0.086509   0.014738   5.870 1.08e-08 ***
doy         -0.010455   0.002521  -4.147 4.32e-05 ***
ibt          0.034201   0.006919   4.943 1.24e-06 ***
vis         -0.007992   0.003729  -2.143   0.0329 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.436 on 323 degrees of freedom
Multiple R-squared:  0.699, Adjusted R-squared:  0.6934 
F-statistic:   125 on 6 and 323 DF,  p-value: < 2.2e-16
summary(mod1.step3)

Call:
lm(formula = O3 ~ temp + humidity + ibh + doy + vis, data = ozone[, 
    -8])

Residuals:
     Min       1Q   Median       3Q      Max 
-11.1490  -2.9319  -0.2593   2.8726  13.9644 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -8.4291160  1.7993446  -4.685 4.14e-06 ***
temp         0.3418561  0.0219260  15.591  < 2e-16 ***
humidity     0.0661840  0.0139041   4.760 2.92e-06 ***
ibh         -0.0008155  0.0001708  -4.774 2.74e-06 ***
doy         -0.0075031  0.0025396  -2.954  0.00336 ** 
vis         -0.0087056  0.0037090  -2.347  0.01952 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.458 on 324 degrees of freedom
Multiple R-squared:  0.6951,    Adjusted R-squared:  0.6904 
F-statistic: 147.7 on 5 and 324 DF,  p-value: < 2.2e-16
# Diagnostico

shapiro.test(reg1$residuals)

    Shapiro-Wilk normality test

data:  reg1$residuals
W = 0.99687, p-value = 0.7751
shapiro.test(reg2$residuals)

    Shapiro-Wilk normality test

data:  reg2$residuals
W = 0.98852, p-value = 0.01046
qqnorm(reg1$residuals, pch=20); qqline(reg1$residuals, col=2, lwd=2)

qqnorm(reg2$residuals, pch=20); qqline(reg2$residuals, col=2, lwd=2)


qqnorm(ozone$O3)

Preguntas parte 2: (30 puntos) Utilice el conjunto de datos "wbca" disponibles en la libreria
"faraway". Ademas, considere Y = Class, como la variable respuesta, todas las demas seran variables
explicativas.

  1. Realizar una análisis descriptivo de las variables de la base de datos. Debe incluir indicadores y
    gráficas.
```r
# Cargar la librería necesaria
library(faraway)

#Obtención informacion de dataset wbca
?faraway::wbca

# Cargar el conjunto de datos
data(wbca)

head(wbca, n=10)
```
<div data-pagedtable="false">
  <script data-pagedtable-source type="application/json">
{"columns":[{"label":[""],"name":["_rn_"],"type":[""],"align":["left"]},{"label":["Class"],"name":[1],"type":["int"],"align":["right"]},{"label":["Adhes"],"name":[2],"type":["int"],"align":["right"]},{"label":["BNucl"],"name":[3],"type":["int"],"align":["right"]},{"label":["Chrom"],"name":[4],"type":["int"],"align":["right"]},{"label":["Epith"],"name":[5],"type":["int"],"align":["right"]},{"label":["Mitos"],"name":[6],"type":["int"],"align":["right"]},{"label":["NNucl"],"name":[7],"type":["int"],"align":["right"]},{"label":["Thick"],"name":[8],"type":["int"],"align":["right"]},{"label":["UShap"],"name":[9],"type":["int"],"align":["right"]},{"label":["USize"],"name":[10],"type":["int"],"align":["right"]}],"data":[{"1":"1","2":"1","3":"1","4":"3","5":"2","6":"1","7":"1","8":"5","9":"1","10":"1","_rn_":"1"},{"1":"1","2":"5","3":"10","4":"3","5":"7","6":"1","7":"2","8":"5","9":"4","10":"4","_rn_":"2"},{"1":"1","2":"1","3":"2","4":"3","5":"2","6":"1","7":"1","8":"3","9":"1","10":"1","_rn_":"3"},{"1":"1","2":"1","3":"4","4":"3","5":"3","6":"1","7":"7","8":"6","9":"8","10":"8","_rn_":"4"},{"1":"1","2":"3","3":"1","4":"3","5":"2","6":"1","7":"1","8":"4","9":"1","10":"1","_rn_":"5"},{"1":"0","2":"8","3":"10","4":"9","5":"7","6":"1","7":"7","8":"8","9":"10","10":"10","_rn_":"6"},{"1":"1","2":"1","3":"10","4":"3","5":"2","6":"1","7":"1","8":"1","9":"1","10":"1","_rn_":"7"},{"1":"1","2":"1","3":"1","4":"3","5":"2","6":"1","7":"1","8":"2","9":"2","10":"1","_rn_":"8"},{"1":"1","2":"1","3":"1","4":"1","5":"2","6":"5","7":"1","8":"2","9":"1","10":"1","_rn_":"9"},{"1":"1","2":"1","3":"1","4":"2","5":"2","6":"1","7":"1","8":"4","9":"1","10":"2","_rn_":"10"}],"options":{"columns":{"min":{},"max":[10],"total":[10]},"rows":{"min":[10],"max":[10],"total":[10]},"pages":{}}}
  </script>
</div>
```r

# Obtener un resumen estadístico de las variables
summary(wbca)
```
```
     Class            Adhes            BNucl            Chrom            Epith            Mitos            NNucl            Thick       
 Min.   :0.0000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000   Min.   : 1.000  
 1st Qu.:0.0000   1st Qu.: 1.000   1st Qu.: 1.000   1st Qu.: 2.000   1st Qu.: 2.000   1st Qu.: 1.000   1st Qu.: 1.000   1st Qu.: 2.000  
 Median :1.0000   Median : 1.000   Median : 1.000   Median : 3.000   Median : 2.000   Median : 1.000   Median : 1.000   Median : 4.000  
 Mean   :0.6505   Mean   : 2.816   Mean   : 3.542   Mean   : 3.433   Mean   : 3.231   Mean   : 1.604   Mean   : 2.859   Mean   : 4.436  
 3rd Qu.:1.0000   3rd Qu.: 4.000   3rd Qu.: 6.000   3rd Qu.: 5.000   3rd Qu.: 4.000   3rd Qu.: 1.000   3rd Qu.: 4.000   3rd Qu.: 6.000  
 Max.   :1.0000   Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000   Max.   :10.000  
     UShap            USize      
 Min.   : 1.000   Min.   : 1.00  
 1st Qu.: 1.000   1st Qu.: 1.00  
 Median : 1.000   Median : 1.00  
 Mean   : 3.204   Mean   : 3.14  
 3rd Qu.: 5.000   3rd Qu.: 5.00  
 Max.   :10.000   Max.   :10.00  
```
```r
# Ver los nombres de las variables en el conjunto de datos
names(wbca)
```
```
 [1] "Class" "Adhes" "BNucl" "Chrom" "Epith" "Mitos" "NNucl" "Thick" "UShap" "USize"
```
```r
# O usar str() para ver la estructura del conjunto de datos
str(wbca)
```
```
'data.frame':   681 obs. of  10 variables:
 $ Class: int  1 1 1 1 1 0 1 1 1 1 ...
 $ Adhes: int  1 5 1 1 3 8 1 1 1 1 ...
 $ BNucl: int  1 10 2 4 1 10 10 1 1 1 ...
 $ Chrom: int  3 3 3 3 3 9 3 3 1 2 ...
 $ Epith: int  2 7 2 3 2 7 2 2 2 2 ...
 $ Mitos: int  1 1 1 1 1 1 1 1 5 1 ...
 $ NNucl: int  1 2 1 7 1 7 1 1 1 1 ...
 $ Thick: int  5 5 3 6 4 8 1 2 2 4 ...
 $ UShap: int  1 4 1 8 1 10 1 2 1 1 ...
 $ USize: int  1 4 1 8 1 10 1 1 1 2 ...
```
```r
# Crear gráficas
# Histograma para la variable target del dataset
hist(wbca$Class)
```
<img src="data:image/png;base64,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" />
```r


# Diagrama de dispersión para todas las variables
plot(wbca)
```
<img src="data:image/png;base64,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" />
```r

# Diagrama de dispersión para dos variables numéricas
plot(wbca$Thick, wbca$Class)
```
<img src="data:image/png;base64,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" />
```r

#Generamos gráfico de dispersión para la variable involact y fire.
ggplot(wbca, aes(x=Thick, y=Class)) + geom_point()
```
<img src="data:image/png;base64,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" />
```r

# crea un histograma que visualiza la distribución de los valores de la variable "Thick" del conjunto de datos "wbca"
ggplot(wbca, aes(x=Thick)) + geom_histogram(binwidth=1)
```
<img src="data:image/png;base64,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" />
  1. Utilizando alguno de los criterios de selecci ́on de variables determine el modelo de regresi ́on
    log ́ıstica que mejor ajusta a la variable respuesta. Indique el criterio utilizado.
```r
log1=glm(Class~BNucl, data=wbca, family=binomial )
log2=glm(Class~., data=wbca, family=binomial )

summary(log1)
```
```

Call:
glm(formula = Class ~ BNucl, family = binomial, data = wbca)

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  3.58211    0.23791   15.06   <2e-16 ***
BNucl       -0.88347    0.07396  -11.95   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 881.39  on 680  degrees of freedom
Residual deviance: 331.46  on 679  degrees of freedom
AIC: 335.46

Number of Fisher Scoring iterations: 6
```
```r
summary(log2)
```
```

Call:
glm(formula = Class ~ ., family = binomial, data = wbca)

Coefficients:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept) 11.16678    1.41491   7.892 2.97e-15 ***
Adhes       -0.39681    0.13384  -2.965  0.00303 ** 
BNucl       -0.41478    0.10230  -4.055 5.02e-05 ***
Chrom       -0.56456    0.18728  -3.014  0.00257 ** 
Epith       -0.06440    0.16595  -0.388  0.69795    
Mitos       -0.65713    0.36764  -1.787  0.07387 .  
NNucl       -0.28659    0.12620  -2.271  0.02315 *  
Thick       -0.62675    0.15890  -3.944 8.01e-05 ***
UShap       -0.28011    0.25235  -1.110  0.26699    
USize        0.05718    0.23271   0.246  0.80589    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 881.388  on 680  degrees of freedom
Residual deviance:  89.464  on 671  degrees of freedom
AIC: 109.46

Number of Fisher Scoring iterations: 8
```
```r
# Imprimir los resultados del modelo ajustado
step(model, direction = "both", trace = FALSE)
```
```

Call:
lm(formula = involact ~ race + fire + theft + age, data = chicago)

Coefficients:
(Intercept)         race         fire        theft          age  
  -0.243118     0.008104     0.036646    -0.009592     0.007210  
```
  1. Analice la significancia del modelo obtenido luego del proceso de selecci ́on, y responda si:
```r
anova(model, test="Chi")
```
```
Analysis of Variance Table

Response: involact
          Df Sum Sq Mean Sq F value    Pr(>F)    
race       1 9.4143  9.4143 82.0556 3.087e-11 ***
fire       1 2.2326  2.2326 19.4597 7.556e-05 ***
theft      1 1.1635  1.1635 10.1409  0.002808 ** 
age        1 0.9973  0.9973  8.6929  0.005312 ** 
volact     1 0.0096  0.0096  0.0833  0.774414    
income     1 0.0730  0.0730  0.6363  0.429759    
Residuals 40 4.5892  0.1147                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
```
• ¿Es el modelo obtenido significativo?

**Respuesta:**Este comando realiza una prueba de chi-cuadrado de la hipótesis nula de que todos los coeficientes en el modelo de regresión logística son iguales a cero. Si el valor p está por debajo de cierto nivel de significación (p. ej., 0,05), podemos rechazar la hipótesis nula y concluir que el modelo es significativo.

\
• ¿Existe alguna covariable no significativa?

**Respuesta:**Este comando muestra los valores z y p para cada coeficiente en el modelo de regresión logística. Un valor de p por debajo del nivel de significancia indica que la variable correspondiente es significativa para predecir la variable de respuesta. Esto usa la función glm() para ajustar un modelo de regresión logística con "Class.f" como variable de respuesta y todas las demás variables en el conjunto de datos (excepto "ID" y "Class") como variables explicativas. La función step() luego realiza una selección de variables paso a paso usando AIC como criterio. El argumento de dirección especifica si se agregan o eliminan variables ("ambos" significa pasos hacia adelante y hacia atrás), y el argumento de seguimiento controla si se imprimen los resultados de cada paso. Esto le mostrará información sobre los coeficientes, errores estándar, valores z y valores p para cada variable explicativa en el modelo de regresión logística seleccionado. Nota: Según el conjunto de datos y la pregunta de investigación específica, diferentes criterios pueden ser apropiados para la selección de variables, por lo que es importante elegir el criterio más apropiado para su estudio específico. Esto usa la función glm() para ajustar un modelo de regresión logística con "Class.f" como variable de respuesta y todas las demás variables en el conjunto de datos (excepto "ID" y "Class") como variables explicativas. La función step() luego realiza una selección de variables paso a paso usando AIC como criterio. El argumento de dirección especifica si se agregan o eliminan variables ("ambos" significa pasos hacia adelante y hacia atrás), y el argumento de seguimiento controla si se imprimen los resultados de cada paso.

\
• ¿En caso de existir alguna covariable no significativa, la quitar ́ıa del modelo?. Fundamente.
```r
gofstat(resid, wbca$Class.f)
```
```
Error in gofstat(resid, wbca$Class.f) : could not find function "gofstat"
```
**Respuesta:**#Este comando usa la función gof() del paquete "gof" para calcular varias estadísticas de bondad de ajuste para el modelo de regresión logística. Un valor alto de la estadística de bondad de ajuste general (G) y un valor bajo de la bondad de ajuste de la desviación (D) sugieren un buen ajuste del modelo.Si hay covariables en el modelo que no son significativas, puede ser razonable eliminarlas para simplificar el modelo. Sin embargo, es importante tener en cuenta que la eliminación de covariables del modelo puede provocar la pérdida de información y estimaciones potencialmente sesgadas. Por lo tanto, es importante evaluar cuidadosamente el impacto de cada covariable en el ajuste del modelo y los resultados del análisis antes de tomar decisiones sobre su eliminación.
  1. Fijar al menos 5 valores para las covariables del modelo y con ellas realizar la predicci ́on de la
    probabilidad de presencia (incluir los intervalos de confianza).
wbca$Class.f <- factor(wbca$Class)

model <- glm(Class.f ~ . - ID - Class, data = wbca, family = binomial)
Warning: 'varlist' has changed (from nvar=11) to new 12 after EncodeVars() -- should no longer happen!Error in eval(predvars, data, env) : object 'ID' not found

Esto usa la función predict() para predecir las probabilidades logarítmicas de presencia para los nuevos valores de covariable. Luego convertimos las probabilidades logarítmicas en probabilidades usando la función plogis(). Finalmente, calculamos los intervalos de confianza del 95 % para las probabilidades predichas usando la función qnorm() y concatenamos todo en un marco de datos.Tenga en cuenta que los valores de covariables específicos que establecemos en el paso 5 son solo un ejemplo y deben cambiarse para reflejar los valores de las observaciones reales en sus datos.

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQoqKlByZWd1bnRhcyBwYXJ0ZSAxKio6ICgzMCBwdW50b3MpIFV0aWxpY2UgZWwgY29uanVudG8gZGUgZGF0b3MgImNoaWNhZ28iIGRpc3BvbmlibGVzIGVuIGxhIGxpYnJlcsSxYVwNCiJmYXJhd2F5Ii4gQ29uc2lkZXJlIFkgPSBpbnZvbGFjdCBjb21vIHZhcmlhYmxlIHJlc3B1ZXN0YSwgdG9kYXMgbGFzIGRlbSDMgWFzIHNlciDMgWFuIHZhcmlhYmxlcyBleHBsaWNhLVwNCnRpdmFzLg0KDQoxXC4gUmVhbGl6YXIgdW5hIGFuIMyBYWxpc2lzIGRlc2NyaXB0aXZvIGRlIGxhcyB2YXJpYWJsZXMgZGUgbGEgYmFzZSBkZSBkYXRvcy4gRGViZSBpbmNsdWlyIGluZGljYWRvcmVzIHlcDQpncsOhZmljYXMuDQoNCmBgYHtyfQ0KIyBDYXJnYXIgbGEgbGlicmVyw61hIG5lY2VzYXJpYQ0KbGlicmFyeShmYXJhd2F5KQ0KDQojT2J0ZW5jacOzbiBpbmZvcm1hY2lvbiBkZSBkYXRhc2V0IGNoaWNhZ28NCj9mYXJhd2F5OjpjaGljYWdvDQoNCiMgQ2FyZ2FyIGVsIGNvbmp1bnRvIGRlIGRhdG9zDQpkYXRhKGNoaWNhZ28pDQoNCmhlYWQoY2hpY2Fnbywgbj0xMCkNCg0KIyBPYnRlbmVyIHVuIHJlc3VtZW4gZXN0YWTDrXN0aWNvIGRlIGxhcyB2YXJpYWJsZXMNCnN1bW1hcnkoY2hpY2FnbykNCg0KIyBWZXIgbG9zIG5vbWJyZXMgZGUgbGFzIHZhcmlhYmxlcyBlbiBlbCBjb25qdW50byBkZSBkYXRvcw0KbmFtZXMoY2hpY2FnbykNCg0KIyBPIHVzYXIgc3RyKCkgcGFyYSB2ZXIgbGEgZXN0cnVjdHVyYSBkZWwgY29uanVudG8gZGUgZGF0b3MNCnN0cihjaGljYWdvKQ0KDQojIENyZWFyIGdyw6FmaWNhcw0KIyBIaXN0b2dyYW1hIHBhcmEgbGEgdmFyaWFibGUgdGFyZ2V0IGRlbCBkYXRhc2V0DQpoaXN0KGNoaWNhZ28kaW52b2xhY3QpDQoNCg0KIyBEaWFncmFtYSBkZSBkaXNwZXJzacOzbiBwYXJhIHRvZGFzIGxhcyB2YXJpYWJsZXMNCnBsb3QoY2hpY2FnbykNCg0KIyBEaWFncmFtYSBkZSBkaXNwZXJzacOzbiBwYXJhIGRvcyB2YXJpYWJsZXMgbnVtw6lyaWNhcw0KcGxvdChjaGljYWdvJGFnZSwgY2hpY2FnbyRpbnZvbGFjdCkNCg0KI0dlbmVyYW1vcyBncsOhZmljbyBkZSBkaXNwZXJzacOzbiBwYXJhIGxhIHZhcmlhYmxlIGludm9sYWN0IHkgZmlyZS4NCmdncGxvdChjaGljYWdvLCBhZXMoeD1maXJlLCB5PWludm9sYWN0KSkgKyBnZW9tX3BvaW50KCkNCg0KIyBjcmVhIHVuIGhpc3RvZ3JhbWEgcXVlIHZpc3VhbGl6YSBsYSBkaXN0cmlidWNpw7NuIGRlIGxvcyB2YWxvcmVzIGRlIGxhIHZhcmlhYmxlICJmaXJlIiBkZWwgY29uanVudG8gZGUgZGF0b3MgImNoaWNhZ28iDQpnZ3Bsb3QoY2hpY2FnbywgYWVzKHg9ZmlyZSkpICsgZ2VvbV9oaXN0b2dyYW0oYmlud2lkdGg9MSkNCmBgYA0KDQoyXC4gVXRpbGl6YW5kbyBhbGd1bm8gZGUgbG9zIGNyaXRlcmlvcyBkZSBzZWxlY2Npw7NuIGRlIHZhcmlhYmxlcywgZGV0ZXJtaW5lIGVsIG1vZGVsbyBsaW5lYWwgcXVlIG1lam9yIGFqdXN0YSBhIGxhIHZhcmlhYmxlIHJlc3B1ZXN0YS4gSW5kaXF1ZSBlbCBjcml0ZXJpbyB1dGlsaXphZG8NCg0KYGBge3J9DQojIEZpdCBhbGwgcG9zc2libGUgbGluZWFyIG1vZGVscyB1c2luZyB0aGUgbG0gZnVuY3Rpb24NCm1vZGVsMSA8LSBsbShpbnZvbGFjdCB+IC4sIGRhdGEgPSBjaGljYWdvKQ0KDQojIFByaW50IHRoZSBzdW1tYXJ5IG9mIHRoZSBiZXN0IG1vZGVsIGJhc2VkIG9uIEFJQw0Kc3VtbWFyeShtb2RlbDEpDQoNCiMgQWp1c3RhciB1biBtb2RlbG8gbGluZWFsIGNvbiBjcml0ZXJpbyBkZSBzZWxlY2Npw7NuIHBvciBBSUMNCm1vZGVsMiA8LSBzdGVwKGxtKGludm9sYWN0IH4gLiAsIGRhdGEgPSBjaGljYWdvKSwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IDEwMDApDQoNCg0KIyBBanVzdGFyIHVuIG1vZGVsbyBsaW5lYWwgY29uIGNyaXRlcmlvIGRlIHNlbGVjY2nDs24gcG9yIEFJQw0KbW9kZWwzIDwtIHN0ZXAobG0oaW52b2xhY3QgfiAuICwgZGF0YSA9IGNoaWNhZ28pLCB0cmFjZSA9IDAsIGs9bG9nKGxlbmd0aChjaGljYWdvJGludm9sYWN0KSkpDQoNCiMgSW1wcmltaXIgbG9zIHJlc3VsdGFkb3MgZGVsIG1vZGVsbyBhanVzdGFkbw0Kc3VtbWFyeShtb2RlbDMpDQpgYGANCg0KM1wuIEFuYWxpY2UgbGEgc2lnbmlmaWNhbmNpYSBkZWwgbW9kZWxvIG9idGVuaWRvIGx1ZWdvIGRlbCBwcm9jZXNvIGRlIHNlbGVjY2nDs24sIHkgcmVzcG9uZGEgc2k6DQoNCi0gICDCv0VzIGVsIG1vZGVsbyBvYnRlbmlkbyBzaWduaWZpY2F0aXZvPw0KDQogICAgYGBge3J9DQogICAgYW5vdmEobW9kZWwxKQ0KICAgIGFub3ZhKG1vZGVsMikNCiAgICBhbm92YShtb2RlbDMpDQogICAgYGBgDQoNCi0gICDCv0V4aXN0ZSBhbGd1bmEgY292YXJpYWJsZSBubyBzaWduaWZpY2F0aXZhPw0KDQogICAgQWRlbcOhcywgcG9kZW1vcyBvYnNlcnZhciBxdWUgbGEgdmFyaWFibGUgImNybXJ0ZSIgeSAicHJiY29udiIgc29uIHNpZ25pZmljYXRpdmFzIChwIFw8IDAsMDUpLCBtaWVudHJhcyBxdWUgbGFzIG90cmFzIGNvdmFyaWFibGVzIG5vIGxvIHNvbi4gU2kgYmllbiBsYSBlbGltaW5hY2nDs24gZGUgbGFzIGNvdmFyaWFibGVzIG5vIHNpZ25pZmljYXRpdmFzIHB1ZWRlIHNpbXBsaWZpY2FyIGVsIG1vZGVsbywgZW4gZXN0ZSBjYXNvIGVzIHJlY29tZW5kYWJsZSBtYW50ZW5lciB0b2RhcyBsYXMgdmFyaWFibGVzIGVuIGVsIG1vZGVsbyB5YSBxdWUgdGllbmVuIHJlbGV2YW5jaWEgdGXDs3JpY2EgeSBwb2Ryw61hbiBpbmZsdWlyIGVuIGxhIHZhcmlhYmxlIHJlc3B1ZXN0YSBkZSBmb3JtYSBpbmRpcmVjdGEuIEFkZW3DoXMsIGVsaW1pbmFyIHVuYSBjb3ZhcmlhYmxlIG5vIHNpZ25pZmljYXRpdmEgcG9kcsOtYSBlc3RhciBzZXNnYW5kbyBlbCBtb2RlbG8geSBhdW1lbnRhbmRvIGVsIHJpZXNnbyBkZSBvdmVyZml0dGluZy4NCg0KLSAgIMK/RW4gY2FzbyBkZSBleGlzdGlyIGFsZ3VuYSBjb3ZhcmlhYmxlIG5vIHNpZ25pZmljYXRpdmEsIGxhIHF1aXRhciDMgcSxYSBkZWwgbW9kZWxvPy4gRnVuZGFtZW50ZS4NCg0KICAgIEVuIHJlc3VtZW4sIGVsIG1vZGVsbyBvYnRlbmlkbyBlcyBzaWduaWZpY2F0aXZvIHkgbGFzIGNvdmFyaWFibGVzICJjcm1ydGUiIHkgInByYmNvbnYiIHNvbiBpbXBvcnRhbnRlcyBwcmVkaWN0b3JlcyBkZSBsYSB2YXJpYWJsZSByZXNwdWVzdGEgImludm9sYWN0Ii4gQXVucXVlIGV4aXN0ZW4gY292YXJpYWJsZXMgbm8gc2lnbmlmaWNhdGl2YXMsIGVzIHJlY29tZW5kYWJsZSBtYW50ZW5lcmxhcyBlbiBlbCBtb2RlbG8gcGFyYSB1bmEgaW50ZXJwcmV0YWNpw7NuIG3DoXMgY29tcGxldGEgeSBldml0YXIgZWwgcmllc2dvIGRlIG92ZXJmaXR0aW5nLg0KDQo0XC4gRmlqYXIgYWwgbWVub3MgNSB2YWxvcmVzIHBhcmEgbGFzIGNvdmFyaWFibGVzIGRlbCBtb2RlbG8geSBjb24gZWxsYXMgcmVhbGl6YXIgbGEgcHJlZGljY2kgzIFvbiBkZSBsYVwNCm1lZGlhIHkgbGEgcHJlZGljY2kgzIFvbiBpbmRpdmlkdWFsIGRlIGxhIHZhcmlhYmxlIG9iamV0aXZvIChpbmNsdWlyIGxvcyBpbnRlcnZhbG9zIGRlIGNvbmZpYW56YSkuDQoNCmBgYHtyfQ0KIyBGaXQgdGhlIGxpbmVhciByZWdyZXNzaW9uIG1vZGVsDQptb2RlbCA8LSBsbShpbnZvbGFjdCB+IC4sIGRhdGEgPSBjaGljYWdvKQ0KDQpzdW1tYXJ5KG1vZGVsKQ0KDQojIFNldCB2YWx1ZXMgZm9yIHRoZSBjb3ZhcmlhdGVzDQpuZXdfZGF0YSA8LSBkYXRhLmZyYW1lKCBhZ2UgPWMoMTguMCwgMjMuMCwgMjguMCwgNTYuMCwgNDAuMCksDQogICAgICAgICAgICAgICAgICAgICAgICByYWNlID0gYygxNS4wLCAyMi4wLCAzNS4wLCA0NC4wLCA2MC4wKSwNCiAgICAgICAgICAgICAgICAgICAgICAgdGhlZnQgPSBjKDUuMCwgMTYuMCwgMjAuMCwgMTUuMCwgMjIuMCksDQogICAgICAgICAgICAgICAgICAgICAgIHZvbGFjdCA9Yyg1LjAsIDcuMCAsIDkuMCwgMTAuMCwgOS4wKSwNCiAgICAgICAgICAgICAgICAgICAgICAgaW5jb21lPSBjKDYwMDAuMCwgNjUwMC4wLCA3ODAwLjAsIDcyMDAuMCwgODgwMC4wKSwNCiAgICAgICAgICAgICAgICAgICAgICAgZmlyZSA9IGMoNC4wLCAxNS4wLCAyNC4wLCAzMC4wLCAyMi4wKSwNCiAgICAgICAgICAgICAgICAgICAgICAgaW52b2xhY3QgPSBjKDAuMjMsMC40MywwLjY1LDAuNzcsMC40NSkpDQoNCm1vZGVsX25ldyA8LSBsbShpbnZvbGFjdCB+IC4sIGRhdGEgPSBuZXdfZGF0YSkNCg0Kc3VtbWFyeShtb2RlbF9uZXcpDQoNCiMgTWFrZSBwcmVkaWN0aW9ucyBmb3IgdGhlIG1lYW4gYW5kIGluZGl2aWR1YWwgdmFsdWVzDQptZWFuX3ByZWQgPC0gcHJlZGljdChtb2RlbCwgbmV3ZGF0YSA9IG5ld19kYXRhLCBpbnRlcnZhbCA9ICdjb25maWRlbmNlJykNCmluZGl2X3ByZWQgPC0gcHJlZGljdChtb2RlbCwgbmV3ZGF0YSA9IG5ld19kYXRhLCBpbnRlcnZhbCA9ICdwcmVkaWN0aW9uJykNCg0KIyBQcmludCB0aGUgcmVzdWx0cw0KcHJpbnQobWVhbl9wcmVkKQ0KDQpwcmludChpbmRpdl9wcmVkKQ0KDQojIENvbXBhcmFjacOzbiBkZSBtb2RlbG9zIHNlZ8O6biBleHBsaWNhY2nDs24NCnN1bW1hcnkocmVnMSkNCnN1bW1hcnkocmVnMikNCmFub3ZhKHJlZzIsIHJlZzEpDQoNCiMgc2VsZWNjaW9uIGRlIG1vZGVsb3MgYXV0b21hdGl6YWRvDQptb2QxLnN0ZXAwPXN0ZXAocmVnMSkgIyBiYWNrd2FyZCBwb3IgQUlDDQptb2QxLnN0ZXAxPXN0ZXAocmVnMSwgaz1sb2cobGVuZ3RoKG96b25lJE8zKSkpICMgYmFja3dhcmQgcG9yIEJJQw0KbW9kMS5zdGVwMj1zdGVwKHJlZzIsIHNjb3BlPWxpc3QobG93ZXI9cmVnMiwgdXBwZXI9cmVnMSksIGRpcmVjdGlvbj0iYm90aCIpICMgYW1ib3MNCg0KDQoNCiMgYW5hbGlzaXMgZGUgbXVsdGljb2xpbmVhbGlkYWQNCnZpZihvem9uZVssLTFdKSAjIG5vIHNlIGNvbnNpZGVyYSBsYSB2YXJpYWJsZSBvYmpldGl2bw0KdmlmKG96b25lWywtYygxLDgpXSkNCmNvcihvem9uZVssLThdKQ0KcmVnMD1sbShPM350ZW1wK2h1bWlkaXR5LCBkYXRhPW96b25lWywtOF0pDQpyZWczPWxtKE8zfi4sIGRhdGE9b3pvbmVbLC04XSkNCm1vZDEuc3RlcDM9c3RlcChyZWcwLCBzY29wZT1saXN0KGxvd2VyPXJlZzAsIHVwcGVyPXJlZzMpLCBkaXJlY3Rpb249ImJvdGgiKSAjIGFtYm9zDQoNCiMgY29tcGFyYWNpw7NuIGRlIG1vZGVsb3MNCnN1bW1hcnkobW9kMS5zdGVwMCkNCnN1bW1hcnkobW9kMS5zdGVwMSkNCnN1bW1hcnkobW9kMS5zdGVwMikNCnN1bW1hcnkobW9kMS5zdGVwMykNCg0KIyBEaWFnbm9zdGljbw0KDQpzaGFwaXJvLnRlc3QocmVnMSRyZXNpZHVhbHMpDQpzaGFwaXJvLnRlc3QocmVnMiRyZXNpZHVhbHMpDQoNCnFxbm9ybShyZWcxJHJlc2lkdWFscywgcGNoPTIwKTsgcXFsaW5lKHJlZzEkcmVzaWR1YWxzLCBjb2w9MiwgbHdkPTIpDQpxcW5vcm0ocmVnMiRyZXNpZHVhbHMsIHBjaD0yMCk7IHFxbGluZShyZWcyJHJlc2lkdWFscywgY29sPTIsIGx3ZD0yKQ0KDQpxcW5vcm0ob3pvbmUkTzMpDQpgYGANCg0KKipQcmVndW50YXMgcGFydGUgMioqOiAoMzAgcHVudG9zKSBVdGlsaWNlIGVsIGNvbmp1bnRvIGRlIGRhdG9zIFwid2JjYVwiIGRpc3BvbmlibGVzIGVuIGxhIGxpYnJlcmlhXA0KXCJmYXJhd2F5XCIuIEFkZW1hcywgY29uc2lkZXJlIFkgPSBDbGFzcywgY29tbyBsYSB2YXJpYWJsZSByZXNwdWVzdGEsIHRvZGFzIGxhcyBkZW1hcyBzZXJhbiB2YXJpYWJsZXNcDQpleHBsaWNhdGl2YXMuDQoNCjEuICBSZWFsaXphciB1bmEgYW7DoWxpc2lzIGRlc2NyaXB0aXZvIGRlIGxhcyB2YXJpYWJsZXMgZGUgbGEgYmFzZSBkZSBkYXRvcy4gRGViZSBpbmNsdWlyIGluZGljYWRvcmVzIHlcDQogICAgZ3LDoWZpY2FzLg0KDQogICAgYGBge3J9DQogICAgIyBDYXJnYXIgbGEgbGlicmVyw61hIG5lY2VzYXJpYQ0KICAgIGxpYnJhcnkoZmFyYXdheSkNCg0KICAgICNPYnRlbmNpw7NuIGluZm9ybWFjaW9uIGRlIGRhdGFzZXQgd2JjYQ0KICAgID9mYXJhd2F5Ojp3YmNhDQoNCiAgICAjIENhcmdhciBlbCBjb25qdW50byBkZSBkYXRvcw0KICAgIGRhdGEod2JjYSkNCg0KICAgIGhlYWQod2JjYSwgbj0xMCkNCg0KICAgICMgT2J0ZW5lciB1biByZXN1bWVuIGVzdGFkw61zdGljbyBkZSBsYXMgdmFyaWFibGVzDQogICAgc3VtbWFyeSh3YmNhKQ0KDQogICAgIyBWZXIgbG9zIG5vbWJyZXMgZGUgbGFzIHZhcmlhYmxlcyBlbiBlbCBjb25qdW50byBkZSBkYXRvcw0KICAgIG5hbWVzKHdiY2EpDQoNCiAgICAjIE8gdXNhciBzdHIoKSBwYXJhIHZlciBsYSBlc3RydWN0dXJhIGRlbCBjb25qdW50byBkZSBkYXRvcw0KICAgIHN0cih3YmNhKQ0KDQogICAgIyBDcmVhciBncsOhZmljYXMNCiAgICAjIEhpc3RvZ3JhbWEgcGFyYSBsYSB2YXJpYWJsZSB0YXJnZXQgZGVsIGRhdGFzZXQNCiAgICBoaXN0KHdiY2EkQ2xhc3MpDQoNCg0KICAgICMgRGlhZ3JhbWEgZGUgZGlzcGVyc2nDs24gcGFyYSB0b2RhcyBsYXMgdmFyaWFibGVzDQogICAgcGxvdCh3YmNhKQ0KDQogICAgIyBEaWFncmFtYSBkZSBkaXNwZXJzacOzbiBwYXJhIGRvcyB2YXJpYWJsZXMgbnVtw6lyaWNhcw0KICAgIHBsb3Qod2JjYSRUaGljaywgd2JjYSRDbGFzcykNCg0KICAgICNHZW5lcmFtb3MgZ3LDoWZpY28gZGUgZGlzcGVyc2nDs24gcGFyYSBsYSB2YXJpYWJsZSBpbnZvbGFjdCB5IGZpcmUuDQogICAgZ2dwbG90KHdiY2EsIGFlcyh4PVRoaWNrLCB5PUNsYXNzKSkgKyBnZW9tX3BvaW50KCkNCg0KICAgICMgY3JlYSB1biBoaXN0b2dyYW1hIHF1ZSB2aXN1YWxpemEgbGEgZGlzdHJpYnVjacOzbiBkZSBsb3MgdmFsb3JlcyBkZSBsYSB2YXJpYWJsZSAiVGhpY2siIGRlbCBjb25qdW50byBkZSBkYXRvcyAid2JjYSINCiAgICBnZ3Bsb3Qod2JjYSwgYWVzKHg9VGhpY2spKSArIGdlb21faGlzdG9ncmFtKGJpbndpZHRoPTEpDQogICAgYGBgDQoNCjIuICBVdGlsaXphbmRvIGFsZ3VubyBkZSBsb3MgY3JpdGVyaW9zIGRlIHNlbGVjY2kgzIFvbiBkZSB2YXJpYWJsZXMgZGV0ZXJtaW5lIGVsIG1vZGVsbyBkZSByZWdyZXNpIMyBb25cDQogICAgbG9nIMyBxLFzdGljYSBxdWUgbWVqb3IgYWp1c3RhIGEgbGEgdmFyaWFibGUgcmVzcHVlc3RhLiBJbmRpcXVlIGVsIGNyaXRlcmlvIHV0aWxpemFkby4NCg0KICAgIGBgYHtyfQ0KICAgIGxvZzE9Z2xtKENsYXNzfkJOdWNsLCBkYXRhPXdiY2EsIGZhbWlseT1iaW5vbWlhbCApDQogICAgbG9nMj1nbG0oQ2xhc3N+LiwgZGF0YT13YmNhLCBmYW1pbHk9Ymlub21pYWwgKQ0KDQogICAgc3VtbWFyeShsb2cxKQ0KDQogICAgc3VtbWFyeShsb2cyKQ0KDQogICAgIyBJbXByaW1pciBsb3MgcmVzdWx0YWRvcyBkZWwgbW9kZWxvIGFqdXN0YWRvDQogICAgc3RlcChtb2RlbCwgZGlyZWN0aW9uID0gImJvdGgiLCB0cmFjZSA9IEZBTFNFKQ0KDQogICAgYGBgDQoNCjMuICBBbmFsaWNlIGxhIHNpZ25pZmljYW5jaWEgZGVsIG1vZGVsbyBvYnRlbmlkbyBsdWVnbyBkZWwgcHJvY2VzbyBkZSBzZWxlY2NpIMyBb24sIHkgcmVzcG9uZGEgc2k6DQoNCiAgICBgYGB7cn0NCiAgICBhbm92YShtb2RlbCwgdGVzdD0iQ2hpIikNCiAgICBgYGANCg0KICAgIOKAoiDCv0VzIGVsIG1vZGVsbyBvYnRlbmlkbyBzaWduaWZpY2F0aXZvPw0KDQogICAgKipSZXNwdWVzdGE6KipFc3RlIGNvbWFuZG8gcmVhbGl6YSB1bmEgcHJ1ZWJhIGRlIGNoaS1jdWFkcmFkbyBkZSBsYSBoaXDDs3Rlc2lzIG51bGEgZGUgcXVlIHRvZG9zIGxvcyBjb2VmaWNpZW50ZXMgZW4gZWwgbW9kZWxvIGRlIHJlZ3Jlc2nDs24gbG9nw61zdGljYSBzb24gaWd1YWxlcyBhIGNlcm8uIFNpIGVsIHZhbG9yIHAgZXN0w6EgcG9yIGRlYmFqbyBkZSBjaWVydG8gbml2ZWwgZGUgc2lnbmlmaWNhY2nDs24gKHAuIGVqLiwgMCwwNSksIHBvZGVtb3MgcmVjaGF6YXIgbGEgaGlww7N0ZXNpcyBudWxhIHkgY29uY2x1aXIgcXVlIGVsIG1vZGVsbyBlcyBzaWduaWZpY2F0aXZvLg0KDQogICAgXA0KICAgIOKAoiDCv0V4aXN0ZSBhbGd1bmEgY292YXJpYWJsZSBubyBzaWduaWZpY2F0aXZhPw0KDQogICAgKipSZXNwdWVzdGE6KipFc3RlIGNvbWFuZG8gbXVlc3RyYSBsb3MgdmFsb3JlcyB6IHkgcCBwYXJhIGNhZGEgY29lZmljaWVudGUgZW4gZWwgbW9kZWxvIGRlIHJlZ3Jlc2nDs24gbG9nw61zdGljYS4gVW4gdmFsb3IgZGUgcCBwb3IgZGViYWpvIGRlbCBuaXZlbCBkZSBzaWduaWZpY2FuY2lhIGluZGljYSBxdWUgbGEgdmFyaWFibGUgY29ycmVzcG9uZGllbnRlIGVzIHNpZ25pZmljYXRpdmEgcGFyYSBwcmVkZWNpciBsYSB2YXJpYWJsZSBkZSByZXNwdWVzdGEuIEVzdG8gdXNhIGxhIGZ1bmNpw7NuIGdsbSgpIHBhcmEgYWp1c3RhciB1biBtb2RlbG8gZGUgcmVncmVzacOzbiBsb2fDrXN0aWNhIGNvbiAiQ2xhc3MuZiIgY29tbyB2YXJpYWJsZSBkZSByZXNwdWVzdGEgeSB0b2RhcyBsYXMgZGVtw6FzIHZhcmlhYmxlcyBlbiBlbCBjb25qdW50byBkZSBkYXRvcyAoZXhjZXB0byAiSUQiIHkgIkNsYXNzIikgY29tbyB2YXJpYWJsZXMgZXhwbGljYXRpdmFzLiBMYSBmdW5jacOzbiBzdGVwKCkgbHVlZ28gcmVhbGl6YSB1bmEgc2VsZWNjacOzbiBkZSB2YXJpYWJsZXMgcGFzbyBhIHBhc28gdXNhbmRvIEFJQyBjb21vIGNyaXRlcmlvLiBFbCBhcmd1bWVudG8gZGUgZGlyZWNjacOzbiBlc3BlY2lmaWNhIHNpIHNlIGFncmVnYW4gbyBlbGltaW5hbiB2YXJpYWJsZXMgKCJhbWJvcyIgc2lnbmlmaWNhIHBhc29zIGhhY2lhIGFkZWxhbnRlIHkgaGFjaWEgYXRyw6FzKSwgeSBlbCBhcmd1bWVudG8gZGUgc2VndWltaWVudG8gY29udHJvbGEgc2kgc2UgaW1wcmltZW4gbG9zIHJlc3VsdGFkb3MgZGUgY2FkYSBwYXNvLiBFc3RvIGxlIG1vc3RyYXLDoSBpbmZvcm1hY2nDs24gc29icmUgbG9zIGNvZWZpY2llbnRlcywgZXJyb3JlcyBlc3TDoW5kYXIsIHZhbG9yZXMgeiB5IHZhbG9yZXMgcCBwYXJhIGNhZGEgdmFyaWFibGUgZXhwbGljYXRpdmEgZW4gZWwgbW9kZWxvIGRlIHJlZ3Jlc2nDs24gbG9nw61zdGljYSBzZWxlY2Npb25hZG8uIE5vdGE6IFNlZ8O6biBlbCBjb25qdW50byBkZSBkYXRvcyB5IGxhIHByZWd1bnRhIGRlIGludmVzdGlnYWNpw7NuIGVzcGVjw61maWNhLCBkaWZlcmVudGVzIGNyaXRlcmlvcyBwdWVkZW4gc2VyIGFwcm9waWFkb3MgcGFyYSBsYSBzZWxlY2Npw7NuIGRlIHZhcmlhYmxlcywgcG9yIGxvIHF1ZSBlcyBpbXBvcnRhbnRlIGVsZWdpciBlbCBjcml0ZXJpbyBtw6FzIGFwcm9waWFkbyBwYXJhIHN1IGVzdHVkaW8gZXNwZWPDrWZpY28uIEVzdG8gdXNhIGxhIGZ1bmNpw7NuIGdsbSgpIHBhcmEgYWp1c3RhciB1biBtb2RlbG8gZGUgcmVncmVzacOzbiBsb2fDrXN0aWNhIGNvbiAiQ2xhc3MuZiIgY29tbyB2YXJpYWJsZSBkZSByZXNwdWVzdGEgeSB0b2RhcyBsYXMgZGVtw6FzIHZhcmlhYmxlcyBlbiBlbCBjb25qdW50byBkZSBkYXRvcyAoZXhjZXB0byAiSUQiIHkgIkNsYXNzIikgY29tbyB2YXJpYWJsZXMgZXhwbGljYXRpdmFzLiBMYSBmdW5jacOzbiBzdGVwKCkgbHVlZ28gcmVhbGl6YSB1bmEgc2VsZWNjacOzbiBkZSB2YXJpYWJsZXMgcGFzbyBhIHBhc28gdXNhbmRvIEFJQyBjb21vIGNyaXRlcmlvLiBFbCBhcmd1bWVudG8gZGUgZGlyZWNjacOzbiBlc3BlY2lmaWNhIHNpIHNlIGFncmVnYW4gbyBlbGltaW5hbiB2YXJpYWJsZXMgKCJhbWJvcyIgc2lnbmlmaWNhIHBhc29zIGhhY2lhIGFkZWxhbnRlIHkgaGFjaWEgYXRyw6FzKSwgeSBlbCBhcmd1bWVudG8gZGUgc2VndWltaWVudG8gY29udHJvbGEgc2kgc2UgaW1wcmltZW4gbG9zIHJlc3VsdGFkb3MgZGUgY2FkYSBwYXNvLg0KDQogICAgXA0KICAgIOKAoiDCv0VuIGNhc28gZGUgZXhpc3RpciBhbGd1bmEgY292YXJpYWJsZSBubyBzaWduaWZpY2F0aXZhLCBsYSBxdWl0YXIgzIHEsWEgZGVsIG1vZGVsbz8uIEZ1bmRhbWVudGUuDQoNCiAgICBgYGB7cn0NCiAgICBpbnN0YWxsLnBhY2thZ2VzKCJnb2YiLGRlcGVuZGVuY2llcz1UUlVFKQ0KDQogICAgbGlicmFyeSgiZ29mIikNCiAgICByZXNpZDwtIHJlc2lkdWFscyhtb2RlbCx0eXBlPWMoInJlc3BvbnNlIikpDQogICAgZ29mc3RhdChyZXNpZCwgd2JjYSRDbGFzcy5mKQ0KICAgIGBgYA0KDQogICAgKipSZXNwdWVzdGE6KiojRXN0ZSBjb21hbmRvIHVzYSBsYSBmdW5jacOzbiBnb2YoKSBkZWwgcGFxdWV0ZSAiZ29mIiBwYXJhIGNhbGN1bGFyIHZhcmlhcyBlc3RhZMOtc3RpY2FzIGRlIGJvbmRhZCBkZSBhanVzdGUgcGFyYSBlbCBtb2RlbG8gZGUgcmVncmVzacOzbiBsb2fDrXN0aWNhLiBVbiB2YWxvciBhbHRvIGRlIGxhIGVzdGFkw61zdGljYSBkZSBib25kYWQgZGUgYWp1c3RlIGdlbmVyYWwgKEcpIHkgdW4gdmFsb3IgYmFqbyBkZSBsYSBib25kYWQgZGUgYWp1c3RlIGRlIGxhIGRlc3ZpYWNpw7NuIChEKSBzdWdpZXJlbiB1biBidWVuIGFqdXN0ZSBkZWwgbW9kZWxvLlNpIGhheSBjb3ZhcmlhYmxlcyBlbiBlbCBtb2RlbG8gcXVlIG5vIHNvbiBzaWduaWZpY2F0aXZhcywgcHVlZGUgc2VyIHJhem9uYWJsZSBlbGltaW5hcmxhcyBwYXJhIHNpbXBsaWZpY2FyIGVsIG1vZGVsby4gU2luIGVtYmFyZ28sIGVzIGltcG9ydGFudGUgdGVuZXIgZW4gY3VlbnRhIHF1ZSBsYSBlbGltaW5hY2nDs24gZGUgY292YXJpYWJsZXMgZGVsIG1vZGVsbyBwdWVkZSBwcm92b2NhciBsYSBww6lyZGlkYSBkZSBpbmZvcm1hY2nDs24geSBlc3RpbWFjaW9uZXMgcG90ZW5jaWFsbWVudGUgc2VzZ2FkYXMuIFBvciBsbyB0YW50bywgZXMgaW1wb3J0YW50ZSBldmFsdWFyIGN1aWRhZG9zYW1lbnRlIGVsIGltcGFjdG8gZGUgY2FkYSBjb3ZhcmlhYmxlIGVuIGVsIGFqdXN0ZSBkZWwgbW9kZWxvIHkgbG9zIHJlc3VsdGFkb3MgZGVsIGFuw6FsaXNpcyBhbnRlcyBkZSB0b21hciBkZWNpc2lvbmVzIHNvYnJlIHN1IGVsaW1pbmFjacOzbi4NCg0KNC4gIEZpamFyIGFsIG1lbm9zIDUgdmFsb3JlcyBwYXJhIGxhcyBjb3ZhcmlhYmxlcyBkZWwgbW9kZWxvIHkgY29uIGVsbGFzIHJlYWxpemFyIGxhIHByZWRpY2NpIMyBb24gZGUgbGFcDQogICAgcHJvYmFiaWxpZGFkIGRlIHByZXNlbmNpYSAoaW5jbHVpciBsb3MgaW50ZXJ2YWxvcyBkZSBjb25maWFuemEpLg0KDQpgYGB7cn0NCndiY2EkQ2xhc3MuZiA8LSBmYWN0b3Iod2JjYSRDbGFzcykNCg0KbW9kZWwgPC0gZ2xtKENsYXNzLmYgfiAuIC0gSUQgLSBDbGFzcywgZGF0YSA9IHdiY2EsIGZhbWlseSA9IGJpbm9taWFsKQ0KDQpuZXdkYXRhIDwtIGRhdGEuZnJhbWUoDQogIENsLnRoaWNrbmVzcyA9IDIsDQogIENlbGwuc2l6ZSA9IDQsDQogIENlbGwuc2hhcGUgPSA0LA0KICBNYXJnLmFkaGVzaW9uID0gNCwNCiAgRXBpdGguYy5zaXplID0gMikNCg0KcHJlZCA8LSBwcmVkaWN0KG1vZGVsLCBuZXdkYXRhLCB0eXBlID0gImxpbmsiLCBzZS5maXQgPSBUUlVFKQ0KDQpwcmVkcHJvYiA8LSBwbG9naXMocHJlZCRmaXQpDQoNCmxvd2VyIDwtIHBsb2dpcyhwcmVkJGZpdCAtIHFub3JtKDAuOTc1KSAqIHByZWQkc2UuZml0KQ0KdXBwZXIgPC0gcGxvZ2lzKHByZWQkZml0ICsgcW5vcm0oMC45NzUpICogcHJlZCRzZS5maXQpDQoNCnJlc3VsdCA8LSBkYXRhLmZyYW1lKGNvdmFyaWF0ZXMgPSBuYW1lcyhuZXdkYXRhKSwgdmFsdWVzID0gdW5saXN0KG5ld2RhdGEpKQ0KDQpyZXN1bHQkcHJlZGljdGVkX3Byb2Jfb2ZfcHJlc2VuY2UgPC0gcHJlZHByb2INCg0KcmVzdWx0JGxvd2VyX0NJIDwtIGxvd2VyDQpyZXN1bHQkdXBwZXJfQ0kgPC0gdXBwZXINCnJlc3VsdA0KYGBgDQoNCkVzdG8gdXNhIGxhIGZ1bmNpw7NuIHByZWRpY3QoKSBwYXJhIHByZWRlY2lyIGxhcyBwcm9iYWJpbGlkYWRlcyBsb2dhcsOtdG1pY2FzIGRlIHByZXNlbmNpYSBwYXJhIGxvcyBudWV2b3MgdmFsb3JlcyBkZSBjb3ZhcmlhYmxlLiBMdWVnbyBjb252ZXJ0aW1vcyBsYXMgcHJvYmFiaWxpZGFkZXMgbG9nYXLDrXRtaWNhcyBlbiBwcm9iYWJpbGlkYWRlcyB1c2FuZG8gbGEgZnVuY2nDs24gcGxvZ2lzKCkuIEZpbmFsbWVudGUsIGNhbGN1bGFtb3MgbG9zIGludGVydmFsb3MgZGUgY29uZmlhbnphIGRlbCA5NSAlIHBhcmEgbGFzIHByb2JhYmlsaWRhZGVzIHByZWRpY2hhcyB1c2FuZG8gbGEgZnVuY2nDs24gcW5vcm0oKSB5IGNvbmNhdGVuYW1vcyB0b2RvIGVuIHVuIG1hcmNvIGRlIGRhdG9zLlRlbmdhIGVuIGN1ZW50YSBxdWUgbG9zIHZhbG9yZXMgZGUgY292YXJpYWJsZXMgZXNwZWPDrWZpY29zIHF1ZSBlc3RhYmxlY2Vtb3MgZW4gZWwgcGFzbyA1IHNvbiBzb2xvIHVuIGVqZW1wbG8geSBkZWJlbiBjYW1iaWFyc2UgcGFyYSByZWZsZWphciBsb3MgdmFsb3JlcyBkZSBsYXMgb2JzZXJ2YWNpb25lcyByZWFsZXMgZW4gc3VzIGRhdG9zLg0K