Organisatorisches

Der Termin für die Abgabe der Projektarbeit wird im Kalender auf Moodle angezeigt.

  • Gruppengröße: 3 Personen geben zusammen ein Projekt ab. Ohne zu einer Gruppe zu gehören kann für Sie leider keine Projektleistung verbucht werden.
  • Was wird abgegeben? RMarkdown Datei und HTML Datei (Beschreibung der Ergebnisse + R-Code). D.h. bitte knitten Sie ihre .Rmd regelmäßig!
  • Screencast: Für einzelne Projekte sollten Sie einen Screencast anfertigen (wenn dies gefordert ist, dann finden Sie einen entsprechenden Hinweis in der Projektbeschreibung). Ist dies der Fall, so sollten Sie ihren Screencast mit in Github hochladen! Ihr Screencast sollte nicht länger als 5 Minuten dauern und ihre wesentlichen Ergebnisse beinhalten (Grafiken eignen sich meist besonders gut für einen solchen Screencast).
  • Deadline und wo wird abgegeben?: Die Dateien werden auf Github bearbeitet und auch dort abgegeben. Es zählt der letzte Commit vor der Deadline zur Projektabgabe als finale Abgabe.
  • Speichern: Bitte speichern Sie ihre RMarkdown Datei in utf-8 ab (File -> Save with Encoding… -> UTF-8).
  • Pull/Commit/Push auf Github: Sie arbeiten über Github in einem Team zusammen. Bitte committen Sie regelmäßig ihre Änderungen um Merge-Konflikten vorzubeugen!
  • Default-Einstellungen zum Encoding ändern: Tools -> Global Options -> Code -> Saving -> Default Text Encoding -> UTF-8.
  • Default-Einstellung zur Speicherung ändern: Tools > Global Options > General > Workspace –> Da machen Sie bitte den Haken weg für “Restore .RData into workspace at startup” und stellen das Feld “Save workspace to .RData on exit” auf “Never”:

Zusammenarbeit

Sie sollten die Projekte immer im Team bearbeiten. Hierbei steht es ihnen frei, wie Sie die Aufgaben innerhalb der Gruppe aufteilen. Sie sollten in regelmäßigen Besprechungen, Online-Meetings, wie auch Tutoriumsterminen zusammen an einer Lösung der Projektarbeit arbeiten und alle Schritte ihrer Teammitglieder nachvollziehen können. Bei tiefergehenden Fragen ist ihre erste Anlaufstelle ihr Tutor und das Diskussionsforum auf Moodle. Stellen Sie immer konkrete Fragen mit einem kleinen Beispiel und ihrem Fehlercode damit ihnen schnell geholfen werden kann. Wie Sie möglichst gute Frage stellen können Sie hier nachlesen.

Eskalationsmechanismus

Wenn zwischenmenschliche Konflikte innerhalb der Gruppe auftreten, dann versuchen Sie im ersten Schritt diese innerhalb der Gruppe zu klären. Hören Sie aufeinander und auf die Argumente der Gegenseite. Sollten sich die Probleme nicht innerhalb der Gruppe lösen lassen, so sollten Sie die Übungsleiter (Julius Düker und Dennis Steinle) kontaktieren. Diese werden mit ihnen als Gruppe einen Termin vereinbaren und als Mediator wirken. Bitte beschreiben Sie in diesem Gespräch das Problem und die Schritte die Sie unternommen haben um die zwischenmenschlichen Konflikte zu lösen. Falls auch das Gespräch mit dem Übungsleiter nicht zu einer Verbesserung der Situation führt wird der Dozent (Dr. Alexander Rieber) mit einbezogen.

Diskussionsforum auf Moodle

Auf Moodle gibt es ein Diskussionsforum, welches von ihren Fragen lebt. Meist stellen sich noch andere Studierende/Teams die gleichen Fragen wie Sie, deshalb scheuen Sie sich nicht davor Fragen zu stellen. Wir helfen gerne!

Um ihnen möglichst schnell helfen zu können schauen Sie sich bitte unsere Guidelines an wie gute Fragen gestellt werden können (Hier sind die Guidelines zu finden)

Tutorium

Jede Gruppe wurde einem Tutor zugeteilt und es gibt fixe Tutoriumstermine pro Gruppe in jeder Woche. Falls Sie Fragen haben, oder einfach zusammen an dem Projekt arbeiten möchten können Sie dies gern in ihrem Tutorium tun. Hinweis: Sie sollten nicht nur während ihrer Tutoriumstermine an dem Projekt arbeiten, sondern das Projekt konstant voran bringen. Kalkulieren Sie genug Zeit für die Projekte und den Screencast ein!

Ausarbeitung des Projekts

Auf einzelne Fragen eingehen

In der Projektbeschreibung werden einzelne Fragen aufgeworfen, welche Sie beantworten sollten. Hierzu werden Sie Code-Chunks in ihre RMarkdown Datei einbetten. Sie sollten zu jeder Frage eine kurze Antwort formulieren. Diese Antwort sollte mit Ergebnissen aus ihrer Ausarbeitung untermauert werden (Ergebnisse aus R-Chunk). Bitte beantworten Sie die Fragen immer im Fließtext und nicht im R-Chunk als Kommentar. Sie sollen in der RMarkdown Datei nicht beschreiben, was ihr Code macht, sondern sie sollen dessen Output beschreiben. Mit Hilfe dieses Outputs sollten Sie die in der Projektbeschreibung gestellte Frage beantworten können. Bitte antworten Sie immer in ganzen Sätzen und nicht stichpunktartig.

In der HTML-Datei, welche Sie mit dem jeweiligen Projekt abgeben, sollten Sie alle Code-Informationen unterdrücken. Konkret bedeutet dies, dass Sie folgenden Chunk zu Beginn der Projektausarbeitung eingefügt lassen sollten (wurde von uns bereits ein das .Rmd jeder Projektarbeit eingefügt):

knitr::opts_chunk$set(echo = FALSE, message=FALSE, warning = FALSE)

Der Hintergrund hierfür ist, dass Sie später in ihrer Seminar/Bachelorarbeit auch keinen Code in ihren Fließtext einbetten wollen, sondern nur die Ergebnisse die von diesem Code erzeugt wurden. Dies erhöht die Lesbarkeit ihres Textes.

Interpretation der Ergebnisse

In der RMarkdown Datei sollten Sie nicht ihren Code beschreiben und erläutern was dieser macht. Sie sollten die Ergebnisse dieses Codes beschreiben, d.h. die Grafik, Tabelle oder Regressionsergebnisse. Die Fragen in der Projektbeschreibung werden Sie in ihrer Beschreibung und der Interpretation der Ergebnisse leiten.

  • Bei der Beschreibung einer deskriptiven Analyse/Tabelle sollten Sie auf Besonderheiten eingehen
    • Was ist der Median, Mittelwert, Standardabweichung?
    • Warum weichen diese zwischen verschiedenen Gruppen voneinander ab?
    • Können hier schon erste interessante Erkenntnisse gezogen werden?
  • Bei der Beschreibung einer Grafik sollten Sie auf Auffälligkeiten eingehen
    • Sind alle dargestellten Gruppen ähnlich?
    • Gibt es irgendwo einen Knick, oder ist die Skalierung richtig?
  • Bei der Beschreibung von Regressionsanalysen
    • Ist der Koeffizient signifikant?
    • Was sagt uns das Vorzeichen des Koeffizienten?
    • Können wir hier etwas über die Größe des Effekts sagen?

Bitte achten Sie darauf ihre Antwort klar und präzise zu formulieren. Erklären Sie den Sachverhalt nicht mehrfach und achten Sie auf die Rechtschreibung in ihrer Ausarbeitung.

Kommentare in den Code-Chunks zur besseren Lesbarkeit

In den Code-Chunks empfiehlt es sich einzelne Code-Blöcke zu kommentieren. Dadurch wird gewährleistet, dass ihre Teamkollegen nachvollziehen können, was Sie innerhalb dieses Code-Chunks machen wollten!

Fazit: Kommentare erleichtern die Kommunikation und erhöhen das Verständnis

LS0tCnRpdGxlOiAiTGVpdGxpbmllbiB6dXIgUHJvamVrdGFiZ2FiZSIKb3V0cHV0OiAKICBodG1sX2RvY3VtZW50OgogICAgdGhlbWU6IGNvc21vCiAgICBjb2RlX2Rvd25sb2FkOiB0cnVlCiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDogdHJ1ZQotLS0KCiMgT3JnYW5pc2F0b3Jpc2NoZXMKCkRlciBUZXJtaW4gZsO8ciBkaWUgQWJnYWJlIGRlciBQcm9qZWt0YXJiZWl0IHdpcmQgaW0gS2FsZW5kZXIgYXVmIE1vb2RsZSBhbmdlemVpZ3QuCgotICoqR3J1cHBlbmdyw7bDn2U6KiogMyBQZXJzb25lbiBnZWJlbiB6dXNhbW1lbiBlaW4gUHJvamVrdCBhYi4gT2huZSB6dSBlaW5lciBHcnVwcGUgenUgZ2Vow7ZyZW4ga2FubiBmw7xyIFNpZSBsZWlkZXIga2VpbmUgUHJvamVrdGxlaXN0dW5nIHZlcmJ1Y2h0IHdlcmRlbi4KLSAqKldhcyB3aXJkIGFiZ2VnZWJlbj8qKiBSTWFya2Rvd24gRGF0ZWkgKip1bmQqKiBIVE1MIERhdGVpIChCZXNjaHJlaWJ1bmcgZGVyIEVyZ2Vibmlzc2UgKyBSLUNvZGUpLiBELmguIGJpdHRlIGBrbml0dGVuYCBTaWUgaWhyZSAuUm1kIHJlZ2VsbcOkw59pZyEKLSAqKlNjcmVlbmNhc3Q6KiogRsO8ciBlaW56ZWxuZSBQcm9qZWt0ZSBzb2xsdGVuIFNpZSBlaW5lbiBTY3JlZW5jYXN0IGFuZmVydGlnZW4gKHdlbm4gZGllcyBnZWZvcmRlcnQgaXN0LCBkYW5uIGZpbmRlbiBTaWUgZWluZW4gZW50c3ByZWNoZW5kZW4gSGlud2VpcyBpbiBkZXIgUHJvamVrdGJlc2NocmVpYnVuZykuIElzdCBkaWVzIGRlciBGYWxsLCBzbyBzb2xsdGVuIFNpZSBpaHJlbiBTY3JlZW5jYXN0IG1pdCBpbiBHaXRodWIgaG9jaGxhZGVuISBJaHIgU2NyZWVuY2FzdCBzb2xsdGUgbmljaHQgbMOkbmdlciBhbHMgNSBNaW51dGVuIGRhdWVybiB1bmQgaWhyZSB3ZXNlbnRsaWNoZW4gRXJnZWJuaXNzZSBiZWluaGFsdGVuIChHcmFmaWtlbiBlaWduZW4gc2ljaCBtZWlzdCBiZXNvbmRlcnMgZ3V0IGbDvHIgZWluZW4gc29sY2hlbiBTY3JlZW5jYXN0KS4KLSAqKkRlYWRsaW5lIHVuZCB3byB3aXJkIGFiZ2VnZWJlbj86KiogRGllIERhdGVpZW4gd2VyZGVuIGF1ZiBHaXRodWIgYmVhcmJlaXRldCB1bmQgYXVjaCBkb3J0IGFiZ2VnZWJlbi4gRXMgesOkaGx0IGRlciBsZXR6dGUgQ29tbWl0IHZvciBkZXIgRGVhZGxpbmUgenVyIFByb2pla3RhYmdhYmUgYWxzIGZpbmFsZSBBYmdhYmUuCi0gKipTcGVpY2hlcm46KiogQml0dGUgc3BlaWNoZXJuIFNpZSBpaHJlIFJNYXJrZG93biBEYXRlaSBpbiB1dGYtOCBhYiAoRmlsZSAtPiBTYXZlIHdpdGggRW5jb2RpbmcuLi4gLT4gVVRGLTgpLgotICoqUHVsbC9Db21taXQvUHVzaCBhdWYgR2l0aHViOioqIFNpZSBhcmJlaXRlbiDDvGJlciBHaXRodWIgaW4gZWluZW0gVGVhbSB6dXNhbW1lbi4gQml0dGUgY29tbWl0dGVuIFNpZSByZWdlbG3DpMOfaWcgaWhyZSDDhG5kZXJ1bmdlbiB1bSBNZXJnZS1Lb25mbGlrdGVuIHZvcnp1YmV1Z2VuIQotICoqRGVmYXVsdC1FaW5zdGVsbHVuZ2VuIHp1bSBFbmNvZGluZyDDpG5kZXJuKio6IFRvb2xzIC0+IEdsb2JhbCBPcHRpb25zIC0+IENvZGUgLT4gU2F2aW5nIC0+IERlZmF1bHQgVGV4dCBFbmNvZGluZyAtPiBVVEYtOC4KLSAqKkRlZmF1bHQtRWluc3RlbGx1bmcgenVyIFNwZWljaGVydW5nIMOkbmRlcm4qKjogVG9vbHMgPiBHbG9iYWwgT3B0aW9ucyA+IEdlbmVyYWwgPiBXb3Jrc3BhY2UgLS0+IERhIG1hY2hlbiBTaWUgYml0dGUgZGVuIEhha2VuIHdlZyBmw7xyICJSZXN0b3JlIC5SRGF0YSBpbnRvIHdvcmtzcGFjZSBhdCBzdGFydHVwIiB1bmQgc3RlbGxlbiBkYXMgRmVsZCAiU2F2ZSB3b3Jrc3BhY2UgdG8gLlJEYXRhIG9uIGV4aXQiIGF1ZiAiTmV2ZXIiOgoKIVtdKC4vZmlncy9HbG9iYWwtb3B0aW9uc19SU3R1ZGlvLnBuZykKCiMgWnVzYW1tZW5hcmJlaXQKClNpZSBzb2xsdGVuIGRpZSBQcm9qZWt0ZSBpbW1lciBpbSBUZWFtIGJlYXJiZWl0ZW4uIEhpZXJiZWkgc3RlaHQgZXMgaWhuZW4gZnJlaSwgd2llIFNpZSBkaWUgQXVmZ2FiZW4gaW5uZXJoYWxiIGRlciBHcnVwcGUgYXVmdGVpbGVuLiBTaWUgc29sbHRlbiBpbiByZWdlbG3DpMOfaWdlbiBCZXNwcmVjaHVuZ2VuLCBPbmxpbmUtTWVldGluZ3MsIHdpZSBhdWNoIFR1dG9yaXVtc3Rlcm1pbmVuIHp1c2FtbWVuIGFuIGVpbmVyIEzDtnN1bmcgZGVyIFByb2pla3RhcmJlaXQgYXJiZWl0ZW4gdW5kIGFsbGUgU2Nocml0dGUgaWhyZXIgVGVhbW1pdGdsaWVkZXIgbmFjaHZvbGx6aWVoZW4ga8O2bm5lbi4gQmVpIHRpZWZlcmdlaGVuZGVuIEZyYWdlbiBpc3QgaWhyZSBlcnN0ZSBBbmxhdWZzdGVsbGUgaWhyIFR1dG9yIHVuZCBkYXMgX0Rpc2t1c3Npb25zZm9ydW1fIGF1ZiBNb29kbGUuIFN0ZWxsZW4gU2llIGltbWVyIGtvbmtyZXRlIEZyYWdlbiBtaXQgZWluZW0ga2xlaW5lbiBCZWlzcGllbCB1bmQgaWhyZW0gRmVobGVyY29kZSBkYW1pdCBpaG5lbiBzY2huZWxsIGdlaG9sZmVuIHdlcmRlbiBrYW5uLiBXaWUgU2llIG3DtmdsaWNoc3QgZ3V0ZSBGcmFnZSBzdGVsbGVuIGvDtm5uZW4gU2llIFtoaWVyXShodHRwczovL3Byb2pla3RrdXJzLWRhdGEtc2NpZW5jZS11bG0yMzI0Lm5ldGxpZnkuYXBwL3R1dG9yaWFscy9mcmFnZW4taW0tZm9ydW0pIG5hY2hsZXNlbi4KCiMjIEVza2FsYXRpb25zbWVjaGFuaXNtdXMKCldlbm4gendpc2NoZW5tZW5zY2hsaWNoZSBLb25mbGlrdGUgaW5uZXJoYWxiIGRlciBHcnVwcGUgYXVmdHJldGVuLCBkYW5uIHZlcnN1Y2hlbiBTaWUgaW0gZXJzdGVuIFNjaHJpdHQgZGllc2UgaW5uZXJoYWxiIGRlciBHcnVwcGUgenUga2zDpHJlbi4gSMO2cmVuIFNpZSBhdWZlaW5hbmRlciB1bmQgYXVmIGRpZSBBcmd1bWVudGUgZGVyIEdlZ2Vuc2VpdGUuIFNvbGx0ZW4gc2ljaCBkaWUgUHJvYmxlbWUgbmljaHQgaW5uZXJoYWxiIGRlciBHcnVwcGUgbMO2c2VuIGxhc3Nlbiwgc28gc29sbHRlbiBTaWUgZGllIMOcYnVuZ3NsZWl0ZXIgKEp1bGl1cyBEw7xrZXIgdW5kIERlbm5pcyBTdGVpbmxlKSBrb250YWt0aWVyZW4uIERpZXNlIHdlcmRlbiBtaXQgaWhuZW4gYWxzIEdydXBwZSBlaW5lbiBUZXJtaW4gdmVyZWluYmFyZW4gdW5kIGFscyBNZWRpYXRvciB3aXJrZW4uIEJpdHRlIGJlc2NocmVpYmVuIFNpZSBpbiBkaWVzZW0gR2VzcHLDpGNoIGRhcyBQcm9ibGVtIHVuZCBkaWUgU2Nocml0dGUgZGllIFNpZSB1bnRlcm5vbW1lbiBoYWJlbiB1bSBkaWUgendpc2NoZW5tZW5zY2hsaWNoZW4gS29uZmxpa3RlIHp1IGzDtnNlbi4gRmFsbHMgYXVjaCBkYXMgR2VzcHLDpGNoIG1pdCBkZW0gw5xidW5nc2xlaXRlciBuaWNodCB6dSBlaW5lciBWZXJiZXNzZXJ1bmcgZGVyIFNpdHVhdGlvbiBmw7xocnQgd2lyZCBkZXIgRG96ZW50IChEci4gQWxleGFuZGVyIFJpZWJlcikgbWl0IGVpbmJlem9nZW4uCgojIERpc2t1c3Npb25zZm9ydW0gYXVmIE1vb2RsZQoKQXVmIE1vb2RsZSBnaWJ0IGVzIGVpbiBEaXNrdXNzaW9uc2ZvcnVtLCB3ZWxjaGVzIHZvbiBpaHJlbiBGcmFnZW4gbGVidC4KTWVpc3Qgc3RlbGxlbiBzaWNoIG5vY2ggYW5kZXJlIFN0dWRpZXJlbmRlL1RlYW1zIGRpZSBnbGVpY2hlbiBGcmFnZW4gd2llIFNpZSwgZGVzaGFsYiBzY2hldWVuIFNpZSBzaWNoIG5pY2h0IGRhdm9yIEZyYWdlbiB6dSBzdGVsbGVuLiBXaXIgaGVsZmVuIGdlcm5lIQoKVW0gaWhuZW4gbcO2Z2xpY2hzdCBzY2huZWxsIGhlbGZlbiB6dSBrw7ZubmVuIHNjaGF1ZW4gU2llIHNpY2ggYml0dGUgdW5zZXJlIEd1aWRlbGluZXMgYW4gd2llIGd1dGUgRnJhZ2VuIGdlc3RlbGx0IHdlcmRlbiBrw7ZubmVuIChbSGllciBzaW5kIGRpZSBHdWlkZWxpbmVzIHp1IGZpbmRlbl0oaHR0cHM6Ly9wcm9qZWt0a3Vycy1kYXRhLXNjaWVuY2UtdWxtMjMyNC5uZXRsaWZ5LmFwcC90dXRvcmlhbHMvZnJhZ2VuLWltLWZvcnVtKSkKCiMgVHV0b3JpdW0KCkplZGUgR3J1cHBlIHd1cmRlIGVpbmVtIFR1dG9yIHp1Z2V0ZWlsdCB1bmQgZXMgZ2lidCBmaXhlIFR1dG9yaXVtc3Rlcm1pbmUgcHJvIEdydXBwZSBpbiBqZWRlciBXb2NoZS4gRmFsbHMgU2llIEZyYWdlbiBoYWJlbiwgb2RlciBlaW5mYWNoIHp1c2FtbWVuIGFuIGRlbSBQcm9qZWt0IGFyYmVpdGVuIG3DtmNodGVuIGvDtm5uZW4gU2llIGRpZXMgZ2VybiBpbiBpaHJlbSBUdXRvcml1bSB0dW4uCioqSGlud2VpczoqKiBTaWUgc29sbHRlbiBuaWNodCBudXIgd8OkaHJlbmQgaWhyZXIgVHV0b3JpdW1zdGVybWluZSBhbiBkZW0gUHJvamVrdCBhcmJlaXRlbiwgc29uZGVybiBkYXMgUHJvamVrdCBrb25zdGFudCB2b3JhbiBicmluZ2VuLiBLYWxrdWxpZXJlbiBTaWUgZ2VudWcgWmVpdCBmw7xyIGRpZSBQcm9qZWt0ZSB1bmQgZGVuIFNjcmVlbmNhc3QgZWluIQoKIyBBdXNhcmJlaXR1bmcgZGVzIFByb2pla3RzCgojIyBBdWYgZWluemVsbmUgRnJhZ2VuIGVpbmdlaGVuCgpJbiBkZXIgUHJvamVrdGJlc2NocmVpYnVuZyB3ZXJkZW4gZWluemVsbmUgRnJhZ2VuIGF1Zmdld29yZmVuLCB3ZWxjaGUgU2llIGJlYW50d29ydGVuIHNvbGx0ZW4uIEhpZXJ6dSB3ZXJkZW4gU2llIENvZGUtQ2h1bmtzIGluIGlocmUgUk1hcmtkb3duIERhdGVpIGVpbmJldHRlbi4KU2llIHNvbGx0ZW4genUgamVkZXIgRnJhZ2UgZWluZSBrdXJ6ZSBBbnR3b3J0IGZvcm11bGllcmVuLiBEaWVzZSBBbnR3b3J0IHNvbGx0ZSBtaXQgRXJnZWJuaXNzZW4gYXVzIGlocmVyIEF1c2FyYmVpdHVuZyB1bnRlcm1hdWVydCB3ZXJkZW4gKEVyZ2Vibmlzc2UgYXVzIFItQ2h1bmspLgpCaXR0ZSBiZWFudHdvcnRlbiBTaWUgZGllIEZyYWdlbiBpbW1lciBpbSBGbGllw590ZXh0IHVuZCBfbmljaHRfIGltIFItQ2h1bmsgYWxzIEtvbW1lbnRhci4KU2llIHNvbGxlbiBpbiBkZXIgUk1hcmtkb3duIERhdGVpIF9uaWNodF8gYmVzY2hyZWliZW4sIHdhcyBpaHIgQ29kZSBtYWNodCwgKipzb25kZXJuKiogc2llIHNvbGxlbiBkZXNzZW4gT3V0cHV0IGJlc2NocmVpYmVuLiBNaXQgSGlsZmUgZGllc2VzIE91dHB1dHMgc29sbHRlbiBTaWUgZGllIGluIGRlciBQcm9qZWt0YmVzY2hyZWlidW5nIGdlc3RlbGx0ZSBGcmFnZSBiZWFudHdvcnRlbiBrw7ZubmVuLiBCaXR0ZSAqKmFudHdvcnRlbiBTaWUgaW1tZXIgaW4gZ2FuemVuIFPDpHR6ZW4qKiB1bmQgX25pY2h0XyBzdGljaHB1bmt0YXJ0aWcuCgpJbiBkZXIgSFRNTC1EYXRlaSwgd2VsY2hlIFNpZSBtaXQgZGVtIGpld2VpbGlnZW4gUHJvamVrdCBhYmdlYmVuLCBzb2xsdGVuIFNpZSBhbGxlIENvZGUtSW5mb3JtYXRpb25lbiB1bnRlcmRyw7xja2VuLiBLb25rcmV0IGJlZGV1dGV0IGRpZXMsIGRhc3MgU2llIGZvbGdlbmRlbiBDaHVuayB6dSBCZWdpbm4gZGVyIFByb2pla3RhdXNhcmJlaXR1bmcgZWluZ2Vmw7xndCBsYXNzZW4gc29sbHRlbiAod3VyZGUgdm9uIHVucyBiZXJlaXRzIGVpbiBkYXMgLlJtZCBqZWRlciBQcm9qZWt0YXJiZWl0IGVpbmdlZsO8Z3QpOiAKCmBgYHtyLCBldmFsPUZBTFNFfQprbml0cjo6b3B0c19jaHVuayRzZXQoZWNobyA9IEZBTFNFLCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nID0gRkFMU0UpCmBgYAoKRGVyIEhpbnRlcmdydW5kIGhpZXJmw7xyIGlzdCwgZGFzcyBTaWUgc3DDpHRlciBpbiBpaHJlciBTZW1pbmFyL0JhY2hlbG9yYXJiZWl0IGF1Y2gga2VpbmVuIENvZGUgaW4gaWhyZW4gRmxpZcOfdGV4dCBlaW5iZXR0ZW4gd29sbGVuLCBzb25kZXJuIG51ciBkaWUgRXJnZWJuaXNzZSBkaWUgdm9uIGRpZXNlbSBDb2RlIGVyemV1Z3Qgd3VyZGVuLiBEaWVzIGVyaMO2aHQgZGllIExlc2JhcmtlaXQgaWhyZXMgVGV4dGVzLgoKIyMgSW50ZXJwcmV0YXRpb24gZGVyIF9FcmdlYm5pc3NlXwoKSW4gZGVyIFJNYXJrZG93biBEYXRlaSBzb2xsdGVuIFNpZSBuaWNodCBpaHJlbiBDb2RlIGJlc2NocmVpYmVuIHVuZCBlcmzDpHV0ZXJuIHdhcyBkaWVzZXIgbWFjaHQuIFNpZSBzb2xsdGVuIGRpZSBFcmdlYm5pc3NlIGRpZXNlcyBDb2RlcyBiZXNjaHJlaWJlbiwgZC5oLiBkaWUgR3JhZmlrLCBUYWJlbGxlIG9kZXIgUmVncmVzc2lvbnNlcmdlYm5pc3NlLgpEaWUgRnJhZ2VuIGluIGRlciBQcm9qZWt0YmVzY2hyZWlidW5nIHdlcmRlbiBTaWUgaW4gaWhyZXIgQmVzY2hyZWlidW5nIHVuZCBkZXIgSW50ZXJwcmV0YXRpb24gZGVyIEVyZ2Vibmlzc2UgbGVpdGVuLgoKLSBCZWkgZGVyIEJlc2NocmVpYnVuZyBlaW5lciBkZXNrcmlwdGl2ZW4gQW5hbHlzZS9UYWJlbGxlIHNvbGx0ZW4gU2llIGF1ZiBCZXNvbmRlcmhlaXRlbiBlaW5nZWhlbgogIC0gV2FzIGlzdCBkZXIgTWVkaWFuLCBNaXR0ZWx3ZXJ0LCBTdGFuZGFyZGFid2VpY2h1bmc/CiAgLSBXYXJ1bSB3ZWljaGVuIGRpZXNlIHp3aXNjaGVuIHZlcnNjaGllZGVuZW4gR3J1cHBlbiB2b25laW5hbmRlciBhYj8KICAtIEvDtm5uZW4gaGllciBzY2hvbiBlcnN0ZSBpbnRlcmVzc2FudGUgRXJrZW5udG5pc3NlIGdlem9nZW4gd2VyZGVuPwotIEJlaSBkZXIgQmVzY2hyZWlidW5nIGVpbmVyIEdyYWZpayBzb2xsdGVuIFNpZSBhdWYgQXVmZsOkbGxpZ2tlaXRlbiBlaW5nZWhlbgogIC0gU2luZCBhbGxlIGRhcmdlc3RlbGx0ZW4gR3J1cHBlbiDDpGhubGljaD8KICAtIEdpYnQgZXMgaXJnZW5kd28gZWluZW4gS25pY2ssIG9kZXIgaXN0IGRpZSBTa2FsaWVydW5nIHJpY2h0aWc/Ci0gQmVpIGRlciBCZXNjaHJlaWJ1bmcgdm9uIFJlZ3Jlc3Npb25zYW5hbHlzZW4KICAtIElzdCBkZXIgS29lZmZpemllbnQgc2lnbmlmaWthbnQ/CiAgLSBXYXMgc2FndCB1bnMgZGFzIFZvcnplaWNoZW4gZGVzIEtvZWZmaXppZW50ZW4/CiAgLSBLw7ZubmVuIHdpciBoaWVyIGV0d2FzIMO8YmVyIGRpZSBHcsO2w59lIGRlcyBFZmZla3RzIHNhZ2VuPwoKQml0dGUgYWNodGVuIFNpZSBkYXJhdWYgaWhyZSBBbnR3b3J0IGtsYXIgdW5kIHByw6R6aXNlIHp1IGZvcm11bGllcmVuLiBFcmtsw6RyZW4gU2llIGRlbiBTYWNodmVyaGFsdCBuaWNodCBtZWhyZmFjaCB1bmQgYWNodGVuIFNpZSBhdWYgZGllIFJlY2h0c2NocmVpYnVuZyBpbiBpaHJlciBBdXNhcmJlaXR1bmcuCgojIyBLb21tZW50YXJlIGluIGRlbiBDb2RlLUNodW5rcyB6dXIgYmVzc2VyZW4gTGVzYmFya2VpdAoKSW4gZGVuIENvZGUtQ2h1bmtzIGVtcGZpZWhsdCBlcyBzaWNoIGVpbnplbG5lIENvZGUtQmzDtmNrZSB6dSBrb21tZW50aWVyZW4uIERhZHVyY2ggd2lyZCBnZXfDpGhybGVpc3RldCwgZGFzcyBpaHJlIFRlYW1rb2xsZWdlbiBuYWNodm9sbHppZWhlbiBrw7ZubmVuLCB3YXMgU2llIGlubmVyaGFsYiBkaWVzZXMgQ29kZS1DaHVua3MgbWFjaGVuIHdvbGx0ZW4hCgpGYXppdDogS29tbWVudGFyZSBlcmxlaWNodGVybiBkaWUgS29tbXVuaWthdGlvbiB1bmQgZXJow7ZoZW4gZGFzIFZlcnN0w6RuZG5pcwo=