Paquetes

require("tidyverse")
library(knitr)
library(broom)
library(car)

Datos todos

df <- read_csv("2017_recomendations_lv_cl.csv")

Veo variables

glimpse(df)
Dentista <- df %>% 
  filter(`Ud es:` == "Dentista")
Estudiante <- df %>% 
  filter(`Ud es:` == "Estudiante")

Dentistas

Tablas dentistas

kable(table(Dentista$Pais, Dentista$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`))

como parte del cuidado regular de un paciente (es decir, siempre) cuando usted sienta que es necesario en respuesta a una solicitud hecha para un consejo de higiene oral
Chile 84 25 7
Letonia 154 96 19

kable(table(Dentista$Pais, Dentista$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`))

en cada cita en la primera cita del plan de tratamiento en la primera y última cita del plan de tratamiento en la última cita del plan de tratamiento nunca ocasionalmente
Chile 38 8 31 6 0 33
Letonia 43 38 55 2 1 130

kable(table(Dentista$Pais, Dentista$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`))

No Si
Chile 17 100
Letonia 140 128

kable(table(Dentista$Pais, Dentista$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`))

1-2 minutos 10 minutos o más 5 minutos 8 minutos
Chile 25 21 47 24
Letonia 65 22 153 28

kable(table(Dentista$Pais, Dentista$`5. ¿Cómo entregaría sus consejos en higiene oral?`))

Comunicación verbal Comunicación verbal, Demostraciones Comunicación verbal, Demostraciones, Instrucciones escritas Comunicación verbal, Demostraciones, Instrucciones escritas, Vídeos Comunicación verbal, Demostraciones, Vídeos Comunicación verbal, Instrucciones escritas Comunicación verbal, Videos Comunicación verbal, Vídeos Demostraciones Demostraciones, Vídeos Instrucciones escritas Vídeos
Chile 14 39 18 8 9 0 0 2 13 10 1 2
Letonia 64 122 50 3 2 10 1 0 17 0 0 0

kable(table(Dentista$Pais, Dentista$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`))

No Si
Chile 91 26
Letonia 169 95

kable(table(Dentista$Pais, Dentista$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`))

No Si
Chile 2 115
Letonia 8 261

kable(table(Dentista$Pais, Dentista$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`))

eléctrico manual no recomendaría recomendaría
Chile 0 111 3 3
Letonia 38 147 85 0

kable(table(Dentista$Pais, Dentista$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`))

medio no recomendaría pequeño recomendaría
Chile 58 8 48 3
Letonia 83 64 123 0

kable(table(Dentista$Pais, Dentista$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`))

1-3 meses 12 meses 3-6 meses 3 meses 3 meses y despues de alguna enfermedad cuando las cerdas estén abiertas no recomendaría post operatorio recomendaría
Chile 50 0 12 38 0 3 11 1 2
Letonia 41 1 51 149 1 3 23 0 1

kable(table(Dentista$Pais, Dentista$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`))

1 2 2-3 3 4 al menos 1 después de cada comida no recomendaría recomendaría
Chile 0 8 0 89 3 1 10 5 1
Letonia 3 245 7 8 0 3 4 0 0

kable(table(Dentista$Pais, Dentista$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`))

>10 1 2 2-3 3 3-5 5 - 10 hasta que estan limpios he is wali past no recomendaría recomendaría
Chile 1 3 3 4 20 57 13 0 0 12 4
Letonia 1 5 51 25 104 34 13 3 1 30 3

kable(table(Dentista$Pais, Dentista$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`))

Barrido Bass Bass modificada Bass modificada o Stillman cepillado rotacional charters clasico fones no recomendaría recomendaría Solo technique stillman stillman modificada Stillman modificada (sin saber nombre) stillman o barrido Vertical Water pick
Chile 23 10 33 5 0 1 0 0 11 23 0 6 4 0 1 0 0
Letonia 0 2 0 0 10 0 7 1 112 58 6 0 0 62 0 11 1

kable(table(Dentista$Pais, Dentista$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`))

No Si
Chile 4 109
Letonia 2 268

kable(table(Dentista$Pais, Dentista$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`))

con fluor no recomendaría recomendaría sin fluor
Chile 112 4 1 0
Letonia 240 27 0 3

kable(table(Dentista$Pais, Dentista$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`))

0,32-0,33 0.50% 1000-1500 1000-2500 1000-5000 1400-2500 1500-5000 2000 250 2500 2500-5000 5000 depende del paciente no recomendaría recomendaría recomendaría pasta especifica
Chile 0 0 60 0 0 2 1 1 1 7 2 11 2 22 8 0
Letonia 1 2 73 1 1 2 1 0 0 0 0 1 3 182 2 1

kable(table(Dentista$Pais, Dentista$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`))

1/2 cabeza del cepillo cabeza del cepillo mas que 1/2 cabeza, menos que cabeza mas que tamaño arveja, menos que 1/2 cabeza menos que tamaño arveja muy poco, poco no recomendaría recomendaría tamaño arveja
Chile 3 2 0 15 25 2 21 6 43
Letonia 3 0 1 9 1 8 128 9 111

kable(table(Dentista$Pais, Dentista$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`))

enjuagar la pasta de dientes con agua escupir la pasta de dientes, pero no enjuagar no recomendaría parcialmente recomendaría
Chile 22 71 16 1 7
Letonia 73 41 81 75 0

kable(table(Dentista$Pais, Dentista$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`))

No Si
Chile 23 92
Letonia 29 238

kable(table(Dentista$Pais, Dentista$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`))

ambos cepillos interdentales hilo dental hilo dental, cepillos interdentales, irrigator Hilo o celillos interdentales – depende de situacion Irrigator no recomendaría recomendaría
Chile 61 1 47 0 0 0 6 2
Letonia 163 9 85 1 6 4 2 0

kable(table(Dentista$Pais, Dentista$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`))

1-2 veces al día 1 vez a la semana 1 vez al día 2-3 veces a la semana 2 veces al día 3 veces al día Al menos 1 vez al día Al menos 1 vez cada dos días con cada cepillado depende del necesidad después de cada comida no recomendaría
Chile 0 0 63 15 11 2 4 1 12 1 0 8
Letonia 13 1 110 5 38 2 31 5 9 9 7 40

kable(table(Dentista$Pais, Dentista$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`))

No Si
Chile 54 63
Letonia 46 224

kable(table(Dentista$Pais, Dentista$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 27 10 77 2
Letonia 37 0 232 1

kable(table(Dentista$Pais, Dentista$`14. La persona promedio de mi país tiene buena salud oral.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 10 64 1 42
Letonia 37 200 3 30

kable(table(Dentista$Pais, Dentista$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 54 6 55 1
Letonia 111 6 152 1

kable(table(Dentista$Pais, Dentista$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 36 33 12 36
Letonia 38 141 8 79

kable(table(Dentista$Pais, Dentista$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 66 14 32 5
Letonia 139 94 26 8

kable(table(Dentista$Pais, Dentista$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 30 56 13 18
Letonia 137 34 97 1

kable(table(Dentista$Pais, Dentista$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 75 3 38 0
Letonia 173 43 45 4

kable(table(Dentista$Pais, Dentista$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 67 4 42 3
Letonia 139 69 45 7

kable(table(Dentista$Pais, Dentista$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 55 40 17 2
Letonia 97 138 15 11

kable(table(Dentista$Pais, Dentista$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 29 2 83 2
Letonia 121 8 135 2

kable(table(Dentista$Pais, Dentista$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`))

0-4 10-19 20 y más 5-9
Chile 36 17 28 36
Letonia 95 31 46 81

kable(table(Dentista$Pais, Dentista$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`))

No Si
Chile 15 101
Letonia 83 182

kable(table(Dentista$Pais, Dentista$`25. En su opinión ¿qué formación adicional siente que es necesaria?`))

Clases teóricas Clases teóricas, Demostraciones prácticas Clases teóricas, Demostraciones prácticas, Experiencia con pacientes propios Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Clases teóricas, Experiencia con pacientes propios Clases teóricas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas Demostraciones prácticas, Experiencia con pacientes propios Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Experiencia con pacientes propios Observando a expertos entregando consejos a pacientes reales Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios
Chile 8 6 1 3 12 3 0 12 9 2 3 29 7 6
Letonia 52 40 15 11 21 12 4 30 5 8 6 24 24 10

kable(table(Dentista$Pais, Dentista$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`))

No Si
Chile 2 115
Letonia 24 246

kable(table(Dentista$Pais, Dentista$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`))
No Si
Chile 32 85
Letonia 45 223

Prop table dentists

options(digits=3)
kable(prop.table(table(Dentista$Pais, Dentista$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`), 1)*100)

como parte del cuidado regular de un paciente (es decir, siempre) cuando usted sienta que es necesario en respuesta a una solicitud hecha para un consejo de higiene oral
Chile 72.4 21.6 6.03
Letonia 57.2 35.7 7.06

kable(prop.table(table(Dentista$Pais, Dentista$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`), 1)*100)

en cada cita en la primera cita del plan de tratamiento en la primera y última cita del plan de tratamiento en la última cita del plan de tratamiento nunca ocasionalmente
Chile 32.8 6.9 26.7 5.172 0.000 28.4
Letonia 16.0 14.1 20.4 0.743 0.372 48.3

kable(prop.table(table(Dentista$Pais, Dentista$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`), 1)*100)

No Si
Chile 14.5 85.5
Letonia 52.2 47.8

kable(prop.table(table(Dentista$Pais, Dentista$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`), 1)*100)

1-2 minutos 10 minutos o más 5 minutos 8 minutos
Chile 21.4 17.95 40.2 20.5
Letonia 24.3 8.21 57.1 10.4

kable(prop.table(table(Dentista$Pais, Dentista$`5. ¿Cómo entregaría sus consejos en higiene oral?`), 1)*100)

Comunicación verbal Comunicación verbal, Demostraciones Comunicación verbal, Demostraciones, Instrucciones escritas Comunicación verbal, Demostraciones, Instrucciones escritas, Vídeos Comunicación verbal, Demostraciones, Vídeos Comunicación verbal, Instrucciones escritas Comunicación verbal, Videos Comunicación verbal, Vídeos Demostraciones Demostraciones, Vídeos Instrucciones escritas Vídeos
Chile 12.1 33.6 15.5 6.90 7.759 0.00 0.000 1.72 11.21 8.62 0.862 1.72
Letonia 23.8 45.4 18.6 1.11 0.743 3.72 0.372 0.00 6.32 0.00 0.000 0.00

kable(prop.table(table(Dentista$Pais, Dentista$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`), 1)*100)

No Si
Chile 77.8 22.2
Letonia 64.0 36.0

kable(prop.table(table(Dentista$Pais, Dentista$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 1.71 98.3
Letonia 2.97 97.0

kable(prop.table(table(Dentista$Pais, Dentista$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`), 1)*100)

eléctrico manual no recomendaría recomendaría
Chile 0.0 94.9 2.56 2.56
Letonia 14.1 54.4 31.48 0.00

kable(prop.table(table(Dentista$Pais, Dentista$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`), 1)*100)

medio no recomendaría pequeño recomendaría
Chile 49.6 6.84 41.0 2.56
Letonia 30.7 23.70 45.6 0.00

kable(prop.table(table(Dentista$Pais, Dentista$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`), 1)*100)

1-3 meses 12 meses 3-6 meses 3 meses 3 meses y despues de alguna enfermedad cuando las cerdas estén abiertas no recomendaría post operatorio recomendaría
Chile 42.7 0.00 10.3 32.5 0.00 2.56 9.40 0.855 1.71
Letonia 15.2 0.37 18.9 55.2 0.37 1.11 8.52 0.000 0.37

kable(prop.table(table(Dentista$Pais, Dentista$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`), 1)*100)

1 2 2-3 3 4 al menos 1 después de cada comida no recomendaría recomendaría
Chile 0.00 6.84 0.00 76.07 2.56 0.855 8.55 4.27 0.855
Letonia 1.11 90.74 2.59 2.96 0.00 1.111 1.48 0.00 0.000

kable(prop.table(table(Dentista$Pais, Dentista$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`), 1)*100)

>10 1 2 2-3 3 3-5 5 - 10 hasta que estan limpios he is wali past no recomendaría recomendaría
Chile 0.855 2.56 2.56 3.42 17.1 48.7 11.11 0.00 0.00 10.3 3.42
Letonia 0.370 1.85 18.89 9.26 38.5 12.6 4.82 1.11 0.37 11.1 1.11

kable(prop.table(table(Dentista$Pais, Dentista$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`), 1)*100)

Barrido Bass Bass modificada Bass modificada o Stillman cepillado rotacional charters clasico fones no recomendaría recomendaría Solo technique stillman stillman modificada Stillman modificada (sin saber nombre) stillman o barrido Vertical Water pick
Chile 19.7 8.547 28.2 4.27 0.0 0.855 0.00 0.00 9.4 19.7 0.00 5.13 3.42 0 0.855 0.00 0.00
Letonia 0.0 0.741 0.0 0.00 3.7 0.000 2.59 0.37 41.5 21.5 2.22 0.00 0.00 23 0.000 4.07 0.37

kable(prop.table(table(Dentista$Pais, Dentista$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 3.540 96.5
Letonia 0.741 99.3

kable(prop.table(table(Dentista$Pais, Dentista$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`), 1)*100)

con fluor no recomendaría recomendaría sin fluor
Chile 95.7 3.42 0.855 0.00
Letonia 88.9 10.00 0.000 1.11

kable(prop.table(table(Dentista$Pais, Dentista$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`), 1)*100)

0,32-0,33 0.50% 1000-1500 1000-2500 1000-5000 1400-2500 1500-5000 2000 250 2500 2500-5000 5000 depende del paciente no recomendaría recomendaría recomendaría pasta especifica
Chile 0.00 0.000 51.3 0.00 0.00 1.709 0.855 0.855 0.855 5.98 1.71 9.40 1.71 18.8 6.838 0.00
Letonia 0.37 0.741 27.0 0.37 0.37 0.741 0.370 0.000 0.000 0.00 0.00 0.37 1.11 67.4 0.741 0.37

kable(prop.table(table(Dentista$Pais, Dentista$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`), 1)*100)

1/2 cabeza del cepillo cabeza del cepillo mas que 1/2 cabeza, menos que cabeza mas que tamaño arveja, menos que 1/2 cabeza menos que tamaño arveja muy poco, poco no recomendaría recomendaría tamaño arveja
Chile 2.56 1.71 0.00 12.82 21.37 1.71 17.9 5.13 36.8
Letonia 1.11 0.00 0.37 3.33 0.37 2.96 47.4 3.33 41.1

kable(prop.table(table(Dentista$Pais, Dentista$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`), 1)*100)

enjuagar la pasta de dientes con agua escupir la pasta de dientes, pero no enjuagar no recomendaría parcialmente recomendaría
Chile 18.8 60.7 13.7 0.855 5.98
Letonia 27.0 15.2 30.0 27.778 0.00

kable(prop.table(table(Dentista$Pais, Dentista$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 20.0 80.0
Letonia 10.9 89.1

kable(prop.table(table(Dentista$Pais, Dentista$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`), 1)*100)

ambos cepillos interdentales hilo dental hilo dental, cepillos interdentales, irrigator Hilo o celillos interdentales – depende de situacion Irrigator no recomendaría recomendaría
Chile 52.1 0.855 40.2 0.00 0.00 0.00 5.128 1.71
Letonia 60.4 3.333 31.5 0.37 2.22 1.48 0.741 0.00

kable(prop.table(table(Dentista$Pais, Dentista$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`), 1)*100)

1-2 veces al día 1 vez a la semana 1 vez al día 2-3 veces a la semana 2 veces al día 3 veces al día Al menos 1 vez al día Al menos 1 vez cada dos días con cada cepillado depende del necesidad después de cada comida no recomendaría
Chile 0.00 0.00 53.8 12.82 9.4 1.709 3.42 0.855 10.26 0.855 0.00 6.84
Letonia 4.82 0.37 40.7 1.85 14.1 0.741 11.48 1.852 3.33 3.333 2.59 14.81

kable(prop.table(table(Dentista$Pais, Dentista$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`), 1)*100)

No Si
Chile 46.2 53.8
Letonia 17.0 83.0

kable(prop.table(table(Dentista$Pais, Dentista$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 23.3 8.62 66.4 1.72
Letonia 13.7 0.00 85.9 0.37

kable(prop.table(table(Dentista$Pais, Dentista$`14. La persona promedio de mi país tiene buena salud oral.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 8.55 54.7 0.855 35.9
Letonia 13.70 74.1 1.111 11.1

kable(prop.table(table(Dentista$Pais, Dentista$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 46.6 5.17 47.4 0.862
Letonia 41.1 2.22 56.3 0.370

kable(prop.table(table(Dentista$Pais, Dentista$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 30.8 28.2 10.26 30.8
Letonia 14.3 53.0 3.01 29.7

kable(prop.table(table(Dentista$Pais, Dentista$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 56.4 12.0 27.35 4.27
Letonia 52.1 35.2 9.74 3.00

kable(prop.table(table(Dentista$Pais, Dentista$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 25.6 47.9 11.1 15.385
Letonia 50.9 12.6 36.1 0.372

kable(prop.table(table(Dentista$Pais, Dentista$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 64.7 2.59 32.8 0.00
Letonia 65.3 16.23 17.0 1.51

kable(prop.table(table(Dentista$Pais, Dentista$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 57.8 3.45 36.2 2.59
Letonia 53.5 26.54 17.3 2.69

kable(prop.table(table(Dentista$Pais, Dentista$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 48.2 35.1 14.91 1.75
Letonia 37.2 52.9 5.75 4.21

kable(prop.table(table(Dentista$Pais, Dentista$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 25.0 1.72 71.6 1.724
Letonia 45.5 3.01 50.8 0.752

kable(prop.table(table(Dentista$Pais, Dentista$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`), 1)*100)

0-4 10-19 20 y más 5-9
Chile 30.8 14.5 23.9 30.8
Letonia 37.5 12.3 18.2 32.0

kable(prop.table(table(Dentista$Pais, Dentista$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`), 1)*100)

No Si
Chile 12.9 87.1
Letonia 31.3 68.7

kable(prop.table(table(Dentista$Pais, Dentista$`25. En su opinión ¿qué formación adicional siente que es necesaria?`), 1)*100)

Clases teóricas Clases teóricas, Demostraciones prácticas Clases teóricas, Demostraciones prácticas, Experiencia con pacientes propios Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Clases teóricas, Experiencia con pacientes propios Clases teóricas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas Demostraciones prácticas, Experiencia con pacientes propios Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Experiencia con pacientes propios Observando a expertos entregando consejos a pacientes reales Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios
Chile 7.92 5.94 0.99 2.97 11.88 2.97 0.00 11.9 8.91 1.98 2.97 28.71 6.93 5.94
Letonia 19.85 15.27 5.72 4.20 8.02 4.58 1.53 11.4 1.91 3.05 2.29 9.16 9.16 3.82

kable(prop.table(table(Dentista$Pais, Dentista$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`), 1)*100)

No Si
Chile 1.71 98.3
Letonia 8.89 91.1

kable(prop.table(table(Dentista$Pais, Dentista$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`), 1)*100)
No Si
Chile 27.4 72.7
Letonia 16.8 83.2

Test dentistas

chisq.test(table(Dentista$Pais, Dentista$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`))

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`)
X-squared = 8, df = 2, p-value = 0.02
chisq.test(table(Dentista$Pais, Dentista$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`)
X-squared = 30, df = 5, p-value = 8e-06
chisq.test(table(Dentista$Pais, Dentista$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`)
X-squared = 50, df = 1, p-value = 1e-11
chisq.test(table(Dentista$Pais, Dentista$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`))

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`)
X-squared = 20, df = 3, p-value = 5e-04
chisq.test(table(Dentista$Pais, Dentista$`5. ¿Cómo entregaría sus consejos en higiene oral?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`5. ¿Cómo entregaría sus consejos en higiene oral?`)
X-squared = 70, df = 10, p-value = 2e-11
chisq.test(table(Dentista$Pais, Dentista$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`)
X-squared = 6, df = 1, p-value = 0.01
chisq.test(table(Dentista$Pais, Dentista$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`)
X-squared = 0.1, df = 1, p-value = 0.7
chisq.test(table(Dentista$Pais, Dentista$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`)
X-squared = 70, df = 3, p-value = 8e-16
chisq.test(table(Dentista$Pais, Dentista$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`)
X-squared = 30, df = 3, p-value = 4e-06
chisq.test(table(Dentista$Pais, Dentista$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`)
X-squared = 50, df = 8, p-value = 4e-07
chisq.test(table(Dentista$Pais, Dentista$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`)
X-squared = 300, df = 8, p-value <2e-16
chisq.test(table(Dentista$Pais, Dentista$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`)
X-squared = 90, df = 10, p-value = 3e-14
chisq.test(table(Dentista$Pais, Dentista$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`)
X-squared = 300, df = 20, p-value <2e-16
chisq.test(table(Dentista$Pais, Dentista$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`)
X-squared = 2, df = 1, p-value = 0.1
chisq.test(table(Dentista$Pais, Dentista$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`)
X-squared = 8, df = 3, p-value = 0.04
chisq.test(table(Dentista$Pais, Dentista$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`)
X-squared = 100, df = 20, p-value <2e-16
chisq.test(table(Dentista$Pais, Dentista$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`)
X-squared = 90, df = 8, p-value = 2e-16
chisq.test(table(Dentista$Pais, Dentista$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`)
X-squared = 100, df = 4, p-value <2e-16
chisq.test(table(Dentista$Pais, Dentista$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`)
X-squared = 5, df = 1, p-value = 0.03
chisq.test(table(Dentista$Pais, Dentista$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`)
X-squared = 20, df = 7, p-value = 0.003
chisq.test(table(Dentista$Pais, Dentista$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`)
X-squared = 50, df = 10, p-value = 2e-07
chisq.test(table(Dentista$Pais, Dentista$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`)
X-squared = 30, df = 1, p-value = 4e-09
chisq.test(table(Dentista$Pais, Dentista$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`)
X-squared = 30, df = 3, p-value = 2e-07
chisq.test(table(Dentista$Pais, Dentista$`14. La persona promedio de mi país tiene buena salud oral.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`14. La persona promedio de mi país tiene buena salud oral.`)
X-squared = 30, df = 3, p-value = 3e-07
chisq.test(table(Dentista$Pais, Dentista$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`)
X-squared = 4, df = 3, p-value = 0.2
chisq.test(table(Dentista$Pais, Dentista$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`))

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`)
X-squared = 30, df = 3, p-value = 1e-06
chisq.test(table(Dentista$Pais, Dentista$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`)
X-squared = 30, df = 3, p-value = 3e-07
chisq.test(table(Dentista$Pais, Dentista$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`))

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`)
X-squared = 100, df = 3, p-value <2e-16
chisq.test(table(Dentista$Pais, Dentista$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`)
X-squared = 20, df = 3, p-value = 3e-05
chisq.test(table(Dentista$Pais, Dentista$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`)
X-squared = 30, df = 3, p-value = 1e-07
chisq.test(table(Dentista$Pais, Dentista$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`)
X-squared = 20, df = 3, p-value = 7e-04
chisq.test(table(Dentista$Pais, Dentista$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`)
X-squared = 20, df = 3, p-value = 0.001
chisq.test(table(Dentista$Pais, Dentista$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`))

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`)
X-squared = 3, df = 3, p-value = 0.4
chisq.test(table(Dentista$Pais, Dentista$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`)
X-squared = 10, df = 1, p-value = 3e-04
chisq.test(table(Dentista$Pais, Dentista$`25. En su opinión ¿qué formación adicional siente que es necesaria?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Dentista$Pais, Dentista$`25. En su opinión ¿qué formación adicional siente que es necesaria?`)
X-squared = 50, df = 10, p-value = 5e-06
chisq.test(table(Dentista$Pais, Dentista$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`)
X-squared = 6, df = 1, p-value = 0.02
chisq.test(table(Dentista$Pais, Dentista$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Dentista$Pais, Dentista$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`)
X-squared = 5, df = 1, p-value = 0.02

Graficos dentistas

mosaicplot(table(Dentista$Pais, Dentista$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`5. ¿Cómo entregaría sus consejos en higiene oral?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`14. La persona promedio de mi país tiene buena salud oral.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`25. En su opinión ¿qué formación adicional siente que es necesaria?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`), shade = T)

mosaicplot(table(Dentista$Pais, Dentista$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`), shade = T)

Estudiantes

Tablas estudiantes

kable(table(Estudiante$Pais, Estudiante$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`))

como parte del cuidado regular de un paciente (es decir, siempre) cuando usted sienta que es necesario en respuesta a una solicitud hecha para un consejo de higiene oral
Chile 185 33 7
Letonia 34 15 3

kable(table(Estudiante$Pais, Estudiante$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`))

en cada cita en la primera cita del plan de tratamiento en la primera y última cita del plan de tratamiento ocasionalmente
Chile 81 25 53 66
Letonia 14 3 20 15

kable(table(Estudiante$Pais, Estudiante$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`))

No Si
Chile 14 211
Letonia 26 26

kable(table(Estudiante$Pais, Estudiante$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`))

1-2 minutos 10 minutos o más 5 minutos 8 minutos
Chile 9 63 101 52
Letonia 21 6 18 7

kable(table(Estudiante$Pais, Estudiante$`5. ¿Cómo entregaría sus consejos en higiene oral?`))

Comunicación verbal Comunicación verbal, Demostraciones Comunicación verbal, Demostraciones, Instrucciones escritas Comunicación verbal, Demostraciones, Instrucciones escritas, Vídeos Comunicación verbal, Demostraciones, Vídeos Comunicación verbal, Instrucciones escritas Comunicación verbal, Vídeos Demostraciones Demostraciones, Vídeos Vídeos
Chile 4 86 17 34 24 0 4 44 10 2
Letonia 6 36 6 1 0 1 0 2 0 0

kable(table(Estudiante$Pais, Estudiante$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`))

No Si
Chile 172 51
Letonia 29 23

kable(table(Estudiante$Pais, Estudiante$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`))

No Si
Chile 4 220
Letonia 0 52

kable(table(Estudiante$Pais, Estudiante$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`))

eléctrico manual no recomendaría recomendaría
Chile 1 217 1 6
Letonia 6 32 14 0

kable(table(Estudiante$Pais, Estudiante$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`))

medio no recomendaría pequeño recomendaría
Chile 112 21 84 8
Letonia 22 15 15 0

kable(table(Estudiante$Pais, Estudiante$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`))

1-3 meses 3-6 meses 3 meses cuando las cerdas estén abiertas no recomendaría recomendaría
Chile 74 15 109 4 20 3
Letonia 8 4 31 0 9 0

kable(table(Estudiante$Pais, Estudiante$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`))

2 2-3 3 después de cada comida no recomendaría
Chile 5 0 197 14 9
Letonia 44 4 1 0 3

kable(table(Estudiante$Pais, Estudiante$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`))

>10 1 2 2-3 3 3-5 5 - 10 no recomendaría recomendaría
Chile 4 4 9 7 37 107 23 29 5
Letonia 0 1 10 10 21 4 0 6 0

kable(table(Estudiante$Pais, Estudiante$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`))

Barrido Barrido o Bass modificada Bass Bass modificada Bass modificada o Stillman Bass o Stillman Electric no recomendaría recomendaría stillman stillman modificada Stillman modificada (sin saber nombre) Vertical
Chile 17 1 19 94 3 1 0 19 58 5 8 0 0
Letonia 0 0 0 0 0 0 1 25 3 0 0 22 1

kable(table(Estudiante$Pais, Estudiante$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`))

No Si
Chile 2 219
Letonia 0 49

kable(table(Estudiante$Pais, Estudiante$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`))

con fluor no recomendaría recomendaría sin fluor
Chile 212 12 1 0
Letonia 47 4 0 1

kable(table(Estudiante$Pais, Estudiante$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`))

1000-1500 110 1400-2500 1400-5000 1500-3500 2500 500-1450 5000 depende del paciente no recomendaría recomendaría
Chile 140 1 4 2 1 13 1 7 8 44 4
Letonia 41 0 0 0 0 0 0 0 0 11 0

kable(table(Estudiante$Pais, Estudiante$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`))

1/2 cabeza del cepillo cabeza del cepillo mas que 1/2 cabeza, menos que cabeza mas que tamaño arveja, menos que 1/2 cabeza menos que tamaño arveja muy poco, poco no recomendaría recomendaría tamaño arveja
Chile 4 0 3 12 45 4 54 5 98
Letonia 1 1 0 2 0 0 20 1 27

kable(table(Estudiante$Pais, Estudiante$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`))

enjuagar la pasta de dientes con agua escupir la pasta de dientes, pero no enjuagar no recomendaría parcialmente recomendaría
Chile 10 158 31 21 5
Letonia 3 14 13 22 0

kable(table(Estudiante$Pais, Estudiante$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`))

No Si
Chile 30 192
Letonia 5 44

kable(table(Estudiante$Pais, Estudiante$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`))

ambos cepillos interdentales hilo dental Hilo o celillos interdentales – depende de situacion no recomendaría recomendaría
Chile 83 1 131 0 3 7
Letonia 15 1 27 6 3 0

kable(table(Estudiante$Pais, Estudiante$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`))

1-2 veces al día 1 vez a la semana 1 vez al día 2-3 veces a la semana 2 veces al día 3 veces al día Al menos 1 vez al día Al menos 1 vez cada dos días con cada cepillado después de cada comida no recomendaría recomendaría
Chile 2 5 132 13 17 13 16 2 14 1 8 2
Letonia 0 0 28 0 7 0 4 0 2 1 10 0

kable(table(Estudiante$Pais, Estudiante$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`))

No Si
Chile 139 86
Letonia 18 34

kable(table(Estudiante$Pais, Estudiante$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 40 10 172 3
Letonia 6 0 43 0

kable(table(Estudiante$Pais, Estudiante$`14. La persona promedio de mi país tiene buena salud oral.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 9 128 2 86
Letonia 5 37 0 7

kable(table(Estudiante$Pais, Estudiante$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 74 5 141 3
Letonia 16 0 33 0

kable(table(Estudiante$Pais, Estudiante$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 39 98 12 76
Letonia 7 22 0 20

kable(table(Estudiante$Pais, Estudiante$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 144 31 48 2
Letonia 30 13 6 0

kable(table(Estudiante$Pais, Estudiante$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 82 95 9 37
Letonia 26 11 12 0

kable(table(Estudiante$Pais, Estudiante$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`))

De acuerdo En desacuerdo Muy de acuerdo
Chile 133 7 82
Letonia 36 5 8

kable(table(Estudiante$Pais, Estudiante$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 123 19 75 7
Letonia 28 12 9 0

kable(table(Estudiante$Pais, Estudiante$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`))

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 123 55 27 5
Letonia 21 25 2 0

kable(table(Estudiante$Pais, Estudiante$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`))

De acuerdo En desacuerdo Muy de acuerdo
Chile 54 3 168
Letonia 27 2 20

kable(table(Estudiante$Pais, Estudiante$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`))

0-4 10-19 20 y más 5-9
Chile 100 25 12 88
Letonia 12 12 12 13

kable(table(Estudiante$Pais, Estudiante$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`))

No Si
Chile 74 151
Letonia 8 41

kable(table(Estudiante$Pais, Estudiante$`25. En su opinión ¿qué formación adicional siente que es necesaria?`))

Clases teóricas Clases teóricas, Demostraciones prácticas Clases teóricas, Demostraciones prácticas, Experiencia con pacientes propios Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Clases teóricas, Experiencia con pacientes propios Clases teóricas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas Demostraciones prácticas, Experiencia con pacientes propios Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Experiencia con pacientes propios Observando a expertos entregando consejos a pacientes reales Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios
Chile 6 8 8 8 34 6 2 26 12 28 15 30 24 14
Letonia 1 4 1 2 8 1 0 6 5 2 2 11 1 2

kable(table(Estudiante$Pais, Estudiante$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`))

No Si
Chile 24 201
Letonia 3 45

kable(table(Estudiante$Pais, Estudiante$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`))
No Si
Chile 48 177
Letonia 10 39

Prop table estudiante

kable(prop.table(table(Estudiante$Pais, Estudiante$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`), 1)*100)

como parte del cuidado regular de un paciente (es decir, siempre) cuando usted sienta que es necesario en respuesta a una solicitud hecha para un consejo de higiene oral
Chile 82.2 14.7 3.11
Letonia 65.4 28.8 5.77

kable(prop.table(table(Estudiante$Pais, Estudiante$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`), 1)*100)

en cada cita en la primera cita del plan de tratamiento en la primera y última cita del plan de tratamiento ocasionalmente
Chile 36.0 11.11 23.6 29.3
Letonia 26.9 5.77 38.5 28.8

kable(prop.table(table(Estudiante$Pais, Estudiante$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`), 1)*100)

No Si
Chile 6.22 93.8
Letonia 50.00 50.0

kable(prop.table(table(Estudiante$Pais, Estudiante$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`), 1)*100)

1-2 minutos 10 minutos o más 5 minutos 8 minutos
Chile 4.0 28.0 44.9 23.1
Letonia 40.4 11.5 34.6 13.5

kable(prop.table(table(Estudiante$Pais, Estudiante$`5. ¿Cómo entregaría sus consejos en higiene oral?`), 1)*100)

Comunicación verbal Comunicación verbal, Demostraciones Comunicación verbal, Demostraciones, Instrucciones escritas Comunicación verbal, Demostraciones, Instrucciones escritas, Vídeos Comunicación verbal, Demostraciones, Vídeos Comunicación verbal, Instrucciones escritas Comunicación verbal, Vídeos Demostraciones Demostraciones, Vídeos Vídeos
Chile 1.78 38.2 7.56 15.11 10.7 0.00 1.78 19.56 4.44 0.889
Letonia 11.54 69.2 11.54 1.92 0.0 1.92 0.00 3.85 0.00 0.000

kable(prop.table(table(Estudiante$Pais, Estudiante$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`), 1)*100)

No Si
Chile 77.1 22.9
Letonia 55.8 44.2

kable(prop.table(table(Estudiante$Pais, Estudiante$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 1.79 98.2
Letonia 0.00 100.0

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`), 1)*100)

eléctrico manual no recomendaría recomendaría
Chile 0.444 96.4 0.444 2.67
Letonia 11.538 61.5 26.923 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`), 1)*100)

medio no recomendaría pequeño recomendaría
Chile 49.8 9.33 37.3 3.56
Letonia 42.3 28.85 28.8 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`), 1)*100)

1-3 meses 3-6 meses 3 meses cuando las cerdas estén abiertas no recomendaría recomendaría
Chile 32.9 6.67 48.4 1.78 8.89 1.33
Letonia 15.4 7.69 59.6 0.00 17.31 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`), 1)*100)

2 2-3 3 después de cada comida no recomendaría
Chile 2.22 0.00 87.56 6.22 4.00
Letonia 84.61 7.69 1.92 0.00 5.77

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`), 1)*100)

>10 1 2 2-3 3 3-5 5 - 10 no recomendaría recomendaría
Chile 1.78 1.78 4.0 3.11 16.4 47.56 10.2 12.9 2.22
Letonia 0.00 1.92 19.2 19.23 40.4 7.69 0.0 11.5 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`), 1)*100)

Barrido Barrido o Bass modificada Bass Bass modificada Bass modificada o Stillman Bass o Stillman Electric no recomendaría recomendaría stillman stillman modificada Stillman modificada (sin saber nombre) Vertical
Chile 7.56 0.444 8.44 41.8 1.33 0.444 0.00 8.44 25.78 2.22 3.56 0.0 0.00
Letonia 0.00 0.000 0.00 0.0 0.00 0.000 1.92 48.08 5.77 0.00 0.00 42.3 1.92

kable(prop.table(table(Estudiante$Pais, Estudiante$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 0.905 99.1
Letonia 0.000 100.0

kable(prop.table(table(Estudiante$Pais, Estudiante$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`), 1)*100)

con fluor no recomendaría recomendaría sin fluor
Chile 94.2 5.33 0.444 0.00
Letonia 90.4 7.69 0.000 1.92

kable(prop.table(table(Estudiante$Pais, Estudiante$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`), 1)*100)

1000-1500 110 1400-2500 1400-5000 1500-3500 2500 500-1450 5000 depende del paciente no recomendaría recomendaría
Chile 62.2 0.444 1.78 0.889 0.444 5.78 0.444 3.11 3.56 19.6 1.78
Letonia 78.8 0.000 0.00 0.000 0.000 0.00 0.000 0.00 0.00 21.2 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`), 1)*100)

1/2 cabeza del cepillo cabeza del cepillo mas que 1/2 cabeza, menos que cabeza mas que tamaño arveja, menos que 1/2 cabeza menos que tamaño arveja muy poco, poco no recomendaría recomendaría tamaño arveja
Chile 1.78 0.00 1.33 5.33 20 1.78 24.0 2.22 43.6
Letonia 1.92 1.92 0.00 3.85 0 0.00 38.5 1.92 51.9

kable(prop.table(table(Estudiante$Pais, Estudiante$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`), 1)*100)

enjuagar la pasta de dientes con agua escupir la pasta de dientes, pero no enjuagar no recomendaría parcialmente recomendaría
Chile 4.44 70.2 13.8 9.33 2.22
Letonia 5.77 26.9 25.0 42.31 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`), 1)*100)

No Si
Chile 13.5 86.5
Letonia 10.2 89.8

kable(prop.table(table(Estudiante$Pais, Estudiante$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`), 1)*100)

ambos cepillos interdentales hilo dental Hilo o celillos interdentales – depende de situacion no recomendaría recomendaría
Chile 36.9 0.444 58.2 0.0 1.33 3.11
Letonia 28.8 1.923 51.9 11.5 5.77 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`), 1)*100)

1-2 veces al día 1 vez a la semana 1 vez al día 2-3 veces a la semana 2 veces al día 3 veces al día Al menos 1 vez al día Al menos 1 vez cada dos días con cada cepillado después de cada comida no recomendaría recomendaría
Chile 0.889 2.22 58.7 5.78 7.56 5.78 7.11 0.889 6.22 0.444 3.56 0.889
Letonia 0.000 0.00 53.8 0.00 13.46 0.00 7.69 0.000 3.85 1.923 19.23 0.000

kable(prop.table(table(Estudiante$Pais, Estudiante$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`), 1)*100)

No Si
Chile 61.8 38.2
Letonia 34.6 65.4

kable(prop.table(table(Estudiante$Pais, Estudiante$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 17.8 4.44 76.4 1.33
Letonia 12.2 0.00 87.8 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`14. La persona promedio de mi país tiene buena salud oral.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 4.0 56.9 0.889 38.2
Letonia 10.2 75.5 0.000 14.3

kable(prop.table(table(Estudiante$Pais, Estudiante$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 33.2 2.24 63.2 1.34
Letonia 32.7 0.00 67.3 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 17.3 43.6 5.33 33.8
Letonia 14.3 44.9 0.00 40.8

kable(prop.table(table(Estudiante$Pais, Estudiante$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 64.0 13.8 21.3 0.889
Letonia 61.2 26.5 12.2 0.000

kable(prop.table(table(Estudiante$Pais, Estudiante$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 36.8 42.6 4.04 16.6
Letonia 53.1 22.4 24.49 0.0

kable(prop.table(table(Estudiante$Pais, Estudiante$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo
Chile 59.9 3.15 36.9
Letonia 73.5 10.20 16.3

kable(prop.table(table(Estudiante$Pais, Estudiante$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 54.9 8.48 33.5 3.12
Letonia 57.1 24.49 18.4 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo Muy en desacuerdo
Chile 58.6 26.2 12.86 2.38
Letonia 43.8 52.1 4.17 0.00

kable(prop.table(table(Estudiante$Pais, Estudiante$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`), 1)*100)

De acuerdo En desacuerdo Muy de acuerdo
Chile 24.0 1.33 74.7
Letonia 55.1 4.08 40.8

kable(prop.table(table(Estudiante$Pais, Estudiante$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`), 1)*100)

0-4 10-19 20 y más 5-9
Chile 44.4 11.1 5.33 39.1
Letonia 24.5 24.5 24.49 26.5

kable(prop.table(table(Estudiante$Pais, Estudiante$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`), 1)*100)

No Si
Chile 32.9 67.1
Letonia 16.3 83.7

kable(prop.table(table(Estudiante$Pais, Estudiante$`25. En su opinión ¿qué formación adicional siente que es necesaria?`), 1)*100)

Clases teóricas Clases teóricas, Demostraciones prácticas Clases teóricas, Demostraciones prácticas, Experiencia con pacientes propios Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Clases teóricas, Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Clases teóricas, Experiencia con pacientes propios Clases teóricas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas Demostraciones prácticas, Experiencia con pacientes propios Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales Demostraciones prácticas, Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios Experiencia con pacientes propios Observando a expertos entregando consejos a pacientes reales Observando a expertos entregando consejos a pacientes reales, Experiencia con pacientes propios
Chile 2.71 3.62 3.62 3.62 15.4 2.71 0.905 11.8 5.43 12.67 6.79 13.6 10.86 6.33
Letonia 2.17 8.70 2.17 4.35 17.4 2.17 0.000 13.0 10.87 4.35 4.35 23.9 2.17 4.35

kable(prop.table(table(Estudiante$Pais, Estudiante$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`), 1)*100)

No Si
Chile 10.67 89.3
Letonia 6.25 93.8

kable(prop.table(table(Estudiante$Pais, Estudiante$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`), 1)*100)
No Si
Chile 21.3 78.7
Letonia 20.4 79.6

Test estudiantes

options(digits = 3)
chisq.test(table(Estudiante$Pais, Estudiante$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`1. Entregaría recomendaciones de higiene oral a pacientes adultos`)
X-squared = 7, df = 2, p-value = 0.03
chisq.test(table(Estudiante$Pais, Estudiante$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`))

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`2. Entregaría recomendaciones de higiene oral a pacientes adultos`)
X-squared = 6, df = 3, p-value = 0.1
chisq.test(table(Estudiante$Pais, Estudiante$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`3. ¿Le entregaría recomendación de higiene oral a CADA paciente adulto?`)
X-squared = 60, df = 1, p-value = 3e-15
chisq.test(table(Estudiante$Pais, Estudiante$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`))

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`4. ¿Cuánto tiempo dedicaría dando recomendaciones de higiene oral?`)
X-squared = 60, df = 3, p-value = 9e-13
chisq.test(table(Estudiante$Pais, Estudiante$`5. ¿Cómo entregaría sus consejos en higiene oral?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`5. ¿Cómo entregaría sus consejos en higiene oral?`)
X-squared = 50, df = 9, p-value = 4e-07
chisq.test(table(Estudiante$Pais, Estudiante$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`6. ¿Recomendaría enjuague bucal fluoridado como parte de una rutina diaria de higiene oral?`)
X-squared = 9, df = 1, p-value = 0.003
chisq.test(table(Estudiante$Pais, Estudiante$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`7. ¿Recomendaría el cepillado dental a todos los pacientes adultos?`)
X-squared = 0.1, df = 1, p-value = 0.7
chisq.test(table(Estudiante$Pais, Estudiante$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.a) Cuando recomienda el cepillado dental, ¿recomendaría usted un tipo de cepillo?`)
X-squared = 80, df = 3, p-value <2e-16
chisq.test(table(Estudiante$Pais, Estudiante$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.b) Cuando recomienda el cepillado dental, ¿recomendaría usted tamaño de la cabeza del cepillo?`)
X-squared = 20, df = 3, p-value = 0.001
chisq.test(table(Estudiante$Pais, Estudiante$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.c) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cambiar el cepillo de dientes?`)
X-squared = 10, df = 5, p-value = 0.08
chisq.test(table(Estudiante$Pais, Estudiante$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.d) Cuando recomienda el cepillado dental, ¿con qué frecuencia recomendaría usted cepillar diariamente?`)
X-squared = 200, df = 4, p-value <2e-16
chisq.test(table(Estudiante$Pais, Estudiante$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.e) Cuando recomienda el cepillado dental, ¿cuánto tiempo recomendaría usted para cepillar?`)
X-squared = 70, df = 8, p-value = 1e-11
chisq.test(table(Estudiante$Pais, Estudiante$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`8.f) Cuando recomienda el cepillado dental, ¿recomendaría usted una técnica de cepillado?`)
X-squared = 200, df = 10, p-value <2e-16
chisq.test(table(Estudiante$Pais, Estudiante$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`9. ¿Recomendaría el uso de pasta dental a todos los pacientes adultos?`)
X-squared = 2e-29, df = 1, p-value = 1
chisq.test(table(Estudiante$Pais, Estudiante$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`10.a) Cuando recomienda pasta dental, ¿recomendaría usted un tipo de pasta dental?`)
X-squared = 5, df = 3, p-value = 0.2
chisq.test(table(Estudiante$Pais, Estudiante$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`10.b) Cuando recomienda pasta dental, ¿cual concentración de pasta dental recomendaría?`)
X-squared = 10, df = 10, p-value = 0.3
chisq.test(table(Estudiante$Pais, Estudiante$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`10.c) Cuando recomienda pasta dental, ¿cuanta cantidad de pasta de dientes a utilizar cada vez?`)
X-squared = 20, df = 8, p-value = 0.009
chisq.test(table(Estudiante$Pais, Estudiante$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`10.d) Cuando recomienda pasta dental, ¿que tipo de enjuage recomendaría?`)
X-squared = 50, df = 4, p-value = 2e-09
chisq.test(table(Estudiante$Pais, Estudiante$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`11. ¿Recomendaría limpieza interdental a todos los pacientes adultos?`)
X-squared = 0.2, df = 1, p-value = 0.7
chisq.test(table(Estudiante$Pais, Estudiante$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`12.a) Cuando recomienda la limpieza interdental, ¿recomendaría un tipo de dispositivo interdental?`)
X-squared = 30, df = 5, p-value = 3e-06
chisq.test(table(Estudiante$Pais, Estudiante$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`12.b) Cuando recomienda la limpieza interdental, ¿cada cuanto recomienda utilizarlo?`)
X-squared = 30, df = 10, p-value = 0.003
chisq.test(table(Estudiante$Pais, Estudiante$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`12.c) Cuando recomienda la limpieza interdental, ¿demostraría una técnica ?`)
X-squared = 10, df = 1, p-value = 7e-04
chisq.test(table(Estudiante$Pais, Estudiante$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`13. La higiene oral juega un rol causal en muchas enfermedades orales.`)
X-squared = 4, df = 3, p-value = 0.2
chisq.test(table(Estudiante$Pais, Estudiante$`14. La persona promedio de mi país tiene buena salud oral.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`14. La persona promedio de mi país tiene buena salud oral.`)
X-squared = 10, df = 3, p-value = 0.006
chisq.test(table(Estudiante$Pais, Estudiante$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`15. Modificaciones a la higiene oral pueden prevenir muchas enfermedades oral.`)
X-squared = 2, df = 3, p-value = 0.6
chisq.test(table(Estudiante$Pais, Estudiante$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`16. La profilaxis profesional no tiene efecto sobre la salud oral de los individuos.`)
X-squared = 3, df = 3, p-value = 0.3
chisq.test(table(Estudiante$Pais, Estudiante$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`17. Los dentistas no dan suficientes recomendaciones sobre higiene oral a sus pacientes.`)
X-squared = 6, df = 3, p-value = 0.1
chisq.test(table(Estudiante$Pais, Estudiante$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`18. El personal dental (dentistas y auxiliares) desempeñan el mismo rol en brindar consejos de higiene oral a los pacientes.`)
X-squared = 40, df = 3, p-value = 5e-08
chisq.test(table(Estudiante$Pais, Estudiante$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`19. Consejos de salud bucal contradictorios pueden tener un efecto negativo en el comportamiento, la motivación y las actitudes de un individuo.`)
X-squared = 10, df = 2, p-value = 0.004
chisq.test(table(Estudiante$Pais, Estudiante$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`20. La eliminación de las contradicciones en los mensajes de salud oral puede tener efectos positivos sobre la salud oral de los chilenos.`)
X-squared = 10, df = 3, p-value = 0.003
chisq.test(table(Estudiante$Pais, Estudiante$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`21. Existen contradicciones entre los mensajes de salud oral entregados por  dentistas y personal auxiliar odontológico.`)
X-squared = 10, df = 3, p-value = 0.003
chisq.test(table(Estudiante$Pais, Estudiante$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`22. Mejores consejos preventivos de profesionales de la odontología puede tener efectos positivos significativos sobre la salud de las personas.`)
X-squared = 20, df = 2, p-value = 2e-05
chisq.test(table(Estudiante$Pais, Estudiante$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`23. En promedio, ¿cuantas clases, prácticos, conferencias, seminarios o tutorías ha tenido en consejos de higiene oral para los pacientes?`)
X-squared = 30, df = 3, p-value = 4e-06
chisq.test(table(Estudiante$Pais, Estudiante$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`24. ¿Siente que ha tenido suficiente formación en este aspecto de la atención al paciente y la prevención de enfermedades?`)
X-squared = 5, df = 1, p-value = 0.03
chisq.test(table(Estudiante$Pais, Estudiante$`25. En su opinión ¿qué formación adicional siente que es necesaria?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test

data:  table(Estudiante$Pais, Estudiante$`25. En su opinión ¿qué formación adicional siente que es necesaria?`)
X-squared = 10, df = 10, p-value = 0.4
chisq.test(table(Estudiante$Pais, Estudiante$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`))
Chi-squared approximation may be incorrect

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`26. ¿Se siente seguro/a en la actualidad entregando recomendaciones de higiene oral a pacientes adultos?`)
X-squared = 0.4, df = 1, p-value = 0.5
chisq.test(table(Estudiante$Pais, Estudiante$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`))

    Pearson's Chi-squared test with Yates' continuity correction

data:  table(Estudiante$Pais, Estudiante$`27. ¿ Se siente seguro/a en la actualidad de ser capaz de modificar la higiene oral aconsejando a una persona?`)
X-squared = 2e-30, df = 1, p-value = 1

Graficos estudiantes

glimpse(summa)
Observations: 664
Variables: 5
$ Pais                <chr> "Chile", "Chile", "Chile", "Chile", "Chile", "Chile"...
$ Ud es:              <chr> "Dentista", "Estudiante", "Estudiante", "Estudiante"...
$ Summa1              <int> 7, 12, 14, 8, 10, 10, 12, 14, 13, 11, 12, 9, 9, 7, 1...
$ Summa2              <int> 19, 18, 14, 20, 19, 15, 19, 19, 20, 20, 20, 19, 19, ...
$ gadi kops beigsanas <int> 36, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, ...

Summa

summa <- read_csv("recomendaciones summa.csv")
summa <- summa %>% 
        select(Pais, `Ud es:`, Summa1, Summa2, `gadi kops beigsanas` )

Descriptivo por país

options(digits = 2)
summa %>% 
        group_by(Pais, `Ud es:`) %>% 
        summarise("Promedio summa 1" = mean(Summa1), "SD summa 1" = sd(Summa1), "Promedio summa 2" = mean(Summa2), "SD summa 2" = sd(Summa2), n = n())

Hay diferencias entre grupos?

Summa 1

summa %>% 
        ggplot(aes(factor(`Ud es:`), Summa1, colour = Pais)) +
        geom_boxplot() +
        ggtitle("Summa 1")

Summa 1 para dentistas

summa %>% 
        filter(`Ud es:` == "Dentista") %>% 
        do(tidy(fit_dentistas <- aov(Summa1 ~ Pais, data = .)))
NA

Summa 1 para estudiantes

summa %>% 
        filter(`Ud es:` == "Estudiante") %>% 
        do(tidy(fit_dentistas1 <- aov(Summa1 ~ Pais, data = .)))

Summa 2

summa %>% 
        ggplot(aes(factor(`Ud es:`), Summa2, colour = Pais)) +
        geom_boxplot() +
        ggtitle("Summa 2")

Summa 2 para dentistas

summa %>% 
        filter(`Ud es:` == "Dentista") %>% 
        do(tidy(fit_dentistas2 <- aov(Summa2 ~ Pais, data = .)))
NA

Summa 2 para estudiantes

summa %>% 
        filter(`Ud es:` == "Estudiante") %>% 
        do(tidy(fit_estudiantes2 <- aov(Summa2 ~ Pais, data = .)))

Hay relación entre año de egreso y summa 1 o 2 para dentistas?

summa %>% 
        filter(`Ud es:` == "Dentista", !is.na(`gadi kops beigsanas`)) %>%
        group_by(Pais) %>% 
        summarise(n = n(), "Años egreso promedio"= mean(`gadi kops beigsanas`), "SD" = sd(`gadi kops beigsanas`))
summa %>% 
        filter(`Ud es:` == "Dentista") %>% 
        ggplot(aes(x = `gadi kops beigsanas`, y = Summa1, colour = Pais)) +
        geom_point() +
        geom_smooth()   

summa %>% 
        filter(`Ud es:` == "Dentista") %>% 
        ggplot(aes(x = `gadi kops beigsanas`, y = Summa2, colour = Pais)) +
        geom_point() +
        geom_smooth()   

summa %>% 
        filter(`Ud es:` == "Dentista", !is.na(`gadi kops beigsanas`)) %>% 
        group_by(Pais) %>% 
        summarise("correlation summa 1" = cor(`gadi kops beigsanas`, Summa1), 
                  "correlation summa 2" = cor(`gadi kops beigsanas`, Summa2))
LS0tDQp0aXRsZTogIlJlY29tZW5kYWNpb25lcyBkZW50aXN0YXMgQ2wgTFYiDQpvdXRwdXQ6DQogIGh0bWxfbm90ZWJvb2s6DQogICAgdG9jOiB5ZXMNCiAgd29yZF9kb2N1bWVudDoNCiAgICB0b2M6IHllcw0KLS0tDQoNCiMgUGFxdWV0ZXMNCmBgYHtyIGV2YWw9RkFMU0V9DQpyZXF1aXJlKCJ0aWR5dmVyc2UiKQ0KbGlicmFyeShrbml0cikNCmxpYnJhcnkoYnJvb20pDQpsaWJyYXJ5KGNhcikNCmBgYA0KIyBEYXRvcyB0b2Rvcw0KDQpgYGB7cn0NCmRmIDwtIHJlYWRfY3N2KCIyMDE3X3JlY29tZW5kYXRpb25zX2x2X2NsLmNzdiIpDQpgYGANCg0KVmVvIHZhcmlhYmxlcw0KYGBge3IgZXZhbD1GQUxTRX0NCmdsaW1wc2UoZGYpDQpgYGANCg0KDQpgYGB7cn0NCkRlbnRpc3RhIDwtIGRmICU+JSANCiAgZmlsdGVyKGBVZCBlczpgID09ICJEZW50aXN0YSIpDQoNCkVzdHVkaWFudGUgPC0gZGYgJT4lIA0KICBmaWx0ZXIoYFVkIGVzOmAgPT0gIkVzdHVkaWFudGUiKQ0KYGBgDQoNCg0KDQojIERlbnRpc3Rhcw0KIyMgVGFibGFzIGRlbnRpc3Rhcw0KDQpgYGB7ciB0YWJsYXMgZGVudGlzdGFzIHRvZG9zfQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDMuIMK/TGUgZW50cmVnYXLDrWEgcmVjb21lbmRhY2nDs24gZGUgaGlnaWVuZSBvcmFsIGEgQ0FEQSBwYWNpZW50ZSBhZHVsdG8/YCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNC4gwr9DdcOhbnRvIHRpZW1wbyBkZWRpY2Fyw61hIGRhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWw/YCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNS4gwr9Dw7NtbyBlbnRyZWdhcsOtYSBzdXMgY29uc2Vqb3MgZW4gaGlnaWVuZSBvcmFsP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDYuIMK/UmVjb21lbmRhcsOtYSBlbmp1YWd1ZSBidWNhbCBmbHVvcmlkYWRvIGNvbW8gcGFydGUgZGUgdW5hIHJ1dGluYSBkaWFyaWEgZGUgaGlnaWVuZSBvcmFsP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDcuIMK/UmVjb21lbmRhcsOtYSBlbCBjZXBpbGxhZG8gZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguYSkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgY2VwaWxsbz9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmIpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB0YW1hw7FvIGRlIGxhIGNhYmV6YSBkZWwgY2VwaWxsbz9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmMpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNhbWJpYXIgZWwgY2VwaWxsbyBkZSBkaWVudGVzP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguZCkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2VwaWxsYXIgZGlhcmlhbWVudGU/YCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgOC5lKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv2N1w6FudG8gdGllbXBvIHJlY29tZW5kYXLDrWEgdXN0ZWQgcGFyYSBjZXBpbGxhcj9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmYpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1bmEgdMOpY25pY2EgZGUgY2VwaWxsYWRvP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDkuIMK/UmVjb21lbmRhcsOtYSBlbCB1c28gZGUgcGFzdGEgZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmEpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgcGFzdGEgZGVudGFsP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmIpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFsIGNvbmNlbnRyYWNpw7NuIGRlIHBhc3RhIGRlbnRhbCByZWNvbWVuZGFyw61hP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmMpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFudGEgY2FudGlkYWQgZGUgcGFzdGEgZGUgZGllbnRlcyBhIHV0aWxpemFyIGNhZGEgdmV6P2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmQpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9xdWUgdGlwbyBkZSBlbmp1YWdlIHJlY29tZW5kYXLDrWE/YCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTEuIMK/UmVjb21lbmRhcsOtYSBsaW1waWV6YSBpbnRlcmRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMi5hKSBDdWFuZG8gcmVjb21pZW5kYSBsYSBsaW1waWV6YSBpbnRlcmRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVuIHRpcG8gZGUgZGlzcG9zaXRpdm8gaW50ZXJkZW50YWw/YCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYikgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/Y2FkYSBjdWFudG8gcmVjb21pZW5kYSB1dGlsaXphcmxvP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEyLmMpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2RlbW9zdHJhcsOtYSB1bmEgdMOpY25pY2EgP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEzLsKgTGEgaGlnaWVuZSBvcmFsIGp1ZWdhIHVuIHJvbCBjYXVzYWwgZW4gbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsZXMuYCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTQuwqBMYSBwZXJzb25hIHByb21lZGlvIGRlIG1pIHBhw61zIHRpZW5lIGJ1ZW5hIHNhbHVkIG9yYWwuYCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTUuwqBNb2RpZmljYWNpb25lcyBhIGxhIGhpZ2llbmUgb3JhbCBwdWVkZW4gcHJldmVuaXIgbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsLmApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE2LsKgTGEgcHJvZmlsYXhpcyBwcm9mZXNpb25hbCBubyB0aWVuZSBlZmVjdG8gc29icmUgbGEgc2FsdWQgb3JhbCBkZSBsb3MgaW5kaXZpZHVvcy5gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNy7CoExvcyBkZW50aXN0YXMgbm8gZGFuIHN1ZmljaWVudGVzIHJlY29tZW5kYWNpb25lcyBzb2JyZSBoaWdpZW5lIG9yYWwgYSBzdXMgcGFjaWVudGVzLmApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE4LsKgRWwgcGVyc29uYWwgZGVudGFsIChkZW50aXN0YXMgeSBhdXhpbGlhcmVzKSBkZXNlbXBlw7FhbiBlbCBtaXNtbyByb2wgZW4gYnJpbmRhciBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgYSBsb3MgcGFjaWVudGVzLmApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE5LsKgQ29uc2Vqb3MgZGUgc2FsdWQgYnVjYWwgY29udHJhZGljdG9yaW9zIHB1ZWRlbiB0ZW5lciB1biBlZmVjdG8gbmVnYXRpdm8gZW4gZWwgY29tcG9ydGFtaWVudG8sIGxhIG1vdGl2YWNpw7NuIHkgbGFzIGFjdGl0dWRlcyBkZSB1biBpbmRpdmlkdW8uYCkpDQprYWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjAuwqBMYSBlbGltaW5hY2nDs24gZGUgbGFzIGNvbnRyYWRpY2Npb25lcyBlbiBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzb2JyZSBsYSBzYWx1ZCBvcmFsIGRlIGxvcyBjaGlsZW5vcy5gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMS4gRXhpc3RlbiBjb250cmFkaWNjaW9uZXMgZW50cmUgbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgZW50cmVnYWRvcyBwb3IgwqBkZW50aXN0YXMgeSBwZXJzb25hbCBhdXhpbGlhciBvZG9udG9sw7NnaWNvLmApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIyLiBNZWpvcmVzIGNvbnNlam9zIHByZXZlbnRpdm9zIGRlIHByb2Zlc2lvbmFsZXMgZGUgbGEgb2RvbnRvbG9nw61hIHB1ZWRlIHRlbmVyIGVmZWN0b3MgcG9zaXRpdm9zIHNpZ25pZmljYXRpdm9zIHNvYnJlIGxhIHNhbHVkIGRlIGxhcyBwZXJzb25hcy5gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMy4gRW4gcHJvbWVkaW8sIMK/Y3VhbnRhcyBjbGFzZXMsIHByw6FjdGljb3MsIGNvbmZlcmVuY2lhcywgc2VtaW5hcmlvcyBvIHR1dG9yw61hcyBoYSB0ZW5pZG8gZW4gY29uc2Vqb3MgZGUgaGlnaWVuZSBvcmFsIHBhcmEgbG9zIHBhY2llbnRlcz9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyNC4gwr9TaWVudGUgcXVlIGhhIHRlbmlkbyBzdWZpY2llbnRlIGZvcm1hY2nDs24gZW4gZXN0ZSBhc3BlY3RvIGRlIGxhIGF0ZW5jacOzbiBhbCBwYWNpZW50ZSB5IGxhIHByZXZlbmNpw7NuIGRlIGVuZmVybWVkYWRlcz9gKSkNCmthYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyNS4gRW4gc3Ugb3BpbmnDs24gwr9xdcOpIGZvcm1hY2nDs24gYWRpY2lvbmFsIHNpZW50ZSBxdWUgZXMgbmVjZXNhcmlhP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI2LiDCv1NlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGVudHJlZ2FuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0Ka2FibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI3LiDCvyBTZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBkZSBzZXIgY2FwYXogZGUgbW9kaWZpY2FyIGxhIGhpZ2llbmUgb3JhbCBhY29uc2VqYW5kbyBhIHVuYSBwZXJzb25hP2ApKQ0KDQoNCmBgYA0KDQoNCiMjIFByb3AgdGFibGUgZGVudGlzdHMNCg0KYGBge3J9DQpvcHRpb25zKGRpZ2l0cz0zKQ0KYGBgDQoNCmBgYHtyfQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMS4gRW50cmVnYXLDrWEgcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAzLiDCv0xlIGVudHJlZ2Fyw61hIHJlY29tZW5kYWNpw7NuIGRlIGhpZ2llbmUgb3JhbCBhIENBREEgcGFjaWVudGUgYWR1bHRvP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA0LiDCv0N1w6FudG8gdGllbXBvIGRlZGljYXLDrWEgZGFuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNS4gwr9Dw7NtbyBlbnRyZWdhcsOtYSBzdXMgY29uc2Vqb3MgZW4gaGlnaWVuZSBvcmFsP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA2LiDCv1JlY29tZW5kYXLDrWEgZW5qdWFndWUgYnVjYWwgZmx1b3JpZGFkbyBjb21vIHBhcnRlIGRlIHVuYSBydXRpbmEgZGlhcmlhIGRlIGhpZ2llbmUgb3JhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNy4gwr9SZWNvbWVuZGFyw61hIGVsIGNlcGlsbGFkbyBkZW50YWwgYSB0b2RvcyBsb3MgcGFjaWVudGVzIGFkdWx0b3M/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguYSkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgY2VwaWxsbz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgOC5iKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdXN0ZWQgdGFtYcOxbyBkZSBsYSBjYWJlemEgZGVsIGNlcGlsbG8/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguYykgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2FtYmlhciBlbCBjZXBpbGxvIGRlIGRpZW50ZXM/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguZCkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2VwaWxsYXIgZGlhcmlhbWVudGU/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguZSkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jdcOhbnRvIHRpZW1wbyByZWNvbWVuZGFyw61hIHVzdGVkIHBhcmEgY2VwaWxsYXI/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguZikgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuYSB0w6ljbmljYSBkZSBjZXBpbGxhZG8/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDkuIMK/UmVjb21lbmRhcsOtYSBlbCB1c28gZGUgcGFzdGEgZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMC5hKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIHBhc3RhIGRlbnRhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTAuYikgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv2N1YWwgY29uY2VudHJhY2nDs24gZGUgcGFzdGEgZGVudGFsIHJlY29tZW5kYXLDrWE/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmMpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFudGEgY2FudGlkYWQgZGUgcGFzdGEgZGUgZGllbnRlcyBhIHV0aWxpemFyIGNhZGEgdmV6P2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMC5kKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/cXVlIHRpcG8gZGUgZW5qdWFnZSByZWNvbWVuZGFyw61hP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMS4gwr9SZWNvbWVuZGFyw61hIGxpbXBpZXphIGludGVyZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMi5hKSBDdWFuZG8gcmVjb21pZW5kYSBsYSBsaW1waWV6YSBpbnRlcmRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVuIHRpcG8gZGUgZGlzcG9zaXRpdm8gaW50ZXJkZW50YWw/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEyLmIpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2NhZGEgY3VhbnRvIHJlY29taWVuZGEgdXRpbGl6YXJsbz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYykgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/ZGVtb3N0cmFyw61hIHVuYSB0w6ljbmljYSA/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEzLsKgTGEgaGlnaWVuZSBvcmFsIGp1ZWdhIHVuIHJvbCBjYXVzYWwgZW4gbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsZXMuYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE0LsKgTGEgcGVyc29uYSBwcm9tZWRpbyBkZSBtaSBwYcOtcyB0aWVuZSBidWVuYSBzYWx1ZCBvcmFsLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNS7CoE1vZGlmaWNhY2lvbmVzIGEgbGEgaGlnaWVuZSBvcmFsIHB1ZWRlbiBwcmV2ZW5pciBtdWNoYXMgZW5mZXJtZWRhZGVzIG9yYWwuYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE2LsKgTGEgcHJvZmlsYXhpcyBwcm9mZXNpb25hbCBubyB0aWVuZSBlZmVjdG8gc29icmUgbGEgc2FsdWQgb3JhbCBkZSBsb3MgaW5kaXZpZHVvcy5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTcuwqBMb3MgZGVudGlzdGFzIG5vIGRhbiBzdWZpY2llbnRlcyByZWNvbWVuZGFjaW9uZXMgc29icmUgaGlnaWVuZSBvcmFsIGEgc3VzIHBhY2llbnRlcy5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTguwqBFbCBwZXJzb25hbCBkZW50YWwgKGRlbnRpc3RhcyB5IGF1eGlsaWFyZXMpIGRlc2VtcGXDsWFuIGVsIG1pc21vIHJvbCBlbiBicmluZGFyIGNvbnNlam9zIGRlIGhpZ2llbmUgb3JhbCBhIGxvcyBwYWNpZW50ZXMuYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE5LsKgQ29uc2Vqb3MgZGUgc2FsdWQgYnVjYWwgY29udHJhZGljdG9yaW9zIHB1ZWRlbiB0ZW5lciB1biBlZmVjdG8gbmVnYXRpdm8gZW4gZWwgY29tcG9ydGFtaWVudG8sIGxhIG1vdGl2YWNpw7NuIHkgbGFzIGFjdGl0dWRlcyBkZSB1biBpbmRpdmlkdW8uYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIwLsKgTGEgZWxpbWluYWNpw7NuIGRlIGxhcyBjb250cmFkaWNjaW9uZXMgZW4gbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgcHVlZGUgdGVuZXIgZWZlY3RvcyBwb3NpdGl2b3Mgc29icmUgbGEgc2FsdWQgb3JhbCBkZSBsb3MgY2hpbGVub3MuYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIxLiBFeGlzdGVuIGNvbnRyYWRpY2Npb25lcyBlbnRyZSBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBlbnRyZWdhZG9zIHBvciDCoGRlbnRpc3RhcyB5IHBlcnNvbmFsIGF1eGlsaWFyIG9kb250b2zDs2dpY28uYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIyLiBNZWpvcmVzIGNvbnNlam9zIHByZXZlbnRpdm9zIGRlIHByb2Zlc2lvbmFsZXMgZGUgbGEgb2RvbnRvbG9nw61hIHB1ZWRlIHRlbmVyIGVmZWN0b3MgcG9zaXRpdm9zIHNpZ25pZmljYXRpdm9zIHNvYnJlIGxhIHNhbHVkIGRlIGxhcyBwZXJzb25hcy5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjMuIEVuIHByb21lZGlvLCDCv2N1YW50YXMgY2xhc2VzLCBwcsOhY3RpY29zLCBjb25mZXJlbmNpYXMsIHNlbWluYXJpb3MgbyB0dXRvcsOtYXMgaGEgdGVuaWRvIGVuIGNvbnNlam9zIGRlIGhpZ2llbmUgb3JhbCBwYXJhIGxvcyBwYWNpZW50ZXM/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI0LiDCv1NpZW50ZSBxdWUgaGEgdGVuaWRvIHN1ZmljaWVudGUgZm9ybWFjacOzbiBlbiBlc3RlIGFzcGVjdG8gZGUgbGEgYXRlbmNpw7NuIGFsIHBhY2llbnRlIHkgbGEgcHJldmVuY2nDs24gZGUgZW5mZXJtZWRhZGVzP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyNS4gRW4gc3Ugb3BpbmnDs24gwr9xdcOpIGZvcm1hY2nDs24gYWRpY2lvbmFsIHNpZW50ZSBxdWUgZXMgbmVjZXNhcmlhP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyNi4gwr9TZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBlbnRyZWdhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjcuIMK/IFNlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGRlIHNlciBjYXBheiBkZSBtb2RpZmljYXIgbGEgaGlnaWVuZSBvcmFsIGFjb25zZWphbmRvIGEgdW5hIHBlcnNvbmE/YCksIDEpKjEwMCkNCg0KDQpgYGANCg0KDQoNCiMjIFRlc3QgZGVudGlzdGFzDQpgYGB7ciB0ZXN0IGRlbnRpc3Rhc30NCg0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMS4gRW50cmVnYXLDrWEgcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyLiBFbnRyZWdhcsOtYSByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3NgKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDMuIMK/TGUgZW50cmVnYXLDrWEgcmVjb21lbmRhY2nDs24gZGUgaGlnaWVuZSBvcmFsIGEgQ0FEQSBwYWNpZW50ZSBhZHVsdG8/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA0LiDCv0N1w6FudG8gdGllbXBvIGRlZGljYXLDrWEgZGFuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbD9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDUuIMK/Q8OzbW8gZW50cmVnYXLDrWEgc3VzIGNvbnNlam9zIGVuIGhpZ2llbmUgb3JhbD9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDYuIMK/UmVjb21lbmRhcsOtYSBlbmp1YWd1ZSBidWNhbCBmbHVvcmlkYWRvIGNvbW8gcGFydGUgZGUgdW5hIHJ1dGluYSBkaWFyaWEgZGUgaGlnaWVuZSBvcmFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNy4gwr9SZWNvbWVuZGFyw61hIGVsIGNlcGlsbGFkbyBkZW50YWwgYSB0b2RvcyBsb3MgcGFjaWVudGVzIGFkdWx0b3M/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmEpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIGNlcGlsbG8/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmIpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB0YW1hw7FvIGRlIGxhIGNhYmV6YSBkZWwgY2VwaWxsbz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguYykgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2FtYmlhciBlbCBjZXBpbGxvIGRlIGRpZW50ZXM/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmQpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNlcGlsbGFyIGRpYXJpYW1lbnRlP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgOC5lKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv2N1w6FudG8gdGllbXBvIHJlY29tZW5kYXLDrWEgdXN0ZWQgcGFyYSBjZXBpbGxhcj9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguZikgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuYSB0w6ljbmljYSBkZSBjZXBpbGxhZG8/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA5LiDCv1JlY29tZW5kYXLDrWEgZWwgdXNvIGRlIHBhc3RhIGRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmEpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgcGFzdGEgZGVudGFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTAuYikgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv2N1YWwgY29uY2VudHJhY2nDs24gZGUgcGFzdGEgZGVudGFsIHJlY29tZW5kYXLDrWE/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMC5jKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/Y3VhbnRhIGNhbnRpZGFkIGRlIHBhc3RhIGRlIGRpZW50ZXMgYSB1dGlsaXphciBjYWRhIHZlej9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmQpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9xdWUgdGlwbyBkZSBlbmp1YWdlIHJlY29tZW5kYXLDrWE/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMS4gwr9SZWNvbWVuZGFyw61hIGxpbXBpZXphIGludGVyZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYSkgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1biB0aXBvIGRlIGRpc3Bvc2l0aXZvIGludGVyZGVudGFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYikgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/Y2FkYSBjdWFudG8gcmVjb21pZW5kYSB1dGlsaXphcmxvP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYykgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/ZGVtb3N0cmFyw61hIHVuYSB0w6ljbmljYSA/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMy7CoExhIGhpZ2llbmUgb3JhbCBqdWVnYSB1biByb2wgY2F1c2FsIGVuIG11Y2hhcyBlbmZlcm1lZGFkZXMgb3JhbGVzLmApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTQuwqBMYSBwZXJzb25hIHByb21lZGlvIGRlIG1pIHBhw61zIHRpZW5lIGJ1ZW5hIHNhbHVkIG9yYWwuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNS7CoE1vZGlmaWNhY2lvbmVzIGEgbGEgaGlnaWVuZSBvcmFsIHB1ZWRlbiBwcmV2ZW5pciBtdWNoYXMgZW5mZXJtZWRhZGVzIG9yYWwuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNi7CoExhIHByb2ZpbGF4aXMgcHJvZmVzaW9uYWwgbm8gdGllbmUgZWZlY3RvIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGluZGl2aWR1b3MuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNy7CoExvcyBkZW50aXN0YXMgbm8gZGFuIHN1ZmljaWVudGVzIHJlY29tZW5kYWNpb25lcyBzb2JyZSBoaWdpZW5lIG9yYWwgYSBzdXMgcGFjaWVudGVzLmApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTguwqBFbCBwZXJzb25hbCBkZW50YWwgKGRlbnRpc3RhcyB5IGF1eGlsaWFyZXMpIGRlc2VtcGXDsWFuIGVsIG1pc21vIHJvbCBlbiBicmluZGFyIGNvbnNlam9zIGRlIGhpZ2llbmUgb3JhbCBhIGxvcyBwYWNpZW50ZXMuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxOS7CoENvbnNlam9zIGRlIHNhbHVkIGJ1Y2FsIGNvbnRyYWRpY3RvcmlvcyBwdWVkZW4gdGVuZXIgdW4gZWZlY3RvIG5lZ2F0aXZvIGVuIGVsIGNvbXBvcnRhbWllbnRvLCBsYSBtb3RpdmFjacOzbiB5IGxhcyBhY3RpdHVkZXMgZGUgdW4gaW5kaXZpZHVvLmApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjAuwqBMYSBlbGltaW5hY2nDs24gZGUgbGFzIGNvbnRyYWRpY2Npb25lcyBlbiBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzb2JyZSBsYSBzYWx1ZCBvcmFsIGRlIGxvcyBjaGlsZW5vcy5gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIxLiBFeGlzdGVuIGNvbnRyYWRpY2Npb25lcyBlbnRyZSBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBlbnRyZWdhZG9zIHBvciDCoGRlbnRpc3RhcyB5IHBlcnNvbmFsIGF1eGlsaWFyIG9kb250b2zDs2dpY28uYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMi4gTWVqb3JlcyBjb25zZWpvcyBwcmV2ZW50aXZvcyBkZSBwcm9mZXNpb25hbGVzIGRlIGxhIG9kb250b2xvZ8OtYSBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzaWduaWZpY2F0aXZvcyBzb2JyZSBsYSBzYWx1ZCBkZSBsYXMgcGVyc29uYXMuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMy4gRW4gcHJvbWVkaW8sIMK/Y3VhbnRhcyBjbGFzZXMsIHByw6FjdGljb3MsIGNvbmZlcmVuY2lhcywgc2VtaW5hcmlvcyBvIHR1dG9yw61hcyBoYSB0ZW5pZG8gZW4gY29uc2Vqb3MgZGUgaGlnaWVuZSBvcmFsIHBhcmEgbG9zIHBhY2llbnRlcz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI0LiDCv1NpZW50ZSBxdWUgaGEgdGVuaWRvIHN1ZmljaWVudGUgZm9ybWFjacOzbiBlbiBlc3RlIGFzcGVjdG8gZGUgbGEgYXRlbmNpw7NuIGFsIHBhY2llbnRlIHkgbGEgcHJldmVuY2nDs24gZGUgZW5mZXJtZWRhZGVzP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjUuIEVuIHN1IG9waW5pw7NuIMK/cXXDqSBmb3JtYWNpw7NuIGFkaWNpb25hbCBzaWVudGUgcXVlIGVzIG5lY2VzYXJpYT9gKSkNCmNoaXNxLnRlc3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI2LiDCv1NlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGVudHJlZ2FuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjcuIMK/IFNlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGRlIHNlciBjYXBheiBkZSBtb2RpZmljYXIgbGEgaGlnaWVuZSBvcmFsIGFjb25zZWphbmRvIGEgdW5hIHBlcnNvbmE/YCkpDQoNCg0KDQpgYGANCg0KIyMgR3JhZmljb3MgZGVudGlzdGFzDQpgYGB7ciBncmFmIGRlbnRpc3Rhc30NCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyLiBFbnRyZWdhcsOtYSByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3NgKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMy4gwr9MZSBlbnRyZWdhcsOtYSByZWNvbWVuZGFjacOzbiBkZSBoaWdpZW5lIG9yYWwgYSBDQURBIHBhY2llbnRlIGFkdWx0bz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNC4gwr9DdcOhbnRvIHRpZW1wbyBkZWRpY2Fyw61hIGRhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWw/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDUuIMK/Q8OzbW8gZW50cmVnYXLDrWEgc3VzIGNvbnNlam9zIGVuIGhpZ2llbmUgb3JhbD9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgNi4gwr9SZWNvbWVuZGFyw61hIGVuanVhZ3VlIGJ1Y2FsIGZsdW9yaWRhZG8gY29tbyBwYXJ0ZSBkZSB1bmEgcnV0aW5hIGRpYXJpYSBkZSBoaWdpZW5lIG9yYWw/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDcuIMK/UmVjb21lbmRhcsOtYSBlbCBjZXBpbGxhZG8gZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmEpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIGNlcGlsbG8/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDguYikgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHRhbWHDsW8gZGUgbGEgY2FiZXphIGRlbCBjZXBpbGxvP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmMpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNhbWJpYXIgZWwgY2VwaWxsbyBkZSBkaWVudGVzP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmQpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNlcGlsbGFyIGRpYXJpYW1lbnRlP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmUpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y3XDoW50byB0aWVtcG8gcmVjb21lbmRhcsOtYSB1c3RlZCBwYXJhIGNlcGlsbGFyP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA4LmYpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1bmEgdMOpY25pY2EgZGUgY2VwaWxsYWRvP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGA5LiDCv1JlY29tZW5kYXLDrWEgZWwgdXNvIGRlIHBhc3RhIGRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTAuYSkgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdXN0ZWQgdW4gdGlwbyBkZSBwYXN0YSBkZW50YWw/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEwLmIpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFsIGNvbmNlbnRyYWNpw7NuIGRlIHBhc3RhIGRlbnRhbCByZWNvbWVuZGFyw61hP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMC5jKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/Y3VhbnRhIGNhbnRpZGFkIGRlIHBhc3RhIGRlIGRpZW50ZXMgYSB1dGlsaXphciBjYWRhIHZlej9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTAuZCkgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv3F1ZSB0aXBvIGRlIGVuanVhZ2UgcmVjb21lbmRhcsOtYT9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTEuIMK/UmVjb21lbmRhcsOtYSBsaW1waWV6YSBpbnRlcmRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTIuYSkgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1biB0aXBvIGRlIGRpc3Bvc2l0aXZvIGludGVyZGVudGFsP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMi5iKSBDdWFuZG8gcmVjb21pZW5kYSBsYSBsaW1waWV6YSBpbnRlcmRlbnRhbCwgwr9jYWRhIGN1YW50byByZWNvbWllbmRhIHV0aWxpemFybG8/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDEyLmMpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2RlbW9zdHJhcsOtYSB1bmEgdMOpY25pY2EgP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxMy7CoExhIGhpZ2llbmUgb3JhbCBqdWVnYSB1biByb2wgY2F1c2FsIGVuIG11Y2hhcyBlbmZlcm1lZGFkZXMgb3JhbGVzLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNC7CoExhIHBlcnNvbmEgcHJvbWVkaW8gZGUgbWkgcGHDrXMgdGllbmUgYnVlbmEgc2FsdWQgb3JhbC5gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMTUuwqBNb2RpZmljYWNpb25lcyBhIGxhIGhpZ2llbmUgb3JhbCBwdWVkZW4gcHJldmVuaXIgbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxNi7CoExhIHByb2ZpbGF4aXMgcHJvZmVzaW9uYWwgbm8gdGllbmUgZWZlY3RvIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGluZGl2aWR1b3MuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE3LsKgTG9zIGRlbnRpc3RhcyBubyBkYW4gc3VmaWNpZW50ZXMgcmVjb21lbmRhY2lvbmVzIHNvYnJlIGhpZ2llbmUgb3JhbCBhIHN1cyBwYWNpZW50ZXMuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDE4LsKgRWwgcGVyc29uYWwgZGVudGFsIChkZW50aXN0YXMgeSBhdXhpbGlhcmVzKSBkZXNlbXBlw7FhbiBlbCBtaXNtbyByb2wgZW4gYnJpbmRhciBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgYSBsb3MgcGFjaWVudGVzLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAxOS7CoENvbnNlam9zIGRlIHNhbHVkIGJ1Y2FsIGNvbnRyYWRpY3RvcmlvcyBwdWVkZW4gdGVuZXIgdW4gZWZlY3RvIG5lZ2F0aXZvIGVuIGVsIGNvbXBvcnRhbWllbnRvLCBsYSBtb3RpdmFjacOzbiB5IGxhcyBhY3RpdHVkZXMgZGUgdW4gaW5kaXZpZHVvLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMC7CoExhIGVsaW1pbmFjacOzbiBkZSBsYXMgY29udHJhZGljY2lvbmVzIGVuIGxvcyBtZW5zYWplcyBkZSBzYWx1ZCBvcmFsIHB1ZWRlIHRlbmVyIGVmZWN0b3MgcG9zaXRpdm9zIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGNoaWxlbm9zLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMS4gRXhpc3RlbiBjb250cmFkaWNjaW9uZXMgZW50cmUgbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgZW50cmVnYWRvcyBwb3IgwqBkZW50aXN0YXMgeSBwZXJzb25hbCBhdXhpbGlhciBvZG9udG9sw7NnaWNvLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyMi4gTWVqb3JlcyBjb25zZWpvcyBwcmV2ZW50aXZvcyBkZSBwcm9mZXNpb25hbGVzIGRlIGxhIG9kb250b2xvZ8OtYSBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzaWduaWZpY2F0aXZvcyBzb2JyZSBsYSBzYWx1ZCBkZSBsYXMgcGVyc29uYXMuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDIzLiBFbiBwcm9tZWRpbywgwr9jdWFudGFzIGNsYXNlcywgcHLDoWN0aWNvcywgY29uZmVyZW5jaWFzLCBzZW1pbmFyaW9zIG8gdHV0b3LDrWFzIGhhIHRlbmlkbyBlbiBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgcGFyYSBsb3MgcGFjaWVudGVzP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKERlbnRpc3RhJFBhaXMsIERlbnRpc3RhJGAyNC4gwr9TaWVudGUgcXVlIGhhIHRlbmlkbyBzdWZpY2llbnRlIGZvcm1hY2nDs24gZW4gZXN0ZSBhc3BlY3RvIGRlIGxhIGF0ZW5jacOzbiBhbCBwYWNpZW50ZSB5IGxhIHByZXZlbmNpw7NuIGRlIGVuZmVybWVkYWRlcz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjUuIEVuIHN1IG9waW5pw7NuIMK/cXXDqSBmb3JtYWNpw7NuIGFkaWNpb25hbCBzaWVudGUgcXVlIGVzIG5lY2VzYXJpYT9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShEZW50aXN0YSRQYWlzLCBEZW50aXN0YSRgMjYuIMK/U2Ugc2llbnRlIHNlZ3Vyby9hIGVuIGxhIGFjdHVhbGlkYWQgZW50cmVnYW5kbyByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3M/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRGVudGlzdGEkUGFpcywgRGVudGlzdGEkYDI3LiDCvyBTZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBkZSBzZXIgY2FwYXogZGUgbW9kaWZpY2FyIGxhIGhpZ2llbmUgb3JhbCBhY29uc2VqYW5kbyBhIHVuYSBwZXJzb25hP2ApLCBzaGFkZSA9IFQpDQoNCg0KYGBgDQoNCg0KIyBFc3R1ZGlhbnRlcw0KIyMgVGFibGFzIGVzdHVkaWFudGVzDQpgYGB7ciB0YWJsYXMgZXN0dWRpYW50ZXN9DQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyLiBFbnRyZWdhcsOtYSByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3NgKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMy4gwr9MZSBlbnRyZWdhcsOtYSByZWNvbWVuZGFjacOzbiBkZSBoaWdpZW5lIG9yYWwgYSBDQURBIHBhY2llbnRlIGFkdWx0bz9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNC4gwr9DdcOhbnRvIHRpZW1wbyBkZWRpY2Fyw61hIGRhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWw/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDUuIMK/Q8OzbW8gZW50cmVnYXLDrWEgc3VzIGNvbnNlam9zIGVuIGhpZ2llbmUgb3JhbD9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNi4gwr9SZWNvbWVuZGFyw61hIGVuanVhZ3VlIGJ1Y2FsIGZsdW9yaWRhZG8gY29tbyBwYXJ0ZSBkZSB1bmEgcnV0aW5hIGRpYXJpYSBkZSBoaWdpZW5lIG9yYWw/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDcuIMK/UmVjb21lbmRhcsOtYSBlbCBjZXBpbGxhZG8gZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmEpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIGNlcGlsbG8/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguYikgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHRhbWHDsW8gZGUgbGEgY2FiZXphIGRlbCBjZXBpbGxvP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmMpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNhbWJpYXIgZWwgY2VwaWxsbyBkZSBkaWVudGVzP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmQpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNlcGlsbGFyIGRpYXJpYW1lbnRlP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmUpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y3XDoW50byB0aWVtcG8gcmVjb21lbmRhcsOtYSB1c3RlZCBwYXJhIGNlcGlsbGFyP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmYpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1bmEgdMOpY25pY2EgZGUgY2VwaWxsYWRvP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA5LiDCv1JlY29tZW5kYXLDrWEgZWwgdXNvIGRlIHBhc3RhIGRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTAuYSkgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdXN0ZWQgdW4gdGlwbyBkZSBwYXN0YSBkZW50YWw/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmIpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFsIGNvbmNlbnRyYWNpw7NuIGRlIHBhc3RhIGRlbnRhbCByZWNvbWVuZGFyw61hP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMC5jKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/Y3VhbnRhIGNhbnRpZGFkIGRlIHBhc3RhIGRlIGRpZW50ZXMgYSB1dGlsaXphciBjYWRhIHZlej9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTAuZCkgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv3F1ZSB0aXBvIGRlIGVuanVhZ2UgcmVjb21lbmRhcsOtYT9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTEuIMK/UmVjb21lbmRhcsOtYSBsaW1waWV6YSBpbnRlcmRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTIuYSkgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1biB0aXBvIGRlIGRpc3Bvc2l0aXZvIGludGVyZGVudGFsP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMi5iKSBDdWFuZG8gcmVjb21pZW5kYSBsYSBsaW1waWV6YSBpbnRlcmRlbnRhbCwgwr9jYWRhIGN1YW50byByZWNvbWllbmRhIHV0aWxpemFybG8/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEyLmMpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2RlbW9zdHJhcsOtYSB1bmEgdMOpY25pY2EgP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMy7CoExhIGhpZ2llbmUgb3JhbCBqdWVnYSB1biByb2wgY2F1c2FsIGVuIG11Y2hhcyBlbmZlcm1lZGFkZXMgb3JhbGVzLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNC7CoExhIHBlcnNvbmEgcHJvbWVkaW8gZGUgbWkgcGHDrXMgdGllbmUgYnVlbmEgc2FsdWQgb3JhbC5gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTUuwqBNb2RpZmljYWNpb25lcyBhIGxhIGhpZ2llbmUgb3JhbCBwdWVkZW4gcHJldmVuaXIgbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNi7CoExhIHByb2ZpbGF4aXMgcHJvZmVzaW9uYWwgbm8gdGllbmUgZWZlY3RvIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGluZGl2aWR1b3MuYCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE3LsKgTG9zIGRlbnRpc3RhcyBubyBkYW4gc3VmaWNpZW50ZXMgcmVjb21lbmRhY2lvbmVzIHNvYnJlIGhpZ2llbmUgb3JhbCBhIHN1cyBwYWNpZW50ZXMuYCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE4LsKgRWwgcGVyc29uYWwgZGVudGFsIChkZW50aXN0YXMgeSBhdXhpbGlhcmVzKSBkZXNlbXBlw7FhbiBlbCBtaXNtbyByb2wgZW4gYnJpbmRhciBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgYSBsb3MgcGFjaWVudGVzLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxOS7CoENvbnNlam9zIGRlIHNhbHVkIGJ1Y2FsIGNvbnRyYWRpY3RvcmlvcyBwdWVkZW4gdGVuZXIgdW4gZWZlY3RvIG5lZ2F0aXZvIGVuIGVsIGNvbXBvcnRhbWllbnRvLCBsYSBtb3RpdmFjacOzbiB5IGxhcyBhY3RpdHVkZXMgZGUgdW4gaW5kaXZpZHVvLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMC7CoExhIGVsaW1pbmFjacOzbiBkZSBsYXMgY29udHJhZGljY2lvbmVzIGVuIGxvcyBtZW5zYWplcyBkZSBzYWx1ZCBvcmFsIHB1ZWRlIHRlbmVyIGVmZWN0b3MgcG9zaXRpdm9zIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGNoaWxlbm9zLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMS4gRXhpc3RlbiBjb250cmFkaWNjaW9uZXMgZW50cmUgbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgZW50cmVnYWRvcyBwb3IgwqBkZW50aXN0YXMgeSBwZXJzb25hbCBhdXhpbGlhciBvZG9udG9sw7NnaWNvLmApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMi4gTWVqb3JlcyBjb25zZWpvcyBwcmV2ZW50aXZvcyBkZSBwcm9mZXNpb25hbGVzIGRlIGxhIG9kb250b2xvZ8OtYSBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzaWduaWZpY2F0aXZvcyBzb2JyZSBsYSBzYWx1ZCBkZSBsYXMgcGVyc29uYXMuYCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDIzLiBFbiBwcm9tZWRpbywgwr9jdWFudGFzIGNsYXNlcywgcHLDoWN0aWNvcywgY29uZmVyZW5jaWFzLCBzZW1pbmFyaW9zIG8gdHV0b3LDrWFzIGhhIHRlbmlkbyBlbiBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgcGFyYSBsb3MgcGFjaWVudGVzP2ApKQ0Ka2FibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyNC4gwr9TaWVudGUgcXVlIGhhIHRlbmlkbyBzdWZpY2llbnRlIGZvcm1hY2nDs24gZW4gZXN0ZSBhc3BlY3RvIGRlIGxhIGF0ZW5jacOzbiBhbCBwYWNpZW50ZSB5IGxhIHByZXZlbmNpw7NuIGRlIGVuZmVybWVkYWRlcz9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjUuIEVuIHN1IG9waW5pw7NuIMK/cXXDqSBmb3JtYWNpw7NuIGFkaWNpb25hbCBzaWVudGUgcXVlIGVzIG5lY2VzYXJpYT9gKSkNCmthYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjYuIMK/U2Ugc2llbnRlIHNlZ3Vyby9hIGVuIGxhIGFjdHVhbGlkYWQgZW50cmVnYW5kbyByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3M/YCkpDQprYWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI3LiDCvyBTZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBkZSBzZXIgY2FwYXogZGUgbW9kaWZpY2FyIGxhIGhpZ2llbmUgb3JhbCBhY29uc2VqYW5kbyBhIHVuYSBwZXJzb25hP2ApKQ0KDQoNCmBgYA0KDQojIyBQcm9wIHRhYmxlIGVzdHVkaWFudGUNCmBgYHtyfQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMi4gRW50cmVnYXLDrWEgcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAzLiDCv0xlIGVudHJlZ2Fyw61hIHJlY29tZW5kYWNpw7NuIGRlIGhpZ2llbmUgb3JhbCBhIENBREEgcGFjaWVudGUgYWR1bHRvP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNC4gwr9DdcOhbnRvIHRpZW1wbyBkZWRpY2Fyw61hIGRhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWw/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA1LiDCv0PDs21vIGVudHJlZ2Fyw61hIHN1cyBjb25zZWpvcyBlbiBoaWdpZW5lIG9yYWw/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA2LiDCv1JlY29tZW5kYXLDrWEgZW5qdWFndWUgYnVjYWwgZmx1b3JpZGFkbyBjb21vIHBhcnRlIGRlIHVuYSBydXRpbmEgZGlhcmlhIGRlIGhpZ2llbmUgb3JhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDcuIMK/UmVjb21lbmRhcsOtYSBlbCBjZXBpbGxhZG8gZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOC5hKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdXN0ZWQgdW4gdGlwbyBkZSBjZXBpbGxvP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOC5iKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdXN0ZWQgdGFtYcOxbyBkZSBsYSBjYWJlemEgZGVsIGNlcGlsbG8/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmMpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNhbWJpYXIgZWwgY2VwaWxsbyBkZSBkaWVudGVzP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOC5kKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv2NvbiBxdcOpIGZyZWN1ZW5jaWEgcmVjb21lbmRhcsOtYSB1c3RlZCBjZXBpbGxhciBkaWFyaWFtZW50ZT9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguZSkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jdcOhbnRvIHRpZW1wbyByZWNvbWVuZGFyw61hIHVzdGVkIHBhcmEgY2VwaWxsYXI/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmYpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1bmEgdMOpY25pY2EgZGUgY2VwaWxsYWRvP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOS4gwr9SZWNvbWVuZGFyw61hIGVsIHVzbyBkZSBwYXN0YSBkZW50YWwgYSB0b2RvcyBsb3MgcGFjaWVudGVzIGFkdWx0b3M/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMC5hKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIHBhc3RhIGRlbnRhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmIpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFsIGNvbmNlbnRyYWNpw7NuIGRlIHBhc3RhIGRlbnRhbCByZWNvbWVuZGFyw61hP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTAuYykgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv2N1YW50YSBjYW50aWRhZCBkZSBwYXN0YSBkZSBkaWVudGVzIGEgdXRpbGl6YXIgY2FkYSB2ZXo/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMC5kKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/cXVlIHRpcG8gZGUgZW5qdWFnZSByZWNvbWVuZGFyw61hP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTEuIMK/UmVjb21lbmRhcsOtYSBsaW1waWV6YSBpbnRlcmRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEyLmEpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv3JlY29tZW5kYXLDrWEgdW4gdGlwbyBkZSBkaXNwb3NpdGl2byBpbnRlcmRlbnRhbD9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEyLmIpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2NhZGEgY3VhbnRvIHJlY29taWVuZGEgdXRpbGl6YXJsbz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEyLmMpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2RlbW9zdHJhcsOtYSB1bmEgdMOpY25pY2EgP2ApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTMuwqBMYSBoaWdpZW5lIG9yYWwganVlZ2EgdW4gcm9sIGNhdXNhbCBlbiBtdWNoYXMgZW5mZXJtZWRhZGVzIG9yYWxlcy5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE0LsKgTGEgcGVyc29uYSBwcm9tZWRpbyBkZSBtaSBwYcOtcyB0aWVuZSBidWVuYSBzYWx1ZCBvcmFsLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTUuwqBNb2RpZmljYWNpb25lcyBhIGxhIGhpZ2llbmUgb3JhbCBwdWVkZW4gcHJldmVuaXIgbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTYuwqBMYSBwcm9maWxheGlzIHByb2Zlc2lvbmFsIG5vIHRpZW5lIGVmZWN0byBzb2JyZSBsYSBzYWx1ZCBvcmFsIGRlIGxvcyBpbmRpdmlkdW9zLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTcuwqBMb3MgZGVudGlzdGFzIG5vIGRhbiBzdWZpY2llbnRlcyByZWNvbWVuZGFjaW9uZXMgc29icmUgaGlnaWVuZSBvcmFsIGEgc3VzIHBhY2llbnRlcy5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE4LsKgRWwgcGVyc29uYWwgZGVudGFsIChkZW50aXN0YXMgeSBhdXhpbGlhcmVzKSBkZXNlbXBlw7FhbiBlbCBtaXNtbyByb2wgZW4gYnJpbmRhciBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgYSBsb3MgcGFjaWVudGVzLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTkuwqBDb25zZWpvcyBkZSBzYWx1ZCBidWNhbCBjb250cmFkaWN0b3Jpb3MgcHVlZGVuIHRlbmVyIHVuIGVmZWN0byBuZWdhdGl2byBlbiBlbCBjb21wb3J0YW1pZW50bywgbGEgbW90aXZhY2nDs24geSBsYXMgYWN0aXR1ZGVzIGRlIHVuIGluZGl2aWR1by5gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDIwLsKgTGEgZWxpbWluYWNpw7NuIGRlIGxhcyBjb250cmFkaWNjaW9uZXMgZW4gbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgcHVlZGUgdGVuZXIgZWZlY3RvcyBwb3NpdGl2b3Mgc29icmUgbGEgc2FsdWQgb3JhbCBkZSBsb3MgY2hpbGVub3MuYCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMS4gRXhpc3RlbiBjb250cmFkaWNjaW9uZXMgZW50cmUgbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgZW50cmVnYWRvcyBwb3IgwqBkZW50aXN0YXMgeSBwZXJzb25hbCBhdXhpbGlhciBvZG9udG9sw7NnaWNvLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjIuIE1lam9yZXMgY29uc2Vqb3MgcHJldmVudGl2b3MgZGUgcHJvZmVzaW9uYWxlcyBkZSBsYSBvZG9udG9sb2fDrWEgcHVlZGUgdGVuZXIgZWZlY3RvcyBwb3NpdGl2b3Mgc2lnbmlmaWNhdGl2b3Mgc29icmUgbGEgc2FsdWQgZGUgbGFzIHBlcnNvbmFzLmApLCAxKSoxMDApDQprYWJsZShwcm9wLnRhYmxlKHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjMuIEVuIHByb21lZGlvLCDCv2N1YW50YXMgY2xhc2VzLCBwcsOhY3RpY29zLCBjb25mZXJlbmNpYXMsIHNlbWluYXJpb3MgbyB0dXRvcsOtYXMgaGEgdGVuaWRvIGVuIGNvbnNlam9zIGRlIGhpZ2llbmUgb3JhbCBwYXJhIGxvcyBwYWNpZW50ZXM/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyNC4gwr9TaWVudGUgcXVlIGhhIHRlbmlkbyBzdWZpY2llbnRlIGZvcm1hY2nDs24gZW4gZXN0ZSBhc3BlY3RvIGRlIGxhIGF0ZW5jacOzbiBhbCBwYWNpZW50ZSB5IGxhIHByZXZlbmNpw7NuIGRlIGVuZmVybWVkYWRlcz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI1LiBFbiBzdSBvcGluacOzbiDCv3F1w6kgZm9ybWFjacOzbiBhZGljaW9uYWwgc2llbnRlIHF1ZSBlcyBuZWNlc2FyaWE/YCksIDEpKjEwMCkNCmthYmxlKHByb3AudGFibGUodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyNi4gwr9TZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBlbnRyZWdhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgMSkqMTAwKQ0Ka2FibGUocHJvcC50YWJsZSh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI3LiDCvyBTZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBkZSBzZXIgY2FwYXogZGUgbW9kaWZpY2FyIGxhIGhpZ2llbmUgb3JhbCBhY29uc2VqYW5kbyBhIHVuYSBwZXJzb25hP2ApLCAxKSoxMDApDQoNCg0KYGBgDQoNCg0KDQojIyBUZXN0IGVzdHVkaWFudGVzDQpgYGB7ciB0ZXN0IGVzdHVkaWFudGVzfQ0Kb3B0aW9ucyhkaWdpdHMgPSAzKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDIuIEVudHJlZ2Fyw61hIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWwgYSBwYWNpZW50ZXMgYWR1bHRvc2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDMuIMK/TGUgZW50cmVnYXLDrWEgcmVjb21lbmRhY2nDs24gZGUgaGlnaWVuZSBvcmFsIGEgQ0FEQSBwYWNpZW50ZSBhZHVsdG8/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNC4gwr9DdcOhbnRvIHRpZW1wbyBkZWRpY2Fyw61hIGRhbmRvIHJlY29tZW5kYWNpb25lcyBkZSBoaWdpZW5lIG9yYWw/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNS4gwr9Dw7NtbyBlbnRyZWdhcsOtYSBzdXMgY29uc2Vqb3MgZW4gaGlnaWVuZSBvcmFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDYuIMK/UmVjb21lbmRhcsOtYSBlbmp1YWd1ZSBidWNhbCBmbHVvcmlkYWRvIGNvbW8gcGFydGUgZGUgdW5hIHJ1dGluYSBkaWFyaWEgZGUgaGlnaWVuZSBvcmFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDcuIMK/UmVjb21lbmRhcsOtYSBlbCBjZXBpbGxhZG8gZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguYSkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgY2VwaWxsbz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmIpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB0YW1hw7FvIGRlIGxhIGNhYmV6YSBkZWwgY2VwaWxsbz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmMpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNhbWJpYXIgZWwgY2VwaWxsbyBkZSBkaWVudGVzP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguZCkgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2VwaWxsYXIgZGlhcmlhbWVudGU/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOC5lKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv2N1w6FudG8gdGllbXBvIHJlY29tZW5kYXLDrWEgdXN0ZWQgcGFyYSBjZXBpbGxhcj9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmYpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1bmEgdMOpY25pY2EgZGUgY2VwaWxsYWRvP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDkuIMK/UmVjb21lbmRhcsOtYSBlbCB1c28gZGUgcGFzdGEgZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmEpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgcGFzdGEgZGVudGFsP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmIpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFsIGNvbmNlbnRyYWNpw7NuIGRlIHBhc3RhIGRlbnRhbCByZWNvbWVuZGFyw61hP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmMpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9jdWFudGEgY2FudGlkYWQgZGUgcGFzdGEgZGUgZGllbnRlcyBhIHV0aWxpemFyIGNhZGEgdmV6P2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmQpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9xdWUgdGlwbyBkZSBlbmp1YWdlIHJlY29tZW5kYXLDrWE/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTEuIMK/UmVjb21lbmRhcsOtYSBsaW1waWV6YSBpbnRlcmRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMi5hKSBDdWFuZG8gcmVjb21pZW5kYSBsYSBsaW1waWV6YSBpbnRlcmRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVuIHRpcG8gZGUgZGlzcG9zaXRpdm8gaW50ZXJkZW50YWw/YCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTIuYikgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/Y2FkYSBjdWFudG8gcmVjb21pZW5kYSB1dGlsaXphcmxvP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEyLmMpIEN1YW5kbyByZWNvbWllbmRhIGxhIGxpbXBpZXphIGludGVyZGVudGFsLCDCv2RlbW9zdHJhcsOtYSB1bmEgdMOpY25pY2EgP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEzLsKgTGEgaGlnaWVuZSBvcmFsIGp1ZWdhIHVuIHJvbCBjYXVzYWwgZW4gbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsZXMuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTQuwqBMYSBwZXJzb25hIHByb21lZGlvIGRlIG1pIHBhw61zIHRpZW5lIGJ1ZW5hIHNhbHVkIG9yYWwuYCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTUuwqBNb2RpZmljYWNpb25lcyBhIGxhIGhpZ2llbmUgb3JhbCBwdWVkZW4gcHJldmVuaXIgbXVjaGFzIGVuZmVybWVkYWRlcyBvcmFsLmApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE2LsKgTGEgcHJvZmlsYXhpcyBwcm9mZXNpb25hbCBubyB0aWVuZSBlZmVjdG8gc29icmUgbGEgc2FsdWQgb3JhbCBkZSBsb3MgaW5kaXZpZHVvcy5gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNy7CoExvcyBkZW50aXN0YXMgbm8gZGFuIHN1ZmljaWVudGVzIHJlY29tZW5kYWNpb25lcyBzb2JyZSBoaWdpZW5lIG9yYWwgYSBzdXMgcGFjaWVudGVzLmApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE4LsKgRWwgcGVyc29uYWwgZGVudGFsIChkZW50aXN0YXMgeSBhdXhpbGlhcmVzKSBkZXNlbXBlw7FhbiBlbCBtaXNtbyByb2wgZW4gYnJpbmRhciBjb25zZWpvcyBkZSBoaWdpZW5lIG9yYWwgYSBsb3MgcGFjaWVudGVzLmApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDE5LsKgQ29uc2Vqb3MgZGUgc2FsdWQgYnVjYWwgY29udHJhZGljdG9yaW9zIHB1ZWRlbiB0ZW5lciB1biBlZmVjdG8gbmVnYXRpdm8gZW4gZWwgY29tcG9ydGFtaWVudG8sIGxhIG1vdGl2YWNpw7NuIHkgbGFzIGFjdGl0dWRlcyBkZSB1biBpbmRpdmlkdW8uYCkpDQpjaGlzcS50ZXN0KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjAuwqBMYSBlbGltaW5hY2nDs24gZGUgbGFzIGNvbnRyYWRpY2Npb25lcyBlbiBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzb2JyZSBsYSBzYWx1ZCBvcmFsIGRlIGxvcyBjaGlsZW5vcy5gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMS4gRXhpc3RlbiBjb250cmFkaWNjaW9uZXMgZW50cmUgbG9zIG1lbnNhamVzIGRlIHNhbHVkIG9yYWwgZW50cmVnYWRvcyBwb3IgwqBkZW50aXN0YXMgeSBwZXJzb25hbCBhdXhpbGlhciBvZG9udG9sw7NnaWNvLmApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDIyLiBNZWpvcmVzIGNvbnNlam9zIHByZXZlbnRpdm9zIGRlIHByb2Zlc2lvbmFsZXMgZGUgbGEgb2RvbnRvbG9nw61hIHB1ZWRlIHRlbmVyIGVmZWN0b3MgcG9zaXRpdm9zIHNpZ25pZmljYXRpdm9zIHNvYnJlIGxhIHNhbHVkIGRlIGxhcyBwZXJzb25hcy5gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMy4gRW4gcHJvbWVkaW8sIMK/Y3VhbnRhcyBjbGFzZXMsIHByw6FjdGljb3MsIGNvbmZlcmVuY2lhcywgc2VtaW5hcmlvcyBvIHR1dG9yw61hcyBoYSB0ZW5pZG8gZW4gY29uc2Vqb3MgZGUgaGlnaWVuZSBvcmFsIHBhcmEgbG9zIHBhY2llbnRlcz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyNC4gwr9TaWVudGUgcXVlIGhhIHRlbmlkbyBzdWZpY2llbnRlIGZvcm1hY2nDs24gZW4gZXN0ZSBhc3BlY3RvIGRlIGxhIGF0ZW5jacOzbiBhbCBwYWNpZW50ZSB5IGxhIHByZXZlbmNpw7NuIGRlIGVuZmVybWVkYWRlcz9gKSkNCmNoaXNxLnRlc3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyNS4gRW4gc3Ugb3BpbmnDs24gwr9xdcOpIGZvcm1hY2nDs24gYWRpY2lvbmFsIHNpZW50ZSBxdWUgZXMgbmVjZXNhcmlhP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI2LiDCv1NlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGVudHJlZ2FuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zP2ApKQ0KY2hpc3EudGVzdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI3LiDCvyBTZSBzaWVudGUgc2VndXJvL2EgZW4gbGEgYWN0dWFsaWRhZCBkZSBzZXIgY2FwYXogZGUgbW9kaWZpY2FyIGxhIGhpZ2llbmUgb3JhbCBhY29uc2VqYW5kbyBhIHVuYSBwZXJzb25hP2ApKQ0KDQpgYGANCg0KIyMgR3JhZmljb3MgZXN0dWRpYW50ZXMNCmBgYHtyIGdyYWYgZXN0dWRpYW50ZXN9DQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMS4gRW50cmVnYXLDrWEgcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyLiBFbnRyZWdhcsOtYSByZWNvbWVuZGFjaW9uZXMgZGUgaGlnaWVuZSBvcmFsIGEgcGFjaWVudGVzIGFkdWx0b3NgKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDMuIMK/TGUgZW50cmVnYXLDrWEgcmVjb21lbmRhY2nDs24gZGUgaGlnaWVuZSBvcmFsIGEgQ0FEQSBwYWNpZW50ZSBhZHVsdG8/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA0LiDCv0N1w6FudG8gdGllbXBvIGRlZGljYXLDrWEgZGFuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbD9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDUuIMK/Q8OzbW8gZW50cmVnYXLDrWEgc3VzIGNvbnNlam9zIGVuIGhpZ2llbmUgb3JhbD9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDYuIMK/UmVjb21lbmRhcsOtYSBlbmp1YWd1ZSBidWNhbCBmbHVvcmlkYWRvIGNvbW8gcGFydGUgZGUgdW5hIHJ1dGluYSBkaWFyaWEgZGUgaGlnaWVuZSBvcmFsP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgNy4gwr9SZWNvbWVuZGFyw61hIGVsIGNlcGlsbGFkbyBkZW50YWwgYSB0b2RvcyBsb3MgcGFjaWVudGVzIGFkdWx0b3M/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmEpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB1biB0aXBvIGRlIGNlcGlsbG8/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmIpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1c3RlZCB0YW1hw7FvIGRlIGxhIGNhYmV6YSBkZWwgY2VwaWxsbz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguYykgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9jb24gcXXDqSBmcmVjdWVuY2lhIHJlY29tZW5kYXLDrWEgdXN0ZWQgY2FtYmlhciBlbCBjZXBpbGxvIGRlIGRpZW50ZXM/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA4LmQpIEN1YW5kbyByZWNvbWllbmRhIGVsIGNlcGlsbGFkbyBkZW50YWwsIMK/Y29uIHF1w6kgZnJlY3VlbmNpYSByZWNvbWVuZGFyw61hIHVzdGVkIGNlcGlsbGFyIGRpYXJpYW1lbnRlP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgOC5lKSBDdWFuZG8gcmVjb21pZW5kYSBlbCBjZXBpbGxhZG8gZGVudGFsLCDCv2N1w6FudG8gdGllbXBvIHJlY29tZW5kYXLDrWEgdXN0ZWQgcGFyYSBjZXBpbGxhcj9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDguZikgQ3VhbmRvIHJlY29taWVuZGEgZWwgY2VwaWxsYWRvIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuYSB0w6ljbmljYSBkZSBjZXBpbGxhZG8/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGA5LiDCv1JlY29tZW5kYXLDrWEgZWwgdXNvIGRlIHBhc3RhIGRlbnRhbCBhIHRvZG9zIGxvcyBwYWNpZW50ZXMgYWR1bHRvcz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmEpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9yZWNvbWVuZGFyw61hIHVzdGVkIHVuIHRpcG8gZGUgcGFzdGEgZGVudGFsP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTAuYikgQ3VhbmRvIHJlY29taWVuZGEgcGFzdGEgZGVudGFsLCDCv2N1YWwgY29uY2VudHJhY2nDs24gZGUgcGFzdGEgZGVudGFsIHJlY29tZW5kYXLDrWE/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMC5jKSBDdWFuZG8gcmVjb21pZW5kYSBwYXN0YSBkZW50YWwsIMK/Y3VhbnRhIGNhbnRpZGFkIGRlIHBhc3RhIGRlIGRpZW50ZXMgYSB1dGlsaXphciBjYWRhIHZlej9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDEwLmQpIEN1YW5kbyByZWNvbWllbmRhIHBhc3RhIGRlbnRhbCwgwr9xdWUgdGlwbyBkZSBlbmp1YWdlIHJlY29tZW5kYXLDrWE/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMS4gwr9SZWNvbWVuZGFyw61hIGxpbXBpZXphIGludGVyZGVudGFsIGEgdG9kb3MgbG9zIHBhY2llbnRlcyBhZHVsdG9zP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTIuYSkgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/cmVjb21lbmRhcsOtYSB1biB0aXBvIGRlIGRpc3Bvc2l0aXZvIGludGVyZGVudGFsP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTIuYikgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/Y2FkYSBjdWFudG8gcmVjb21pZW5kYSB1dGlsaXphcmxvP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTIuYykgQ3VhbmRvIHJlY29taWVuZGEgbGEgbGltcGllemEgaW50ZXJkZW50YWwsIMK/ZGVtb3N0cmFyw61hIHVuYSB0w6ljbmljYSA/YCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxMy7CoExhIGhpZ2llbmUgb3JhbCBqdWVnYSB1biByb2wgY2F1c2FsIGVuIG11Y2hhcyBlbmZlcm1lZGFkZXMgb3JhbGVzLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTQuwqBMYSBwZXJzb25hIHByb21lZGlvIGRlIG1pIHBhw61zIHRpZW5lIGJ1ZW5hIHNhbHVkIG9yYWwuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNS7CoE1vZGlmaWNhY2lvbmVzIGEgbGEgaGlnaWVuZSBvcmFsIHB1ZWRlbiBwcmV2ZW5pciBtdWNoYXMgZW5mZXJtZWRhZGVzIG9yYWwuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNi7CoExhIHByb2ZpbGF4aXMgcHJvZmVzaW9uYWwgbm8gdGllbmUgZWZlY3RvIHNvYnJlIGxhIHNhbHVkIG9yYWwgZGUgbG9zIGluZGl2aWR1b3MuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxNy7CoExvcyBkZW50aXN0YXMgbm8gZGFuIHN1ZmljaWVudGVzIHJlY29tZW5kYWNpb25lcyBzb2JyZSBoaWdpZW5lIG9yYWwgYSBzdXMgcGFjaWVudGVzLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMTguwqBFbCBwZXJzb25hbCBkZW50YWwgKGRlbnRpc3RhcyB5IGF1eGlsaWFyZXMpIGRlc2VtcGXDsWFuIGVsIG1pc21vIHJvbCBlbiBicmluZGFyIGNvbnNlam9zIGRlIGhpZ2llbmUgb3JhbCBhIGxvcyBwYWNpZW50ZXMuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAxOS7CoENvbnNlam9zIGRlIHNhbHVkIGJ1Y2FsIGNvbnRyYWRpY3RvcmlvcyBwdWVkZW4gdGVuZXIgdW4gZWZlY3RvIG5lZ2F0aXZvIGVuIGVsIGNvbXBvcnRhbWllbnRvLCBsYSBtb3RpdmFjacOzbiB5IGxhcyBhY3RpdHVkZXMgZGUgdW4gaW5kaXZpZHVvLmApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjAuwqBMYSBlbGltaW5hY2nDs24gZGUgbGFzIGNvbnRyYWRpY2Npb25lcyBlbiBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzb2JyZSBsYSBzYWx1ZCBvcmFsIGRlIGxvcyBjaGlsZW5vcy5gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDIxLiBFeGlzdGVuIGNvbnRyYWRpY2Npb25lcyBlbnRyZSBsb3MgbWVuc2FqZXMgZGUgc2FsdWQgb3JhbCBlbnRyZWdhZG9zIHBvciDCoGRlbnRpc3RhcyB5IHBlcnNvbmFsIGF1eGlsaWFyIG9kb250b2zDs2dpY28uYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMi4gTWVqb3JlcyBjb25zZWpvcyBwcmV2ZW50aXZvcyBkZSBwcm9mZXNpb25hbGVzIGRlIGxhIG9kb250b2xvZ8OtYSBwdWVkZSB0ZW5lciBlZmVjdG9zIHBvc2l0aXZvcyBzaWduaWZpY2F0aXZvcyBzb2JyZSBsYSBzYWx1ZCBkZSBsYXMgcGVyc29uYXMuYCksIHNoYWRlID0gVCkNCm1vc2FpY3Bsb3QodGFibGUoRXN0dWRpYW50ZSRQYWlzLCBFc3R1ZGlhbnRlJGAyMy4gRW4gcHJvbWVkaW8sIMK/Y3VhbnRhcyBjbGFzZXMsIHByw6FjdGljb3MsIGNvbmZlcmVuY2lhcywgc2VtaW5hcmlvcyBvIHR1dG9yw61hcyBoYSB0ZW5pZG8gZW4gY29uc2Vqb3MgZGUgaGlnaWVuZSBvcmFsIHBhcmEgbG9zIHBhY2llbnRlcz9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI0LiDCv1NpZW50ZSBxdWUgaGEgdGVuaWRvIHN1ZmljaWVudGUgZm9ybWFjacOzbiBlbiBlc3RlIGFzcGVjdG8gZGUgbGEgYXRlbmNpw7NuIGFsIHBhY2llbnRlIHkgbGEgcHJldmVuY2nDs24gZGUgZW5mZXJtZWRhZGVzP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjUuIEVuIHN1IG9waW5pw7NuIMK/cXXDqSBmb3JtYWNpw7NuIGFkaWNpb25hbCBzaWVudGUgcXVlIGVzIG5lY2VzYXJpYT9gKSwgc2hhZGUgPSBUKQ0KbW9zYWljcGxvdCh0YWJsZShFc3R1ZGlhbnRlJFBhaXMsIEVzdHVkaWFudGUkYDI2LiDCv1NlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGVudHJlZ2FuZG8gcmVjb21lbmRhY2lvbmVzIGRlIGhpZ2llbmUgb3JhbCBhIHBhY2llbnRlcyBhZHVsdG9zP2ApLCBzaGFkZSA9IFQpDQptb3NhaWNwbG90KHRhYmxlKEVzdHVkaWFudGUkUGFpcywgRXN0dWRpYW50ZSRgMjcuIMK/IFNlIHNpZW50ZSBzZWd1cm8vYSBlbiBsYSBhY3R1YWxpZGFkIGRlIHNlciBjYXBheiBkZSBtb2RpZmljYXIgbGEgaGlnaWVuZSBvcmFsIGFjb25zZWphbmRvIGEgdW5hIHBlcnNvbmE/YCksIHNoYWRlID0gVCkNCg0KDQpgYGANCg0KYGBge3J9DQpnbGltcHNlKHN1bW1hKQ0KYGBgDQoNCiMgU3VtbWENCmBgYHtyfQ0Kc3VtbWEgPC0gcmVhZF9jc3YoInJlY29tZW5kYWNpb25lcyBzdW1tYS5jc3YiKQ0KDQpzdW1tYSA8LSBzdW1tYSAlPiUgDQogICAgICAgIHNlbGVjdChQYWlzLCBgVWQgZXM6YCwgU3VtbWExLCBTdW1tYTIsIGBnYWRpIGtvcHMgYmVpZ3NhbmFzYCApDQpgYGANCg0KIyMgRGVzY3JpcHRpdm8gcG9yIHBhw61zDQpgYGB7cn0NCm9wdGlvbnMoZGlnaXRzID0gMikNCnN1bW1hICU+JSANCiAgICAgICAgZ3JvdXBfYnkoUGFpcywgYFVkIGVzOmApICU+JSANCiAgICAgICAgc3VtbWFyaXNlKCJQcm9tZWRpbyBzdW1tYSAxIiA9IG1lYW4oU3VtbWExKSwgIlNEIHN1bW1hIDEiID0gc2QoU3VtbWExKSwgIlByb21lZGlvIHN1bW1hIDIiID0gbWVhbihTdW1tYTIpLCAiU0Qgc3VtbWEgMiIgPSBzZChTdW1tYTIpLCBuID0gbigpKQ0KYGBgDQoNCg0KDQoNCiMjIEhheSBkaWZlcmVuY2lhcyBlbnRyZSBncnVwb3M/DQojIyMgU3VtbWEgMQ0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGdncGxvdChhZXMoZmFjdG9yKGBVZCBlczpgKSwgU3VtbWExLCBjb2xvdXIgPSBQYWlzKSkgKw0KICAgICAgICBnZW9tX2JveHBsb3QoKSArDQogICAgICAgIGdndGl0bGUoIlN1bW1hIDEiKQ0KYGBgDQojIyMjIFN1bW1hIDEgcGFyYSBkZW50aXN0YXMNCg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRGVudGlzdGEiKSAlPiUgDQogICAgICAgIGRvKHRpZHkoZml0X2RlbnRpc3RhcyA8LSBhb3YoU3VtbWExIH4gUGFpcywgZGF0YSA9IC4pKSkNCiAgICAgICAgDQpgYGANCg0KIyMjIyBTdW1tYSAxIHBhcmEgZXN0dWRpYW50ZXMNCg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRXN0dWRpYW50ZSIpICU+JSANCiAgICAgICAgZG8odGlkeShmaXRfZGVudGlzdGFzMSA8LSBhb3YoU3VtbWExIH4gUGFpcywgZGF0YSA9IC4pKSkNCmBgYA0KDQojIyMgU3VtbWEgMg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGdncGxvdChhZXMoZmFjdG9yKGBVZCBlczpgKSwgU3VtbWEyLCBjb2xvdXIgPSBQYWlzKSkgKw0KICAgICAgICBnZW9tX2JveHBsb3QoKSArDQogICAgICAgIGdndGl0bGUoIlN1bW1hIDIiKQ0KYGBgDQojIyMjIFN1bW1hIDIgcGFyYSBkZW50aXN0YXMNCg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRGVudGlzdGEiKSAlPiUgDQogICAgICAgIGRvKHRpZHkoZml0X2RlbnRpc3RhczIgPC0gYW92KFN1bW1hMiB+IFBhaXMsIGRhdGEgPSAuKSkpDQogICAgICAgIA0KYGBgDQoNCg0KIyMjIyBTdW1tYSAyIHBhcmEgZXN0dWRpYW50ZXMNCg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRXN0dWRpYW50ZSIpICU+JSANCiAgICAgICAgZG8odGlkeShmaXRfZXN0dWRpYW50ZXMyIDwtIGFvdihTdW1tYTIgfiBQYWlzLCBkYXRhID0gLikpKQ0KYGBgDQoNCg0KIyMgSGF5IHJlbGFjacOzbiBlbnRyZSBhw7FvIGRlIGVncmVzbyB5IHN1bW1hIDEgbyAyIHBhcmEgZGVudGlzdGFzPw0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRGVudGlzdGEiLCAhaXMubmEoYGdhZGkga29wcyBiZWlnc2FuYXNgKSkgJT4lDQogICAgICAgIGdyb3VwX2J5KFBhaXMpICU+JSANCiAgICAgICAgc3VtbWFyaXNlKG4gPSBuKCksICJBw7FvcyBlZ3Jlc28gcHJvbWVkaW8iPSBtZWFuKGBnYWRpIGtvcHMgYmVpZ3NhbmFzYCksICJTRCIgPSBzZChgZ2FkaSBrb3BzIGJlaWdzYW5hc2ApKQ0KYGBgDQoNCmBgYHtyfQ0Kc3VtbWEgJT4lIA0KICAgICAgICBmaWx0ZXIoYFVkIGVzOmAgPT0gIkRlbnRpc3RhIikgJT4lIA0KICAgICAgICBnZ3Bsb3QoYWVzKHggPSBgZ2FkaSBrb3BzIGJlaWdzYW5hc2AsIHkgPSBTdW1tYTEsIGNvbG91ciA9IFBhaXMpKSArDQogICAgICAgIGdlb21fcG9pbnQoKSArDQogICAgICAgIGdlb21fc21vb3RoKCkgICANCmBgYA0KDQpgYGB7cn0NCnN1bW1hICU+JSANCiAgICAgICAgZmlsdGVyKGBVZCBlczpgID09ICJEZW50aXN0YSIpICU+JSANCiAgICAgICAgZ2dwbG90KGFlcyh4ID0gYGdhZGkga29wcyBiZWlnc2FuYXNgLCB5ID0gU3VtbWEyLCBjb2xvdXIgPSBQYWlzKSkgKw0KICAgICAgICBnZW9tX3BvaW50KCkgKw0KICAgICAgICBnZW9tX3Ntb290aCgpICAgDQpgYGANCg0KYGBge3J9DQpzdW1tYSAlPiUgDQogICAgICAgIGZpbHRlcihgVWQgZXM6YCA9PSAiRGVudGlzdGEiLCAhaXMubmEoYGdhZGkga29wcyBiZWlnc2FuYXNgKSkgJT4lIA0KICAgICAgICBncm91cF9ieShQYWlzKSAlPiUgDQogICAgICAgIHN1bW1hcmlzZSgiY29ycmVsYXRpb24gc3VtbWEgMSIgPSBjb3IoYGdhZGkga29wcyBiZWlnc2FuYXNgLCBTdW1tYTEpLCANCiAgICAgICAgICAgICAgICAgICJjb3JyZWxhdGlvbiBzdW1tYSAyIiA9IGNvcihgZ2FkaSBrb3BzIGJlaWdzYW5hc2AsIFN1bW1hMikpDQpgYGANCg0KDQo=