Escala
Likert
Introdução
A escala likert ou escala de likert, é um tipo de escala psicométrica
usada habitualmente em questionários, sendo a7 mais usada em pesquisa de
opnião.
A escala de Likert é bipolar, medindo ou uma resposta positiva ou
negativa a uma afirmação. Às vezes são usados quatro itens, o que força
o sujeito pesquisado a uma escolha positiva ou negativa, uma vez que a
opção central “Indiferente” não existe
Rensis
Likert(1903-1981)
Rensis Likert recebeu seu bacharelado em Sociologia pela Universidade
de Michigan em 1926. Seu entrada precoce nestas áreas foi a base para
muito do trabalho de Likert.
O campo da sociologia na década de 1920 foi altamente experimental
eincorporou muitos aspectos da psicologia moderna.
Em 1932 recebeu seu Ph.D. em psicologia pela Universidadede Columbia.
Por seu trabalho de tese, produzidos numa escala de pesquisa (Escalas de
Likert), como um meio de medir atitudes, mostrando que é captada mais
informação do que os métodos concorrentes
LIKERT ganhou notoriedade por ter desenvolvido a chamada
“Escala de Atitudes” – um questionário em que as
hipóteses de resposta eram do tipo:
- Discordo ou (Não Concordo) Totalmente;
- Discordo ou (Não Concordo) Parcialmente;
- Indiferente;
- Concordo Parcialmente;
- Concordo Totalmente
Em 1961 no livro NEW PATTERNS OF MANAGEMENT (“Novos Padrões de
Gestão”) mostra os resultados de suas pesquisas iniciadas, ainda na
década de 50, que obtiveram grande repercussão na TEORIA COMPORTAMENTAL
nos estudos sobre LIDERANÇA. O estudo de LIKERT não eliminou as Teorias
sobre a LIDERANÇA, porém, ampliou o conceito
Visualização
Gráfica
Para mensuração do satisfação em relação ao clima organizacional dos
funcionários do DETRAN-PA foi implementada um script no software
R-Project versão 4.3 e um ambiente de desenvolvimento integrado chamado
Rstudio versão 1.1.5 com uso dos pacotes:
Carregando os
Pacotes
# Ativar os Pacotes
library(likert)
library(readxl)
library(dplyr)
library(plyr)
library(plotly)
library(ggplot2)
library(table1)
library(flextable)
library(RColorBrewer)
library(rstatix)
Definir
Diretório de Trabalho
setwd("C:/Users/mario Dhiego/Documents/Pesquisa_Clima_Likert/Pesquisa-de-Clima-Organizacional-na-Escala-Likert")
Bases de
Dados
Dados_Clima <- read_excel("Dados_Clima.xls")
Dados_Clima[,1:4] <- lapply(Dados_Clima[,1:4],
factor,
levels=1:5,
labels = c("Sempre",
"Quase Sempre",
"Raramente",
"Nunca",
"Não Tenho Opnião"),
order = TRUE)
Tabelas dos
Itens
my.render.cont <- function(x) {
with(stats.apply.rounding(stats.default(x), digits = 2),
c("", "Mean (SD)"=sprintf("%s (± %s)", MEAN, SD)))
}
my.render.cat <- function(x) {
c("", sapply(stats.default(x),
function(y) with(y,
sprintf("%d (%0.0f %%)", FREQ, PCT))))
}
caption <- "Pesquisa de Clima Organizacional"
footnote <- "Fonte: RH/DETRAN-PA"
# Tabela de Frequência
table1(~.,
data = Dados_Clima,
#ctable = TRUE,
overall = "Total (%)",
#overall = F,
#decimal.mark = ",",
caption = caption,
footnote = footnote,
#topclass="Rtable1-grid Rtable1-shade Rtable1-times",
topclass = "Rtable1-zebra",
#render.continuous=my.render.cont,
#render.categorical=my.render.cat
#extra.col=list(`P-value`=pvalue)
)
Pesquisa de Clima Organizacional
|
Total (%) (N=577) |
| Q1(16) |
|
| Sempre |
140 (24.3%) |
| Quase Sempre |
252 (43.7%) |
| Raramente |
141 (24.4%) |
| Nunca |
27 (4.7%) |
| Não Tenho Opnião |
17 (2.9%) |
| Q2(17) |
|
| Sempre |
74 (12.8%) |
| Quase Sempre |
201 (34.8%) |
| Raramente |
219 (38.0%) |
| Nunca |
50 (8.7%) |
| Não Tenho Opnião |
33 (5.7%) |
| Q3(20) |
|
| Sempre |
276 (47.8%) |
| Quase Sempre |
149 (25.8%) |
| Raramente |
70 (12.1%) |
| Nunca |
29 (5.0%) |
| Não Tenho Opnião |
53 (9.2%) |
| Q4(21) |
|
| Sempre |
218 (37.8%) |
| Quase Sempre |
216 (37.4%) |
| Raramente |
107 (18.5%) |
| Nunca |
16 (2.8%) |
| Não Tenho Opnião |
20 (3.5%) |
| Q5(22) |
|
| Mean (SD) |
2.67 (1.23) |
| Median [Min, Max] |
3.00 [1.00, 5.00] |
| Q6(24) |
|
| Mean (SD) |
1.97 (0.993) |
| Median [Min, Max] |
2.00 [1.00, 5.00] |
| Q7(27) |
|
| Mean (SD) |
1.86 (1.18) |
| Median [Min, Max] |
1.00 [1.00, 5.00] |
| Q8(29) |
|
| Mean (SD) |
1.71 (0.825) |
| Median [Min, Max] |
2.00 [1.00, 5.00] |
| Q9(30) |
|
| Mean (SD) |
2.12 (1.03) |
| Median [Min, Max] |
2.00 [1.00, 5.00] |
| GENERO |
|
| FEMININO |
206 (35.7%) |
| MASCULINO |
371 (64.3%) |
Incluir Nomes
das Perguntas
nomes <- read_excel("Dados_Clima.xls", sheet = 3)
colnames(Dados_Clima)[1:4] <- nomes$Nomes
table1(~., data = Dados_Clima, overall = "Total (%)", decimal.mark = ",")
Likert Bar
Plot
Dados_grafico1 <- likert(as.data.frame(Dados_Clima[1:4]))
paleta <- brewer.pal(5, "RdBu")
paleta[3] <- "#DFDFDF"
grafico1 <- likert.bar.plot(Dados_grafico1,
text.size = 4,
centered= FALSE)+
theme(axis.text.y = element_text(size = "12"),
legend.position = "bottom",
axis.title = element_text(size = 12, face = "bold"))+
labs(x = "", y = "Frequência (%)", size = 12)+
ggtitle("Pesquisa de Clima Organizacional")+
scale_fill_manual(values = paleta,
breaks = levels(Dados_Clima$`Orientações que Vc Recebe sobre o seu Trabalho são Claras/Objetivas?`))+
guides(fill = guide_legend(title = "Resposta"))+
theme_minimal()+
theme(panel.grid = element_blank(),
plot.background = element_rect(fill = "white"))
ggplotly(grafico1)
Likert Bar
Plot p/ Grupos
# Gerar Plot Likert p/ Grupos
dados_grafico_grupo <- likert(as.data.frame(Dados_Clima[1:4]),
grouping = Dados_Clima$GENERO)
grafico2 <- likert.bar.plot(dados_grafico_grupo,
text.size = 4,
centered = FALSE)+
theme(axis.text.y = element_text(size ="12"))+
labs(x = "", y = "Frequencia (%)", size =12)+
ggtitle("Pesquisa de Clima Organizacional")+
scale_fill_manual(values = paleta,
breaks = levels(Dados_Clima$`Orientações que Vc Recebe sobre o seu Trabalho são Claras/Objetivas?`))+
guides(fill = guide_legend(title = "Resposta"))+
theme_minimal()+
theme(panel.grid = element_blank(),
plot.background = element_rect(fill = "white"))
ggplotly(grafico2)
Likert Heat
Plot
Dados_grafico2 <- likert(as.data.frame(Dados_Clima[1:4]))
likert.heat.plot(Dados_grafico2,
text.size = 4,
centered= FALSE)

Salvar o
Likert Plot
ggsave("Plot1_likert.png", width = 13, height = 6)
Referências
Bibliográficas
BERGAMINI, CECÍLIA WHITAKER. Motivação nas Organizações. Editora
Atlas. Edição 4ª. São Paulo, 1997.
LIKERT, RENSIS. Novos Padrões De Administração. Editora Pioneira.
Edição 3ª. São Paulo, 1971.
LS0tDQp0aXRsZTogIioqRXNjYWxhIExpa2VydCBubyBSOiB1bSBHdWlhIFByw6F0aWNvKioiDQphdXRob3I6DQotIG5hbWU6IE3DoXJpbyBEaWVnbyBWYWxlbnRlDQotIG5hbWU6IENhcmxvcyBQYWl4w6NvDQpkYXRlOiAiYHIgZm9ybWF0KFN5cy50aW1lKCksICclZCAlQiwgJVknKWAiDQpvdXRwdXQ6DQogIGh0bWxfZG9jdW1lbnQ6IA0KICAgIGNvZGVfZG93bmxvYWQ6IHllcw0KICAgIGhpZ2hsaWdodDogdGV4dG1hdGUNCiAgICBudW1iZXJfc2VjdGlvbnM6IHllcw0KICAgIHRoZW1lOiBjZXJ1bGVhbg0KICAgIHRvYzogeWVzDQogICAgdG9jX2RlcHRoOiA2DQogICAgdG9jX2Zsb2F0Og0KICAgICAgY29sbGFwc2VkOiB5ZXMNCiAgICAgIHNtb290aF9zY3JvbGw6IHllcw0KICAgIGtlZXBfbWQ6IHllcw0KICBwZGZfZG9jdW1lbnQ6DQogICAgdG9jOiB5ZXMNCiAgICB0b2NfZGVwdGg6ICc2Jw0KaW5zdGl0dXRlOg0KYWJzdHJhY3Q6ICJBIEVzY2FsYSBMaWtlcnQgw6kgdW0gdGlwbyBkZSBSZXNwb3N0YSBQc2ljb23DqXRyaWNhIHVzYWRhIGVtIFF1ZXN0aW9uw6FyaW9zIHNlbmRvIGEgbWFpcyB1c2FkYSBlbSBQZXNxdWlzYXMgZGUgT3BuacOjby4gTyBvYmpldGl2byBkZXN0ZSBndWlhIMOpIGFwcmVzZW50YXIgZGUgZm9ybWEgbWV0b2RvbMOzZ2ljYSBjb21vIHJlYWxpemFyIGUgaW50ZXJwcmV0YXIgdW1hIGVzY2FsYSBsaWtlcnQgbmFzIFBlc3F1aXNhcyBkZSBDbGltYSBPcmdhbml6YWNpb25hbCBuYSBsaW5ndWFnZW0gZGUgUHJvZ3JhbWHDp8OjbyBSLiINCi0tLQ0KDQoNCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQ0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBUUlVFKQ0KYGBgDQoNCg0KDQoNCmBgYHs9aHRtbH0NCjxzdHlsZT4NCmJvZHl7dGV4dC1hbGlnbjoganVzdGlmeX0NCjwvc3R5bGU+DQpgYGANCg0KDQo6OjogcHJvZ3Jlc3MNCjo6OiB7LnByb2dyZXNzLWJhciBzdHlsZT0id2lkdGg6IDEwMCU7In0NCjo6Og0KOjo6DQoNCg0KIyAqKkVzY2FsYSBMaWtlcnQqKg0KIyMgKipJbnRyb2R1w6fDo28qKg0KDQpBIGVzY2FsYSBsaWtlcnQgb3UgZXNjYWxhIGRlIGxpa2VydCwgw6kgdW0gdGlwbyBkZSBlc2NhbGEgcHNpY29tw6l0cmljYSB1c2FkYSBoYWJpdHVhbG1lbnRlIGVtIHF1ZXN0aW9uw6FyaW9zLCBzZW5kbyBhNyBtYWlzIHVzYWRhIGVtIHBlc3F1aXNhIGRlIG9wbmnDo28uDQoNCkEgZXNjYWxhIGRlIExpa2VydCDDqSBiaXBvbGFyLCBtZWRpbmRvIG91IHVtYSByZXNwb3N0YSBwb3NpdGl2YSBvdSBuZWdhdGl2YSBhIHVtYSBhZmlybWHDp8Ojby4gw4BzIHZlemVzIHPDo28gdXNhZG9zIHF1YXRybyBpdGVucywgbyBxdWUgZm9yw6dhIG8gc3VqZWl0byBwZXNxdWlzYWRvIGEgdW1hIGVzY29saGEgcG9zaXRpdmEgb3UgbmVnYXRpdmEsIHVtYSB2ZXogcXVlIGEgb3DDp8OjbyBjZW50cmFsICJJbmRpZmVyZW50ZSIgbsOjbyBleGlzdGUNCg0KDQoNCg0KOjo6IHByb2dyZXNzDQo6Ojogey5wcm9ncmVzcy1iYXIgc3R5bGU9IndpZHRoOiAxMDAlOyJ9DQo6OjoNCjo6Og0KDQojIyAqKlJlbnNpcyBMaWtlcnQoMTkwMy0xOTgxKSoqDQoNClJlbnNpcyBMaWtlcnQgcmVjZWJldSBzZXUgYmFjaGFyZWxhZG8gZW0gU29jaW9sb2dpYSBwZWxhIFVuaXZlcnNpZGFkZSBkZSBNaWNoaWdhbiBlbSAxOTI2LiBTZXUgZW50cmFkYSBwcmVjb2NlIG5lc3RhcyDDoXJlYXMgZm9pIGEgYmFzZSBwYXJhIG11aXRvIGRvIHRyYWJhbGhvIGRlIExpa2VydC4gDQoNCk8gY2FtcG8gZGEgc29jaW9sb2dpYSBuYSBkw6ljYWRhIGRlIDE5MjAgZm9pIGFsdGFtZW50ZSBleHBlcmltZW50YWwgZWluY29ycG9yb3UgbXVpdG9zIGFzcGVjdG9zIGRhIHBzaWNvbG9naWEgbW9kZXJuYS4gDQoNCkVtIDE5MzIgcmVjZWJldSBzZXUgUGguRC4gZW0gcHNpY29sb2dpYSBwZWxhIFVuaXZlcnNpZGFkZWRlIENvbHVtYmlhLiBQb3Igc2V1IHRyYWJhbGhvIGRlIHRlc2UsIHByb2R1emlkb3MgbnVtYSBlc2NhbGEgZGUgcGVzcXVpc2EgKEVzY2FsYXMgZGUgTGlrZXJ0KSwgY29tbyB1bSBtZWlvIGRlIG1lZGlyIGF0aXR1ZGVzLCBtb3N0cmFuZG8gcXVlIMOpIGNhcHRhZGEgbWFpcyBpbmZvcm1hw6fDo28gZG8gcXVlIG9zIG3DqXRvZG9zIGNvbmNvcnJlbnRlcw0KDQoNCg0KTElLRVJUIGdhbmhvdSBub3RvcmllZGFkZSBwb3IgdGVyIGRlc2Vudm9sdmlkbyBhIGNoYW1hZGEgKirigJxFc2NhbGEgZGUgQXRpdHVkZXPigJ0qKiDigJMgdW0gcXVlc3Rpb27DoXJpbyBlbSBxdWUgYXMgaGlww7N0ZXNlcyBkZSByZXNwb3N0YSBlcmFtIGRvIHRpcG86IA0KDQotICAgRGlzY29yZG8gb3UgKE7Do28gQ29uY29yZG8pIFRvdGFsbWVudGU7DQotICAgRGlzY29yZG8gb3UgKE7Do28gQ29uY29yZG8pIFBhcmNpYWxtZW50ZTsNCi0gICBJbmRpZmVyZW50ZTsNCi0gICBDb25jb3JkbyBQYXJjaWFsbWVudGU7DQotICAgQ29uY29yZG8gVG90YWxtZW50ZQ0KDQoNCkVtIDE5NjEgbm8gbGl2cm8gTkVXIFBBVFRFUk5TIE9GIE1BTkFHRU1FTlQgKOKAnE5vdm9zIFBhZHLDtWVzIGRlIEdlc3TDo2/igJ0pIG1vc3RyYSBvcyByZXN1bHRhZG9zIGRlIHN1YXMgcGVzcXVpc2FzIGluaWNpYWRhcywgYWluZGEgbmEgZMOpY2FkYSBkZSA1MCwgcXVlIG9idGl2ZXJhbSBncmFuZGUgcmVwZXJjdXNzw6NvIG5hIFRFT1JJQSBDT01QT1JUQU1FTlRBTCBub3MgZXN0dWRvcyBzb2JyZSBMSURFUkFOw4dBLiBPIGVzdHVkbyBkZSBMSUtFUlQgbsOjbyBlbGltaW5vdSBhcyBUZW9yaWFzIHNvYnJlIGEgTElERVJBTsOHQSwgcG9yw6ltLCBhbXBsaW91IG8gY29uY2VpdG8NCg0KDQoNCjo6OiBwcm9ncmVzcw0KOjo6IHsucHJvZ3Jlc3MtYmFyIHN0eWxlPSJ3aWR0aDogMTAwJTsifQ0KOjo6DQo6OjoNCg0KDQojICoqVmlzdWFsaXphw6fDo28gR3LDoWZpY2EqKg0KDQpQYXJhIG1lbnN1cmHDp8OjbyBkbyBzYXRpc2Zhw6fDo28gZW0gcmVsYcOnw6NvIGFvIGNsaW1hIG9yZ2FuaXphY2lvbmFsIGRvcyBmdW5jaW9uw6FyaW9zIGRvIERFVFJBTi1QQSAgZm9pIGltcGxlbWVudGFkYSB1bSBzY3JpcHQgbm8gc29mdHdhcmUgUi1Qcm9qZWN0IHZlcnPDo28gNC4zIGUgdW0gYW1iaWVudGUgZGUgZGVzZW52b2x2aW1lbnRvIGludGVncmFkbyBjaGFtYWRvIFJzdHVkaW8gdmVyc8OjbyAxLjEuNSBjb20gdXNvIGRvcyBwYWNvdGVzOg0KDQoNCg0KIyMgKipDYXJyZWdhbmRvIG9zIFBhY290ZXMqKg0KDQpgYGB7ciBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQ0KIyBBdGl2YXIgb3MgUGFjb3RlcyANCmxpYnJhcnkobGlrZXJ0KQ0KbGlicmFyeShyZWFkeGwpDQpsaWJyYXJ5KGRwbHlyKQ0KbGlicmFyeShwbHlyKQ0KbGlicmFyeShwbG90bHkpDQpsaWJyYXJ5KGdncGxvdDIpDQpsaWJyYXJ5KHRhYmxlMSkNCmxpYnJhcnkoZmxleHRhYmxlKQ0KbGlicmFyeShSQ29sb3JCcmV3ZXIpDQpsaWJyYXJ5KHJzdGF0aXgpDQpgYGANCg0KDQoNCiMjICoqRGVmaW5pciBEaXJldMOzcmlvIGRlIFRyYWJhbGhvKioNCg0KYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCg0Kc2V0d2QoIkM6L1VzZXJzL21hcmlvIERoaWVnby9Eb2N1bWVudHMvUGVzcXVpc2FfQ2xpbWFfTGlrZXJ0L1Blc3F1aXNhLWRlLUNsaW1hLU9yZ2FuaXphY2lvbmFsLW5hLUVzY2FsYS1MaWtlcnQiKQ0KDQpgYGANCg0KDQojIyAqKkJhc2VzIGRlIERhZG9zKioNCg0KYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCg0KRGFkb3NfQ2xpbWEgPC0gcmVhZF9leGNlbCgiRGFkb3NfQ2xpbWEueGxzIikNCkRhZG9zX0NsaW1hWywxOjRdIDwtIGxhcHBseShEYWRvc19DbGltYVssMTo0XSwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFjdG9yLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbHM9MTo1LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVscyA9IGMoIlNlbXByZSIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlF1YXNlIFNlbXByZSIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhcmFtZW50ZSIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk51bmNhIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTsOjbyBUZW5obyBPcG5pw6NvIiksDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXIgPSBUUlVFKQ0KDQpgYGANCg0KDQoNCiMjICoqVGFiZWxhcyBkb3MgSXRlbnMqKg0KDQpgYGB7ciBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQ0KDQpteS5yZW5kZXIuY29udCA8LSBmdW5jdGlvbih4KSB7DQogIHdpdGgoc3RhdHMuYXBwbHkucm91bmRpbmcoc3RhdHMuZGVmYXVsdCh4KSwgZGlnaXRzID0gMiksIA0KICAgICAgIGMoIiIsICJNZWFuIChTRCkiPXNwcmludGYoIiVzICgmcGx1c21uOyAlcykiLCBNRUFOLCBTRCkpKQ0KfQ0KbXkucmVuZGVyLmNhdCA8LSBmdW5jdGlvbih4KSB7DQogIGMoIiIsIHNhcHBseShzdGF0cy5kZWZhdWx0KHgpLCANCiAgICAgICAgICAgICAgIGZ1bmN0aW9uKHkpIHdpdGgoeSwNCiAgc3ByaW50ZigiJWQgKCUwLjBmICUlKSIsIEZSRVEsIFBDVCkpKSkNCn0NCg0KY2FwdGlvbiAgPC0gIlBlc3F1aXNhIGRlIENsaW1hIE9yZ2FuaXphY2lvbmFsIg0KZm9vdG5vdGUgPC0gIkZvbnRlOiBSSC9ERVRSQU4tUEEiDQoNCiMgVGFiZWxhIGRlIEZyZXF1w6puY2lhDQp0YWJsZTEofi4sIA0KICAgICAgIGRhdGEgPSBEYWRvc19DbGltYSwNCiAgICAgICAjY3RhYmxlID0gVFJVRSwNCiAgICAgICBvdmVyYWxsID0gIlRvdGFsICglKSIsDQogICAgICAgI292ZXJhbGwgPSBGLA0KICAgICAgICNkZWNpbWFsLm1hcmsgPSAiLCIsDQogICAgICAgY2FwdGlvbiA9IGNhcHRpb24sIA0KICAgICAgIGZvb3Rub3RlID0gZm9vdG5vdGUsDQogICAgICAgI3RvcGNsYXNzPSJSdGFibGUxLWdyaWQgUnRhYmxlMS1zaGFkZSBSdGFibGUxLXRpbWVzIiwNCiAgICAgICB0b3BjbGFzcyA9ICJSdGFibGUxLXplYnJhIiwNCiAgICAgICAjcmVuZGVyLmNvbnRpbnVvdXM9bXkucmVuZGVyLmNvbnQsDQogICAgICAgI3JlbmRlci5jYXRlZ29yaWNhbD1teS5yZW5kZXIuY2F0DQogICAgICAgI2V4dHJhLmNvbD1saXN0KGBQLXZhbHVlYD1wdmFsdWUpDQopDQpgYGANCg0KDQo6OjogcHJvZ3Jlc3MNCjo6OiB7LnByb2dyZXNzLWJhciBzdHlsZT0id2lkdGg6IDEwMCU7In0NCjo6Og0KOjo6DQoNCg0KIyMgKipJbmNsdWlyIE5vbWVzIGRhcyBQZXJndW50YXMqKg0KDQpgYGB7ciBldmFsPUZBTFNFLCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFLCBpbmNsdWRlPVRSVUV9DQpub21lcyA8LSByZWFkX2V4Y2VsKCJEYWRvc19DbGltYS54bHMiLCBzaGVldCA9IDMpDQpjb2xuYW1lcyhEYWRvc19DbGltYSlbMTo0XSA8LSBub21lcyROb21lcw0KDQp0YWJsZTEofi4sIGRhdGEgPSBEYWRvc19DbGltYSwgb3ZlcmFsbCA9ICJUb3RhbCAoJSkiLCBkZWNpbWFsLm1hcmsgPSAiLCIpDQpgYGANCg0KDQoNCg0KIyMgKipMaWtlcnQgQmFyIFBsb3QqKg0KDQpgYGB7ciBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQ0KDQpEYWRvc19ncmFmaWNvMSA8LSBsaWtlcnQoYXMuZGF0YS5mcmFtZShEYWRvc19DbGltYVsxOjRdKSkNCnBhbGV0YSA8LSBicmV3ZXIucGFsKDUsICJSZEJ1IikNCnBhbGV0YVszXSA8LSAiI0RGREZERiINCg0KZ3JhZmljbzEgPC0gbGlrZXJ0LmJhci5wbG90KERhZG9zX2dyYWZpY28xLCANCiAgICAgICAgICAgICAgICAgICAgICB0ZXh0LnNpemUgPSA0LA0KICAgICAgICAgICAgICAgICAgICAgIGNlbnRlcmVkPSBGQUxTRSkrDQogIHRoZW1lKGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAiMTIiKSwNCiAgICAgICAgbGVnZW5kLnBvc2l0aW9uID0gImJvdHRvbSIsDQogICAgICAgIGF4aXMudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEyLCBmYWNlID0gImJvbGQiKSkrDQogIGxhYnMoeCA9ICIiLCB5ID0gIkZyZXF1w6puY2lhICglKSIsIHNpemUgPSAxMikrDQogIGdndGl0bGUoIlBlc3F1aXNhIGRlIENsaW1hIE9yZ2FuaXphY2lvbmFsIikrDQogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IHBhbGV0YSwNCiAgICAgICAgICAgICAgICAgICAgYnJlYWtzID0gbGV2ZWxzKERhZG9zX0NsaW1hJGBPcmllbnRhw6fDtWVzIHF1ZSBWYyBSZWNlYmUgc29icmUgbyBzZXUgVHJhYmFsaG8gc8OjbyBDbGFyYXMvT2JqZXRpdmFzP2ApKSsNCiAgZ3VpZGVzKGZpbGwgPSBndWlkZV9sZWdlbmQodGl0bGUgPSAiUmVzcG9zdGEiKSkrDQogIHRoZW1lX21pbmltYWwoKSsNCiAgdGhlbWUocGFuZWwuZ3JpZCA9IGVsZW1lbnRfYmxhbmsoKSwNCiAgICAgICAgcGxvdC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAid2hpdGUiKSkNCmdncGxvdGx5KGdyYWZpY28xKQ0KYGBgDQoNCg0KDQoNCg0KOjo6IHByb2dyZXNzDQo6Ojogey5wcm9ncmVzcy1iYXIgc3R5bGU9IndpZHRoOiAxMDAlOyJ9DQo6OjoNCjo6Og0KDQoNCiMjICoqTGlrZXJ0IEJhciBQbG90IHAvIEdydXBvcyoqDQoNCg0KYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCiMgR2VyYXIgUGxvdCBMaWtlcnQgcC8gR3J1cG9zDQpkYWRvc19ncmFmaWNvX2dydXBvIDwtIGxpa2VydChhcy5kYXRhLmZyYW1lKERhZG9zX0NsaW1hWzE6NF0pLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXBpbmcgPSBEYWRvc19DbGltYSRHRU5FUk8pDQoNCg0KZ3JhZmljbzIgPC0gbGlrZXJ0LmJhci5wbG90KGRhZG9zX2dyYWZpY29fZ3J1cG8sIA0KICAgICAgICAgICAgICAgICAgICAgIHRleHQuc2l6ZSA9IDQsDQogICAgICAgICAgICAgICAgICAgICAgY2VudGVyZWQgPSBGQUxTRSkrDQogIHRoZW1lKGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemUgPSIxMiIpKSsNCiAgbGFicyh4ID0gIiIsIHkgPSAiRnJlcXVlbmNpYSAoJSkiLCBzaXplID0xMikrDQogIGdndGl0bGUoIlBlc3F1aXNhIGRlIENsaW1hIE9yZ2FuaXphY2lvbmFsIikrDQogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcyA9IHBhbGV0YSwNCiAgICAgICAgICAgICAgICAgICAgYnJlYWtzID0gbGV2ZWxzKERhZG9zX0NsaW1hJGBPcmllbnRhw6fDtWVzIHF1ZSBWYyBSZWNlYmUgc29icmUgbyBzZXUgVHJhYmFsaG8gc8OjbyBDbGFyYXMvT2JqZXRpdmFzP2ApKSsNCiAgZ3VpZGVzKGZpbGwgPSBndWlkZV9sZWdlbmQodGl0bGUgPSAiUmVzcG9zdGEiKSkrDQogIHRoZW1lX21pbmltYWwoKSsNCiAgdGhlbWUocGFuZWwuZ3JpZCA9IGVsZW1lbnRfYmxhbmsoKSwNCiAgICAgICAgcGxvdC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAid2hpdGUiKSkNCmdncGxvdGx5KGdyYWZpY28yKQ0KYGBgDQoNCg0KOjo6IHByb2dyZXNzDQo6Ojogey5wcm9ncmVzcy1iYXIgc3R5bGU9IndpZHRoOiAxMDAlOyJ9DQo6OjoNCjo6Og0KDQoNCiMjICoqTGlrZXJ0IEhlYXQgUGxvdCoqDQoNCg0KYGBge3IgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCkRhZG9zX2dyYWZpY28yIDwtIGxpa2VydChhcy5kYXRhLmZyYW1lKERhZG9zX0NsaW1hWzE6NF0pKQ0KDQpsaWtlcnQuaGVhdC5wbG90KERhZG9zX2dyYWZpY28yLA0KICAgICAgICAgICAgICAgICB0ZXh0LnNpemUgPSA0LA0KICAgICAgICAgICAgICAgICBjZW50ZXJlZD0gRkFMU0UpDQpgYGANCg0KDQo6OjogcHJvZ3Jlc3MNCjo6OiB7LnByb2dyZXNzLWJhciBzdHlsZT0id2lkdGg6IDEwMCU7In0NCjo6Og0KOjo6DQoNCiMjICoqU2FsdmFyIG8gTGlrZXJ0IFBsb3QqKg0KDQpgYGB7ciBtZXNzYWdlPVRSVUUsIHdhcm5pbmc9VFJVRX0NCmdnc2F2ZSgiUGxvdDFfbGlrZXJ0LnBuZyIsIHdpZHRoID0gMTMsIGhlaWdodCA9IDYpDQoNCmBgYA0KDQoNCg0KIyAqKlJlZmVyw6puY2lhcyBCaWJsaW9ncsOhZmljYXMqKg0KDQoNCkJFUkdBTUlOSSwgQ0VDw41MSUEgV0hJVEFLRVIuIE1vdGl2YcOnw6NvIG5hcyBPcmdhbml6YcOnw7Vlcy4gRWRpdG9yYSBBdGxhcy4gRWRpw6fDo28gNMKqLiBTw6NvIFBhdWxvLCAxOTk3Lg0KDQpMSUtFUlQsIFJFTlNJUy4gTm92b3MgUGFkcsO1ZXMgRGUgQWRtaW5pc3RyYcOnw6NvLiBFZGl0b3JhIFBpb25laXJhLiBFZGnDp8OjbyAzwqouIFPDo28gUGF1bG8sIDE5NzEuDQoNCg0KDQoNCjo6OiBwcm9ncmVzcw0KOjo6IHsucHJvZ3Jlc3MtYmFyIHN0eWxlPSJ3aWR0aDogMTAwJTsifQ0KOjo6DQo6OjoNCg==