From d886cc7e7a45ab8d3661c1b8d4ffd6fc1b6af78c Mon Sep 17 00:00:00 2001
From: Benjamin-Sitbon <Benjaminsitbon@hotmail.com>
Date: Mon, 6 May 2019 13:12:05 +0200
Subject: [PATCH] Move

---
 circ_list.c        | 370 +++++++++++++++++++++++++++++++++++++++++++++
 circ_list.h        |  57 +++++++
 circ_list.o        | Bin 0 -> 4410 bytes
 joseph.c           |  75 +++++++++
 joseph.exe         | Bin 0 -> 45411 bytes
 joseph.o           | Bin 0 -> 1695 bytes
 makefile           |  29 ++++
 matrix.c           |  30 ++++
 matrix.h           |   8 +
 matrix.o           | Bin 0 -> 694 bytes
 matrix_compute.c   |   1 +
 matrix_compute.exe | Bin 0 -> 40910 bytes
 matrix_compute.o   | Bin 0 -> 668 bytes
 pointer_sort.c     |  71 +++++++++
 pointer_sort.exe   | Bin 0 -> 41910 bytes
 pointer_sort.o     | Bin 0 -> 1601 bytes
 16 files changed, 641 insertions(+)
 create mode 100644 circ_list.c
 create mode 100644 circ_list.h
 create mode 100644 circ_list.o
 create mode 100644 joseph.c
 create mode 100644 joseph.exe
 create mode 100644 joseph.o
 create mode 100644 makefile
 create mode 100644 matrix.c
 create mode 100644 matrix.h
 create mode 100644 matrix.o
 create mode 100644 matrix_compute.c
 create mode 100644 matrix_compute.exe
 create mode 100644 matrix_compute.o
 create mode 100644 pointer_sort.c
 create mode 100644 pointer_sort.exe
 create mode 100644 pointer_sort.o

diff --git a/circ_list.c b/circ_list.c
new file mode 100644
index 0000000..95ed608
--- /dev/null
+++ b/circ_list.c
@@ -0,0 +1,370 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdbool.h>
+#include "circ_list.h"
+
+void display(Element* head){
+
+    Element* now = head;
+    printf("[");
+
+    do {
+        printf("%d;",now->content);
+        now = now->next;
+        if(now == NULL){
+            break;
+        }
+    }while(now->part != Head);
+    printf("]");
+}
+
+
+//Fonction Créant des éléments par défaut
+Element* element_create(void *data, Body Part, Element* Next){
+
+    //Allocation de la mémoire
+    Element* New = calloc(1,sizeof(Element));
+    //Attribution des données
+    New->content = data;
+    New->part = Part;
+    New->next = Next;
+    //Retour de l'élément
+    return New;
+}
+
+//Fonction qui créer une liste vide contenant seulement la tête
+Element* list_create(){
+
+   Element* create = element_create(NULL,Head,NULL);
+   return create;
+}
+
+//Fonction Créant un chaine par défaut
+Chain_Circ* chain_create(){
+
+    //Déclaration de la tête ainsi de que de la queue
+    Element* tail = element_create(NULL,Tail,NULL);
+    //last et next correspondent a la queue pour la tête
+    Element* head = element_create(NULL,Head,tail);
+    //et inversement pour la queue
+    tail->next = head;
+    //Attribution de la mémoire pour la chaine
+    Chain_Circ* New = calloc(1,sizeof(Chain_Circ));
+    //Distribution de la tête, la queue et la longueur
+    New->head = head;
+    New->tail = tail;
+    //2 est la longueur de base vue qu'il n'y a que la tête et la queue
+    New->length = 2;
+
+}
+
+//Fonction vérifiant le contenu de la chaine
+bool list_empty(Element* head){
+
+    //Si head ne pointe sur rien alors la chaine est vide
+    if(head->next == NULL) {
+        //On retourne donc "vrai"
+        return true;
+    }
+    else {
+        //Sinon elle n'est pas vide on retourne "faux"
+        return false;
+    }
+}
+
+//Fonction qui déplace la tête au prochain élément
+Element* list_move(Element* head){
+
+    head->next->part= Head;
+    Element* new_head = head->next;
+    head->part = Tail;
+
+    return new_head;
+}
+
+//Fonction qui compte le nombre d'élément de la liste en partant de la tête
+unsigned int list_count(Element* head) {
+
+    //On utilise une fonction qui contient la tête
+    Element* now = head;
+    //Et une autre qui va compter les éléments
+    unsigned int count = 0;
+    //On compte tant que l'on est pas de retour à la tête ou que le prochaine élément est NULL
+    do{
+        count++;
+        //On passe à l'élément d'après ici
+        now = now->next;
+        if(now == NULL){
+            break;
+        }
+    }while(now->part != Head);
+    return count;
+}
+
+//Fonction qui insert un élément après la tête
+Element* list_insert_after(Element* head, void* data){
+
+    //On créer l'élément que l'on veut insérer
+    Element* insert = element_create(data,Trunk,NULL);
+    //Si il y avait déja un élément après la tête
+    if(head->next != NULL){
+        //Notre nouvel pointera dessus afin de garder intacte la liste
+        insert->next = head->next;
+    }
+    //Sinon on fait simplement pointer la tête sur le nouvel élément
+    head->next = insert;
+
+    //Puis on le retourne
+    return insert;
+
+}
+
+//Fonction qui insert un élément avant la tête
+Element* list_insert_before(Element* head, void* data) {
+
+    //On créé simplement un élément qui pointe sur la tête
+    Element* insert = element_create(data,Trunk,head);
+
+    return insert;
+}
+
+//Fonction de comparaison des données
+int compare (void* data1, void* data2){
+
+    //On vérifie si les valeurs sont différentes
+    if (data1!=data2 ){
+
+        return 0;
+    }
+    //Si la condition n'est pas remplie alors elle sont égales
+    else {
+
+        return 1;
+    }
+}
+
+//Fonction qui recherche un élément dans la liste
+Element* list_search(Element* head, void* data, int (*compare)(void*, void*)){
+
+    //On stock head dans une variable
+    Element* now = head;
+
+    //Boucle s'arrêtant au retour de la tête si c'est une liste circulaire ou des qu'un élément est NULL
+    do{
+        //On compare les valeurs
+        int v = (*compare)(data,now->content);
+        //Si c'est 1 on retourne l'élément car on l'a trouvé
+        if(v==1){
+         return now;
+        }
+        //Sinon on passe à celui d'après
+        now = now->next;
+
+        if(now == NULL){
+            return NULL;
+        }
+
+    }while(now->part != Head);
+
+    //Si on fini la boucle sans rien avoir trouvé on renvoi NULL
+    return NULL;
+}
+
+
+//Fonction qui supprime un élément dans la liste
+Element* list_remove(Element* head, void* data, int (*compare)(void*, void*)){
+
+    //On stock head dans une variable
+    Element* now = head;
+    //On créé une variable pour garder l'élément précédent
+    Element* last;
+
+    //Boucle s'arrêtant au retour de la tête si c'est une liste circulaire ou des qu'un élément est NULL
+    do{
+        //On compare les valeurs
+        int v = (*compare)(data,now->content);
+        //Si le retour est 1
+        if(v==1){
+            //on fait pointé l'élément juste avant celui qu'on supprime à l'élément après celui-ci
+            last->next = now->next;
+
+            //Et l'élément qu'on veut enlever de la liste ne pointe plus sur rien. De cette façon il n'est plus dans la liste
+            now->next = NULL;
+            return now;
+        }
+
+        //le précédent de vient l'actuel
+        last = now;
+        //l'actuel devient le prochain
+        now = now->next;
+
+        if(now == NULL){
+            return NULL;
+        }
+
+    }while(now->part != Head);
+
+    //Si on fini la boucle sans rien avoir trouvé on renvoi NULL
+    return NULL;
+
+}
+
+
+void list_free(Element* head, void (*data_free)(void*)){
+
+    //On stock head dans une variable
+    Element* now = head;
+
+    //Boucle s'arrêtant au retour de la tête si c'est une liste circulaire ou des qu'un élément est NULL
+    do{
+
+        (*data_free)(now);
+
+        //l'actuel devient le prochain
+        now = now->next;
+
+        if(now->next == NULL){
+            break;
+        }
+
+    }while(now->part != Head);
+
+}
+
+//TESTS//
+
+//TEST DE LA CREATION DE CHAINE
+void Test1() {
+
+    //On créer un chaine afin de vérifier si elle correspond bien à nôtre code
+    Chain_Circ* test = chain_create();
+
+    //On verifie chaque attribut pour qu'il correspondent bien au code
+    if(test->length == 2 && test->head->part == Head && test->tail->part == Tail){
+        printf("\nTest chain_create() OK");
+    }
+        //Si la condition n'est pas rempli alors notre fonction ne fait pas ce que l'on veut
+    else{
+        printf("\nTest chain_create() Error");
+    }
+
+    //On libère la mémoire
+    free(test->head);
+    free(test->tail);
+    free(test);
+
+}
+
+//TEST COMPTE DE LA LISTE
+void Test2(){
+
+    //Création d'une chaine par défaut
+    Chain_Circ* test = chain_create();
+
+    //On verifie si ça correspond a la taille donnée par défaut
+    if(list_count(test->head)== test->length){
+        printf("\nTest list_count() OK");
+    }
+    else{
+        printf("\nTest list_count() Error");
+    }
+
+    //Libération de la mémoire
+    free(test->head);
+    free(test->tail);
+    free(test);
+}
+
+//TEST INSERTION AVANT ET APRES LA TETE
+void Test4() {
+
+    //On créer une liste
+    Element* head = list_create();
+    int* data = 1;
+
+    //Utilisation de la fonction d'insertion après la tête
+    Element* insert1 = list_insert_after(head, data);
+    //Si la tête pointe bien sur l'élément retourné et que la donné est bien celle que l'on voulait le test est bon
+    if(head->next == insert1 && head->next->content == data){
+        printf("\nTest list_insert_after() OK");
+    }
+    else {
+        printf("\nTest list_insert_after() Error");
+    }
+
+    //Puis on refait la même chose avec la fonction d'insertion avant la tête
+    Element* insert2 = list_insert_before(head,data);
+    if(insert2->next == head && insert2->content == data){
+        printf("\nTest list_insert_before() OK");
+    }
+    else {
+        printf("\nTest list_insert_before() Error");
+    }
+    list_free(head,free);
+}
+
+//TEST DE LA FONCTION DE RECHERCHE
+void Test5(){
+
+    //Création d'un liste
+    Element* test = list_create();
+    //Variable de la donnée qui sera testée
+    int* data;
+    //Insertion d'élément de 5 à 1
+    for(int i = 5; i>0; i--){
+        data = i;
+        list_insert_after(test,data);
+    }
+    //Recherche d'un des éléments inséré
+    data = 3;
+    Element* test_v = list_search(test,data,compare);
+
+    //Recherche d'un élément qui n'a pas été inséré
+    data = 7;
+    Element* test_f = list_search(test,data,compare);
+
+    //Si il trouve le premier et non le deuxieme alors la fonction marche parfaitement
+    if(test_v != NULL && test_f == NULL){
+        printf("\nTest list_search() OK");
+    }
+    else{
+        printf("\nTest list_search() Error");
+    }
+    //On libére la mémoire
+    list_free(test,free);
+}
+
+//TEST DE LA FONCTION DE SUPPRESSION D'UN ELEMENT DE LA LISTE
+void Test6(){
+
+    //Création d'un liste
+    Element* test = list_create();
+    //Variable de la donnée qui sera testée
+    int* data;
+    //Insertion d'élément de 5 à 1
+    for(int i = 5; i>0; i--){
+        data = i;
+        list_insert_after(test,data);
+    }
+    data = 3;
+    list_remove(test,data,compare);
+    Element* test_s = list_search(test,data,compare);
+
+    if (test_s == NULL){
+        printf("\nTest list_remove() OK");
+    }
+    else{
+        printf("\nTest list_remove() Error");
+    }
+    //On libère la mémoire
+    list_free(test,free);
+}
+
+//Fonction de tout les Tests
+void All_Test(){
+    Test1();
+    Test2();
+    Test4();
+    Test5();
+    Test6();
+}
\ No newline at end of file
diff --git a/circ_list.h b/circ_list.h
new file mode 100644
index 0000000..8cbda30
--- /dev/null
+++ b/circ_list.h
@@ -0,0 +1,57 @@
+#include <stdbool.h>
+//Enum Body afin de déterminer les partis de la chaine dans nôtre structure Element suivante
+typedef enum Body {
+
+    Head,
+    Tail,
+    Trunk,
+
+}Body;
+
+//Structure Element Contenant la donnée, l'élément suivant, l'élément précédent et la parti de la chaine (queue, tête ou tronc)
+typedef struct Element{
+
+    void* content;
+    struct Element* next;
+    Body part;
+
+}Element;
+
+//Structure Représentant une chaine circulaire composé de la tête et de la queue ainsi que de la longeur de la chaine
+typedef struct Chain_Circ {
+
+    Element* head;
+    Element* tail;
+    unsigned int length;
+
+}Chain_Circ;
+
+//Fonctions defini pour le fichier "circ_list.c"
+
+Element* element_create(void *data, Body Part, Element* Next);
+
+Element* list_create();
+
+Chain_Circ* chain_create();
+
+bool list_empty(Element* head);
+
+Element* list_move(Element* head);
+
+unsigned int list_count(Element* head);
+
+Element* list_insert_after(Element* head, void* data);
+
+Element* list_insert_before(Element* head, void* data);
+
+int compare(void* data1, void* data2);
+
+Element* list_search(Element* head, void* data, int (*compare)(void*, void*));
+
+Element* list_remove(Element* head, void* data, int (*compare)(void*, void*));
+
+void list_free(Element* head, void (*data_free)(void*));
+
+void display(Element* head);
+
+
diff --git a/circ_list.o b/circ_list.o
new file mode 100644
index 0000000000000000000000000000000000000000..34952b9f1e0830060127ae3bce6201fa56bfe395
GIT binary patch
literal 4410
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
Jk`Q)>0|32UDpddg

literal 0
HcmV?d00001

diff --git a/joseph.c b/joseph.c
new file mode 100644
index 0000000..7a4c393
--- /dev/null
+++ b/joseph.c
@@ -0,0 +1,75 @@
+#include <stdio.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include "circ_list.h"
+
+//Fonction qui supprime le k-eme élément
+Element* delete_k(Element* head,int k){
+
+    //Variable de déplacement dans la liste
+    Element* now = head;
+    //variable pour le compte
+    int loop = 1;
+    //Si k = 1 cela veut dire que l'on va supprimer la tête donc on la déplace
+    if(k==1){
+        head = list_move(head);
+    }
+    //Boucle jusqu'a que que notre compte soit égale à k
+    while(loop!=k){
+        //Incrémentation
+        loop++;
+        //On passe à l'élément d'après
+        now = now->next;
+    }
+    //Affichage de l'élément supprimé comme demandé
+    printf("\n%d",now->content);
+    //Suppression
+    list_remove(head,now->content,compare);
+    //On retourne la tête dans le cas où elle aurait été changé
+    return head;
+}
+
+int main (int argc, char *argv[]){
+
+    if(strcmp(argv[1], "test") == 0){
+        All_Test();
+    }
+    else{
+        //On récupère les 2 premiers arguments
+        int n = atoi(argv[1]);
+        int k = atoi(argv[2]);
+
+        //Création d'une liste
+        Element* head = list_create();
+        //On donne la valeur 1
+        head->content = 1;
+
+        int* kk;
+        //Boucle d'insertion jusqu'a avoir n élément dans la liste chainée
+        for(int i=n; i>1; i--) {
+            kk = i;
+            list_insert_after(head,kk);
+        }
+
+        int* length = n;
+        //On cherche le dernier élément de la liste
+        Element* last = list_search(head,length,compare);
+        //On le fait pointé sur la tête pour avoir réellement un liste chainée
+        last->next = head;
+
+        //Affichage de la liste
+        display(head);
+        //Boucle pour l'ordre de suprression
+        for(int i =0; i<n; i++) {
+
+            //Si "k" depasse "n" on lui soustrait "n" et on lui ajoute "i"(qui correspond au nombre d'éléments supprimés)
+            while(k > n) {
+                k = k - n + i;
+            }
+            //On supprime l'élément à la k-eme place moins i
+            head = delete_k(head, k - i);
+            //On augmente k de sa valeur de départ a chaque boucle
+            k += atoi(argv[2]);
+        }
+    }
+}
\ No newline at end of file
diff --git a/joseph.exe b/joseph.exe
new file mode 100644
index 0000000000000000000000000000000000000000..1a921245da6d6d3bb3b20ddad95a114102965370
GIT binary patch
literal 45411
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
SFlf3(4=J3v7wmNC5Ig`h7-$Os

literal 0
HcmV?d00001

diff --git a/joseph.o b/joseph.o
new file mode 100644
index 0000000000000000000000000000000000000000..bdc613e042be2501a222e768b46c43b96e29b4e0
GIT binary patch
literal 1695
zcmeZaWMcpUJ{ATBSrCJPg;B30wW0*fh7d;>85md?85jbXA$&mw1_lKNg9N>l#F9ja
z5Khv8!Qg;iQgJa(1yG3wkh&sN19=!27)~%j6+kHm1_K9u6DS8tsW31wT*0Q!&=jfy
zLPanzF#KR*VE6^~2S^LZywJ|4&2KciT{${kzZ`e{z{tSB&|J&ISSkw=Vo`Yk(%tFG
z@tU{U^#fzK>z8f^mQL3%-L4<3U3p4hg9I2lT~t_(vw$4J09FnbJno{x0oLoH!h&Q}
zw=2iV!yr4Kd}w}S09DS@e1N5!;kb(m3kw4SLnqYM)&r$nU<EIQ85tP5T_LJqvYjp}
zGGH-|Zn%z47Zn|_j!qX9jcykejpGa;|8%>k$aK1>sJvF}c2QC3bWxG$c2SW4xf-Mf
zW?*xUiV9<Mjfx6m{SBxN5tt{sT~tKS)pxq62y}yRh>AvM01L8F$6ZtuKz@H6-0h;G
zqYbkDP`8VU0^<dc3qfMmE-Ethk3cMK7Zn9$qjUcK{||OP$iGN_V{}o`X$F}AG6<x-
zX8R719VZV@n82l)!cdZ03{JN0&dyc}8orr%?%{g*Md=Fe&d$1Kdd7MNx`vtxU<Lz&
z2uLFX0|R4K5CdZk2ct9(3rhzh1A`0$1cPD$Y?vb-M=O&PFDp~QQ63f+u)GZe149J^
z1A`wZWMT5mUW_0GAWsW1fXw$|U|`^8U|?Wl@MmCP5C)6IfJu;8HUk5LD418rz`y{?
zQ6da|a2?Ya7#PIBvhx`j7{tM>Ees3{5@6N|IO`$<1A`=3jFpjrK?=-LWCYm`vcr^-
zfk7H976A2`2*VOam?<EavVvtD7#J8JEWNbMoK$GY{QJ+qkj|KuUz}Qyp_dF5gi;_o
zK}<#l1qLQiD1bOfI6gNqGmn9R0ThB@H4MmQ3P=Mp;~_?fzY*Gy%M(!EWCkfjNP}6(
zWeF%7V^xDxj)3BknUNE$7oAXs3V{61%n0K_1)-E4lm?ZO%#5HC1mrTPAOizKd_2sr
zATb37h^z&O1I8ec_=2L$ypl99A5?NOF~le5=N2RuL4z8k1|;bWBET3V5?@?Wl$=`t
z=0kLWm;oRHjKOLWOY$?pJP-jA0nt$)0*qlI>0lm+fQeLrIA9DCiBHKaF33r&1Pg%T
zl%bu0fk6)(jw)4ERSbHm8S!aFiMgo^@hPb}sU@lL**K(gGK)*%bMwnm8REgrqEraS
pF()TJ1e8G`!pTLci6t;KnR&&jMJ4fxX(g#eP;JGjiABj73;^-x4SxUt

literal 0
HcmV?d00001

diff --git a/makefile b/makefile
new file mode 100644
index 0000000..3ab6699
--- /dev/null
+++ b/makefile
@@ -0,0 +1,29 @@
+All: joseph matrix_compute pointer_sort
+
+joseph: circ_list.o joseph.o
+	gcc -o joseph circ_list.o joseph.o
+
+matrix_compute: matrix.o matrix_compute.o
+	gcc -o matrix_compute matrix.o matrix_compute.o
+
+pointer_sort: pointer_sort.o
+	gcc -o pointer_sort pointer_sort.o
+
+circ_list.o: circ_list.c
+	gcc -o circ_list.o -c circ_list.c
+
+joseph.o: joseph.c
+	gcc -o joseph.o -c joseph.c
+
+matrix.o: matrix.c
+	gcc -o matrix.o -c matrix.c
+
+matrix_compute.o: matrix_compute.c
+	gcc -o matrix_compute.o -c matrix_compute.c
+
+
+pointer_sort.o: pointer_sort.c
+	gcc -o pointer_sort.o -c pointer_sort.c
+
+clean:
+	del /f /q *.o
diff --git a/matrix.c b/matrix.c
new file mode 100644
index 0000000..fa60b0b
--- /dev/null
+++ b/matrix.c
@@ -0,0 +1,30 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdbool.h>
+#include "matrix.h"
+
+m_double* matrix_alloc(unsigned int row, unsigned int col){
+
+    if(row == 0 || col == 0){
+        return NULL;
+    }
+    m_double* matrix = calloc(1,sizeof(m_double));
+    double ** mat_ptr = malloc(row*col*sizeof(double));
+    matrix->content = malloc(row*col*sizeof(double*))
+    for (int i=0;i<li;i++) mat->content[i] = data+i*co;
+    return matrix;
+
+}
+
+
+
+m_double* matrix_transpose(m_double* matrix){
+
+    m_double transp = matrix_alloc(matrix->col,matrix->row);
+    for(int i=0;i<matrix->row;i++){
+        for(int j=0;j<matrix->col;j++){
+            transp[j][i] = matrix[i][j];
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/matrix.h b/matrix.h
new file mode 100644
index 0000000..4905544
--- /dev/null
+++ b/matrix.h
@@ -0,0 +1,8 @@
+typedef struct m_double {
+    unsigned int row, col;
+    double** content;
+} m_double;
+
+m_double* matrix_alloc(unsigned int row, unsigned int col);
+
+m_double* matrix_transpose(m_double* m);
diff --git a/matrix.o b/matrix.o
new file mode 100644
index 0000000000000000000000000000000000000000..4180cf6ac3e7f81eeca9ac7669e9928d8e04b74a
GIT binary patch
literal 694
zcmeZaWMu$>97YBPeh`C!g;B30wW0*fh7bx23=DS|7#JcLA$$;}z+jM|my%eL2ob_b
zIxrX<&`T;V#;E`*(ZFDEK;Hz)fl?|A3=DsuY#8OhVBnx{XbR(kX$uAh1_ee2h9r=~
z7#J8p6i8iY=hNml8pmB!Sa=v17>={3fFxdkv~;?DnQ-#3yR);Ef`)Hqo_n}neo?xD
zyR);dnVzwpfv%yZ0+_+TAOcbjGP5d(fw6{zQJRN^rGt@yL52Z>SwMD!)Hw2Sv@$vI
zvc??cVPRol5My9q;9~&k2ZbI;l?a1gT4qivNG$^c!@vIw4C#!yi6upu6?(}~K`12&
zr5PC%7??nAhVo$)a{Pd#nHfQLfLJgU3=GI|!^FVAz>F#lR)`!g%sAA56sm&=1_lO@
zFPIsXp*&Q|2+9SeCT2!ZjG$T=pPZPJlMnN#0s|9+4Fdy%UJ)n>sZ>=}G3cdc#HSS{
Q=B6^lLqa7Uq5-QC0QrDRUH||9

literal 0
HcmV?d00001

diff --git a/matrix_compute.c b/matrix_compute.c
new file mode 100644
index 0000000..dbbd85e
--- /dev/null
+++ b/matrix_compute.c
@@ -0,0 +1 @@
+int main(){}
\ No newline at end of file
diff --git a/matrix_compute.exe b/matrix_compute.exe
new file mode 100644
index 0000000000000000000000000000000000000000..2c3ce2bb599db4eeeaaf55a5829244da5d48c2d6
GIT binary patch
literal 40910
zcmeZ`n!v!!z`(%5z`*eTKLf)K1_*F~P<Y7(1_lN``CWVrTR6`u?qKves~D1zS*%b{
zl%HOdn5&SSn3tDdqL7rTP*j?ykeR38;vcM#o1c=Z$IHv50yR0nm4U&Bk(Z&2_d*Oq
z0RzKrMh1ol4D5{Dj7%~NIt&a9ZVU_zObiSUgcukY1Q-|?zz%bOu$dt4W`w#QY@`4q
zSnx<2BiLUI3<?mnAk85CP-DPqK|})s!wOaqgFMW#fPp~*i&m9J28JtG#9=~uC8-r9
z3=9lgw4n|H`4toiFa-<@3<(SY33@4sC5a3S3^E{bkl&dY7#Ivd90Yb?FgT!B1X1_}
zBp(0`5F>;d5X*tVz(L;x#A0B$!wI&4fq{#Gfx!$S1|vc0^pc8;LHq(Z0b-!y29Uj(
z5PQL42ucuausA}f1-s8VC<G(|4yy@}I0eToNDzv_>Pm9J_9}qH7C_Z`fH(*YQm1bS
z@rVUTcmq_O7l?zv4h#-X`bL&uf&ZWYJix%fAjiPK-~$$d6AlalPWmQ>V7@*mF+G5q
zmjxDr6JT|wreOXFkh%|0bva-mI005?W)9|q-N(QPPQwg&U?Di+z+m76=L`^|`Hf7s
zi;6-wLpOu%L<WWf<$kuk3=9W~6Kq)-7!L5ao?&2MIPRhXPMOD9RJa)!7+xr7F)%d$
zVB~M{U}RuuJ;2}koPmL%cZ(Xx3x)@pkH{QiVVD5r+fHF%I8fqgI}K!7OD6*ZgY9Gn
zh6AP7kqqSk8G2e1YUo-9kf9~pj<cwMB>rF6@&Et-|F2i{ZUdQ*u5AiLTj^Pl1Sn3R
z+Fn#^GBAL3zRdpr|9|JV-aYCd{kF0ohqQ+N|NkGP10-~u1?;^So)Du-B3lpex0rww
zKqR0pc&YsV|NjZlFo22igOs_bupryasL8-^oCRFKy?Dz9bH&qt5F4Q?K>_;Wx&{M7
z^NIg2Pom0!19>-8ZtcJS|9eZ+7@+PC?R*;C{6=J9N`M1H>wyxP<1XM(0>=?3>q9O6
zf1&ve4~Q+`!0<u><gqs_F9O&Y7#4CkI52dwsJsZ~V_<kOkBNa{p+W)JD5q}O1&t02
zi+Ml_TvS-PodrPZnl+$GI>BNFAhCQ@u>g=*v<3sii#iPkhHg=?2?8%Zax*YAKl$(?
zlbwO#MGi=Yq0>c$V<AI<1Bk)0kOjnGQF-x$k%6J}@C!=~28K=<l@}*LG%UWF-`MoJ
zsOW&>s=xsht{`2<T~t8jCCC_og)9yZ49yQ1J6%+GdR<gBKz6)f1%=)bo5K^D-^d(i
zQ2_<|f6<;s2Zk5BQNt4=4+=S`{A^VD|EfD09T<AcVB!B?bw#5C!vr`8?R***-26rW
z6xIO_3@@&zGcYv2VF4wfji9W<qQVg10P@{zh{WO?kS|<RScE~sGAb`1;vAjFKwi{@
z3buh2b1Y_XaA0WtRw4+J;{a)7QQ48;!0`XtLJ5$}ffB3ZEGmv5dt<;lSXvM40ww7Z
zQIHOQkZCL`FD$@v9G!<+FO_f}XHfy^{eS5=i;97W1H%ic|NsB@rv8YIi#^<1#&Db!
zWGBdseIVj><7-~HUqOt}&Zo_9Bo=}cwH^SQ26oVeg&=>m9w^}krG@8e;6ONec)|p*
zdJT|kcp$+6ii#I<Y77jWu3sjcJPeY5^5KOmE41kW(vvm;0Yf{VhJymw=Nl_1o|*Vt
zUNJE+yr=~kkb0z(MWyrDiw0E&hF%v2!GkYY4nAOc;mOUwpn2rD>l2U%j=O?u;a(RN
zf#a?hKq8%oI$h6z6OAf^3n>2ybh@4}JOC}PnvXH^@ALcLdb0C$NpZt(d;XSQMg|7{
z{w)j)3=O~4`CB$Hf*4x-Eu~<F5`QZvDES_|_>;foCKCe#<HhDfjK`e*$5@^!{n}i6
zMV-IpBqIaE3P%3cgNzIe&Bqu!Pc@fbQ3Bawc;L9}1yF#1tSg-e%I2ViGZSRY1xR@Z
zGwe|5S4-D3{7w5985p`lFSK6bZ`}-Hy53pLQsBVQ?fPIbC|`A_9_dZ}5*-&Gdl;g>
z;dcyw%PX+s>-k#_f*H}Jk&w_-;BQ?IE^T`&{_h02qr|AU#)`4?0wTRPA7DJ@@IS`#
zN9os=lcj>a0gN3Ih6i3={rCU>1dw|>5A`}R9%HJ1{S;zf>w#VyCjJ&s^$3=Sx&K$`
z*KXG<tp`d?7dA9HFf>~*^0yoXr3e=l7ErUMlSie~_rMET6;R>N-@2QDfuY;?K=V&d
z{uYoEd&3z!<P8tJjQ#ijf9rwXivRpAeqirkY5rNyKjmQS0sg56I1j$G{r~?zB+x;z
z-+X}arS`x7{~^8=;BSfh|Nnm{II3(IK~a@90p>nPWGV5t%wT{-7O0KVTzW;l^AtRm
zUf%!v|9@{F<1t1hgxKl7|Nk#s)9Ap^&G3!I!-2oW<NyEvmbGV!O1oVzv>qtU>-+^)
z3`%-0=l%Wv{}=;9uj>t1xeY3{x?N9z3s=`Opv)5`!NBlR1s1+9e*XexPiT~a>{bUG
z2a2ti{vhL+Vww*zzH|XO4OC6I-Z;h%strJOC#Zbn>5e_o8Kc6|U3;d}M&-pHaR!FY
z8=b$PnW6avBRKWHWcmC5KRAN;ryhU=Dd)k?3okkT{r}&2{iP#_y7*G}@Bjau7hV>F
zsEaSpfZRA|PDJM+Q&1~AVD6lVxrP^3g4p~mFBupZf(;MwF9Id#+YAg0J3ubxUu1aT
z+cCxx=H?TO-;OGju=0YMjNgtmfJB(SA7Wr=U;r^$KuiY4lHBGK9HE_08{dGs0L@Q6
z@ULT0>7Ju<f`NgdaSNEbcR-kde;toXCqxvapdH5KQ89)vPd5GrsVkKO8_NW;K>*BT
z0WlT69R$0`VX;bq1God!z`w{AlvB!7L9T89xw`dICF>4QI}WVRp@fwe<Rng3ke2Ar
zhe1Un7%voX040Ui110j!Z+Oxs{J#Je=?!4%c3|lg1<AG^D1F&{gy-{NQ2q&Sek0K>
zyTICkq51d!62;crB|QH{=7RaJ8B4z$XHf}|bYOT<`t$$)<|7i(hYfGPX6iiL>&)0K
z(h5@5da3lo>ywE5x=;gBo3npD49<VYSwRAzuzx)T<UmM!Po?<>bBRdnff50b2N^(3
zHXa7B`tA^L4ax#)6n2KFaDY;z2NN{<AnG6)9oilNmCYi}wkZV;3{2fFDk>#h$63J~
z22gX3sYIyx2V;qS^AQoSMbUAGco_DHOmJXmd<P<%|1sA+HoV>44C1sNC}H}4q4_Y2
z<-O9kC_1`bRKQgT$Qz*Q9qc$3l^5$785mwKMsbhf0YqGY{0ny9aTXPq0tbc{<q8Z8
z-Lf_X4&W;Kc8PA<gl=Y#58ugyE3D3AFJu%z1yCtZ>$eh)ZfBNG6P5oLx}!N-Z<k($
znQ{}NxcP`kbll;vV8d^q_Lu`W*h>YPkBD@Bh>kl9YyYCxd@AxF^E(fhID$L@HL{Z#
z6m*@=EHAFgGcYWKI<OP$QkW8Fju#0Ki#tC+tlkH17xzIcE@*s!($hkaW4dEh6j~3I
z@;4umFgy^Aa1S&na^yiRHK<LkmrBIDnJf>Na=rHJ=CHh3qS<+<+liy~K<P)Q^)H^t
zfkOyt8X~=QdvJ7mfm4Z-9JtvF4(M$V)vqsfJ8>)qS<-po^=)waf~P;m689qU<{!+Z
zoM7j+9w<!(Cz0kOGKXOzNnl3v5603bP<I?>1^EqBmcG~owc{jMQR{&c5r`xxk-$v?
zwb#Ke(t)bJ{o>W%|Nmc4fyK{@+aT_AP*MS7aC%t?Y6yc$XmMx_1v0a@L`CH|i%Ld-
z14D0wLuZT%&kJ{11_n?xc9y7cbjqlJ3h@_@Wf&M<xXCgwK$2x>c<1@B;LgLH*P7q>
z^t!01fQ$w8MPcfbWkCVU11ct0fGRx~6^rH{4kfJ3KUhkYI%`xoI!jboK+WPqG7JpO
zM|>c4JG?#G?V@7Po1>xtG8SBq=BV(1+yPEdEGjQ}z{U%7hp1Q}8P*x1BJ-k9hJm3w
zL`A0gmqW?2=3gu&3&DPY7{CEC7}=o1AnV@<z+BK7qrw47+aRwTXHjVYwLuU3`~QDo
z3^*f{utVD)JH7-tFdSzEiGl)A7sPG;!Cv<O+^SP({=v=P_X6Z^Q;<ySH~!Xs5Ks0;
zkOM>OZT{9q5RdmykORYRhF}MV)|31#poZygkm_z{4p29=)fv>TI?U7f8zjiz4C-Wd
z3wKwu^lkzT7j<`mNd9fX9KG!zR`V|b{+6kr;^~(Hf6E&%gM+_iGXn!dXNU^RaTb*q
z0S=%V6y!CA7q9>R{|~keVtlb)w>L|-aPwgf=7}KFdK*FHPEdCa6sWzRfCW{W5Y<JO
znvW<%$HgCp_dmf#bqlv%DqY|04DKeFfqJ)#VCj*6`*e_jX|0zk*&0uQ#^f|VF<t~2
z+v%esvlG-&d9mW}|Nk$!LCy9u2L5dpoxfT@iqA9r|Nmd}J4h+xPq1Q8fWN2)DZU5l
z)PVcXnje`tKuW+0K(2lf1yZmVRKdG|eZK`1m0$n-{}0X&fdRIlk+WVO6`mr|#+M*=
zGbe*Chz3iPzt%k1%*hZDd3XZ2)egzupybHY04lD2{4FtT{_&^8s`WsLNAr*WCA!T&
z{*{>BRN&w4AOmXrd;?dZ0wt{c>q1m`z{3ZJkF$z6IDowK|Muh8_aMA~pwdosMxz76
z>oW^M(yupy90<xcO$-bSVZoi3558tKJlXu2vH3A0JiPh$3AA1+(QLV0!rJ_+zQm#V
z0AuUPQn}_|S|u*czwArw4No@ziss)Z0BS^DD!tx$Av*4G^H0V)*5+TaC5p|z6#1tf
z;@@_O@#5<(p!&L@f{~%OfT={R^TX?Hy=4r$K!FU_WO%9b!ePTpulGVSKD0b;Jx~%8
z7TkHP`He`o15a-RV=v2GQ1Jz-br>WW7&;Gjx^e6Pjli~^EKzE`-FfS{8z@>B>VzTX
z<txV4OUGFzg7lPr0tFAK)<KlNh6kV-4QgL#c;|6Y8D_)3PXd%6JAG6Xnt#W3-sNve
z1Z9)oy8JB>pq8_bicIH;?-x2<R5W&g{GbVHgX+BI?R=+Qq9W7!tt5kg->v4~vAyMt
z{4G*2t-YY`!fpN*P@kvyw?2Ohs7cfe>SKIoU|`_iCf0ek^ZR!f6$Q{ZZRzGt9hHs{
z6_pp)K&{SW-7YFJAb+0_XJF7g#=k8@MWyvy=?qY*)BHf;wGb$Ln~yWLT;gw82{ui<
z;a4nwiyf$=^{c-0323MZ)NbeB7S7mwobmPLUQqfEX9TMP<!JtWw_0zP6m<KjDD;*y
zH9iD6!tySEFF&Y<R-&TP`J(gOYe7(JqSr>F^?!+`<?GHDB{{9%dNUYHUx1vZ3v%dj
zm_y}34n5xbzw~-{h>AjYiHb_|BL)6#Y&Nkai8l2m&dtXdTMm@IYd&IQcmP~3r%kYq
zQIRR}=ie6(a^cHq|Nj5qs|zYwzQ26-@Bja_2_QpW9s*@Y$aq=nrBWXLZElRs#~5F4
z=q&^F55X3c&Tl?q)9c0vHWp-i^Kr)JM+y`8x3SyAmgw2kmxzLb>Okqcm$jfy4Q#vw
zVxBw5_Sg47<{f8zeHvtxJH)8w<BTsC|NH-+zt0ww<w1dR?zKE3J$1XN==ADXw7xCT
zwfx=rm%qjP|NsB3-+F8Rmp<v#QF*~5#=y{d6c#}LL>U+~kG8%oy$o_9$ZxO!;%~9}
z|Np;DeF+~VkY2sK2KGP1eGvaX1-b7S<Lh&vh)1N~qoDMw(_p37>7ydTzm0>x#T=Ai
zT~tJRs~8WyU~T>Y8takZ-*>UM{C}@2W9udUmP}9@`DxGJ@)p!?{}~M_&l`SfmBf8>
zQITLQ;cWg@&)=d4N(e{!_r?Ejxy|3w#>l|%-9<$NluY<r4}qddL<N*-UZ{zJhoV63
zK~YF0sd=pR8-GhPNX-S!8_h>_z!8%+fqz>lW9Q+9Us|OCko<a>k$;<T!!NCpuZ9O&
zE|pyEu2B(bJkP+u$ncs6;@^h4{|qI2JAZb5>b&uS2Nb*qN?*WC<lh(mALOCmAb->{
zDwZU4`>2S#Q2q1&f9KKGxBM-~!8ya10Thux|NZ~pQ2(ESzXk00qpzP$=)9(R?`0sU
zZh)k(hM#);Eue~-f8W987kXgtGB7gmx32m3|Nl$SC}(dh6Ud6r8!rz026e7Wv^wv;
zo(ivz_JuMwA7uiKHyj1&*au2G``EtUc=-dw+UCk+6I&A99ik%A{7B(7_k`xdj4cOB
zRQb0t+r*ZL+0>W5YrRy;$-m8+vH39L>xUrXac?%`OT+*F|L=%pU|@K;;otxNhPPiX
z{rCU>4ttQmd=M)d#F`4qC$Y@@+gzDn&w&)H;bEP}f;%razY*wm;$e1T>1AmJ^>o24
z6(?{zbdoTrg<YZss;7f_I-NOsD;XItGXCnUX6ZEPIL-p<*fTUA5dde|!_7w^T_8{;
z4N8Wvwwg#cXn2+N#hd^C|93lcv>qs7Y5i8J2(GhB*gHSHxD3j5GAb{;g+a|SP@xQt
z|ISY@B0&}UHE6ROGJe&0xcN;^XXu57XDpq*NBCRAm>C#4Q&)hRb%%u*7<vO3n-2&;
zhp)PR{Qs|cq}N4-2i*UPQDFfUOh<$mz{9pZoS>1jE1kzcV+gLGK@Nr&Gk${Nt<&`k
zf9qQ&28Qn13!NW2f4zA410>Afa-9V{;?Vi4;ao!}i%Pfek<Je<Qb5jkJ=5)bru8I$
z>oz7(;qA<5qhBIv6H_AEU3z7|NT34)xV`at8Gj2mD+5Ef>lKhogoGFv7;jh}=5J18
z2kGKy_^IFFyO_VlpPhlB;b%;#%1c*v_<R8WHjn?E7aD%*^S5NPf#vyIlGs3A{%?7?
z^dbK?hyR_SCpugg^KWxqY@=VoVH3mOTEqq#<T}B>t#t8grp{x{hZy;{G1=(zPdRK8
z!$0L9$LZ2nogX0DK#p=<((U@7yY|9y*E68@QK##kZidF^3=IqnowZj$4Fo|}NZ_64
z1tpEn<NPf<SU~<+0+K8Ndu>lQICxD3LBV^V+x5V4SMXG5^8uz#*ENXp5j2M4!4Ed(
z7=Mc(*qAG=2TItQ>o^2TANI!abo*Wa4d~o@VF=DnrDyrKhp~0LuIWtO(Cfm)4~^v|
z-$1bpwg)t{$k1D&0_p>_)__gi(tL;!G-v}(0go9!fWrNd00Tp(iOP#f0t^g@)Di<W
zr}G1-f!2BMHE;7V#^wWzEtfjN{+Gz`Zxd+vRbTp=e;X))f$A8TT<Mce9+emMf)I~%
z-r;X?2U#3@rujD$|C9s#+YU6pU{pNZ?Rudz_RI<g{?-y^28Qm~9j&+dTh_5KFsOpc
z%+A^^oyT8`yx<T38PhG??aflB)OxZ+rSmi>%lz*&0e6W?@4esyTLe~7f3Ndm>&enP
z-L+dfUAG)(Q2~t$zxWCcQvMbRkTs!OItw_CJAj)(pyG~!q4g4f-wjZnab|h>m5G7j
zxa%2Eo29pmp*wX&x9b_$m}lCA&eQ{-z{=%E4kYuhpuq0D2hLQ-J6%tJil_P#4V&r`
z`<4T};f%e0j2-O!EqhoP7;LKfTeh%(61E#-=k?BWHua@9Ko#^c_WG6s{H<$1{e|P8
zpnQE4R9<w}p6UGF9eM^le9FJgozbSgM6LNaqfKoIr;SdjL-S9@QtRfIjF7scg9)Uh
z`4FQ`ed#U!ZSG9RnCg3@m|6~WI5C!*9CKoV`RpYhBLf4-e4FYLot6XqQ(dp{Z;QRs
za=W*Pv4e@f<tHdGKE3Xnz`xC%x${=@apu>(;PR*WAmeUO&>VBU!ua|^+Jp{w#^z&8
z{M*=?k2AgG09DC4{H+H;)z}ZvP%;Dmwg|>v55|Vy_57{!ph~oYiJ?^JWh(;%WIPDe
z-Yu!>JjlN-lBw5`so{5h$(x4X)g_e;ziUfFo8K{(?(Owp<lpAN_?jK$UjA*2&4(D9
z4>E%M^uP2&w=1Yn?k>I1?Rx~2Ej~4$V|?-a*Z=>`KNvepFYvd3`Y{dmI{Yo$LG2OO
zGq1&4Zu7UMg67&l<{g6vNq6djmxBNP|8G9V_|gqjdi{9a3d;S@K=ED6iyYtXpa1{w
z4!xpzq_;+er}O7)aYX)YJ_vGO%YhEZ|0M#TQl-B14gWSLkl^dbpv;}k2TIJHU-(<5
zgN9T?Z@lRI`Tu{X>zS7qe*OR7dE(_i(15b*1p)rnTcFlN?1^Kpi(`(vE&;XBUl#xV
z{~u&ZDL1GD+tGTdgu6SGquX`Ii^V_x|L?Bd(;Lsy?feJiWFcM#hHiIo7f=Y)yskaN
zSmNFpyXR#P$P8F}uG^ObR6v7fuDeq=ysZ8G|Nl4F3oMWUR)~3>KOkk-K^~}qCF0$#
zd%7K1nh%4kj+G#B=GFtH@4H<eKywbLjC9=taz-~uHg(0zZGZm%2jwT%J)NOjx<e0i
zg9;mP`QxI(^1>CQ%J)Eb=obEME<D^e`Xy>MF(pc!Cz=m1cDioqJi))scX0;~+e?Sv
z|NkF%Jp<~{yaY8JyIl`-x^8)?`5P1?9GxFtSpWF{A6)w%cLjNh;pGHSurfo+mR1Q+
z#JcWyDFCW=T_1G1?s*vkV%8pM{m<XB=imSTFStNX0gY_4beHbwX6s~8`F|Z$j?V|B
zpAWrpES=w9z6P;FPjvV$e!1l5|NpR3rk@)WxBM-eK+<SM%<GPB*DIi?>~vl7at$c5
zLN9dQcroWAs1gO&t)RpQ8nt=$f*&-q39qnkegKs&-~#y6YhF<52epAZoWKc;*#?}z
zAkCl0ojfXF_qQGZB`|4_&q6ss%{{PxLpff^eg_T1gZ&)?a-{2tmydt^|IfcoqSN(6
zN9^L4SAYEf-%xvnfxqR_@Bja8bUHurx8C^k|Nl#!KmY&RRF`movdO~l|NnP}p6NXQ
zGU@mK|B!|gtbGlgPt)lx73q%U=&l8ibbdb$syItb8|}mb9T-Y@J3qW|{`mj@aW)XQ
z(?q4)SD^D(=ZzP7-$5Cdsq<iocyH>L&J*B9@NqX#5zg@X5GcPkKNl!@(&_r3GxZ6m
zb@P-HIbW`S|Nnot?*nkYWa<3%njbv>0&X&bf=e1)EQ9hRIJl5Pvh-=E?*mZ2I?Dx$
z!S2*2-M$a_TPi@Q<x{8clNV3Ff=qt$G7Z%71rKyU{TmMIObB$Bs3<`F#@BpA0NmKy
z0$#7s?Z(m_#si*G>XiZYAsOl<yWKdN-!pczNI)}C2FMft|Cc`RcH`)DQBi=H@G_8-
zfdMqX3AO?<Lk$`(WKjWy<qKv`kV`ucmvDh{nJ5=%iW@XwrV$99#RjXn&%waZUCIF-
zYj)*muwW=H1dZc?N)nJ#Er?PO_eBc_14C~CBWN&iVFq;Gd<6#s!(uR}1Tq*0(g3n8
zoP&V@)O<J&bxS#jFQf8eKFB^(kPc9V+4%u9P1u=w2WDrtD+g#A8&o-f@_Zyn*P&h)
z1|evh<-=Q0LI;%z-L4$qqSXdm!N1VwU|=vj+39+t`3GZKCyzV-cJ|KNCuyCokILlJ
znt$l?x5zLtFr+pAh~aM$0<-FwtoU2}L9Nd1u8-0{+4mu6pwIV7=b_GXujLTsbz1YU
zn9dU=Lj2nUn0h^!(poQ-n58xU(l33+zg@8N1enRwe1M66y8wt?@&%-!<Q+&IA4pH<
zF^I0xQ<kMq_?tlE7yKYA!LEA92y@kSP!F^8$xc0x=Rc%%@--h|GQ5=5DF6$b&KmIG
z7&tC|fZMN(pwU7|T!cOWg}Nj=sLX!?iIHO<4WQ}i5EYIW$JrPdUV^%4-Klq8N`X2x
z@bTMTw||zdPxzZbgERcw!~S(11AF5I*c*=wFLnM*>kMGx-!2Xo76b|Nw}O_NK>HWX
z2buV{GlBvc<n<phCGR><X#Qya!OGuv59F7hohLwHq1b$o31mWAXW+k*q_k#>7|<YA
zI5>npq_tiuz2EJ6!|+>Lry<zgE-D<5iu(l*8)zQqe|ITI3Cl4SHk4$gzy|ImzwiJx
z*HiC+N`w#K5~1@0BsyYBz>&h=S_#jVm{IjI=Kufy;5e~%XX0-Kjkl&X*RwG2w>|*P
zGsb|!9h_Y@fSU0#Dlcw;TI{79ue;MM!<qQObq4=-!IwfHOWavHU7zr8cV_{mKJa{N
zx9gMU157XVK;6~W)gW@a@1wNlpZX<SY0W=l_*<vL#4J6S_**-{yZ{zZXz{mHg9a^{
zf5q^(6oQK54==Molb#b005tB{_$CC@S_@GDEtmnNiWlElL4*1n%|HHk9xI75JkaaS
zlh*0XW_aMW5dU^(w&nwjX|^nkAfe`q4E);<@NaWrv1vKb!C3mB+eJk{C8GI<K$*yK
zXATL_Oy?1h@!(mdv<aQg9E}M6i@z+Oa^*!D$i5%Uoy;YMFJ7@QFf>|lGcqugh`+eY
z!objM!Bn#Q#bp)-hT{xk3=9mf*S$Cf=7@ke3txZ+ua7f;LiqKR3E2H32QvQ+N9%#k
zV<qwAd8b?y)#=dmi|NM~GeK_tAyjhdg*@1qAeSNe8LAOlzK4c~1vkFY0cGD76$i+A
zw3cR2L)L<Uza<V7FEuLQRZ^f#0~#g(RU`YD85kOBRAd-Bf0X!kb2J}d>7Drh-@kv~
zFDjmDeALj;&`|R7`=N#g1_u5XE>J7)BE!Yz8_b$N__u|yNH_e_FL7@86;oojGlqeI
zA+3{#z4-v+YXeaIN5C-9;<iqhVY{?IIrMj0rwBV}MuDZb3G9YTiWgMDPI$Ev<bqPR
zgD(V{4>NThWH{J-n_2UBZ?g=@Nh~Ta_A`O&m}C4cEua;6D<nYe$is}_EF7c40UEFC
zVPatD{M7m4Metux)&0M-4YWYEq<9C2I^HG%>MMY1Ezq(}hO|yMmc}EXzyzhX_}If~
z6Ar!-0OcOgq6TpP0?G$9u)zEm)l3WwhTov+=g^BBQ16TZ)F61h^+h~X4xH+ib(*Lc
zetRL!#K7=+7JPg@xcLo7cZ`Za>+KTl?q-m4dIK0+4|GljG3x}on?dgEy!9gGFQ^?>
z!qj=A`3Oh!;TJ4mdq9g=4G+A2gQzb+^Pk|U&)X#`P|YkVFY=f``H`jdKnXvnRWhBC
zfdMp>E)jkB1*o@loB?Fe4$ut4>zAnM3&}iDgn4o>^GXF?R55}w7RUhb1buHaC>A<z
zy?FE+65wDTlsrBT_8h4G04sxyuQk8n0p<AC10`JD4In=^AK^LtLJe*v#8I!{;RR~W
zh=2xK!Jhn9;ScgpIA{>@TZwt|Zcu3bFO`0+12Z4$=36h6|9}Hf7!t_M2N*4nb%LE#
ze+M$13~465SPe=I;Bo>Yj40~BtpBPX8bRyd{;R%$(l4O&6Da)vO5cIfH=y(tD18A+
zpMlaRp!5+aeE>@Dfzn%`^ad!s1WM0=(o>-H1Ss7BrCXqM4V2D+(kW0n0ZPX}=?Ewt
z0;L0>v=5Z_fYL5d+5t-2KxqpoZ33kYptKH@)_~F~P`U(47l7$B@a$O{s683`a`|=W
z?AwG1pfowb8Z@&DnhON2&<7<U>S9m<`}hC<|DZ9Q4c3r}H|p9jYT958ft<{w^yK9D
z;`o$uBV9wil$;!f`1qpK^vvRt)S~#bqQu<P_{_Yte1`b=lvHfuU<0yr4b32Wy~^T)
zpt_xN5{rvdiy0Ukq#PK0GxO5RK^s9zGILWE(h@UsN{dphxEK@^!ZM3WN)vMeOH+#~
z!4jz{3TgR83aTjzNtGq3#R`cf3W+HxMXANb3aa4k2nq_JdD(gS<#`GP#i^w!`3gm;
zIr+(nC7Jnopv@;G`N{b?3T3H9#UKII6g|)u2Yh;xGD{SSGpkY+plbCP(sS~YbPe?k
zbaO$@HU{sb0Cf!*7~GwmtrRre{X#Vr%=C=)z&kN;i}_~exrgiJ7o{t>J3H%wHRu|`
zbwczJqlQ@fM%57$H-j}V4urcveE^WXj8#Dlj5QpL(mX6I9gL7YO`ruZ57z(xzZBF+
zbmmiF3gY5p@#Y5acLMEeDcSh{KWOU*gCieDE0Ys1t4lL8$UM+SACFD{|AS`p7@YYW
zs`*$z>qQtq+hhth{r@itve21N0kj<pwEnXOO>7DS14GBA|Np^lQt0+5(AuaLBr%XZ
zAY;(otpVLDm9gpnf6$Nu+-<IH%*`xJhqw+q9&<d(!@}ai4c=1)+FGQu`Tu`#?uPjz
z3#5R70hb-1Z~<YJ&Hw*{_bI{j#So{DXY>F6pzUmMxB21MX9M-qmreiw&j*dH!t8Tv
zXKrI@W@Xl81bgc^*kkV8%qNlgj@-EX0otMh@`uf~|Nq%RaU9FX(agl;!Nbba%FF~Z
zjDsouFdqvp{UC9WexB|B|AV(<`0)wE@Ueh)+%bT5XQ^!e{~xq{59H5gCTBi{EG|9{
z$HROqj@;n%5W&E}5U~9}cxx6YE<xsjX!JM**#W{X+yDP}1}SjnQwZhaWAWfl-~&w(
zfzl!<j7qlu|KALfcjV(}V{+u<X=ZljQ%K?B<8eF8$KiO4kHwig1BD0K8d$-=z;I&w
z|No$%1!>3S4v;+{cdXg||9=8VA&Nadd@`PV3ITjFAdiAcXFeWBsKub21`HtoUfBNs
zKWM!YC`_Pkbmdd<;o{?QhAQ>sF6NW*;8O?%o8iiZFvO9YfdS-C(6%^<9smE&hPnY9
zwgFsx9L|UNSUkBQ4oL@VcZQ03b4P*s450i0+TK>N<NyEZApOpK3W;2xD9HpXh~?sA
zaRM3P%%^}W96(_J!dG_u{}0}BhY}793@Ho{ce3pK{~xqP4&>KXP<*sAJM#&&u{iRH
zG_$(%B}DLrIP)cBa`A~c9_ABpJjTc4c$|;J@hGT}N#P4{=1X9515?gelsIyO(->&l
zrDx~=|EEFeH;a#>9b``%vm>8CGmA5y0n-yMJ^{zWd_0cF_&6Mo^Rakw<IdNh!4{Ce
zY<B<u4=Sq|KxLjIIB;;51)y{e(o?bf|NqIL@brYIJtj{sXp}l~7eiTYphVfm!~l*5
zP&xTv_y7ONAbqZIeXe{8Odg0>X8@O*pmI`W&;S2hL5+2A{&(c#K@Lx6z5wPtMlL=P
zXSA?%=4SHc;uCQ}6L#cg0tG9kFara~U7&a?+4ujy6mI(*m=<7(7iVrJZ!E%~wClpa
zzyR7ZXmjBIf6%}QC|y9~%NZ13Adfq6@d-F1#g`+uGoOGPk^loF>?SZWFoYcV|KAf7
zc8K)n&Zm%%lw;huLFLjOMh1q81ONXwgI0=w!_JA9)frlLrZ6Lwoz7tOZx|UEZk+i4
z|1s2TaNPziYnj}Tlsj^Rx=ak9!R;9*|NoDNs)zasng$j8(UPDCcR6aB#FfuLc^#Ct
z=A8Wh{|l&ag1H^$mQ7rTosT&}ihW0J<^U#Cx8X7u)SCpE>vH!0|MO5cL(3u$z6VSJ
zd^eb!`5rJaA(u+d+@45flp{B23oWP&ym0pa|3!Gra7WVR!R?F0bL5Uj6nfxr1a0Fr
zIQRemc2Hgh`xTtV9pPn$8{YvYW?$@yoB_1&gn{7;0|UdF^QiTXKp~>u0hNCep!hxi
z|37&1ts|(;bLLYB0~ddR2$c-r?dL9x3=DtH|NjpvyFuv{T-HL=2Eo;)LaH@T`BB2i
zz@T&C|9|jiQ)fPbKuGZcE~`Lk*5Shc|AnaG1uA8NkP@vsw;yuu$6a25;t+(-T>SqZ
zH2wr~A2_Xos%}ul2(pI&4geJ_Fg2|V44{4MbCAR&S{WD$8W|W?Ac@UsWnidjglR&h
ze>5^M2sAM;Xf!b}m^CplI5jaagfuZQq%<)w6g4q0v@|g=Ole|ZSkc75u&arI;aU>|
z!@DL1hJQ^A3^L6O3|h?$3^w3OoPoionSmh;%1&x#U?^&4U}$P)V3^d*z_6g1fnifK
z1H+zX28LtJ3=Ef=85r(0GcY`BW?=Z#%)s!cnSp_=g@Hk+g@Hk;g@Hk(g@Hk@g@M7W
zg@M7Lg@M7Vg@GZgg@GZVg@GZfg@K{0g@K`=g@K`~g@Iv83j@Qv76yh@pixx@28QA2
zr}GRhsX3`7sm?{2C7H>IIl-yPp#C$%8wS_BlGGw}VFqzV*NV)NfTH~5)Z$_W9Y(jz
zycFl0{Nhvw12Eeyv#7YlEi)(8k%7SxEaI110ToDKbSp|t^~p>sN-U~mXkm0uEpg7z
z%}vZp@yX0fb!7Ml67fkaE^#d?$}eJI5M**sE%D7yDa}dsNX$!tm<bXCS?>rL3SeNk
z$K;upS(2HUlUaq~3q59^)Wk9jVFp8HpZvrWs7o9f7)n@zQ%gegGQhT^xK<>m7Jx#*
zEi<PiwTNLVOGr+!dumBoVoqr)!(JBXNJT(Veo1O_2?N7^m<V|6f`K7`A-=ezD5bQ3
zAqdRMOwP~AVTfRek55l6$xY16ODsw+W+-QfkIzktPcAKr&rPggU}$EDk1vRiPt7aK
zEXvPgU}%N#(?BO>Ffhzyh>tH$Es0MoD2OkqEJ$TwxXlosoLZ4t!oVQQ7@t~Hl$X!I
z;KCT6R#22$oLa)b5XTswR+^JjkXVwzu#ho6Ge3!eVHsn5W^pn^|3;?x{5-G$yO`n&
zAc7y6K$bvkv}Q?6$}cKmaArv?0V`whVo6TS$;nS<V8~`kD@sjeU?^irD=*3{No8PI
z%#sV0Tg8%_R9uo@o?Ohpu%0D1H8;7Sl7Zm}OHnFB!D*J_)DqA*O-?GqS(f6=^t{9z
z28LTK#U(}HaC!)0<)r2@F#KgH$<N6zPc33#VJ%B5D9X$$Nn>EpWi3xGF3HbLDh8K0
zpz??c*xNP8&(+7+2t0blz`!8V0KvJ%WywV)5K)Z=28Mya$Zi1pnMMR?eC~rJs8v8C
z3r39{)FHsQz=1(#fdhj@fdd1}gwb>`s3VKYjsvwHL0vrXp-G@Nw1NWzXj&R(4X6*n
z#IPKCpb$)SlpZc2uo!xT5d#BgeFOu8f`S8smx2R>o}NAg6&EGzrza;vCNK2CvpvcB
z$@zI{nd$nO#ujG!$(8BlnR$A_4Eh=QxvBcushK4i`XF84xf8J7q|(fs6fg@i1p<~a
zHquQl$}cX~%}XrFEKAjg3PP=5aQ6#Ua12&3(lfGPU~CAH0VPmSVq{?i$v7JtLgrr-
zbaP8e^HOcoQ}a@bGLsc_a}$e_Gi)<WEzA^j(_zTpNI@5d)4;CD%uCmWct$}tEiYfU
zxFj(-Tekqxw97AI;DPvFPY>)Bi~xXWHPTC_vadm1Lnap1%)Al?X3*ADCKmS6JWyLH
zHAMj=$i&26oRMEtqJS#O!J3nwm#zRNz{+@7!0eR#(xjYJ1|~+f<c!2324>J!Iwlr~
zVvsr(Q1h@fjX{C&(mh572G;n3k|GAiD<C!lYkYEE2?OI*kTY0V<C7ALQyCbqfuuNC
z<I{2y(-|1AgXDNv<I^&8QW+R;fOrC|@gS>`O4Aq^Z-N9wSmTpQ(~2{z7#MGX_!6w~
zCAkG@d5O8H42-uy#>p_Sv49-L?&j&^%D{LhoRNWn;|U`J!*50g22KVpkQ*5o-+urd
zqQ%4t@jl4$Of2kRPoe|`SA1eodNKo3GRQ74r;LFq#hHnLfsF-Z85c_9o2d_?thll`
zJ}<SXh=J)8NPq*RvXTj6J4i0Is3<41xP*b}F=!<TSA2ePS!xjj)2|;43=CZH<(YY4
z?r%6ZH!&-}h=J)3LLf5_B=8p`z#R{1+cUW`f-GZVVFyh<f*a>t`2{7Jc_|FcHXs=g
zFTbFKf!P+u138h|4#rC?N@rkp1i6(vJ|(d-Co?^xgn=anY$|s=Xri?$KQEPmC6>_}
z6r>=9!ORQ{JhwsT%P?@qmsEjcfhCU7nVErs8(~B(#0Z25bzl>?VH)be8rU-ui!;g+
zbK*-FShYYNW6vl_Oo|7IGO+4zV+IBJ9%cpx-YLus45yhH82CU00~^alW(Ed+h~m^j
z23E6&V5QGNN<m)x4O0qH&jmL%z92sn)H!8f-My5VfdL|sT8I$dcZr#Sfr*g=o+3a=
zkwKuiq$o2lJ-;A6F(;jY1>{l=*%vGf41#(2pbi^Yj)6fiCo>7u&tYH`EJ`hiFDOb)
z%dChuj0a6ZGcX~GnLxytk;N<^Vl09=`S}GfU94ap1DjxJUQvEdPHIX#NS1+Juq-vX
zB)<s4;}FbAEG_}Njgx`dhJ}HFgPE0q;Rg#S`7ys`0R^KQBLf37XssW2X<l(bYBJQ>
z#SCmtj39+j;WC7HJ6Iglr2=~oB#~H>nqJAk!+yAmm4Sg3)c0gR@)=Z*v4X;d{U|6%
zSXlG&6LT`t^BCBVf#QOLf!UmufdOGoVorK7g9-bA9UwDGA=B{jp!CbYeh6d$11p4c
z`~*lF0|&@15EGo}m>HNs`h*G~!wC6B@yYqcCB+O9jO=HYaxyTmCZ?n?u%CrEDkn9O
zf&Cna&B9uok(pK!UzS+Jz<wSi!T}XY&d)0@VPL-i660abEzK#3&&<m#VPL<wi<5yt
z03wnE61WUfqQaVzS(cfS%D{dFB(K4mn_pI3!N7hE<W(CGud0H99bBq8u;wHdrGwT!
z6z4Ip-vH@$0Vzn0F9IzzU|_!q67m2ERVC%b=j11*FtFbSiTQv^Z>YeX^PCI}0bqgR
zlKi4n2KM_Pkr>vrg81D0vQ!54hafE(AU?#1M<Dqe5Fe`H2}q!VH8-~cs^b|*M+;a0
zqUHG$P6mb!umDugOOVI}*5cw+sGip#Ju|=p5It`|rp^HiK=r%>iL3yb0@7BJ9}miE
z>8V8w>>ogyx3K0I#wRBxXQV=7`x8iX2WyTIis)yM=pI&3=1DC{&WKOS$xqH^VE+OV
zKEPU>35ue`ywv>CVsHinsYxwnVE+n|Kf;<+l$e*C0ZtSQ?B79RCs@<KY2pWnbA~l7
zw={=={U?ZXfi*29vy6fL7l?C(H7zlzn1TH_h;xHAEjgo@f&CANbB8spxUi^%f&DLt
z_dpmrF2T;g_>z->;R%Qj8a09PUkDc`C*~v;#TS?4mO$OX$OzK;1||avKd1~dSmpyv
z1{{!3DHgEQ7vVB+UWJ>*3KsqW7B0z;hgt^81PtsPV7WgcP{ES?c#vj@94A<gfl&k`
z1kRt}1O~N?3oOe5kuA-`kmm-=b3o*gUC9HM;9(R=&d*DUFG<W!&5K8g175HK0jPq!
z{1R-6_`!-q7#Wz)vNAAmfI<tDyTCb~g@Jh$CsYuWz`%k`49xpsf}oTN7Gz{#zQPGA
z>*`q<7`QVlEX<(36J})O0*QkP2#7eSgn>$mFoJ|d!OB7H!1&C(l+5JRVn{L1p3N8~
z!oVOHVPO^@66)s~AMEVm>JsYXiYyl37!=~^=o260>K^an8sO^Z;_Bxd$-s!DE7&z2
zhbksiRlxy1o*^KUf*F_*GBCYvK924n$@t(9M;{*s7K934|F8%KRwTZwuYXWvysu}l
zuVaX_2UG(aLV;Uouxq@tZ$P}GpG&+`kfWcoN4&8S13P{dW+n_A_*De^gB%&mz=@{J
z(I*tiDh4iubdalKaIn8~yr*ACe270NoE&|8Tzwe0F_pLlps3(MsBm<44)qQ7aSU;d
z_YVzm_xJR3k9Q1m4`$#+s0j%2_wjcRb&U@V21)z+hq*HFA*5XcJTavC5z?UW@^N(x
zb7c@f2nK`(d&K*K!<s=5Aq+C#$2A@#%OHdhcJU8&f(Z*Fgkh@v0~kaQqA<n&0SuxD
z(Evx6_+StJppbaCP(SAoPk%oKF;v+g*O1U4zhDM&gs_``Xi&UYsBb{LkEgF^2!jMd
zD%jsGB-}B`H9jE7)y*};*#i_ZPOg5gZl2Dbjy?>M2&F#G0nlV5g%AvKb##gM^>^`f
zi)4^S2!jI4)6dz()tNyCA?oQD;_B`i6z}5Z>+j+k4~l?b23dr>e?UmQqkAZW974!3
z%-_=`-pAE3-pxNK-qFP+h(R798|>pB9`ETJ>J#tj>uYQTiU|e<9MTpHiU=8qvA(Xp
z@%{mRE?~2rLC#@NLa2d8OK?b#r=Poj0E03@%GWd4(Z|!>&lTkNFxPm9n)rYq|9Ds`
z3T9A2s0Rf{u%m|?gDR?+vrmW%gBq%sQwW1Ps)&atIJn$A{R0>@P^E&Aq%={b+}wg(
zT>}`j5TdRTA@LRl#un!B&i;PEA&!0_!3^36=`dI45dR?0DA#yM(qqs;$ho`vxduUs
zxZwEUVAuHI08bwu23>>-kYK1EEL42_9bMx6142A~9eo(|aH$Fo@egu^E7M0+7U1aY
z?dlQ_jRjA?U_ZD@15}kEkpZqguED|aVDo|*3{j;)ZZU{=ii{74@DE}zLP&y=V^Dmk
zpJxapDT2zDFjr>=V?0XSg8Y5sL5fVUDsuMs3v&$$_Vo7)W-vvlfRySe$;~YQ6boUl
zK_S5mW(bv_lmdx}cw`mkSXDr53khbhKuCkLL_n}dsGAdmB|;c#W`JW5xNwbkjc|1i
z1s5My2t|-wVd4}S0x1tXBV2<StdZp-j7-hqaYVBX9);kTfybXMib_Kx3%HCOLI#ou
z<HJ2eJV5!L!5$&y=o9W3865BC=;s_6@9P-i5pQf^&ftJh5b77?@8bi?mOie242}qi
zU=L5X5JLthgh-StDAPuSxca$3?ecSBa7M@n1o`{=hq%T=Ga;z3VQ@i6yEz7jfXhzL
z2nJV#FjBD?A0Ffx;>zHLkOUPp@xF%fVV;ih{y_}x2pK>BkoZu)07uUtM<*Xw1`mV`
ztOWpSV?Zi@Pb5jG8w0_m0fQH&jE5(v*$~X&jgW$R2o!t_J_un*QuXoobBAOK24936
zC~-zOd$>C>_@N5=`iB`X_#?zX{(z)7P|3v*fRKSCF^F8ei>tH0iz`DQy0n|4Pp~Vf
zDFrT=oqRnRf)GleZIyr^R~Juk1sLz)2`b5g5lSH808SYUAqZhuR0cu=BNQR!=;9R`
z3<`Ttx?u=INcj7?#(TPfvuZr33}OgJ$oV)1hcHAiaA>nIFl329heg7nO;2!JGA%W+
zq_hasKPd*cBO%Sq#G>R3v}WcnMm|w!lhQHB*&`lQ8KLq6KmiYJQ$m%1g)E#HAWcZH
zV1%QK3$)<~<~s$4I|e}8iC_V+n^_@lmJ@}#nFZ=*u)`2;W?=$3iW}6BhIhw`i&Gic
zg_%HJ7K=~G&nt;9El!OuDN0R^&qyswjb{KW&rM6sOHO5AH)N_71+~0`L>U-Fi&E3$
zlR+!`p-pRR)>v@{20=f6NYZ2wbPRHJXJ8a`0Z~kX&LE0e&<RAb2nKtCXjVZNFwG|D
z=mOEjF6ivz@8skf<O&tw5DbLKa0>eQ`^7^!T!Nl{F0K&}8E!!zS9eF}NC=Nd5V>+=
z;1vWnG6O)8416F?u&cAbAJ}vTenB@Me@AHhTtE<1=ec<X1%m|`1R-9D0N0N}uI|AM
zLSPkOrm&!Em@AT$h@cb1%wPslK}S$o73>PKGMGV3(AO90P;rp;A^rgf6D2?*PzQl*
z2b(PkbroDd3Mv3<QG-=T3xb$%c^M>mxS*_{uVb)xJlL6FO>z(cFk2q%Mle%B(8tpk
z<kWa)AIIQe*I))k2IfXlXcw(W9Ga#A7?_j9L1ThR6^Pv+xrqe~?8zJ;McgS#6=o)A
zQYjFr;<6%>_!JC{sbE=f_wXjn8g2&WlOStAiPX#_KDRi&xU#q`KDDBxC^0@cCqF4E
zwJ0?OZcQ-*dpZY5vnXN&2|R8J9@Jz1&QU1Ez#te9<nQbn9PA$y4^A4M&M0D@#ujD_
zj7W++O)Sh9n2-blT>U~kLwy;Tk;Hr)y<L6%{X!U6kOZL$1A_b+STTi77}$^m{rsK%
z{TvzCk%XN6gItXmIFLmATs<6pTzwfhk;H->{ahlQf;?T^T^YEL#628?!(Dwq{Vark
zo&5d$Kw>;d>ViFe!d!#EZs$c3_V)8(;6vgEdq;x&81EPsVQOf^z>g#aYH0Z|2q1~L
zyMhXSK_n4xGX^0fu49OYkG~&-Fp`kB1%n6@*U{I-&C%D;fI$>V(8(ptHOP=b3|+{G
zK^$Gkm_Y(v$b>->SttZ-mK3^>5rZ_6P!y=aXUHIfBm^25m4z0mplX1DU6PYu0yZWA
zDr6bhrI19xg=-NgnS$q#;*;`A^HM+yo!AvQL1WF3F^kN+<b2Q!S3J5RC9on6P+|H(
z3X%IBNHH*Q7p10yi`;l{&Qs+CDPUq`gU$zm2e;Wn13kf6fU^`-sxwPUGcYi5Kqf{o
zXGfS=SkiLx6H6GFIGB_3a|?1(D->V?EU?KU0k{-QL;@}XHWDT*z!D!1)@^8H!N8=z
z93KxG5RPZy(2!<eI4I2knQi#bz`RkKfq^?dz97FKIlnXyG?0|U!1<aHq=Y*@J~^i<
zz9cb;f%79+ggvb^FBv=;#ijLM8dL|d$}lj9bG(;kU=Wl64UBWe$AkJi@jjlxA@T7H
zT>5M>psAR6mk|FTxS#<@Py(cZn~#%~d4aV9gM^w40|PfdCoA(B=&nl82>8gwjDidT
zY=VqJjLaO;9I70`psSD=1sPR2gt<W?0^$q|OezfA+;-f|91IN1Y7Cyj3=Ay7jLaO|
z+*aJy+>F8u46M8i%p4$&r?3S#0|OgB12;EF8M_!<oPmLZk<n8aq?%I^G-+l6m$H|%
zkz`=th6=EH3PS{V6d62)^|=`sctsi2B_Ue*Si#owgHCP{U;(?qQy641$Xr1U24)T!
zZUzP+u<KZ1;=)kZu|ixYg2ZKIU=T$zh81Ltm^cG72gpU@q73Si3=9$`4DKL1SeZb}
zdxu>@$pz2<gI3WqGXCb{Wng4v1g*XX-Hw2N1{`S#00RSj4FE_l11l3~6#?@iMn)y2
zNN<C5+sH@*eLE#3CPoHE#$eDiE`u+~0(1+J7Z8BT%5q~PUBt|LW?phmX-X=Al?i%!
z`e+J4>kbHON>4^v)qr0E14D61N@l)Z1_L9QnUk3WVW+2-<QJ4c*r3@{2n#eLT9OD-
z!o<LknOB^r3!b-1%quC@%K+U{23kj<mjSwi4aCyTF91uhFfhQD8Duc9GBBhk<>-Q@
z4MCb%5pu~OIkM9wXb&D}k2xb~_aAicA9zn2(pn%#K8{Avwwea!G(L_4j(jYj^W(_2
zaa7}A3jxq|aSOm}0u&e^Yr!%Y7#JR)h=BIUfs!gC14vCgbZM{xGw5Jjun2Tfu>o8J
zcEcUWx1eHynbC}y0cC9&0|V@qIglDq&BM$H+M)yEA+R2JbqVC+wtxQ_7}6P&E7L*6
zgKlzBNm6QhW}aShe0~!6t~QWvusLAu-Cz=O^%`jV3<Cpr=N!1iV*q)Efq`Ki=(;+X
zn?cTm>OrQCfUewQf%z2XF9)zL1_owEIY#LHd~i*AkW2Bvd{BroGh%MXfcYKnW=8B4
z%pK6>DbV$I%#5JDbs!VLMuQ31&3_;c$d}BF;QeGEE((6e09q#w@i#N0Ac`D_qnDLj
z1foH%0NKFI01J809x6!4=O&gEWmf2+S@02bl^`s9u!JEj#1g=2Kp_SyVNeyqLJSm6
zVB1lpK@Nkb7LaamEMrjvQV8;C1Zc$s1IR9AkPrq2g(~P69guy@jG&#JsD{D(4%!EZ
z?Du$3v$?b+6%+>Xpf&xVbDF{aQea?0H3DoW%<m0gH6ZtZcK)I&q_*E{i10h;NGV)?
z2RZyd0|UbXu$%Gw3!(<(FVN0pevnoa3_2*@fdiU%P`wRS2MZsF8jv}loyedR0G0+5
zu$%(guMCNIkjueRC<G`U25{oG3#8Z(bTkx94MTi9Bn~gYMPTlMm;-Xp98hx=q!o@~
z@dc_oK`w>lZdA{~+zi@phR@BQ{bdeZP&b2Z04;yJ02hI|=L6V<AoqZFC9;E6!U&jM
zpnM9k3*<7GEQHo`4hm6;Z~;w+Gk|nM+zgR}kx(^`Al>-Y_&9>};8atRQ>+pd6$M&b
z3@Y82!A(k#4g}T%sd01!n}bUYNOcM$1A_xMa`-ecGB8{~5n0U0z)-*gQv(aJ2jDOS
zg_t@M0|RO)01GkD4ogUgfyxw+eW)08GeQ6#y2%2(AQ6zs+{_FNpzaJp7tCbP{#J;|
zm}wPOVuNZ~NQu1)VE~i`D}U-37#JYsPg-JjDpV4Qx(rQrpfgUG8L_X^z7JIcx>u5!
z5wwUF$p9$xEmRHY<Su4L&@xo008}0ps-Qy~Kr+mX$g9L5ieUKyWCJ8$K*W(rSonba
z4hbJ*Sp@qh$PxxnPahP{px6PKh>!=dIG{qj;Bp>RhC>BFk_-&+`iqwl7KX6)G@=57
z`O8ND7N=0nNE9{w1&S|FEJ5Nc0=%pl$to}t6knh)gv6ILG$g=MZ~_!Qpilwr`(y^U
z959uE;uI8<kT?aED{$>_2B@yAVZz-i04Wq@VqgdWhY$X`0HOvIU!YnO6uThZ5R4gy
znE3*vQl5!{;e$LVE<mkHkcckm_Gbl{2rRx1fZYSKt6qSC0kjJrq!xl<`3rQM8YF)S
zLnP2hdnN`32SupKn8C*YvkRgIWEW@`wls<<nCThQUoiJ*!0Tn$$tEa9F$6F%FdR^W
zx(6(k$i%?Vpn)t>#KgdG0Y#*RiGe{u6Iso4kS-LF6-*2a8{i^vf2o3Wf&BH5g@Hi|
zY$J@&1K;bcVhUPy4RS3r160Ip6=+2&D96D>OhNnQQPs@DQ1gP3fdN&`6bv<>HQ%Ue
zx-ir{z%U2YvO>{idIv*I8HPDGFw|sWsJVin2GoK@wF`88CyIz!7=}5Zv+7aRcwwjk
zU6_fg26X;CiiqhE4ELB}m~#L_jUI*?(0K?bCYymSKt>gj!qBw^!(<^0H5)M0u%W9l
z`vY3-jhueWKB0@4F2OM88M+#?d*~vjb1-y))`O$?%XA8c8qgATR5hS|`Y0l1n=tGG
zosop9W)g;)77V+Z(AAg~p^KP;TJNYPC!wn`0iA|~q6Sl!X$FSvHt6P<f?8K7=9p<=
zs7b&uM+QSp42GJ2pdA;;v1|(Jk)hi44nqy7SAweM8itwx47+w=sPVy211bSgOg06b
zM1mq>HU+~RQ0p934XCt55itcFI*TG=1}dXbL`*@qR-uTPrC``)f#K#53^gVgYMe0C
z7+|O|!%zb{;uY0B8W?IowH2xw0Sq;ui?vbJ{6M$e1T?yYqQ(?MmnrDf3=}nHpc`^f
zL`)0NO*ZpEPlqO;z8X$l&~YSncxw=894R#~1=OPl)qbEmZx(QZwwpm(MGOolm>}n&
zfm)ZK_5=gNRVD_83EH6AQ-OgQPs^bLtOiuWf=oumuoe+~yak&%NyXsZ?y&Y0HoHKk
zf<`moZe|4aYETWs7~8=z9tAQ7bhkFdUm!Pw+Loy1fYkh8VqjPT_ZO(OgQ*78ssxQ6
zf<g=HSQE5$F#{t`kD<q@X%B{)1#mSW_pmZEFu?K!6GJ@oaD)?Dkk|pm83ThXGXuj1
z6cNxk<riqX7ox_WnSlXTgFr+Qm>C!Xz&?ewMM0%Ctd4`I0hQ<=SAcjR%)l^_nSsFp
zMHk4uYrrC)vB-GH5ef_wP~5YgnSlXT8bi!E!3?^H8q#Wlh+Jo8V7P#y>oGHAOb?Xi
zA!<Mu!!UsDg1K3Og@FN97eLhLvoJ8gN*jm><jO$?22f8NA`;5NzyK@xAtIpm(HvG}
z_tdd4Fu+P<P{>0Lqd0)#!i6jh3<W6e*~P-ZfEx1WSQr>!tqYJj@fA7o$)MQ~@JI#3
z_S>L@#sE447Ziq|5dRDk5kMB<0e3kR7(l1wLUgHtHz6UbaRRGhKr%T5Lj-i1I>-jl
z_y)wBGFAo#SQ!O#VHNn4YlNCMRtAO!Xj+Bnn#Ib%V1VNHRjdpQuvP&?%|2EJhBYX<
zK$|FDpoHN)R!9#A<WPvN@2m_A3s7`1voSDepx7l2N)#Y(fJW>YB^f~Z0n9}r^w<~}
zBv9hig$;7v7{abVs5yvGZDM0!fR)A&_e@}8V1TvRAR-H(x)A29V?&Ski%>NPlW&7W
zP~!A68v_HZ%?2@<k)46z21@wwvokQjYJ7+qb#?{@1(eXRWQUyfhlnq4b_NDm?}iC{
zUJK|Lk^mHwquCi4EKtnJ!!W0goq++?;{c_Nl$@M+@JV1u>97Z6Ej;zcLk~~sK(T8f
zJLHyaP!K?Tv7ViQ0oHebi0o&FoPLH-a|vuR=*(tVzIe#az_0<u<kuiID4`0PX5m2b
zmmmiNg8_;zX$}SkSi6OZAs)JMssKfe0S5yEtj349(1rtYUKPTHfgI@Zp3lL+kbq)N
z6$b+YtVIn9L+~D6a0!4&KRuwri2=EcngKEg#TUyt7#LtZM2LH~aX{u~Ks*p;U^om?
zgJSz74hDt@xH<9A!)F}eYU1NTB~l_d-++P=<U){03b?$4h=3$P*SRbJn*)oBw;T)%
z6>xJvYQ95#0ZH@m@y<aZ@xCFTSsjE=**O^)KnEQoM1(mZr<)-}<Uy4)19Ca0&&j|5
z8UsV9u|`n?+5!qXo2UWoLQw4x585kT267bxcn%p7KE9j`3<zJugSN!xCo{}|`yw8?
zeHk>W1kwS*3=A<)yCD7onVHYYzyRwVL)6rAGB9|+Z3n681L<NyE}s{2GBCh;0Za_>
z(8Gf=;I@Nwfi{o9`pXcL&vG&_fUfHURS6K0htL)r!ad(O85m$adWafUE(QizTNEN9
z%*DV^f#O10E=c+TMH?vIQ}a?lxmy4^9jbFNfX_9Ar1^Nz@~p%hh6uQu<Do|+HNZtc
zzHsDXU_i7AKqCHJ3=FUq5yU<5pkYFIxdBo$iHm_D1I2}_xEL6ApqRWBtV;l?{5i*k
zUiyJX$3YiOBf{q`7o@$55c$o;zyKSQfw+egG$e`Q9?*gxNZ7#AyfZfg18jtWi6I_x
zm=wbT6c+|U%>kuqCPvVR8fF_Zjhlf1))$7@Ud;_sj~wzH+zbq`z6?aoT#yI@a(dp%
z&A=dm5@MIQ85m%5Nf2F+xEUB=BPS4%ciapNuwE@hL>QFdK~Vs%PeG$)m~Peq&q5%l
zXBVh0M5u=HFfhPI!yqQ7@IZPSARY)aFy!+vFswicu}U5W2H4m;L`@siWJsz5Iczo$
zdP%#Mhk*e$ngP+Z8>$Q8p6fge46r^UM9nJ<HB7t=46so?NL>j!sLKPzg`oTFU~P4X
zIU2kS3<fB1;lRtl@B>AcKQDS7%;RNX5I~8qHeLn>ST7r5@_b$f2H1E4L}V*30|RVK
z4<d4m7d<pyfF=r1T08%EA*a=X`Y8}y;(U;}fTd{$1|>f9yko@2z+i#m3mZNL23UU?
zVonqv0|RWlj)@_IkAXoiH3M><K7(FLYEo%>d}2{zUV3UVj0-+xA10NQRFql<lgY`<
zONFt)C-Q?%kb@jd58mz$p2Gy6EeB>f2ZaQeBo>vF7BIwzXXg1PX67LaVI1S1mIs;#
z^>T)<n~aZ-2i*x!1U<(e>T0Mcx^`rL6@ivLs8m%|F~mbw3dBQ>eghw2mspfu2C^u*
zpfnz~O9AYBkYGxFJm}2*#GLq)lKi4#R3Y%9C$LauUVKSTF<6&_p%F-^B&R4f9i#`u
zi7y8&A_s*`Nk&n8VoFMUc4{TqL`>PDRL}-|6a}C~CFSuUKEa?mFDWrO8*~z1DriYo
zd{Jp0Xgyav^rnIQB3OJ77i(xy4UNP!(1CradEiii*bNE;kW&#naAz?-J{}^Hl3A1o
zIyeO`kYA9Rmy%h8&{LF}n1UjZ3_7F{MWiUTJTnhfQAuh}4vL!M)YNRKfLoBGuWLML
zgH=4p8c;fca!?aUJSdtVb0&Jl(DbJV5-Zj-Gc`3fWr&Z@%q@tI2b~;=I4#n_f*~ID
zTtx>%Gmt$&p?)ErzOL~B!LFe$piL$|{?4$4y-<@7=Nw`&6k-|tSi|^uP}&5ozAh?>
zk7tNSI+4=B1Y{rb!eOZS*xUv70(7ktNLvA{IRw??o>~Gw$<o1qAs)~9l3;tm=0Pn2
zA0r7#*I;2#NWo9h1O-$)IQ4@A7vu+s7m?1W1e=(XnFKjFFg`Ip6PjAU#^F3J6Qs=r
z+i9R6iTI+D_<~|^x-W(VA1opvHG6zKsKWzVi=LQVl3J8mT#}hw40auOn|^*8NK<k)
zXx&V1COGK92S~)jB|yhk7L}!fwSdpfi7zfqDy}RpNzILiUg80ki%%{p0kygj-iL@}
zf-HbUYCKE?(n^Cy3F!D2P}dITZj=*%;?W}v5~wIgazf349hM18uZZY^WKPh@BRM6-
zDMk4u@oD)*$*FJ)L1%D+EJ8Wc6dbtltu2s37IxJNC=T;;Qb4hXh{cTD{FHde3^s#a
zd1_*|UOd*TT0p|C9`TTT>*VV0=?4x!a2kM~PYUx9>`>77_@rWJ?1I(C<Ia81ydMuc
zZ!{hrof)Z#1<271wh($kX*{+7bx#E!C<{H&6_mg+MW9hyfE3AKbKz%!g2EN~G+9ul
zgKI)f2aqF2!DVTFQG9+eO7a4m3SHI+4IcP;rt$F^sfpmQhvh7A)F!5<#)FQ<0tXo)
zD2pLS>BfW4;mA$R11Eaqb7w&@k8nRE!J(H&o{k~$FxSH^hbIY!cswx_&j2d*peL<D
zy#fw?$gxvMg$P4D(xJW}S3%qYJCPMyX2P6-a*8du#04J!4AzId7b6}i+(0ftoLvh^
zW-#+WU0;}!AQ?9q?qx_VpORVuDr3PJA9UtXA}pJuSch6dWmduS9dyV7>{Qfp6f_lp
z8b1)9`(QaW80<fA>VS6R;^X77WG_h3g)LD*`>+i0@t{bB7hg!l63Dlyc`4vTRS*wK
z(U>I#mih^v2jQgwdgBaSo?tHzupRRZ_A31FV6>c#Tuwuxs{|=i#(U-_rl&fA4vC9L
zD!@Ta25{IFmlT1z3^12sUK54gmEiG_G)Nl>Y!0YtmY>WJACGAQEcj55TaJgMcUYnW
z8-kYVQHt;4(tKFyjkm&#k4J9E!t91N*TA+As`}%x#ulh;4>~<AJ`)t6C`A<L=poRh
zTsev9kQx?j4RpAQ0Wy{ZZ9x{NmVi%lj*pK|&d4q<$&SwjHL77HNp@;cUTTi9QG6ok
zwlAa#9w`+<CsJU=CH6`g>;h0b1yK~_f{wbw;(D-B_;JqgatY;dYiKhUR+Cod!J-1a
zkpngiXPX6oHby&s99&_5%|kDvA!P#M)M|W%F05M2$xK27F1-B}pMunL0S~D`yBDCG
aUs{|B%KET81x=~wA%!!)f}IW>Q3e2x6;J;F

literal 0
HcmV?d00001

diff --git a/matrix_compute.o b/matrix_compute.o
new file mode 100644
index 0000000000000000000000000000000000000000..8bdd7c1e0f37ce1dc7641608c1d1ebaaf04530c3
GIT binary patch
literal 668
zcmeZaWMu$>1V#o1eh`C!g;B30wW0*fh7ckQ3=DS|7#MsQA$$;}z+jM|my%eL2ob_b
zIxrX<&`T;V#;E`*(ZFDEK;Hz)fl?|A3=AKjY#8OhVBnx{XbR(kX$uAh1`$REhA@!B
z7#J8p6i8iY=hNmVA6|ge>;Mrb4^Noj?(A%(py8XD=N_(?UzD!k?(D2<re~~Yplhh9
z0A?^Sfcy(m&sY`2z*xh<D9yvd(!t2UAj1H`EDQ_`LLdc>d>pMzPQ0vsM|oIS7#P?Y
z7#R3KZedVhU|;~L5@FCw%gjjysbyeb`1hZIA)PTdv7{)oB0f1kx1h8nRWF%=AwD-T
zGY_hUkwJlh3FHANA4Va^2}qim5#$083#NjB0XaUH7#J9sQKi8Ok>i3HhZ>MVNe}_`
z1v8^El!r=z;s+!GN<qwwpjbe)Fg_mHX9^5V40;R<40=VNWTR45RmGr}nh~E?l$e`}
GT@V1JbV#TG

literal 0
HcmV?d00001

diff --git a/pointer_sort.c b/pointer_sort.c
new file mode 100644
index 0000000..72fa295
--- /dev/null
+++ b/pointer_sort.c
@@ -0,0 +1,71 @@
+#include <stdio.h>
+#include <stdbool.h>
+#include <stdlib.h>
+
+//Fonction de Vérification d'une valeur dans un tableau
+int check(int* tab[],unsigned int len, int n){
+
+    //On parcours
+    for(int i=0; i<len; i++){
+        //Si la valeur est égale à une d'une tableau on retourne 1
+        if(n==tab[i]){
+            return 1;
+        }
+    }
+    //Sinon 0
+    return 0;
+}
+
+//Fonction de sort
+int* sort(int tab[],unsigned int len){
+
+    //Tableau de pointeur(len-1 car on prendra argc en argument)
+    int* ptr_tab[len-1];
+    //variable utile dans le processus
+    int sort;
+
+    //Double boucle
+    for(int j=0; j<len-1; j++) {
+        //Initialisation
+        sort = 0;
+
+        for (int i = 0; i < len-1; i++) {
+            //On vérifie d'abord si la valeur n'est pas déjà dans le tableau autrement on la passe
+            int v = check(ptr_tab,len-1,tab[i]);
+            if (v == 1) {
+                continue;
+            }
+            //Sort prend la première valeur valable du tableau
+            if(sort==0){sort = tab[i];}
+
+            //Ensuite on compare avec chaque élément pour voir lequel est le plus petit
+            if (sort >= tab[i]) {
+
+                //On pointe sur celui ci tant qu'on en trouve pas un autre encore plus petit
+                ptr_tab[j] = *(tab+i);
+                //Si on trouve un plus petit on remplace les valeurs
+                sort = tab[i];
+            }
+        }
+        //Affichage des valeurs
+        printf("\n%d",ptr_tab[j]);
+    }
+    return ptr_tab;
+}
+
+
+int main(int argc, char *argv[]){
+
+    //Tableau qui contiendra les arguments
+    int tab[argc];
+
+    //Boucle (on commence à 1 pour ne pas prendre le nom du fichier dans nos arguments)
+    for(int i=1; i<argc; i++){
+        //On transforme les char en int et on les entre dans le tableau
+        tab[i-1]=atoi(argv[i]);
+    }
+    //On sort les valeurs
+    int* ptr = sort(tab,argc);
+
+
+}
\ No newline at end of file
diff --git a/pointer_sort.exe b/pointer_sort.exe
new file mode 100644
index 0000000000000000000000000000000000000000..8d039c0d7d3fc7583840abc83733a9b2ef334fe1
GIT binary patch
literal 41910
zcmeZ`n!v!!z`(%5z`*eTKLf)K1_*F~P<Y7(1_lN``CWVrTR6`u?qKves~D1zS*%b{
zl%HOdn5&SSn3tDdqL7rTP*j?ykeR38;vcM#o1c=Z$IHv50yR0nm4U&Bk(VLJ`+N*T
z2?N7TMh1ol4D5{Dj7%~NdJGH<UJMKjObiSUgcukY1Q-|?zz%bOu$dt4W`w#QY@`4q
zSWs#)BiLUI3<?mnAk85CP-DPqK|})s!v$6lgFMW#fPp~*i&mXR28KIW#9=~uC8-r9
z3=9lUbfFFc`4toiFa-<@3<(SY33@4sC5a3S3^E{bkl&dY7#NH|90Yb?FgT!B1W|Ye
zBp(0`5EFzN5X*tVz(F4>#=`}+fPsOBfq}sSB#Xcxb$Us~#UPOaI00gy;s%htnGk!y
zVF*ePYzzzxE~x6j?sE<b0f~acY62uq!Ep-`gkrF|k{qzT3LvosP<1{a4g!PJ=^H{k
z0(SZas5(D{8W78Y!NE!2$P&b4_zw!e0}KodatsU%pzr~ULI?*20VjPELoi1ll$ahs
z&C3G|!3nTBQ&TYi1W4Tns5)>UfrY^YSe=<Um<@Ix10y&MGZcY^;DiH%ffJlFK#b-$
zGTkmJ3f&Cd47L*)7!H*C+4eFp94Jn(Wo2MEz~6d?fq~(;iwZbp9%oVEW?*1=;h@97
z(ENjuzr}-*fuZ#Pf9rDw28P}(Y9KEd9%w!ybBKju0+eq%g@NHfiKp!}kZCQQ3=9mm
zlNlHelwL<NlmlewYi+2ZYZ*X>mTWuDq5_ime__Y}|NsBLUeUV^WInpKEf8&`XF(F6
zIDu+=F<YB~0j%?7_W%F?JHPerQ3vU_l?6GZHT3`g{~#S8q2nxI@4d)`7*!J4dVs&h
z1f&2W0d>Jk<^TWxPk@F2OpG6-%teI-*=9v;28QD--~#RiuOQ47Pyaz|gsKDu=!@@K
z3=GXD{=YnlDhCea+fcc+|Nj5)Em32Dx<9n@X>ju!k%bun4h*daN@R|^fI|r!N1&_^
zwfO&q<~KYbwtxe}3lEUT-mttV;9y`_$l>6?(8;3mqF8`|;l(}{28M+S1z@9`x@A{1
zIxsBe0V!}%Vd-`j0IA!o1y#}s7Bc{e%|{gr0Eu;LF)+MXr^Ud~EebY4;DsO`14HwZ
z4=*}785my70m(3Qx~On0WGHX|F<2I|fEX+)FLIa}7&;HX$kbwB=#)`;@e@SD;;Z?M
zO|OfJ4mhp~96;d;(skTLMF$jhoh~W@3t1c-7@8k2cDktW^tz~Mfb4i-3JSd=HisuP
zzmYl4q5=x^|DsbG9T;BhMh#DhJSgO#^0QIp|EnHobYSQ$gN6Tp)eVgf3=`lWwDW0L
zaPu1hP*?{zFuY&^S^S0tl!P{dvJQ(1Lx2Owcc(QO7@FU(EY1P>!bOEe7$hvC@&Y2x
z(RmEyMNO#SHn3uj#S9J(46WZv1VM5fAdM_4I}#ii{$E=t0g^dTVs)HF#Svt04_F6F
z>w#UMa48W5>F@`c#-j2f11!hUd8qYL3FmPZ6_DQlmyWZj7>GD9ypa0;|9@}lkLbAA
z!@Xq;$5}ykg3Q<lB3?JX=7swe#0c$t+WbahAxKf{0kCOc2VGbQ@>lDD5^hjh5C>bx
za`Nzm31IaC$6fz`O;hf6{nIPb3SxJ=axh-#7U*^rusl@Cz5^6PuLYZ3|1fsD{;_uD
zDY^=7iJUwPN$@6}4>}KbyYe)@VC+29{ED$N^u@skOuYfjJ3w`M^9x4C3p+t9u<yTr
z%swFSB8iuQLGwtjiwaNk0p^1*m<~Q*>U4c_+!a)4GrYVFiX7K3AeS6>eFLIi&SGF-
z=yrXB?mnJgkN@4SPdY<XI68e)SU~<$2bCzU51MNqFqR}W*M4Cr6+zd?(CPXGL(JOs
zOT96MXy?Ih*C*YfA3Av^V9L3EdCfSX+4T)$w<}L?!2fR7H<pL^+d;(_L{m4*1W?92
z&Z3e6N(Ot?7#NyeKfqOg0I3%F|NlQYG&}Ef$No8axYtL8rTNK+|Al`-JD-M!1qU|2
z(daz=;vp*oL+69e<K4`?0slKg9}o&)MjmJYb07uqo#U=gz;UVF?fRs*02Fet0Ci?z
zywD9Ud;HZH7&;GiyWZ&(+0g9zgt6Q8i8XW0xo%;QPzWT9S^oY1-|2dz^AFhNy{R7}
zqvPUZdlUa0o{)wFAwFn+<MWLbR1Prlx4dFvV0h6BvLW?ICyPqwu@?=h3=F+441xz=
zupE5A^1_oF<nH6HPe8GL-1Q2G>UB{OIPQ7@#OyrO>3RlSsHlP(GR-FhI$ci~9)Q+o
z&Bqw|_xb&AJ=uA>q`2X?J%39tBLf3}{}u)YhKAqj{4E<8K@2VamQpZ7iNBSTk%6J}
z;KiT(EjO7M7#J@$A7VV_^gqV(RO#2|+AHe(EhiZn7*;Uyw;p6<U}!$Z*m<hC^okP5
z7Q+L_T`zz_6J%ZKL{K#VDp+QMjJW`*4`GHKD*bBddWOGgA0q=pcj$%IOZ=^yK}^>>
zi&+XB7`j~_EC!Xk-Kj@<Q@?;h@-Rey!|xdWmRDfM*Ymd=1T&&bBO#%wz~8zaTpRaR
z{ND+3M~P8yjTK|(1w?t+e1P$o!~Yn|AEjSgPL>Mx1~7I=7#?_e_22*h6F~0mJk;yN
zc#Nt3^;3v_tp|E-nD|>j%_p!t%>BPgzjnJ`X+2PCy0D|sfuY%gk-z0AD37|Ruz;Gq
zojfX?z6W0Ds(=~?{H?n|dDZto^G{Cx7LXHr!x=l|4G+AG{rCTW>w(^i|NJd}VDDdP
z{#nmI<zVXp{;3Bz55Bbh|NlQE&_S`^e1P$#_P_uCA-)yhZ;AW=|34(EY#2dNl{Nw9
zK1gIK@wd!ifJ7Fk4clCLMZNPBJeFSG|NH-cZy@6_MkR#U>A(N~FWl1Tz|hU`jm5)(
zzs2MK|NoY?XNpR@T`#mAD9!8q1y&47dN1ew{r~?M14FOt4OqPns@1w(Pk{1xx9b^D
z;S(jn!0=K97QQcT{{R)=&?p7jtqwL06k9L-LB=t~G#_Go=>l>Zs2SmU;}|=rwE${c
zfvRDi?${HZF)A$GwP!kQR9^fMXJF{O(fJFS8JbTpf>ZxXmcRf1gCmH4>H$cQavtow
z@R9?RORv9l1W^}X>i+%zzw^S&Vi0xl<r$D0=gf)dJY)*$g$2x=6EWBD!b%XEzvU$Z
z14FRk0scjx1Pv;T!8HK?BEtjUjxm-nH=khqc2uE+l^4{d_;#!TB*OIl5CcO41Bl52
zVlpt6<Tjt+2<?2@_y*KPY<}{Ae;tcT_Z*cI3=9m7Tfo%41Huga>v&W;A)+7!?Jy>f
ziZO(Fvhg=aU8x+{SSFAS0$?T!h^g@HAlO9?i&Y97z#ZfU{zbN+oKmI=a&-g9)vcE*
zS$BZi`CxqxC9J$4CvmcZv_yYC45~W8c%gs;C@HiaD3Nb|!;?1Q{{^r}ZvacT152kU
zNVfGr>C5ILJf9DP@=tK{8;Ne&3$_jn&A<PbD7M}%;rTBz7tDXnSo-BSi%NmC1H+5Z
z@BjZdACZVYY<T-MQ|IAcXU1-kR*<UJOQj!PpG4%>g&L679{cCR;QV)-6(j&kEw875
z90=(Ts5JjzE)i)xP$B^GAOomL&%*##-yH&OVX=TZ4d5z~MdgJD69WU1I!H!`wpT%o
zBavp?lmZ6^rfwG%l@hMwtY8iUsJYKnBGmkYvBbXlhzQt#=(s~X4EsbTI50H61Ch=D
znCl)J-tKM&aas?QF#W&Ke3-@ZUg=vD9o;S}8lVOb$Qz*MAJ}m$DlgVEGBCVejN%@{
z1Bkc)`4{ZI<18vJ1r7`^+7%cWx@Bz&96&9#*4rhzX%o7cL3!?<Jh<`JdF+Lb0;m8g
z<!Sv^!qM%_(rKdd|3Y^(N9*m<t1weuLKHV25s8jF92RW&4b)zD00(=iK=Toi&JWRX
zhhhCAkh4KuaA+g-g^oPP{LaHAjv!A!jqGFw1zo2z%ZsP-3=9jQ4(tTG6sE+P<3$0)
z;?55ctM`HXO?}Xc3mPAw^t2G<nC=)Ah1LV5{LM!s3=c#j+yf1Y8hKDl9%@tTr4sRO
zCd<R6T(AAQIV^9MXm%dzcH(F~Q2G&S{fjSh;1GhEhDdMS9vq!s9H21tk^^^(zyW;>
zqWblPZYPe#AWJ$gyuJ-iU-0zDSmItJ-u#2PloRaS)&r%f;3U#~MCLF|BnixD{=r!K
z1nQ3CtRTOE%F-8ypmv-DD{4JZA_9>FB@(zvp#B`#MK(~?w_m*a`~UyzDX{o?aT~;)
z4oWIu3{Ec#K^-Mf2`vt-p+IK#mZ+#4XHm%saA4?-aOjLt;d$XN%fJAN#?BHIj!qdB
zP$B-}u?z#li!fOR21v3D4evZ37TkHb^IG#8pI#Rg6_Bx@u?m>_Vp&kY@_>rT6`)Gb
zMa81|heHW#^ADC%rOp}^j?NMl7Erh8lnety^AR6N-45@sbi1e+^ya82fQ$v#qd6)(
zAa{Th6pP9W8L;sJ-61L#NQQNWsK~silwn}#4pEV5{^d}ztoav9$wIJSAO>)N3`RES
zGRXQj0x%bJ#;9<B(l*E|$5~WbK#kJ_|Nj497z54-CG61l$BrvO4h+XxL872Q)CF;y
zf3Vj*2nU6<Lh}!9{=OF=f1842TEFqP_Jeq`H-a1(T5t2WHiCG(cY+)kc0T|Ko#bx;
zbzF9XRChabfQBhrok8uY!#s_@L4y3vph1Xk;qGdd-c6w4#O^K-$-ga_qqiNzYW^j_
z-!c_cJpEGOZvk};ntyTdw`^u$VCW1{VL8sC@+QCmRD*)N#_;0x-~a!?wn2<9*6a3W
z=@xE2%)vYnWLj?{h};S4?t=og7Zk9dN)w{G=u-0$h3L5W!|?G5uu<K@t(QvIcRPc-
zk!GOLk43Qb$iIC$$iTGLOO<Smr$A%2nx7aif{g9-QIXjR>d3xW@%R7#m)xLkT^R%a
zHjB<*Eg;3`8UFwOulXIMl<_B6F(|-aRD%@X19f`A<13mUnK?j8zzRUFeh~#yuoqOp
zyMTSa0~D2C|NQ?C&JTeBwxE&KULO^nBGJZ|Aa*k+gD!{$OO(IXJlM?15D|HJ0=U%<
z$={&l$kPBSu73P2F>L<vr^KrDK#525kN+jQ%|HH?nB7$1-|ip-YW#cySD^wWto-Xj
zRCvI{ONWoMia0ocyz~F|<Jb2fynmq5PIN(|1H<bx3qjJaH-a1p$~R363=CnxotF>3
zW;Hz7{F$-&F(W*@`S%I5UMkUSxn08A{Hwmiq4@w~>&a5N=3iPRF3rE}OY99#Hvfv|
z-zNZSL|!Vr-gzN9?r`%@#yZyKU$G^M&A$}+ryk<pc8T%g>n))Ax}k!Rp|^mkM6C0}
z>utSd47)&q4Ax|Lsq?~N!%MICLNY$IJZ?Qu5)&5Od93-3NVfw|Zv<m6%Un?L1u8K)
zBpDbw4|ck7>;R3>x1KCfYQ5cg>$n>zS{UktA?4*O#@0*6Stf$?lzsvQ52)5bl)r`t
zpcxHnUubyeaZt{(;om0#N|2pCDhkcNV>|Eiw<LnH$!}f$mIzSG*+)gD^ThWHoh~XG
zJ3xNW1hqkRUh{Uo(=JhwY5i7`!N2cT^Y7T+az_3ZDVWw?P<P=re+#J3)BIbXzXjAJ
zY6kT&zB4c|@NX0AyxaNxyNikfXdJ(EbEl3<M~I5bi))}(=do@V6&aAfPlz)xXddI=
z7NVlk`mJ;ZsMKkGpzvA<6u!;J8Cx##x2y!4Cf@KXmcPXg)Y1A?U-|?z6bWj#^KT1h
zY(CET`f@KQ{f9GxRe^Fe|GrzTw@V7TeN+^B%b6M<f*fIam%o=E)I%##QR#fqdG56!
zs5Q}RqtW`mMAPzh=Zlh@)^EKTjHNF?PSXWB^f=6+@*syEZ~b3-y*orjp}RyyrTLKp
z|28(8*pft>`V!~nV~i~aO5Zgfu`xUVE|=3LSjVWyl=$=SiwC*z<+OkQ|L+CO0CawT
z`Rw2S|7jCIhP*rk%8ron)YeO-Jp9|-7@LnVzTVJV2I?PzEhwGee8i^LjS*}t$oA&r
zjLnY}Ch%`#w}~y$v#Bo;1qIcC(swUwL7f`dcpAh!caZI`?}5xa&iMK?$S8M+QO(C0
zUoQUl|3819Ehx)_0_EImc|>~Zc2Uvk)v;)OTcT_EyYnx9i}(Nk|69NH*8VSj(y62J
zf=7&jq4Ov#fc}XxFlZiaeOr1N<V29)U;)J6V)Ot1f1COeK1d+FdU*}(e~9}a{(TB^
z-!aD5=RgsUNWVux=~t)0O0UyLMTCDF2Y-t>D8ag@i1b!59(=*t`~fr;D8aw)VsH8X
zURTD}OZ+XFpfvK+p1<WSsNMcE8d9D&{M0Im`{tq|!C1oC{Hvb7MGuq^j`Ht||KD<(
zzom_lf#JK0iU=r~@V6cURRAI?piJ{ZO%yy-*?H`Rj3}g%)I8SujlZQCq~?O=jpidd
z;D||^z`re&vGZ`lFRfAmNPa!c$iGdv;g?p)SHlA>mrAa7*Qkgzo@ZcSWO&U3@oz)j
ze}<C1oj*H2b>4Wv0}9>)r7vJ6^6v}(5Ax7&kUwe}6-yGjeN;qVsQ&r?zw>D8TmF{g
z;GE&h0E)<;|Nj4PsQ=Hv-vW00(bvx=bY9cE_c9PvH$c)?!%sc_7Er~^zwco43q7!R
z85kM(Ti5*i|NkXu6udW<31mg*jTZ-ggF4qGTAg=aPleY<`$8F;k1~PA8;*i>>;t8p
zeQe)vy!-)TZF6O^i7kol4p9+lex&f4dqVSJ#+Cyms{GrSZDLErZ0bwjwO%Ua<lpAZ
z*nF7r^+OQxxHp^er6Fj{DwctP;pK*Z|Nk4_e!2AD|NlGeK?3tZtY{ExDkz`CGV^b9
zWqv&eQmlrDbsh`uyxjaopxcRu*@>l>r4`iE1-De3!0pgU!k`v*i5jS$4(91}=IE_t
zWW31utFxM=)1>1#3#eny(0oJyoMjI;AAxj%K$SEo8N%9XBHf_jch(ng{{R2q?aa}7
zpoFFMTd5+r&Msl^{Pf~7DA&oTya*NsHOoMSGC2M_KfQ<qRp{5C&2q^2Rp;U6H#wc5
z7aE?ibow6QZw&*Dh^MXqHR}!wF);K7Fg70$fDT`E{rLYMGOh{kf5oVPha}GkF@T5G
zdN>&vI$f`H9s`XbxPk^b7+%cy35vH)*E9UBZ<!bvx@#|Ve(3!5;^7aFFn`N+7VwBe
z=dXry4V^41-M&XUKfFi*Ip6h6x9^$Oll-mQm_UWMGoy`uiKI<TiD-A}mHiTd4h-P-
z#^+`HE!?aO4Bf6*Kt-gG5Ca3_4a>v)&1vi)T^tQR^*ekQ^SAi3GcYv#j44%l>B<hD
zFXG?k@xSvz!%uzwmTWe#Jbz0P8_3K5Eiaco<lpA-zcchihwEbgZLW)L^h-EwV)$E&
z*g%6^C-}FOE`H6_d93*mBmXug8-4yMhizi`ryS%sUHYo?14J9hQLan6T_1GUUO4W0
z2Gl<4blua<(D<C8fq|j3_6n$hAP5@yWKnr>o)?rfI*;?W>|g=;X9-BM1njjvkdaGM
zK~V4>=ypAD+!Z`9*?fSh({&A^d<2c5c<_UbImX{22sY+Q>wyxs<~k06(uciqJl(z*
zKm$6rUKoP2Q|Vd$?O|-)u4_6|H}twN@k3*I$v03egY5wgEi&|$sDSzatu<g1w=^GO
z1P$7NQ@~@!51?>ACBVSYX`=FCk^ln(BDKVT&FTCAYM^zVd(GQ?jIsFuW6PzEu>U18
z{M!T?e$|)0=HCWNV4yk%CRh5TlSk!6zaYdTop<<K+(8z{o@xHg#6RT#|F#3oFBlaM
zce`Hbj6Ji$fxoqcnSr4@c1P=N{+4wt3=FEEGPARGOXu;|A}=@uK*n?ncYCwcDYc#~
zQRzGl$};~uO~75E(t9uDz!rg3)Zgp8*m|<`PIv8=PS-8RSyVv1;}?IyLCW7E0kS4^
zOJ@PcaR+cS2vpoLFtlFc@4ErYGtMk8zcMi}9CtkfYP0l~F?6S{=yp8=8}m$?(3yGw
z6j-_Z$bn@36%^Q=_dt^coyR*}Pk@T2`VtMB>Js~w1HIvly?%@x?EEczSQr>=s`*>C
zuz(V_8)N77&T}^Pr8hto^fC7OmIM5)Yd{@`<Dj5?eH2t)bk?5f{N5dU20VPqzs;S|
zroKe2`8cCZZ3(B1PN_rlPsUQ~=9i3+x}$>$q@?)}qfLG3E&grpOvjk&d!v|I4s<v%
zmYN)MVuJbXB_AUL1IT=v>Jpun1N>86ukde+z0z{Kw}`QWiNED1C@?;~?wi2B&7HaP
zR`YS@*S+BKr}-e`Zcxx1bG^d&`a;@-4tK`pV@&+p*qV<sz2pE@$vXV42SL@?571CD
z1OK)N#$FG`hTrx4t@5Bsw1SDDROlsW3I}W+sJ&ZK)p?MATO?DjBU8ig`jR&dzpG0s
z8-CZ8hBm)rEZy7d!N|YOf$=pv$i4jA7@H3<HXmdJ`RRY@hi+F;q1;`1q1*QeC|i7L
zKF9dt`LF-~n}0BNmR{g*0rg`V>~;8Cwu9Ouu4i70x7_A$O$E)xg3LPx50dWG11|;t
z{r}&5jPa!#sPy{rx)qfBpMm1LmKQm`-9P{T-yM2I^GI)v3Qy<H*W!r$+k6n@zLo<W
zj{i#pK&483=^OrSP9VY8k3pHcnh%tiJHPO^Oa~3AhTeG5`4co#apvWPU;qDio_P5W
zG@$HyL4d#Y7N|85d*Ybu;+W&EOF%93m&L#T{|A{;$_*;PcC=n9;qDIQ=yu)lV)4)a
z|GR7V^v1JvJO2SWS&El|q1zqY1r!1`uWQdRmbiDu?s*vmG6UA0>-OaU70{rS4c)05
zUe^Bp|Nooo1s2EvE5y9cACR)^BoEZU67g==J>3p0&4<BN$3~DibL)Z9_uZ}!pg9Lr
zM!N0+Ib$+NHg(0zZGZm%2jwT%J)NOjx<e0ig9;mP`QxI(^1>IS%J)Eb=obEME<D^e
z`Xy>MF(pc!Cz=m1cDioqJi))scX0;~+e?Sv|NkF%Jp<~{yaY8JyIl`-x^8)?`5P1?
z9GxFtSpWF{A6)w%cLjNh;pGHSurfo+mR1Q+#JcWyDFCW=T_1G1?s*vkV%8pM{m<XB
z=imSTFQh<D0gY_4beHbwX6s~8`F|Z$j?V|BpAWrpES=w9z6P;FPjvV$e!1l5|NpR3
zW;!=0Zuwg_fuzxjnAaWMu2(=&+3C9E<r+|Ag<j~q@nX(LP$dekTS18rG-~tg1wS`(
zYP<OXRJwo*;8U-8L8%|q2I_DECopCkZ~}uge;#-8sDRzydH|Hbq(MFl<p4GJ!2S*8
zcp>{8Gz<^+cMQmpt|wkT{_+1m|2BzE*ApGFi(g*-@&A8A?G*<8mP^0?|F_ZU{KVgS
z<In&9FLnO>|8G-W!U4)A3%~#W-x+$Q^Zd)C-~azZ8cwkGHF!p_`HfC@sYrJ$M|UlF
zr1Sf6P{mnd+Gr;g=)h3I+xg*z^T+@HkF$ZeohB;Xz5<=UI&Zwt0}Vs}VCp<rBHo+&
zrSk;15q#VYRD?6UJ_O3I&Cdl&o^-lC=uCYAYTZ2LL=LI-@Bjbr_I&`(mn@yXUh{+J
zU%*X9P;g0ui)B!L1P2#VNR~eB^nC!zS9iHUG1#5@q}%rae@g`@wS4OIee&YzSCGk1
zUZ#OszTkllsDHyjoe6>N5)}og-}su32!I=VTfpmCy4_g1!+5|`O1(0mJ|sh(WVahf
z^Lxf_771tuDgb%n|NqkG-EJJ6E-DHT6JADgGBAMVzrj{ORxp5u3t3b^VfliY6Xep)
z!zEmxT&BteS^@zYFw+SHuW|sZxzEAC&|S&_9&2{xXs}=?Ed-6@fl3mPQay-L5cfq3
z2LnTI0V8NIaA5{?UBwCx28P98P6=c%4x|BOTQ~;;1E~3M9O{;G5MM^+#d45+rXU@l
z3bXS=Tzu@|&eS_FJG)&uK+7CJl>;cxCxUbx>UCidg0@*cyagq6P?^x}$^kA~ZNL@$
z3v&(z2E&t`t~Z*0Fs60#xbtsk@2q{2*6I4FOg^pohdzIc3=;!GTJw(>{uUuHtDeb<
zzr`Qa>fG-7C=HZ-AA$z@e4lh4>OA*a4pCmGHUEm~JW(RVzdeAd*Mljo^-_shTJtac
z(r5hJ1v^iGnLN!0nE1B~fY>EpKpINkfz<JV^mHDB=qf#BS^9*(2{eAe53&;Ms)vj)
zS6v77FiW581g+BR{E*hk*L;A<@KRc*04!`eYrunJ;JEk!Zoe{uMhhWv5&8ra>XPiB
zGXDuAMvj3rfTpKIR5)H7XJcS^3F@MCr`~xf1?tqm$8USx{#m*{;co^F&hT#!``394
z?2Q*-Z#*)*)cG^5Gk}SIyEs@_5G2gs3R;c??O!w>Wa8h>2nuA7*MG#6yz4xn`J?#<
zD}UcTP(=RhJOK&|#pZ)dAQRF$1OJsIr8Qf`fCjO`!6Eb^t@Tpr{chJAhTqaU4Z-eq
zQQ?48+%I_8K=U~NyGuDrSdOu<p(HB>HgGTbMF6O|o_YsVB76Xs2%R4w(GgPujuigZ
zN_e)!jH;J0|Ns97$BDH&6Mrjcyfv-4o`r$G^#N#}F$Ns&;Ow#i)Qp!=dGP?$VlU-*
z-JNC`&cqL{Gx)a)z7zsk;?C0P`h<VGI}0fFf#+MhU7s``V0x(s>aMn~29eu+AEh<_
z)Gy&mYyKI--#Q&8X6eDi-`WZ01+aiZi@&8BG-%QMD~7+N5L6t0c$o#7^qhbIpmE2>
zHzA<bT8Ij0K@})fykG-`+8d7MAOAa#l|&gH==J7F>vU!_Jn&kGf4ehV^8v;*TNXx;
zQ1e9w{_O|&x4E#`v>fPQEPc@Jq9ULY(fmW8OysyThXiP*^9aaz@T^kWgidFUMg;!_
zFDOV3zbIn`#S(KTbBW=LUn~p^jTYRD3=AdWFW#~+Ff>~*mF#};n1zAiID;4i1H<ce
zFRp<(A|TGf7bn3SPzb-CG6B1P^g!mn;b=Y3d8{O!Jnxi?qB<R#elh*{VkOAUKZHsy
zz0ild49U+>jnMKvG(0T0@r@2B`?jb!K-Md^G=mzl77Y9?aiDmqQ30=_17#Y}Faf9<
zImgVv&`_fy!_fJo#J8KH`2b7r#Q*>P{ri4V@l@lZhK7cQl9%5PH8e0V@V9V*T6q^4
zE;ip_*8IW0Erdn7;g^1ibHlHg61$x-3=9luojmN#2N+))fa*U2hJhA8cESwXr3K2N
zztcKJ*g-Q2EWJ%&H(XM@pbB=vtCb)Zl(HRsA<%r7sq-Mi!RFh{n!kISWk611QF#HX
zwLx*h-_inFp}9f=)Q&vN2+qPWDjcBkx+zQy44t1kU%UwZ3u<%!?`#7tpe`xi0iuq#
ziGcbFpjr#Gtd}9J(~YI^2q-W?sVzSCaN2}}uLMB32ehaG+#i7QK@BW0|3x<w1B2nW
z;|$>RbLd44sCUKyY7o5M`XV1H2Tpa%I!#mzzr9dqVqkbZ3qC#{-28^4J4QvI^>&GN
zcQeR2y#b7^2RbK%n012P%^-Jn-g=Sp7t{_bVd}ime1s$V@Cy;JJ)8^-42B0@zd_U&
zp!rYm)aUII6{uzwl^1nPph-5C)&nK{pjOFzMvyk}eEN&ijG%l0GH3^AhT-)~)bxd9
zo+!dRJ(zi=0x!DY27nFhZ3e|c=dBlyenSEr?1PfW$HATh)gNGGu<^C#H$0#m-+G{g
ztGfZ@=jJ0khhLb%&4f7W6+FB^%^4BUKr7gj-zxk;{s{*SB7Q3|Z{7_Gt^cLcuXSMN
zL*0Dqh4LS80186_x%mL2<*`n%lj`q4rjsGf#228IH;{4yB8({Nz^wnO3{9Z*k^fcy
zG(zYfQ2Gm${s5)lK<O7y`U#YN0HyCh=^Ie`3Y5M8rO!a=6HxjHl->iScR=YiP<jcJ
zo&%+4K<Nokx(7<PK<NS~odcyapmYk9PJq%eP&xuihd}87DD4BKJ)pD;ly-p9Hc;9E
zN}E7w11PNnrE8#c1(;3)&!(k;+Ly5}%dbLb<0ec1rO^YnpqXCK+#qO22PjG5$DpkF
z_y7O@pfQ^VwvdT6{5nQuhf4_LWG1C2C&w4Zr<5D%8tSFw<S@j?7p10W7MG+J#itb|
z=BCDH=B4E`#K)(kViN}&kfm#A2GQ$P79RxF?VOWXT%20Wz`&)N!jK^2z~GyimtGFq
z3{;Yto2rnOn3+>rlxoGrpr8<zSyWP*m=jo<T2u*^NKH{l%P&$;O;JdyEJ-a^NGwrE
zOi3w9EiP721@E>{PzcS-&dV>)Qz$4-EltT+C`!%APfje!%+CXDKq|>k&d*UOOD!q}
z38<#%fwsHg)0320qEMV!m8t+$tH+R@lb@t(sAr&?3v#wGc+U-}`Om=M?(A%(pyBQp
zs;OY6XRK!cN(;Efd^7Xh!}aou(iPmDopr$)bPeG;aqA=2{84r2aRG{tQA}J2fZF&V
zm5fzE42(4#jM6+TEFFxHJ#C-`E)UlK|GyN}2z2ICU<%^mWAWw&?{@?3Ybx3J|37H!
z4}&8gM=O&PFRM#4Gsry9MlX*||Nnz#>lmE*9IE+PK<hymau^sG3O4=!FAB2InNI<<
zU>~%;vj$CU3IhW}$EN@P!EH|H_BhbmrxqkJkUbz{(A}*8-7A-|>HmMwkOACnu5HZC
zEKG;E4m%!mJj%nu;=&EyQ|H0Jz@W4F|9^1KhWR54q=10|mmQ#R0b!NR|NlFJ90Ai;
z3(*JKyJo|{z~H+1|Nmf6*umsonwgos8IK<3VPOH)&<P9-3?*Cs|KATX!-a>D!Cior
zsg%KupSiSvO@N)Lv_^o9skB0XnW?mdY1u&@Mg~Wa>yJAgb>?AV!R<bf-5~cp+4BGY
ze9%ZM%zn3a<~EjQR%TsBa4;MP2ZTE}^GRgBBR4L8gSIq*%+=ZP|35p(U$J}~%}h)l
zJghve%uFD|IGExO^ReL44-yCI|Fh%&fAIDlKR$sNJ{HgpO$N|zK9QaO|GR<0!VzSy
zGoL~h7axb?VLlc|ZgBdE0B!%=`5(NM52Ora9*9Oy10Xv<*ktGb|IQ!<&U^}?Tzo7Z
z+zEW3Nh46&1%*+{&j0_LLGq4#9BoXFd_2v}&U^|fTzoukhxs@hkMXfMb7!FNAX`Z*
z7#J9K?EL>96tp1ixZDA<2jq@9JOBR&#Wg4`BJA<ulkwzJ2;h?ec@#`K^YJ)BEe7p8
zU;z2|z|Q~wLF<>0^t$pX_;B&@I75|sau@T-c<?ENg3WN{LKx!6&A<TiCukcb$FBeX
zXM-FI3)=uLJ`U%@d@P>a5Qn6LwL3#ay}6^nd<IZ{0&R!P*!BPabdY{$K7~XsP?ThX
z6~uD!u{eQ@aOP9M6%L><0O2FM{{Qy^nSm1C3=Am@5O;pr_5VM3cMdqcI`Z+fGduGM
zw6Qqyi8Qmi^Cd*^g*fviWODI|I3DH`a6HDx<9M8p!|^DnP)gwoaOO*3asyM&Sd=(&
zgVPvj8m4CV|No$F9YYo$M>{Cq+n62s1e#f#`3#tzaPbK^9_Hh5JjTc2c$|;LiyL=7
z0}Z}_{H3$^|9?=~#sDfK9l?Qvv+Mw+bC8~lz5oAD28D$uJnb=gazUfik-HemaswsG
zHYNseJb=p83w!_nPX_68h3j+WQ(*Ey#5x1GoCTGuBK!XT-wJBnV+&7bz5wPtMlL=P
zXSA?%=4SHc;uCQ}6L#cg0tG9kFara~U7&bNIq?6#6mI(*m=<7(7iVrJZ!E%~v<uos
z4BBF<bLjtn&_D_(4?yF~85Cb2k2`Sj2{<Fgmm{|`pMV>Z00SiKCNMHExE%Wb-xCye
zi1g>qr;v}7W8Anw<<cHT28N77|Nl3GR*rzf&WV@R8CrIxFe8<n&S3R#7#SE&ocjO&
zG1P2uT?j2}ncR?+J92}%SPY=S?vB&{|HnhsL;VCzg9`p=NzjA495qei%4eXw4oX`+
zr~m)|0xFzfZil&L6W3wqV~&tw-;tX+fC<%YxXcCBRUmUs&j0^^9_nUjIp)FlfGL3Q
z29q=2112WqQpuUy6RC`H<OXfw29<#a&j0_v2#*==NV+_@eUW&M+|h_a4;+r5ZQlwP
z{{P<&s*AvW1(z9)@G`@V?*J3CFZM*v0NRJbzyR6-IOig2y(3VFsCPi+p9Cm=FaG}z
z-mDEPKf}PqUm!vy0|O}SxG*v>yt(-QKd9^mrPpRAXFdgp+90^vR7kZ3DnCjX85m?P
z{r?Z%ob1de5C|zgz-1LE%^F<#|GyA5yg;Q)5K^Lb=k`O+{kY33P#l8rnaltGg9fxf
z?gOV)P}L2p7(w=o;t>@B0icQk>SKjg1_sc%6?2fpELs^DDjFFWRv?KTX=Pw&X@qJ*
zqd1xv7!;Zq7%Z9?7~Gl|7=oG@7*d)T7)qKL7@C?G7^XBaFf3_eVA#>bz;LRGf#F#b
z1H->21_r)n1_qsG1_rBU1_mE+ql|$erWrK-2C<;1nSr6HnSo(aGXuk-W(I~0%?u2O
zni&|*G&3+<Yi3}0)Xc!}u9<=1TQdU#QwswFPYVNsSPKJ#QVRovRtp1zNecsmO$!5q
zTMGk&Ukd|6L<<8$QVRn^UJC<5MGFH%Qwsw_PYVOXj1~rlMJ)^rYg!l>wzV)Y9B5%+
zI0G6zXJB9$&VD=3;F6k?T9WEqlv$FQoR|}wnhY9CVR*yfnpcuqgf7e=&gfc^SrSl`
zpPX7;%%H>QmYJ90oReRi%3uIyyJZ#?m$+r-q&hM%ID$p|QY)YW35;$<si{7hNkxf8
zl?*M6?x`it`MJ4?c_}`bd8v*J|3D%>iNz(ZMMe2V3=D!y?x`id`6;D2sUC@WDG)P3
zVj$}sA;Urp4ELBk^D;{^6LT`FFnpoM?30>Uh9S&g$n2A!m;!Z)BLhPTOK@sQXkG@`
zmK4{D<kSLCD7a<jl%y6hOl1klDRxgS2}{f=O=Z~20v)vqD9SHMO)g<z*bfr{k7I$3
z8Hq10DM~3VU<hIWu`-kMb8;9W7~<p8Q%iCaGxHLQ(u*0&8RFw}lj4(0i{f(=D;OA>
z8RFv$;^R~E$})@c^B5RfA^bGZ$vF%RGa2IJi&IPD6AKFBODYRe85nLe#3!d#WR@^6
z$TG&K78T{?GcdR?#-|k&r52}_Ffhb1#;29$<P;>9WH2mbjL*zZVqjRt7@t|34AH-l
zDLy|BY``w2_yUOFM<$RZ5F4#o5|i?aN*J735=+3!7+hHrOY$=r7`#}L6LWI%lNlJY
zS<;G9QyCb_SklUiGD}h!7#6eSLgiMm<R%rD<d-KGGcc@Y$xY2oE~sQ+*uhdzl$lqO
z#=vldr6?7m^fXIxY6)l*FDI4ZEK6}_dR}4<1H&zr;*uh8$UOwHa#Hgc82+-9<mcp<
zrxr1=u$HC4Owwg7PcAOW&rK=@EsmxR_I3^ObM-Mc0*`JoFffQTKyYqxS#nVcL{y`J
zfngvqvRfdfC21sRY*s)9)XF1G->B;05dw@092jI4I51cgI54nG7)=MmBUXv?1*ks&
z>av3mO#_XuDLF8JmL0%!gZhL_49lShiorxj>ERLri=juDF))DEzc4U3C^;}>DLF9c
z>FGmIaZ$2<dU7&k;z}Pp+n21LoS&DLnXaE{Y+<IKT$x^;nWq=bpr4VSo2s9knpu*e
z57GsmHv{WUD$UGE0ka^}Utk$yBi-bp{NiHWyu^~svQ&MjAk+#5cfU{t$6y5`JtGSS
z#)c3XPyz)dMixepjI*I3WbREtH@BoTFV!|ZH7~U&Gg(15H?b%=!#2~@!c0Lo9ftgk
z6m(%Y4eXlCymVcNXB2eP^73_yOA?c_bqgR(x%?sq9*FPt^uS)h2mpvyBfVrQ`x?~M
zXJTQ^%qwAF25miNVqq`M1GR)wQxrggOib*>8Tmye3aFwStU394=?Y*1tc-^R%udNK
zP0C4SU}9uT&PXg`U<PfKWMY9R2B~8KH3v)67!(*U-D6~6V2v**DPmx}0%9|;#wX{M
zFfd*PIfI2YJ}I#{m4WdZNQ#3sJ}oCPoq_Q>NREd!J}omRm4WdFh$p}r53(w$G>w7r
zCP+YpH9n~{tvIuaf$<iIFTomLl3S3LmzbN%z<3*EoD2gS3&>&YZk|4_42*Ze85tNj
zK!*tZW@KRCWZ(k1k%9632hbsUOso*^gB;Jq!VdN%N>FgcCl;kAGcYBC>;iMj7?@I=
znHU(@SU{F>p)|Ic`XI`RD~sdvQj3Zhm`;HNI6x{ZnIN`<<Wh@@ax#lc7?>XCF)=W3
z#pf57r4}(T{rbTG;+1FSfw{lo+}y;h{2~UXKL~-$JdnU&kN|f)q%F_n$_TQIiG>|B
z@eFQ^bLAJ5WagzXFx!A+K)n2d5(Z{l7!Tw`W;+-!u_&E^*%9Pc?)a3%%ACyfj1mTx
z7_h0_@t{fes{FiE29{VxZ%~ke6b3UhF!0<4ogc)&9bZxfjs=!DMrURQ25y8AwGbl^
zCe(pV;D%|a2Ww!@NG#4MOU#KcVPMq)d5k@yBrz!-B+9_5zl|9b<a?MI7<i{JGccTH
zW?<k05e#fB7nvCt_#ui@3mI6=9)guV2Pp-4?Key*L_HVW)cAt@Oi*W(fpzy%W(Ed`
zL~0>Ic;6*v1_mZZ4tR<HB}E2-;*z4wy!8Bn_{5xa1{RP@Ib>h3Ffa(_<%7FrAUOsG
z!JNz_P=AJjQLrerAikg|H7&Cu-Y_1t0D*xCS<D0?#*8dx0TE*n%*oF$fazid^BC9!
zOY@5Ib8=Es;z6<u?1E*f$tC$k5FUqMPGWHh*lnB)%r-0x3>?g?3=BV5K*^68v_O-M
z#f_1Hf%z{B0|R$yUU5NcGSu0{3~Ww}AcaujGK6?LSRB-0f_S~Sq$sf@HNBF7hy8FB
zD+2>7sISR><TI!qV+Dl^`%zGku(0OkC+1|P=P|G!1H}ag1G70R0|UaG#GLeE1{3xJ
zJ3wZXLY82}gVHYp`yr4446G2&@e?3z3>+Z4KumC=V`g9m=@Tk|3>)MZ#V6+%mlQKd
zFtVRn%E`dMnwXNpz<w6usGQV92KI9xHVbQUMrK+`d|6@<1N(W92nSRoIX|zsgn|76
zNQ{Ryw=}0DJ~J<~gn|9yE=~pp0f<NvNZ>L^i3)2<W?5!RDg*l!kh}(KZhl#D1q1sv
zkXLO$ys8QYc5tcYz?zd-lnz?^Qk=)YegmZ21*9M~z6i9)gn|7gNXP>uRF#wypOc@M
z!oYqTB<2Guy`chk&T}#_1b_vKOY)0S8QAZGL}FOe3gUC~%TgKGAA+=GfcOw29)aX@
zKzyi%Cm?|e*4*3*sE%hK9W7u1h?eJ1I2jl^zyeS`FF_&`Sc{8Op?Y3}^vnPYK=ix;
znK}n70M+vjB(efz3P@W?emp3vrKc7#uzvt)-olz=7@wS&oRJER?N1=l9jrM<D59T1
zqI+0DnJ2X*IU_zPCqFrxf&B|e_yB8hCMb#$^HTFmi@_NTq$ahPf&D8;{s?PQQDR<l
z1~^eLuzv@MonTD^r->gR&KcIU+|nEd_Mafm1=h5b%rXY{Um(sE*0jW=Vg~l#AkGce
zwB(Fp2KGN7&K=gY;=-a52KK)o-UDIi_yaow<4aBkh9@9CXp{uXe<56)oS2hX6klAD
zTLN_lBO^%X8<-3z{Gc+-V3`jv8E`;CrC7jHUxdrRc@=IJD_HmkShyrV9%>mV6ELuI
zfaU&(Km|+k<3XAsa-3i}21XH(5IBE=6ByJoF0d>MM7A^!L!KKf&jFD~b|nv3f`?Hg
zIX^EYz9ca_H7_0|4tT)|1fUA?@=LHO;s+}dVPs%F%gVsO0SYZp?gHm{76#^3oKQhf
z0s{*&F);6k34&58Sdfu{`3fhf%BW{$VBpTIurP!APMDFA3nUIIARywP5(X+M!Uz%;
z1uF-&1LHIEQZkcMiy_54dp2W~2m^y)goRmrNT{D{e6X{Jt4pYlE3#OCV^D~vqfdO0
zt9!hQYk;eti>se=Bm*Oou3*=A9IBX5RRst5c!q#X3T9wN$iVcv`8c|RB;$ia9DRHk
zSP&|F{lg*{SdsXyzWzax@xGqHzK$Wz9#9Qz2nBAT!LISnz5(%$elGD&L5_aT9`VLT
z4D9$-n3*te;8zjs4{~HM11Fj?N1sq6s~ETt(m}3{!NLB{@t%Gm@ge@8aB}qVarI%~
z##G`KfTDs2p~BJGIn+1Q$1%h;-aj<N-QUyCJ>D_MJ(z(Pp(Y^6-^brQ)HOad7$oiM
zALh!yhmdv+@WhbjM@WOh%g5C*%#}d^As7%E>=Ew^4r>NMgfPf_AJ=%0EQ1h2*u_88
z2_`Iz5QeGt4`2{Mh{6>62QY{tL<1aM;)6Z>gF@onLj9aWJpKI`#872}Tth;G{DK+8
z5yEc%p+WIpp}qm}KAygwAq)}-sbGJ%kZ{K!*Z6=SS2x!XXAe-wIJx?{x_LT#I{Gk3
zB9!_#2SAgN6hbh_)zKy1*Wbm{Es{YRAq)yEPd{fDS7!zpgs7)qh^xD6P`rzqufL0H
zJSYN!8DtUi{sAHJj_#ohatI;EFn>>%cpq2CcsKu`ct;nPAO?AaY_N}ic)X`?s8777
zudlHYC?*&ba7bG)C?aGa#`?PY#`_2Oxq!`f204d8384lWEx{o{o__BB0Sw9rDPPZE
zM;}jjKUa|7!(8JbYT^Te{NrJ%D40P7p&k?*!Hyno463MN&ORY73~H!iP9Y5Hs3IPo
z;NWue^bcUrK$QwclF~$#a&rrEbq!$9LWsIXgv47I7+aXfJNx?uhdBC$1T$zOq{CdD
zL;Qn0qg>-5NsmDXA?NPu=Nbel;)3IYgI(i;13Z0v7<3UTK!Txuuu$>wcXWyO4+!z}
zb@XA-!=)-X#6QRtu1p_QS%9Onx2sD$G!{Jlg8kqs4Nz5vL<YF}xCRHugUt(OFhrFG
zxy2yfDKb7F!as<?2q6hdjzRIEex4zaqzEco!d#shjPWRO3-b4k2Prbas>s>jFU&P4
z*wf!Hn86gG0#d4@BsaGJP%MPG289GOm?2bxQVJv@;*nLDV^smMEhL!10wE2~5&^*;
zp>9qLmIz^}nE{SL;KDWDHNw?76kL2*ArwJ!g^5#S2&6pljBpKRutt`TFfuiZ#}Umo
zcoc$T1|EO5C@Kw&EZ{PB2pLEsj1Tt=@c`v}2782*qffYFWN^Hjqn~qRysu-3N4&9x
zIfDa2L8xDlzmE?nTl%>AF*qV5f;~LlLJS$45F$~opiCPP;_BxDwad?i!5JYR5ajRc
zAL1Gh&4i%BhQS3P?dBL90xml}BN$u}!brtpe0Y#&h%18|LK0Na#QPe?hj}{2`v)<&
zBV_#iL*hgI0vtVq9G!ez89Wd&uoeKQjRC3rJ&`1#ZVUvM1`J-9G9I3wW<xN8H$n>P
zAyDu!_#lKKN!7>S&mEE}7<>_Opu`#B?BVXj;D;*c>mO#o;Exak`2&*TKqVJL073?m
z#2|9<F0Ri0F0KrL=+bVEKEbY_rWCkfcJlRP2tp`<wp9XxTwOfD6=1xFC#WO~Mks-V
z12|<cgdl`rQ5gsgj8KG>ql;H)FevOn>4qT;A>r@m8t>@_&Z_aCGKe7@A?M>59KsO6
zz@g2;z>p;Z9To|PHa)>@$+XnOlF}kj|D+h)j)XKb6N{2F(3+XQ82Ln@O-jcgXODPL
zWrWHP00lg>O$k*37P4?+fHWb&f)S1`F3^S}nC}!E?ic`VCxQjQZf1qJSxyw{W)`TM
z!45;XnS}}DC~i<g8r~f%E>2}&7iI!^Su8#!Kd&Udv^X`sq$o8tJ|nd#HJ$;iJU1;h
zFFBQg-H@qT6x8w#5@lczElN#~PX_JifHtkIS!2Z+7zF+NAxV=#&@sr>oq<u%1w=6k
zI)f-?K_?K!A{gumqFDu9z%-knqYFeAyP&g=zmt<|kSkPxLog5`!zt+J?-vi{a0z<)
zxwu9^WVi)=T-_a=BOyE<LFCGffmaaR$P55UGVp;o!LH8!eqhrX_yyg3{2ig~a{)n6
zo#*Bm6bu$%5QKOo0$e`^xw;242!U0AnZkmuVXjD0B7#m3GlLmK1sy?URj@0_%3uaD
zL0?~}L&ZVXhxi8|Oq2kLKph0K9c;EF)Kzc+DX0LbMGaOVEeK-5<z<lM;exV)zK+4(
z@nC0yHOWB)z-)Q28^KHkK_5?FkW=HGeH?>>U4t1E8JHVIp<T2hacG(fU|>!X2aO3P
zRUmc)<t7#|uqShX6mh2{RhXHeNu@xfipz>j;!`j*rh;X`-NTzOYq%MhPlBugB~mk!
z_}t?7;>zN(_|%G$qQv;*ocyGu)S}cBxHZKL?CBgJ&7z1AB=EQ?cu<f1J4c}u1A|~d
zkiWBQaIk++JUD51I-`hr8e5n#Fd`}PG_f#aU_ufIaP<rE4E1GTMiTRJ^mg_2_X}ZQ
zK@x;23<&aPV8s+RVPHcN^z(Q2_j6=mM-p=O4{|kP;6M`bbM<iaarI^3L=p>j^mB=H
z3i5PucV*y068CTn4tMnd^|KKEb@KP~1Bvk<sSEb>33CksyPX$F*xS#Cfe(ov>>Ua6
zW4vQngsGts13!`!sG;S<Ab=#|?g}dS1(8I&%@~A`xQ-znKK_0T!bn2i77QXtTt{CQ
zH%DJX0|rqfK_{0m*C0a%F?1m#261#DV+ILyArl5kWT6nSSyJdiMhwzOLQ$XwpCN+`
zk`QQMR2EvKf~o-qc1cct3D}qfsE}n~mqHQ&7p_I1WD1@`iciWf%}W6-Y+_gB1dTOA
z#w;@PlJh|`T=D3Nl)#EOK!xcCDMapjAjQDIU6h&*E^_0+IZu@nq=1Q$4LTnL9^7UR
z4fF(O0nSoTsm?4Z&A`CK0ht)VoE>3eVM)u$Pb^_z;$TkB&n?JFtx$jou)rpZ1mIFI
z5ec{m*hrYL084y4Sht~(1p|`;b9_8(KscU(LqnQ@;h;1FWVYcy1M@~{1_ti<_=5a`
z<owb+&_GfW1Ltc-kP`0r_~e|b_>#mV2F{OQ5%#pwykziX6qnY2X;2-+D#O4a&hcKF
zfk99PG%(H;9}nv9#QS&#hs4J-aOtzjfTm*NT|)eW;DQDqK?#rsZaz*{X3%-)5^6FG
z4BY&jtju?yyJSHl;3F3^3Ni?=2{H;XGIL0CsB#E{u0mrJWK`u4<_3ufh%+!SsW5PJ
z+i^2<FfcHyF?b3yFt7+SGIMZqTX9=+GYT^>u<|l6bAULW!WP^N3~c-i+}t2#>|$_n
z1_lmBMo(doYEDJaq?rj^%3jh&l7WF6D!}R~3=!Z_WbhQ$=VoBw6=hVHglOes1zXP#
zI+;g+1?&b-VUWcja|JaRm^oy)85o4Xu49FX3qxJU3UQqX5|@>MK@`atR**4b;tb3j
zAQy>?GN?;3Fi4m%xP$CqWdbeN9(D;O7d-zD+7-db_?wTHfsv6Bw3;4t`vv|PaHJ&w
z3=Hr!03f{#tW2O)1k8&V8I_bGy$#ZBBO?v;?Ua<57#SEDK^x+j7<@q%pj(K%fB;lh
zmKz)CB4*w*^OAE)Q&I`6OwiNQM^gw|cR*NEdNRtY2K*Wr7>Y|$GV}E^7#P9KoXjK$
zJ3X}|zn}!d2F;#ASfClvl0=XaCI*Jgyy84v@Vr%GUP-ZD2I!VT&^ije4A32nAeL@^
z0a${CfdRJ6AcKLGfgwF9M;A102-3ugkV^*1k)19<doV#~1~7tle?s?ug7z<h3<Sj@
zXf2Q<A4emTBOgx#a~dDV0Y^R-(D{HM1*3RagaGI|#0B6r0SXL|wO|<x3=9uYL_m8U
zK}nU70i-4#x)fM}8FX+lSOmI=*Z?j9yWtWPM4)1UnbC}y0cC9&0|V@qNst;)&BM$H
z+HwWrA+R2JbqVC+#()1A7}6P&E7L*6gKlzBNm6QhW}aShe11|ENC!wa*c=dtp&Lv>
zu3iLfhhks=?Sups;~-x`MAm`UyusWIawb#{GIfN3fx&<U=2Muz9KgC57?>I5Kzn$Q
zH8AKwF2w|kf$d_%++G9oJKW8TAeVu)pb(&2L_tT*f=pm$1nrdsnTSvVyZI9&0`e0x
zBY1xxh>L=sF)%QIcGE%B2%^Y=IC@#h;QJ{-t^nD<%m54dBnAcsNXSDMV8j>a7nSIN
zt%*<0NKMXWU`T+450)?lD`#L}SO`<Y5D!}Y&cML%g%v$iA?AQWH5jyJ2jnm~hJ`99
zB)~4jVizn_L1h>?C16tny(<+ImXOc@nFzNA&H#m23~1#A1IRtfaB*Y?D0V={ErCp6
zW(1`#kcr4D7#Kb>FfbfogZdPkd!Tp0Lezll0`1!7M>T|jfdO>pcLEn-b0BI!=74r-
zgF*^n6fAr|d$}Ru19CY+9>xM46jZ>C+b)ngWkv>u1u!)X@$ryY{Qwt%<rIiHAot7x
zHT^(Z;TRUDpn3@8Qf6>YK@B9Bn?ZZ=@VOauDpCRu)XiWUJQ*1nKEOp_?hycsfZPMx
zvB?fr2_s;3f%fu2>;kzACJUkUoP$DCB3wXI%M2jh5H~~QU?fzHBS<%XH9n3YJvh~r
z<P@t!MMZ(u>4HiMW^nTiqyvHVKx!Nv!RFvn15zEv$iR@miyS_n-G?7gM5Zz_FihZs
zsey$U16U0x#MGG>7*KNpEW|*&Paz=&%6lODQ1L2828IFwbdwGEK_VcNxtSRlKwSfb
zE||%ny}uBXG1Drn^aJg`2IV|v##IOdpe$H92D)z<QjVo1W~V|Wk*K54WCuDchM5uj
zn&*p9HK03MnHfO~QjrXRGVepxfKEAMW&|zigbG0AVWH{(Iw>7owt!k$P)R5S%NHOU
zAo&6+fkeT=2UJ@_!UstbiTN68J!sD-Gb1Q=Kqew7U|?YQ1y#cfb`R*}0#r4yFa(t-
zkT8U`O~KUw*f5yCa^U^~3!@O!^cN_;K(PdguL$rGVHC?47#KkD1qwq*d`UxniK+?|
zKA=#6gb%3x!&C-}Q&3Do;uN$*71az74_sd`F@Ty$49tv}H7rOCI}-y#0XTdV7??1v
zVSt4pL=7lkfKoOnc0sx!7&8np^94wyAQJ<FfD$Nwfm&!F5qVIgD#Juzc7g6z2RVhA
zv0i|I0dztENG$}z@)u|iG$elsLnP2hLna1>1enPn!_eemc0tsD`~}*fE{&oJGd*Ma
z3+5isA%qb3z)p!lF^a(nbZ5K<%%>nZP<vv57P3eR69dBs6p=C}1_lRhWHp^k3=9iU
zL}oEDFkFC(!2P8T(gpI@Lly=GDUgM5tOvd$UBwjCxCXhFnE@(dc7}z40Y$|04<nk0
z*#QhSKQPp6!%*`DL(LitHJ}yMD7Kp|!cYS`+W=L~3=B0dFzo8VPy<@ejcQI4hMET$
z=2T#)xr3o54@1oj3^hp@YOY|YiNH_;x_TAW&3+haK=%xwssUZkgd$=Jy6hB1#0<2`
z7e&PM2!?x1(CsqQLKiUwom7Ehj+qjM8qn=csA|N})tK>Mh%ljxn6ANa;WyB_ZBTsy
zPtWhrMNF4q=z4^qW)6lL(E0EvZZ@5Pq2>^VIiT|rP;{9s!cfzLVa_CUHD*odBBm`E
zx{A=%n1D{GLa`lFmuUfpIX>v-nC4)pvBFT3fuTkRLrn^X8a@m)2^ebrL3>^BGRhRx
z148ka*)t3^5g6v2!cYS`q!`tl9T;i?Fw9wkp~eS84d@J86q8Ls{ah3gvnC94Kqqye
zswu%x13EAmRSl@lKoKzo-8hCKVits9js=FB-7wUcV5qUcP-B3hMgc<&sAfcU4+pv$
z6VQkciW*Z4U8Xe{cBNsYp9%~$G3aVcKz%+`yO4B2$95DMVIvGkV>_vNDUdM+28Pw3
zI+qi)1q{-<Vqn<C1UaJ))Sv;i0~i=UhaDf#1=Yd|49s|1AUnWnKs7bIf`&6-Eh|tP
z5Nt9wbCQZd`^&+nEP>i(*z5us2pSo<0CO`VsCR^F7{+)DxaSMfiHh$qF)%><1#&Z}
zjf!dxNHyrr^DA(Ffm%(NYCx^i19)1e&^C$b0*pAlh90M;Q!vzQfU5zy=Q|Sv11w)K
zF~ma;DEOfRi5*bLGBEHnGcYKC-3)7;Dls!KT!Fd}qQ;S#fdN*7KtzH-Cv&6dN@0fF
zJ`74@5H+B?h(N9Y@j#e?p_!S1p#Vh}sMNm$76FY9#zT%TVAz4;!iCHX46xD|V$LpR
z28In#ze7Y$f)XFt9GEYzGBYs1$|#7M*UStI1}JK{SQr>!bpb?;A`1fpth9lMSb(At
zbm|Crh6dyx&=pLuk{_ZbhJ}IQ2rHz;2oWh@VPJrj#-Nag90>6N#b1+I7#J3yxChiW
zL=AaRs}t6`0GShCkrST`nxO!XctGqr3w0srlwpX-Q;>)N=;UEgsDj-54<y2%z<^LA
z0p1vdti}YCjTjh^Om@Q%iNFxaU}a!{l~FJkR)J3z2aTmb+*85IzyLbU5|K7~SQ!`+
zQ2aiJm4N})DuCz$-6OCCC6@QIGB8M>=(@lP=_!Gn1=01A6?8E?a$J06WnhRv(ZvaJ
z2q;)Uqv(v1450h~<{}ZGTN5l$;?#@{a;6)?E@!AYh)^wIV_<-ls}T1zu`w{f+H4S!
zNl;w~a~80n=eWaAH3*Z>f<#c_^eGzy1FX#kG5Iqa0|N(&PZ`-67+^I%L=EWrivScg
z+U$_?6cO=d3uS_=WCEX=0y_Ak044SMvNJGbpqP_@VNL-%0|Tt*0!kYxIXUs*)7FsE
zVI9aW23R_bhaOzA0mZJ#><kPCP*TD|b_NDm{{rH#jqH#U<{)kcMdT5%$)IzzVY%Qk
zI|IW56qE0Q)WAbEJ`sGN3d0E$HJ{lT7%WhH3YvotKvBcX0Xppkmg?f6+nZ*fs8Qlz
zV1Ts&Aa2&<fSeMBaI-T9dP)FY@6v!`P7VhH1FVe=3RUn<TX30xNKtj50Z5cms|%zH
z#TPR<7#LuEPl$U!H`RbfI6*uRW?<OL!N4GZqU#6;149Q~Bp!MIOak16@$sNCDiIU`
z(2@iqlEMIT5-7MKCST-WV7LG_2NpY^YjzgE%>fzk5~Kx@HsYOwLgIZxK=TC%pZ?@v
zU;rIOjSykwgq$gd5D^4b*C-{MA}0d_XmkysMi)g5Xa^_g#Gnme7lP`Pc+igKGLWkn
zz%#uNU)XaZ`yw8+aWy}g;Q-th@z71ipz$h@4iIKw@Ppcg$lZyY3=FV7HAGE5Cj&zT
z+;)(?4Io`iu$%%Cnas(+0P7bpF~ma;@acft4pOs`lYs%&tA&`nmy>}3*6)UhoaSU;
zfX!_|MD9adOb8c#0qxU6$%D*X3=FXLDnyqc7X!lz6gNwAF@Vqa1w|w%t)}LsfJy)X
z25@SC=mK531nY5tN*l<5Lltme#6yoTS^*aU`OBV*f#D9=E?D~U<zirfwVEI%$AX3=
z;pqpYYXTPo!wj%4P@IB9R&X&eyg)H|Ggy}ZQW<rI3%!KA2Udezw!G$ow22WR_LGZ&
z0XF^vaSuCa_!GrFX55I7fT#hTxCtAnU}A`e9Qwp?0mX&>P;)@(oQV-MdWYH0OyOo=
zfc2LlCRcKU)FbR;U})oJV1V^^AZliFL(We`<crPR3=AG9A$EbAfdMve1=00@n}Go~
z0s|3w!_B||>-j=N1VLE<6yV@G7c?@5>1HkHj1VFWouIl9BEdWi46u<mh{;JjkRAz$
z2f_>txjYOEH&8;XoQHt{Hm(Ix)5^oZ02}#-h)jaog(!`e^Prc;J9!uwU}GQ<UB{ui
z5H5Vo!@vORX+qR|!%)M=%fJ8|V+5u7k|NN7S{W#Amg8k$fVJ=;=9us@Fc>f(mp?wd
z3=A45u@lXUo-3<(85kT;)J)=q%t0f3x|)}P0X7Q3#1IcX%4-6Odk*q4Fu=wbA?~@v
ziyl5-co`TJP+Cn~d<+brnGsL}9imH_4-#LHG69q%^!U*8mmMDiLj;QL9()W8uzokh
zoHRZL2H4mj6GI6f1A|^_2IQ^;2ECNjq|)^G#G=H!^weS)7kq;POe!g<D76eGlara3
z3S)zBTL7H~2f1(nyp<h1rwTqN4$N{63JESrEGj82V2BUT%=1mm%tIE!xS}B~4>T|9
z<qTgF86O`Hy6>R~dPf7))lgA%?a2ND&zY-KRaHR_pi3-DF9R8!Tu>Sh+j9VRFi0>Z
zKOS^@LSjyQN=bfEF{%)F2@_bTGB3U)rx>iu!O#dKRFYGanhw$f;>4GOmV|@Cq9mgz
zJ~1UFK0CD%Y$B#?Q7ULVJ&FR*5|Q%w5T9UB-I$b^oDDihFBP=FD!!;R541Wf9(rd)
zei1ANh>It*$c08*8tAya)I4ygK<oyE0m!Kc9=MwsA0H19Ny#kA1090`7sxM2%}dEF
zLg*<<O-w-%NCq9Th$2#yTArDQs;DG2CkI7MacXKdRKP9B(bqK|v|TD5WDO`~Ksl&M
zA|4b?kl84`VrYuf1Bn&unVFgzn=-`5XXX~f$Aiv&M4a{LV8IZNdMcuWp&7`YpisXM
zPhZ#gfMC~97todwAAe`qGF_-ih*Ju&7z(irekfslJZOOpXf1V7Nqjs*JkoiR4kjS`
zke2~N&Bx|0uos{!mq6MIV9h3|9{1D|_&Jmg1`P3dPKN~B3pNjG5%>^DNV*0KgF*^^
z1|}$=;=!pO9JnAqK)i@_!X((loXjN1@qY1%@tM%n0yYlkVV59nF4)fU1WCjfmBbem
zgVTL6B=}$v390Yn<3U{|(8}_}<dW2)%;J*F<YKVvz?<&#(?FV%v*VNVb8|DnK@UC-
zA|5UQI&`wAEETK;d<sr{acNR<WpPPrZanll7O-4=a#0DWy^iocL?jbr0VGo6VIq*W
z8#GElhq-_{g)n!coaYmd9$}C`MLAFtY7XqEOIUhEL>DA;g3b}iDJf1V$}fpe%P&e!
zg<A+ZK@(&V%88`lz=dyAffTE-i*rD6n4gmZiakUuX5{9l#6#xL8T86i6SMW=v0l6b
z5_a{7hvZu)S9ec8aQK1K0Q7WGn2%sbdd9~m6+>eetTrBZ?t|w2c-U#7@$l%(NKGt2
zj%Kih(DOy(u?47mD)=~9=y|N51db^JjnV?7NCuk=KerPUuE=M>f-)Uk6KXnuwAR68
zX?{_Belbe&0-Fk5qzDZj_$j3E@foR!;IN0~EO68&rl-b(4!Hsc86qf)AqU~cgHP4S
zP0a%*dgN1MK{1bTKP17Smq(tCA@MNR!!3s=35Iw)F%-`LD)peJqC&j_4t~fXQb>ge
zLp;)vydYOW+yXm26<TJ(oDq+F1}(V61s~rF)`z^aA|5H+KrTU?JPS!?F!MlNWSEm6
z88;d3Wk@Zbl3D>OW5F38bb?VLESsZPhgw2qR>AWfbZ7(YRMc`5G>L#3KM<e$U^(*_
z>_2Gg$j<~vd;w_T8u%RB`1p7%Sq)N*VM}1pelJ6OJSc+UMHx~N1@d`nUJA?}^mB~C
zuEA1Q!Sf@$WI%74fy)-`WdpVYo52>rj{!!@<;Z0=B<f0#GHASKZen_>6X^K2c%;G{
z)O-MkV=<%)0dpzl1z^}+2_92PgS3~x=75@M`N<6N@t7vSf)DlJ<akKhhb2I;A!s=O
zr6?~h&4-obcq`BNc;rSc%x-AY4QvacW&n<>(m?4fE59f{6BM8*#TDpKA<%VeIf?0z
z+7@gLbcl-~9voKC)?{&N3HV%QXi)&|FvZ8mCud|Amt@E1f|}c~GA28<C@(d~*eE^`
zbgLUu)sK`Wp_4PPf)smo4R#Nx1%oIgazRJhVet!CDg01os58+Ht%f#$VRdX}9xP(e
zn?GQ~aJFXfXK=J*#lckx*gW*o8&X;z&Ys3s9K$NioXjLd;KEyG@hM1s8t|YTwBrFP
a2TF@mK?MOUhe6XVdPw2Sy<n$9N2viqMPc*+

literal 0
HcmV?d00001

diff --git a/pointer_sort.o b/pointer_sort.o
new file mode 100644
index 0000000000000000000000000000000000000000..c662c30c2fe50a7091d2b5d3f1830c3a71cce18c
GIT binary patch
literal 1601
zcmeZaWMcq<Di#I?F%W}+g;B30wW0*fh7ci43=Axc3=9e^5I#tU0)s(<UP@v~B18x$
z>A+xcKrgAd7^ecLL<2}&5vqY8>mrz;3ZRq&gMov-36uk+R2Uc-Vz8+*G=-{wPzx9s
z7#f%v7-B#MGcYiKw1CVD?R?t&M&P*XACR)w%H6JidPQ16>~2>M#tYp7-L3+bhf3LZ
zFfuSOycTSB{lnPp`p4Rpr|9YqkgAi1Lpz@aH@`9Ie9(Eg+m)yJ1!L!-=2wiJp)U?T
zVCoHE-XXxiz|j1Hk@3P#5Nj7m)Ax_r2LxV#Sei$AT~v6Q4=^8m!F2EeQ>W{b<E|e-
z5-)EvFfbf<{Q_bicYOn*Ue01*VCZ&zgYG__UXTCXu1`8cR5&_)R9HG$R9>k6|Np<!
z^+9v(1ICi1=Grd|r6TAW89H6RV2D|}eyKOc5bZqJ?fRrU^g}1l1WY;CFRvLVG`qfG
z>~`hp4fx;f`o{7Qe|zZv{~$MYhkod0nb7H?!g8Di6j2OdPdB@MfUEuhQZ4fT|9^03
zcHZfZ{d4kgua62#^OFz%3;%?6J`E2G4s3p-(RmuIxAQ^g@owhcfd8GL4~Pz64x|9S
zbKLa_I4-rjU7z$8fLsX+P-hm#3*8K$@B;;R=b>)bJDnmMnq8kTcDp{YX0AEcEesM0
zfrK&3KTsIo===kAd2i~6$mqEE*xtlHhbM5UrZBiWJ6kDe_-5w0hwJ4Rr7O5QJL{V1
z8S5G78fq$l84L^}AbS`X7#OR97#M3f7^QhwSUMOP7-SeA7?e~UL24ZNI9i#Ucv)+Y
z^02TlFeorEFxW6KFt{=>Fa(1<1Cw`YW@h$gJbIXig~fq^fgyo`fnf$C1H*oh87@4G
z4DJG~Or;EN{LG~VYy#{|r8NR<Or;e9%uJ;vOv?`PFfuqEc0A^I-0`S0*q$l|1_mJp
zkUO&&85npN7#P?X@)<#V5MIs5z#t5kz0C+yC(6XYAPN=(xe-)Wh%kU$0%4_qO#tcD
zOUukj1-XiWf#KhO28MLTg8a<9lGLL3;{2i#y=0J7d~!x=ayE#?z`)3$z`z9ZDTE6r
z!O9sJ7(k%}R>KgVo0yr$z`!tt5vq#;xkLjQ!OR%U1o8>o5C#SY<kE}@R62kZA}au?
zK`O~Wr3W)MHAtlxDE62cK_r?%3=9mCP$5>ZUCK}%Dh19k&=6y01eISPTT#{MA#s@)
z;^Sey2MH@MFfqgz6lLa>q=C2$pmf8;5T96*p9$qdM65x61G`(Ls;Y`XFEt}Rttc@!
Wl|c`iV0?Uhaz=J>Np^g0F#`a%idmun

literal 0
HcmV?d00001

-- 
GitLab