From c5b7fdb5f1c5fc44139f931c64f643543900f7b2 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Tue, 8 Mar 2022 07:58:13 +0100 Subject: [PATCH] Jenkins published newest html+pdf version --- .../P02_Funktionen_Datentyp_enum/README.html | 75 +++++++------- .../README.md.txt | 94 +++++++++--------- build/html/index.html | 2 +- build/html/searchindex.js | 2 +- build/latex/main.pdf | Bin 1833773 -> 1833944 bytes 5 files changed, 87 insertions(+), 86 deletions(-) diff --git a/build/html/P02_Funktionen_Datentyp_enum/README.html b/build/html/P02_Funktionen_Datentyp_enum/README.html index 43e8d0e..aea21aa 100644 --- a/build/html/P02_Funktionen_Datentyp_enum/README.html +++ b/build/html/P02_Funktionen_Datentyp_enum/README.html @@ -46,11 +46,11 @@

1. Übersicht

In diesem Praktikum sind zwei Themen im Fokus: Funktionen und der Datentyp enum.

-

Funktionen sind der wesentlichste Bestandteil der C Programmierung, welcher eine strukturierte Programmierung ermöglicht:

+

Funktionen sind der wesentlichste Bestandteil der C Programmierung welcher eine strukturierte Programmierung ermöglicht:

#include <stdio.h>
@@ -60,7 +60,7 @@ Beispiel einer Additions-Funktion:

int main(void) { int aa = 1, bb = 2, cc; - printf("%aa + %bb = %cc", aa, bb, add(aa, bb);); + printf("%d + %d = %d", aa, bb, add(aa, bb);); return 0; } @@ -75,8 +75,8 @@ Beispiel einer Additions-Funktion:

enum Ampeln = {rot =1, gelb, gruen};
 
 int main(void) {
-   Ampeln ampel1;
-   if (ampel1 == rot) {...}
+   enum Ampeln ampel1;
+   if (ampel1 == rot) {...} 
  return 0;
 }
 
@@ -87,7 +87,7 @@ Beispiel einer Additions-Funktion:

2. Lernziele

In diesem Praktikum lernen Sie Funktionen zu definieren und aufzurufen, sowie enum anzuwenden.

    -
  • Sie können ein Programm schreiben, welches aus mehreren Funktionen besteht.

  • +
  • Sie können ein Programm schreiben welches aus mehreren Funktionen besteht.

  • Sie können Funktionen deklarieren, definieren und aufrufen.

  • Sie können enum Typen definieren und deren Werte bestimmen und abfragen.

@@ -101,7 +101,7 @@ Beispiel einer Additions-Funktion:

(Copyright Bild: www.planet-wissen.de)

3.1 Aufgabe 1 Tage pro Monat

-

In der ersten Aufgabe berechnen Sie die Anzahl Tage pro Monat einer beliebigen Kombination Monat / Jahr. +

In der ersten Aufgabe berechnen Sie die Tag pro Monat einer beliebigen Kombination Monat / Jahr. Erweitern Sie dazu das Programm um folgende Aspekte:

  • Bereichsprüfung von Jahr und Monat

  • @@ -110,41 +110,41 @@ Erweitern Sie dazu das Programm um folgende Aspekte:

Vorgaben:

    -
  • Die Funktion istSchaltjahr nimmt ein Integer (jahr) entgegen und gibt 1 im Falle eines Schaltjahres und 0 im anderen Fall zurück

  • -
  • Die Funktion tageProMonat nimmt zwei Integer (monat und jahr) entgegen und gibt die Anzahl Tage als Integer zurück

  • +
  • Die Funktion istSchaltjahr nimmt einen Integer (jahr) entgegen und gibt 1 im Falle eiens Schltjahres und 0 im andreren Fall zurück

  • +
  • Die Funktion tageProMonat nimmt zwei integer (monat und jahr) entgegeben und gibt die Anzahl Tage als Integer zurück

  • Die Jahreszahl, welche den Funktionen übergeben wird, muss überprüft werden und grösser gleich 1599 und kleiner als 10000 sein

  • -
  • Der übergebene Monat muss grösser als 0 und kleine als 13 sein.

  • +
  • Der übergebene Monat muss grösser als 0 und kleiner als 13 sein.

Die Regeln für die Schaltjahrberechnung:

  • Schaltjahre sind alle Jahre, die durch 4 teilbar sind.

  • -
  • Eine Ausnahme bilden die Jahrhunderte (1600, 1700…). Diese sind keine Schaltjahre.

  • +
  • Eine Ausnahme bilden die Jahrhunderte (1600, 1700…). Diese sind keine Schltjahre.

  • zu den 100er gibt es ebenfalls Ausnahmen: Diese sind immer Schaltjahre, wenn sie durch 400 teilbar sind … also zum Beispiel 1600 ist eines, nicht jedoch 1700. Weiterführende Details finden Sie unter https://de.wikipedia.org/wiki/Gregorianischer_Kalender

Gegeben ist die main Funktion des Programms. Ergänzen Sie die enum Definition und die fehlenden Funktionen:

    -
  • gibIntWert: Die Funktion soll einen Int Wert zurückgeben. Der Bereich, wie auch Fehleingaben sollen berücksichtigt werden. (atoi und fgets sind hier hilfreich)

  • -
  • istSchaltjahr: Die Funktion gibt 1 im Falle eines Schaltjahrs und 0 im anderen Falle zurück.

  • -
  • tageProMonat: Die Funktion gibt den die Tage des Monats für das definierte Jahr zurück. Verwenden Sie die Switch-Anweisung, sowie den enum Datentypen

  • +
  • gibIntWert: Die Funktion soll einen Int Wert zurückgeben. Der Bereich, wie auch Fehleingaben sollen sollen berücksichtigt werden. (atoi unfd fgets sind hier hilfreich)

  • +
  • istSchaltjahr: Die Funktion gibt 1 im Falle eines Schltjahr und o im anderen Falle zurück.

  • +
  • tageProMonat: Die Funktion gibt den die Tage des Monats für das definierte Jahr zurück. Verwenden Sie die Switchanweisung , sowie den enum Datentypen

int main (int argc, char *argv[]) {
-
+    
     int monat, jahr;
-
+     
     //  Monat einlesen und Bereich ueberpruefen
     monat = gibIntWert("Monat", 1, 12);
     jahr  = gibIntWert("Jahr", 1600, 9999);
-
+	
     //  Ausgabe zum Test
-    printf("Monat: %d, Jahr: %d \n", monat, jahr);
-
+    printf("Monat: %d, Jahr: %d \n", monat, jahr);    
+    
     //  Ausgabe zum Test (hier mit dem ternaeren Operator "?:")
     printf("%d ist %s Schaltjahr\n", jahr, istSchaltjahr(jahr) ? "ein" : "kein");
 
 	// Ausgabe
 	printf("Der Monat %02d-%d hat %d Tage.\n", monat, jahr, tageProMonat(jahr, monat));
-
+   
     return 0;
 }
 
@@ -152,10 +152,11 @@ Erweitern Sie dazu das Programm um folgende Aspekte:

Tipp: Angenommen Sie verwenden den enum month_t { JAN=1, FEB, MAR, APR, MAI, JUN, JUL, AUG, SEP, OKT, NOV, DEZ }; Dann können Sie im Programm direkt die Konstanten verwenden:

if (m == 2) ...		// schlecht lesbar
-if (monat == 2) ...	// besserer Variablenname
+if (monat == 2) ...	// besserer Variablenname 
 if (monat == FEB) ...	// am besten lesbar
 
+

Als Abnahme müssen die Tests unverändert ohne Fehler ausgeführt werden (make test)


@@ -165,10 +166,10 @@ Prüfen Sie die Umsetzung beider Teilaufgaben mittels make test.

3.2.1 Teilaufgabe Argumente Parsen und auf Korrektheit prüfen

Das Argument stellt ein gültiges Datum unseres Gregorianischen Kalenders dar (d.h. ein Datum ab Donnerstag, den 15. Oktober 1582, mit der Gregorianischen Schaltjahr Regel). -Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist, soll das Programm einem Hilfetext auf stderr ausgeben und mit EXIT_FAILURE Exit Code terminieren. Wenn ein gültiges Datum erkannt wurde, terminiert das Programm mit Exit Code EXIT_SUCCESS.

+Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist, soll das Programm einem Hilfetext auf stderr ausgeben und mit EXIT_FAILURE Exit Code terminieren. Wenn ein gültiges Datum erkannt wurde terminiert das Programm mit Exit Code EXIT_SUCCESS.

3.2.1.1 Argument Format
-

Das Format des Kommando Zeilen Arguments soll yyyy-mm-dd sein, wobei yyyy für das vier-stellige Jahr, mm für einen 1-2-stelligen Monat (1…12) und dd für einen Tag des Monats, beginnend mit 01. Z.B. 2020-02-29.

+

Das Format des Kommando Zeilen Arguments soll yyyy-mm-dd sein, wobei yyyy für das vier-stellige Jahr, mm für einen 1-2-stelligen Monat (1…12) und dd für einen Tag des Monats, begin-nend mit 01. Z.B. 2020-02-29.

3.2.1.2 Korrektes Datum
@@ -187,12 +188,12 @@ Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist
3.2.1.3 Vorgaben an die Umsetzung
    -
  1. Definieren Sie einen enum Typen mit (typedef) Namen month_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Monate sind, nämlich Jan, Feb, … Dec und stellen Sie sicher, dass die Abkürzungen für die uns geläufigen Monatsnummer stehen.

  2. +
  3. Definieren Sie einen enum Typen mit (typedef) Namen month_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Monate sind, nämlich Jan, Feb, … Dec und stellen Sie sicher dass die Abkürzungen für die uns geläufigen Monatsnummer stehen.

  4. Definierend Sie einen struct Typen mit (typedef) Namen date_t und den int Elementen year, month, day. Lesen Sie das Argument (falls vorhanden) via sscanf und dem Formatstring “%d-%d-%d” in die drei Elemente einer Date Variable. Siehe dazu die Hinweise im Anhang.

  5. Für die Berechnung der Monatslänge implementieren Sie die Hilfsfunktion is_leap_year(date_t date) (nach obigen Vorgaben). Der Return Wert 0 bedeutet «Kein Schaltjahr», 1 bedeutet «Schaltjahr».

  6. -
  7. Implementieren Sie die Funktion int get_month_length(date_t date). Diese soll für den Monat des Datums die Monatslänge (was dem letzten Tag des Monats entspricht) ausgeben – geben Sie 0 für ungültige Monatswerte zurück.

  8. +
  9. Implementieren Sie die Funktion int get_month_length(date_t date). Diese soll für den Monat des Datums die Monatslänge (was dem letzten Tag des Monats ent-spricht) ausgeben – geben Sie 0 für ungültige Monatswerte zurück.

  10. Schliesslich implementieren Sie die Funktion int is_gregorian_date(date_t date) welche prüft, ob ein gegebenes Datum im Bereich 15. Oktober 1582 und dem Jahr 9999 ist (0 = nein, 1 = ja).

  11. -
  12. Implementieren Sie eine Funktion int is_valid_date(date_t date), welche obige Bedingungen für ein gültiges Datum umsetzt. Der Return Wert 0 bedeutet «Kein gültiges Datum», 1 bedeutet «Gültiges Datum». Benutzen Sie für die Prüfung des Datums die month_t Werte wo immer möglich und sinnvoll. Verwenden Sie die oben implementierten Hilfsfunktionen.

  13. +
  14. Implementieren Sie eine Funktion int is_valid_date(date_t date), welche obige Bedingungen für ein gültiges Datum umsetzt. Der Return Wert 0 bedeutet «Kein gültiges Datum», 1 bedeutet «Gültiges Datum». Benutzen Sie für die Prüfung des Datums die month_t Werte wo immer möglich und sinnvoll. Verwenden Sie die oben implemen-tierten Hilfsfunktionen.

@@ -202,7 +203,7 @@ Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist

3.2.2 Teilaufgabe Wochentag Berechnung

-

Schreiben Sie eine Funktion, welche zu einem Datum den Wochentag berechnet. +

Schreiben Sie eine Funktion welche zu einem Datum den Wochentag berechnet. Die Formel wird Georg Glaeser zugeschrieben, möglicherweise angelehnt an eine Formel von Carl Friedrich Gauss.

../_images/Wochentagsberechnung.jpg @@ -212,17 +213,17 @@ Die Formel wird Georg Glaeser zugeschrieben, möglicherweise angelehnt an eine F
weekday = ((day + (13 * m - 1) / 5 + y + y / 4 + c / 4 - 2 * c) % 7 + 7) % 7
 alle Zahlen sind int Werte und alles basiert auf int-Arithmetik
 m = 1 + (month + 9) % 12
-a = year - 1 (für month < Mar), ansonsten year
+a = year - 1 (für month < Mar), ansonsten year 
 y = a % 100
 c = a / 100
 
-

Erweitern sie das Programm so, dass vor dem erfolgreichen Terminieren des Programms folgende Zeile (inklusive Zeilenumbruch) ausgegeben wird: yyyy-mm-dd is a Ddd, wobei yyyy für das Jahr, mm für die Nummer des Monats (01…12) und dd für den Tag im Monat (01…). Z.B. 2020-02-29 is a Sat. +

Erweitern sie das Programm so, dass vor dem erfolgreichen Terminieren des Programms fol-gende Zeile (inklusive Zeilenumbruch) ausgegeben wird: yyyy-mm-dd is a Ddd, wobei yyyy für das Jahr, mm für die Nummer des Monats (01…12) und dd für den Tag im Monat (01…). Z.B. 2020-02-29 is a Sat. Vorgaben an die Umsetzung

    -
  1. Definieren Sie einen enum Typen mit (typedef) Namen weekday_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Tage sind, nämlich Sun, Mon, … Sat und stellen Sie sicher, dass die Abkürzungen für die Werte 0…6 stehen.

  2. -
  3. Schreiben Sie eine Funktion weekday_t calculate_weekday(date_t date) nach der Beschreibung der obigen Formel. Das date Argument ist als gültig angenommen, d.h. es ist ein Programmier-Fehler, wenn das Programm diese Funktion mit einem ungültigen Datum aufruft. Machen Sie dafür als erste Codezeile in der Funktion eine Zu-sicherung (assert(is_valid_date(date));)

  4. -
  5. Schreiben Sie eine Funktion void print_weekday(weekday_t day), welche für jeden gülteigen Tag eine Zeile auf stdout schreibt mit den Englischen 3-Zeichen Ab-kürzungen für den Wochentag, z.B. Sonntag: Sun, Montag: Mon, etc. Wenn ein ungültiger Wert für day erkannt wird, soll assert(!“day is out-of-range”); aufgerufen werden. +

  6. Definieren Sie einen enum Typen mit (typedef) Namen weekday_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Tage sind, nämlich Sun, Mon, … Sat und stel-len Sie sicher dass die Abkürzungen für die Werte 0…6 stehen.

  7. +
  8. Schreiben Sie eine Funktion weekday_t calculate_weekday(date_t date) nach der Beschreibung der obigen Formel. Das date Argument ist als gültig angenom-men, d.h. es ist ein Programmier-Fehler, wenn das Programm diese Funktion mit einem ungültigen Datum aufruft. Machen Sie dafür als erste Codezeile in der Funktion eine Zu-sicherung (assert(is_valid_date(date));)

  9. +
  10. Schreiben Sie eine Funktion void print_weekday(weekday_t day), welche für jeden gülteigen Tag eine Zeile auf stdout schreibt mit den Englischen 3-Zeichen Ab-kürzungen für den Wochentag, z.B. Sonntag: Sun, Montag: Mon, etc. Wenn ein ungülti-ger Wert für day erkannt wird, soll assert(!“day is out-of-range”); aufgeru-fen werden. Hinweise • Für interessierte, siehe: https://de.wikipedia.org/wiki/Wochentagsberechnung

@@ -267,8 +268,8 @@ Hinweise

5. Anhang

-
-

5.1 Sprachelemente

+
+

5.1 Sprach Element

  ...
 }	argc: Anzahl Einträge in argv.
 argv: Array von Command Line Argumenten.
@@ -286,7 +287,7 @@ int res = sscanf(argv[1]
 if (res != 3) {
     // Fehler Behandlung...
     // ...
-}
+}	
 
@@ -349,7 +350,7 @@ Schreibt formatierten Text auf den stderr Stream.

  • 4. Bewertung
  • 5. Anhang
  • diff --git a/build/html/_sources/P02_Funktionen_Datentyp_enum/README.md.txt b/build/html/_sources/P02_Funktionen_Datentyp_enum/README.md.txt index fa1cd1a..5e1b090 100644 --- a/build/html/_sources/P02_Funktionen_Datentyp_enum/README.md.txt +++ b/build/html/_sources/P02_Funktionen_Datentyp_enum/README.md.txt @@ -9,12 +9,12 @@ ___ ___ ## 1. Übersicht In diesem Praktikum sind zwei Themen im Fokus: Funktionen und der Datentyp enum. - - Funktionen sind der wesentlichste Bestandteil der C Programmierung, welcher eine strukturierte Programmierung ermöglicht: - * Eine Funktion ein Teil eines C Codes, der eine spezielle Aufgabe ausführt. Sie kann aus dem Hauptprogramm, oder aus anderen Funktionen, aufgerufen werden. + + Funktionen sind der wesentlichste Bestandteil der C Programmierung welcher eine strukturierte Programmierung ermöglicht: + * Eine Funktion ist ein Teil eines C Codes, der eine spezielle Aufgabe ausführt. Sie kann aus dem Hauptprogramm, oder aus anderen Funktionen, aufgerufen werden. * Jede Funktion besitzt einen eindeutigen Namen, eine eindeutige Signatur (Typen und Reihenfolge der Parameter) und einen Rückgabewert (int falls nichts angegeben wird). - * Eine Funktion kann Werte aus dem aufrufenden Kontext übernehmen und bei Bedarf einen Wert an den aufrufenden Kontext zurückliefern. -Beispiel einer Additions-Funktion: + * Eine Funktion kann Werte aus dem aufrufendem Kontext übernehmen und bei Bedarf einen Wert an den aufrufenden Kontext zurückliefern. +Beispiel einer Additions-Funktion: ``` #include @@ -23,7 +23,7 @@ int add(int a, int b); int main(void) { int aa = 1, bb = 2, cc; - printf("%aa + %bb = %cc", aa, bb, add(aa, bb);); + printf("%d + %d = %d", aa, bb, add(aa, bb);); return 0; } @@ -32,15 +32,15 @@ int add(int a, int b) { return a + b; } ``` -Der Daten typt enum wird verwendet um die Lesbarkeit von Programmen zu erhöhen: +Der Daten typt enum wird verwendet um die Lesbarkeit von Programmen zu erhöhen: -Beispiel eines enum: +Beispiel eines enum: ``` enum Ampeln = {rot =1, gelb, gruen}; int main(void) { - Ampeln ampel1; - if (ampel1 == rot) {...} + enum Ampeln ampel1; + if (ampel1 == rot) {...} return 0; } ``` @@ -49,7 +49,7 @@ ___ ## 2. Lernziele In diesem Praktikum lernen Sie Funktionen zu definieren und aufzurufen, sowie enum anzuwenden. - * Sie können ein Programm schreiben, welches aus mehreren Funktionen besteht. + * Sie können ein Programm schreiben welches aus mehreren Funktionen besteht. * Sie können Funktionen deklarieren, definieren und aufrufen. * Sie können enum Typen definieren und deren Werte bestimmen und abfragen. @@ -66,47 +66,47 @@ ___ (Copyright Bild: www.planet-wissen.de) ### 3.1 Aufgabe 1 Tage pro Monat -In der ersten Aufgabe berechnen Sie die Anzahl Tage pro Monat einer beliebigen Kombination Monat / Jahr. -Erweitern Sie dazu das Programm um folgende Aspekte: -* Bereichsprüfung von Jahr und Monat +In der ersten Aufgabe berechnen Sie die Tag pro Monat einer beliebigen Kombination Monat / Jahr. +Erweitern Sie dazu das Programm um folgende Aspekte: +* Bereichsprüfung von Jahr und Monat * Funktion istSchaltjahr, welche berechnet, ob das Jahr eine Schaljahr ist * Funktion tageProMonat, welche die Anzahl Tage des gegebenen Monats und Jahres berechnet. -Vorgaben: -* Die Funktion istSchaltjahr nimmt ein Integer (jahr) entgegen und gibt 1 im Falle eines Schaltjahres und 0 im anderen Fall zurück -* Die Funktion tageProMonat nimmt zwei Integer (monat und jahr) entgegen und gibt die Anzahl Tage als Integer zurück +Vorgaben: +* Die Funktion istSchaltjahr nimmt einen Integer (jahr) entgegen und gibt 1 im Falle eiens Schltjahres und 0 im andreren Fall zurück +* Die Funktion tageProMonat nimmt zwei integer (monat und jahr) entgegeben und gibt die Anzahl Tage als Integer zurück * Die Jahreszahl, welche den Funktionen übergeben wird, muss überprüft werden und grösser gleich 1599 und kleiner als 10000 sein -* Der übergebene Monat muss grösser als 0 und kleine als 13 sein. +* Der übergebene Monat muss grösser als 0 und kleiner als 13 sein. -Die Regeln für die Schaltjahrberechnung: -* Schaltjahre sind alle Jahre, die durch 4 teilbar sind. -* Eine Ausnahme bilden die Jahrhunderte (1600, 1700…). Diese sind keine Schaltjahre. +Die Regeln für die Schaltjahrberechnung: +* Schaltjahre sind alle Jahre, die durch 4 teilbar sind. +* Eine Ausnahme bilden die Jahrhunderte (1600, 1700…). Diese sind keine Schltjahre. * zu den 100er gibt es ebenfalls Ausnahmen: Diese sind immer Schaltjahre, wenn sie durch 400 teilbar sind -... also zum Beispiel 1600 ist eines, nicht jedoch 1700. Weiterführende Details finden Sie unter https://de.wikipedia.org/wiki/Gregorianischer_Kalender +... also zum Beispiel 1600 ist eines, nicht jedoch 1700. Weiterführende Details finden Sie unter https://de.wikipedia.org/wiki/Gregorianischer_Kalender Gegeben ist die main Funktion des Programms. Ergänzen Sie die enum Definition und die fehlenden Funktionen: -* gibIntWert: Die Funktion soll einen Int Wert zurückgeben. Der Bereich, wie auch Fehleingaben sollen berücksichtigt werden. (atoi und fgets sind hier hilfreich) -* istSchaltjahr: Die Funktion gibt 1 im Falle eines Schaltjahrs und 0 im anderen Falle zurück. -* tageProMonat: Die Funktion gibt den die Tage des Monats für das definierte Jahr zurück. Verwenden Sie die Switch-Anweisung, sowie den enum Datentypen +* gibIntWert: Die Funktion soll einen Int Wert zurückgeben. Der Bereich, wie auch Fehleingaben sollen sollen berücksichtigt werden. (atoi unfd fgets sind hier hilfreich) +* istSchaltjahr: Die Funktion gibt 1 im Falle eines Schltjahr und o im anderen Falle zurück. +* tageProMonat: Die Funktion gibt den die Tage des Monats für das definierte Jahr zurück. Verwenden Sie die Switchanweisung , sowie den enum Datentypen ``` int main (int argc, char *argv[]) { - + int monat, jahr; - + // Monat einlesen und Bereich ueberpruefen monat = gibIntWert("Monat", 1, 12); jahr = gibIntWert("Jahr", 1600, 9999); - + // Ausgabe zum Test - printf("Monat: %d, Jahr: %d \n", monat, jahr); - + printf("Monat: %d, Jahr: %d \n", monat, jahr); + // Ausgabe zum Test (hier mit dem ternaeren Operator "?:") printf("%d ist %s Schaltjahr\n", jahr, istSchaltjahr(jahr) ? "ein" : "kein"); // Ausgabe printf("Der Monat %02d-%d hat %d Tage.\n", monat, jahr, tageProMonat(jahr, monat)); - + return 0; } ``` @@ -115,21 +115,21 @@ Tipp: Angenommen Sie verwenden den enum month_t { JAN=1, FEB, MAR, APR, MAI, JUN Dann können Sie im Programm direkt die Konstanten verwenden: ``` if (m == 2) ... // schlecht lesbar -if (monat == 2) ... // besserer Variablenname +if (monat == 2) ... // besserer Variablenname if (monat == FEB) ... // am besten lesbar ``` - +Als Abnahme müssen die Tests unverändert ohne Fehler ausgeführt werden (`make test`) ___ ### 3.2 Aufgabe 2 Bestimmen des Wochentags Erweitern Sie das vorgegebene zweite Programm Gerüst an den bezeichneten Stellen so, dass das Programm von der Kommando Zeile ein Argument entgegennimmt, es auf Gültigkeit überprüft und schliesslich den Wochentag für das gegebene Datum berechnet und ausgibt. Prüfen Sie die Umsetzung beider Teilaufgaben mittels make test. #### 3.2.1 Teilaufgabe Argumente Parsen und auf Korrektheit prüfen Das Argument stellt ein gültiges Datum unseres Gregorianischen Kalenders dar (d.h. ein Datum ab Donnerstag, den 15. Oktober 1582, mit der Gregorianischen Schaltjahr Regel). -Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist, soll das Programm einem Hilfetext auf stderr ausgeben und mit EXIT_FAILURE Exit Code terminieren. Wenn ein gültiges Datum erkannt wurde, terminiert das Programm mit Exit Code EXIT_SUCCESS. +Wenn kein Argument gegeben ist oder wenn das eingegebene Datum nicht gültig ist, soll das Programm einem Hilfetext auf stderr ausgeben und mit EXIT_FAILURE Exit Code terminieren. Wenn ein gültiges Datum erkannt wurde terminiert das Programm mit Exit Code EXIT_SUCCESS. ##### 3.2.1.1 Argument Format -Das Format des Kommando Zeilen Arguments soll yyyy-mm-dd sein, wobei yyyy für das vier-stellige Jahr, mm für einen 1-2-stelligen Monat (1…12) und dd für einen Tag des Monats, beginnend mit 01. Z.B. 2020-02-29. +Das Format des Kommando Zeilen Arguments soll yyyy-mm-dd sein, wobei yyyy für das vier-stellige Jahr, mm für einen 1-2-stelligen Monat (1…12) und dd für einen Tag des Monats, begin-nend mit 01. Z.B. 2020-02-29. ##### 3.2.1.2 Korrektes Datum Das Datum muss alle folgenden Bedingungen erfüllen damit es als korrekt erkannt wird: * Obergrenze für ein «sinnvolles» Datum ist das Jahr 9999 @@ -142,16 +142,16 @@ Das Datum muss alle folgenden Bedingungen erfüllen damit es als korrekt erkannt * der Tag darf für den Februar nicht grösser sein als 28 für ein Nicht-Schaltjahr ##### 3.2.1.3 Vorgaben an die Umsetzung -1. Definieren Sie einen enum Typen mit (typedef) Namen month_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Monate sind, nämlich Jan, Feb, … Dec und stellen Sie sicher, dass die Abkürzungen für die uns geläufigen Monatsnummer stehen. +1. Definieren Sie einen enum Typen mit (typedef) Namen month_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Monate sind, nämlich Jan, Feb, … Dec und stellen Sie sicher dass die Abkürzungen für die uns geläufigen Monatsnummer stehen. 2. Definierend Sie einen struct Typen mit (typedef) Namen date_t und den int Elementen year, month, day. Lesen Sie das Argument (falls vorhanden) via sscanf und dem Formatstring "%d-%d-%d" in die drei Elemente einer Date Variable. Siehe dazu die Hinweise im Anhang. 3. Für die Berechnung der Monatslänge implementieren Sie die Hilfsfunktion is_leap_year(date_t date) (nach obigen Vorgaben). Der Return Wert 0 bedeutet «Kein Schaltjahr», 1 bedeutet «Schaltjahr». -4. Implementieren Sie die Funktion `int get_month_length(date_t date)`. Diese soll für den Monat des Datums die Monatslänge (was dem letzten Tag des Monats entspricht) ausgeben – geben Sie 0 für ungültige Monatswerte zurück. +4. Implementieren Sie die Funktion `int get_month_length(date_t date)`. Diese soll für den Monat des Datums die Monatslänge (was dem letzten Tag des Monats ent-spricht) ausgeben – geben Sie 0 für ungültige Monatswerte zurück. 5. Schliesslich implementieren Sie die Funktion int is_gregorian_date(date_t date) welche prüft, ob ein gegebenes Datum im Bereich 15. Oktober 1582 und dem Jahr 9999 ist (0 = nein, 1 = ja). -6. Implementieren Sie eine Funktion int is_valid_date(date_t date), welche obige Bedingungen für ein gültiges Datum umsetzt. Der Return Wert 0 bedeutet «Kein gültiges Datum», 1 bedeutet «Gültiges Datum». Benutzen Sie für die Prüfung des Datums die `month_t` Werte wo immer möglich und sinnvoll. Verwenden Sie die oben implementierten Hilfsfunktionen. +6. Implementieren Sie eine Funktion int is_valid_date(date_t date), welche obige Bedingungen für ein gültiges Datum umsetzt. Der Return Wert 0 bedeutet «Kein gültiges Datum», 1 bedeutet «Gültiges Datum». Benutzen Sie für die Prüfung des Datums die `month_t` Werte wo immer möglich und sinnvoll. Verwenden Sie die oben implemen-tierten Hilfsfunktionen. ##### 3.2.1.4 Hinweise Beachten Sie die Kommentare im Code für die geforderten Implementierungs-Details. #### 3.2.2 Teilaufgabe Wochentag Berechnung -Schreiben Sie eine Funktion, welche zu einem Datum den Wochentag berechnet. +Schreiben Sie eine Funktion welche zu einem Datum den Wochentag berechnet. Die Formel wird Georg Glaeser zugeschrieben, möglicherweise angelehnt an eine Formel von Carl Friedrich Gauss. ```{eval-rst} @@ -167,15 +167,15 @@ Hier ist eine für C abgewandelte Variante davon. weekday = ((day + (13 * m - 1) / 5 + y + y / 4 + c / 4 - 2 * c) % 7 + 7) % 7 alle Zahlen sind int Werte und alles basiert auf int-Arithmetik m = 1 + (month + 9) % 12 -a = year - 1 (für month < Mar), ansonsten year +a = year - 1 (für month < Mar), ansonsten year y = a % 100 c = a / 100 ``` -Erweitern sie das Programm so, dass vor dem erfolgreichen Terminieren des Programms folgende Zeile (inklusive Zeilenumbruch) ausgegeben wird: yyyy-mm-dd is a Ddd, wobei yyyy für das Jahr, mm für die Nummer des Monats (01…12) und dd für den Tag im Monat (01…). Z.B. 2020-02-29 is a Sat. +Erweitern sie das Programm so, dass vor dem erfolgreichen Terminieren des Programms fol-gende Zeile (inklusive Zeilenumbruch) ausgegeben wird: yyyy-mm-dd is a Ddd, wobei yyyy für das Jahr, mm für die Nummer des Monats (01…12) und dd für den Tag im Monat (01…). Z.B. 2020-02-29 is a Sat. Vorgaben an die Umsetzung -1. Definieren Sie einen enum Typen mit (typedef) Namen weekday_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Tage sind, nämlich Sun, Mon, … Sat und stellen Sie sicher, dass die Abkürzungen für die Werte 0…6 stehen. -2. Schreiben Sie eine Funktion weekday_t calculate_weekday(date_t date) nach der Beschreibung der obigen Formel. Das date Argument ist als gültig angenommen, d.h. es ist ein Programmier-Fehler, wenn das Programm diese Funktion mit einem ungültigen Datum aufruft. Machen Sie dafür als erste Codezeile in der Funktion eine Zu-sicherung (assert(is_valid_date(date));) -3. Schreiben Sie eine Funktion void print_weekday(weekday_t day), welche für jeden gülteigen Tag eine Zeile auf stdout schreibt mit den Englischen 3-Zeichen Ab-kürzungen für den Wochentag, z.B. Sonntag: Sun, Montag: Mon, etc. Wenn ein ungültiger Wert für day erkannt wird, soll assert(!"day is out-of-range"); aufgerufen werden. +1. Definieren Sie einen enum Typen mit (typedef) Namen weekday_t dessen Werte die Englischen 3-Zeichen Abkürzungen der Tage sind, nämlich Sun, Mon, … Sat und stel-len Sie sicher dass die Abkürzungen für die Werte 0…6 stehen. +2. Schreiben Sie eine Funktion weekday_t calculate_weekday(date_t date) nach der Beschreibung der obigen Formel. Das date Argument ist als gültig angenom-men, d.h. es ist ein Programmier-Fehler, wenn das Programm diese Funktion mit einem ungültigen Datum aufruft. Machen Sie dafür als erste Codezeile in der Funktion eine Zu-sicherung (assert(is_valid_date(date));) +3. Schreiben Sie eine Funktion void print_weekday(weekday_t day), welche für jeden gülteigen Tag eine Zeile auf stdout schreibt mit den Englischen 3-Zeichen Ab-kürzungen für den Wochentag, z.B. Sonntag: Sun, Montag: Mon, etc. Wenn ein ungülti-ger Wert für day erkannt wird, soll assert(!"day is out-of-range"); aufgeru-fen werden. Hinweise • Für interessierte, siehe: https://de.wikipedia.org/wiki/Wochentagsberechnung @@ -194,7 +194,7 @@ Die gegebenenfalls gestellten Theorieaufgaben und der funktionierende Programmco ___ ## 5. Anhang -### 5.1 Sprachelemente +### 5.1 Sprach Element ```int main(int argc, char *argv[]) { ... @@ -214,7 +214,7 @@ int res = sscanf(argv[1] if (res != 3) { // Fehler Behandlung... // ... -} +} ``` ### 5.2 Beschreibung @@ -225,4 +225,4 @@ fprintf(stderr, "Usage: %s…\n", argv[0]); Siehe man 3 fprintf. Schreibt formatierten Text auf den stderr Stream. ___ -Version: 15.02.2022 +Version: 15.02.2022 \ No newline at end of file diff --git a/build/html/index.html b/build/html/index.html index 18f8106..550483a 100644 --- a/build/html/index.html +++ b/build/html/index.html @@ -68,7 +68,7 @@
  • 4. Bewertung
  • 5. Anhang
  • diff --git a/build/html/searchindex.js b/build/html/searchindex.js index e576a3c..1c2ebea 100644 --- a/build/html/searchindex.js +++ b/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["P01_Erste_Schritte_mit_C/README","P02_Funktionen_Datentyp_enum/README","P03_Bit_Operation_struct_typedef/README","P04_Modularisieren_von_C_Code/README","P05_TicTacToe/P05_TicTacToe","P05_TicTacToe/README","P06_Personen_Verwaltung_Linked_List/README","P07_Prozesse_und_Threads/README","P07_Prozesse_und_Threads/README_P02","P08_Sync/README","P09_File_Operations/README","P10_IPC/README","README","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["P01_Erste_Schritte_mit_C/README.md","P02_Funktionen_Datentyp_enum/README.md","P03_Bit_Operation_struct_typedef/README.md","P04_Modularisieren_von_C_Code/README.md","P05_TicTacToe/P05_TicTacToe.rst","P05_TicTacToe/README.md","P06_Personen_Verwaltung_Linked_List/README.md","P07_Prozesse_und_Threads/README.md","P07_Prozesse_und_Threads/README_P02.md","P08_Sync/README.md","P09_File_Operations/README.md","P10_IPC/README.md","README.md","index.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":[0,1,2,4,5,6,7,8,9],"00":0,"000":[2,6,9],"0000":[],"00000000":2,"00000011":2,"00001100":2,"00001111":2,"0001":[],"0011":2,"00463":0,"00927":0,"01":[1,6,7,8,13],"0100":2,"011":2,"0111":2,"01390":0,"01854":0,"02":[3,4,5,10,11,13],"02317":0,"02780":0,"02d":1,"02x":2,"03":13,"03244":0,"03707":0,"04":13,"05":13,"06":13,"07":13,"08":13,"09":13,"0b001":2,"0b010":2,"0b100":2,"0x":2,"0x01":[],"0x03":2,"0x0c":2,"0x0f":2,"0x75":2,"1":[4,13],"10":[5,6,9,13],"100":[1,9],"1000":[0,2,9],"10000":1,"1001":2,"100er":1,"101":2,"1011":2,"11":[6,7,8],"110":2,"111":2,"12":[1,2,7],"1200":0,"127":[7,8],"128":9,"13":1,"14":5,"1400":0,"15":[1,2,4],"1582":1,"1599":1,"16":[10,11],"1600":[0,1],"1700":1,"18":9,"1st":6,"2":13,"20":[5,6],"200":0,"2020":1,"2021":9,"2022":[1,3,4,5,6,7,8,10,11],"2048":9,"21":[],"22":3,"266839126":[],"28":1,"29":1,"297":[],"2er":2,"2nd":6,"3":13,"30":[1,7],"31":1,"32":2,"343302707":[],"36":[],"3rd":6,"3x3":[4,5],"4":13,"40":6,"400":[0,1],"42":[],"43158":0,"47":0,"5":[2,13],"6":[1,4,5,13],"600":0,"62":[4,5],"64":3,"65534":[7,8],"7":[1,2,3,13],"8":[2,13],"800":0,"9":[1,4,5,13],"9999":1,"\u00e4hnlich":7,"\u00e4hnlichen":3,"\u00e4ltere":2,"\u00e4ndern":7,"\u00e4nderungen":3,"\u00f6ffentlichen":3,"\u00f6ffnen":[7,8,9],"\u00fcben":3,"\u00fcber":[3,4,5,7,8,9],"\u00fcberblick":9,"\u00fcberf\u00fchrt":2,"\u00fcberfl\u00fcssig":2,"\u00fcbergeben":1,"\u00fcbergebenen":3,"\u00fcberlagerungen":2,"\u00fcberlassen":6,"\u00fcberlegen":[2,7,8],"\u00fcberlegt":7,"\u00fcberlegungen":[7,8],"\u00fcbernehmen":1,"\u00fcbernommen":[3,7,8,9],"\u00fcberpr\u00fcfen":[7,9],"\u00fcberpr\u00fcft":[1,6,9],"\u00fcberpr\u00fcfung":6,"\u00fcbersetz":3,"\u00fcbersetzen":[3,7,8,9],"\u00fcbersetzt":[0,3],"\u00fcbersetzung":3,"\u00fcbersicht":13,"\u00fcbersichtlich":7,"\u00fcbertragen":9,"\u00fcbertragungsfehl":2,"\u00fcberwachung":[7,8],"\u00fcberweisung":9,"\u00fcbrigen":[4,5],"\u00fcbungen":13,"abh\u00e4ngig":9,"abh\u00e4ngigkeit":[3,9],"abh\u00e4ngigkeiten":[3,4,5],"abh\u00e4ngigkeitsanalys":[],"abk\u00fcrzungen":1,"abl\u00e4uf":9,"abl\u00e4uft":[7,8],"abst\u00fcrzt":[7,8],"aktivit\u00e4ten":9,"allf\u00e4llig":0,"allgegenw\u00e4rtig":2,"aufh\u00e4lt":[7,8],"ausf\u00fchrbar":0,"ausf\u00fchrbaren":0,"ausf\u00fchren":[0,3,4,5,7,8],"ausf\u00fchrt":1,"ausf\u00fchrung":[7,8,9],"ausf\u00fchrungsschritt":9,"ausf\u00fchrungszeit":6,"ausgef\u00fchrt":[4,5,7,8,9],"ausgel\u00f6st":6,"ausgew\u00e4hlt":[7,9],"ben\u00f6tigen":[0,7,8,9],"ben\u00f6tigt":[7,8,9],"ben\u00f6tigten":[0,7,9],"ber\u00fccksichtigt":[1,6],"bereichs\u00fcberpr\u00fcfung":1,"bereichspr\u00fcfung":1,"besch\u00e4ftigen":[7,8],"besch\u00e4ftigt":9,"betr\u00e4g":9,"betr\u00e4gen":[0,9],"bew\u00e4hrt":9,"boolean":3,"byte":3,"case":[2,6],"char":[0,1,2,5,6],"class":3,"const":6,"d\u00e4mon":13,"d\u00e4monen":[7,8],"d\u00fcrfen":9,"daf\u00fcr":[1,7,8,9],"daten\u00fcbermittlung":2,"daten\u00fcbertragung":2,"daten\u00fcbertragungen":2,"default":[],"dr\u00fccken":[7,8],"dr\u00fcckt":9,"druckerd\u00e4monen":[7,8],"durchf\u00fchren":[7,8],"eigenst\u00e4ndig":9,"einf\u00fcgen":6,"einf\u00fchrung":13,"eingef\u00fcgt":6,"eingef\u00fchrt":9,"eintr\u00e4g":[0,1,3],"eintr\u00e4gen":6,"einzuf\u00fcgend":6,"endger\u00e4ten":2,"enth\u00e4lt":[0,9],"enum":[2,13],"erf\u00fcllen":[1,9],"erf\u00fcllt":9,"erg\u00e4nzen":[1,3,5,6,9],"erg\u00e4nzend":[3,4,5],"erg\u00e4nzt":[1,2,6],"erg\u00e4nzungen":3,"erh\u00e4lt":[7,8],"erh\u00f6":9,"erh\u00f6hen":1,"erkl\u00e4ren":[1,2,4,5,6,7,8,9,10,11,13],"erkl\u00e4rt":[0,1,2,3,4,5,7,8,9,10,11],"erl\u00e4sst":9,"erm\u00f6glicht":1,"erw\u00e4hnt":[7,8],"f\u00e4llen":7,"f\u00e4llt":[7,8,9],"f\u00fcgen":[3,6],"f\u00fchren":[3,4,5],"f\u00fchrt":6,"f\u00fcr":[0,1,2,3,4,5,6,7,8,9,12],"fehlschl\u00e4gt":[4,5],"float":3,"function":[],"funktionalit\u00e4t":[3,4,5,9],"g\u00fclteigen":1,"g\u00fcltig":1,"g\u00fcltige":1,"g\u00fcltigkeit":1,"ge\u00e4ndert":2,"ge\u00f6ffnet":7,"gef\u00fchrt":[4,5],"gegen\u00fcb":13,"geh\u00f6ren":2,"gel\u00e4ufigen":1,"gel\u00f6scht":[6,7,8],"gel\u00f6st":9,"geldbetr\u00e4g":9,"gem\u00e4ss":[3,4,5,6],"ger\u00fcst":[1,3,4,5,6],"getr\u00e4nk":9,"gew\u00e4hlt":[4,5,7,8,9],"gew\u00fcnsch":9,"gew\u00fcnschten":9,"gr\u00f6sser":[1,6],"gr\u00fcnde":9,"gr\u00fcnden":9,"grundverst\u00e4ndni":7,"herausgel\u00f6st":6,"herauszul\u00f6senden":6,"hinzuf\u00fcgen":13,"hinzugef\u00fcgt":6,"int":[1,2,3,4,5,6],"integrit\u00e4t":2,"k\u00f6nn":9,"k\u00f6nnen":[0,1,2,3,4,5,6,7,8,9,10,11],"k\u00f6nnte":[6,7,8,9],"k\u00f6nnten":[2,7],"k\u00fcmmern":3,"k\u00fcrzerer":2,"k\u00fcrzungen":1,"komplexit\u00e4t":2,"l\u00e4ndern":9,"l\u00e4nge":[1,5],"l\u00e4sst":9,"l\u00e4uft":[7,8],"l\u00f6sbare":2,"l\u00f6schen":2,"l\u00f6schenden":6,"l\u00f6sen":[2,9],"l\u00f6st":13,"l\u00f6sung":9,"l\u00f6sungen":[0,1,2,3,4,5,7,8,9,10,11],"l\u00f6sungsans\u00e4tz":0,"lauff\u00e4hig":[1,2],"long":3,"m\u00e4chtige":3,"m\u00f6glich":[1,2,3,7,8,9],"m\u00f6glicherweis":1,"m\u00f6glichkeit":7,"m\u00f6glichkeiten":3,"m\u00f6glichst":[2,9],"m\u00fcndlich":[0,1,2,3,4,5,7,8,9,10,11],"m\u00fcnze":9,"m\u00fcnzen":9,"m\u00fcssen":[0,1,2,3,4,5,6,7,8,9,10,11],"monatsl\u00e4ng":1,"n\u00e4chste":9,"n\u00e4chsten":[6,9],"n\u00e4mlich":1,"n\u00f6tig":[2,6],"n\u00f6tigen":2,"n\u00fctzlich":[2,7],"nat\u00fcrlich":5,"new":[3,4,5],"null":[6,7,8,9],"parit\u00e4tsbit":2,"popul\u00e4r":6,"pr\u00fcfen":[3,13],"pr\u00fcfend":6,"pr\u00fcfsummen":2,"pr\u00fcft":[1,4,5],"pr\u00fcfung":1,"pr\u00fcfungen":6,"prozessr\u00e4um":7,"public":3,"r\u00fcckg\u00e4ngig":2,"r\u00fcckgabewert":1,"repr\u00e4sent":3,"repr\u00e4sentiert":3,"return":[0,1,2,4,5,6],"s\u00e4mtlich":[7,8,9],"sch\u00fctzen":9,"seitengr\u00f6ss":2,"selbst\u00e4ndig":0,"short":[],"sicherheitsgr\u00fcnden":9,"sp\u00e4ter":[1,3],"st\u00fccke":9,"static":[3,4,5],"switch":1,"tats\u00e4chlich":3,"tempor\u00e4ren":2,"throw":3,"true":3,"umst\u00e4nden":7,"umst\u00e4ndlich":6,"unabh\u00e4ngig":[7,8],"ung\u00fclti":[],"ung\u00fcltig":1,"ung\u00fcltigen":1,"unterst\u00fctzten":2,"unver\u00e4ndert":[2,4,5],"ver\u00e4ndert":9,"verf\u00fcgbar":[3,4,5,6],"verf\u00fcgung":[0,6,7,8,9],"verfollst\u00e4ndigen":2,"verh\u00e4ltniss":[7,8,9],"verkn\u00fcpfung":2,"verst\u00e4ndni":7,"vervollst\u00e4ndigen":2,"void":[0,1,3,4,5],"vollst\u00e4ndig":[3,6,7,8,9],"vorg\u00e4ngerknoten":6,"w\u00e4hlen":[0,9],"w\u00e4hrend":[6,7,8],"w\u00e4re":[2,6,9],"w\u00f6rter":[5,13],"w\u00fcrde":3,"w\u00fcrden":9,"weiterf\u00fchrend":[1,7,8],"while":[0,2,7],"widerstandsf\u00e4hig":2,"wortzwischenr\u00e4um":0,"z\u00e4hlen":13,"z\u00e4hler":9,"z\u00e4hlt":0,"zerst\u00fcckelt":[],"zuf\u00e4llig":9,"zugef\u00fcgt":6,"zugeh\u00f6rigen":3,"zur\u00fcck":[0,1,2,7,8],"zur\u00fcckgeben":1,"zur\u00fcckgegeben":0,"zur\u00fcckgesetzt":9,"zur\u00fcckliefern":1,"zus\u00e4tzlich":[2,6,7,13],"zus\u00e4tzlichen":9,"zust\u00e4nd":7,A:[3,4,5,7,8],AND:2,Be:9,IN:[4,5,6],In:[0,1,3,4,5,6,7,8,9],NO:[],OR:2,TO:[4,5],The:[4,5],_:2,__file:3,__mbstate_t:3,_g_config:3,a1:9,a2:9,a3:9,a4tsbit:2,aa:1,aaaa:7,ab:[1,7,8,9],abbild:7,abbildung:[6,9],abbrechen:[7,8],aber:[2,6,7,8,9],abfragen:[1,7,8],abgebildet:6,abgefragt:7,abgelegt:[7,9],abgeschlossen:0,abgewandelt:[1,7,8,9],abheben:9,abhilf:9,ablauf:[9,13],ablaufbedingungen:9,ablaufen:[7,9],ablaufgraph:9,ablaufgraphen:9,ablegt:5,abnahm:[4,5],abort:7,abschnitt:[7,8,9],absend:[7,8],abspeichert:6,abstraktionen:7,absturz:7,abwechselnd:4,accept:[7,8],access:[4,5],account:9,achtung:9,acntlock:9,activ:3,add:[1,4,5],addit:[1,3],adress:[1,6],adressen:6,advancedsequ:9,affect:[4,5],ag:6,ajx:[7,8],aktion:6,aktionen:[7,8,9],aktiv:[7,8],aktiven:[7,8],aktuel:[7,8],aktuellen:[7,8],akzeptiert:2,al:[0,1,2,3,4,5,6,8,9,13],algorithmu:2,all:[0,1,2,3,4,5,6,7,8,9],allen:3,aller:6,allozieren:6,alloziert:[6,9],allozierung:2,alphabetisch:[5,6],also:[1,2,6,7],alter:6,alternativ:6,am:[1,3,4,6,7,8,9],ampel1:1,ampeln:1,an:[0,2,3,6,7,8,9,13],analog:[4,5],analys:[7,8],analysieren:[8,9,13],analysiert:9,anchor:6,ander:[2,3,6,7],anderem:[2,9],anderen:[1,5,6,9],andererseit:[7,8],andern:3,andreren:[],anfang:[2,7,8],anforderungen:9,anfrag:[7,8],anfragen:[7,8],angaben:5,angebracht:6,angegeben:[1,2,3,4,6],angegebenen:3,angekommen:[7,8],angelehnt:1,angemessen:1,angenom:[],angenommen:[1,6],angepasst:[7,8,9],angezeigt:[2,7],anhand:[4,5,6],anhang:13,ani:2,anker:6,anleitung:[0,4,5],anmerkung:[7,8],annahm:[],annehmen:9,anordnet:3,anordnung:3,anpassen:[7,8],anschli:9,anschliessend:9,ansonsten:[1,6],ansprechenden:3,anstel:[6,7,8],antwort:[7,8,9],anweisung:1,anwend:[6,7,8],anwenden:[0,6,9],anwendung:2,anyoutput:7,anzahl:[0,1,9],anzugeben:3,anzupassen:5,anzuwenden:[1,3],api:13,apr:1,apt:3,ar:6,arbeiten:[0,2,7,8,9],arbeitet:6,arbeitsumgebung:12,arbeitsumgebung_f:0,arbeitsverzeichni:[7,8],architektur:[4,5],arg:3,argc:1,argument:[3,7,13],argumenten:1,argv:1,arithmetik:1,arno:6,arrai:[1,2,4,6,9,13],art:[2,6,7,8],aspekt:1,assert:[1,4,5],assert_po:[4,5],asynchronen:2,atoi:1,atomar:9,attribut:2,attributen:2,au:[0,1,2,3,4,5,6,7,8,9],auch:[1,2,3,4,5,6,7,8,9],auf:[0,3,4,5,6,8,9,13],aufdatiert:7,aufenthaltsort:[7,8],aufgab:[2,13],aufgaben:[6,8,12,13],aufgefordert:6,aufgelistet:7,aufgelisteten:6,aufgeru:[],aufgerufen:[1,4,5,6],aufgeteilt:2,auflisten:[7,8],auflistet:3,aufruf:[6,7,8],aufrufen:[0,1,6,9],aufrufendem:[],aufrufenden:1,aufruft:[1,7],aufsparen:7,auftreten:9,aufweist:6,aufzeichnen:9,aufzurufen:1,aufzuteilen:3,aug:1,ausdrucken:[7,8],ausgab:[0,1,2,3,5,7,8,9],ausgaben:0,ausgeben:[0,1,5,7,9],ausgegeben:[1,3,6,7,9],ausgehend:[6,7],ausgibt:[0,1,5,7,9],auskommentiert:9,auskommt:2,auslastung:7,ausloggen:[7,8],ausnahm:1,ausnahmen:1,aussag:9,ausschluss:9,aussehen:2,ausser:[7,9],aussieht:7,auswahl:[6,7],auswahlen:2,auszug:2,auszugeben:0,auto:9,automat:13,automaten:9,automatisch:[3,7,8],automatisierten:3,autor:9,autoren:[7,8],b:[0,1,2,3,4,5,6,7,8,9],bank:13,bash:[3,4,7],basi:[3,7,8,9,13],basicsequ:9,basierend:6,basiert:1,basierten:9,baum:7,bb:1,bcfsumm:2,bcr_die_praktika:0,bcsselung:2,beachten:[1,6,7],bearbeiten:9,bearbeitung:6,bedarf:[0,1],bedeutet:[1,6],bedingungen:[1,6],beeinflussen:9,beendet:6,beendigung:5,befehl:[7,8],begin:[4,5],beginnen:[0,2],beginnend:1,begrenzten:2,behandelt:[7,8],behandlung:1,bei:[0,1,2,3,4,5,6,7,8,9],beid:2,beiden:[4,5,6,7,8,9],beider:1,beiliegend:2,beim:[0,6,7,8,9],beinhalten:1,beispiel:[1,2,3,7,8,9],bekannt:[6,7,8],bekommen:2,beliebig:[2,6,7,8],beliebigen:[0,1],bemerkung:2,benennen:7,benutz:6,benutzen:[0,1,6],benutzt:[4,5,9],beobachten:7,beobachtungen:[7,8],berechnen:1,berechnet:[1,2],berechnung:[2,13],bereich:1,bereit:[3,5,9],besagt:[3,4,5],beschreiben:9,beschreibung:[3,4,5,6,13],beschreibungen:[7,8,9,12],beschrieben:[3,7],besetzt:4,besitzen:[7,8],besitzt:[1,9],besond:2,besser:[1,9],bestandteil:1,bestehen:6,bestehend:[3,5,13],bestehenden:[6,7],besteht:[1,3,4,5,6,7,8],besten:1,bestimmen:[2,13],bestimmt:2,betrag:9,betrieb:[7,8],betriebssystem:[0,7,8],bevor:0,bewertung:13,bewirkt:7,bezeichneten:1,beziehen:9,beziehung:9,beziehungen:9,bezug:3,bi:[0,1,2,4,5,6,7,9],bibliothek:[2,9],bieten:6,bietet:[3,7],bild:1,bilden:1,bildet:6,bildschirm:[7,8],bin:[2,3,4,5,7,8],bin_calcul:2,bisher:6,bit:[3,13],bitcoin:0,bitfeld:2,bitmust:2,bitweis:[],black:[2,3],bleiben:2,bleibt:6,blob:0,block:2,blue:2,board:[4,5],bodi:3,bosshard:6,box:3,branchlock:9,brett:[4,5],bricht:[7,8],brief:[4,5,6],bsy:[7,8,9],btc:0,buchen:9,buchstaben:[2,6,7],buffer:3,buffers:3,bug:7,bzw:[2,7,8,9],c3:[0,2],c:[1,2,4,5,7,8,9,13],ca8_2:7,ca:[7,8],calculate_weekdai:1,call_graph:[],caller_graph:[],carl:1,cat:7,cc:1,cd:9,cdata:9,cdef:3,cess:[7,8],ch:0,charact:0,chef:9,chf:0,childproca2:7,childproca7:7,chmod:7,clean:3,clear:[2,6],cluster_c0:3,cluster_c1:3,code:[0,1,2,4,5,6,7,9,13],codezeil:1,codierung:7,coffe:9,coffeetel:9,coin:9,coincount:9,col:[4,5],color:[2,3],com:[1,7],command:[1,3,7],committ:9,common:[3,9],commondef:9,commun:7,compar:6,comparison:6,compil:[0,3],comput:2,condit:9,content:6,control:[4,5],convers:0,convert:2,copyright:1,core:7,count:9,cpu:[7,9],cpu_meltdown:7,cpuinfo:7,critic:13,ctrl:[7,8],cu_assert_:6,cu_assert_equal_fat:[4,5],cunit:6,current:2,custom:9,cyan:2,d:[1,2,3,5,6,7,8,9],da:[0,1,2,3,4,5,6,7,8,9,10,11],dabei:[2,4,5,6,9],daemon:[7,8],daemonen:[7,8],daemonisierung:[7,8],daemonprogramm:[7,8],dai:1,damit:[1,2,7,8,9],danach:[0,2,4,5,7],dann:[0,1,3,6,7,8,9],dar:[1,4,5,7],daran:2,darau:7,darauf:1,darf:[1,6,7,8,9],dargestellt:[2,3,7],darin:[4,5],darstel:3,darstellen:[2,3],darstellt:[4,5],darstellung:[2,3,4,5,7],darstellungen:3,darum:[],darzustellen:[2,7],dass:[1,2,3,4,5,6,7,8,9],data:3,date:1,date_t:1,datei:[0,3,4,5,7,8],dateien:[7,8],dateierzeugungsmask:[7,8],dateizugriffsrecht:[7,8],daten:[0,1,2,3,6,7,9],datenflusssteuerung:2,datenkommunik:[7,8],datenkompress:2,datennetz:2,datensatz:6,datenstruktur:[2,6,9],datenstrukturen:6,datenstukturen:[],datentyp:[2,13],datentypen:1,datenwert:9,datum:13,dauernd:9,davon:1,dazu:[1,2,3,6,7,8,9],dd:1,ddd:1,de:[0,2,3,4,5,6,8,9,13],deadlock:9,dealloziert:9,debugg:7,dec:[1,2],deep:3,defin:[0,2,3,6],definieren:[0,1,3,6,9],definierend:1,definiert:[1,2,3,6,9],definiertem:2,definierten:2,definit:[1,2],definitionen:6,defunct:7,deklarationen:[],deklarieren:[1,3,6],dem:[0,1,2,4,5,6,7,8,9],demonstrieren:[1,2,3,4,5,6,10,11],demontiert:[7,8],den:[0,1,2,3,4,5,6,7,8,9],denen:[0,2],denjenigen:7,denken:2,denn:6,dep2dot:3,dep:13,depend:3,depfil:3,deposit:9,der:[0,1,2,3,4,5,6,7,8,10,11,12,13],deren:[1,3,6,9],derselb:6,derselben:2,deshalb:[3,6,7,8],designvorgaben:13,desktop:2,dessen:[1,2,6],detail:[1,6,7],develop:5,dez:1,dezemb:1,dezim:2,di:[0,2,3,4,5,6,7],diagonalen:4,diagramm:[],die:[0,2,3,4,5,6,7,8,9,10,11,12,13],dienen:2,dient:3,dies:[0,1,3,4,5,6,9,13],dieselb:3,diesem:[0,1,3,4,5,6,7,8,9],diesen:5,dieser:[3,6,7,8,9],diesmal:9,digraph:3,dir:3,directory_graph:[],direkt:[1,2,5,6,7,8],diskutieren:[0,7],displai:[],disziplinen:2,doc:0,dokument:3,dokumentieren:9,dollar:9,donnerstag:1,doppelt:6,dort:[7,8],dot:13,dot_image_format:[],dot_path:[],dotfile_dir:[],doubl:[0,3],doxyfil:[],dport:[7,8],drei:[1,2,3,9],dreieck:3,dritt:13,dritten:9,driven:5,drucker:[7,8],dump:7,duplikat:6,durch:[1,2,3,4,5,6,7,9],durchlau:4,durchlaufen:[3,4,5,7],dynamisch:[6,7],dynamischen:6,e:[6,7,8,9],each:3,ebenfal:[1,9],echo:7,editor:0,effizient:9,effizienten:5,effizientest:2,eien:[],eigen:9,eigenen:[5,7,9],eigenschaft:[7,8],eigenschaften:7,eigentlich:[4,5,7,8],ein:[0,1,2,3,4,5,6,7,8,9],einbinden:[0,3],einblick:7,einbuchen:9,eindeutig:1,eindeutigen:1,einem:[0,1,2,3,4,5,6,7,8,9],einen:[0,1,2,4,5,6,7,8,9],einer:[0,1,2,4,5,6,7,8,9],einfach:[0,3,5,6,7,13],einfachen:9,einfachheit:[7,8],eingab:[0,1,2,3,4,5,6,9],eingabeform:2,eingaben:6,eingabeschleif:6,eingeben:[2,7,8],eingebunden:[],eingegeben:[1,5,6,9],eingegebenen:0,eingehalten:9,eingehen:[7,8],einheiten:9,einig:[0,7,8],einleitung:[7,8],einlesen:[1,5],einliest:[0,5],einloggen:[7,8],einmal:[6,7,8],einstiegspunkt:6,eintreffen:[7,8],einwerfen:9,einzeln:[0,7,9],einzelnen:[2,3,6,9],einzig:[3,6],einzigen:2,einzu:6,einzugeben:6,einzulesen:0,element:[1,6,13],elementen:1,els:0,eltern:7,elternprozess:[8,13],emov:6,end:[2,3,4,5,6],endet:6,endlo:9,endung:[0,3],englisch:[7,8],englischen:1,ent:[],enter:0,entfernen:[2,6,7,8],entfernt:6,entgegeben:[],entgegen:1,entgegennimmt:1,enthalten:7,entscheiden:3,entsprechend:[0,3,6,7,8,9],entsprechenden:[3,6,7,8,9],entspricht:[1,5],entstehen:[6,9],entstehend:7,entwed:[0,6,9],entwickeln:5,entwicklungsteam:9,env:0,eof:3,equal:[4,5],er:[7,8,9,13],erbt:[7,8],erfahren:7,erfinden:5,erfolgen:[2,5],erfolgreich:[1,3,4,5,6],erfolgreichen:1,erforderlich:9,erfragen:7,erhalten:7,erkannt:[1,2],erkennbar:6,erkennen:6,erkennung:6,erledigen:[7,8],ermitteln:9,erneut:[7,8],erreichen:[5,6],erreicht:[6,7,8],error:[3,7],erscheint:9,ersetzen:13,ersetzt:3,ersichtlich:[7,8],erst:[1,2,3,4,5,6,7,13],erstellen:[0,3,9],erstellt:[],erstellten:3,erstem:7,ersten:[0,1,3,4,5,9],erwarten:7,erwartet:6,erweitern:[1,2,3,4,5,6,9],erweitert:13,erweiterten:9,erweiterung:[],erzeugen:13,erzeugt:[0,6,7,8],erzeugten:7,erzeugung:7,erzwingen:9,erzwingt:7,erzwungen:9,es:[1,2,3,4,5,6,7,8,9],etc:[1,7,8,9],etlich:6,etwa:2,euro:9,ev:[7,8],exclus:13,exec:13,execl:7,existieren:[4,5,6],existiert:6,exit:[1,7],exit_failur:1,exit_success:[1,2],exklusiv:9,experimenti:[7,8],experimentieren:7,express:[],extra:2,f:7,fail:[4,5],fall:[1,2,6,7,8,9],fals:3,falsch:[2,7],farbinformationen:2,featur:3,feb:1,februar:1,fehleingaben:1,fehlenden:[1,2,4,5],fehler:[1,2,4,5,6],fehlerbehandlung:6,fehlerfal:6,fehlerhaft:6,fehlermeldung:[7,8,9],fehlermeldungen:9,fehlschlagen:[4,5],feld:[4,5],felder:[2,4],fen:4,fenster:[7,8],ferner:5,fest:[7,8,9],festgestellt:9,feststellen:[7,8],festzustellen:7,fget:1,field:[4,5,6],file:[0,4,5,6,7,8,9,13],filepath:[7,8],filial:9,filialen:13,fill:3,finden:[0,1,2,7,8,9],firefox:3,firewal:[7,8],first:[4,5],first_nam:6,flag:2,flippen:2,floatn:3,foku:1,fol:[],folgen:0,folgend:[1,2,3,4,5,6,7,8],folgendem:[6,7,8],folgenden:[1,2,3,4,5,6,7,9],folgt:[2,4,5],fordern:9,forderung:9,fork:13,form:[2,3],format:13,formaten:[],formatiert:[0,3],formatierten:1,formatstr:1,formel:1,formen:13,fprintf:[1,3],fragen:[7,8,9],framework:0,franken:0,frei:9,freigab:9,freigaben:9,freigeben:6,freigegeben:[6,7,8],friedrich:1,funktion:[0,1,2,4,5,7,9],funktionen:[0,3,4,5,6,7,9,13],funktionieren:[4,5],funktionierend:[0,1,2,3,4,5,6,7,8,9,10,11],funktionierenden:[4,5],funktioniert:2,funktionsaufruf:7,funktionsdefinit:1,funktionsdeklar:1,funktionsdeklarationen:6,g:3,ganz:[],gauss:1,gcc:[0,2,3],gdb:7,geben:[1,6,7,9],gebildet:3,gebraucht:2,gedacht:[7,8],geeignet:5,gefolgt:7,gefordert:[4,5],geforderten:1,gefragten:2,gefunden:6,gegeben:[1,2,3,4,5],gegebenen:[1,3,6,7],gegebenenfal:[0,1,2,3,4,6,7,8,9,10,11],gegen:2,gegensatz:9,gegenseitig:9,gehen:[4,5,6,9],geht:[],gelb:1,geld:9,gelder:9,gelernt:9,gelernten:6,gelesen:[0,7],gelesenen:[1,3],gelingt:7,gelten:3,gemacht:7,gemeinsam:9,gemeinsamen:9,gemeldet:6,gemounteten:[7,8],genannt:[6,7,8,9],genau:6,gend:[],generieren:3,generierten:3,georg:1,ger:[],gesamt:6,gesamtbilanz:9,gesamten:[6,7],geschehen:[7,8],geschickt:7,geschieht:[7,8],geschrieben:[3,7],gesetzt:[7,8,9],gesorgt:[7,8],gespeichert:[1,2,6],gespeicherten:6,gespielt:[4,5],gestartet:[1,7,8,9],gestellt:9,gestellten:[0,1,2,3,4,7,8,9,10,11],gesteuert:[2,9],gesucht:6,get_length:[],get_month_length:1,get_slop:[],get_stat:[4,5],getchar:0,getint:3,gewicht:[1,2,4,9],gewinn:[4,5],gewinnt:4,gewissen:7,gezeigt:[0,1,2,3,4,5,7,8,9,10,11],gibintwert:1,gibt:[0,1,2,3,7,8,9],gif:3,git:[3,4,5,6],github:0,given:[4,5],glaeser:1,gleich:[0,1,6,7,9],gleichen:[7,8],gleichzeitig:[7,8,9],gnu:[0,3,7],grad:2,grafik:2,grafikprotokollen:2,grafisch:3,grafischen:3,graphen:3,graphic:2,graphical_hierarchi:[],graphik:3,graphisch:3,graphischen:3,graphviz:3,greater:6,green:2,gregorianisch:1,gregorianischen:1,gregorianischer_kalend:1,greifen:9,grep:[7,8],gross:[2,9],grossbuchstaben:[3,5],grossteil:3,gruen:1,grund:[0,5],grundlagen:[2,9],grundlegend:9,grundlegenden:9,guard:[3,6],gui:2,gute:[6,7],h:[0,1,2,3,4,5,6,7,8,9],haben:[0,3,7,8,9],halber:[7,8],halbtot:13,hallo:[7,8],hand:7,handel:9,handelt:6,handgriff:3,hard_work:7,hat:[1,2,3,4,5,7,8],hauptprogram:7,hauptprogramm:[1,6,7,8],hauptschleif:6,header:[3,6],heap:6,heben:9,hello:13,hen:9,henfolg:6,her:[3,6,9],herausfordern:4,herum:6,herunterfahren:[7,8],heruntergefahren:[7,8],hervorhebung:2,hex:2,hexadezim:2,hier:[0,1,2,3,4,5,7,8,9],hierbei:5,hilf:9,hilfetext:1,hilfreich:1,hilfsfunkt:1,hilfsfunktionen:[1,6,7,8],hin:[0,9],hingegen:9,hintereinand:[7,9],hintergrundprozess:[7,8],hinterlegt:[7,8],hinwei:[7,8,9],hinweis:[5,13],hinzu:6,hold:[4,5],home:[],horizontalen:4,how:[3,6],html:[],htop:7,http:[0,1,2,3,7,9],huno:[],i:[6,7,8],ibc:9,ibt:9,ich:[7,8,9],id:[0,7,8],ide:6,identifizieren:9,ignorieren:[7,8],ignoriert:[5,6],ihnen:[0,6,7,8,9],ihr:[0,7,8,9],ihrem:[0,7,8,9],ihren:[0,2,7,8],ihrer:[7,8],im:[0,1,3,4,5,6,7,8,9],imag:13,immer:[1,2,9],impl:9,implemen:[],implement:[3,4,5,13],implementationen:9,implementationsfil:6,implementieren:[1,3,4,5,6,9],implementiert:[4,5,7,8,9],implementierten:1,implementierung:[1,13],inact:[4,5],inclu:[],includ:[0,1,2,3,5,6],include_graph:[],included_by_graph:[],indem:[0,2,3,6,7,8],indent:3,index:[],individuel:6,ineffizi:6,info:[7,8],inform:[2,7],informationen:[2,7,8],informationssystemen:2,inhalt:[3,7,8],init_model:[4,5],initialisiert:9,initialisierung:9,inklus:[1,3,4,5,6,10,11],inkrementel:3,inkrementiert:9,innerhalb:9,inout:[4,5],input:[0,3,7,8],ins:[3,9],insert:6,inspir:3,instal:3,installationsanleitung:0,installieren:0,installiert:3,instanc:[4,5],instruct:[4,5],intakt:6,integ:[1,2],integriert:3,inter:7,interactive_svg:[],interakt:[7,8],interess:2,interessiert:1,intern:[4,5,13],io:3,ioexcept:3,ip:[7,8],ipc:[7,13],iptabl:[7,8],irgendein:9,is_gregorian_d:1,is_leap_year:1,is_valid_d:1,isoliert:6,ist:[0,1,2,3,4,5,6,7,8,9],istschaltjahr:1,itlb_multihit:7,j:[7,8],ja:[1,7,8],jahr:[1,6],jahreszahl:1,jahrhundert:1,jan:1,januar:1,java:3,javac:3,je:[2,3,6],jede:[1,2,9],jeden:[1,7,9],jeder:[6,9],jederzeit:[7,8,9],jedoch:[1,9],jemand:2,jemanden:4,jene:3,jeweil:[5,6],jeweiligen:[7,9],jpg:9,jul:1,jun:1,justwork:7,kaffe:13,kaffeekauf:9,kaffeesort:9,kaffeewahlen:9,kaffeewahltasten:9,kalend:1,kann:[1,2,3,4,5,6,7,8,9],kanten:3,kauf:9,kehrt:0,kein:[1,6,7,8,9],kennen:[3,5,6,7,9],kennenlernen:[7,8],kennt:3,kett:6,kill:7,killal:[7,8],kind:7,kindern:7,kindprogramm:7,kindprozess:13,kindprozessen:13,klein:[0,1],kleinbuchstaben:2,kleiner:[1,2,6],knoten:[3,6],kolleg:9,kollegen:[7,8,9],kombin:1,kommando:1,kommandozeil:0,kommandozeilen:[7,8],kommen:[3,7],kommentar:[1,7,8],kommentieren:7,kommt:[2,3,7,9],kommunik:[2,7,8],kommunizieren:[7,8],kompil:3,kompilieren:[0,2],kompiliert:[2,3],kompilierzeit:6,komplett:[0,6],kompletten:0,komplex:3,komplexer:[2,9],komponenten:[7,8],komprimiert:3,konfigurationsdateien:[],konsist:9,konsistent:9,konsolen:[7,8],konstanten:1,konstrukt:2,kontakt:[7,8],konten:9,kontenzugriff:9,kontenzugriffen:9,kontext:1,kontinuierlich:2,konto:13,kontostand:9,kontrollstrukturen:0,kontrolltermin:[7,8],konzentrieren:[4,5],konzept:2,koordin:[],koordinaten:[],koordinatensystem:[],koordiniert:9,kopi:13,kopieren:9,korrekt:[2,3,9,13],korrekten:9,korrektheit:13,korrigieren:[4,5],korrigiert:2,kostet:9,kostspielig:2,krei:6,kreieren:[6,7,8],kriterium:[1,2,3,4,5,6,7,8,9,10,11],kryptographi:2,kund:9,kunden:9,kur:0,kurz:[7,8],l1tf:7,l:[],lab:[0,3,4,5,6],label:3,lang:6,langsamen:2,lassen:2,lauf:7,laufen:[4,5,6],laufzeit:[6,9],laufzeiten:9,leak:6,lear:6,lebt:[7,8],lediglich:[7,8],leer:[0,6],leerzeichen:0,left:2,legen:4,lehnen:3,leicht:[7,8,9],leiten:7,len:[],lernen:[1,3,4,5,7,9],lernziel:13,lesbar:1,lesbarkeit:1,lesen:[0,1,2,7,8],letzt:[1,6],letzten:1,lib:3,libc:3,libio:3,librari:[0,5,6],liegen:[3,9],liest:[3,4,5,9],lightgrei:3,line:[1,3,7],lini:4,linien:[],link:13,linux:[0,3,7],list:[3,7,9,13],list_clear:6,list_insert:6,list_remov:6,listen:3,lm:2,load:7,localhost:[7,8],lock:[7,8,9],locken:9,log:[7,8],logik:[4,5],lokal:9,lokalen:9,loop:0,lower:13,lowercas:2,lpd:[7,8],lscpu:7,lung:3,lust:[7,8],m:[1,7,8,9],machen:[0,1,2,6],macht:[2,3,7,8],macro:[0,7,8],magenta:2,mai:[1,3],mail:[7,8],main:[1,2,3,4,5,13],make:[1,3,4,5,6,7,8,9],makefil:[4,5,6,13],makro:[0,6],mal:[2,7,8],man:[1,2,3,6,7,8,13],manipul:2,manipulationen:2,manipuliert:2,mann:7,manual:7,mar:1,markieren:2,markierten:2,maschin:13,master:0,mat:9,math:2,max:6,max_numb:3,maximalen:5,maximum:9,md:7,mehr:[1,3,4,5,9],mehrer:[0,2,3,9],mehreren:[1,7,9],mehrmal:[7,9],mehrmalig:9,meint:9,meist:[7,8],meisten:2,meldet:9,memori:6,men:[],mentiert:9,messen:[7,8],methoden:3,mind:[],mindesten:[6,7,8],mit:[1,2,3,4,5,6,8,9,13],miteinand:0,mittel:[1,2,3],mix:2,mm:1,model:[4,5],model_can_mov:[4,5],model_get_st:[4,5],model_get_winn:[4,5],model_init:[4,5],model_pos_t:[4,5],model_state_non:[4,5],model_state_t:[4,5],model_t:[4,5],modelliert:9,modul:[3,6,7,8,9],modular:3,modularisieren:13,modularisierung:13,modulen:[3,6],mon:1,monat:13,monatsnumm:1,monatswert:1,montag:1,month:1,month_t:1,montierten:[7,8],moodl:0,mrtimedaemon:[7,8],mscfile_dir:[],mtop:7,mueller:6,multipl:3,muss:[1,2,3,5,6,7,8,9],muster:2,mutex:9,mutual:13,mv:7,mvc:[4,5],my:[4,5],myst:[0,1,2,3,5,6,7,8,9,10,11,12],mytabl:[7,8],n:[0,1,2,4,5,7],nach:[1,2,3,5,6,7,8,9],nachdem:[],nachfolgeknoten:6,nachfolgenden:0,nachschaut:[7,8],nachwei:13,nahe:3,name:6,name_len:6,namen:[0,1,3,6,7,8,9],nd:6,nein:1,nend:[],nennen:7,neu:[6,9],neue:[2,7,8,9,13],neuen:6,neuer:6,neuzeichnungen:2,newlin:0,next:6,nicht:[0,1,2,3,4,5,6,7,8,9],nimmt:1,noch:[2,7,8,9],nochmal:7,node:[3,6],node_t:6,normal:[3,7,8],normalen:[7,8],normalfal:[7,8],noti:9,notieren:[7,8,9],notizen:[2,7],notwendigen:[7,8,9],nov:1,nsert:6,num_coin:9,num_row:0,number:2,numerisch:7,nummer:[1,7,8],nun:[7,8,9],nur:[1,2,7,8,9],nutzen:9,o:[0,2,6],ob:[1,2,3,6,7,8,9],oben:[1,6,7],obergrenz:1,obig:[1,4,5],obigen:[1,3,4,5,6],object:[],oder:[0,1,2,4,5,6,7,8,9],offensichtlich:2,offiziel:3,oft:[3,9],ohn:[3,4,5,6,7,8,13],okt:1,oktal:2,oktob:1,onen:9,onlin:12,oper:[1,2,6,13],operand:2,operand_1:[],operand_2:[],operanden:2,operati:9,operationen:[6,9,13],operiert:5,option:[0,3,8,13],optionen:7,orchest:7,ordnung:6,org:[1,2,3,9],orphan:13,ort:7,orten:9,other:3,out:[0,1,3,7,8],output:[0,3,7,8,9],oval:2,p1:6,p2:6,p:[7,8],page:[3,7],papier:9,paradigma:[4,5],param:[4,5,6],paramet:1,parametern:6,parit:2,parsen:13,pass:[4,5],passen:[3,9],passenden:3,passiert:[7,8],pdf:[0,12],per:2,periodisch:[7,8],perror:7,person:13,person_compar:6,person_t:6,personen:13,personenangaben:6,personeneingaben:6,personenverwaltung:13,pfade:[7,8],pfeilen:9,phonei:3,phoni:[],phoren:9,pid:[7,8],pidi:[7,8],planet:1,plappermaul:[7,8],plu:[6,7,8],png:13,po:[4,5],point:[],pointer:[2,6],pointern:6,posit:[2,4,5],positionen:2,positiv:2,posix:9,potentiel:[6,9],potenz:13,power:2,pr:2,praktika:0,praktikum:[0,1,3,4,5,6,7,8,9],praktikumsbetreuung:[0,1,2,3,4,5,7,8,9,10,11],praktikumsumgebung:0,preis:9,previou:6,primari:2,print:3,print_weekdai:1,printer:[7,8],printf:[0,1,2],println:3,privilegien:[7,8],pro:[7,8,9,13],probieren:9,problem:[2,3,9],problematisch:[7,8],problemstellung:[7,8,9],problemstellungen:[7,8],proc:7,proca1:7,proca2:7,proca3:7,proca4:7,proca5:7,proca6:7,proca7:7,proca8_1:7,proca8_2:7,proca8_3:7,proca9:7,process:13,procthread:[7,8],produc:6,programm:[0,1,2,3,4,5,6,8,9,10,11,13],programmausgab:7,programmcod:[0,1,2,3,4,5,7,8,9,10,11],programmen:1,programmfunkt:13,programmi:1,programmieraufgab:0,programmieraufgaben:0,programmierfehl:0,programmierung:[0,1,2,3],programmrahmen:[5,13],prozedur:7,prozess:[9,13],prozessen:[9,13],prozesshierarchi:13,prozesshierarchien:7,prozessraum:7,ps:[7,8],pseudo:3,pseudocod:9,pstree:7,pthread:[7,9],pthread_exit:7,pthread_join:7,puffer:0,puffert:0,punkt:[3,5,6,7,8,10,11],pusher:9,pushern:9,putpid:[7,8],qualit:9,quell:[1,7,9],quit:7,r:6,race:9,radiu:2,rahmen:[4,6,7,8],ran:[4,5],rang:1,rank:3,raster:3,rate:0,raten:9,re:1,re_v2:7,read:3,readint:3,readm:7,reagieren:1,rechner:[0,7,8,13],rechnung:2,recht:2,rechtwinklig:3,record:6,rect:3,rectang:3,rectangl:2,rectangular:3,red:2,redundant:2,refactor:13,refer:6,regardless:2,regel:[1,3],regeln:[1,13],rei:6,reicht:9,reih:[5,9],reihenfolg:[1,7,13],remark:6,remot:2,remov:6,ren:9,replac:[4,5],repositori:[3,4,5,6],ressourcen:[2,9],rest:2,restor:[7,8],result:[6,9,13],resultat:[2,3,7,9],resultaten:9,richtig:7,richtlinien:9,right:2,root:[7,8],rot:1,routin:7,row:[4,5],run:[4,5],s:[1,6,7],same:[3,6],sammlung:[],sampl:3,sat:1,sauber:0,save:[7,8],scan:[4,5],scanf:0,schaffen:2,schafft:9,schaljahr:1,schalten:7,schaltjahr:1,schaltjahrberechnung:1,scheint:2,schickt:[7,8],schlecht:1,schleif:[0,6,7,8,9],schliessen:[7,8,9],schliesslich:[1,3,4,5],schltjahr:[],schluss:[5,7,8,9],schnell:9,schon:[3,6,7,8],schreiben:[0,1,3,5,6,7,8],schreibt:[0,1,7,8],schriftlich:9,schritt:[3,7,8,9,13],schritten:9,schrittweis:[4,5],schrumpfen:6,script:7,section:13,segment:7,sehen:7,sehr:6,sein:[0,1,2,6,7,8,9],seiner:[7,8],sekunden:[7,8],selber:[6,7],selbst:[0,5,6,7],selcount1:9,selcount2:9,selectcpu:7,sem_open:9,sem_post:9,sem_wait:9,sema:9,semaphor:9,semaphoren:9,send:9,sendet:7,sep:1,separaten:2,sequenc:6,seriellen:2,server:[7,8],set:[2,3,4,5],set_stat:[4,5],setcpu:7,setzen:[0,2,7,8,9],sh:[],shape:[2,3],share:[],shell:[3,7,8],shift:2,show:[3,6],sich:[2,3,4,5,6,7,8,9],sicher:[1,9],sichert:[7,8],sicherung:1,sicherzustellen:[7,8],sicht:9,sie:[0,1,2,3,4,5,6,7,8,9,10,11],sieh:[1,3,4,6,7,9],sieht:6,sigabrt:7,sigint:[7,8],signal:[7,8],signatur:1,simple_shap:2,simuliert:7,sind:[0,1,2,3,4,5,6,7,8,9],sinn:9,sinnvol:[1,7,8],situationen:6,size:2,skript:9,sleep:7,snp:[0,3,5,6,7,8,9],so:[0,1,2,3,6,7,9],socket:[7,8],softwareinterrupt:[7,8],sogenannt:9,solang:6,solch:3,solchen:[3,6],soll:[0,1,2,3,5,6,7,8,9],sollen:[1,3,5,6,7],sollt:[2,3,7,8],sollten:[5,7,8],solut:[],somit:[2,4,5],sondern:[0,7,9],sonntag:1,sonst:5,sortieralgorithmu:5,sortieren:13,sortiert:[5,6,7],sortierten:[5,6],sourc:[0,3,9],sourcecod:0,sowi:[0,1],sowohl:9,spalt:[7,9],spec_store_bypass:7,spect:7,spectre_v1:7,speicher:[2,6,7],speichern:0,speichernden:6,speichert:6,speicherung:5,speichervariablen:9,speicherzugriffsverletzung:7,sperrt:[7,8],speziel:[1,7,8,9],spezifisch:6,sphinx:[0,1,2,3,5,6,7,8,9,10,11,12],spiel:[4,5],spielbrett:[4,5],spieler:[4,5],spielern:[4,5],spielzug:[4,5],sport:[7,8],sprach:13,sprachelement:13,spricht:[],sqrt:[],src:[3,4,5,6],sreedev:2,sscanf:1,stack:3,standard:[0,3,5,6],standardausgab:0,start:[2,3,7,8],startapp:9,starten:[7,8,9],startet:[7,8,9],state:[4,5],statisch:6,statischen:6,stdarg:3,stddef:3,stderr:[1,3],stdin:[0,3,4,5],stdio:[0,1,2,3],stdio_lim:3,stdlib:[2,3],stdout:[1,3],stehen:[1,4,5,7,8],steht:6,steigen:9,steigung:[],stein:4,stel:[],stell:0,stellen:[0,1,2,3,6,7,8,9],stellig:1,stelligen:1,stellt:[1,4,5,7,9],steuert:[4,5],steuerung:7,stichwortartig:9,stimmen:[7,8],stimmt:7,stirbt:[7,8],stoppbit:2,stoppen:[7,8],stoppt:9,stream:[1,3],string:[2,3,6,13],strncmp:6,struct:[1,6,13],struktur:6,strukturen:[0,6,9],strukturieren:[3,5],strukturiert:1,stub:[3,4,5],student:[4,5],studieren:[7,8],studierend:[],style:3,subgraph:3,subtrakt:2,suchen:[3,4,5],sudo:3,suedbahn:9,suffix:3,suit:[3,4,5],summari:[4,5],sun:1,svg:[],swapg:7,switchanweisung:[],sy:3,symbol:3,sync:9,synchron:2,synchronis:13,synchronisationsbedingung:9,synchronisationsbedingungen:9,synchronisationsoperationen:9,synchronisationsproblem:13,synchronisationsproblemen:9,synchronisieren:9,synchronisiert:9,sys_errlist:3,system:[3,7,8],systematisch:9,systemen:2,systemfunktionen:[7,8],systemkomponenten:[7,8],systemnah:0,systemzeit:[7,8],t:0,tab2svg:[],tabel:0,tabellenausgab:13,tabulatoren:0,tac:[4,5],tag:1,tage:13,tagen:1,tagepromonat:1,target:3,tast:[7,8],tastatur:[0,5],tatsach:2,tauschen:[9,13],tcp:[7,8],tdd:[4,5],teil:[1,2,3,7,8,9],teilaufgab:[4,13],teilaufgaben:[1,4,5,6],teilbar:1,teilt:[7,8],temp:2,template_rel:[],ten:9,termin:[2,4,5],terminieren:[0,1,4,5,8,13],terminiert:[0,1,8,13],terminierung:7,ternaeren:1,test:[1,3,5,10,11,13],test_model_can_mov:13,test_model_get_st:13,test_model_get_win_lin:13,test_model_get_winn:13,test_model_init:13,test_model_mov:13,testen:[6,7,8,9],teurer:9,text:[1,3,9],textuel:3,thaler:[7,8,9],themen:[1,2],theorieaufgaben:[0,1,2,3,4,7,8,9,10,11],thi:6,thread:[8,9,13],tic:[4,5],tictacto:13,tierten:[],timedaemon:[7,8],timeserv:[7,8],tipp:[1,13],tippen:7,tmp:[7,8],todo:[4,5],toe:[4,5],toggl:2,token:[],tool:3,top:7,total:[4,5],tpng:3,tragen:9,transaktionen:9,transfer:9,transferiert:9,triangl:3,two:6,txt:[7,8],typ:[2,6,7,8],type:[3,4,5],typedef:[1,6,13],typen:[1,3,6,9],types:3,typisch:[7,8],typt:1,ubuntu:0,ueberpruefen:1,ui:7,um:[0,1,2,3,5,6,7,8,9],umfang:7,umgebung:[7,8],umgehen:5,umgesetzt:[4,5,6],uml_limit_num_field:[],uml_look:[],umrechnungsfaktor:0,umsetzen:[0,5],umsetzt:1,umsetzung:[3,13],umwandelt:5,umwelt:[7,8],umzuleiten:[7,8],umzusetzen:2,umzuwandeln:0,un:[1,7],unbedingt:[0,1],unbefugt:2,und:[2,4,8,9,10,11,12,13],unendlich:7,unendlichen:[7,8],unfd:[],unit:[4,5,13],unix:[7,8],unlock:9,unser:1,unsign:[2,6],unten:[2,3,4,5,6],unter:[0,1,6,7,8,9],unterschi:13,unterschied:[3,7],unterschiedlich:2,unterschiedlichen:[5,7],uppercas:13,us:[3,6],usag:1,usr:3,v:3,vagrant:[],valu:6,variabl:[1,3,9,13],variablen:[1,6,9,13],variablennam:1,variant:[1,2,7,8,9],velgast:9,verarbeiten:6,verarbeitung:13,verarbeitungsreihenfolg:9,vererbt:7,verfahren:2,verfolgen:7,vergleich:9,vergleichen:[2,5,7,9],verhalten:[6,7,9],verhindern:[7,8],verhindert:9,verifizieren:7,verkauft:9,verketten:6,verkettet:6,verketteten:6,verkettung:6,verlangen:[7,8],verlassen:7,verletzung:7,verliert:9,verlust:2,verlustfrei:3,vermeiden:2,vermieden:2,vermittl:[4,5],verschachtelungstief:3,verschieden:[0,3,7,9],verschiedenen:[6,9],verschl:2,version:[1,3,4,5,6,7,8,9,10,11],verstehen:7,versuchen:2,versucht:2,vertauschen:2,vertieften:7,vertikalen:4,verwaisten:7,verwaltung:13,verwenden:[0,1,2,5,6,7,9],verwendet:[1,2,7,9,13],verwendeten:[2,3,7],verworfen:6,verzeichni:[3,7,8,9],verzeichniss:[7,8],verzichten:9,verzweigungen:0,via:[1,7],viel:[0,3,6,9],vielen:2,vielzahl:7,vier:[1,6,9],viert:2,view:[4,5],virtuel:13,visualisierung:3,vm:9,vollem:[4,5],vom:[3,6,7,8],von:[0,1,2,4,8,9,13],vor:[1,4,5,7,8,9],vorbei:[4,5],vorbemerkung:7,vorbereitet:9,vorbereiteten:0,vordefiniert:9,vordefinierten:[2,9],vordergrundprozess:[7,8],vorgab:3,vorgaben:[4,5,9,13],vorgeben:[],vorgegeben:1,vorgegebenen:[3,4,5,6,9],vorgehen:9,vorgehensweis:[4,5],vorhanden:[1,3,6],vorherigen:3,vorkommen:6,vorlag:0,vorlesung:7,vorlesungen:5,vorlesungsfolien:0,vorliegenden:9,vorraussetzung:[],vorschlag:6,vorteil:[3,9],wa:[1,3,4,5,7,8,9],wachsen:6,wahl:[4,5,6,7,8,9],wahr:2,waisenkind:13,wait:7,waitpid:7,wall:0,wandeln:2,wann:9,waren:7,warnungen:0,warten:[9,13],wartet:[7,8,9],warum:2,web:3,wechseln:[7,8,9],wechselt:[4,5],weekdai:1,weekday_t:1,weil:[2,7,8,9],weist:0,weiter:[2,3,6,7,8],weiteren:[0,6],weitergehend:6,welch:[0,1,2,3,4,5,6,7,9],welchen:9,welcher:[1,4,5],wenden:[0,6],wenn:[1,3,4,5,6,7,8,9],wer:7,werden:[0,1,2,3,4,5,6,7,8,9,10,11],werkzeug:7,wert:[1,7,9],werten:9,wesentlichen:[6,9],wesentlichst:1,whatsthetimemr:[7,8],where:7,which:[4,5],white:2,wichtig:9,wichtigsten:2,wie:[0,1,2,3,4,5,6,7,8,13],wieder:[0,2,6,7,8,9],wiederherstellen:[7,8],wiederholt:5,wiederum:[7,8,9],wieso:[7,9],wiki:[1,2,9],wikimedia:9,wikipedia:[1,2],wikiwand:7,wir:[0,2,6,7,8,9],wird:[0,1,2,3,4,5,6,7,8,9],wirft:9,wirklich:7,wissen:[1,3,7,9],wissenschaften:2,withdraw:9,wo:[1,4,6,7,8,9],wobei:[1,3,4,5,9],wochentag:13,wochentagsberechnung:1,wohl:9,wollen:[7,8],word:[2,3],wordptr:2,wordsiz:3,work:[],workerutil:7,world:13,worten:2,wovon:6,wurd:[1,6],wurden:[7,8,9],wurzel:6,www:[1,3,7],x1:[],x2:[],x86_64:3,x:7,xkcd:1,xor:2,y1:[],y2:[],y:1,ye:[],year:1,yellow:2,yyyi:1,z:[0,1,2,3,5,6,7,8,9],zahl:[2,6],zahlen:[1,2],zehn:5,zeichen:[1,13],zeichnen:[7,9],zeigen:6,zeiger:[7,8],zeigt:[6,7],zeil:[0,1],zeilen:[1,3],zeilenumbruch:1,zeit:[7,8,9],zeitanfrag:[7,8],zeitintervallen:7,zeitlich:[9,13],zeitlichen:9,zeitpunkt:7,zeman:[7,8],zentral:0,zess:9,zhaw:0,ziel:[7,8],ziffer:[4,5],ziffern:[4,5],zombi:13,zu:[0,1,2,3,4,5,6,9,13],zudem:9,zuerst:[4,5,7,8,9],zugegriffen:[4,9],zugeschrieben:1,zugewiesen:6,zugreifen:[5,7,8,9],zugriff:[4,5,7,13],zugriffsrecht:[7,8],zugriffsverletzung:7,zum:[1,3,5,7,8,9],zumindest:[2,7,8],zur:[0,3,4,5,6,7,8,9],zusammenfassung:13,zusammengefasst:6,zusammengesetzt:2,zusatz:[7,8],zusatzinform:13,zusatzinformationen:13,zusatzvari:2,zustand:[2,7],zuweisen:6,zwar:9,zwecken:3,zwei:[1,2,4,6,7,8,9],zweidimensional:5,zweiergruppen:0,zweit:[1,2,7,8],zweiten:[3,5,9],zwischen:[0,4,5,7,8,9],zwischenspeich:2,zyklisch:6,zzz:5},titles:["01 - Erste Schritte mit C","02: Funktionen, Datentyp \u201cenum\u201d","03 - Bit Operationen, Struct, Typedef","04 - Modularisieren von C Code","05 - SNP: TicTacToe","05 - Arrays/Strings/TicTacToe","06 - Personen Verwaltung \u2013 Linked List","07 - Prozesse und Threads","09/02 - D\u00e4mon Prozesse","08 - Synchronisationsprobleme","09 - File Operations","10 - IPC","SNP - Praktika","SNP Laboratories"],titleterms:{"01":0,"02":[1,8],"03":2,"04":3,"05":[4,5],"06":6,"07":7,"08":9,"09":[8,10],"1":[0,1,2,3,5,6,7,8,9,10,11],"10":[7,11],"2":[0,1,2,3,4,5,6,7,8,9,10,11],"3":[0,1,2,3,4,5,6,7,8,9,10,11],"4":[0,1,2,3,4,5,6,7,8,9,10,11],"5":[0,1,3,4,5,6,7,8,9],"6":[0,3,6,7,9],"7":[0,6,7],"8":7,"9":7,"\u00fcbersicht":[0,1,3,4,5,6,7,8,9,10,11,12],"\u00fcbungen":2,"abh\u00e4ngigkeitsanalys":[],"d\u00e4mon":[7,8],"einf\u00fchrung":9,"enum":1,"erkl\u00e4ren":3,"f\u00fcr":[],"gegen\u00fcb":7,"hinzuf\u00fcgen":3,"l\u00f6st":9,"pr\u00fcfen":[1,2],"w\u00f6rter":0,"z\u00e4hlen":0,"zus\u00e4tzlich":3,ablauf:7,al:7,an:1,analysieren:[3,7],anhang:[1,3],api:6,argument:1,arrai:5,auf:[1,2,7],aufgab:[0,1,3,4,5,6,7,8,9,10,11],aufgaben:[1,7,9],automat:9,bank:9,basi:2,berechnung:1,beschreibung:1,bestehend:6,bestimmen:1,bewertung:[0,1,2,3,4,5,6,7,8,9,10,11],bit:2,c:[0,3,6],code:3,content:4,critic:9,datentyp:1,datum:1,de:[1,7],dep:3,der:9,designvorgaben:6,develop:4,die:1,dies:[7,8],dot:3,doxyfil:[],dritt:2,driven:4,einbinden:[],einfach:[2,9],element:3,elternprozess:7,er:2,ersetzen:7,erst:0,erweitert:9,erweiterung:[],erzeugen:7,exclus:9,exec:7,file:[3,10],file_format:3,filialen:9,fork:7,format:[1,3],formen:2,funktionen:1,halbtot:7,header:[],hello:0,hinweis:1,imag:7,implement:[6,7,8,9],implementierung:6,inhalt:[],intern:9,ipc:11,kaffe:9,kindprozess:7,kindprozessen:7,konto:9,kopi:7,korrekt:1,korrektheit:1,laboratori:13,lernziel:[0,1,3,4,5,6,7,8,9,10,11],link:6,list:6,lower:2,main:6,makefil:3,man:9,maschin:0,mit:[0,7],modul:[],modularisieren:3,modularisierung:6,monat:1,mutual:9,nachwei:[7,8,9],name:3,neue:3,ohn:2,oper:10,operationen:2,option:7,orphan:7,parsen:1,person:6,personen:6,personenverwaltung:6,png:3,potenz:2,praktika:12,pro:1,process:7,programm:7,programmfunkt:6,programmrahmen:6,prozess:[7,8],prozessen:[7,8],prozesshierarchi:7,rechner:2,refactor:9,regeln:3,reihenfolg:9,result:3,schreiben:[],schritt:0,section:9,snp:[4,12,13],sortieren:5,sprach:3,sprachelement:1,string:5,struct:2,synchronis:9,synchronisationsproblem:9,tabellenausgab:0,tage:1,tauschen:2,teilaufgab:[1,5,6],terminieren:7,terminiert:7,test:[4,6],test_model_can_mov:[4,5],test_model_get_st:[4,5],test_model_get_win_lin:[4,5],test_model_get_winn:[4,5],test_model_init:[4,5],test_model_mov:[4,5],thread:7,tictacto:[4,5],tipp:3,typedef:2,umsetzung:1,und:[0,1,3,5,6,7],unit:6,unterschi:7,uppercas:2,variabl:2,variablen:2,verarbeitung:3,verwaltung:6,verwendet:3,virtuel:0,von:[3,5,6,7],vorgaben:1,waisenkind:7,warten:7,wie:9,wochentag:1,world:0,zeichen:0,zeitlich:7,zombi:7,zu:[7,8],zugriff:9,zusammenfassung:9,zusatzinform:[7,8],zusatzinformationen:[7,8]}}) \ No newline at end of file +Search.setIndex({docnames:["P01_Erste_Schritte_mit_C/README","P02_Funktionen_Datentyp_enum/README","P03_Bit_Operation_struct_typedef/README","P04_Modularisieren_von_C_Code/README","P05_TicTacToe/P05_TicTacToe","P05_TicTacToe/README","P06_Personen_Verwaltung_Linked_List/README","P07_Prozesse_und_Threads/README","P07_Prozesse_und_Threads/README_P02","P08_Sync/README","P09_File_Operations/README","P10_IPC/README","README","index"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1,sphinx:56},filenames:["P01_Erste_Schritte_mit_C/README.md","P02_Funktionen_Datentyp_enum/README.md","P03_Bit_Operation_struct_typedef/README.md","P04_Modularisieren_von_C_Code/README.md","P05_TicTacToe/P05_TicTacToe.rst","P05_TicTacToe/README.md","P06_Personen_Verwaltung_Linked_List/README.md","P07_Prozesse_und_Threads/README.md","P07_Prozesse_und_Threads/README_P02.md","P08_Sync/README.md","P09_File_Operations/README.md","P10_IPC/README.md","README.md","index.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":[0,1,2,4,5,6,7,8,9],"00":0,"000":[2,6,9],"0000":[],"00000000":2,"00000011":2,"00001100":2,"00001111":2,"0001":[],"0011":2,"00463":0,"00927":0,"01":[1,6,7,8,13],"0100":2,"011":2,"0111":2,"01390":0,"01854":0,"02":[3,4,5,10,11,13],"02317":0,"02780":0,"02d":1,"02x":2,"03":13,"03244":0,"03707":0,"04":13,"05":13,"06":13,"07":13,"08":13,"09":13,"0b001":2,"0b010":2,"0b100":2,"0x":2,"0x01":[],"0x03":2,"0x0c":2,"0x0f":2,"0x75":2,"1":[4,13],"10":[5,6,9,13],"100":[1,9],"1000":[0,2,9],"10000":1,"1001":2,"100er":1,"101":2,"1011":2,"11":[6,7,8],"110":2,"111":2,"12":[1,2,7],"1200":0,"127":[7,8],"128":9,"13":1,"14":5,"1400":0,"15":[1,2,4],"1582":1,"1599":1,"16":[10,11],"1600":[0,1],"1700":1,"18":9,"1st":6,"2":13,"20":[5,6],"200":0,"2020":1,"2021":9,"2022":[1,3,4,5,6,7,8,10,11],"2048":9,"21":[],"22":3,"266839126":[],"28":1,"29":1,"297":[],"2er":2,"2nd":6,"3":13,"30":[1,7],"31":1,"32":2,"343302707":[],"36":[],"3rd":6,"3x3":[4,5],"4":13,"40":6,"400":[0,1],"42":[],"43158":0,"47":0,"5":[2,13],"6":[1,4,5,13],"600":0,"62":[4,5],"64":3,"65534":[7,8],"7":[1,2,3,13],"8":[2,13],"800":0,"9":[1,4,5,13],"9999":1,"\u00e4hnlich":7,"\u00e4hnlichen":3,"\u00e4ltere":2,"\u00e4ndern":7,"\u00e4nderungen":3,"\u00f6ffentlichen":3,"\u00f6ffnen":[7,8,9],"\u00fcben":3,"\u00fcber":[3,4,5,7,8,9],"\u00fcberblick":9,"\u00fcberf\u00fchrt":2,"\u00fcberfl\u00fcssig":2,"\u00fcbergeben":1,"\u00fcbergebenen":3,"\u00fcberlagerungen":2,"\u00fcberlassen":6,"\u00fcberlegen":[2,7,8],"\u00fcberlegt":7,"\u00fcberlegungen":[7,8],"\u00fcbernehmen":1,"\u00fcbernommen":[3,7,8,9],"\u00fcberpr\u00fcfen":[7,9],"\u00fcberpr\u00fcft":[1,6,9],"\u00fcberpr\u00fcfung":6,"\u00fcbersetz":3,"\u00fcbersetzen":[3,7,8,9],"\u00fcbersetzt":[0,3],"\u00fcbersetzung":3,"\u00fcbersicht":13,"\u00fcbersichtlich":7,"\u00fcbertragen":9,"\u00fcbertragungsfehl":2,"\u00fcberwachung":[7,8],"\u00fcberweisung":9,"\u00fcbrigen":[4,5],"\u00fcbungen":13,"abh\u00e4ngig":9,"abh\u00e4ngigkeit":[3,9],"abh\u00e4ngigkeiten":[3,4,5],"abh\u00e4ngigkeitsanalys":[],"abk\u00fcrzungen":1,"abl\u00e4uf":9,"abl\u00e4uft":[7,8],"abst\u00fcrzt":[7,8],"aktivit\u00e4ten":9,"allf\u00e4llig":0,"allgegenw\u00e4rtig":2,"aufh\u00e4lt":[7,8],"ausf\u00fchrbar":0,"ausf\u00fchrbaren":0,"ausf\u00fchren":[0,3,4,5,7,8],"ausf\u00fchrt":1,"ausf\u00fchrung":[7,8,9],"ausf\u00fchrungsschritt":9,"ausf\u00fchrungszeit":6,"ausgef\u00fchrt":[1,4,5,7,8,9],"ausgel\u00f6st":6,"ausgew\u00e4hlt":[7,9],"ben\u00f6tigen":[0,7,8,9],"ben\u00f6tigt":[7,8,9],"ben\u00f6tigten":[0,7,9],"ber\u00fccksichtigt":[1,6],"bereichs\u00fcberpr\u00fcfung":1,"bereichspr\u00fcfung":1,"besch\u00e4ftigen":[7,8],"besch\u00e4ftigt":9,"betr\u00e4g":9,"betr\u00e4gen":[0,9],"bew\u00e4hrt":9,"boolean":3,"byte":3,"case":[2,6],"char":[0,1,2,5,6],"class":3,"const":6,"d\u00e4mon":13,"d\u00e4monen":[7,8],"d\u00fcrfen":9,"daf\u00fcr":[1,7,8,9],"daten\u00fcbermittlung":2,"daten\u00fcbertragung":2,"daten\u00fcbertragungen":2,"default":[],"dr\u00fccken":[7,8],"dr\u00fcckt":9,"druckerd\u00e4monen":[7,8],"durchf\u00fchren":[7,8],"eigenst\u00e4ndig":9,"einf\u00fcgen":6,"einf\u00fchrung":13,"eingef\u00fcgt":6,"eingef\u00fchrt":9,"eintr\u00e4g":[0,1,3],"eintr\u00e4gen":6,"einzuf\u00fcgend":6,"endger\u00e4ten":2,"enth\u00e4lt":[0,9],"enum":[2,13],"erf\u00fcllen":[1,9],"erf\u00fcllt":9,"erg\u00e4nzen":[1,3,5,6,9],"erg\u00e4nzend":[3,4,5],"erg\u00e4nzt":[1,2,6],"erg\u00e4nzungen":3,"erh\u00e4lt":[7,8],"erh\u00f6":9,"erh\u00f6hen":1,"erkl\u00e4ren":[1,2,4,5,6,7,8,9,10,11,13],"erkl\u00e4rt":[0,1,2,3,4,5,7,8,9,10,11],"erl\u00e4sst":9,"erm\u00f6glicht":1,"erw\u00e4hnt":[7,8],"f\u00e4llen":7,"f\u00e4llt":[7,8,9],"f\u00fcgen":[3,6],"f\u00fchren":[3,4,5],"f\u00fchrt":6,"f\u00fcr":[0,1,2,3,4,5,6,7,8,9,12],"fehlschl\u00e4gt":[4,5],"float":3,"function":[],"funktionalit\u00e4t":[3,4,5,9],"g\u00fclteigen":1,"g\u00fcltig":1,"g\u00fcltige":1,"g\u00fcltigkeit":1,"ge\u00e4ndert":2,"ge\u00f6ffnet":7,"gef\u00fchrt":[4,5],"gegen\u00fcb":13,"geh\u00f6ren":2,"gel\u00e4ufigen":1,"gel\u00f6scht":[6,7,8],"gel\u00f6st":9,"geldbetr\u00e4g":9,"gem\u00e4ss":[3,4,5,6],"ger\u00fcst":[1,3,4,5,6],"getr\u00e4nk":9,"gew\u00e4hlt":[4,5,7,8,9],"gew\u00fcnsch":9,"gew\u00fcnschten":9,"gr\u00f6sser":[1,6],"gr\u00fcnde":9,"gr\u00fcnden":9,"grundverst\u00e4ndni":7,"herausgel\u00f6st":6,"herauszul\u00f6senden":6,"hinzuf\u00fcgen":13,"hinzugef\u00fcgt":6,"int":[1,2,3,4,5,6],"integrit\u00e4t":2,"k\u00f6nn":9,"k\u00f6nnen":[0,1,2,3,4,5,6,7,8,9,10,11],"k\u00f6nnte":[6,7,8,9],"k\u00f6nnten":[2,7],"k\u00fcmmern":3,"k\u00fcrzerer":2,"k\u00fcrzungen":1,"komplexit\u00e4t":2,"l\u00e4ndern":9,"l\u00e4nge":[1,5],"l\u00e4sst":9,"l\u00e4uft":[7,8],"l\u00f6sbare":2,"l\u00f6schen":2,"l\u00f6schenden":6,"l\u00f6sen":[2,9],"l\u00f6st":13,"l\u00f6sung":9,"l\u00f6sungen":[0,1,2,3,4,5,7,8,9,10,11],"l\u00f6sungsans\u00e4tz":0,"lauff\u00e4hig":[1,2],"long":3,"m\u00e4chtige":3,"m\u00f6glich":[1,2,3,7,8,9],"m\u00f6glicherweis":1,"m\u00f6glichkeit":7,"m\u00f6glichkeiten":3,"m\u00f6glichst":[2,9],"m\u00fcndlich":[0,1,2,3,4,5,7,8,9,10,11],"m\u00fcnze":9,"m\u00fcnzen":9,"m\u00fcssen":[0,1,2,3,4,5,6,7,8,9,10,11],"monatsl\u00e4ng":1,"n\u00e4chste":9,"n\u00e4chsten":[6,9],"n\u00e4mlich":1,"n\u00f6tig":[2,6],"n\u00f6tigen":2,"n\u00fctzlich":[2,7],"nat\u00fcrlich":5,"new":[3,4,5],"null":[6,7,8,9],"parit\u00e4tsbit":2,"popul\u00e4r":6,"pr\u00fcfen":[3,13],"pr\u00fcfend":6,"pr\u00fcfsummen":2,"pr\u00fcft":[1,4,5],"pr\u00fcfung":1,"pr\u00fcfungen":6,"prozessr\u00e4um":7,"public":3,"r\u00fcckg\u00e4ngig":2,"r\u00fcckgabewert":1,"repr\u00e4sent":3,"repr\u00e4sentiert":3,"return":[0,1,2,4,5,6],"s\u00e4mtlich":[7,8,9],"sch\u00fctzen":9,"seitengr\u00f6ss":2,"selbst\u00e4ndig":0,"short":[],"sicherheitsgr\u00fcnden":9,"sp\u00e4ter":[1,3],"st\u00fccke":9,"static":[3,4,5],"switch":[],"tats\u00e4chlich":3,"tempor\u00e4ren":2,"throw":3,"true":3,"umst\u00e4nden":7,"umst\u00e4ndlich":6,"unabh\u00e4ngig":[7,8],"ung\u00fclti":1,"ung\u00fcltig":1,"ung\u00fcltigen":1,"unterst\u00fctzten":2,"unver\u00e4ndert":[1,2,4,5],"ver\u00e4ndert":9,"verf\u00fcgbar":[3,4,5,6],"verf\u00fcgung":[0,6,7,8,9],"verfollst\u00e4ndigen":2,"verh\u00e4ltniss":[7,8,9],"verkn\u00fcpfung":2,"verst\u00e4ndni":7,"vervollst\u00e4ndigen":2,"void":[0,1,3,4,5],"vollst\u00e4ndig":[3,6,7,8,9],"vorg\u00e4ngerknoten":6,"w\u00e4hlen":[0,9],"w\u00e4hrend":[6,7,8],"w\u00e4re":[2,6,9],"w\u00f6rter":[5,13],"w\u00fcrde":3,"w\u00fcrden":9,"weiterf\u00fchrend":[1,7,8],"while":[0,2,7],"widerstandsf\u00e4hig":2,"wortzwischenr\u00e4um":0,"z\u00e4hlen":13,"z\u00e4hler":9,"z\u00e4hlt":0,"zerst\u00fcckelt":[],"zuf\u00e4llig":9,"zugef\u00fcgt":6,"zugeh\u00f6rigen":3,"zur\u00fcck":[0,1,2,7,8],"zur\u00fcckgeben":1,"zur\u00fcckgegeben":0,"zur\u00fcckgesetzt":9,"zur\u00fcckliefern":1,"zus\u00e4tzlich":[2,6,7,13],"zus\u00e4tzlichen":9,"zust\u00e4nd":7,A:[3,4,5,7,8],AND:2,Be:9,IN:[4,5,6],In:[0,1,3,4,5,6,7,8,9],NO:[],OR:2,TO:[4,5],The:[4,5],_:2,__file:3,__mbstate_t:3,_g_config:3,a1:9,a2:9,a3:9,a4tsbit:2,aa:1,aaaa:7,ab:[1,7,8,9],abbild:7,abbildung:[6,9],abbrechen:[7,8],aber:[2,6,7,8,9],abfragen:[1,7,8],abgebildet:6,abgefragt:7,abgelegt:[7,9],abgeschlossen:0,abgewandelt:[1,7,8,9],abheben:9,abhilf:9,ablauf:[9,13],ablaufbedingungen:9,ablaufen:[7,9],ablaufgraph:9,ablaufgraphen:9,ablegt:5,abnahm:[1,4,5],abort:7,abschnitt:[7,8,9],absend:[7,8],abspeichert:6,abstraktionen:7,absturz:7,abwechselnd:4,accept:[7,8],access:[4,5],account:9,achtung:9,acntlock:9,activ:3,add:[1,4,5],addit:[1,3],adress:[1,6],adressen:6,advancedsequ:9,affect:[4,5],ag:6,ajx:[7,8],aktion:6,aktionen:[7,8,9],aktiv:[7,8],aktiven:[7,8],aktuel:[7,8],aktuellen:[7,8],akzeptiert:2,al:[0,1,2,3,4,5,6,8,9,13],algorithmu:2,all:[0,1,2,3,4,5,6,7,8,9],allen:3,aller:6,allozieren:6,alloziert:[6,9],allozierung:2,alphabetisch:[5,6],also:[1,2,6,7],alter:6,alternativ:6,am:[1,3,4,6,7,8,9],ampel1:1,ampeln:1,an:[0,2,3,6,7,8,9,13],analog:[4,5],analys:[7,8],analysieren:[8,9,13],analysiert:9,anchor:6,ander:[2,3,6,7],anderem:[2,9],anderen:[1,5,6,9],andererseit:[7,8],andern:3,andreren:1,anfang:[2,7,8],anforderungen:9,anfrag:[7,8],anfragen:[7,8],angaben:5,angebracht:6,angegeben:[1,2,3,4,6],angegebenen:3,angekommen:[7,8],angelehnt:1,angemessen:1,angenom:1,angenommen:[1,6],angepasst:[7,8,9],angezeigt:[2,7],anhand:[4,5,6],anhang:13,ani:2,anker:6,anleitung:[0,4,5],anmerkung:[7,8],annahm:[],annehmen:9,anordnet:3,anordnung:3,anpassen:[7,8],anschli:9,anschliessend:9,ansonsten:[1,6],ansprechenden:3,anstel:[6,7,8],antwort:[7,8,9],anweisung:[],anwend:[6,7,8],anwenden:[0,6,9],anwendung:2,anyoutput:7,anzahl:[0,1,9],anzugeben:3,anzupassen:5,anzuwenden:[1,3],api:13,apr:1,apt:3,ar:6,arbeiten:[0,2,7,8,9],arbeitet:6,arbeitsumgebung:12,arbeitsumgebung_f:0,arbeitsverzeichni:[7,8],architektur:[4,5],arg:3,argc:1,argument:[3,7,13],argumenten:1,argv:1,arithmetik:1,arno:6,arrai:[1,2,4,6,9,13],art:[2,6,7,8],aspekt:1,assert:[1,4,5],assert_po:[4,5],asynchronen:2,atoi:1,atomar:9,attribut:2,attributen:2,au:[0,1,2,3,4,5,6,7,8,9],auch:[1,2,3,4,5,6,7,8,9],auf:[0,3,4,5,6,8,9,13],aufdatiert:7,aufenthaltsort:[7,8],aufgab:[2,13],aufgaben:[6,8,12,13],aufgefordert:6,aufgelistet:7,aufgelisteten:6,aufgeru:1,aufgerufen:[1,4,5,6],aufgeteilt:2,auflisten:[7,8],auflistet:3,aufruf:[6,7,8],aufrufen:[0,1,6,9],aufrufendem:1,aufrufenden:1,aufruft:[1,7],aufsparen:7,auftreten:9,aufweist:6,aufzeichnen:9,aufzurufen:1,aufzuteilen:3,aug:1,ausdrucken:[7,8],ausgab:[0,1,2,3,5,7,8,9],ausgaben:0,ausgeben:[0,1,5,7,9],ausgegeben:[1,3,6,7,9],ausgehend:[6,7],ausgibt:[0,1,5,7,9],auskommentiert:9,auskommt:2,auslastung:7,ausloggen:[7,8],ausnahm:1,ausnahmen:1,aussag:9,ausschluss:9,aussehen:2,ausser:[7,9],aussieht:7,auswahl:[6,7],auswahlen:2,auszug:2,auszugeben:0,auto:9,automat:13,automaten:9,automatisch:[3,7,8],automatisierten:3,autor:9,autoren:[7,8],b:[0,1,2,3,4,5,6,7,8,9],bank:13,bash:[3,4,7],basi:[3,7,8,9,13],basicsequ:9,basierend:6,basiert:1,basierten:9,baum:7,bb:1,bcfsumm:2,bcr_die_praktika:0,bcsselung:2,beachten:[1,6,7],bearbeiten:9,bearbeitung:6,bedarf:[0,1],bedeutet:[1,6],bedingungen:[1,6],beeinflussen:9,beendet:6,beendigung:5,befehl:[7,8],begin:[1,4,5],beginnen:[0,2],beginnend:[],begrenzten:2,behandelt:[7,8],behandlung:1,bei:[0,1,2,3,4,5,6,7,8,9],beid:2,beiden:[4,5,6,7,8,9],beider:1,beiliegend:2,beim:[0,6,7,8,9],beinhalten:1,beispiel:[1,2,3,7,8,9],bekannt:[6,7,8],bekommen:2,beliebig:[2,6,7,8],beliebigen:[0,1],bemerkung:2,benennen:7,benutz:6,benutzen:[0,1,6],benutzt:[4,5,9],beobachten:7,beobachtungen:[7,8],berechnen:1,berechnet:[1,2],berechnung:[2,13],bereich:1,bereit:[3,5,9],besagt:[3,4,5],beschreiben:9,beschreibung:[3,4,5,6,13],beschreibungen:[7,8,9,12],beschrieben:[3,7],besetzt:4,besitzen:[7,8],besitzt:[1,9],besond:2,besser:[1,9],bestandteil:1,bestehen:6,bestehend:[3,5,13],bestehenden:[6,7],besteht:[1,3,4,5,6,7,8],besten:1,bestimmen:[2,13],bestimmt:2,betrag:9,betrieb:[7,8],betriebssystem:[0,7,8],bevor:0,bewertung:13,bewirkt:7,bezeichneten:1,beziehen:9,beziehung:9,beziehungen:9,bezug:3,bi:[0,1,2,4,5,6,7,9],bibliothek:[2,9],bieten:6,bietet:[3,7],bild:1,bilden:1,bildet:6,bildschirm:[7,8],bin:[2,3,4,5,7,8],bin_calcul:2,bisher:6,bit:[3,13],bitcoin:0,bitfeld:2,bitmust:2,bitweis:[],black:[2,3],bleiben:2,bleibt:6,blob:0,block:2,blue:2,board:[4,5],bodi:3,bosshard:6,box:3,branchlock:9,brett:[4,5],bricht:[7,8],brief:[4,5,6],bsy:[7,8,9],btc:0,buchen:9,buchstaben:[2,6,7],buffer:3,buffers:3,bug:7,bzw:[2,7,8,9],c3:[0,2],c:[1,2,4,5,7,8,9,13],ca8_2:7,ca:[7,8],calculate_weekdai:1,call_graph:[],caller_graph:[],carl:1,cat:7,cc:1,cd:9,cdata:9,cdef:3,cess:[7,8],ch:0,charact:0,chef:9,chf:0,childproca2:7,childproca7:7,chmod:7,clean:3,clear:[2,6],cluster_c0:3,cluster_c1:3,code:[0,1,2,4,5,6,7,9,13],codezeil:1,codierung:7,coffe:9,coffeetel:9,coin:9,coincount:9,col:[4,5],color:[2,3],com:[1,7],command:[1,3,7],committ:9,common:[3,9],commondef:9,commun:7,compar:6,comparison:6,compil:[0,3],comput:2,condit:9,content:6,control:[4,5],convers:0,convert:2,copyright:1,core:7,count:9,cpu:[7,9],cpu_meltdown:7,cpuinfo:7,critic:13,ctrl:[7,8],cu_assert_:6,cu_assert_equal_fat:[4,5],cunit:6,current:2,custom:9,cyan:2,d:[1,2,3,5,6,7,8,9],da:[0,1,2,3,4,5,6,7,8,9,10,11],dabei:[2,4,5,6,9],daemon:[7,8],daemonen:[7,8],daemonisierung:[7,8],daemonprogramm:[7,8],dai:1,damit:[1,2,7,8,9],danach:[0,2,4,5,7],dann:[0,1,3,6,7,8,9],dar:[1,4,5,7],daran:2,darau:7,darauf:1,darf:[1,6,7,8,9],dargestellt:[2,3,7],darin:[4,5],darstel:3,darstellen:[2,3],darstellt:[4,5],darstellung:[2,3,4,5,7],darstellungen:3,darum:[],darzustellen:[2,7],dass:[1,2,3,4,5,6,7,8,9],data:3,date:1,date_t:1,datei:[0,3,4,5,7,8],dateien:[7,8],dateierzeugungsmask:[7,8],dateizugriffsrecht:[7,8],daten:[0,1,2,3,6,7,9],datenflusssteuerung:2,datenkommunik:[7,8],datenkompress:2,datennetz:2,datensatz:6,datenstruktur:[2,6,9],datenstrukturen:6,datenstukturen:[],datentyp:[2,13],datentypen:1,datenwert:9,datum:13,dauernd:9,davon:1,dazu:[1,2,3,6,7,8,9],dd:1,ddd:1,de:[0,2,3,4,5,6,8,9,13],deadlock:9,dealloziert:9,debugg:7,dec:[1,2],deep:3,defin:[0,2,3,6],definieren:[0,1,3,6,9],definierend:1,definiert:[1,2,3,6,9],definiertem:2,definierten:2,definit:[1,2],definitionen:6,defunct:7,deklarationen:[],deklarieren:[1,3,6],dem:[0,1,2,4,5,6,7,8,9],demonstrieren:[1,2,3,4,5,6,10,11],demontiert:[7,8],den:[0,1,2,3,4,5,6,7,8,9],denen:[0,2],denjenigen:7,denken:2,denn:6,dep2dot:3,dep:13,depend:3,depfil:3,deposit:9,der:[0,1,2,3,4,5,6,7,8,10,11,12,13],deren:[1,3,6,9],derselb:6,derselben:2,deshalb:[3,6,7,8],designvorgaben:13,desktop:2,dessen:[1,2,6],detail:[1,6,7],develop:5,dez:1,dezemb:1,dezim:2,di:[0,2,3,4,5,6,7],diagonalen:4,diagramm:[],die:[0,2,3,4,5,6,7,8,9,10,11,12,13],dienen:2,dient:3,dies:[0,1,3,4,5,6,9,13],dieselb:3,diesem:[0,1,3,4,5,6,7,8,9],diesen:5,dieser:[3,6,7,8,9],diesmal:9,digraph:3,dir:3,directory_graph:[],direkt:[1,2,5,6,7,8],diskutieren:[0,7],displai:[],disziplinen:2,doc:0,dokument:3,dokumentieren:9,dollar:9,donnerstag:1,doppelt:6,dort:[7,8],dot:13,dot_image_format:[],dot_path:[],dotfile_dir:[],doubl:[0,3],doxyfil:[],dport:[7,8],drei:[1,2,3,9],dreieck:3,dritt:13,dritten:9,driven:5,drucker:[7,8],dump:7,duplikat:6,durch:[1,2,3,4,5,6,7,9],durchlau:4,durchlaufen:[3,4,5,7],dynamisch:[6,7],dynamischen:6,e:[6,7,8,9],each:3,ebenfal:[1,9],echo:7,editor:0,effizient:9,effizienten:5,effizientest:2,eien:1,eigen:9,eigenen:[5,7,9],eigenschaft:[7,8],eigenschaften:7,eigentlich:[4,5,7,8],ein:[0,1,2,3,4,5,6,7,8,9],einbinden:[0,3],einblick:7,einbuchen:9,eindeutig:1,eindeutigen:1,einem:[0,1,2,3,4,5,6,7,8,9],einen:[0,1,2,4,5,6,7,8,9],einer:[0,1,2,4,5,6,7,8,9],einfach:[0,3,5,6,7,13],einfachen:9,einfachheit:[7,8],eingab:[0,1,2,3,4,5,6,9],eingabeform:2,eingaben:6,eingabeschleif:6,eingeben:[2,7,8],eingebunden:[],eingegeben:[1,5,6,9],eingegebenen:0,eingehalten:9,eingehen:[7,8],einheiten:9,einig:[0,7,8],einleitung:[7,8],einlesen:[1,5],einliest:[0,5],einloggen:[7,8],einmal:[6,7,8],einstiegspunkt:6,eintreffen:[7,8],einwerfen:9,einzeln:[0,7,9],einzelnen:[2,3,6,9],einzig:[3,6],einzigen:2,einzu:6,einzugeben:6,einzulesen:0,element:[6,13],elementen:1,els:0,eltern:7,elternprozess:[8,13],emov:6,end:[2,3,4,5,6],endet:6,endlo:9,endung:[0,3],englisch:[7,8],englischen:1,ent:1,enter:0,entfernen:[2,6,7,8],entfernt:6,entgegeben:1,entgegen:1,entgegennimmt:1,enthalten:7,entscheiden:3,entsprechend:[0,3,6,7,8,9],entsprechenden:[3,6,7,8,9],entspricht:5,entstehen:[6,9],entstehend:7,entwed:[0,6,9],entwickeln:5,entwicklungsteam:9,env:0,eof:3,equal:[4,5],er:[7,8,9,13],erbt:[7,8],erfahren:7,erfinden:5,erfolgen:[2,5],erfolgreich:[1,3,4,5,6],erfolgreichen:1,erforderlich:9,erfragen:7,erhalten:7,erkannt:[1,2],erkennbar:6,erkennen:6,erkennung:6,erledigen:[7,8],ermitteln:9,erneut:[7,8],erreichen:[5,6],erreicht:[6,7,8],error:[3,7],erscheint:9,ersetzen:13,ersetzt:3,ersichtlich:[7,8],erst:[1,2,3,4,5,6,7,13],erstellen:[0,3,9],erstellt:[],erstellten:3,erstem:7,ersten:[0,1,3,4,5,9],erwarten:7,erwartet:6,erweitern:[1,2,3,4,5,6,9],erweitert:13,erweiterten:9,erweiterung:[],erzeugen:13,erzeugt:[0,6,7,8],erzeugten:7,erzeugung:7,erzwingen:9,erzwingt:7,erzwungen:9,es:[1,2,3,4,5,6,7,8,9],etc:[1,7,8,9],etlich:6,etwa:2,euro:9,ev:[7,8],exclus:13,exec:13,execl:7,existieren:[4,5,6],existiert:6,exit:[1,7],exit_failur:1,exit_success:[1,2],exklusiv:9,experimenti:[7,8],experimentieren:7,express:[],extra:2,f:7,fail:[4,5],fall:[1,2,6,7,8,9],fals:3,falsch:[2,7],farbinformationen:2,featur:3,feb:1,februar:1,fehleingaben:1,fehlenden:[1,2,4,5],fehler:[1,2,4,5,6],fehlerbehandlung:6,fehlerfal:6,fehlerhaft:6,fehlermeldung:[7,8,9],fehlermeldungen:9,fehlschlagen:[4,5],feld:[4,5],felder:[2,4],fen:[1,4],fenster:[7,8],ferner:5,fest:[7,8,9],festgestellt:9,feststellen:[7,8],festzustellen:7,fget:1,field:[4,5,6],file:[0,4,5,6,7,8,9,13],filepath:[7,8],filial:9,filialen:13,fill:3,finden:[0,1,2,7,8,9],firefox:3,firewal:[7,8],first:[4,5],first_nam:6,flag:2,flippen:2,floatn:3,foku:1,fol:1,folgen:0,folgend:[1,2,3,4,5,6,7,8],folgendem:[6,7,8],folgenden:[1,2,3,4,5,6,7,9],folgt:[2,4,5],fordern:9,forderung:9,fork:13,form:[2,3],format:13,formaten:[],formatiert:[0,3],formatierten:1,formatstr:1,formel:1,formen:13,fprintf:[1,3],fragen:[7,8,9],framework:0,franken:0,frei:9,freigab:9,freigaben:9,freigeben:6,freigegeben:[6,7,8],friedrich:1,funktion:[0,1,2,4,5,7,9],funktionen:[0,3,4,5,6,7,9,13],funktionieren:[4,5],funktionierend:[0,1,2,3,4,5,6,7,8,9,10,11],funktionierenden:[4,5],funktioniert:2,funktionsaufruf:7,funktionsdefinit:1,funktionsdeklar:1,funktionsdeklarationen:6,g:3,ganz:[],gauss:1,gcc:[0,2,3],gdb:7,geben:[1,6,7,9],gebildet:3,gebraucht:2,gedacht:[7,8],geeignet:5,gefolgt:7,gefordert:[4,5],geforderten:1,gefragten:2,gefunden:6,gegeben:[1,2,3,4,5],gegebenen:[1,3,6,7],gegebenenfal:[0,1,2,3,4,6,7,8,9,10,11],gegen:2,gegensatz:9,gegenseitig:9,gehen:[4,5,6,9],geht:[],gelb:1,geld:9,gelder:9,gelernt:9,gelernten:6,gelesen:[0,7],gelesenen:[1,3],gelingt:7,gelten:3,gemacht:7,gemeinsam:9,gemeinsamen:9,gemeldet:6,gemounteten:[7,8],genannt:[6,7,8,9],genau:6,gend:1,generieren:3,generierten:3,georg:1,ger:1,gesamt:6,gesamtbilanz:9,gesamten:[6,7],geschehen:[7,8],geschickt:7,geschieht:[7,8],geschrieben:[3,7],gesetzt:[7,8,9],gesorgt:[7,8],gespeichert:[1,2,6],gespeicherten:6,gespielt:[4,5],gestartet:[1,7,8,9],gestellt:9,gestellten:[0,1,2,3,4,7,8,9,10,11],gesteuert:[2,9],gesucht:6,get_length:[],get_month_length:1,get_slop:[],get_stat:[4,5],getchar:0,getint:3,gewicht:[1,2,4,9],gewinn:[4,5],gewinnt:4,gewissen:7,gezeigt:[0,1,2,3,4,5,7,8,9,10,11],gibintwert:1,gibt:[0,1,2,3,7,8,9],gif:3,git:[3,4,5,6],github:0,given:[4,5],glaeser:1,gleich:[0,1,6,7,9],gleichen:[7,8],gleichzeitig:[7,8,9],gnu:[0,3,7],grad:2,grafik:2,grafikprotokollen:2,grafisch:3,grafischen:3,graphen:3,graphic:2,graphical_hierarchi:[],graphik:3,graphisch:3,graphischen:3,graphviz:3,greater:6,green:2,gregorianisch:1,gregorianischen:1,gregorianischer_kalend:1,greifen:9,grep:[7,8],gross:[2,9],grossbuchstaben:[3,5],grossteil:3,gruen:1,grund:[0,5],grundlagen:[2,9],grundlegend:9,grundlegenden:9,guard:[3,6],gui:2,gute:[6,7],h:[0,1,2,3,4,5,6,7,8,9],haben:[0,3,7,8,9],halber:[7,8],halbtot:13,hallo:[7,8],hand:7,handel:9,handelt:6,handgriff:3,hard_work:7,hat:[1,2,3,4,5,7,8],hauptprogram:7,hauptprogramm:[1,6,7,8],hauptschleif:6,header:[3,6],heap:6,heben:9,hello:13,hen:9,henfolg:6,her:[3,6,9],herausfordern:4,herum:6,herunterfahren:[7,8],heruntergefahren:[7,8],hervorhebung:2,hex:2,hexadezim:2,hier:[0,1,2,3,4,5,7,8,9],hierbei:5,hilf:9,hilfetext:1,hilfreich:1,hilfsfunkt:1,hilfsfunktionen:[1,6,7,8],hin:[0,9],hingegen:9,hintereinand:[7,9],hintergrundprozess:[7,8],hinterlegt:[7,8],hinwei:[7,8,9],hinweis:[5,13],hinzu:6,hold:[4,5],home:[],horizontalen:4,how:[3,6],html:[],htop:7,http:[0,1,2,3,7,9],huno:[],i:[6,7,8],ibc:9,ibt:9,ich:[7,8,9],id:[0,7,8],ide:6,identifizieren:9,ignorieren:[7,8],ignoriert:[5,6],ihnen:[0,6,7,8,9],ihr:[0,7,8,9],ihrem:[0,7,8,9],ihren:[0,2,7,8],ihrer:[7,8],im:[0,1,3,4,5,6,7,8,9],imag:13,immer:[1,2,9],impl:9,implemen:1,implement:[3,4,5,13],implementationen:9,implementationsfil:6,implementieren:[1,3,4,5,6,9],implementiert:[4,5,7,8,9],implementierten:[],implementierung:[1,13],inact:[4,5],inclu:[],includ:[0,1,2,3,5,6],include_graph:[],included_by_graph:[],indem:[0,2,3,6,7,8],indent:3,index:[],individuel:6,ineffizi:6,info:[7,8],inform:[2,7],informationen:[2,7,8],informationssystemen:2,inhalt:[3,7,8],init_model:[4,5],initialisiert:9,initialisierung:9,inklus:[1,3,4,5,6,10,11],inkrementel:3,inkrementiert:9,innerhalb:9,inout:[4,5],input:[0,3,7,8],ins:[3,9],insert:6,inspir:3,instal:3,installationsanleitung:0,installieren:0,installiert:3,instanc:[4,5],instruct:[4,5],intakt:6,integ:[1,2],integriert:3,inter:7,interactive_svg:[],interakt:[7,8],interess:2,interessiert:1,intern:[4,5,13],io:3,ioexcept:3,ip:[7,8],ipc:[7,13],iptabl:[7,8],irgendein:9,is_gregorian_d:1,is_leap_year:1,is_valid_d:1,isoliert:6,ist:[0,1,2,3,4,5,6,7,8,9],istschaltjahr:1,itlb_multihit:7,j:[7,8],ja:[1,7,8],jahr:[1,6],jahreszahl:1,jahrhundert:1,jan:1,januar:1,java:3,javac:3,je:[2,3,6],jede:[1,2,9],jeden:[1,7,9],jeder:[6,9],jederzeit:[7,8,9],jedoch:[1,9],jemand:2,jemanden:4,jene:3,jeweil:[5,6],jeweiligen:[7,9],jpg:9,jul:1,jun:1,justwork:7,kaffe:13,kaffeekauf:9,kaffeesort:9,kaffeewahlen:9,kaffeewahltasten:9,kalend:1,kann:[1,2,3,4,5,6,7,8,9],kanten:3,kauf:9,kehrt:0,kein:[1,6,7,8,9],kennen:[3,5,6,7,9],kennenlernen:[7,8],kennt:3,kett:6,kill:7,killal:[7,8],kind:7,kindern:7,kindprogramm:7,kindprozess:13,kindprozessen:13,klein:0,kleinbuchstaben:2,kleiner:[1,2,6],knoten:[3,6],kolleg:9,kollegen:[7,8,9],kombin:1,kommando:1,kommandozeil:0,kommandozeilen:[7,8],kommen:[3,7],kommentar:[1,7,8],kommentieren:7,kommt:[2,3,7,9],kommunik:[2,7,8],kommunizieren:[7,8],kompil:3,kompilieren:[0,2],kompiliert:[2,3],kompilierzeit:6,komplett:[0,6],kompletten:0,komplex:3,komplexer:[2,9],komponenten:[7,8],komprimiert:3,konfigurationsdateien:[],konsist:9,konsistent:9,konsolen:[7,8],konstanten:1,konstrukt:2,kontakt:[7,8],konten:9,kontenzugriff:9,kontenzugriffen:9,kontext:1,kontinuierlich:2,konto:13,kontostand:9,kontrollstrukturen:0,kontrolltermin:[7,8],konzentrieren:[4,5],konzept:2,koordin:[],koordinaten:[],koordinatensystem:[],koordiniert:9,kopi:13,kopieren:9,korrekt:[2,3,9,13],korrekten:9,korrektheit:13,korrigieren:[4,5],korrigiert:2,kostet:9,kostspielig:2,krei:6,kreieren:[6,7,8],kriterium:[1,2,3,4,5,6,7,8,9,10,11],kryptographi:2,kund:9,kunden:9,kur:0,kurz:[7,8],l1tf:7,l:[],lab:[0,3,4,5,6],label:3,lang:6,langsamen:2,lassen:2,lauf:7,laufen:[4,5,6],laufzeit:[6,9],laufzeiten:9,leak:6,lear:6,lebt:[7,8],lediglich:[7,8],leer:[0,6],leerzeichen:0,left:2,legen:4,lehnen:3,leicht:[7,8,9],leiten:7,len:1,lernen:[1,3,4,5,7,9],lernziel:13,lesbar:1,lesbarkeit:1,lesen:[0,1,2,7,8],letzt:[1,6],letzten:1,lib:3,libc:3,libio:3,librari:[0,5,6],liegen:[3,9],liest:[3,4,5,9],lightgrei:3,line:[1,3,7],lini:4,linien:[],link:13,linux:[0,3,7],list:[3,7,9,13],list_clear:6,list_insert:6,list_remov:6,listen:3,lm:2,load:7,localhost:[7,8],lock:[7,8,9],locken:9,log:[7,8],logik:[4,5],lokal:9,lokalen:9,loop:0,lower:13,lowercas:2,lpd:[7,8],lscpu:7,lung:3,lust:[7,8],m:[1,7,8,9],machen:[0,1,2,6],macht:[2,3,7,8],macro:[0,7,8],magenta:2,mai:[1,3],mail:[7,8],main:[1,2,3,4,5,13],make:[1,3,4,5,6,7,8,9],makefil:[4,5,6,13],makro:[0,6],mal:[2,7,8],man:[1,2,3,6,7,8,13],manipul:2,manipulationen:2,manipuliert:2,mann:7,manual:7,mar:1,markieren:2,markierten:2,maschin:13,master:0,mat:9,math:2,max:6,max_numb:3,maximalen:5,maximum:9,md:7,mehr:[1,3,4,5,9],mehrer:[0,2,3,9],mehreren:[1,7,9],mehrmal:[7,9],mehrmalig:9,meint:9,meist:[7,8],meisten:2,meldet:9,memori:6,men:1,mentiert:9,messen:[7,8],methoden:3,mind:[],mindesten:[6,7,8],mit:[1,2,3,4,5,6,8,9,13],miteinand:0,mittel:[1,2,3],mix:2,mm:1,model:[4,5],model_can_mov:[4,5],model_get_st:[4,5],model_get_winn:[4,5],model_init:[4,5],model_pos_t:[4,5],model_state_non:[4,5],model_state_t:[4,5],model_t:[4,5],modelliert:9,modul:[3,6,7,8,9],modular:3,modularisieren:13,modularisierung:13,modulen:[3,6],mon:1,monat:13,monatsnumm:1,monatswert:1,montag:1,month:1,month_t:1,montierten:[7,8],moodl:0,mrtimedaemon:[7,8],mscfile_dir:[],mtop:7,mueller:6,multipl:3,muss:[1,2,3,5,6,7,8,9],muster:2,mutex:9,mutual:13,mv:7,mvc:[4,5],my:[4,5],myst:[0,1,2,3,5,6,7,8,9,10,11,12],mytabl:[7,8],n:[0,1,2,4,5,7],nach:[1,2,3,5,6,7,8,9],nachdem:[],nachfolgeknoten:6,nachfolgenden:0,nachschaut:[7,8],nachwei:13,nahe:3,name:6,name_len:6,namen:[0,1,3,6,7,8,9],nd:6,nein:1,nend:1,nennen:7,neu:[6,9],neue:[2,7,8,9,13],neuen:6,neuer:6,neuzeichnungen:2,newlin:0,next:6,nicht:[0,1,2,3,4,5,6,7,8,9],nimmt:1,noch:[2,7,8,9],nochmal:7,node:[3,6],node_t:6,normal:[3,7,8],normalen:[7,8],normalfal:[7,8],noti:9,notieren:[7,8,9],notizen:[2,7],notwendigen:[7,8,9],nov:1,nsert:6,num_coin:9,num_row:0,number:2,numerisch:7,nummer:[1,7,8],nun:[7,8,9],nur:[1,2,7,8,9],nutzen:9,o:[0,1,2,6],ob:[1,2,3,6,7,8,9],oben:[1,6,7],obergrenz:1,obig:[1,4,5],obigen:[1,3,4,5,6],object:[],oder:[0,1,2,4,5,6,7,8,9],offensichtlich:2,offiziel:3,oft:[3,9],ohn:[1,3,4,5,6,7,8,13],okt:1,oktal:2,oktob:1,onen:9,onlin:12,oper:[1,2,6,13],operand:2,operand_1:[],operand_2:[],operanden:2,operati:9,operationen:[6,9,13],operiert:5,option:[0,3,8,13],optionen:7,orchest:7,ordnung:6,org:[1,2,3,9],orphan:13,ort:7,orten:9,other:3,out:[0,1,3,7,8],output:[0,3,7,8,9],oval:2,p1:6,p2:6,p:[7,8],page:[3,7],papier:9,paradigma:[4,5],param:[4,5,6],paramet:1,parametern:6,parit:2,parsen:13,pass:[4,5],passen:[3,9],passenden:3,passiert:[7,8],pdf:[0,12],per:2,periodisch:[7,8],perror:7,person:13,person_compar:6,person_t:6,personen:13,personenangaben:6,personeneingaben:6,personenverwaltung:13,pfade:[7,8],pfeilen:9,phonei:3,phoni:[],phoren:9,pid:[7,8],pidi:[7,8],planet:1,plappermaul:[7,8],plu:[6,7,8],png:13,po:[4,5],point:[],pointer:[2,6],pointern:6,posit:[2,4,5],positionen:2,positiv:2,posix:9,potentiel:[6,9],potenz:13,power:2,pr:2,praktika:0,praktikum:[0,1,3,4,5,6,7,8,9],praktikumsbetreuung:[0,1,2,3,4,5,7,8,9,10,11],praktikumsumgebung:0,preis:9,previou:6,primari:2,print:3,print_weekdai:1,printer:[7,8],printf:[0,1,2],println:3,privilegien:[7,8],pro:[7,8,9,13],probieren:9,problem:[2,3,9],problematisch:[7,8],problemstellung:[7,8,9],problemstellungen:[7,8],proc:7,proca1:7,proca2:7,proca3:7,proca4:7,proca5:7,proca6:7,proca7:7,proca8_1:7,proca8_2:7,proca8_3:7,proca9:7,process:13,procthread:[7,8],produc:6,programm:[0,1,2,3,4,5,6,8,9,10,11,13],programmausgab:7,programmcod:[0,1,2,3,4,5,7,8,9,10,11],programmen:1,programmfunkt:13,programmi:1,programmieraufgab:0,programmieraufgaben:0,programmierfehl:0,programmierung:[0,1,2,3],programmrahmen:[5,13],prozedur:7,prozess:[9,13],prozessen:[9,13],prozesshierarchi:13,prozesshierarchien:7,prozessraum:7,ps:[7,8],pseudo:3,pseudocod:9,pstree:7,pthread:[7,9],pthread_exit:7,pthread_join:7,puffer:0,puffert:0,punkt:[3,5,6,7,8,10,11],pusher:9,pushern:9,putpid:[7,8],qualit:9,quell:[1,7,9],quit:7,r:6,race:9,radiu:2,rahmen:[4,6,7,8],ran:[4,5],rang:1,rank:3,raster:3,rate:0,raten:9,re:1,re_v2:7,read:3,readint:3,readm:7,reagieren:1,rechner:[0,7,8,13],rechnung:2,recht:2,rechtwinklig:3,record:6,rect:3,rectang:3,rectangl:2,rectangular:3,red:2,redundant:2,refactor:13,refer:6,regardless:2,regel:[1,3],regeln:[1,13],rei:6,reicht:9,reih:[5,9],reihenfolg:[1,7,13],remark:6,remot:2,remov:6,ren:9,replac:[4,5],repositori:[3,4,5,6],ressourcen:[2,9],rest:2,restor:[7,8],result:[6,9,13],resultat:[2,3,7,9],resultaten:9,richtig:7,richtlinien:9,right:2,root:[7,8],rot:1,routin:7,row:[4,5],run:[4,5],s:[1,6,7],same:[3,6],sammlung:[],sampl:3,sat:1,sauber:0,save:[7,8],scan:[4,5],scanf:0,schaffen:2,schafft:9,schaljahr:1,schalten:7,schaltjahr:1,schaltjahrberechnung:1,scheint:2,schickt:[7,8],schlecht:1,schleif:[0,6,7,8,9],schliessen:[7,8,9],schliesslich:[1,3,4,5],schltjahr:1,schluss:[5,7,8,9],schnell:9,schon:[3,6,7,8],schreiben:[0,1,3,5,6,7,8],schreibt:[0,1,7,8],schriftlich:9,schritt:[3,7,8,9,13],schritten:9,schrittweis:[4,5],schrumpfen:6,script:7,section:13,segment:7,sehen:7,sehr:6,sein:[0,1,2,6,7,8,9],seiner:[7,8],sekunden:[7,8],selber:[6,7],selbst:[0,5,6,7],selcount1:9,selcount2:9,selectcpu:7,sem_open:9,sem_post:9,sem_wait:9,sema:9,semaphor:9,semaphoren:9,send:9,sendet:7,sep:1,separaten:2,sequenc:6,seriellen:2,server:[7,8],set:[2,3,4,5],set_stat:[4,5],setcpu:7,setzen:[0,2,7,8,9],sh:[],shape:[2,3],share:[],shell:[3,7,8],shift:2,show:[3,6],sich:[2,3,4,5,6,7,8,9],sicher:[1,9],sichert:[7,8],sicherung:1,sicherzustellen:[7,8],sicht:9,sie:[0,1,2,3,4,5,6,7,8,9,10,11],sieh:[1,3,4,6,7,9],sieht:6,sigabrt:7,sigint:[7,8],signal:[7,8],signatur:1,simple_shap:2,simuliert:7,sind:[0,1,2,3,4,5,6,7,8,9],sinn:9,sinnvol:[1,7,8],situationen:6,size:2,skript:9,sleep:7,snp:[0,3,5,6,7,8,9],so:[0,1,2,3,6,7,9],socket:[7,8],softwareinterrupt:[7,8],sogenannt:9,solang:6,solch:3,solchen:[3,6],soll:[0,1,2,3,5,6,7,8,9],sollen:[1,3,5,6,7],sollt:[2,3,7,8],sollten:[5,7,8],solut:[],somit:[2,4,5],sondern:[0,7,9],sonntag:1,sonst:5,sortieralgorithmu:5,sortieren:13,sortiert:[5,6,7],sortierten:[5,6],sourc:[0,3,9],sourcecod:0,sowi:[0,1],sowohl:9,spalt:[7,9],spec_store_bypass:7,spect:7,spectre_v1:7,speicher:[2,6,7],speichern:0,speichernden:6,speichert:6,speicherung:5,speichervariablen:9,speicherzugriffsverletzung:7,sperrt:[7,8],speziel:[1,7,8,9],spezifisch:6,sphinx:[0,1,2,3,5,6,7,8,9,10,11,12],spiel:[4,5],spielbrett:[4,5],spieler:[4,5],spielern:[4,5],spielzug:[4,5],sport:[7,8],sprach:13,sprachelement:[],spricht:1,sqrt:[],src:[3,4,5,6],sreedev:2,sscanf:1,stack:3,standard:[0,3,5,6],standardausgab:0,start:[2,3,7,8],startapp:9,starten:[7,8,9],startet:[7,8,9],state:[4,5],statisch:6,statischen:6,stdarg:3,stddef:3,stderr:[1,3],stdin:[0,3,4,5],stdio:[0,1,2,3],stdio_lim:3,stdlib:[2,3],stdout:[1,3],stehen:[1,4,5,7,8],steht:6,steigen:9,steigung:[],stein:4,stel:1,stell:0,stellen:[0,1,2,3,6,7,8,9],stellig:1,stelligen:1,stellt:[1,4,5,7,9],steuert:[4,5],steuerung:7,stichwortartig:9,stimmen:[7,8],stimmt:7,stirbt:[7,8],stoppbit:2,stoppen:[7,8],stoppt:9,stream:[1,3],string:[2,3,6,13],strncmp:6,struct:[1,6,13],struktur:6,strukturen:[0,6,9],strukturieren:[3,5],strukturiert:1,stub:[3,4,5],student:[4,5],studieren:[7,8],studierend:[],style:3,subgraph:3,subtrakt:2,suchen:[3,4,5],sudo:3,suedbahn:9,suffix:3,suit:[3,4,5],summari:[4,5],sun:1,svg:[],swapg:7,switchanweisung:1,sy:3,symbol:3,sync:9,synchron:2,synchronis:13,synchronisationsbedingung:9,synchronisationsbedingungen:9,synchronisationsoperationen:9,synchronisationsproblem:13,synchronisationsproblemen:9,synchronisieren:9,synchronisiert:9,sys_errlist:3,system:[3,7,8],systematisch:9,systemen:2,systemfunktionen:[7,8],systemkomponenten:[7,8],systemnah:0,systemzeit:[7,8],t:0,tab2svg:[],tabel:0,tabellenausgab:13,tabulatoren:0,tac:[4,5],tag:1,tage:13,tagen:1,tagepromonat:1,target:3,tast:[7,8],tastatur:[0,5],tatsach:2,tauschen:[9,13],tcp:[7,8],tdd:[4,5],teil:[1,2,3,7,8,9],teilaufgab:[4,13],teilaufgaben:[1,4,5,6],teilbar:1,teilt:[7,8],temp:2,template_rel:[],ten:9,termin:[2,4,5],terminieren:[0,1,4,5,8,13],terminiert:[0,1,8,13],terminierung:7,ternaeren:1,test:[1,3,5,10,11,13],test_model_can_mov:13,test_model_get_st:13,test_model_get_win_lin:13,test_model_get_winn:13,test_model_init:13,test_model_mov:13,testen:[6,7,8,9],teurer:9,text:[1,3,9],textuel:3,thaler:[7,8,9],themen:[1,2],theorieaufgaben:[0,1,2,3,4,7,8,9,10,11],thi:6,thread:[8,9,13],tic:[4,5],tictacto:13,tierten:1,timedaemon:[7,8],timeserv:[7,8],tipp:[1,13],tippen:7,tmp:[7,8],todo:[4,5],toe:[4,5],toggl:2,token:[],tool:3,top:7,total:[4,5],tpng:3,tragen:9,transaktionen:9,transfer:9,transferiert:9,triangl:3,two:6,txt:[7,8],typ:[2,6,7,8],type:[3,4,5],typedef:[1,6,13],typen:[1,3,6,9],types:3,typisch:[7,8],typt:1,ubuntu:0,ueberpruefen:1,ui:7,um:[0,1,2,3,5,6,7,8,9],umfang:7,umgebung:[7,8],umgehen:5,umgesetzt:[4,5,6],uml_limit_num_field:[],uml_look:[],umrechnungsfaktor:0,umsetzen:[0,5],umsetzt:1,umsetzung:[3,13],umwandelt:5,umwelt:[7,8],umzuleiten:[7,8],umzusetzen:2,umzuwandeln:0,un:[1,7],unbedingt:[0,1],unbefugt:2,und:[2,4,8,9,10,11,12,13],unendlich:7,unendlichen:[7,8],unfd:1,unit:[4,5,13],unix:[7,8],unlock:9,unser:1,unsign:[2,6],unten:[2,3,4,5,6],unter:[0,1,6,7,8,9],unterschi:13,unterschied:[3,7],unterschiedlich:2,unterschiedlichen:[5,7],uppercas:13,us:[3,6],usag:1,usr:3,v:3,vagrant:[],valu:6,variabl:[1,3,9,13],variablen:[1,6,9,13],variablennam:1,variant:[1,2,7,8,9],velgast:9,verarbeiten:6,verarbeitung:13,verarbeitungsreihenfolg:9,vererbt:7,verfahren:2,verfolgen:7,vergleich:9,vergleichen:[2,5,7,9],verhalten:[6,7,9],verhindern:[7,8],verhindert:9,verifizieren:7,verkauft:9,verketten:6,verkettet:6,verketteten:6,verkettung:6,verlangen:[7,8],verlassen:7,verletzung:7,verliert:9,verlust:2,verlustfrei:3,vermeiden:2,vermieden:2,vermittl:[4,5],verschachtelungstief:3,verschieden:[0,3,7,9],verschiedenen:[6,9],verschl:2,version:[1,3,4,5,6,7,8,9,10,11],verstehen:7,versuchen:2,versucht:2,vertauschen:2,vertieften:7,vertikalen:4,verwaisten:7,verwaltung:13,verwenden:[0,1,2,5,6,7,9],verwendet:[1,2,7,9,13],verwendeten:[2,3,7],verworfen:6,verzeichni:[3,7,8,9],verzeichniss:[7,8],verzichten:9,verzweigungen:0,via:[1,7],viel:[0,3,6,9],vielen:2,vielzahl:7,vier:[1,6,9],viert:2,view:[4,5],virtuel:13,visualisierung:3,vm:9,vollem:[4,5],vom:[3,6,7,8],von:[0,1,2,4,8,9,13],vor:[1,4,5,7,8,9],vorbei:[4,5],vorbemerkung:7,vorbereitet:9,vorbereiteten:0,vordefiniert:9,vordefinierten:[2,9],vordergrundprozess:[7,8],vorgab:3,vorgaben:[4,5,9,13],vorgeben:[],vorgegeben:1,vorgegebenen:[3,4,5,6,9],vorgehen:9,vorgehensweis:[4,5],vorhanden:[1,3,6],vorherigen:3,vorkommen:6,vorlag:0,vorlesung:7,vorlesungen:5,vorlesungsfolien:0,vorliegenden:9,vorraussetzung:[],vorschlag:6,vorteil:[3,9],wa:[1,3,4,5,7,8,9],wachsen:6,wahl:[4,5,6,7,8,9],wahr:2,waisenkind:13,wait:7,waitpid:7,wall:0,wandeln:2,wann:9,waren:7,warnungen:0,warten:[9,13],wartet:[7,8,9],warum:2,web:3,wechseln:[7,8,9],wechselt:[4,5],weekdai:1,weekday_t:1,weil:[2,7,8,9],weist:0,weiter:[2,3,6,7,8],weiteren:[0,6],weitergehend:6,welch:[0,1,2,3,4,5,6,7,9],welchen:9,welcher:[1,4,5],wenden:[0,6],wenn:[1,3,4,5,6,7,8,9],wer:7,werden:[0,1,2,3,4,5,6,7,8,9,10,11],werkzeug:7,wert:[1,7,9],werten:9,wesentlichen:[6,9],wesentlichst:1,whatsthetimemr:[7,8],where:7,which:[4,5],white:2,wichtig:9,wichtigsten:2,wie:[0,1,2,3,4,5,6,7,8,13],wieder:[0,2,6,7,8,9],wiederherstellen:[7,8],wiederholt:5,wiederum:[7,8,9],wieso:[7,9],wiki:[1,2,9],wikimedia:9,wikipedia:[1,2],wikiwand:7,wir:[0,2,6,7,8,9],wird:[0,1,2,3,4,5,6,7,8,9],wirft:9,wirklich:7,wissen:[1,3,7,9],wissenschaften:2,withdraw:9,wo:[1,4,6,7,8,9],wobei:[1,3,4,5,9],wochentag:13,wochentagsberechnung:1,wohl:9,wollen:[7,8],word:[2,3],wordptr:2,wordsiz:3,work:[],workerutil:7,world:13,worten:2,wovon:6,wurd:[1,6],wurden:[7,8,9],wurzel:6,www:[1,3,7],x1:[],x2:[],x86_64:3,x:7,xkcd:1,xor:2,y1:[],y2:[],y:1,ye:[],year:1,yellow:2,yyyi:1,z:[0,1,2,3,5,6,7,8,9],zahl:[2,6],zahlen:[1,2],zehn:5,zeichen:[1,13],zeichnen:[7,9],zeigen:6,zeiger:[7,8],zeigt:[6,7],zeil:[0,1],zeilen:[1,3],zeilenumbruch:1,zeit:[7,8,9],zeitanfrag:[7,8],zeitintervallen:7,zeitlich:[9,13],zeitlichen:9,zeitpunkt:7,zeman:[7,8],zentral:0,zess:9,zhaw:0,ziel:[7,8],ziffer:[4,5],ziffern:[4,5],zombi:13,zu:[0,1,2,3,4,5,6,9,13],zudem:9,zuerst:[4,5,7,8,9],zugegriffen:[4,9],zugeschrieben:1,zugewiesen:6,zugreifen:[5,7,8,9],zugriff:[4,5,7,13],zugriffsrecht:[7,8],zugriffsverletzung:7,zum:[1,3,5,7,8,9],zumindest:[2,7,8],zur:[0,3,4,5,6,7,8,9],zusammenfassung:13,zusammengefasst:6,zusammengesetzt:2,zusatz:[7,8],zusatzinform:13,zusatzinformationen:13,zusatzvari:2,zustand:[2,7],zuweisen:6,zwar:9,zwecken:3,zwei:[1,2,4,6,7,8,9],zweidimensional:5,zweiergruppen:0,zweit:[1,2,7,8],zweiten:[3,5,9],zwischen:[0,4,5,7,8,9],zwischenspeich:2,zyklisch:6,zzz:5},titles:["01 - Erste Schritte mit C","02: Funktionen, Datentyp \u201cenum\u201d","03 - Bit Operationen, Struct, Typedef","04 - Modularisieren von C Code","05 - SNP: TicTacToe","05 - Arrays/Strings/TicTacToe","06 - Personen Verwaltung \u2013 Linked List","07 - Prozesse und Threads","09/02 - D\u00e4mon Prozesse","08 - Synchronisationsprobleme","09 - File Operations","10 - IPC","SNP - Praktika","SNP Laboratories"],titleterms:{"01":0,"02":[1,8],"03":2,"04":3,"05":[4,5],"06":6,"07":7,"08":9,"09":[8,10],"1":[0,1,2,3,5,6,7,8,9,10,11],"10":[7,11],"2":[0,1,2,3,4,5,6,7,8,9,10,11],"3":[0,1,2,3,4,5,6,7,8,9,10,11],"4":[0,1,2,3,4,5,6,7,8,9,10,11],"5":[0,1,3,4,5,6,7,8,9],"6":[0,3,6,7,9],"7":[0,6,7],"8":7,"9":7,"\u00fcbersicht":[0,1,3,4,5,6,7,8,9,10,11,12],"\u00fcbungen":2,"abh\u00e4ngigkeitsanalys":[],"d\u00e4mon":[7,8],"einf\u00fchrung":9,"enum":1,"erkl\u00e4ren":3,"f\u00fcr":[],"gegen\u00fcb":7,"hinzuf\u00fcgen":3,"l\u00f6st":9,"pr\u00fcfen":[1,2],"w\u00f6rter":0,"z\u00e4hlen":0,"zus\u00e4tzlich":3,ablauf:7,al:7,an:1,analysieren:[3,7],anhang:[1,3],api:6,argument:1,arrai:5,auf:[1,2,7],aufgab:[0,1,3,4,5,6,7,8,9,10,11],aufgaben:[1,7,9],automat:9,bank:9,basi:2,berechnung:1,beschreibung:1,bestehend:6,bestimmen:1,bewertung:[0,1,2,3,4,5,6,7,8,9,10,11],bit:2,c:[0,3,6],code:3,content:4,critic:9,datentyp:1,datum:1,de:[1,7],dep:3,der:9,designvorgaben:6,develop:4,die:1,dies:[7,8],dot:3,doxyfil:[],dritt:2,driven:4,einbinden:[],einfach:[2,9],element:[1,3],elternprozess:7,er:2,ersetzen:7,erst:0,erweitert:9,erweiterung:[],erzeugen:7,exclus:9,exec:7,file:[3,10],file_format:3,filialen:9,fork:7,format:[1,3],formen:2,funktionen:1,halbtot:7,header:[],hello:0,hinweis:1,imag:7,implement:[6,7,8,9],implementierung:6,inhalt:[],intern:9,ipc:11,kaffe:9,kindprozess:7,kindprozessen:7,konto:9,kopi:7,korrekt:1,korrektheit:1,laboratori:13,lernziel:[0,1,3,4,5,6,7,8,9,10,11],link:6,list:6,lower:2,main:6,makefil:3,man:9,maschin:0,mit:[0,7],modul:[],modularisieren:3,modularisierung:6,monat:1,mutual:9,nachwei:[7,8,9],name:3,neue:3,ohn:2,oper:10,operationen:2,option:7,orphan:7,parsen:1,person:6,personen:6,personenverwaltung:6,png:3,potenz:2,praktika:12,pro:1,process:7,programm:7,programmfunkt:6,programmrahmen:6,prozess:[7,8],prozessen:[7,8],prozesshierarchi:7,rechner:2,refactor:9,regeln:3,reihenfolg:9,result:3,schreiben:[],schritt:0,section:9,snp:[4,12,13],sortieren:5,sprach:[1,3],sprachelement:[],string:5,struct:2,synchronis:9,synchronisationsproblem:9,tabellenausgab:0,tage:1,tauschen:2,teilaufgab:[1,5,6],terminieren:7,terminiert:7,test:[4,6],test_model_can_mov:[4,5],test_model_get_st:[4,5],test_model_get_win_lin:[4,5],test_model_get_winn:[4,5],test_model_init:[4,5],test_model_mov:[4,5],thread:7,tictacto:[4,5],tipp:3,typedef:2,umsetzung:1,und:[0,1,3,5,6,7],unit:6,unterschi:7,uppercas:2,variabl:2,variablen:2,verarbeitung:3,verwaltung:6,verwendet:3,virtuel:0,von:[3,5,6,7],vorgaben:1,waisenkind:7,warten:7,wie:9,wochentag:1,world:0,zeichen:0,zeitlich:7,zombi:7,zu:[7,8],zugriff:9,zusammenfassung:9,zusatzinform:[7,8],zusatzinformationen:[7,8]}}) \ No newline at end of file diff --git a/build/latex/main.pdf b/build/latex/main.pdf index b9d0133b5c9e1f652ee20e1fc9fc68db1e8a78cf..8d2c31572cf64df93d1a9f99c2b90991ec45d4e9 100644 GIT binary patch delta 21576 zcmV()K;OTu_HWqtZ?F{vf0CH@OA!P}nx+Mswn6NsK;akJmSw??CFo+q{`wxu5xHD) zsa53|uy}ade`@skK$cI84D3Q-TO|78Z94%P=Y&?$*ILe_Sv(knmwBCEleG zoJe4@6z%}ZN=6jyIrLMo=kO)KaLP1M7I)ZJ9u?qej=RzW1j41^L<5*YEZPum(b-Vk ztsw@`DB2s3SaD(i366-dL~w@h9iUT1EXQ5gfrqYu%OW&|PB0-1+B=GnfWyI_#Rms_ z4*WPDqGiN^I12V0e?ny(Bv8c0G#@Z35ImS-RO7+=2ScQE2pmdC&ohG-QVV>A2&6V% z9Oz*r?07|t^^IZKQP2Xf(n&pF&;^u&I4GkyKr?8g02>leJOB%WK1z9VA&^ptl0hNm z6@W~55WX?!w+>%HB;~jpFsP&{)L@WFQ;!EyXn$d_rJ3;$e~f5Qg$J-METBRwEwvZg z;sFdXsHK%gDrm0|r30UM+GwAFuxvaDP)u8~P76F}*nwt-uHSea@tQ$3!+m-}Hp6{) z<0VBlGV3*^cEF&VSqBJ;jrN)C-=4-R5zfFU~fa)SN zorI=&`)_H3&Fi0Y(2LROax%Ss%}TJ>h+j7?919@>f0d&Y_9O+ltU2SkGoCs7lsZ|H ze;+)JqM9{NBKIURPw)I?74l%5rc6TZnv2%BFvNSkKkgF(l!a9R>P8c zSaP4Rcox=gg%GCA2LFUN^U&a|hFRs9)jpU-hWV(_x+TDMXtE0Ix1H32(0LGgpCDuw z#J{0Ue``cV{F|n$@a8O2<`@+-P0BcwHVy9|8cG>_G>EFPU~(2r#=`qx>o#@2OtFu< zYbo!jrFpu3Ol@8UKa;eWM-pE)yMG80m8$)nzszEL|Nl@3W5d<=!n^)Xb(6=RveNP= ztF-*lDs3t8RwoTVB?6--wohTt3&}WZI14;Yf3u1{O-syjYbd-H3g4%g=c90uj)`yK zk{6b%&!C)MSy(@AH z+~)P~=@dE-He>m^NJCwgGZD!kN`R&*?9Md#7L`*P*~ zD^N8``PyO0dl=f!Ljb4Y-OFq&-K9R`65+f%y+pso?&C#Sm0xT-=3t#G@P@qGoVEPz zz`!tF;V*s&7j1aGHV9wS#m}VcOf8w3mW8c$Z8v*NRXmWpNP|fx=+gPut6gBie-rD+ zPOnYPr+~Uuhm)avkj>Atf~KcwB8>XM>@{6{t}PdPtX6plDL+a094Kh*pYLnMp;zwJ z>r_l0sk7wUsbn=dEpAIXHY1N)qBq^YbS)qrtZl_#rIu$CYFwtB7v|p4w$=Q$6C+U? zNb*OV7|D()R(4LYapQg#yj&Fuf5{?UY0t~L-K4^XqxbAX^jJAnkxzM8B%kcCNIt=_ z{Qk05$CxayZH|JqSlkyiB7Xcqe*CH7GS*mX4F9*yS=4B<2zyPr!;dGs?=@k)lz+OMe_zueZd1u}Gd24j@~*p)DzT^S`wA%Gr(VbeLQI}fnxJRqubq&i2BovTq> zB!nIcvG`E+5kK>2%dH!_2znv(RdeXLA)+>b>XEK`;&GN2dJyMR`OvE@F6t}GxKOR$ zZww>|JfHaWK;ZLp0G`Z&OML7FKn#BiieXWvzwC(tL4c4rb6i5GJ;9h zL4kech)>1(ATGqns4c!j0XX;r3B!FE%f=+b5Qh!Ibr>119MGWB8dRh~MHyh)E7O^3 z@kw5uV8*h7XX@U=1QT+Vh^BuAJ-#_$@V3A-%F)-r_!^iaekZ4xizJjTOqD_3YNpv2 z1UF2P3yBvJvTjq5wka}WQ3&l5>6FU!x`+nNYaGe3qrh6Mr8sJP?23_RaY%m$F!uvYghUn~ z2BH<=LLscGGpVE2Kn-kdHlaEwt-R0|Z!+z6PFHDUFmeF!+ez(hn6T~vR#Byb1HA+X zQimg+7x8jgYvCEsYb`9Y^{V?h!(k-H`$?QuC}@Nzclx5dq8X&{z3G9ThSYI zv@OUq|LIjE)yBfC#Q1*$Y_Ii;+OQ0F%Tct+QMArc=QmlTy+B2L#|d9*iraiL3c>-V zeqjP8La0GVr!A406hIk|FWaaSvLW1dNo--qDggGqfCjn>pch}Ut^(k-#mXbK9*ONg zq}@j%=S6E}f%76Or-lA7mQ{dz-EhX|M%ej*bn#$^T7Z77uu*>tPy@tjfK^gf0~F+L zI1ftb5a_+UbVN`>gJUP^76>-f4QuMI3Oa%iOtUE7fPtxdzzXgpeX&uck?}4a{%ko0TTxwOJ1 zTH%s4g?qZH^y;ikqAbp1o>k;0?%zr^yV4)t>s@)WF|=pgT;=i+wjtYH+LB?J>j2o^ z@92X`-|Jih-}jRlx&zs5U*4&zw6D?1CfaPk>FaT7OW=Rx$r{!;zPZUw^~#0_du6H& zx@j*~L)UG4WI_(Ily5+mY7zXP_<$6B~stdSUrB0TdB*cHDWXDy5v5Ub-)P*&jgnX>%n%FtSOr%0L%^+8}1P zOGRF1zBOHrEmlS9t*KWkOv`J z|66PG-2VWCp{F*Jcil>t67U--v+CWi2Y<;TlcKy@4~4TkSPJjMQn2E404XrvgzV1| z7cT6A#r7Uwow3M1^+8)>T;ldUw8Ng@Iou;YaD8sq}W z#SR?(CrCy%5n`g)QzWFX$O5qXb$|H_^&4CloG?rR8!Kx8f|0`_MbWm46Y8H6LJ4<~ z6h6wwgK*!l11GeHfF@~?6L-PF<4vp;WlY=!%pQyuYrlMPnd6y3mSVi^&`mjC=62A1xjNj z{|6;f*!Z&{=Z_!(GncUk0V;o6Z`(E$e)q2sIt-AznBh&7)UE@TwCUObLzWuYL(>Pv zqHV&q?CP>!hW+;)@=%VY*jc=`g8_>=Jp6d>JmTs2>XHSsYCwZoK!cat=h=90dLekg zDN%|?!FU=(l*mBEDd8d*=fT_Xe4cG;T@FWaL_REABlsLi_2#mR6a;wXHc)w&o87S{If(*~*6lv5-(D;P7o&EUm&@P5Dm zo(2r%ij*QL>@!&n-oB$j4l}OQUviXjVgeEIyrnp7L)9MAPidj#XzFNTQ>*Nditn3OWY_iaof zZ&P@M$#xkjdZ!X7D~-p37xo4dj5>mjz1ZM4@6?eF4vsV`(gmr!~!N9 z^9z(%#vNB7#Z)y8te=c0j;+Bb6;eQEN{NwB4-&4_l{v zHhQ`Aw4bfM&2*OCI0%hfWKA`_7O|X{HAKElqVSFJQ;V$dQUMbVau>%i_e<7n>P@*G z?K8CV!wJTimls_qJQ74CM1<9$#JG~ZP(Eq7r!#Qpw2f_yG#l2rF35eJ8=)IIVjbnV z*E+XmNMwIE5gf%Eurl@M8Y$NDZZfh%o6@?e&8(&UmaR~ybn7Hs;9@t+D(}x?re}ZJqqROYWp2g!w(j(am_~hf0>#I9 zs=_~9_LZQAt17AT@d`{B`HnJm5$VdSr~PV`T%#@Y#~O*&fL>LLSm-&{bC^P-1FD}l z_;#lAtehfC>kc4$scL-7JO*UIJ_p~5=k0q}Hha`GRwVD@I9x1^p1O1_2%aow+Eg1T z9=Ct7;S<TL`E`T z0%j8#lscF~e{dJ-?qTnr1iC^>B5MDXldwx^dkS@@bK+DHnJTpLccz#u8(SYD9)&+v zb#B&V{!_QnAku=ie{Qc1<;n$l((4`sNtu7|JWr3tgGG;fy_l2m!h5L7^G_a>8n89tb{)%a8ZY17xlu~6!kuhvfS1TpZ*VlJ&bg61c+O40O-aRv8N9Q zYrTE1o~z6hR?$D#CdZm>see6u7Zwo(dpyXd*|9P4tmj_X)8~@FZ-y@Ab|LG3F`R#( zVmCMcn+W`X2$RXvPFeLSzbV0L)18=eb;DU&iJeN)QZVKo^^?ZWQj&15)-J`Bgih^& zZ@WZp53%p_9^StT(JL{~$V$#yydS<)JO&)xtz1| z1pULFGrn`!AG#T!+oQj|4cXo;$b?WOzX$`wpdbck02T53Fe1vp_-yA^riTGyu=~a6 zLv-%26c6BoGp6o7N=AYR4iq>nQgM5AGqF8g8rIN)!`E-)z7r!Ex~3MMh5k1<95L6L z!`mjC>Fuq|U3c^wr9F35l5iCtb8Ul{GrK_>iIgxI2NLoKjN~+to$!Kv{{gM|mK2jA z=M%RU4grKH0W*`)3MhZISXpn|I1qmKui&HHjTzpOTI@r!*%mE|MK>|94@n=Cigtw9 zl&d2~TlBy0P^1(~KGr!F0pbxw4(H%}-%zL1i_a9z%Mn3yM9}-u*>rUJj#CulSTTjB zGbBWanV=|)Bg`X?rYX7#F8}&Gp1@P^DY*fG1$mKFd6DUI{AGXoarEbO^ld~zAwd*L zf(5J=SjHjxx*T17At;469}&Skj?lW9w?qP_h){vNK$oMxJCjKBzL+B?T)gias~8G# z91_|X%VJC-6iTq4h0fM%BFWd>j5!IaY&@YsBi1?v!=(sjMZR>>s?hgYUYGVs2CFd* zlDUS}wDD=%42pm3AB;F*=SVLS5J^EHl7!(6Gy1suj%9wN}3gW z6x}oju@QeBtrDtZvy`dCDyIDi6uPPl)7x=ya=5|@)Dbs7d2D8X+v&|4JBmQYoQS?f zznTTR&i}9ghsDJx+bphqKttM6b2zhsR3gGeiD&5mGl(@qDjf3okP1mCW|DSzx2*%r zkcZ6}>ga#NI2qQziU4A%3-h@y0O&Xm&XYX)7yz@rro?xy1YpWfYCdvR%d=*vpn}ZelGHPkt~8xC3df_K$Mwfk?U%xPBO9g+wA|7IP6k`Pk=D#s}@Vf_}72tE& z)`2!QqPAMzE?0W-Xh{8iSK<9E^6Ght8f+n0+G(7+g}o7nhjg%eaN>NK>%~ng7PU6N z-W(5*a0nR3F+GUg%Oo=vyzlcY9bo280Ne_*!)+_mH%~>{ANwyDfuAsisboIZh8(b%(6gZ02%UmZMSu#Wg<^rx0EgDM_V@5pV zFwFV~XsIu3&xj-+R6N$wGfH0hi_Q|HT*{Mp(qW#TfoLjNu+*-i|p9>e<|X zjL~MN8gQ|7Fl1Q4?Iez%B&~zrMpywb+n1ft42R6^DM&YX`eDh@c@FMAINa);c*T=W z^PZbX7{U!pJ#;*OMK*Wk0&XY6oHv~RJOOjmHBgnDScoKNKq6EM+cMw9c)km5>W(k2-^~oLmU4E zte0V!lOg95hX*_Xw+B1|M-T!sGn0YWDVKRn0t|nBuqf_wNs11F!hzkOPLsH?ngW*u z1#PV;))M6-sTk*?|NUlmX8Drh)MA{8{JPUYEJ94n9uL z_D+ANd;i)Ku%Yh=C-gl9tCbffv2(TBd;igQX7J|B@x36KIJX9G0^x4v znPF168ljQPFQ*5Ia??!H?514P;MKZF>)wBPK%?IgsPBxV@`5NN`hF;A-AtD_P_8bk zS{If8Ik5!D*yXcuG66h&g|8O{VJr6{XM`CI6wnAdO0yn`ib*suofmX2?FvUMbA6d- zmVlRd!g_^&FLPLxuZu35X1g&#&eBEc9e@BQ?rC|8D|BA#vOrlN)1)P~A46aexU+xs zZevFk4wQRduCp>-tq8o~=X|{cqGr78xVj-3T-W+&AnY*e2wO-`fK81=>?Hvk?*}RT z`xFFg;s9P4WSt-)P0Zo z-4xfX7dSJo>I)(_UDm$=O@{<0g)D#Rl_ru|Sq+qo zqS4jo1nL>*Ylf28c!vkC%f`2h$2H^=!@P=y;!~lu8PFsskB=6acekh^ozpDu zi5~zc{#Cn}qymGEN??X6iAjGY*6IfMteL=PZvjx_EimqQ3(V4G)f0Nuq_hrk{|gCA zc1t821A48$hb6t)(R=jha^(D$3?y zmb-K_K#QWPB7MSqY10nPMVKV*k{yQ=MNeZ95CSs0EA|FmGXcD}V5Ccq3Uj2p9HfeV zGVKO<3YW&ApdxtO;N7Q!Nvm=z4hUtstwJ=Xz=ns}rff_JrixH&oi8ubvfayjRO>k9 z!XenL7tKM}3_EVZju9o) z4^Vu!ye18=un*)CyZOMDK#IywI4~83U8reY*K`1`OfX5h#$$hv*%6ZZ>VQX*7@vkV zL`6PGV1)w#HFjRzx z=x&-3vCec&t8qab+0>8xbkVpGdqqu{O)(TJk@raIas zi}84-z1#dc=f;0!mSe5uLH##I==epcGiadGBCj|_mA@Lym+2D8EqjKwJF30Vy(C55 zz#tZ^(ww~va-Qm!(K9`0!78AUJ?ON|J_Je?cXsQxg|h=HF3=!Xw9Sb&63yEangHG` zn(Kw(uUnZliTH7YDtH-JDr6vK4IZQd$=N~pLlFU_TAP2W5gf+W!T{u52yXYHSzGzU z?sbNRgjEpAHHbNB0%oVt#K0z?VzFeTo5lxyt{qWoc|pAcs~cV+b%XH^Q?#kMEy=2` zPvu$Nv{13BRWQx58DQ*9>ve9`IcI&&Gi^H~8(@{Y$ZbWi$d~hmJyVW8W@z2&fl;qY z*{r|I^lg9Ht4u?Jp0nz=3c787t6pW$v`c|%&3oP7Bt-|-UB7F0?A6APn{v861||y# zjVJcXXdseUxfz6Q7o*f=ZEvXf&G34OXB0l{{Zd7XnxYC3(#m2|VBnk{H@7FS;0{jg zI*qwfim6-He6Li@x>sI1OuQ}MZu6Q=!8j>5QPqD2%h8M!!gU0sB}A|`LS|26>SXOz z)Ja-%Ym1xx`^Gj>Haqn16on%wU(jGDq<3GcVowQp5h*Y572cR4JcMkfLgmOH@C4|# z)XseGryYB3-*R?tcEd@>Hq2dVFo`@r<|~Q3sL?D!&Js96hi|}XnOz;y@M?kCA4mTH z=%;`8AF0Vi!0$#Q()SW6AW;QgB8J=ZMGcP8d!AYyc96$ous=B5b_<9L-nWF}hDkHt zh64(n3x?`TY`QjjzB~G@+U=gv!{mYb7cfR-cHf-0&(sO~l*r%HUEMCZzae$^hG^T( zepI*OFoA!)O?NSWys03_Yg%CnCLByPU9o=+dAlh=#PgPmBSL>N<0H=~77~p0E5H#g zbwj;ullK7n8uOtvVD`@$JkyMc7sM&WMx4I6(dI(}&Gx@L+PBH#9#$X zn*e%T@~tQ@=^*uPu<-SFOb6KAJ`GuV`_~9+#bbpJdRWSrpViFlAQ5j?YqZC1k>*n-Jv zi(hNP`<>ut$FHAZ6qE_n!>7*=3Hs{zEsu`R%?K8}I{txSXFtDgMnCdf)2;sef@c?} z=a|qBce%xzms3v3uixOJcRV{e{U;6ncxn@I!3o;5@_2Vt6kGjCzOqdXB=mpw(-M|3 zrM@2aNA$s~sOpriN;_4+C%U_9<$3gtQ~pGH6ERHqN_Z0$JUrj~o)6o2O2Hoy82b7U z`vEl)Tb3pQPbT&TeLk#7yETLey(kg3z%-Z8gzhPG7XLA)_aOYW6|?ZO{?}Qg&G$mY z3#ifVL)w+H-xHhj#Y2zx2B&}jnT7woMWc!GeRupd$BhTlG2B*H&^TT#IF~>%g_k%a zu`ip;z*a`A{Qd`*hnh?Kjr4Dm`8Fn_OJ8mGX|m3&{ngRRx1@+P7DOZ7w^5D|&5srKx1 z@PnyPc`|y?@1?eXx@9&}(i1|qzlAy&O%mneGZX@U;Ut@1I7z<6aMWbt#VWSm7WK>l zl=vSYP9aK@A?Fj9x>f=d1T!!dOD#@{9eSOb%Ne+jy<)%SeBZ$u3&%SXUU%YwkF7o!sS>y|6@$Bfy z#nIz4-(4hj5_;j{V!co*vOVQ4q9nHc*k4>^ix1ZMtJljFjI5XG6#$;KZPISr6o0y1 z{&MmB==9>~Uq>!n=q%ht;MfXID?3P{#dUS`;TLC-!OHW6WBWU2|S9#l&&vOfBeYTKo2=^AI1l@+plu>=A% zE_E$0?dqi$Tc7ZMy7}lURcE^Ccz^eHQ_HzCI=3lx!{c<<=6a3qY|Q4*d_`v7{OAM@ za^~?_5RVA){lJbCP)S5o=?%OPc!AaFw&U%4bb}j?Y^yM2WIWrqJ;G+V=)MaVA67x=S$JUOM}c*`^j&MW&VNajKu$Ot zTC(^ASW#3JF%pKEZW;J_nJ8;Z2d?q_26n)oF3sCLG$t%`7AsHLzCru6VM!I8Zt#V` zv(Aep;{b4$whWL;Y@1x?8ju97(zR^4>o4H(>t>rba6?*EJn;-Q2~@D-VM@=q7OMtK z$bEOZxW=16%Q~}k-s!T`a(|%RK0+Wwq}o07Tz<5Fk&&&D4M;D`jp@xuXXDs?Ii7X6|c%lqkGZt7Df^_py?M^oek9cF^GXEA@p3-B)Ks&z}u?T z-5qduSLZwMVb~M%o0{FkuLE~{ckt+B zz_$AxCJaW%M<@_nEPs=5j5ovt%_~NOV1|q&R@Q4Aq)p3$H2j1G(HkH1lY&a4Z@P_W zjc?ud{C$9hi_}k0(kgT(ii|TYnis(iU|#cNZWLC_IZ+1$cObdC1$B_6XN}Gw=%sZb z%Btm(7b%!+hJK`xty$VIfRP}xH=r>wYCk{gj9)?S(Zk!i)_=`vPL*3wak4li#*jFc z8^E2RtE``Hx~)-MvlM%>y&_)1oOps{o(SA=&cn3qeoZ%W(;G0C5(AICMHUEdfLF!F zWi;^|Ff(?aJX5r?v?YWQsWG|YrP;;eE6PpSb`gM=CgzK?hLZr+#%+kqVX7A|58-`e zj6(NXmXrGjuYW49X#syI$~AcD-{ekGS_Ik-2x!b?J0=#VNXrpGA2D-6fS$6i%QO!mW>rO9fIimffRr~DM=uEg_H^2Z8;px19l1&C zUP$og^R78~K$h5R0`MACdk8r&aUVsDIwV9-jevPbq<@~jefsqD{M`7h@AFsWdW`cK zyBKyPXXuW$O_g@v@)eOCC;rG+_;JV?9-pRhh7nQLrjawG$Z7IR7>@N`&aiSJ^acK{ zs%n*GvI0WFxSk}a<#4g6OfhU{sE=N8C~^Sc6Ub&oZVY70Q_sOxeSvlUyOMZ_^c?SWAlNu#f^S$ci4;clJ zO4-t`m4&n{#UR$(68N4O)<4l1I5)@=%!F=;mw%EDB8yXDg|dut0+^aQ=!O$kMBiM% zb{<)#L@Ao=uM=v(;SSWezzrx6R&Hb`kp6Sc;knM&H~?oN-xMf6nJAQlhq}{KmGH$u z0r1iB{I;lv>I>{ew=k=ite%0sL=4}gZ~#2#=mgsm`1du6R*c?WZ22yVjGm6As74VK z1%JVrDDN}Yjp$O$S4vTQ$72+*abgm%(HJ3M8_onyQQwriw&1d~ulgQBWAHm@gp6g) z5NXY>8JVca(i9p@&Y^strzFu`D)PB1^GmHoEU8be& zt#mA{u^J4H2wc3ZzohO-KBp+YyN9FxKVpgVN3q2DUt-BPYWER|n_i&eS50rvll*#) zcZOA?(BvieMglc0I{rv!{%5lx{t6pjjjvqIGUXe&4Hm(P6H12TjWZmdGn{vvB7gVQ zdMzcm)a2Z>h)vT1I~H@jfkO^c(lE}0-2Ki3_6{7Vcp;Seipv*>gF(do5(FeIC6FUX z#iI)})i1Y0RTW_Afel=SFBzUZs_!p>%l5dHUwE;};+mZOz+U zO*Nfhl^OI->%82n_+idpy*DnOt$%khW2MJeHze#klh}nyv=D&aeE=e33AgW2OePSv}-x#sH)z6I)A;vDtAwh z<{Y8-O$xnFB zU$Pbb2e4dO2$ETkWP=qkLZ_uRNb0%rb`)?=`f&V?JUpc6SEZJu8|dF?aqh^xyWQmL z&<`vXY45i(TSy&u4EboCKR_Y@h83u9C|k zoq%&ibvrOdeCntN?V1-nYF@SLU47FPlz!mh_OjIJ?WIvN>QNev#g_pVwT2O{)~Up& zsiKL!Z?A?n!aElHsGCiiW$O16Bd#~P+ck2=xL&FCrF>w&pXptvyP^aDh!W<~ttj6_rtOO#7YJb@Xq4C*bjOb)*jx}maTCo!2z zQFr{EFxTBBxB>`Y;LP)GGZq}K_kuh8mgq*F9Xg)55`>ZXv2{}DR?w4%DBx!@6ofMq zJOP&e5Kq%rH^??1?FeIcpFvcC;t z?Q=HX(vC0WN#Xpey>0qr3LL8VtwaqST6XaKxEJtE)0K0Bv%_P<6P$twC=FIL)>*H_ zh{;!B#Y34aozE+r@8xm)})%3u4yDnsQ{zY|xaGM)=sdp-VXN6mO-pFHQN=zd^- zMOv1kX5)5}&+Q~yq{hyu6)NT0-=u^zU7o%PA`8E!?C0*6thmeY!5+km6Vb((KS?lj zhOVlY9?taAqd|N5X&D4id=%M%^l*c56pv7&qXXID7JqW-3{rOzbzO2loa+sO@nT^7 z;o%DSumEbDTI5fA^>09%3uTGv{oSeQ4 zrIY$;9K_DW!ci*m10|g#o%`WDbS`q|y?g%Co0$hs?hn}&G=Bnj-DKUmDRevg_2Rpe z7Z)f0J(0jrIMRuPuVA$Dqcm}@tCRP?3MYp*-#Nk$)46kN`c;mCE-HzkT{`C{KldsL z^S)U+)c9peNscVAqFiE60b z^H}P|y2*9Jl0x@&^|92JWuco*y==WR-DO4D`aAR3x6{Z-Ftbqlb2d=mqltnMi@R7k z@4YCATpD6*dNE65FlL!;7E1aAc1q^%xv?NLbWwBbYJ`ubEjJzt4m_Ry*_WYYioY zrXp%?`M*VG=)eRf1;18+0Q5@2^MWp{5V&1(pBkH;Kl7rwaL8DXl#`wHh>Xr>s=-wdGeL~2qF2gupmIY6^q50zi zFxblKr7rb~uw_X!lC207*0$0mJ^yY{&glFmYf2gb-INPTa-)MLVU2% zAqo6AOr2Q7ewrwZ4-h&0AV|`HdJNj;CCtc=%ztATS?cNQN;zk12pZe4VFh?B!5fI6 z03yZ#B$`LQ5RztMMj$0_y!Kl5YFs*zc(sX15sm=va>P3#-b$t0XL)( z`UUBc09Qm1%@aQnsncj@0bbo_wI8zvJ6JT|^R0^gQ1QCC)%qsSKG8&c1!DVOIHO$( zN53F)|26gq5)mi(^8kK-zl$F;k|B(UaDP}x$lIkDMy?EZL-^N=|J#)K>b{fkM&iFl zX){oc#P{I7kMz@rN{=3DwMnNP$Mv87u-U7l&i?xUU+)K_G&t(&x_$`8|N2nfljC^# z!4e<1rjIn=K3U?-F@vpqX8OI$Rwd?j*lvqDX9b1PL=k@@XNR(tQ`Fs*bKhdxPJdiC zz|=HQXiLqjtc6{=WBO+CSgBuU(Gl{2@T@7iRi(S)W+$a&D^-u%6dxS_kFjl5>$+P# zE)w5E|MXAAx(uel&KXX2l-%Z%&YC|hAL!j`^H-CeJjBKSoZ|dr)}X_l@OrGVz+zX{wnU}VV?zUS&3$#VSbvvGQ!**2 zW};cj1s+CqQx$cArIv>1AXJZp@+0u^mb%Vaw|BZIHNC+YQq(u)rY(#TdTM2x{&e!L z@b^`-q0_jD>Ru2F*t6TEUZSeo(i756)keBcXPy#s_Y?f{s>;hD0|=rN4&*$V9?$ap z309F57NZh(ePv2Yx}Z)tn1A}&podgrXC!`?tr{MU#>RJjKX`4bh}igPQ&rjy);##f zb)9wX)ZEcP0Fjv|3d{eU2r; z+H?pI8QgUb60r!-y(Egjhs--&dZpEXEN^7mA}6axfd}5u)PXcLgC4@%abk76r9fnh zWMXoi#PkxB0~3x=<4ssIm_*iOaa#?p8&qGJRcc({Rw0Fy5q~bA<8@YEZ%QoVb^61o z50$Qf&V8{xlNNSBs57p28wuobAV2R5&!8+WCK_#DudfOdDer{SwyX>moP&Tf405pb zkOrpptXXdC)dx{bbrTy|X?hEHi4H8gV##!L?Yi<{7{E%Ups~MV3A!CI!PROSb}PXu zs)P*IlT^>vaDPs0m=CSFy0%KTQw90KMkwb9C{t>eb7Hsk6;NpD%k9O3G(}%K9nIbB zT?91Y%-C!eCftP(&a=THmi7V!rDi>-aS$5Hh-q+N?zmHb7xkIHH$HPkwsbl3SueoDUVO0S({RrYvzTR})-dct!26{mp)25A-@veZh-Ce^4bH{ZydM?qnX#O;+1Lgapj_SZ=#6OCoNu{+CP0 zT6Q>?G!QS!H=Va$cntqt8L7jH;eh?z!)OLC~3t$J>=5{2cqnpjvRIxPQFt#Q+Umd<9 zi|)E3OZM-`!Y|#CZ7)}+uF3YlJP78I9|!7~UmgUGRCt*b^hc&3#7_@WySJ-*+^WZc ztAFr@7-HCSa~(`yDKy58an3GJpT!yuSClt07Zoj%-WF>6@_zsh&lD;i~=Zlrb zZ#L`=zRgSF4P{$W@P-bJ1qV#ZdL@0u0CcNVQuy# z(en+BjpN$f>~o^Gk2yJ)zKp*Nx%tGg9vDPv>c|+JE8@e|1-2KlFxZTv;b}hh6M(f$ z0$|BUnrCL!Ec#Q@{tP6XfD}ZGV`w0Q(2oJ5J1TtNU@@WCR8!UivnX|(*-HTnUw`h( zex+}V>s2=)St&mThumNC*!S_=pNr&i&PQbqe=Q{-=J=@`&VIL&!@iFNg#UDK19G>& zA1}0b_fRTjVA1aCsfk1tq)0({!S%F_FeZ)weUMN`xDgGjI6ROOIXoc^2AcE<;vMtP zb%piarkIR1e3Bp5IQmear&l@S^nboKn*iJ+SQxy)cm3=xlIBtjC{M; zmc`X;+Q97@`T+Wlph6G7fetT`tL6ZV z9If_h+#2Q<^U@0D{uq~7#;dZEhbUW zE4?F~r8|SWVQ>UBEDnZx7=IjKxe(Ks+6G(DO^fO4@M_&N6qJcq7qvknU5@y;Z?FL!$-9pq@2Kx|Hu-SH zN!5-RsR$!Kj?O2ev&)o|F&$?jBa=CiGN(dvl8+0T7AcvOSRi_9~y zm*jf%%a?hr0w)jza}18$Bq|e;qH&@ai{3Psu&n|dfBj(fEKYf}!12Y>tW4u3x&y>R zBu?B9X3!X%*{e0&70KZt6_s#Tphj*UazUk%L!R;ps>R>CDH zGEOq3sDNwbb3`e1=OGD)?O-v%Y~tdVIFSNsqHQ&M4doFE%JZlfOSCWQrn9%Hl$F7W zy1^&-e}6()763B@bPGL@wfavqKdnRD59`%RHzf|<*Ny32s|_T-GtEAzdIG&+cLDcv z9imFzqH$%{mDQ^ijw;i3+IFT3?i*X0qo}+`HMZ?cyH95*s!!(-n9E|aMO>Qh@#~Nw zXOQHOReXGp5BA;AMqB6UDbBM~oNZ4!xVP<0e>d}6rdUXsk1kT071=(-D-3w?vP}H{ z#n3*%>08|!)83d3We4`<$Tu0BeQ>Mog#pvOZ)ZCh~j<5F9_nWJruu4-eQ z+$WhTFad6%GD`yyeavqz9|lrjJMRE$?kE{h^x#p4rxO#G$|<^SSwvI^ZOL?ryB4iIHHsLw5jSp z1?t79S}pd)pjyjxRXS#*o|m*#g+0jUY{X-v7$JDB{kk;zW%xyiQNCIu9z9dA?2h94 zsum;RS2rreT5y=&so&CT>gxpWMm#KhECMV-EFvsoERuHbMpF9-Y+nnucp(J%`muG= z+}1rA5GQWo`ix%j9~%^KR5WC5(TKe{qJRTD58TGPH!V5; zOi`@aW9ImtCNJo&RGvM(iCknx4v{W?j#fI(2;ih0vlBz?A<$)%bTUYG7j}_leu^0F z?%2SlfsUom{>-wvHH#YJM0^#oGGpAh9LSPdtF=ZrNwrI{<2#iNw?yCof2}oRobG{J zGKd~0jw;->GiFl@F9?yN&Ce`5ro{+Rdlo&ud%vJTR;Xha=TeA3oFkGi^6*)L6Gsq1 zH_ead4F!Z597C}XMfgKp1GgT16M|-E%WV*29_W|= zWWljShqDCN);})VS7Jj59#j*LWJmloVbKpfAJRcinv_$yAS>n;zWfbHi<4V_N(i#2 zIIeOk0+I$o;B$z)mauGUP(qa(QDjJkB#x&j@~Cm*5>qF<1&~^gRfp;X$(YoWK50Nh zga?$<(jLr}^tIGaEPL8=aaf$JeQfj)tNLtNHTwCMR5g1a?Yvf9&S%j}uNlRx)0<0< zKQo2F)6m_zh?ARH06i9G?2N!0>QA3%nvzxR+1@ON5oXH+n9;v?bNMx%PXHon6o9yV z+S#F0V;fipRLhDxRPWp0yknUC-KAo}M5pFze{u`h;zt%{@6!vv-|@w74l;XG-5%K7 zVe2q&$fVh23)I&?oyi_%3WWK`Ks<>}%o-HXWtEKj$u!=h*=yQ%rhj=p?X zE-?osqb+(5VW)35xZPk<;J_E48Od*-;h&(`g%P6P~03f?n>V@0+`?M0Jq2 zGT7@(X~Pc#0>hRj7|-{Sn6o4A>zmclw%!{Ti`Dh@gO$R)9@w3~s&_$XUH$&LW<#rw z_-tqFywQ&8&0p11L(w13qOry6tKaPoHM4ND*fTy7>`8j#$G~_>hFj}n7vFx4(D5}1 zNJg>&{|;x!X^N6}12Ok|O-ryxa=n)1S<1d7U&kJB(4aIXpwX&ZAB`4Q##oPjNn*QM zJgr(kmV_6qe(w719AZCiap7h2L_Du~FKpf}0-1kzbMU*eShIzaO2y3o4`B!O#yxoy zr+Z7>A`j?|=53mDu+)z8!X`(;#w(}2%ztme0QJdvPOlUYz1GR4e6BwIT+^gejupMi z90S+nLkX#kP{Sb~ar85+FUP7fafyZ_ZltCPk^C=0S@#ybA8PBBwC>RI^KixWfDiTC$zGt`Q++HmFJ zKvO|RUnr=p|5x)u=?`n%vnS-A20|2jVQUL0%&+Z#u!wL3Meu1ZMajsLwqyVyHSJ(i zk#&agX)rA-MedB1O~;bPaq31NMT^ObH4X*UTIPG4J$1?0Wjt=X?0}a!X|z74UzMMG zYc2=O2)LVfgFxAIwH$n)Y{|7cVcRQqz$#uoSVmOdg{jGdu9G(*SYedbRjcwT@X}w| z_0$r@bIx|3X~pESCifmCa^kW!^IqeKj$^CmV>Jf+huQ)>#i3{s(>M{vxZsLL-kEXa z&Es{uBLY76hn_7j!=#umB0rHdKGWN>$@7MlEPS-Y!PJSuCd)h8PO`@-`Da2Y0n^X> z&^v#_1DQHohxVZ{cRmqV#Vgkqk9m~5u9p`H-H*{St~^C=K<+}7J)tc`)%)K1c(@F7 z|C#qQE~8AoHXu3Z+?J_TA07hVFq2ch@jHLR{vraKq0 zGTMTYd;{bzFJH`y!Tb_T`gzX*dUefjg4~0MK^1;!g_!ag50+i>*sAMOE1cxjS2OP+05t5Q{k&leQvwNl<|xls_j$$@+RlnM2~BiV zp4&$TcgXy&=+Q!kn8M1Bd+uL8BC>z=_KwEZwOmU<{AW4sSV1vMYp*T=Cc^g5e1+Nv z;eq>_&7AA1Mi?-d_+l8u(pQMlE#irJ+2{N$2&68jRW4B@VV@B+k znRYqE(avd`%@3EM7&>@KJ7@9OD3Ut z+pf^VWDycQryNN;xH5yz^F*>5E7b66ZCS*h#5VKt!ZF<;-FtfT+bJeEzh%6s-s0?4 z1i{E784J$(-iRBlJj%Qa9oq);U%ej0f8%TMPP|M912gdgFkODk#;Q^g&-!FO!|Zmp zw@d~9f~5XQ4%u6-Cxpt9VUc4|U{PXGVco-`#-hQZ#iGNa$6~-@#A3o?#$v%@Z4Z@Y z``N-HEe8fe1{am%2;BMRkS_%*_1Ok=>%YkM78*Gm{WK+X8)sltCfi+|`W#lzA zz|!h+5}IHgDTsu$th$DjmXw^d3b)e#JH?(%{E-{X9qz#mk(K`6jwk+CFFZIrSw?o0 zLB3hfzum9$H4+1TeV6|`&*`LE)N8hA83xDVR?QIu1U_`5pszA5>3|QjlduCbyQpvaZqidHQ)TYdBIbo zPUS~>A_uwWb((h;nyIKJx~AZ8uZe1Q+jk>w3~%veF!>2{0MlY>Fk3y_5>Aqvcx}I8 zk`I9)V&ycAyHK6nf%631L;yY8Kc(Wiij?UI?THx+nu@aOKhOYzqI(gFXH?u*Q8$S0 z(@Va2W>KV|Jj1bzk0Y}NEwzGv$J=(G#Fe85yb&lBYdoxD9!CQOaDnGn+bm@y!B>u+d*F8i}dES-KIj; zFQ=Kun;vGBVnflNrj2832|NoK5AM?Z;x+J zbX~M(;!LIg#+K$3oNx-;_{zr;6ijgPfHNG;9JG)+iZ5QI4LKD1R8FcH`c2}nE-blO zpMTBb{?IYz)Z>ApiE=tJ`4_M84f zwS6x8Pup)9_RD|syPuAnj$~q@^3O)jeoMoj*KNHSPR{IVY)0%$-w-gwIT<4|;`jhP zh8!p3SvJhI7g4wp9;Y7qhi{%=DzeL&ZK@du=t>ESFl!Qn9le z;KP>~HGW~PB?Gk6-H|(U5SPC*^(4;FamY#n4TPLIsAPam4TewAy`Hv^jwGPyp8W4N z!W}xEvm4C}>2G+kmgOWKKbfCAhsc94qA_8;w6uCx>D*KbQ!b94!kO0uK13N z;cROru6)>;elw>eO)TI;2g+b(8$62c9d$-djbmJjZmS^d^kVc2zg*js+jF;nhfXYg9#i}-j_gH*bQ|oi2+TH=I&j3IJ;C^5QK${F z4zju^8!++D0X)E(z`&6O8EMf#G(SMJNU$(K=}-3^uU$Vgsf*(kZM ztd+A*GSs_yY6uxN%E(k7HK}>FwBXo=L+9VrM&8s13Jixidyy;7CZp zh+`)^=&0ql!y`*sxNtt9{%~`fk0julKvc*`GR`E_d{TfHI8G8OREdetRJoZ)Xt=3H zKsY>L71G3rGfyztL?n_B*qig^B^bHigP_Pb*lLcHVk*IR?Ld%ae0MH`Dmf3VyI^qKP!x;7zHV_ zylNYVAjzt8q@jH82u-2fb4hWGdaXvDZC?_O4-`ao-$y+3oXK*7<-;|+X|dsI%}MES z;iRG z+Zb{}0Q-`Udx>tu4zr{MJQhk^?T7wvlzOcgz`tpo^i1EK3Zjg9>I~@Day!IrE`Kfj z5X@r`QM~&>i{b8ly42}5Zc}snsVHrJAld?O)eE3OMoXhC?(~Y2dYn3!#UH|;b-kuQ zrZs=JXXl9VUhJ=CBj(2%6L{z?Up3E;Zvo29QFAS`d(QmJUMR}pEV4n$(usg=any{r z$t3OYvQDWQwB`Gk=B|qI0E2dT1p&0_`@aU)8g#M4)HLoCtkeBgV9BY|eH0JX_c%w1 zs7oY2%uIv#pFf*N{z?Y9SXar(3Wwz(bV5BbqG7>Rx|ZlDucWG#nlgtz6W z?pJBgo*E^Y2OO2&MpIkM5s!%89VPslfZoC^b+uXtE6{ziLh^3cT*rcUX(e2O+Y7b7 z>Y_YR>xCIbjsMsHv6ArL4lE~OkBcoGn)84uki7eK!b$$*?HJex6n z5!PH&R0;zsYOMMm8L@+)*fbz^AN2X3ZtZPJ4Mq~m{nmn(ti%JYc0pImw416$s?vnH zx-0FQ!c!Ne`A{_K9D!lxe+mdgMHs5P+)Y#iexwbCz{@%7Cl_4&*P z($AWS)>kZ#8JAWUpPkoQ{=4aeb9~(pEVgPgEZZ-wydB<8{qXZbC71nr{JbZ(59G+LLqdq=&6JESlxswc zSCs|0`lxE`-OtH;iz;?#6*G7>dbVHwDO;{G)APn zX~@4a>2;Qc=`88Ka4TKZd=p@(D?I-zstVrXCCYVE2c*p-(ZRh6(DrX;qwp4|ce2EI z!oAbhBQf})%U-YF2F5Yc@(U|tq(Hok=``Kc)B0+MX)W9DM8&e;TJW^RoWz#lVF<)| zmHA8~xn=mBa;-j?a4{~irRtrb$Px4_PSe9r;(N6_gb8q`o?m3f7| zu&aweEW;?bcpD4je{ezVK){EtD&kyf z&WHdeQ^6fT89|AJJ&SP?_AI^x7*Z?=7HLk{E_JHv$Lmw#}$q-0NL`$KN zRMxc^BDK>E8cAcEP|({lHK0&QRkef)9~>T-P!vf(A(W!pe|?}taVH!6DQ=v;k|+Uz zD8y0%Od)=vq(VwSE+wrVxWrRh!aD?0+K~XolmT9(1wNo7g=V^{Tbz#go~V$2%GifA8Ou{X??<>-1dKaZ`@<)hlD>Due(6xFw|CQ)5W{yAHTTAyfz#ATX#70 zs4jiiiSL^B{~mW(H~*Z1UX0F`lj+SK&B3k_?=>x)e{e25m7^H;BnG)GIb*3amN@$w zJE_Tk@Sa9N&5|dcdg6(vkM6PZc`%MsCZe|H=G7B!ul-}!nE1pAKxmnx?z-|V=ZP{WT&XxI!&F*#e0c0Ag!j=Ps>Fg$SG~zMdFA~~;$j|1eA^uU*-MnG_V?~F3;o^y$3hr7u6`8W`a9W89(&13 z%U-O~vL~ywxx`zYHvHrW44&vNg*`1K>&mtvmI!bLnM zzWYa7SkB`?Y01x3rDaUoA|HG!{<4@XFY8fUBCq3`zLB4gUcqs5<|eU3gATmGFcEuK zo ze~$)8u`NipCAVpUx0Zp&$ciB4wjg=a-*F5wTMm;vN@waM$=1I;(IHWnzN{D5-bQe0 z+u%g9gADuGyEu~tx8>5YeTw);Wrzp4^j8p-|w)&3ZDA!%5Qum z!=mY?dNNnvWxlK&#x-r2AwO(Sv-Nr-e;8H*Q(87#hwqSAr@i;GykjrRJMRTP<;(tG zo~Kbv))xESL*IYy132?-Z)*7COn z1H*WGzjzid+VFav4vyoU&!p=@En1hBnR9mOD0@=La2t0S2NSK%xy!G2+rWe;f7*|o zUMHHb9(Ah-M^kw}S)6AXP0!*)81;kMYppma?G<}$RhbVdy+%0j6toV{52fPJEBDHE zDkP6kN%Cz~vYMP`&m*3$Jb`Ou%HsUW*%aW_-ut&S-T6jxa`AyeFJU5ZV zb6gjRjwM!fF0tX%e(t?oX9~$8f8J)#^Sa%}!uosnA@Kd26A#FG@r_|1Ey_o#86fzxYrz%2%FoEa)aevdJp)Me|Q@dbI_BX0O&y zB@eAN>&FT=?k#6F`$fKFev3~AA-9&9JLL4>KJ@+X`xlmuYo##c%3EDuf9KEplxETI z`1b?{O|iu#pBz`W0ULy%p6 zaCOL?&!dl`W6wfXCVQ7BXCGw$$O_$%VJ5rxtReD{%TU;K&g#wsqB;*ib&gf%_@Q$( zY70W-;*f}os*m`IS6jon;SeJ?M80Z{oMDKm?IHEbp?c$SmKS;u=M(wTt1K?+JBzqb zt=_KD+Yu-jK!HV1fceq5V&-P*tdC> z#}fw!_LU>9iq%0}h>=lS{0;TIgFiqR?#o!#CK-h!Y!I%)$oS+u4Jxfc#TrzsLH&(q zse|nMn2T?I?G=o&1Dc;hL3}qj5{)C#IQ}fdv7F5#9if6B2-xT+`4sG%I4eqjo>a6( zhEqZ|A@Di}@1}vt*V$XsF8mxb~)+|EARe@Hf zQ`O>=ygeq2Wd+aFv->dtxJpESQ-dDg957^4U>fDzP z>5zmWwv8c81l;^b;7TJ1P{XwIa#i5AixtTZFp=YkPx%a;|_rvypSU3E==zU$$ z8+5cS*fjs?RV3BM+^ocZ_&sbd^&hoi8E%)OXp^I8oukgLvq%$L!WWv{3@HhS^n#%i zYlfXO7Hu*XtuvNLN(!5d$CquaiC7(Ce;57XZl0I^~gCiX`?Q z(&=N7?xK~7z`dG0aNCWR}Q3lYT6*0yY&qHs@_m0q2eNtDHT%(II8#Pb`eW|#Wnz21-~8zXzl%>^zW6C1JZr7iR;TnE7R zen%e+yI$hz`F=Nw&b0vBKr!htfS3(oW32Wwge7;kCv}S@%43Xs#n%W*b7r- z&`o=>8oF*fD^H^@l`xX6g{keEs@<uM59L3DOEC+AbrpCL^&r zBmFHmzVPhUsU!rl(QEn4(72S{;u^gMSA| zPj~e@St{~6^R3BZaPir*rsBaz%X3K>ShrQPg$1FI0X`GwiFH2sOaJ2bab=7Ga#=_$ zz%D{~^%t$pd;bFv@TQQHbKOb-F_%$u2`RJZ-L40JSxrT7f-4lx?qDgr4@<#{&jF;s zd=s)iM_jnD3l`gZe09bm`;ZSE>h#cA*@V&7@Y;V0;INSnk`V>iprAl%LTP(k+lLEV zq&;|zNukg#E)pc!Q^Z6aF#5L*6P+X?paDBh zIIlr2kX-D*(SL$uWD_AKiakX_`id+dMc3tjFVt^vU2wuM32dya1qenCixfrME>5U_ zP6#F3MN;@E9}mKP!w#I#9s-)AMNZrW3y(LkR+KSu7chG;TCDx@#bu6X23d;nwnIPt zZ-9*~{&H57Q$}Ou%qVo=@V)CMA-r;uZ#WD2Y|_X(4z}H@@q4fnS^FhfLx{JaD4|FT zVHYTkmHZ$1YS{F%9_NoB0Wgu=jO5dZGKLg-LH?qY^7z1nR+lQvyDV8~Jf z`_S}*V$rr>TlOS*O*`y=-yM%qEXB^^?g0Z9b-erWUOb+7I=;FT-mDsMZ{~6DP5V3> z4^A(X^dx6tCF-)|-Ef#gYE=+MU9H}VqU!}DvhD!J~{(asM^_ojgx>_5__L4-^$a8W;zOCy!74=egOoQMuIFUP9SQci zwci%#P332~smzMTmt_hWwAil5(N$gyg`d&Omrv+YlN0B7ZdS%2F3a_-OjoPil-pv4JBud>8u?~PSdDrYDoYiKaWFk1IGvZ-iz?jCD+#^ARKoFgHBNv#JPUK&*pQ}o!E z+$@)l_R@xT3elUTHx|N8q}ytGts*@yYe;u30{?yPrWR>Yv`jR}FnMwCW4hhc8|UVe zeI9NUEh)h)gdG$>Ych1#6I4kp>vRTzn>I|8RApug_E3OEo%FEdovC>wYA;kNHf z1j@1;cSJRR>KzDo{XzE}6`r7ufd+dioxVUvObg+~&;^7EHU>zBBbezxdqTl%ti95B zQ|JZmL)|~v-IGBF$XUSgFSHtVDNX+n-s_Si51CFv^6@u$Fe3~Ac6W{m33v0T)r0DygOSuyi{jY-)GVJE&e^Wso zP+>BEdC@7WZp&{<@Y-}I=WN}uo(|PcC21&>b5Hu4#?5jTOJ~+D#g>Fl?Sb#OShok+ z)3k^8_e%6i4EC-`1DBG;-yRL>T=?`W1Tn;W19!A*0%<>68`n(!Ro6_u#iJJ#gZR&9*Y3+h~fzH>0!Z==6e96ysPi zg{CtkM2MN7D2yY_BaWsix(Y5od>l{UDR`e;gTR8qBvoNDU5>v@-+zt%o{qkbC>SJ& zB1y0SZGmMRqMPOD>I*?Bym^NR=5d79&AcTNFhzt4ge}6FIgq>RGJ0&~R8Paay?KXyj*%8nwCF(;z$ z(XU2f*ZvMkV-_DDDfm4;0Cd7NQFZlA2J~c#Z1x;@3w7# z8}hIlLmPb2O{`U`?byOXRg$( z&R;e=#r7@0Jongjrn7RD>4l%1<+|+q{PLMGTPpY!@qZArqZljLFu%v_!S5b?R)Ei8 z+Xp(g8MWQ=db!ez2Se(gyBhDODXOO#YOsZ1X{T}O6ni5M59wg_;Kao;*Nf{`G_}ru zy*eHsVG}TpV|oy~mr0ge@cve0=>Ri#0-#T>Lu)J3SC7TlA-T*B!K(L#+#gch>JP5Y z&N@Sxw|@!aC{o3bVd7^{>X82tiJvfqsboI=YA>@Lvv&`&9~rvrc}!3o3I3cswgEW% zImpA$J|26D4bMSJhL9KbBp$PFF!>l78(bo!6gZ02^IRevMKVMM<^nDeEe1;xV@5pB zFwFWJXsYM8efFkd@*hA_dH@4GUVpZj*4$Z|_1@+khn9NTQe*pMrU zB3Niksd-D7myT_Da50AKSe;wCwFmGap{8(?;UdqpY019MQzs<#>_=_tna)q#Kv`H4 zUALAu&jBJxaxiIMxAdRmAjl%E;u0m z{(mvT`+sAn-Wr|3<+SnA2j+ZUxYzE;00GsIGcPYSXmuHal#0OLZQ3QRML5iqmAoNL2Ni z%CF?BURGIqu-uILdS>8W@1x%SQX!atJAZQc|AGt;BP?Rxf((Bc$Z!ubug9DQ^=$6H z!RUOa83?frFl1Q4r6i7^CvAXVM_2(e+n1ft42R6EDM&YX`gY0Dc>&?x2i)47c*B#< z@}3Jw7{bL$-5+`WDppO=O*VJ!uR#j$~qG2 znd$*K(_rJ{O_z%yrwGi{gQ~s#iOlaCOzAysK#8JQI6j~h_+WzzkccA4L)f;69Qybl zJ%nEMmoP926o(2t0k;Y~0!9!4FqhGh3o4g;Oacslb+9Ndxg|4{B^})V)eLfh%$o?_81i-U5c~WljR273y z)3bwr)9Jx~4g@UdTEYrkN5X9B1aV|ttq(qYa;+J>IkQ~HkH^-HrdwMQNMsZOys|D1 zeyUiipZGstSOmN^%zBm(P89z`hp|tDfUKLUZ-?1+5RmAoOgUF!ZCqo(z0p z@8%0Fq_7oYLz`bt2eGu1g`&|m-w^O>lO<(;Yd_%8Z79^WhMsi%Fd+V3WP_pfeS4;I z0#sg*$WlKG{b(@YJ7 zozn~4C9>5jRhQ|)Z1ECz+^h%i<}%HII4RRjwztxV9%soicTg87G+Bv+KFx1%A(fVY zDu>y=VIF~5a=SxF0#p#{Jl`zxWWA=*j-T_*3iz5SBAyh$&6YHCU8>`b34*X;0^vCV zJZ&fLbM z3#UCt6J3B6uFySTC)kMG310vUe^}`7y9ix^vxDboecvJP%s8GoEIu6;pAWY_n=J7{ zEfk+Ved;QE79As_YG_iQLg`Fk7>Hfth8~IW4maN9bmC!F_OOn8qJ@v5uKECfv*$B} z&QdssfGueVmPcTWaSXAbASV3i1};v6r(jwlK_&7Yq%Qy#=_M~HXt{LV;44|JRJEN} zD}Zh047OU)?Tb4phmHioMs5sfwxH4NPM>GJ`1OMxQ__9xb#)Jzrt1=>sdgCNa{R=R z-_bq1M%}OL$)pqj8uoxu#~w|8LbgYYxnw|@FK(O=ps3RczDZU^OW$FY+!~Di4chfQ zK8naV1_4j*2LT|OX$^R7TNoU2Y!WcUvpNLO>zg#6@zOdm?trK$_NL~XC`z8CxyY-H zN%a6MfGiA)LaPkNE0bzyEP^<$r}Q}a^$Jf3D;y1@0pY?w3P=SW+6UEtz1h7fenV~K zP<6?Gq}sc8g$cAxB>-V1hT93WBy5LB`1C|U`(mx%bP=F?3l6&CXfQ{f^G<4L$C_q9 zheQYBWZLf8;$eezC*rY;sZj+-Nv=8+r@Tsr*)Ff#2!@hKOO>uJle}Kbc~H+dWn-Dr zw#bs@x+*+`ov!FWG?kBk(kwMKM(vWZ7~(|ex-6!MT-O;4MHt!5M~HL+Kq&*Xcd@6n zYYL=U!_s6^qvnTIh^}=p%u)!Jcupyb`&AH@w$5&VsgBSbjLo=76?3#Mp(+XEhdajefOHXxx38dxJB zpr}rZZK_s;M%xk|D@P6Jz@PQ=&0s@X=X$FPb>_KUF>+V3&6>y|^GaS&QJ z54hQhDw7lyic>zizRa{e@D(*xfZlN~%h|Tr+j8?LxOqe};;7sf$9=jOjb_TZNv~7x zRCIPt94Pokh#ftD&(#9@=p;)E&QJL-n(}3`LU!|(WA%r%=c<*VsQm8)gLRVfF?)u2 zyj3^POyO$UF6^xM2%YAOkG_=It=enb44^XOkZW4zL}`tt^$u0^t|raZQp?vY$*L^; zuu&CG8J8*KAbANVC<xLL6Rn=5vu5&ac1q4p!QFToM6K-M0N+l7h1hQE~ZL#88qpV^D zqfd{g*LB-XT9UDb6MZ_lZ7QHvyA`Ljuh}Bl#cI8yd_0^0I5p`((-)Y5n#|0ooy7a%R1yA@P2%$klo2vDe8GFDw;d$m*Z{>Znk zmwQ4F9rVlh;DIRYq2BM1xfAB;p?r_~`dYdU(X93_hz?z?M^!3z6k|H9KP8q{qcZChd&%2nly2Ts7933Z2G96=f#zY%PlGS&XcD!h+3Ca`1%Lt z1N`ogK-S*jHKJWzqh z%^4^~Ey=JY3d@qKa+kA-+$No93-r5=fqgNl8x^||&l6rV;(h76kXyw+`YzP?vLwfj z8_GYo2r%LTBYqq?p%>q^2K1Yb7l`Tu)!rJ&2b_@mtkM4N=5`~skbx6NT-8p~?H219 z5!sV$p|TA$a~UQgZc@A`#*YtCCr=`OdS(bIiQ$>W5%_}6Y0F`Vq-)c`Ksix=JHpx}SJ&NUh(2m%MVU~41+NQV zqW?^{bhSQ@zjMkTd(K#N6TTGASo-(R_pal@GLDq+NBEk*HpYB34aJ_P3E%Nzb4@<) z7NX4>LIh423sY6;1)j zw|6?b|B;D*-K61Ix~@I?mhDD=9qnjoiz{dpua=xkpqRoN8`9X<-KFCzLpFZ|ZwmN0T(=H~ze?xxF!O;?$IfAP!e`O(Sh=wC+)F7zGcM82ot zwDzJbaW0yp55M?M0V~fP-wU(U`Aqv7N5dAK!~oaM>Crz%ln!r-eNO>u|G`Z@t#_rv zz#B_$;3(x~Q4}D({D?}uAk$22;Dug5bnPy>>q6(lGKvEi4=lqZavv^22F1pK_nw7a1L7kK^>cEFz@FZ(?-0Cj&NDc@NJ+6&{D(LU)u zFM`xH)nGb&Aqw2nYQZ=FT;x3ipK#ZvD@|zt$sln}D_d^H3wZpx+ms#LkT(raJT=|N zFwyK2UFKZe-8AU2MEN7RKJIw;z!398QB)ufb_E5 znBKy4sFSJtVgZkCnkH|H4bQwcRgE;H8Bnj>s%7|LS8kE}aOEJYJV0KwEr^CjfSdLM zm!t!G^6i>$eTuZ#Lsec0n|K{(h4Aj0__LOkZCmikp4m}@z4W#4hPN>5V9U=7u&xbV ze{+HKTncJ=IY;{%pF#3fD4bJ)YbBbBL}BeXAGQsz%1UQO(eM^V5;o-9zO2p%52z1Q z5Cc&{=qc1Bxv{Xo+om_e4RCkcmOLXbR4f=cv_hId6uB4#Va7{MHGo3&e6Y!xqdXeG zO1uN}J2blkp9S0rm6s+H`}Nd!STNWie;*+qw_0TJ6m4*KhF7ct!3^0*s@>N($h)59 zXxRx1qBbF@C;7|HTn(3^G@*MvviJT5evE?Fu{zLWoaxcJ2=)QbTgDgGmObPxxZ!6JNBbU6$!D}8MsTp$F!{RGiWo)_#z)J_#i?f!K z0Jhd^h|FPX6fY0qePoPA?^@RffA{a4s=Q_d{IROn;G}<(J4tB~=m#L6vy=UlSezm) zM*xK|L*~gppRLZGER+IeefIM0n-gG-AGs&Lk<0*k%&x95JcN+dRBZ+N*pmOjmqQ^-@PDf>@@+H#2XmhMGqq$e};^B%80{| z2t9rK`0>fSkE){FYHC0pfB2VO+I|fQ6yfPg%d{+rZJqxphBlg#Hh;(e4xF!vFb$FXdSuly+$=c+6IdO!_m$c`EX+d z=fDKpGWhp3ik6Jtf1WXX7e!V}r&83D;E96Z9F+H2+eUOL+-t2VwBs>~)i`kwtI-r8 zR$Ik7_znd(ir^?8X;L(Gelam?Is2)va}@zlXF|X&vTOKHW&GvS8}%s zZf`z@;)nRU&kCCwx0r+6O8Wl0q!;#4O264R9SXaI^fQk8e;$oa$Qt9?I8)YUSF0es zJ9YRI2$)E+677^o4^tyOopnhfqfjv|{b;3AX-(B&=ZL_;%lgZYq1J6VrzoM?!_oX7 zvBdwQSmOULv1A&v$B0A;5vurkH`?<-YCXq0%c@Ce3bH#Rfj+D^{zzy3XR{&w3L9Qc zuUyVDAtyNRI6ofi^j3;*sm8fmk=kwrwkqbj0=F4VIm0v!Qu{3l z>>Bt`>p~<8H5V=r2BU-j(nEwA!Ma!@+F;UxX?Y~U9l5AE&ST-J7jU{zT3e@@!6-mCRtE?mC19-ocZnK9Cb z=T{`_8=KeZOq39S(R%<4sZc>}K5$RyG@4203zi|Q%IXs;_0DCqpO#~B4kR9%3qHlE zIo>|@6JfyJDSA`T@8mXVFd~k2&l~}wzH?p1%GjbnR36&~K+YB=FPW`I!m&|0^qgii z&1f@&f4Rh>c29ZcoL}%w1w+b{P>4--RZoJiblZ!8;nh@kWSu>EqUV$g@Lm%v1rTgU z{c8C@0rEVPo3|E)!rohrpq~(2?e`9UJWYTn%Gtl=JdAnwqh@|VWM}okv ziUu}U*zM#e0{<_?lKulMS5|^#F(TPv4UEu9Z7h;zuArR++2b(;zay^>Y593=B+&-? zFO4{KWZunI23AvlWT{9qzn9rcYPW}wgSO>86f&Gu$R~?HxnuV^u>D{K#opLjCKEt= ze<)>-Z3uH+T<=l{I9D~-JI073ophX)eIcM;RlnZ0S3^Z92OjRvYLj1|StX;Eq}5n_ z8DLRs7~yK0ixav-(KhG1#=$!l{G@kHnq^D&V=JyVX4rOe#`;?+@1 z_~MR)fl5ZOh6j_pTiY69ftqRW(R9!Jf9ZROSkH?1*^ESVmP%;LY!HDNvJ7e^vrOPJ z$ZyhVD2=t3`kBpEsus|Wf(V@Ga0adbViq{@a=4rd4%bJ)(UtqrISIVj5A2m7j4Xr* zQJG%Qll~{*XR{K73mY*3mW~il(>FHAFd)^4Q?<_^D%t5PMP&6bp3&lnRErFbe?P{= zWSXX7xQ5h&{UPk!lEm?jRZ94&q~|bI1{bfX`0+Me|ia=p#G()C6VB{Yy1q#pZ35gV;xe16IY}do^vI8 z9sR>5nsvw_InGI)eb1JP^e8olsc8o(nDJW08IZ-e|ETqJUWBa zkVM;&)DP#ZH3(h|Og}T+AzdrU1T%XqF7V4~l=>1DV0sJ-NhY5&C@jFp=MCpJ1rv9k zq|>kfqy4WPiF^^7h6ns4_SMUt&Rqd4kXtCA{ZUXTRNW$ygqUc7!Yo5LsfhwK`E z8q!@gS+{Bm-Ohf!{O;`e<=KDF1Q7Hc;e@`YV72nXG0F%s)QjYs@n-2zGA0QFPkO>rB;~h7Jp&;>;xApa+6Zas z11Wz%%6H~6_L7u$`c!8(Gnu%z_^Z=@H4qGxdodGkp{boyBXGaRDXXf2NjNuactTOp z_&2NB90qcpzPJiv)lj>qvDAxIlk0{#1@5crL#ZvvLO1Jr+0LKoE-T8`+uFyjo<>T7 zodv>6SV7W570D5aeWaXU=3yMVw8ZH2a+XG*%raXqmJ9+-BX4JE=&nr94Ql*PFLm>4zPC$sWoJqL7hC)@XEbZM13h6bbjjXb>8@s7*_{FJ_4X>UUkSsvluj z3JAa@CDGt%pVym(6*Zq_-MXUD+%kAO1JTKXyqwLvq;VDpw}zv&?!4JNl&Sm7O7_A~ zXewRO=Z{5`6O)&E)i9ZtWu{wy-JnKr>q2;G7}3^0ua~;z?H9V=zHlEA&Z?^*ik4-; z;x)8cgu6jfRxfp_Z%Jy~MJrin(6c2YeE!{Fnz8sz)|9lss1}6C8|FscFS9j>(~f`% z(ZI%nSb9;AI*}iFX{<0BK%DTTj8jQ725mD4JMu#FF$it%`KwAf&sGqBA~r$7GMF=m z`G5t53x6Cg!X)&3UyyFE{Luett;*eG74bEK;;=Nozs16;{4sGhZ*Y z0Yg^jy6o80|3On{O_7m*WHy?C0kfHmt>wL59oqpxID!;Jjme&^V*rj3CGZcJAq~+k z*dO{}iV$LV?8ScSG}>8!Rd-44MySDg6(&2jRgo7c_M4Ad-{sjS+K8usZT|~*wB5t8 zPKNHk#umX�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 xA){bnf&DkZ+L^Ga^v#N+