Packages
library(dplyr)# -> Deskriptive Statistik Variante 1
library(psych)# -> Deskriptive Statistik Variante 2
library(ggplot2)# -> Diagramme Variante 2
library(exactRankTests)#-> U-Test
Roadmap
- Hypothese
- Voraussetzungen des Mann-Whitney-U-Tests
- Grundlegende Konzepte
- Deskriptive Statistik
- Boxplot
- Ergebnisse des Mann-Whitney-U-Tests
- Berechnung der Effektstärke
- Eine Aussage
Hypothese
H1: Es gibt einen Unterschied in der Entscheidungsbeurteilung zwischen der Bauch und Kopf.
H0: Es gibt keinen Unterschied in der Entscheidungsbeurteilung zwischen der Bauch und Kopf.
Voraussetzungen des Mann-Whitney-U-Tests
Die abhängige Variable ist mindestens ordinalskaliert -> Entscheidungsbeurteilung wurde nur einmal erfragt. Es handelt sich um eine sub. Einschätzung.
Es liegt eine unabhängige Variable vor, mittels der die beiden zu vergleichenden Gruppen gebildet werden. -> Bauch vs Kopf
Bei diesen Ausprägungen eignet sich der U-Test:
- kleine Stichproben
- Ausreisser
- ordinalskalierte Daten
- keine Normalverteilung
Grundlegende Konzepte
Der Mann-Whitney-U-Test für unabhängige Stichproben wird auch “Wilcoxon Rangsummen-Test” (engl. “Wilcoxon rank-sum test”, kurz: WRS) genannt. Er testet, ob die zentralen Tendenzen zweier unabhängiger Stichproben verschieden sind.Der Mann-Whitney-U-Test ist die nichtparametrische Alternative für den t-Test für unabhängige Stichproben, wenn die Voraussetzungen nicht erfüllt sind.
Deskriptive Statistik
Variante 1
#library(dplyr)
uebung6 %>%
group_by(KopfODERBauch) %>% #Gruppierung
summarize(Anzahl = n(), Median = median(Beurteilung)) %>%
mutate_if(is.numeric, round, 2)# Runden nach der zweiten Kommastelle und die Zahl als nummerisch klassifizieren
`summarise()` ungrouping output (override with `.groups` argument)
Variante 2
#library(psych)
describe.by(uebung6$Beurteilung, group = uebung6$KopfODERBauch, mat = TRUE)
describe.by is deprecated. Please use the describeBy function
Es ist zu erkennen, dass sich der Median der beiden Gruppen unterscheidet. Die Gruppe “Kopf” hat einen Median von 4.5 (n = 11) und die Gruppe “Bauch” hat einen Median von 10 (n = 8). Damit beurteilen die Teilnehmer der “Bauch-Gruppe” ihre Entscheidung höher / besser, als die der “Kopf-Gruppe”.
Boxplot
Variante 1
Farben <- c("lightblue3", "pink3")
boxplot(uebung6$Beurteilung ~ uebung6$KopfODERBauch,
col=Farben,
ylab="Entscheidungsbeurteilung" , xlab="- Bauch vs. Kopf -")

Variante 2
#library(ggplot2)
ggplot(uebung6, # Datensatz
aes(x =Beurteilung, # AV
y = KopfODERBauch)) + # UV
geom_boxplot(aes(fill = KopfODERBauch)) + # Aufteilung für Legende und das ein Boxplot erstellt werden soll
theme_classic()+ # Farbschema
labs(y="Entscheidungsbeurteilung", x = "Kopf vs. Bauch")#Labels

Es gibt einen Unterschied in der zentralen Tendenz. Keine Ausreißer.
Hinweis: Die Boxplot werden unterschiedlich berechnet. Weierführende Informationen unter: Statistik mit Jule-> Diagramme -> Boxplots
Ergebnisse des Mann-Whitney-U-Tests
Die Daten werden rangiert und es wird nicht mit dem eigentlichen Beobachtungswert gerechnet, sondern mit dem Rangplatz. Infolgedessen kann es bei doppelter Platz vergabe zu Problem führen. Daher muss zwischen drei Optionen unterschieden werden.
Grundsätzlich ist zwischen asymptotische Signifikanz oder eine exakte Signifikanz zu unterscheiden. In Abhängigkeit von der Stichprobengrösse wird der eine oder andere Wert berichtet:
Keine doppelt vorkommenden Daten
** Ist die Stichprobe hinreichend gross (n1 + n2 > 30), so wird die asymptotische Signifikanz verwendet.**
test <- wilcox.test(uebung6$Beurteilung ~ uebung6$KopfODERBauch, exact = FALSE)
test
Wilcoxon rank sum test with continuity correction
data: uebung6$Beurteilung by uebung6$KopfODERBauch
W = 79.5, p-value = 0.003653
alternative hypothesis: true location shift is not equal to 0
** Ist dies nicht der Fall, so wird die exakte Signifikanz verwendet.**
test <- wilcox.test(uebung6$Beurteilung ~ uebung6$KopfODERBauch)
kann bei Bindungen keinen exakten p-Wert Berechnen
test
Wilcoxon rank sum test with continuity correction
data: uebung6$Beurteilung by uebung6$KopfODERBauch
W = 79.5, p-value = 0.003653
alternative hypothesis: true location shift is not equal to 0
doppelt vorkommende Daten
# library(exactRankTests) -> Mann-Whitney-U-Tests
test <- wilcox.exact(uebung6$Beurteilung ~ uebung6$KopfODERBauch, data=uebung6, conf.int=T, conf.level =0.95, alternative="two.sided")
test
Exact Wilcoxon rank sum test
data: uebung6$Beurteilung by uebung6$KopfODERBauch
W = 79.5, p-value = 0.001786
alternative hypothesis: true mu is not equal to 0
95 percent confidence interval:
1 8
sample estimates:
difference in location
4.5
Die Codeausgaben untersuchen eine ungerichtete Hypothesenpaarung.
Es kommen beobachtete Werte doppelt in der Datenerfassung vor, so dass in der zweiten Variante der Hinweis “Bindungen keinen exakten p-Wert berechnen” erfolgt. Daher ist der “exactRankTests” zu empfehlen.
Der Unterschied zwischen den Gruppen ist signifikant (W = 79.5, p = .001786, n = 19).
Berechnung der Effektstärke
\[r=\left\| \frac{z}{\sqrt{n}} \right\|\]
Zstat<-qnorm(test$p.value/2) #Zwert durch zwei, da eine ungerichtete Hypothese verwendet wird.
sprintf("Z-Wert für den U-Test : %.2f", Zstat) # sprintf gibt die Daten aus. %.2f rundet nach der zweiten Kommastelle.
[1] "Z-Wert für den U-Test : -3.12"
daten <- nrow(uebung6) #Wie viele Einträge hat der Datensatz doppelt vorkommende Daten
daten <- daten - 4 #ohne doppelt vorkommende Daten
sprintf("Anzahl der Daten: %.f", daten)
[1] "Anzahl der Daten: 15"
eff <- abs(Zstat/sqrt(daten)) # Formel in Betrag
sprintf("Effektstärke: %.2f", eff)
[1] "Effektstärke: 0.81"
Zur Beurteilung der Grösse des Effektes dient die Einteilung von Cohen (1992):
\[
\begin{align}
\text{Schwacher Effekt: } 0.10 &< ||r|| < 0.30 \\
\text{Schwacher bis mittlerer Effekt: } 0.30 &= ||r|| \\
\text{Mittlerer Effekt: } 0.30 &< ||r|| < 0.50 \\
\text{Mittlerer bis starker Effekt: }0.50 &= ||r|| \\
\text{Starker Effekt: } 0.50 &< ||r||
\end{align}
\] Damit entspricht eine Effektstärke von 0.81 einem starken Effekt.
Eine Aussage
Bauchentscheidungen (Median = 10,n = 8) weisen einen signifikant höheren / besseren Entscheidungsbeurteilungswert auf als Kopfenscheidungen (Median = 4.5,n = 11) - Mann-Whitney-U-Test (W = 79.5, p = .001786, n = 19). Die Effektstärke nach Cohen (1992) liegt bei r = 81 und entspricht einem starken Effekt. H0 kann verworfen werden.
LS0tDQp0aXRsZTogIk1hbm4tV2hpdG5leS1VLVRlc3QiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojIyBQYWNrYWdlcyANCg0KYGBge3Igd2FybmluZz1GQUxTRX0NCmxpYnJhcnkoZHBseXIpIyAtPiBEZXNrcmlwdGl2ZSBTdGF0aXN0aWsgVmFyaWFudGUgMQ0KbGlicmFyeShwc3ljaCkjIC0+IERlc2tyaXB0aXZlIFN0YXRpc3RpayBWYXJpYW50ZSAyDQpsaWJyYXJ5KGdncGxvdDIpIyAtPiBEaWFncmFtbWUgVmFyaWFudGUgMg0KbGlicmFyeShleGFjdFJhbmtUZXN0cykjLT4gVS1UZXN0DQpgYGANCg0KDQoNCiMjIFJvYWRtYXAgDQoNCjEuIEh5cG90aGVzZQ0KMi4gVm9yYXVzc2V0enVuZ2VuIGRlcyBNYW5uLVdoaXRuZXktVS1UZXN0cw0KMy4gR3J1bmRsZWdlbmRlIEtvbnplcHRlDQo0LiBEZXNrcmlwdGl2ZSBTdGF0aXN0aWsNCjUuIEJveHBsb3QNCjYuIEVyZ2Vibmlzc2UgZGVzIE1hbm4tV2hpdG5leS1VLVRlc3RzDQo3LiBCZXJlY2hudW5nIGRlciBFZmZla3RzdMOkcmtlDQo4LiBFaW5lIEF1c3NhZ2UNCg0KDQoNCiMgSHlwb3RoZXNlDQoNCkgxOiBFcyBnaWJ0IGVpbmVuIFVudGVyc2NoaWVkIGluIGRlciBFbnRzY2hlaWR1bmdzYmV1cnRlaWx1bmcgendpc2NoZW4gZGVyIEJhdWNoIHVuZCBLb3BmLg0KDQpIMDogRXMgZ2lidCBrZWluZW4gVW50ZXJzY2hpZWQgaW4gZGVyIEVudHNjaGVpZHVuZ3NiZXVydGVpbHVuZyB6d2lzY2hlbiBkZXIgQmF1Y2ggdW5kIEtvcGYuDQoNCg0KIyBWb3JhdXNzZXR6dW5nZW4gZGVzIE1hbm4tV2hpdG5leS1VLVRlc3RzDQoNCkRpZSBhYmjDpG5naWdlIFZhcmlhYmxlIGlzdCBtaW5kZXN0ZW5zIG9yZGluYWxza2FsaWVydCAtPiBFbnRzY2hlaWR1bmdzYmV1cnRlaWx1bmcgd3VyZGUgbnVyIGVpbm1hbCBlcmZyYWd0LiBFcyBoYW5kZWx0IHNpY2ggdW0gZWluZSBzdWIuIEVpbnNjaMOkdHp1bmcuDQoNCkVzIGxpZWd0IGVpbmUgdW5hYmjDpG5naWdlIFZhcmlhYmxlIHZvciwgbWl0dGVscyBkZXIgZGllIGJlaWRlbiB6dSB2ZXJnbGVpY2hlbmRlbiBHcnVwcGVuIGdlYmlsZGV0IHdlcmRlbi4gLT4gQmF1Y2ggdnMgS29wZg0KDQpCZWkgZGllc2VuIEF1c3Byw6RndW5nZW4gZWlnbmV0IHNpY2ggZGVyIFUtVGVzdDoNCg0KICAgKyBrbGVpbmUgU3RpY2hwcm9iZW4NCiAgICsgQXVzcmVpc3Nlcg0KICAgKyAgb3JkaW5hbHNrYWxpZXJ0ZSBEYXRlbg0KICAgKyAga2VpbmUgTm9ybWFsdmVydGVpbHVuZw0KDQoNCiMgR3J1bmRsZWdlbmRlIEtvbnplcHRlDQoNCkRlciBNYW5uLVdoaXRuZXktVS1UZXN0IGbDvHIgdW5hYmjDpG5naWdlIFN0aWNocHJvYmVuIHdpcmQgYXVjaCAiV2lsY294b24gUmFuZ3N1bW1lbi1UZXN0IiAoZW5nbC4gIldpbGNveG9uIHJhbmstc3VtIHRlc3QiLCBrdXJ6OiBXUlMpIGdlbmFubnQuIEVyIHRlc3RldCwgb2IgZGllIHplbnRyYWxlbiBUZW5kZW56ZW4gendlaWVyIHVuYWJow6RuZ2lnZXIgU3RpY2hwcm9iZW4gdmVyc2NoaWVkZW4gc2luZC5EZXIgTWFubi1XaGl0bmV5LVUtVGVzdCBpc3QgZGllIG5pY2h0cGFyYW1ldHJpc2NoZSBBbHRlcm5hdGl2ZSBmw7xyIGRlbiB0LVRlc3QgZsO8ciB1bmFiaMOkbmdpZ2UgU3RpY2hwcm9iZW4sIHdlbm4gZGllIFZvcmF1c3NldHp1bmdlbiBuaWNodCBlcmbDvGxsdCBzaW5kLiANCg0KDQoNCiMgRGVza3JpcHRpdmUgU3RhdGlzdGlrDQoNCg0KIyMjIFZhcmlhbnRlIDENCg0KYGBge3J9DQojbGlicmFyeShkcGx5cikNCg0KdWVidW5nNiAlPiUNCmdyb3VwX2J5KEtvcGZPREVSQmF1Y2gpICU+JSAjR3J1cHBpZXJ1bmcgIA0KICBzdW1tYXJpemUoQW56YWhsID0gbigpLCBNZWRpYW4gPSBtZWRpYW4oQmV1cnRlaWx1bmcpKSAlPiUNCiAgbXV0YXRlX2lmKGlzLm51bWVyaWMsIHJvdW5kLCAyKSMgUnVuZGVuIG5hY2ggZGVyIHp3ZWl0ZW4gS29tbWFzdGVsbGUgdW5kIGRpZSBaYWhsIGFscyBudW1tZXJpc2NoIGtsYXNzaWZpemllcmVuDQpgYGANCg0KDQojIyMgVmFyaWFudGUgMg0KYGBge3J9DQoNCiNsaWJyYXJ5KHBzeWNoKSANCg0KZGVzY3JpYmUuYnkodWVidW5nNiRCZXVydGVpbHVuZywgZ3JvdXAgPSB1ZWJ1bmc2JEtvcGZPREVSQmF1Y2gsIG1hdCA9IFRSVUUpDQpgYGANCg0KDQoNCkVzIGlzdCB6dSBlcmtlbm5lbiwgZGFzcyBzaWNoIGRlciBNZWRpYW4gZGVyIGJlaWRlbiBHcnVwcGVuIHVudGVyc2NoZWlkZXQuIERpZSBHcnVwcGUg4oCcS29wZuKAnSBoYXQgZWluZW4gTWVkaWFuIHZvbiA0LjUgKG4gPSAxMSkgdW5kIGRpZSBHcnVwcGUg4oCcQmF1Y2jigJ0gaGF0IGVpbmVuIE1lZGlhbiB2b24gMTAgKG4gPSA4KS4gRGFtaXQgYmV1cnRlaWxlbiBkaWUgVGVpbG5laG1lciBkZXIgIkJhdWNoLUdydXBwZSIgaWhyZSBFbnRzY2hlaWR1bmcgaMO2aGVyIC8gYmVzc2VyLCBhbHMgZGllIGRlciAiS29wZi1HcnVwcGUiLg0KDQoNCg0KDQojIEJveHBsb3QNCg0KIyMjIFZhcmlhbnRlIDEgDQpgYGB7cn0NCkZhcmJlbiA8LSBjKCJsaWdodGJsdWUzIiwgInBpbmszIikNCg0KYm94cGxvdCh1ZWJ1bmc2JEJldXJ0ZWlsdW5nIH4gIHVlYnVuZzYkS29wZk9ERVJCYXVjaCwgDQogICAgY29sPUZhcmJlbiwgDQogICAgeWxhYj0iRW50c2NoZWlkdW5nc2JldXJ0ZWlsdW5nIiAsIHhsYWI9Ii0gQmF1Y2ggdnMuIEtvcGYgLSIpDQoNCmBgYA0KDQojIyMgVmFyaWFudGUgMg0KDQpgYGB7cn0NCiNsaWJyYXJ5KGdncGxvdDIpDQpnZ3Bsb3QodWVidW5nNiwgIyBEYXRlbnNhdHoNCiAgICAgICBhZXMoeCA9QmV1cnRlaWx1bmcsICMgQVYNCiAgICAgICAgICAgeSA9IEtvcGZPREVSQmF1Y2gpKSArICMgVVYNCiAgZ2VvbV9ib3hwbG90KGFlcyhmaWxsID0gS29wZk9ERVJCYXVjaCkpICsgIyBBdWZ0ZWlsdW5nIGbDvHIgTGVnZW5kZSB1bmQgZGFzIGVpbiBCb3hwbG90IGVyc3RlbGx0IHdlcmRlbiBzb2xsDQogIHRoZW1lX2NsYXNzaWMoKSsgIyBGYXJic2NoZW1hDQogIGxhYnMoeT0iRW50c2NoZWlkdW5nc2JldXJ0ZWlsdW5nIiwgeCA9ICJLb3BmIHZzLiBCYXVjaCIpI0xhYmVscw0KYGBgDQpFcyBnaWJ0IGVpbmVuIFVudGVyc2NoaWVkIGluIGRlciB6ZW50cmFsZW4gVGVuZGVuei4gS2VpbmUgQXVzcmVpw59lci4gDQoNCioqSGlud2VpczoqKiBEaWUgQm94cGxvdCB3ZXJkZW4gdW50ZXJzY2hpZWRsaWNoIGJlcmVjaG5ldC4gIFdlaWVyZsO8aHJlbmRlIEluZm9ybWF0aW9uZW4gdW50ZXI6IFN0YXRpc3RpayBtaXQgSnVsZS0+IERpYWdyYW1tZSAtPiBCb3hwbG90cw0KDQojIEVyZ2Vibmlzc2UgZGVzIE1hbm4tV2hpdG5leS1VLVRlc3RzDQoNCkRpZSBEYXRlbiB3ZXJkZW4gcmFuZ2llcnQgdW5kIGVzIHdpcmQgbmljaHQgbWl0IGRlbSBlaWdlbnRsaWNoZW4gQmVvYmFjaHR1bmdzd2VydCBnZXJlY2huZXQsIHNvbmRlcm4gbWl0IGRlbSBSYW5ncGxhdHouIEluZm9sZ2VkZXNzZW4ga2FubiBlcyBiZWkgZG9wcGVsdGVyIFBsYXR6IHZlcmdhYmUgenUgUHJvYmxlbSBmw7xocmVuLiBEYWhlciBtdXNzIHp3aXNjaGVuIGRyZWkgT3B0aW9uZW4gdW50ZXJzY2hpZWRlbiB3ZXJkZW4uICAgDQoNCkdydW5kc8OkdHpsaWNoIGlzdCB6d2lzY2hlbiBhc3ltcHRvdGlzY2hlIFNpZ25pZmlrYW56IG9kZXIgZWluZSBleGFrdGUgU2lnbmlmaWthbnogenUgdW50ZXJzY2hlaWRlbi4gSW4gQWJow6RuZ2lna2VpdCB2b24gZGVyIFN0aWNocHJvYmVuZ3LDtnNzZSB3aXJkIGRlciBlaW5lIG9kZXIgYW5kZXJlIFdlcnQgYmVyaWNodGV0Og0KDQoNCiMjIyAgS2VpbmUgZG9wcGVsdCB2b3Jrb21tZW5kZW4gRGF0ZW4NCg0KKiogSXN0IGRpZSBTdGljaHByb2JlIGhpbnJlaWNoZW5kIGdyb3NzIChuMSArIG4yID4gMzApLCBzbyB3aXJkIGRpZSBhc3ltcHRvdGlzY2hlIFNpZ25pZmlrYW56IHZlcndlbmRldC4qKg0KDQpgYGB7cn0NCnRlc3QgPC0gd2lsY294LnRlc3QodWVidW5nNiRCZXVydGVpbHVuZyB+ICB1ZWJ1bmc2JEtvcGZPREVSQmF1Y2gsIGV4YWN0ID0gRkFMU0UpDQp0ZXN0DQoNCmBgYA0KDQoqKiBJc3QgZGllcyBuaWNodCBkZXIgRmFsbCwgc28gd2lyZCBkaWUgZXhha3RlIFNpZ25pZmlrYW56IHZlcndlbmRldC4qKg0KDQpgYGB7cn0NCnRlc3QgPC0gd2lsY294LnRlc3QodWVidW5nNiRCZXVydGVpbHVuZyB+ICB1ZWJ1bmc2JEtvcGZPREVSQmF1Y2gpDQp0ZXN0DQpgYGANCg0KIyMjICBkb3BwZWx0IHZvcmtvbW1lbmRlIERhdGVuDQoNCmBgYHtyfQ0KIyBsaWJyYXJ5KGV4YWN0UmFua1Rlc3RzKSAtPiBNYW5uLVdoaXRuZXktVS1UZXN0cw0KDQp0ZXN0IDwtIHdpbGNveC5leGFjdCh1ZWJ1bmc2JEJldXJ0ZWlsdW5nIH4gIHVlYnVuZzYkS29wZk9ERVJCYXVjaCwgZGF0YT11ZWJ1bmc2LCBjb25mLmludD1ULCBjb25mLmxldmVsID0wLjk1LCBhbHRlcm5hdGl2ZT0idHdvLnNpZGVkIikNCnRlc3QNCmBgYA0KDQoqKkRpZSBDb2RlYXVzZ2FiZW4gdW50ZXJzdWNoZW4gZWluZSB1bmdlcmljaHRldGUgSHlwb3RoZXNlbnBhYXJ1bmcuKioNCg0KDQpFcyBrb21tZW4gYmVvYmFjaHRldGUgV2VydGUgZG9wcGVsdCBpbiBkZXIgRGF0ZW5lcmZhc3N1bmcgdm9yLCBzbyBkYXNzIGluIGRlciB6d2VpdGVuIFZhcmlhbnRlIGRlciBIaW53ZWlzICJCaW5kdW5nZW4ga2VpbmVuIGV4YWt0ZW4gcC1XZXJ0IGJlcmVjaG5lbiIgZXJmb2xndC4gRGFoZXIgaXN0IGRlciAiZXhhY3RSYW5rVGVzdHMiIHp1IGVtcGZlaGxlbi4NCg0KRGVyIFVudGVyc2NoaWVkIHp3aXNjaGVuIGRlbiBHcnVwcGVuIGlzdCBzaWduaWZpa2FudCAoVyA9IDc5LjUsIHAgPSAuMDAxNzg2LCBuID0gMTkpLg0KDQojIEJlcmVjaG51bmcgZGVyIEVmZmVrdHN0w6Rya2UNCg0KJCRyPVxsZWZ0XHwgXGZyYWN7en17XHNxcnR7bn19IFxyaWdodFx8JCQNCg0KDQpgYGB7cn0NClpzdGF0PC1xbm9ybSh0ZXN0JHAudmFsdWUvMikgI1p3ZXJ0IGR1cmNoIHp3ZWksIGRhIGVpbmUgdW5nZXJpY2h0ZXRlIEh5cG90aGVzZSB2ZXJ3ZW5kZXQgd2lyZC4gDQpzcHJpbnRmKCJaLVdlcnQgZsO8ciBkZW4gVS1UZXN0IDogJS4yZiIsIFpzdGF0KSAjIHNwcmludGYgZ2lidCBkaWUgRGF0ZW4gYXVzLiAlLjJmIHJ1bmRldCBuYWNoIGRlciB6d2VpdGVuIEtvbW1hc3RlbGxlLg0KDQpkYXRlbiA8LSBucm93KHVlYnVuZzYpICNXaWUgdmllbGUgRWludHLDpGdlIGhhdCBkZXIgRGF0ZW5zYXR6IGRvcHBlbHQgdm9ya29tbWVuZGUgRGF0ZW4NCmRhdGVuIDwtIGRhdGVuIC0gNCAjb2huZSBkb3BwZWx0IHZvcmtvbW1lbmRlIERhdGVuDQpzcHJpbnRmKCJBbnphaGwgZGVyIERhdGVuOiAlLmYiLCBkYXRlbikNCg0KZWZmIDwtIGFicyhac3RhdC9zcXJ0KGRhdGVuKSkgIyBGb3JtZWwgaW4gQmV0cmFnDQpzcHJpbnRmKCJFZmZla3RzdMOkcmtlOiAlLjJmIiwgZWZmKQ0KYGBgDQoNClp1ciBCZXVydGVpbHVuZyBkZXIgR3LDtnNzZSBkZXMgRWZmZWt0ZXMgZGllbnQgZGllIEVpbnRlaWx1bmcgdm9uIENvaGVuICgxOTkyKToNCg0KJCQNClxiZWdpbnthbGlnbn0NClx0ZXh0e1NjaHdhY2hlciBFZmZla3Q6IH0gMC4xMCAmPCB8fHJ8fCA8IDAuMzAgICAgICAgICAgICAgXFwNClx0ZXh0e1NjaHdhY2hlciBiaXMgbWl0dGxlcmVyIEVmZmVrdDogfSAwLjMwICY9IHx8cnx8ICAgICAgXFwNClx0ZXh0e01pdHRsZXJlciBFZmZla3Q6IH0gMC4zMCAmPCB8fHJ8fCA8IDAuNTAgICAgICAgICAgICAgXFwNClx0ZXh0e01pdHRsZXJlciBiaXMgc3RhcmtlciBFZmZla3Q6IH0wLjUwICY9IHx8cnx8ICAgICAgICAgXFwNClx0ZXh0e1N0YXJrZXIgRWZmZWt0OiB9IDAuNTAgJjwgfHxyfHwgICAgICAgIA0KXGVuZHthbGlnbn0NCiQkDQpEYW1pdCBlbnRzcHJpY2h0IGVpbmUgRWZmZWt0c3TDpHJrZSB2b24gMC44MSBlaW5lbSBzdGFya2VuIEVmZmVrdC4NCg0KIyBFaW5lIEF1c3NhZ2UNCg0KQmF1Y2hlbnRzY2hlaWR1bmdlbiAoTWVkaWFuID0gMTAsbiA9IDgpIHdlaXNlbiBlaW5lbiBzaWduaWZpa2FudCBow7ZoZXJlbiAvIGJlc3NlcmVuIEVudHNjaGVpZHVuZ3NiZXVydGVpbHVuZ3N3ZXJ0IGF1ZiBhbHMgS29wZmVuc2NoZWlkdW5nZW4gKE1lZGlhbiA9IDQuNSxuID0gMTEpIC0gTWFubi1XaGl0bmV5LVUtVGVzdCAoVyA9IDc5LjUsIHAgPSAuMDAxNzg2LCBuID0gMTkpLiBEaWUgRWZmZWt0c3TDpHJrZSBuYWNoIENvaGVuICgxOTkyKSBsaWVndCBiZWkgciA9IDgxIHVuZCBlbnRzcHJpY2h0IGVpbmVtIHN0YXJrZW4gRWZmZWt0LiBIMCBrYW5uIHZlcndvcmZlbiB3ZXJkZW4uDQo=