JuveYell

Instalar paquetes y llamar librerías

library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.3.6      ✔ purrr   0.3.4 
## ✔ tibble  3.1.8      ✔ dplyr   1.0.10
## ✔ tidyr   1.2.0      ✔ stringr 1.4.1 
## ✔ readr   2.1.2      ✔ forcats 0.5.2 
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
library(gtrendsR)

Tendencia de asistencia para ver Jurassic World en México “MX”

### Paso 1. Definir el término a buscar
termino<- c("Jurassic World")

### Paso 2. Definir la locación (ISO3166-2 country codes)
ubicacion<- c("MX")

### Paso 3. Definir el canal: web, news, images, youtube
canal<- "web"

### Paso 4. Definir la ventana de tiempo
periodo<- ("2010-01-01 2022-09-01")

### Paso 5. Función
tendencia<- gtrends(termino, ubicacion, canal, time=periodo)
plot(tendencia)

Tendencia de crecimiento de COVID-19 en México “MX”

### Paso 1. Definir el término a buscar
termino<- c("Jurassic World")

### Paso 2. Definir la locación (ISO3166-2 country codes)
ubicacion<- c("MX")

### Paso 3. Definir el canal: web, news, images, youtube
canal<- "web"

### Paso 4. Definir la ventana de tiempo
periodo<- ("2010-01-01 2022-09-01")

### Paso 5. Función
tendencia<- gtrends(termino, ubicacion, canal, time = periodo)
plot(tendencia)

Tendencia de reproducciones de Bad Bunny en México “MX”

### Paso 1. Definir el término a buscar
termino<- c("Bad Bunny")

### Paso 2. Definir la locación (ISO3166-2 country codes)
ubicacion<- c("MX")

### Paso 3. Definir el canal: web, news, images, youtube
canal<- "web"

### Paso 4. Definir la ventana de tiempo
periodo<- ("2010-01-01 2022-09-01")

### Paso 5. Función
tendencia<- gtrends(termino, ubicacion, canal, time = periodo)
plot(tendencia)

Tendencia de reproducciones de Bad Bunny en China “CN”

### Paso 1. Definir el término a buscar
termino<- c("Bad Bunny")

### Paso 2. Definir la locación (ISO3166-2 country codes)
ubicacion<- c("CN")

### Paso 3. Definir el canal: web, news, images, youtube
canal<- "web"

### Paso 4. Definir la ventana de tiempo
periodo<- ("2010-01-01 2022-09-01")

### Paso 5. Función
tendencia<- gtrends(termino, ubicacion, canal, time = periodo)
plot(tendencia)

Gráficas de John Deere (3)

Tendencia de crecimiento de “John Deere” en México (MX)

termino <- c("John Deere")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia <- gtrends(termino, ubicacion, canal, time = periodo)
plot(tendencia)

Tendencia de crecimiento de “CASE IH” competidor de John Deere en México

termino2 <- c("CASE IH")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia2 <- gtrends(termino2, ubicacion, canal, time = periodo)
plot(tendencia2)

Tendencia de incremento en demanda del producto más vendido en México | tractor

termino1 <- c("tractor")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia1 <- gtrends(termino1, ubicacion, canal, time = periodo)
plot(tendencia1)

Gráficas de OXXO (3)

Tendencia de crecimiento de “OXXO” en México (MX)

termino1 <- c("OXXO")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia1 <- gtrends(termino1, ubicacion, canal, time = periodo)
plot(tendencia1)

Tendencia de crecimiento de FEMSA en México

termino2 <- c("FEMSA")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia2 <- gtrends(termino2, ubicacion, canal, time = periodo)
plot(tendencia2)

Tendencia de crecimiento de “Coca-Cola”

termino2 <- c("Coca Cola")
ubicacion <- c("MX")
canal <- "web"
periodo <- ("2010-01-01 2022-09-01")
tendencia2 <- gtrends(termino2, ubicacion, canal, time = periodo)
plot(tendencia2)

La Herramienta “El Generador de Valor de Datos” = Tendencia de reproducciones de Bad Bunny en China “CN”

Paso 1. Definir el área del negocio que buscamos impactar o mejorar y su KPI.

Incrementar la cantidad de reproducciones de Bad Bunny en China.

Paso 2. Seleccionar plantilla(s) para crear valor a partir de los datos de los clientes. Visión | Segmentación | Personalización | Contextualización

Contextualización.

Paso 3. Generar ideas o conceptos específicos.

Considerar el aspecto sociocultural del mercado musical en China para poder incrementar las escuchas de los residentes del país respecto a la música de Bad Bunny, es decir, analizar sus tendencias musicales y culturales.

Paso 4. Reunir los datos requeridos.

Realizar un análisis de tendencias para considerar factores internos y externos del país.

Paso 5. Plan de ejecución.

Proponer que Bad Bunny realice una colaboración musical con BTS, grupo musical con un auge importante en el mercado asiático, principalmente el chino. Esto da pie a que haya un pico de escucha nuevamente de artista, así como la incorporación de las tendencias musicales y culturales anteriormente mencionadas.

Conclusiones

De acuerdo a las tendencias globales, vemos que existen distintos tipos de preferencias, necesidades y ocupaciones por parte de los consumidores. Con esto en mente, el siguiente análisis sirvió para dar visibilidad de los distintos tipos de tendencias de consumo de largometrajes, presencia del COVID-19 y crecimiento de la carrera de Bad Bunny en distintas regiones del mundo.

En el primer análisis se muestra la tendencia de asistencia para ver Jurassic World en México. De acuerdo a las gráficas obtenidas, vemos que en 2015 hubo un auge mucho mayor con la salida de la primera película de la triología contra el 2022, en el cual vemos que esta tendencia baja.

En el segundo análisis vemos el incremento de contagios por COVID-19 en México. Los datos iniciales muestran que los datos comienzan a tener presencia a partir del 2020. Conforme va avanzando el año, se muestra un pico elevado a mediados de 2021-2022. Podemos suponer que esto se debe a causa de la baja en uso de cubrebocas en todo el país, así como una alta demanda y baja oferta de vacunas contra el COVID-19.

En el tercer análisis vemos la relevancia que va cobrando Bad Bunny en México. Siendo que su carrera inicia a partir de 2010, vemos que empieza a tener mayor popularidad con el mercado mexicano a partir del 2017-2018 y alcanza su pico más alto de popularidad en el 2021 y 2022.

En el cuarto análisis vemos la misma popularidad de Bad Bunny, pero en el mercado musical de China. A diferencia de México, en China se muestra el pico de tendencia en el 2015 en adelante y de manera gradual esa popularidad va bajando hasta el día de hoy.

En los análisis de John Deere, vemos que la empresa ha tenido un crecimiento considerable del 2010 al 2022. Podemos suponer que esto se debe por el incremento de demanda de la industria alimentaria. A diferencia de John Deere, vemos que entre los principales competidores de México está CASE IH que ha tenido una baja considerable de demanda en el mercado tanto mexicano como global. En cuanto a la tendencia de crecimiento de demanda del tractor, vemos que este representa un porcentaje alto de la demanda de la empresa.

En conclusión, el análisis de tendencias muestra no sólo el crecimiento o decrecimiento de un factor global, internacional o nacional, sino que también permite tener una visualización concisa de factores específicos para tener un mejor contexto social, político, económico e incluso legal para la toma de decisiones en los apartados estratégicos.

JuveYell

LS0tDQp0aXRsZTogPHNwYW4gc3R5bGU9IkNvbG9yOkdyZWVuIj4gIkdsb2JhbCB0cmVuZHMiDQphdXRob3I6ICJKaW1lbmEgTWlndWVsIC0gQTAxMzY1ODE5Ig0KZGF0ZTogIjIwMjItMDktMDYiDQpvdXRwdXQ6DQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiB0cnVlDQogICAgdG9jX2Zsb2F0OiB0cnVlDQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQ0KLS0tDQoNCjxkaXY+DQo8cCBzdHlsZSA9ICd0ZXh0LWFsaWduOmNlbnRlcjsnPg0KPGltZyBzcmM9Imh0dHBzOi8vaW1hZ2VzLnNxdWFyZXNwYWNlLWNkbi5jb20vY29udGVudC92MS81M2FhZGYxZGU0YjBhMGE4MTc2NDBjY2EvMTU2NDc1NTgyODg5NC1RSVJUVk1QUkkxQzgwQUpVNkhURy9lbXBsZWFkb3MrdmllbmRvK2VsK2Z1dHVybytkZWwrdHJhYmFqbyIgYWx0PSJKdXZlWWVsbCIgd2lkdGg9IjMwMHB4Ij4NCjwvcD4NCjwvZGl2Pg0KDQojIyMgSW5zdGFsYXIgcGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyw61hcw0KDQpgYGB7cn0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeShndHJlbmRzUikNCmBgYA0KDQoNCiMjIFRlbmRlbmNpYSBkZSBhc2lzdGVuY2lhIHBhcmEgdmVyIEp1cmFzc2ljIFdvcmxkIGVuIE3DqXhpY28gIk1YIg0KDQpgYGB7cn0NCiMjIyBQYXNvIDEuIERlZmluaXIgZWwgdMOpcm1pbm8gYSBidXNjYXINCnRlcm1pbm88LSBjKCJKdXJhc3NpYyBXb3JsZCIpDQoNCiMjIyBQYXNvIDIuIERlZmluaXIgbGEgbG9jYWNpw7NuIChJU08zMTY2LTIgY291bnRyeSBjb2RlcykNCnViaWNhY2lvbjwtIGMoIk1YIikNCg0KIyMjIFBhc28gMy4gRGVmaW5pciBlbCBjYW5hbDogd2ViLCBuZXdzLCBpbWFnZXMsIHlvdXR1YmUNCmNhbmFsPC0gIndlYiINCg0KIyMjIFBhc28gNC4gRGVmaW5pciBsYSB2ZW50YW5hIGRlIHRpZW1wbw0KcGVyaW9kbzwtICgiMjAxMC0wMS0wMSAyMDIyLTA5LTAxIikNCg0KIyMjIFBhc28gNS4gRnVuY2nDs24NCnRlbmRlbmNpYTwtIGd0cmVuZHModGVybWlubywgdWJpY2FjaW9uLCBjYW5hbCwgdGltZT1wZXJpb2RvKQ0KcGxvdCh0ZW5kZW5jaWEpDQpgYGANCg0KDQojIyBUZW5kZW5jaWEgZGUgY3JlY2ltaWVudG8gZGUgQ09WSUQtMTkgZW4gTcOpeGljbyAiTVgiDQoNCmBgYHtyfQ0KIyMjIFBhc28gMS4gRGVmaW5pciBlbCB0w6lybWlubyBhIGJ1c2Nhcg0KdGVybWlubzwtIGMoIkp1cmFzc2ljIFdvcmxkIikNCg0KIyMjIFBhc28gMi4gRGVmaW5pciBsYSBsb2NhY2nDs24gKElTTzMxNjYtMiBjb3VudHJ5IGNvZGVzKQ0KdWJpY2FjaW9uPC0gYygiTVgiKQ0KDQojIyMgUGFzbyAzLiBEZWZpbmlyIGVsIGNhbmFsOiB3ZWIsIG5ld3MsIGltYWdlcywgeW91dHViZQ0KY2FuYWw8LSAid2ViIg0KDQojIyMgUGFzbyA0LiBEZWZpbmlyIGxhIHZlbnRhbmEgZGUgdGllbXBvDQpwZXJpb2RvPC0gKCIyMDEwLTAxLTAxIDIwMjItMDktMDEiKQ0KDQojIyMgUGFzbyA1LiBGdW5jacOzbg0KdGVuZGVuY2lhPC0gZ3RyZW5kcyh0ZXJtaW5vLCB1YmljYWNpb24sIGNhbmFsLCB0aW1lID0gcGVyaW9kbykNCnBsb3QodGVuZGVuY2lhKQ0KYGBgDQoNCg0KIyMgVGVuZGVuY2lhIGRlIHJlcHJvZHVjY2lvbmVzIGRlIEJhZCBCdW5ueSBlbiBNw6l4aWNvICJNWCINCg0KYGBge3J9DQojIyMgUGFzbyAxLiBEZWZpbmlyIGVsIHTDqXJtaW5vIGEgYnVzY2FyDQp0ZXJtaW5vPC0gYygiQmFkIEJ1bm55IikNCg0KIyMjIFBhc28gMi4gRGVmaW5pciBsYSBsb2NhY2nDs24gKElTTzMxNjYtMiBjb3VudHJ5IGNvZGVzKQ0KdWJpY2FjaW9uPC0gYygiTVgiKQ0KDQojIyMgUGFzbyAzLiBEZWZpbmlyIGVsIGNhbmFsOiB3ZWIsIG5ld3MsIGltYWdlcywgeW91dHViZQ0KY2FuYWw8LSAid2ViIg0KDQojIyMgUGFzbyA0LiBEZWZpbmlyIGxhIHZlbnRhbmEgZGUgdGllbXBvDQpwZXJpb2RvPC0gKCIyMDEwLTAxLTAxIDIwMjItMDktMDEiKQ0KDQojIyMgUGFzbyA1LiBGdW5jacOzbg0KdGVuZGVuY2lhPC0gZ3RyZW5kcyh0ZXJtaW5vLCB1YmljYWNpb24sIGNhbmFsLCB0aW1lID0gcGVyaW9kbykNCnBsb3QodGVuZGVuY2lhKQ0KYGBgDQoNCg0KIyMgVGVuZGVuY2lhIGRlIHJlcHJvZHVjY2lvbmVzIGRlIEJhZCBCdW5ueSBlbiBDaGluYSAiQ04iDQoNCmBgYHtyfQ0KIyMjIFBhc28gMS4gRGVmaW5pciBlbCB0w6lybWlubyBhIGJ1c2Nhcg0KdGVybWlubzwtIGMoIkJhZCBCdW5ueSIpDQoNCiMjIyBQYXNvIDIuIERlZmluaXIgbGEgbG9jYWNpw7NuIChJU08zMTY2LTIgY291bnRyeSBjb2RlcykNCnViaWNhY2lvbjwtIGMoIkNOIikNCg0KIyMjIFBhc28gMy4gRGVmaW5pciBlbCBjYW5hbDogd2ViLCBuZXdzLCBpbWFnZXMsIHlvdXR1YmUNCmNhbmFsPC0gIndlYiINCg0KIyMjIFBhc28gNC4gRGVmaW5pciBsYSB2ZW50YW5hIGRlIHRpZW1wbw0KcGVyaW9kbzwtICgiMjAxMC0wMS0wMSAyMDIyLTA5LTAxIikNCg0KIyMjIFBhc28gNS4gRnVuY2nDs24NCnRlbmRlbmNpYTwtIGd0cmVuZHModGVybWlubywgdWJpY2FjaW9uLCBjYW5hbCwgdGltZSA9IHBlcmlvZG8pDQpwbG90KHRlbmRlbmNpYSkNCmBgYA0KDQojIyBHcsOhZmljYXMgZGUgSm9obiBEZWVyZSAoMykNCg0KIyMgVGVuZGVuY2lhIGRlIGNyZWNpbWllbnRvIGRlICJKb2huIERlZXJlIiBlbiBNw6l4aWNvIChNWCkNCmBgYHtyfQ0KdGVybWlubyA8LSBjKCJKb2huIERlZXJlIikNCnViaWNhY2lvbiA8LSBjKCJNWCIpDQpjYW5hbCA8LSAid2ViIg0KcGVyaW9kbyA8LSAoIjIwMTAtMDEtMDEgMjAyMi0wOS0wMSIpDQp0ZW5kZW5jaWEgPC0gZ3RyZW5kcyh0ZXJtaW5vLCB1YmljYWNpb24sIGNhbmFsLCB0aW1lID0gcGVyaW9kbykNCnBsb3QodGVuZGVuY2lhKQ0KDQpgYGANCg0KIyMgVGVuZGVuY2lhIGRlIGNyZWNpbWllbnRvIGRlICJDQVNFIElIIiBjb21wZXRpZG9yIGRlIEpvaG4gRGVlcmUgZW4gTcOpeGljbw0KYGBge3J9DQp0ZXJtaW5vMiA8LSBjKCJDQVNFIElIIikNCnViaWNhY2lvbiA8LSBjKCJNWCIpDQpjYW5hbCA8LSAid2ViIg0KcGVyaW9kbyA8LSAoIjIwMTAtMDEtMDEgMjAyMi0wOS0wMSIpDQp0ZW5kZW5jaWEyIDwtIGd0cmVuZHModGVybWlubzIsIHViaWNhY2lvbiwgY2FuYWwsIHRpbWUgPSBwZXJpb2RvKQ0KcGxvdCh0ZW5kZW5jaWEyKQ0KDQpgYGANCg0KIyMgVGVuZGVuY2lhIGRlIGluY3JlbWVudG8gZW4gZGVtYW5kYSBkZWwgcHJvZHVjdG8gbcOhcyB2ZW5kaWRvIGVuIE3DqXhpY28gfCB0cmFjdG9yDQpgYGB7cn0NCnRlcm1pbm8xIDwtIGMoInRyYWN0b3IiKQ0KdWJpY2FjaW9uIDwtIGMoIk1YIikNCmNhbmFsIDwtICJ3ZWIiDQpwZXJpb2RvIDwtICgiMjAxMC0wMS0wMSAyMDIyLTA5LTAxIikNCnRlbmRlbmNpYTEgPC0gZ3RyZW5kcyh0ZXJtaW5vMSwgdWJpY2FjaW9uLCBjYW5hbCwgdGltZSA9IHBlcmlvZG8pDQpwbG90KHRlbmRlbmNpYTEpDQoNCmBgYA0KDQojIyBHcsOhZmljYXMgZGUgT1hYTyAoMykNCg0KIyMgVGVuZGVuY2lhIGRlIGNyZWNpbWllbnRvIGRlICJPWFhPIiBlbiBNw6l4aWNvIChNWCkNCmBgYHtyfQ0KdGVybWlubzEgPC0gYygiT1hYTyIpDQp1YmljYWNpb24gPC0gYygiTVgiKQ0KY2FuYWwgPC0gIndlYiINCnBlcmlvZG8gPC0gKCIyMDEwLTAxLTAxIDIwMjItMDktMDEiKQ0KdGVuZGVuY2lhMSA8LSBndHJlbmRzKHRlcm1pbm8xLCB1YmljYWNpb24sIGNhbmFsLCB0aW1lID0gcGVyaW9kbykNCnBsb3QodGVuZGVuY2lhMSkNCg0KYGBgDQoNCiMjIFRlbmRlbmNpYSBkZSBjcmVjaW1pZW50byBkZSBGRU1TQSBlbiBNw6l4aWNvDQpgYGB7cn0NCnRlcm1pbm8yIDwtIGMoIkZFTVNBIikNCnViaWNhY2lvbiA8LSBjKCJNWCIpDQpjYW5hbCA8LSAid2ViIg0KcGVyaW9kbyA8LSAoIjIwMTAtMDEtMDEgMjAyMi0wOS0wMSIpDQp0ZW5kZW5jaWEyIDwtIGd0cmVuZHModGVybWlubzIsIHViaWNhY2lvbiwgY2FuYWwsIHRpbWUgPSBwZXJpb2RvKQ0KcGxvdCh0ZW5kZW5jaWEyKQ0KDQpgYGANCg0KIyMgVGVuZGVuY2lhIGRlIGNyZWNpbWllbnRvIGRlICJDb2NhLUNvbGEiDQpgYGB7cn0NCnRlcm1pbm8yIDwtIGMoIkNvY2EgQ29sYSIpDQp1YmljYWNpb24gPC0gYygiTVgiKQ0KY2FuYWwgPC0gIndlYiINCnBlcmlvZG8gPC0gKCIyMDEwLTAxLTAxIDIwMjItMDktMDEiKQ0KdGVuZGVuY2lhMiA8LSBndHJlbmRzKHRlcm1pbm8yLCB1YmljYWNpb24sIGNhbmFsLCB0aW1lID0gcGVyaW9kbykNCnBsb3QodGVuZGVuY2lhMikNCg0KYGBgDQoNCiMjIExhIEhlcnJhbWllbnRhICJFbCBHZW5lcmFkb3IgZGUgVmFsb3IgZGUgRGF0b3MiID0gVGVuZGVuY2lhIGRlIHJlcHJvZHVjY2lvbmVzIGRlIEJhZCBCdW5ueSBlbiBDaGluYSAiQ04iDQoNCiMjIyBQYXNvIDEuIERlZmluaXIgZWwgw6FyZWEgZGVsIG5lZ29jaW8gcXVlIGJ1c2NhbW9zIGltcGFjdGFyIG8gbWVqb3JhciB5IHN1IEtQSS4NCkluY3JlbWVudGFyIGxhIGNhbnRpZGFkIGRlIHJlcHJvZHVjY2lvbmVzIGRlIEJhZCBCdW5ueSBlbiBDaGluYS4NCg0KIyMjIFBhc28gMi4gU2VsZWNjaW9uYXIgcGxhbnRpbGxhKHMpIHBhcmEgY3JlYXIgdmFsb3IgYSBwYXJ0aXIgZGUgbG9zIGRhdG9zIGRlIGxvcyBjbGllbnRlcy4gVmlzacOzbiB8IFNlZ21lbnRhY2nDs24gfCBQZXJzb25hbGl6YWNpw7NuIHwgQ29udGV4dHVhbGl6YWNpw7NuDQpDb250ZXh0dWFsaXphY2nDs24uDQoNCiMjIyBQYXNvIDMuIEdlbmVyYXIgaWRlYXMgbyBjb25jZXB0b3MgZXNwZWPDrWZpY29zLg0KQ29uc2lkZXJhciBlbCBhc3BlY3RvIHNvY2lvY3VsdHVyYWwgZGVsIG1lcmNhZG8gbXVzaWNhbCBlbiBDaGluYSBwYXJhIHBvZGVyIGluY3JlbWVudGFyIGxhcyBlc2N1Y2hhcyBkZSBsb3MgcmVzaWRlbnRlcyBkZWwgcGHDrXMgcmVzcGVjdG8gYSBsYSBtw7pzaWNhIGRlIEJhZCBCdW5ueSwgZXMgZGVjaXIsIGFuYWxpemFyIHN1cyB0ZW5kZW5jaWFzIG11c2ljYWxlcyB5IGN1bHR1cmFsZXMuDQoNCiMjIyBQYXNvIDQuIFJldW5pciBsb3MgZGF0b3MgcmVxdWVyaWRvcy4NClJlYWxpemFyIHVuIGFuw6FsaXNpcyBkZSB0ZW5kZW5jaWFzIHBhcmEgY29uc2lkZXJhciBmYWN0b3JlcyBpbnRlcm5vcyB5IGV4dGVybm9zIGRlbCBwYcOtcy4NCg0KIyMjIFBhc28gNS4gUGxhbiBkZSBlamVjdWNpw7NuLg0KUHJvcG9uZXIgcXVlIEJhZCBCdW5ueSByZWFsaWNlIHVuYSBjb2xhYm9yYWNpw7NuIG11c2ljYWwgY29uIEJUUywgZ3J1cG8gbXVzaWNhbCBjb24gdW4gYXVnZSBpbXBvcnRhbnRlIGVuIGVsIG1lcmNhZG8gYXNpw6F0aWNvLCBwcmluY2lwYWxtZW50ZSBlbCBjaGluby4gRXN0byBkYSBwaWUgYSBxdWUgaGF5YSB1biBwaWNvIGRlIGVzY3VjaGEgbnVldmFtZW50ZSBkZSBhcnRpc3RhLCBhc8OtIGNvbW8gbGEgaW5jb3Jwb3JhY2nDs24gZGUgbGFzIHRlbmRlbmNpYXMgbXVzaWNhbGVzIHkgY3VsdHVyYWxlcyBhbnRlcmlvcm1lbnRlIG1lbmNpb25hZGFzLg0KDQojIyBDb25jbHVzaW9uZXMNCg0KRGUgYWN1ZXJkbyBhIGxhcyBfX3RlbmRlbmNpYXMgZ2xvYmFsZXNfXywgdmVtb3MgcXVlIGV4aXN0ZW4gZGlzdGludG9zIHRpcG9zIGRlIHByZWZlcmVuY2lhcywgbmVjZXNpZGFkZXMgeSBvY3VwYWNpb25lcyBwb3IgcGFydGUgZGUgbG9zIGNvbnN1bWlkb3Jlcy4gQ29uIGVzdG8gZW4gbWVudGUsIGVsIHNpZ3VpZW50ZSBhbsOhbGlzaXMgc2lydmnDsyBwYXJhIGRhciB2aXNpYmlsaWRhZCBkZSBsb3MgZGlzdGludG9zIHRpcG9zIGRlIHRlbmRlbmNpYXMgZGUgY29uc3VtbyBkZSBsYXJnb21ldHJhamVzLCBwcmVzZW5jaWEgZGVsIENPVklELTE5IHkgY3JlY2ltaWVudG8gZGUgbGEgY2FycmVyYSBkZSBCYWQgQnVubnkgZW4gZGlzdGludGFzIHJlZ2lvbmVzIGRlbCBtdW5kby4NCg0KRW4gZWwgcHJpbWVyIGFuw6FsaXNpcyBzZSBtdWVzdHJhIGxhIHRlbmRlbmNpYSBkZSBhc2lzdGVuY2lhIHBhcmEgdmVyIF9fSnVyYXNzaWMgV29ybGRfXyBlbiBNw6l4aWNvLiBEZSBhY3VlcmRvIGEgbGFzIGdyw6FmaWNhcyBvYnRlbmlkYXMsIHZlbW9zIHF1ZSBlbiAyMDE1IGh1Ym8gdW4gYXVnZSBtdWNobyBtYXlvciBjb24gbGEgc2FsaWRhIGRlIGxhIHByaW1lcmEgcGVsw61jdWxhIGRlIGxhIHRyaW9sb2fDrWEgY29udHJhIGVsIDIwMjIsIGVuIGVsIGN1YWwgdmVtb3MgcXVlIGVzdGEgdGVuZGVuY2lhIGJhamEuDQoNCkVuIGVsIHNlZ3VuZG8gYW7DoWxpc2lzIHZlbW9zIGVsIGluY3JlbWVudG8gZGUgX19jb250YWdpb3MgcG9yIENPVklELTE5IGVuIE3DqXhpY29fXy4gTG9zIGRhdG9zIGluaWNpYWxlcyBtdWVzdHJhbiBxdWUgbG9zIGRhdG9zIGNvbWllbnphbiBhIHRlbmVyIHByZXNlbmNpYSBhIHBhcnRpciBkZWwgMjAyMC4gQ29uZm9ybWUgdmEgYXZhbnphbmRvIGVsIGHDsW8sIHNlIG11ZXN0cmEgdW4gcGljbyBlbGV2YWRvIGEgbWVkaWFkb3MgZGUgMjAyMS0yMDIyLiBQb2RlbW9zIHN1cG9uZXIgcXVlIGVzdG8gc2UgZGViZSBhIGNhdXNhIGRlIGxhIGJhamEgZW4gdXNvIGRlIGN1YnJlYm9jYXMgZW4gdG9kbyBlbCBwYcOtcywgYXPDrSBjb21vIHVuYSBhbHRhIGRlbWFuZGEgeSBiYWphIG9mZXJ0YSBkZSB2YWN1bmFzIGNvbnRyYSBlbCBDT1ZJRC0xOS4NCg0KRW4gZWwgdGVyY2VyIGFuw6FsaXNpcyB2ZW1vcyBsYSByZWxldmFuY2lhIHF1ZSB2YSBjb2JyYW5kbyBfX0JhZCBCdW5ueSBlbiBNw6l4aWNvX18uIFNpZW5kbyBxdWUgc3UgY2FycmVyYSBpbmljaWEgYSBwYXJ0aXIgZGUgMjAxMCwgdmVtb3MgcXVlIGVtcGllemEgYSB0ZW5lciBtYXlvciBwb3B1bGFyaWRhZCBjb24gZWwgbWVyY2FkbyBtZXhpY2FubyBhIHBhcnRpciBkZWwgMjAxNy0yMDE4IHkgYWxjYW56YSBzdSBwaWNvIG3DoXMgYWx0byBkZSBwb3B1bGFyaWRhZCBlbiBlbCAyMDIxIHkgMjAyMi4NCg0KRW4gZWwgY3VhcnRvIGFuw6FsaXNpcyB2ZW1vcyBsYSBtaXNtYSBwb3B1bGFyaWRhZCBkZSBfX0JhZCBCdW5ueSwgcGVybyBlbiBlbCBtZXJjYWRvIG11c2ljYWwgZGUgQ2hpbmFfXy4gQSBkaWZlcmVuY2lhIGRlIE3DqXhpY28sIGVuIENoaW5hIHNlIG11ZXN0cmEgZWwgcGljbyBkZSB0ZW5kZW5jaWEgZW4gZWwgMjAxNSBlbiBhZGVsYW50ZSB5IGRlIG1hbmVyYSBncmFkdWFsIGVzYSBwb3B1bGFyaWRhZCB2YSBiYWphbmRvIGhhc3RhIGVsIGTDrWEgZGUgaG95Lg0KDQpFbiBsb3MgYW7DoWxpc2lzIGRlIF9fSm9obiBEZWVyZV9fLCB2ZW1vcyBxdWUgbGEgZW1wcmVzYSBoYSB0ZW5pZG8gdW4gY3JlY2ltaWVudG8gY29uc2lkZXJhYmxlIGRlbCAyMDEwIGFsIDIwMjIuIFBvZGVtb3Mgc3Vwb25lciBxdWUgZXN0byBzZSBkZWJlIHBvciBlbCBpbmNyZW1lbnRvIGRlIGRlbWFuZGEgZGUgbGEgaW5kdXN0cmlhIGFsaW1lbnRhcmlhLiBBIGRpZmVyZW5jaWEgZGUgSm9obiBEZWVyZSwgdmVtb3MgcXVlIGVudHJlIGxvcyBwcmluY2lwYWxlcyBjb21wZXRpZG9yZXMgZGUgTcOpeGljbyBlc3TDoSBDQVNFIElIIHF1ZSBoYSB0ZW5pZG8gdW5hIGJhamEgY29uc2lkZXJhYmxlIGRlIGRlbWFuZGEgZW4gZWwgbWVyY2FkbyB0YW50byBtZXhpY2FubyBjb21vIGdsb2JhbC4NCkVuIGN1YW50byBhIGxhIHRlbmRlbmNpYSBkZSBjcmVjaW1pZW50byBkZSBkZW1hbmRhIGRlbCB0cmFjdG9yLCB2ZW1vcyBxdWUgZXN0ZSByZXByZXNlbnRhIHVuIHBvcmNlbnRhamUgYWx0byBkZSBsYSBkZW1hbmRhIGRlIGxhIGVtcHJlc2EuDQoNCkVuIGNvbmNsdXNpw7NuLCBlbCBhbsOhbGlzaXMgZGUgdGVuZGVuY2lhcyBtdWVzdHJhIG5vIHPDs2xvIGVsIGNyZWNpbWllbnRvIG8gZGVjcmVjaW1pZW50byBkZSB1biBmYWN0b3IgZ2xvYmFsLCBpbnRlcm5hY2lvbmFsIG8gbmFjaW9uYWwsIHNpbm8gcXVlIHRhbWJpw6luIHBlcm1pdGUgdGVuZXIgdW5hIHZpc3VhbGl6YWNpw7NuIGNvbmNpc2EgZGUgZmFjdG9yZXMgZXNwZWPDrWZpY29zIHBhcmEgdGVuZXIgdW4gbWVqb3IgY29udGV4dG8gc29jaWFsLCBwb2zDrXRpY28sIGVjb27Ds21pY28gZSBpbmNsdXNvIGxlZ2FsIHBhcmEgbGEgdG9tYSBkZSBkZWNpc2lvbmVzIGVuIGxvcyBhcGFydGFkb3MgZXN0cmF0w6lnaWNvcy4NCg0KDQoNCjxkaXY+DQo8cCBzdHlsZSA9ICd0ZXh0LWFsaWduOmNlbnRlcjsnPg0KPGltZyBzcmM9Imh0dHBzOi8vYWdlbmNpYXBhcmFmdXNvLmNvbS5ici93cC1jb250ZW50L3VwbG9hZHMvMjAyMC8xMi90ZW5kZSVDQyU4Mm5jaWFzLWRlLTIwMjEtY2FwYS5qcGciIGFsdD0iSnV2ZVllbGwiIHdpZHRoPSIzMDBweCI+DQo8L3A+DQo8L2Rpdj4NCg==