From 43b6bbe934bb6a3e45ef8d464e432a825e265119 Mon Sep 17 00:00:00 2001 From: "Yann Esposito (Yogsototh)" Date: Thu, 3 Jan 2013 16:21:21 +0100 Subject: [PATCH] removed a trash article --- Rules | 1 + content/css/main2.sass | 130 +++++++++- .../en/blog/Category-Theory-Programming.md | 227 ----------------- .../fr/blog/Category-Theory-Programming.md | 227 ----------------- multi/blog/Category-Theory-Programming.md | 229 ------------------ .../code/00_Introduction.lhs | 203 ---------------- .../First_Na__ve_Category_Representation.png | Bin 9272 -> 0 bytes .../First_Na_ve_Category_Representation.png | Bin 8250 -> 0 bytes .../graph/Na__ve_Category_Representation.png | Bin 11400 -> 0 bytes .../Na__ve_Category_Representation_Mess.png | Bin 12887 -> 0 bytes .../graph/Na_ve_Category_Representation.png | Bin 10186 -> 0 bytes .../Na_ve_Category_Representation_Mess.png | Bin 46898 -> 0 bytes .../code/00_Introduction.lhs | 203 ---------------- .../First_Na__ve_Category_Representation.png | Bin 9272 -> 0 bytes .../First_Na_ve_Category_Representation.png | Bin 8250 -> 0 bytes .../graph/Na__ve_Category_Representation.png | Bin 11400 -> 0 bytes .../Na__ve_Category_Representation_Mess.png | Bin 12887 -> 0 bytes .../graph/Na_ve_Category_Representation.png | Bin 10186 -> 0 bytes .../Na_ve_Category_Representation_Mess.png | Bin 46898 -> 0 bytes 19 files changed, 128 insertions(+), 1092 deletions(-) delete mode 100644 content/html/en/blog/Category-Theory-Programming.md delete mode 100644 content/html/fr/blog/Category-Theory-Programming.md delete mode 100644 multi/blog/Category-Theory-Programming.md delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/code/00_Introduction.lhs delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/First_Na_ve_Category_Representation.png delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png delete mode 100644 output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/code/00_Introduction.lhs delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/First_Na_ve_Category_Representation.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png delete mode 100644 output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png diff --git a/Rules b/Rules index 3778cec1a..8566eb092 100644 --- a/Rules +++ b/Rules @@ -56,6 +56,7 @@ compile '/html/*' do filter :description filter :falacy filter :blogimage + filter :erb # I should try to remove all erb code inside markdown filter :kramdown filter :fix_img else diff --git a/content/css/main2.sass b/content/css/main2.sass index 6ebdeb967..f1007dc7d 100644 --- a/content/css/main2.sass +++ b/content/css/main2.sass @@ -41,6 +41,20 @@ a a:visited color: $base00 + +#blackpage, #nojsredirect + top: 0 + left: 0 + width: 100% + min-height: 100% + margin-left: 0 + margin-right: 0 + margin-top: 0 + margin-bottom: 0 + position: absolute + text-align: center + background: $base3 + #content width: 37*$unit + 2*$hmargin margin: 0 auto @@ -78,12 +92,12 @@ a:visited content: "- " ul padding-left: 0 - margin-left: $hmargin + margin: $unit $hmargin // width of '-' text-indent: -($unit/2) ol padding-left: 0 - margin-left: $hmargin + margin: $unit $hmargin .toc ol li, ul li margin: ($unit/2) 0 @@ -95,6 +109,12 @@ a:visited margin: 0 padding: 0 +#entete > #choix > #choixrss + margin: 0 + padding: 0 +#entete > #choix > #choixlang + float: left + #choix font-size: (3*$unit / 4) padding: 0 $unit @@ -113,6 +133,110 @@ p code, li code padding: 1px 2px background: $base3 border: solid 1px $base2 +blockquote + border: solid 1px $base2 + background: $base3 + code + background: $base2 + border: solid 1px rgba(0,0,0,0.1) -#social +// Specific elements +#social,#choixrss,#comment margin: $unit $hmargin +#social + float: left + opacity: 0.3 + &:hover + opacity: 1 +#choixrss + float: right + opacity: 0.3 + &:hover + opacity: 1 +#comment + img + width: auto + max-width: 100% +.intro + font-size: 14px + line-height: 21px + color: $base02 +.left + float: left +.right + float: right +.flush + clear: both + +#bottom + padding: $unit 0 + background: $base2 + text-align: center + font-size: 14px + line-height: 21px +#entete + padding: $unit 0 + background: $base2 + text-align: center + ul + text-indent: 0 + ul li:before + content: "" + ul li + display: inline-block + span.active + color: $yellow + ul li > * + padding: 2px $unit + border: solid +#previous_articles + float: left + text-align: left +#next_articles + float: right + text-align: right +.corps + padding-bottom: 2*$unit + +#tagcloud + margin: $unit $hmargin + font-size: 14px + line-height: 21px +#sousliens.archive > ul + display: none +#sousliens.archive > h4:hover + cursor: pointer +#hiddenDivs > div + display: none +.list + margin: $unit $hmargin +#content img#mainlogo + width: auto + margin: 0 auto + display: block + max-width: 100% +.date, .day, .month, .year + display: inline-block + padding-left: 10px + text-align: right +.day + width: 10px +.month + width: 20px +.year + width: 30px +.date + margin-right: 10px + +.popularblock + display: block + float: left + margin: 1.5% + width: 30% + figure + width: 100% + height: 120px + overflow: hidden + figcaption + display: none + diff --git a/content/html/en/blog/Category-Theory-Programming.md b/content/html/en/blog/Category-Theory-Programming.md deleted file mode 100644 index 2f91185e3..000000000 --- a/content/html/en/blog/Category-Theory-Programming.md +++ /dev/null @@ -1,227 +0,0 @@ ------ -isHidden: false -menupriority: 1 -kind: article -created_at: 2012-10-01T19:16:43+02:00 -title: Category Theory Programming -author_name: Yann Esposito -author_uri: yannesposito.com -tags: - - Haskell - - programming - - functional - - category theory ------ - -begindiv(intro) - -%tldr How to program using category theory. - ->

Table of Content
-> -> * This will be replaced by the ToC -> {:toc} -> - -enddiv - -## Introduction - -%TODO{Do everything after the end} - -Now, it is time to talk about Categories. -How this notion could help you and how it is easy to use with Haskell. - -- What are categories? -- How to use them? - -### Programming Paradigms - -When you program, you resolve problems. -There are a lot of different means to resolve a problem. -Many different "school of thought"[^school] exists. - -[^school]: Écoles de pensées - -**Imperative paradigm**: -In programming, most people use the imperative paradigm. -You have an infinite number of cell and you can write things on them. -Of course, it is more complex with modern architecture, but the paradigm is the same. -Hidden somewhere, there is the model of the Turing machine. - -**Functional paradigm**: -Another paradigm, is the functional paradigm. -This time, you don't write on cells, but instead you have a flow of data. -And you transform the flows in another flows... Mostly it looks like pipes. -I am a bit restrictive here. But generally this is how functional programming is perceived. -The main theory behind this paradigm is the Set theory. -You have a set and you go from one set to another set by using a function. - -**Category paradigm**: -I believe there is another paradigm arising from Category theory. -Category theory feels both more general and powerful to help solve problems. - -First, you must realize there are categories everywhere. -With the category theory you can find relationships between quantum physics, -topology, logic (both predicate and first order), programming. -Most of the time, the object your are programming with will form a category. - -This is the promise from the Category Theory. -Another even better paradigm. -A paradigm with gates between many different domains. - -## Get some intuition - -We write down the definition first. -And will discuss about some categories. - -
-\\( \newcommand{\hom}{\mathrm{hom}} \\) -
- - > **Definition**: - > - > A category \\(C\\) consist of: - > - > - A collection of _objects_ \\(ob(C)\\) - > - For every pair of objects \\((A,B)\\) a set \\(\hom(A,B)\\) - > of _morphisms_ \\(f:A→B\\) (Another notation for \\(f\in \hom(A,B)\\)) - > - A composition operator \\(∘\\) - > which associate to each couple \\(g:A→B\\), \\(f:B→C\\) another morphism \\(f∘g:A→C\\). - > - > With the following properties - > - > - for each object \\(x\\) there is an identity morphism - > \\(id_x:x→x\\) - > s.t. for any morphism \\(f:A->B\\), - > \\(id_A∘f = f = f∘id_B\\) - > - for all triplet of morphisms \\(h:A->B\\), \\(g:B->C\\) and \\(f:C->D\\) - > \\( (f∘g)∘h = f∘(g∘h) \\) - -### Representation of Category - -Representing Category is not just a game. -It will be _very_ important. -But in the same time, it will help you to gain intuition about categories. - -A naïve representation (which can work in many cases) is to represent -a specific category as a directed graph. -Here is a first example of the representation of a category: - - - -A -> B [label="f"] -B -> C [label="g"] -A -> C [label="h"] - -A -> A [label="idA"] -B -> B [label="idB"] -C -> C [label="idC"] - - - -From this graph we can conclude without any ambiguity that: - -\\[ob(C)=\\{A,B,C\\}\\] -and -\\[\hom(C)=\\{f,g,h,idA,idB,idC\\}\\] - -Instantaneously, we understand that we can get rid of all \\(idX\\) arrows. - -But in reality, we lack an important information. -What is \\(∘\\)? - -Now, we can add informations to our previous representation. -We simply add a relation between 3 arrows that represent the composition. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -fg [label="", fixedsize="false", width=0,height=0,shape=none]; -AC [label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [label="h=g∘f",fontcolor="#b58900",color="#b58900",style=bold] - -A -> AC [label="h",arrowhead=None] -AC -> C - - - -Now we have a complete representation. -We don't have to represent \\(idX\\), we know there are there. -And we also don't have to represent composition implying \\(idX\\) morphisms. -But, even this little graph look complex. -To show just how complex things can be; -we just double the number morphisms between different objects. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -fp[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> fp[label="f'", arrowhead=None] -fp -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -gp[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> gp[label="g'", arrowhead=None] -gp -> C - -fg[label="", fixedsize="false", width=0,height=0,shape=none]; -fpg[label="", fixedsize="false", width=0,height=0,shape=none]; -fgp[label="", fixedsize="false", width=0,height=0,shape=none]; -fpgp[label="", fixedsize="false", width=0,height=0,shape=none]; -AC[label="", fixedsize="false", width=0,height=0,shape=none]; -ApCp[label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [color="#b58900",style=bold,fontcolor="#b58900",label="h=g∘f"] - -fp -> fpgp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> gp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> AC [color="#d33682",style=bold,fontcolor="#d33682",label="h=g'∘f'"] - -fp -> fpg [color="#dc322f",style=dashed,arrowhead=None] -fpg -> g [color="#dc322f",style=dashed,arrowhead=None] -fpg -> ApCp [color="#dc322f",style=bold,fontcolor="#dc322f",label="h'=g∘f'"] - -f -> fgp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> gp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> ApCp [color="#268bd2",style=bold,fontcolor="#268bd2",label="h'=g'∘f"] - -A -> AC [label="h",arrowhead=None] -AC -> C - -A -> ApCp [label="h'",arrowhead=None] -ApCp -> C - - - -In fact we could have made something equivalent and far easier to read. -But the ∘ relation will be more hidden. - - - -A -> B[label="f"] -A -> B[label="f'"] -B -> C[label="g"] -B -> C[label="g'"] -A -> C [label="h\n=g∘f\n=g'∘f'"] -A -> C [label="h'\n=g'∘f\n=g∘f'"] - - diff --git a/content/html/fr/blog/Category-Theory-Programming.md b/content/html/fr/blog/Category-Theory-Programming.md deleted file mode 100644 index 7e78a005c..000000000 --- a/content/html/fr/blog/Category-Theory-Programming.md +++ /dev/null @@ -1,227 +0,0 @@ ------ -isHidden: false -menupriority: 1 -kind: article -created_at: 2012-10-01T19:16:43+02:00 -title: Programmation en Théorie des Catégories -author_name: Yann Esposito -author_uri: yannesposito.com -tags: - - Haskell - - programming - - functional - - category theory ------ - -begindiv(intro) - -%tlal Comment programmer en utilisant la théorie des catégories. - ->

Table of Content
-> -> * This will be replaced by the ToC -> {:toc} -> - -enddiv - -## Introduction - -%TODO{Do everything after the end} - -Now, it is time to talk about Categories. -How this notion could help you and how it is easy to use with Haskell. - -- What are categories? -- How to use them? - -### Programming Paradigms - -When you program, you resolve problems. -There are a lot of different means to resolve a problem. -Many different "school of thought"[^school] exists. - -[^school]: Écoles de pensées - -**Imperative paradigm**: -In programming, most people use the imperative paradigm. -You have an infinite number of cell and you can write things on them. -Of course, it is more complex with modern architecture, but the paradigm is the same. -Hidden somewhere, there is the model of the Turing machine. - -**Functional paradigm**: -Another paradigm, is the functional paradigm. -This time, you don't write on cells, but instead you have a flow of data. -And you transform the flows in another flows... Mostly it looks like pipes. -I am a bit restrictive here. But generally this is how functional programming is perceived. -The main theory behind this paradigm is the Set theory. -You have a set and you go from one set to another set by using a function. - -**Category paradigm**: -I believe there is another paradigm arising from Category theory. -Category theory feels both more general and powerful to help solve problems. - -First, you must realize there are categories everywhere. -With the category theory you can find relationships between quantum physics, -topology, logic (both predicate and first order), programming. -Most of the time, the object your are programming with will form a category. - -This is the promise from the Category Theory. -Another even better paradigm. -A paradigm with gates between many different domains. - -## Get some intuition - -We write down the definition first. -And will discuss about some categories. - -
-\\( \newcommand{\hom}{\mathrm{hom}} \\) -
- - > **Definition**: - > - > A category \\(C\\) consist of: - > - > - A collection of _objects_ \\(ob(C)\\) - > - For every pair of objects \\((A,B)\\) a set \\(\hom(A,B)\\) - > of _morphisms_ \\(f:A→B\\) (Another notation for \\(f\in \hom(A,B)\\)) - > - A composition operator \\(∘\\) - > which associate to each couple \\(g:A→B\\), \\(f:B→C\\) another morphism \\(f∘g:A→C\\). - > - > With the following properties - > - > - for each object \\(x\\) there is an identity morphism - > \\(id_x:x→x\\) - > s.t. for any morphism \\(f:A->B\\), - > \\(id_A∘f = f = f∘id_B\\) - > - for all triplet of morphisms \\(h:A->B\\), \\(g:B->C\\) and \\(f:C->D\\) - > \\( (f∘g)∘h = f∘(g∘h) \\) - -### Representation of Category - -Representing Category is not just a game. -It will be _very_ important. -But in the same time, it will help you to gain intuition about categories. - -A naïve representation (which can work in many cases) is to represent -a specific category as a directed graph. -Here is a first example of the representation of a category: - - - -A -> B [label="f"] -B -> C [label="g"] -A -> C [label="h"] - -A -> A [label="idA"] -B -> B [label="idB"] -C -> C [label="idC"] - - - -From this graph we can conclude without any ambiguity that: - -\\[ob(C)=\\{A,B,C\\}\\] -and -\\[\hom(C)=\\{f,g,h,idA,idB,idC\\}\\] - -Instantaneously, we understand that we can get rid of all \\(idX\\) arrows. - -But in reality, we lack an important information. -What is \\(∘\\)? - -Now, we can add informations to our previous representation. -We simply add a relation between 3 arrows that represent the composition. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -fg [label="", fixedsize="false", width=0,height=0,shape=none]; -AC [label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [label="h=g∘f",fontcolor="#b58900",color="#b58900",style=bold] - -A -> AC [label="h",arrowhead=None] -AC -> C - - - -Now we have a complete representation. -We don't have to represent \\(idX\\), we know there are there. -And we also don't have to represent composition implying \\(idX\\) morphisms. -But, even this little graph look complex. -To show just how complex things can be; -we just double the number morphisms between different objects. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -fp[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> fp[label="f'", arrowhead=None] -fp -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -gp[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> gp[label="g'", arrowhead=None] -gp -> C - -fg[label="", fixedsize="false", width=0,height=0,shape=none]; -fpg[label="", fixedsize="false", width=0,height=0,shape=none]; -fgp[label="", fixedsize="false", width=0,height=0,shape=none]; -fpgp[label="", fixedsize="false", width=0,height=0,shape=none]; -AC[label="", fixedsize="false", width=0,height=0,shape=none]; -ApCp[label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [color="#b58900",style=bold,fontcolor="#b58900",label="h=g∘f"] - -fp -> fpgp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> gp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> AC [color="#d33682",style=bold,fontcolor="#d33682",label="h=g'∘f'"] - -fp -> fpg [color="#dc322f",style=dashed,arrowhead=None] -fpg -> g [color="#dc322f",style=dashed,arrowhead=None] -fpg -> ApCp [color="#dc322f",style=bold,fontcolor="#dc322f",label="h'=g∘f'"] - -f -> fgp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> gp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> ApCp [color="#268bd2",style=bold,fontcolor="#268bd2",label="h'=g'∘f"] - -A -> AC [label="h",arrowhead=None] -AC -> C - -A -> ApCp [label="h'",arrowhead=None] -ApCp -> C - - - -In fact we could have made something equivalent and far easier to read. -But the ∘ relation will be more hidden. - - - -A -> B[label="f"] -A -> B[label="f'"] -B -> C[label="g"] -B -> C[label="g'"] -A -> C [label="h\n=g∘f\n=g'∘f'"] -A -> C [label="h'\n=g'∘f\n=g∘f'"] - - diff --git a/multi/blog/Category-Theory-Programming.md b/multi/blog/Category-Theory-Programming.md deleted file mode 100644 index e4d6a8e7f..000000000 --- a/multi/blog/Category-Theory-Programming.md +++ /dev/null @@ -1,229 +0,0 @@ ------ -isHidden: false -menupriority: 1 -kind: article -created_at: 2012-10-01T19:16:43+02:00 -en: title: Category Theory Programming -fr: title: Programmation en Théorie des Catégories -author_name: Yann Esposito -author_uri: yannesposito.com -tags: - - Haskell - - programming - - functional - - category theory ------ - -begindiv(intro) - -en: %tldr How to program using category theory. -fr: %tlal Comment programmer en utilisant la théorie des catégories. - ->

Table of Content
-> -> * This will be replaced by the ToC -> {:toc} -> - -enddiv - -## Introduction - -%TODO{Do everything after the end} - -Now, it is time to talk about Categories. -How this notion could help you and how it is easy to use with Haskell. - -- What are categories? -- How to use them? - -### Programming Paradigms - -When you program, you resolve problems. -There are a lot of different means to resolve a problem. -Many different "school of thought"[^school] exists. - -[^school]: Écoles de pensées - -**Imperative paradigm**: -In programming, most people use the imperative paradigm. -You have an infinite number of cell and you can write things on them. -Of course, it is more complex with modern architecture, but the paradigm is the same. -Hidden somewhere, there is the model of the Turing machine. - -**Functional paradigm**: -Another paradigm, is the functional paradigm. -This time, you don't write on cells, but instead you have a flow of data. -And you transform the flows in another flows... Mostly it looks like pipes. -I am a bit restrictive here. But generally this is how functional programming is perceived. -The main theory behind this paradigm is the Set theory. -You have a set and you go from one set to another set by using a function. - -**Category paradigm**: -I believe there is another paradigm arising from Category theory. -Category theory feels both more general and powerful to help solve problems. - -First, you must realize there are categories everywhere. -With the category theory you can find relationships between quantum physics, -topology, logic (both predicate and first order), programming. -Most of the time, the object your are programming with will form a category. - -This is the promise from the Category Theory. -Another even better paradigm. -A paradigm with gates between many different domains. - -## Get some intuition - -We write down the definition first. -And will discuss about some categories. - -
-\\( \newcommand{\hom}{\mathrm{hom}} \\) -
- - > **Definition**: - > - > A category \\(C\\) consist of: - > - > - A collection of _objects_ \\(ob(C)\\) - > - For every pair of objects \\((A,B)\\) a set \\(\hom(A,B)\\) - > of _morphisms_ \\(f:A→B\\) (Another notation for \\(f\in \hom(A,B)\\)) - > - A composition operator \\(∘\\) - > which associate to each couple \\(g:A→B\\), \\(f:B→C\\) another morphism \\(f∘g:A→C\\). - > - > With the following properties - > - > - for each object \\(x\\) there is an identity morphism - > \\(id_x:x→x\\) - > s.t. for any morphism \\(f:A->B\\), - > \\(id_A∘f = f = f∘id_B\\) - > - for all triplet of morphisms \\(h:A->B\\), \\(g:B->C\\) and \\(f:C->D\\) - > \\( (f∘g)∘h = f∘(g∘h) \\) - -### Representation of Category - -Representing Category is not just a game. -It will be _very_ important. -But in the same time, it will help you to gain intuition about categories. - -A naïve representation (which can work in many cases) is to represent -a specific category as a directed graph. -Here is a first example of the representation of a category: - - - -A -> B [label="f"] -B -> C [label="g"] -A -> C [label="h"] - -A -> A [label="idA"] -B -> B [label="idB"] -C -> C [label="idC"] - - - -From this graph we can conclude without any ambiguity that: - -\\[ob(C)=\\{A,B,C\\}\\] -and -\\[\hom(C)=\\{f,g,h,idA,idB,idC\\}\\] - -Instantaneously, we understand that we can get rid of all \\(idX\\) arrows. - -But in reality, we lack an important information. -What is \\(∘\\)? - -Now, we can add informations to our previous representation. -We simply add a relation between 3 arrows that represent the composition. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -fg [label="", fixedsize="false", width=0,height=0,shape=none]; -AC [label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [label="h=g∘f",fontcolor="#b58900",color="#b58900",style=bold] - -A -> AC [label="h",arrowhead=None] -AC -> C - - - -Now we have a complete representation. -We don't have to represent \\(idX\\), we know there are there. -And we also don't have to represent composition implying \\(idX\\) morphisms. -But, even this little graph look complex. -To show just how complex things can be; -we just double the number morphisms between different objects. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -fp[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> fp[label="f'", arrowhead=None] -fp -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -gp[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> gp[label="g'", arrowhead=None] -gp -> C - -fg[label="", fixedsize="false", width=0,height=0,shape=none]; -fpg[label="", fixedsize="false", width=0,height=0,shape=none]; -fgp[label="", fixedsize="false", width=0,height=0,shape=none]; -fpgp[label="", fixedsize="false", width=0,height=0,shape=none]; -AC[label="", fixedsize="false", width=0,height=0,shape=none]; -ApCp[label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [color="#b58900",style=bold,fontcolor="#b58900",label="h=g∘f"] - -fp -> fpgp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> gp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> AC [color="#d33682",style=bold,fontcolor="#d33682",label="h=g'∘f'"] - -fp -> fpg [color="#dc322f",style=dashed,arrowhead=None] -fpg -> g [color="#dc322f",style=dashed,arrowhead=None] -fpg -> ApCp [color="#dc322f",style=bold,fontcolor="#dc322f",label="h'=g∘f'"] - -f -> fgp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> gp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> ApCp [color="#268bd2",style=bold,fontcolor="#268bd2",label="h'=g'∘f"] - -A -> AC [label="h",arrowhead=None] -AC -> C - -A -> ApCp [label="h'",arrowhead=None] -ApCp -> C - - - -In fact we could have made something equivalent and far easier to read. -But the ∘ relation will be more hidden. - - - -A -> B[label="f"] -A -> B[label="f'"] -B -> C[label="g"] -B -> C[label="g'"] -A -> C [label="h\n=g∘f\n=g'∘f'"] -A -> C [label="h'\n=g'∘f\n=g∘f'"] - - diff --git a/output/Scratch/en/blog/Category-Theory-Programming/code/00_Introduction.lhs b/output/Scratch/en/blog/Category-Theory-Programming/code/00_Introduction.lhs deleted file mode 100644 index 6ba05bc9e..000000000 --- a/output/Scratch/en/blog/Category-Theory-Programming/code/00_Introduction.lhs +++ /dev/null @@ -1,203 +0,0 @@ - ## Introduction - -%TODO{Do everything after the end} - -Now, it is time to talk about Categories. -How this notion could help you and how it is easy to use with Haskell. - -- What are categories? -- How to use them? - - ### Programming Paradigms - -When you program, you resolve problems. -There are a lot of different means to resolve a problem. -Many different "school of thought"[^school] exists. - -[^school]: Écoles de pensées - -**Imperative paradigm**: -In programming, most people use the imperative paradigm. -You have an infinite number of cell and you can write things on them. -Of course, it is more complex with modern architecture, but the paradigm is the same. -Hidden somewhere, there is the model of the Turing machine. - -**Functional paradigm**: -Another paradigm, is the functional paradigm. -This time, you don't write on cells, but instead you have a flow of data. -And you transform the flows in another flows... Mostly it looks like pipes. -I am a bit restrictive here. But generally this is how functional programming is perceived. -The main theory behind this paradigm is the Set theory. -You have a set and you go from one set to another set by using a function. - -**Category paradigm**: -I believe there is another paradigm arising from Category theory. -Category theory feels both more general and powerful to help solve problems. - -First, you must realize there are categories everywhere. -With the category theory you can find relationships between quantum physics, -topology, logic (both predicate and first order), programming. -Most of the time, the object your are programming with will form a category. - -This is the promise from the Category Theory. -Another even better paradigm. -A paradigm with gates between many different domains. - - ## Get some intuition - -We write down the definition first. -And will discuss about some categories. - -
-\\( \newcommand{\hom}{\mathrm{hom}} \\) -
- - > **Definition**: - > - > A category \\(C\\) consist of: - > - > - A collection of _objects_ \\(ob(C)\\) - > - For every pair of objects \\((A,B)\\) a set \\(\hom(A,B)\\) - > of _morphisms_ \\(f:A→B\\) (Another notation for \\(f\in \hom(A,B)\\)) - > - A composition operator \\(∘\\) - > which associate to each couple \\(g:A→B\\), \\(f:B→C\\) another morphism \\(f∘g:A→C\\). - > - > With the following properties - > - > - for each object \\(x\\) there is an identity morphism - > \\(id_x:x→x\\) - > s.t. for any morphism \\(f:A->B\\), - > \\(id_A∘f = f = f∘id_B\\) - > - for all triplet of morphisms \\(h:A->B\\), \\(g:B->C\\) and \\(f:C->D\\) - > \\( (f∘g)∘h = f∘(g∘h) \\) - - ### Representation of Category - -Representing Category is not just a game. -It will be _very_ important. -But in the same time, it will help you to gain intuition about categories. - -A naïve representation (which can work in many cases) is to represent -a specific category as a directed graph. -Here is a first example of the representation of a category: - - - -A -> B [label="f"] -B -> C [label="g"] -A -> C [label="h"] - -A -> A [label="idA"] -B -> B [label="idB"] -C -> C [label="idC"] - - - -From this graph we can conclude without any ambiguity that: - -\\[ob(C)=\\{A,B,C\\}\\] -and -\\[\hom(C)=\\{f,g,h,idA,idB,idC\\}\\] - -Instantaneously, we understand that we can get rid of all \\(idX\\) arrows. - -But in reality, we lack an important information. -What is \\(∘\\)? - -Now, we can add informations to our previous representation. -We simply add a relation between 3 arrows that represent the composition. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - - -fg [label="", fixedsize="false", width=0,height=0,shape=none]; -AC [label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [label="h=g∘f",fontcolor="#b58900",color="#b58900",style=bold] - -A -> AC [label="h",arrowhead=None] -AC -> C - - - - -Now we have a complete representation. -We don't have to represent \\(idX\\), we know there are there. -And we also don't have to represent composition implying \\(idX\\) morphisms. -But, even this little graph look complex. -To show just how complex things can be; -we just double the number morphisms between different objects. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -fp[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> fp[label="f'", arrowhead=None] -fp -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -gp[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> gp[label="g'", arrowhead=None] -gp -> C - -fg[label="", fixedsize="false", width=0,height=0,shape=none]; -fpg[label="", fixedsize="false", width=0,height=0,shape=none]; -fgp[label="", fixedsize="false", width=0,height=0,shape=none]; -fpgp[label="", fixedsize="false", width=0,height=0,shape=none]; -AC[label="", fixedsize="false", width=0,height=0,shape=none]; -ApCp[label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [color="#b58900",style=bold,fontcolor="#b58900",label="h=g∘f"] - -fp -> fpgp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> gp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> AC [color="#d33682",style=bold,fontcolor="#d33682",label="h=g'∘f'"] - -fp -> fpg [color="#dc322f",style=dashed,arrowhead=None] -fpg -> g [color="#dc322f",style=dashed,arrowhead=None] -fpg -> ApCp [color="#dc322f",style=bold,fontcolor="#dc322f",label="h'=g∘f'"] - -f -> fgp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> gp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> ApCp [color="#268bd2",style=bold,fontcolor="#268bd2",label="h'=g'∘f"] - -A -> AC [label="h",arrowhead=None] -AC -> C - -A -> ApCp [label="h'",arrowhead=None] -ApCp -> C - - - - -In fact we could have made something equivalent and far easier to read. -But the ∘ relation will be more hidden. - - - -A -> B[label="f"] -A -> B[label="f'"] -B -> C[label="g"] -B -> C[label="g'"] -A -> C [label="h\n=g∘f\n=g'∘f'"] -A -> C [label="h'\n=g'∘f\n=g∘f'"] - - diff --git a/output/Scratch/en/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png b/output/Scratch/en/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png deleted file mode 100644 index a2fd3531bdf17dce4b44813d48919217996b8e2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9272 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 E0T}jbmH+?% diff --git a/output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png b/output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png deleted file mode 100644 index 05a743ad69d1623190e303e5a3f313911146ede4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11400 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 S5C&lwL&;04NYzQ0h5a89N;J~| diff --git a/output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png b/output/Scratch/en/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png deleted file mode 100644 index 6d06918c1e19980d6023bebd2e9347454a1efb82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12887 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 B=H~za diff --git a/output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png b/output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png deleted file mode 100644 index e8a54997f55b4120565eb15a1bb4a8d3d07e9c8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10186 zcma)iby$l;BW>LV&#sg@Quf0zi?d}@ZtJ4spHu}Lrwa;ZNnt}*T>8&o}xeJME)d7%ig{&%C2tV=&IH~Tx@{JHu1k7S|@2m zc%tkk%F3UA4cRro$33UX-aHn`NKdaJm8G;@jQ1GF$wCaDbaKY2djfxI@}_O$WpE{G z)Z;(LmGb(o?$&dCR@7HiQNh1MmFVc52Rvx_CKWIn%S)18CR?o%A!T4@ z$9Fu$!2C%K_|Fr?%Jhwio=?ucyKk5!|t@+1E9 z$qeN0Sqt}+%*^w)x)u2Cwa?ycQoSvjkSbg3AX3{Px2gH{snbLE)x^DaP(T5?-FNR| z*!rfIh%*?~b-t=uXVry^n9TYEXk1zoAWw<<5=ZObvF2-e*nQT*Oh=afhRvbN5s&W>mzs}y`V8Z`wKl@&=F`U9356?^X;=1t!ad)qw`QI zPe+Xv?#@IBQRXu*5*Q37e>QK6qsmZ`8?FTEA-n_$hMk91b47~(8j8-+GDjA|=OvUu zE^FQFVeRehvy_6b?uE04bAohB50`MhgdvL}#D5Lfa%q{zqqm@7YQj4l*tR+a3^r z<};y6&Z#KBu5PhHg7SG}SQrzwf$9oZwVTZ0Ax<-{?Y?xff?xZBpmr@*lM4$AY3pbBk z9xoC1un*9W!%mMkWPvS8tgwxjj?~r5^8D{B$;-5eh=^`wBA>8O!eEMdP%x`$+&87H zNE;KXfzpay9+WZKQw>i#px``c&esITJB+#B)a7nr(ou`5b9kD;Edo>s;t5x^oh$&1 zRnd?&8SQ}An2?abS8LvkBxa(>!+Z9t{Sa<+Dq}P7$#to~y3OmQcG1M)Qs5(+i?t#= zv0uY9QDRA1Vzz2DaIbUU^+iCQXJaR734=^F#yUDW>3i)W34@7H@Ua$aR!i(woy}_| zrbufcfA)_OgGE}e8}Xlygz^gtT2KlRmC@1B{n6%4bBG^gf?XT((_JR)wI_rzZ+Kh` z^(QdG=^n*uhE<}PjPf!;x`b3Qj!ytb^A7v^_3JF|Io|mlX7N&Q2pb0pUBckEIOwL^ zobN3USVDd*mpvJ6QT1V^zcN?s+W;Uh(eq!EALPOoQ2W&P)S?6h1!Hjfk*_Obm%q0k zvaBJi3`R|DGo0Cj{c)&_o?CoTKaWPKpj1>1k*WY_Ybc$c339=VO)Iz~sv zzi(}YOcz0po~@hOq#;L%?5C%vN36Sp16}owvk_>TC`bK!YKeo$>gr&2CUQGag;Px| zmi>ZJRA}&m<+uD%ZG3$EWYJcIiFIC#^@Sg9=){sBSX>3>(Ep;o=Cj(XMZjIk`hRS1 zuazQ|=u-}nEVu&UC59@(_DZd_L8VBn+gaoTJdzU=6Q^LliLr?U?KsMG+u44j zfXvi^fq~a-=xhSEUC3zQ%a zktOQ@GP*ySFDIftxTOtJySGa43#E=_bv*s?rLbpwiw}z?sP%~NiVI9Z7?$TxInD|nI(D%^ z&~InI&fpqR);JLRLq7h^Gp`<44b2F|(0-3X{K+UD0_R2;JQi3WjgCK&eFz9K^lVOn zJ_{#!J#e*+o}PX$5;4S3zJ}zZ8))-oy)x*7$vL0!JeKagtqD z+E1Ujb}BVGMs#*|hJwA+kdPyCl;O-A)DDosmmH7+$J0_84DKemc(1o3=idGIC!aFfZm|qd4;h{b^YsI#WVQMHn$!k%gffbUxKX!uPY2h{ zWQNGu$>~80PqIDy$B!TEG^B4vU8*4>*;kxAph)WBlsx3#q~o0*y2;%Vv4 z6n@z{z5*7nwC-|Kz6jDRfRr=NoBIh=AB7TjgKt+;)W6^7GJ&B1H~jlgh-AY4!2XN; zlS^FA_`%?@lb^AJ-u0%{59awPfVBwnu#_ep!S~}%8)|fALNzu0H=2c!1(SB#^#^_i z0<)i|5we|MLgEBFIXS5d2;d|1_wV1xu=?!xU)q{A_+HO%JQ)evjN=oJpeP-O3-nMT6CD)m zw4JjhvX8;RcbEwO7|cKD%`JY1{K((8)$IOk*f{L2O0*AUOy502xp4%+<#-Wf?4;Ag zb+!1fS;P(sFi7$M(w#fOatsMw93JXrc-eAqILXKjO~2p&0J{zhT84CEzBU7a?9XQ+ zPV$vTZw^dD?1=u18IU@i6X1C4VLY*vNWlA0C!N_Sd$i~110a9V`)KiAf6IA17yBeU z8iMnquaWooJVVhw#Ipd2U`R2Jh4Njj2_pM=eSj~J-3M12?KsPSN*Pw z!tU`&@0y$^`<3lC>khw69|e#9!asw23A&~62^IUIj_$0 z>0~(ELFrGO4nYhvuZ3ifWO3IJFO%)nZNuv(Z3-*?o5P?kwR^j+Eh__#<@pR>Hv9vB zeaLLxh-N*@;c}rjBudHo9z=DK5gT0B*@-RuXLAo=cB}3(zpJf}H&!{kO{Kp|yV(yS zZm`bqpOoenPCTo7l}pVOXK^eP@&=Zc`LSvxbqRxc9uVyJ&He->Qpxp)gEUa0x0#u9 zW1e{qVXFn(`NsPC`Yb+LWv^450w-Ytm0)!dO(*VQ?UJQN4;xKSh-21a;VJ_r5nDtdEDAeaKL4h(q{PA z3E5qw{tlk!D}3A0f-aPb+cTHw_Ic}6*v^(^(DPE}rnA2Wv8Cm0*#b@%vIkrr67+Y8 zMb>9W?7iMAZCOT)S;Q-cXLH}ox?Z1_poUNvra}+z0U>QT`&_Qwk^YSUU7Wbfs!=q_ zpGOP4y)U9hifpwUfGB;7!-31;H17n1iBPBHKAT%^*9@_yWCU470M4J73| zxL3TC5j?Se+(3N+frY5S8rje?_0`ob8slQw89!j2^(Z?1uVGoFaBTrHw3TKIGohm} z8G}#-p_SH(ABE}%rw2FI|63?l?YdA0>Oj>hop?V=vLsnCB%^Ps_x(NAg_N6UCtmrK zB1b{1M5Drjf=g6BT0hr2MYHpwJa)3v0{q>RD~H$JQEQ{u1QzBZ;&>f*R8>nRaKK&< zMa`i%M2}#5V|5GQ-*5NY*M0}O}wL}kDlv&j_Zl# zAW3TYGX4;V)9DxR$SD9~EZ?Jv8=*=`3s>L0iyK@8l#mBNE<66_InvM|{`Bcn$oID@ zOiH2hKtQ!~a5x#2I}#22ZFhOPht3ctI^TOv0#0hHWu;D8tJ?j5g4LVu7Zllw6WO1+ z@BHBY+hHuG_2!V@my{kw9;LdAQ5zS_!E1C`Xb`U5qugx#4th&P{RDQ$n{As1G*ec` z8u)vNFZ-b@3!|kEHKTQ~7-DPxGH0*d=U_3N^9B?1%xj28TanN-Lfrx=c49!f$XzOG zW=kup8y8?7@l1TVb33Z-6Uvu4B2?3vzYJKa!p1$b%l`QkjcE;1FzhLHCGMxdf=sFu z;YaKqeSjY>m(E#t28d0SX>WC`T|daQdhJ+}ECb*;pbF-*zP+5wy|BCxQZ9WDEJ}Fg z*H=%V(V3Z$D>EYA8zWadfM36;+we(X(Ymx6gN#V-k;!TyJSJufu zdWu$|l=&WJ9dvbe@b29^kMAi@ewT1wzbZ`rHZsC3EqxxAJn@z%R+2VJ4IMk!_b8B` zPCy41l><_cd$W})%Ju_4{CRV)2?1O9DQSYyFVZAFVq3~DQ@TpuGK4K!vA>7opx~?E zeE@#@j-wm#Q`DZ#<>N0u0K@kuKMao<(iidCXtZjt`$Wx!Gw)(v+ov{My1g2Z%rvnI ze51$z9S))A#nj=UEz>zgx@|sjvvlJJ69`+}h0F$RW>@@QyqN~{3udmK~6la)+_sdgh^01@iKB;t-J=0C+W@$`aE$HO7 z=<{&vCaWlr4-O$Nnfc$=Z+FK9_Yf}Fi(?`4rr4_5_ISbC)`(YQ$ z<0^N4Amk3`Ydj8ZOe0<`i=jF$ejNWrNugT87(~>D$HtT_V0A>H90~oQj0yebmv0^G zO7Y7@bM-Y|W}!siJ(h2;)VoJz!Y_RP^ZolI-DV+pd^k&CEfJKZB)A<7hdbaDV*j-e z={rhTQ8;#sbK&E2Jj)J09%<=JO_8p5#l;~R)@-7hR7pXcN@8EaZcw`niUojqj|m71 zcL8uU!_VrEhcZ)ZjHl!$-vMMJujijtt5>7&DeJthx>iT`vAW7iW?n@-PgLWBc|#5!q%`q zrPsRliOOsBH{64QbOvvEma5dVl6=2f5pgXook)m_Th&x9yp9gQQf@%roao7O%|@r; zU68y`zz|}5ZP+~&LRm+CO5$YU|LHHJ>R~YLb2z$jM|19a9oJ=Xg509jSV;){Ugql% zk~3i@c4w-_{>ayLY(Y5oFBN<+=MGOne-2mVDyYtL@!21-`YCzf-*7%^6aXNDk%h(8 zz4c7gUDS2Kwzg*aPA;CLGiglBHSHb=#o-w~$N753MB3sq)I)mR&_>vUlV$(uG>V9{lUaVuf*zP^uvotFg zj8iMojU9Z&Rr2}T_d;pg9j|`Lts`klM^5-HXs_$fq~@|mAH|m!^=jVXmdg8#(WsK8i;DUi1TASZE*`h8kXzax^MKpNw4jgV_#mP1I%z3 zpAe_V4Z$cVB($HQ#am}E6ZgnreH9?#95pi^xGr*)I!M#YLQA@0Zm5>u73lH#>=je%% z%$;w+pJ=VyN~Y(S=8V{DmjVAy0JtbxE*0qEQ{J@Ov|Vp!^Dtskc{79FslR54v>WEw zTU{z0#^kAO9iC`(lcGXa3VcD4&(`8A@p=kjVIlD|e5_M4T7e?3v9Rth-Oada7cEBj z?3AyR>PBy-D@gu`#YQ0X4r#wGWzsjLY3DP+J)hLeT#hPaKgtowf>U5PqXEFhh3FET z+C4?Qyzl>E6dbdSgq0;n2^8^j{!qdJ7I39+12YCYEl092q;$Ye&jF{NCWyq}fS^24jsNjR%KGqh|m#cP%HACNTjQ2-oDF*REm)E<4!tY>WvK|LNtPDI< zX5$ODF4sGv<6;d6Nk$*whvu}0q}X>g=r9rx5X8JL@K@9$CpVno#&pJF=RNb^&jjnNaC8RX zElQ+tT)7NcKSQbEbYEHZ)2y3^q5~(LV4HHJqA>UzfT@fbLT10;xC0PhV6uMTrE~_D zpZ|j!Bm#F`+R*Ud zctvTC80l-NT3;N}St#Lyz-y*$F!8cg0x_yu^UB(xyKNtKF)!~utF{qFAQvn z$oJ*SEWp6PsF@2{6j_K}U^5P3_p`IJMKUrn{91M3fH>zS>pIv2ylxLc=$!8zyjpE; z8pf?2iH`RGRu~)36j93ZcPx98FB9h<&N+5NA+4S|3~giE7_Jm4EcGye@f~K%Wyi=T zU!k9& zkvkmg$?H(}Q|Q>jTDTefS(C`?eC}+hwn~56LOUs zyp5M@bUK@plhY$?-Q9UcR_HQ0DaaG$Z|^PZardjtgW2hvTe_S#W^lo0Hh6romTKfBVNwZwMV~k-{MQ44(^_u$9o!X zM)Tq@cgbvGzz=air6Yg*rB+HxYP*a#`^hF_Wf#tfI&WGdVC4P&j(cWly8}k?)WVlH|kURe|TzG;otKgv*%`f<*b~ zK<@t18h4I4w}BSYgQABYLqMHP9S8mSE+Zp!F;&c;JA*3>i^a;rx(MLgv*%%~w)OLA z_&p{)8nh=zrQX89QyN~Ry+bG}mY((slgQhSPn16_=~w$U6sT9nR!7?rsq#OyH`v~k zQ#kmr|976;;qf7Bsvq)}VzO}zlODoLeYiN^iC55_m-siKSU90cw<;Aa+NI^z5Ui+PWWNk_OZW0 zeu6cTjX7#7nRd4+)s`*hE|?sLu7qVFN(YBvH?En7g05?9@$ZDo$8=aagtKT*y*Gv%+orexIA6 zpn$;HGVV%KY8P*;k6C$#(m(RIl^#Ab1V(#?S{fTO_~?dxD(>zu!|8D6a#)NtYnkF> zD{k2upF5!)px&IYxJwkn7S0Cq!mLf4tA{L`OciD{efaF!$Zug}a2qXL@R1<-+vdj) z?E;;)H#ll1n_OS48mI?^hE$O;G`$88x0dO(PP8JN=~a&m$Bb310NOUlpdy{yf-S~;%oaV$;^j!X$9kI^9{#6omY|fwi#<<`R!6f;L>fRHC3n1AK|6Msz zfZa%p)xy;=nqgG^LesaJggOdxp*=YmoYyeg9D5Q>=OY9ta+s2m;>jz@0I#d6MY5pX zjsB>&bms3pV4rhY%FDH%E;xIU3UJaat;SFt)Y|4nX@I<2-19ZH^_I3^Jb25f??sT7 zl)0JX$j#vJFzXIvR2n1wMUMHFVi0$|2RPtZ`FOI}>iPN0t8UXEbt-^`^~XrxyOI^1 zJL#kaGVfD7gdqF0zx3Xl9*Kj;*o{_)W7_H(CNXRNX698Yv}e50sU7yvx9hltsjv>Y z22@&O3k}nM(vbKpWFQcc_rG3%QIcXsv1JfBVF5(`UBwre>%W^(;2RjW+u zZVHfANo(s{&)0hcfh%ha3*5OL~cC!3)zCkjGG~ncC&Pd7xN{HJA zRMa6*e3)e&^45#3oIL9R__zci>!kX`{o~YXsdhw#E_s!4O*`QQ5~;We86^N1n1do) zP1}2zC4*Tx>Q>?l7}rFWvGjlVcW%ZD7E$7!?LMw`s<9K0B29`v)UI+nFj*FHQU_!t zxUj`1my?1znDOkP1A($u!qym4{DCvPS+328t}0c$ z#A7EOdAxH+oxmB{$M>c75^V6G=;(e=^hQfLTO3bJ(?+`+ceWM>J!OnP4+zH21x6bg z8=ujp5Qib%^k>dh?RYSzyIb*k{7t>QZ?$dBg_Y%Ru_yB9%idbK4{J2WlKWruxcq!8 z+wLC*Z@A*#T*Fwv3Rs|z$~^xaSpY1>6Ho}Oxe&>59}HYMZ_*$2=<(C(%#eqWR%_*B zIe|I$lz@l)n%7;zuYl1&VKDlh+v}rWGgT(eY@_>yGpHXy%jap+-^W+ zIT}sD3Yu^C6;ud1a~bN(q2!mAmM#HGLIvRH;WYrCIDpQW@-2vhQFD3hAH5k4@MPm> zwAICu@^{H#c4~dBFj&#e!-5B#z_Pj>xXMdyw$=l`)xPrHtgHB#KdpV~SdX8g#oKni z8q@}Kr{D|@9p6$4D`zQCFo|+W@bQ&bZ9!IyqyWwQeA&vYVtr2K>sa6316!(=Rw4bg z^D#l2?nDN+^_t+6M^IpgLQTsF=c|#0Wr}WuiuyC@r8<9*?HVv8LPZ_kG)@uA_CL0i zHbJpKk+iG?wD2S{Xj19QALG~VP1ac}*_;DiF6g&+Rb;E2)PPsU79=0aou|&-9(QOp&V zz#R)XK4x3#HXCSE7?Zkkbcz5fE}8WJ#l1eV8+)%A5V)cLM4mpy9FyCYFz8pL15>aO z3_}{n4R-V5wp2Qms1Sl1_Iz{95J(O^g7;exX5?bqXUlxY@f-tKhaAGNM^d~PX~`o0 z&;ll5$hYT$U5l)}U?=P-=a{1C$$6c5N!uE`f7yAn25ulw2Q5KM3Fk@nf#qeG7XbSr zwyJ;2*BL_vj^T(UqvlD^yr*L)0^v0U+pa+TP6tZVbiW8`UQ^*zt}@-iQGhHT0@`x? zS6V!`)JA2t^CH_KE=rJ!Jm9<7G{y_QmXYb6AP6E7X}?}5ghP2EFS3l00Z)=(DJ_B~ zgikL9Ap2tWD_Wn*QpZ9KXJoPdQ>T6?2lg&D^ulJK)wS1PyHP{+dHohds`74DJ~-8A z#o^+b~TP4(h1B)X##MQyHK!xdP+*Y0z<+K`$daOqT^nUf^sKd zf1S5CSI@k^Np-BO)#So;+?^s~`(H@hk%a&)Sywd+EV)4iPXYsF(s;EuzY5kZOa0NS zLn2A3p95_5H(zyNkZ{EU&6gjU)}yC$*1AA^@?Y_tbF=O^>b`1Sk0ATknRK!}<}h8M z-!agbBsS2b{q5lw$&kxGU7@aTZ zXgw1fko@|en-09Il79d85&+H_1vAvTt`0lGIo6nLWsxDgvDp%?F|Plo(e3}Vypdhq ZCTHpE!bwm0faW}qhN=#<_OVUG{{vHH?EnA( diff --git a/output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png b/output/Scratch/en/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png deleted file mode 100644 index 78a5a27f541aa5f06c7e5bb3387737e3d4646d33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46898 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

Sop%32r01N&6&u&k+g5IaihB1s{WG*oEdZ507 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 -\\( \newcommand{\hom}{\mathrm{hom}} \\) - - - > **Definition**: - > - > A category \\(C\\) consist of: - > - > - A collection of _objects_ \\(ob(C)\\) - > - For every pair of objects \\((A,B)\\) a set \\(\hom(A,B)\\) - > of _morphisms_ \\(f:A→B\\) (Another notation for \\(f\in \hom(A,B)\\)) - > - A composition operator \\(∘\\) - > which associate to each couple \\(g:A→B\\), \\(f:B→C\\) another morphism \\(f∘g:A→C\\). - > - > With the following properties - > - > - for each object \\(x\\) there is an identity morphism - > \\(id_x:x→x\\) - > s.t. for any morphism \\(f:A->B\\), - > \\(id_A∘f = f = f∘id_B\\) - > - for all triplet of morphisms \\(h:A->B\\), \\(g:B->C\\) and \\(f:C->D\\) - > \\( (f∘g)∘h = f∘(g∘h) \\) - - ### Representation of Category - -Representing Category is not just a game. -It will be _very_ important. -But in the same time, it will help you to gain intuition about categories. - -A naïve representation (which can work in many cases) is to represent -a specific category as a directed graph. -Here is a first example of the representation of a category: - - - -A -> B [label="f"] -B -> C [label="g"] -A -> C [label="h"] - -A -> A [label="idA"] -B -> B [label="idB"] -C -> C [label="idC"] - - - -From this graph we can conclude without any ambiguity that: - -\\[ob(C)=\\{A,B,C\\}\\] -and -\\[\hom(C)=\\{f,g,h,idA,idB,idC\\}\\] - -Instantaneously, we understand that we can get rid of all \\(idX\\) arrows. - -But in reality, we lack an important information. -What is \\(∘\\)? - -Now, we can add informations to our previous representation. -We simply add a relation between 3 arrows that represent the composition. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - - -fg [label="", fixedsize="false", width=0,height=0,shape=none]; -AC [label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [label="h=g∘f",fontcolor="#b58900",color="#b58900",style=bold] - -A -> AC [label="h",arrowhead=None] -AC -> C - - - - -Now we have a complete representation. -We don't have to represent \\(idX\\), we know there are there. -And we also don't have to represent composition implying \\(idX\\) morphisms. -But, even this little graph look complex. -To show just how complex things can be; -we just double the number morphisms between different objects. - - - -f[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> f[label="f", arrowhead=None] -f -> B - -fp[label="", fixedsize="false", width=0,height=0,shape=none]; -A -> fp[label="f'", arrowhead=None] -fp -> B - -g[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> g[label="g", arrowhead=None] -g -> C - -gp[label="", fixedsize="false", width=0,height=0,shape=none]; -B -> gp[label="g'", arrowhead=None] -gp -> C - -fg[label="", fixedsize="false", width=0,height=0,shape=none]; -fpg[label="", fixedsize="false", width=0,height=0,shape=none]; -fgp[label="", fixedsize="false", width=0,height=0,shape=none]; -fpgp[label="", fixedsize="false", width=0,height=0,shape=none]; -AC[label="", fixedsize="false", width=0,height=0,shape=none]; -ApCp[label="", fixedsize="false", width=0,height=0,shape=none]; - -f -> fg [color="#b58900",style=dashed,arrowhead=None] -fg -> g [color="#b58900",style=dashed,arrowhead=None] -fg -> AC [color="#b58900",style=bold,fontcolor="#b58900",label="h=g∘f"] - -fp -> fpgp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> gp [color="#d33682",style=dashed,arrowhead=None] -fpgp -> AC [color="#d33682",style=bold,fontcolor="#d33682",label="h=g'∘f'"] - -fp -> fpg [color="#dc322f",style=dashed,arrowhead=None] -fpg -> g [color="#dc322f",style=dashed,arrowhead=None] -fpg -> ApCp [color="#dc322f",style=bold,fontcolor="#dc322f",label="h'=g∘f'"] - -f -> fgp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> gp [color="#268bd2",style=dashed,arrowhead=None] -fgp -> ApCp [color="#268bd2",style=bold,fontcolor="#268bd2",label="h'=g'∘f"] - -A -> AC [label="h",arrowhead=None] -AC -> C - -A -> ApCp [label="h'",arrowhead=None] -ApCp -> C - - - - -In fact we could have made something equivalent and far easier to read. -But the ∘ relation will be more hidden. - - - -A -> B[label="f"] -A -> B[label="f'"] -B -> C[label="g"] -B -> C[label="g'"] -A -> C [label="h\n=g∘f\n=g'∘f'"] -A -> C [label="h'\n=g'∘f\n=g∘f'"] - - diff --git a/output/Scratch/fr/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png b/output/Scratch/fr/blog/Category-Theory-Programming/graph/First_Na__ve_Category_Representation.png deleted file mode 100644 index a2fd3531bdf17dce4b44813d48919217996b8e2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9272 zcmV-8B*)u{P)uTD!ML;x~Qwdy6Va*Dr-bxd8mM_ zihzoO3?Mn91c5go5*0+^kbS>@b8pkr)7{gzyJ!0LOr7sLw{q2~Q*|m=-L&6+`^_?7 zIAA!C91avqPO>Id!vVtqaliVV-u5;nL3tWH8&u=E4m=E|fmOhz;86T$qZ;r42hz+@G!K+Q00{`u zwHQZ$RVkZe0Zuuz_^W}%Pv9B&TNCJrTPEgg?5}j}u`7>$7WfPHog90kCYJ+d2%22} zhe~}imdzpwpB<Xs0~R}%XcpyKfZ{`O<|6zqsFHuO6fO;R~vhM-Ahf9}K)lmpnV z&+U@SrUN$9bJ?B{zH-=ShH$Hk-BIx85N^gQ2^=szU=o-fE=hW(TA=1}Apy5?;2E~# zC8*OvcUooQ(c1)bqehFc>75GYNlO4*1mqOgr!u@JaArpaG9?zzCoR3IZ896*AHhnt|wF zM&AM{`1iP=no(N$j zR0AI2fDu5C6a<2y(a0^}h#->Gt4(w4@K+7}xnQPa7oc`PKLdgD&Hn=IrOg1f0e?^i z1K!|(5kPO0gQ(EFPVgl{b`x0jgwc{3*rRpAycHo^i=T&VKbjXxfHnWibnF}zH_Zbt z1IH3hCu0nFgabwZJyH;m(HZ;-0nzD~i%@^DN&6D@H|Y_ivM2+=`L@6XZm74yz5!4VO6atL*&iGZwg5i|p9QCaUw}V? ze*@LSH3sERoB4v8U`0@;VqPUqZNeMy5C@C^dZ{qd(zF7)8$r>ci60O`oouOr{SUIl zETJlaSqm-(QkVlq08_Z|4C$%Q0W$|o{W3H;NMQ~b0Zie-Go+_J2aEuwei@n^q%a4J z0H$!^8PZdq1LiDf3YB5IcI{5d&d%<`D(DrgfYwIc5Bc+o7cc(y+_`fXrBGH3sWu19 zDrkySg%&MZ=y{1z2%fGNjYs&_p|65^C92+lc_kwwaI)424>+9FA*Ri#pDUc;YqRj!*1A4qFv~AnA z_Q8V(S3>5*g$oznhUz<(7EJbq7hc#6yHAT1EB2@P^XI=6>~757nxKDe1$`+{&xnMCm;{jc zbWk`f;QlbE<52U%dOGPa2<;;$jYem4U<>?ny^qH{a5_ThFfp4aEX?hAhZ`YOcpP_K zCXS21w?K_F?gO7ke?O=>{3l=)FeLaTHKc0@OCr4%>k+6`Dd><70Ac@6+#BF8;>~RQ zDDxs%KN&F)zyWx;9%IV@tEjZ}nltdI|3(}~7+>N2n0-+NEP|dAQJ0D1&#+E)`1kO9 zg~LYd+n`?x9>ac@V;`)#eiMd>wYgiI-wJtTQ)N>O9))b=B84TKZ}l{au<9y%a)oJhr1%P}8~ll@E)#wfylD#R znaIt-e8PPLcAwz(K(L!*cHILKnKp;jI)?=k*6Un4jh`9L6Mj13rmHsfz>IMI3Y$GW zR3)%V@7}$wI(5R2Fn90XZSC5%%SumAcU?xGefF8f8#30VmtGn%?BKzJj~qB~K>rUc zk`PZ_rvCmBrrivl6H54OhE7M#wDlpChy@fJf<$X!cZdW-cB!~)NU8IS>do{Q*EOiQ z0Dr}>6!E=538H?(T%@3N>(WEfThchG5hr4qq zKCHK>1d!0pz)=u?0jmDuIvaH0c{HDs*fQHf3jo4Q+Z?R)!$RG+0}?=i=8Xmn2lAT( zan)sHpfm(3jyZ`SG^#lu!u6#RBXJ3i{$Kv9ZC3AhJ*Zci9cYh6^S`x@g`*Na9erC+ z|1?1H!I`!y0o-Kkjbb>EFC0ifT~3FvQsBBs1X90m!To*G(=;nAL?wUYQiaE4=n+5yZ2L&5!6c88|@jwA7QMSlfo=7A1VjGC_;h_fzlfH-Xpg&jQ-e`Vae zQP1B)jR;{Q2@y&{BKVR7ZUWU~3ALvcxY^qoyG-00fH$D`0eba(O9O?^c5)`EW(aCC z#3=dBftc$u_4g3eEe4xJpz;CSo{He^cXA_u60ENvK+=B^ss!gN(BH)(WVd5J8=Mbb z2Yw5x_tYYe7H2}W2u^RPxupTafr8*b%yro&?k}jnr(WmUN5bw7+*TnUA-CXyGv`JC zrxJJ{2|SAWmLejNER==V-3InWuesqnpyq+Ka9@r6L+Iy%XMh@l`T@5d8023)sLsym zNRI)-f&At`Om*2Iih4Z@{jK0Q>g>H>OYnN|W$aeqKGyM@mm2jPkVq$zfCOnb`Xf%n z=x@e89kZ^z97O#HbA9w1(Mw3RS0c;>xQ)S5Xuxowz&Jp?i>WRL5=b2XrJhg5?tD;N zbF;7;7w9J%ebfS|$VgyEs7SHj5NMCtCwzf+MxPiCOqnvp;()dF>#x6B6)IG)YSgIV zil|=12lRSgiVS_rmoK-t=a;Le z>)g4s7Q8GS#x{@|954cy8s(IO$|XydSm&RAzE9W!9d_*4p?^wP)v8qsv^IJVbHE6o zhYKeZX}o%7sRxt*2E)jaBdsb`s#raGXmQyirJ9kkkFvROLu3o*`;uq9bvt~MucmnqA+vl4PW@TkrZ@>Mv=>Z+a#G&%WYDent zE!1PRbd}L-m461W3=Eq;f4;Wg5&{VmK;E9b5{gEFy2(8rg0*R{GoM$|YTreMUdhPF zc+lnFUK5hZ!W7Bk#fz=-<;zE&p-dXRk^ZGK^cgZ1L{O* z;QmASt3mB?>yfKn)aCk^dosj-kh=afuLwMg*?$NHeN2!L0feBgr2Z*5mc@a4SSI%! z*0w3?&+n3ZLHO(I*RR)cv!1rSrxlo99j1rec1b4Tixw^Nt#Dpd=bd*f8al_xs4h6b@7$^|f}2j+*8nd^$aK=n54hjAckf;uEcrVfN*!LCyVvg+ zqbBY-VB5BBYg18m>U%T<-x4HzKC;YXJe z{)7D~y=03Qc02R#ECeoDX^ zHENWLrt#y)`yOIqn3T)SSVZQ)(@#HLjC!oP`2js&W@O(dTsejGB-Q00Lskt*V}`f{ zklySLh}hh)VZ*2npVABN#{auyR=uScp&>+72Nyx3-g7+WB_gRDzSYkY?ZipSKKke* zOGD2A0|r>>>FFmOj4mn;Oqej?Qp&n9E1ds`Dgd4sj_N7Rp|fAF9;?mS!VK4mb6=e8^I%(i+e=?b+UzR9E%3bx4^=4f<89! z3ugg$$(f8edUaJ`za&kM9d&u!2_b)3J#4L!^iN3g;_ki|va zFVrHWYlv9@HT)#CbXtuGZc?QcU&7>d3(VK>&JzMi0hET8zk*uL-2*-W&IV&*D&fKc z1*WuILD#NbE#bg{8YLwb)X*e0#_+L`);YL71C9i5#asb(BX!|r)MSCS&ALF#iB`=8 z6*P*Q*a1)-c6I?=gg)UlW&x!4YXi{-8#HL31q)X|xS3?SwW~n+=owmc%lU86bs?&* zm8g=$3=Bz%vnk$-_!<(IR*CD;P}M`NMWkBXvG(kdoF^YxS=GMQ`Or6*zbh@wFN)xW z8f?8SbQyeDiFp$G-C$oZX~0PAY!a`*VG-RCbPeQV8u_`(bwE2n%yU2lu$dUi@bhpC ziR;HL=fw~%zk^&r0*m8K1mV*Q0B^#dhf&qicSheBy-)ZQzc$W20$)N~BLr~)f|$wZ zq#JaloaUjE5TZT!>(;}$^XYFml#6XMdgOpZKa{}1du1N3}Lp|?3b zKxc?L08T&%S0IeH$6Bd^Ge@2^IlTrPAK=y=y`~}&Ul$ATpD$X{Ka+^RhX?*k=57*# zf186SmKCT07H5id*V!ZFR~C*UCuE-aY=+GotiVm z0>1G!MCTZy#S&2h!)TZ^EZX>3J=1Tg9>M=js9R9=BaUHIT0c*iS4_M3;)`o=O6Zqp z^C_fWJKm@euIucoMJbO2vL{*gys6 zp#9(daVDpQ$WpPy5sv`6PLE+sNj5K=GxXd=%c}4(5$!tRJOWTLPQ!~9V7|%2t3@Te zn2Pf#sHNvsguMgxgK(4hR2IHqUeGH}!ETC%qLg7D^zTxpJK({;cpU0I4h$R$4&#{N zmw&Gh|I$x)+&rMB#Xg~+QJ#>_$ZRx864%KNmW zSzu3@3mTwb|Mu2Us4X}JdUl1Q0UEo)@EL5sXkJ&HaNQBQCiHkC!wFxwxKiC-hn30m zU%B?A{mp^!?be@u`e{8p%C%qvpY)gC)15rajQ&b6>d}T1HlNgE(B!Hfiw^37>djnm z75F>q#ottyvG+|ou!{=f=>hjbxT~Z0_+Ju4RXGZ;A@)Jm1!f#YN@|VOlI3EYy`kO% zw@1M9p!0L^5_*Cen2S8vd%$C0#2B57VrY6N2kjS92`AFXzGUAjxE1$7@GYIP)=*V^ z*52dSs7VLt+KceGs>dRlL-FglzH|_689NhY$WuD;Rj|!bDKQHm32EZ032fBBQny;k z?GRcsAds&5e-L0UNbTb!mJWUd4U3$F*-9w0fB*j5v3rPo*2jJsxti#&?}%J zWEHo>=x!i+RS$Rx=8g;u>UhORze+4Wg1M6mlfzQ9z7M)H&5!{Ukiar2hCf;&f8+4&MwQ3 z2>TK9<$634)r&Vu(=ji=O@gRi&`Y4Lw7RhnL>J7E@kI^s2;deH ztP^!gwnr-TbOiTC+n7yPp7f1rTC&r~%U_`BZWwwT^)(I)yiBVe*QUIk#~g~5_ZhC8 z!*I>jP$fqs2{Mr9->O%yzC1zE<%)*9{)pv3-M7<~ANc%2*|KGynK^T2*tvGDNb=c& z^4>%etzt=rx;&F|e98`6g1G+aHXfY>cN@m%A7-knZAq)979eUM+?jaR-(!xGfoHYX z6m{SPd(^yzMIm)XJ*kYU6fYroZya-2N;r`Pn3E!?d0#vuz%#}aiMxdf0(DXEU8MNn9+a2<;}HQOWMe5+2; zgvHMxgrZ4a&jh%k0mfZ`|3|^=z$_Yq7w8H86KNUUP5j1hcn;_dA)YbOFux&u9}nNh z=NI1*_?MuhZ+L1>xIjw@>Y1iPuEDO$1kW?PR$DKp;mNUpmumQsUaVn7^q!IaY?7XLYj7*;(*_Y+m?H(PLhTxVvPZ}(>VLYw+?sK_JeLFR=I>E4An8#HOs zq{Q{tUmrHGE;aw~!w(kM>Po0ix&`)mt*u+PTD(#hu`V+VFAhDmgX0ewsBz=QR+lba zg8e4U9Btgn7y=kqx|)AXnlwqj#n$F|3nH5ac46rIWn2-Pz;SUvPdX66O94= zD9sb~o9lZ~OQXKU;?0YCx5GVKOo(K1fKkeKq~D7Lo5z@=-H#v+qEXdr)WfiUg~oJa zGU-cX+9@x96iR)B?ID<=Cla&4mzhHhElh`?6ItM?6qmhV^C*J&48zhp=@lQKeE&=j zIgZA4FpaDK^b+;paoqk7;ni?9Wguk*(76r-)5Bf|N|{nHghu25f~fnW{skKZ@geqa z7b1u{i82^BO)s8CpN1e-riXkZVuT)YOgRB`dmYF_yf&o7$$=0HHX8X%1UGj+_agz#VJJr5}(fV6g9Y2mbo*N$Fq4%nUH#sti{*LFS6c0*vi90*vjX~P`xYwAPb zCf*A))OvNz^N8I;$l!(NHbA*vuOuBDK+ZYnw%&X1Jxiw&VgZEjaU*=OaIWx&VXilTTn^CX z=?xn;=*OBhIm=vAD)#-WR;_w&yj)-eW{nv$#?tTM^dF9zHEUX`*SFnvo3&-j7K?Mr zR^PsP9ytw3M!pN+8*jW}@vNPtv!k&JU`Wc1rQtvT2kajN>4t^>mIaG3*K*x0E&r_NB@Y*Lv=`=d8@kOrLuIDXz4EUAC)$(Rfyip##+d&ih3Z#P~5B z@C*l5u3TyL>eb74mQ+2QBYYxI)2XISn_3(YutNPXHQG$%s{nrd@yEUlh#2*N1`G#M zg#((`smEhA)#}lsM@X_Ic=}mtJpcK~HvweN#^MBnb;>EH_=s0aVIY1E&Qa!FV9y0;pT^dU8+uehx?o z%@EY#MncpM#FCkim`o(OI3NKOoO^Cu3#hr`4P}w=Z3uPU+Ncb?$<9#8EW(81ehhZZ z`>GP`JTMcz-euJvcvr;`l?f7t0~b_R_c|$3zpJ*HsDuC}YnvK| zhC99W;fEjk78&DAD#y{Cc;m9P?GS3*tYum=2aKD&P6Qp$XzDNqf%`A&D6k3G2rP2I zGZu|`K^)p7AbLrbczq=4aHC61ka&z{{{PFwxL z$rn8r|0}p2Tm&;(X+O^`=tV&7|BW1}fkjTx8ppfuzU$xL>sj6t@6w+O)~)*RP*7 zeE4wd^UpuGwr}6=r$VP+1`QfyEnT|QcM|5Qr=GGlZ{F;8k5&Vd-zKh|Fjdc;-=&{o zMjN&;`3so;eH@Uli_ot{AdB2d2m1l#z|+>M&zcvfgL?b5JUl~j588xRFQ;Q@oI|#j zEn8-d9zEL9&{OrjeEG!Oc8a@Ksav!hRmT>Kc9Fa*H4E+`i*4CVeCIJ9@oJ9 z3e*>2OnHQHHRj2GrMZNYNAqH_iX_bDK2*nYkLh_6Ca#aKNJ?e_;|YI>L*x z2${OMQZ@rL50)VQ6Z^B)5xq{uG=~S{9rwbb(%6=xT=ipA37qc#T}a-FqiVlE&rEi+^QylSZ9+(H zrq`OI5tD5nv!V`0m|u`80_e}bEm(RhQuuKD_U&uX8tTRCODT|BQJ=`l$~pk^XX2ho z4>=tn<_``8EKBH zOSfyW)9v?{xPOiY|O`bE*cUDUY z-jDD-i}?UO2Y=tJj@Ij*wuseiC=tW4Q z0c-?~Ex?wbhRn?nK5d)q0_T8l!1Gz$TwgGG^5p%Pixd=k0Sqq9fF9B}Ut)hzf5mOB z))>K*P+mtxsfby<t}_ozkwMY|#=fE0QT;NGIH?0;^frHaIU=9!#?Xn~zt>{e8oKB%Sm z%jBUe?Svpx+*I&?OKHmT{T4N*@=Evw9;*8-2`(W|l3XyH2+NxrlH-GI?R ztQ;@`7%S(PzXZ%DHPrHf{X@`nDzyYsJ%_eMGN`y3(l!K3>wMzGi4%`9oYk`Wk5q7N zA#6gw1^rf50d?ACJL(PuBpXue&8JQ$PQ#ExyzOdkE|F zdXs{vPovkVjQ~mzwf9xu5eC%u5)SP2uBESB5Mp0&gi2cwdoW~!N5I3NmhI)Q6yZwY zUKX_?=5p$N1K=2XF>)*JoAI{}H51|5gesxm$dSPxmSvq0wB{+{>;9D;dl#jG%OQagT*r^C$bp)mwWmFk`CG=&`mm+PQ3K2>e zwdipe`)q`2FaCZ-{RR7-3=@Cq+`044WDj+rB`Lt+i}&HnO-V^SM563}{(;eif3zeo zxq3hd?m&U6CH4eB^g$Lgii+@w=fBa|>_8P7h=T(h#O_OHG9->D5*Cz3@p#v+T^9#O zn5zd2_F&A01BL_n#{nH+HDEYkIFKX`7y(QY<4v-L1LA-YKvNG42a?DEBY;U{zDe3} a;Qs;6ibd;$vPvfa0000=G5>_w;vt|M>p#O|Iv8a$R|HuJfF8pZooK-zRVMbTn8lfG>bRAQsKXFazMa z0UR%x7=W`^(NA;W!eFPR0Rx@=d*`+kCV@cw+nTTkMgduy*+Bso@EUyRM!&!dtt5lo zu;w{u{uk1Y2AEe`YFCY#Kbh3$!Y_p*@UB^SK0fXq3%4nXn;^s zNK#?ab8<=4_-LUul7ByYnS?x>Op;|m4QBOxp^(u;t!lzlP`M@{qlG-}Qhx5z>$U|? zdEWo~(gpHX)EjP-&IFw+Th+tecs9H1d@hHsKtrUstuk{TvSY0bHDq?BQ<>~(xlj_3 zGhJ44^~kFBB%jINSDv?JS^fqcX}G6F-1b^S{=>gcB~_>SMpxh&nr&9ov%2eA8vkU(Asy4(kCO&!4DmUXpp`I+H_+8}qZ9~KI(FMY^U zT{$C@r}*M*+?7(OAy|>;S&tt7HV`=PHt#uaLsGnEBe|neBDr=2uReKDn((XOMIQYT zSH<0#OQzz57v^bf82kcHx+2iDuMu*Kk4k><&6bh$N+gSEjyUw9kWr?ryea6F2Y%*g zmL~IXp72&$evz*`|JRHkNBlX#Anr&Y*GCcGC7^n+MaZ7HND7wUDV=wCF&XK!BzXA^ zA-Y?xLSuG%KLQh6S6e&&mwM?+R@Ei_;5l*HkjMj`(-iD%l|$eAMz5t#l$e;5j*OG^kM7n? zNlBq_s@>O6od>>VkLkdIl6vfONG_J_C}urG|M_99l~qm!4rl?g$j3D2zcnll5(=B($~#iA@=TMU>EJJH~|P@%-f!GZ=iub*?M5ZT@@g8u@e7LFdiMDRU za$d>)8Y&VU>gu;O&6hJnSI;ncn-vwM#1NnkyR_lb@w+e8gJHZzRK#GcVHhJrdb6k; zs#?LIbmJE$E)@ydF?4ND;I~bB=C7r~P>>h2`;<0Q>1*NI__axvvrSZYwNgb?_M5`v zmsk~H$ZJfEgjjKDsU^77sqKC6-2Rm5=M%o2>weE^=}lj1&!sc09FA&!oWP7tdSq_# z5)$wQf+sA-w%09lvEo=~538I((+llJGVy3H-eG-h;`U$0%IH8bPr)V;XC5S;=MOaZ zTJS~zcy&#Fq6RM)CLkdsYUpCy0S*?p{Kl*$z?Gjp{b!$}{{uMdRd&{Z9xk5%UAO#^ zwM@!%m-|zh?O;L|$e&gmbT;yk>NY7p;=cB!sxy3}(yY$o`@OUo9~B8kCH_!QW@1o? z+-5dyEd6QNz#faAFFG&5n*{~4e{eI$&7^Si!|TJU)2)&c{bnMkotwlQC@?w*8Nf>R zS(KW`mE7PaL0jTPD`QA!-?z@4ayfkiCn(;!beC~9iApszjhQ~`{>(>vgey-_IWBrG zl^$U!HyeORAV7~-^VTW2!@Ii`Leb=4v)bnSA|HvGY}u0m9t3* z>X2+*Bl@La<6vFIbYsG#GOw66)Y+e)4_fphT256mS#YmK_iwUzlpXpC^r8zoWl(NZ`-}Q_Z;v?fOwJRM#r;wd8zT>}qer`WqJ|2I+ zX_^qDYDe66J75`7iTLI<`S)Z5?{Ei8!-2cGXl2hTV=qe-Ft`POZ_ zu;m)Iytk1rfXAgpF)e#eBBpXqF$nYlbdT29@s*qO!$5qGDd!ih$uVl2tK~rLh9|SY zMh{il1EDfrvt#SJSJ4uV4wnuKwLhb3D$WIMCR=1d+!^`Kg-n%^`X-0>WJuowWykIO zl!iDIPK9l5N`Q|vU(1$vf-`36RpMl1J3QqX;w|R(Wu@@Ncrm1UpXFghB4eh35h3>?A z6ZYkg<|ET35e$Xde$$}GE11jvA--G^j)T1Jt-rwch=dQi+S)8KGBVK9qopk0ADY2L zrMa6-5j5|AB#P^py*@8$T#{Q~p9ZsYWZu@#d$gNQ2xbVo{ek4u$oq zHu;H7ScfW8NK4J~c?HeQ!3m3ti>%xT5p{cUc1i4U2@ys9Y*3tiYaYJ5|DI)2KmKOPHA_2rd zXfIWKXYSx}^1&n`L5%LS2wUzbm5#l^bo!Lh|GTdumEP~+-vbHev$q4kq$Y*wwrEx2 zk)kmqSG(l9*0^9!Q3?EHC8A+I;^Jhj8;}1SnhesEJ=sB@F+%p{uz`=<+%^FW5Tp20 zC^4Mk?xm%rEuwr0{1;tW+jfQl#ZqB>z8(8Gxu&M(K*Xk8f>{;kJchk@<@UJ;LtzKS z(E9rNqaSyU?@65Xl)YXKm91E8PO3d{)^IrI&~5dE*is8Z?ua-UXJJsbwg3>{;-<%~;Acb#-KhFIaKoLu~wV!?XvdhCy8=1x10c9*y% z?dWYZhB>VQ!u#$u#lGebN!uS(N?1zR9ux~2lAsH?B9s}}gKARf&Z@K^+sQa>>ik@rD7Z3cA*qmJR>C-1(`N{oe%CY$b*S->A z|DKM(<=<<*fetF(SHn0fpMY(az-K--9jM!?$HNH><}Zunxs~82cRh7$T}2N)RPS7^ zX>3%Sot!-S0C_jkQz5||x`djAL-uIq6D@vsyMTFPI^yYS^9_nsM4wq&{!$GafJlk) zb6??hwC<($5Loc{5}uzfpk}@Pb|-FU zj1>|wlwXM)iR(~@J6AR5KQhe(m19oM;koj1h_A5Vz#LAKF)lSE@*r1l^scp=n;TUJ zl2|X!5%Vkg$>$45*TQQ}GUJ_ZNU<*W@3194fomtt$7zYnw={6$^KDSVvuq7& zC=KIp;fFWx&ZlNBEvCiQN&c9ofALbh%@8Xb6+d{%UX*(*x~{>axv__*ET zcQ^=BhRg8Jb+O><*Vos-aa7t#>A_&V>y(hhZOVuCsJ~8Uo32I&Ic_tx*;mz7*%1cC zqt-xjxyYkImcuGG6&0;I%#lN_&CF02hFwd8xp`12DUV20s9nZ8+4EH3>DWDktT zu;23b8yz$=yRDsZpJ4}P?^EW+g_s33cXoF2`4}EbtH{m{b_RosOG1@3w|&*i(sPdTOtT`t5{w~9YpF&pQ(@cosooEwYC z`o@Oz1Gc+Q3rG0zB4c#;ED2`oUGy2b$6m_1@AP&>u}Ds@$v9?8l)x=80K7ms#NV#T z-KgUiu`e!aN@Vfss>Wx>!>e4PU-G5jfAM1y5GJ!psIUeNYfz5AGZ1|deumcU4K$`e z{`ZL0A)Vf4iXevfefjc*C@UkA{TXYmKURpIV>LQh86O{4GAXl|vb3_Q(0s{h<9MCF zgRi`qmZ#cZLSFzvr$Xs5GgBtaILAJKQ-T9K$<*>U-AywgoQYT%gq<@nb#HeE6ZWi9 zcxkR}u>IjLK*|Kz|9-;eL{b-z)w!bT02w&x7|dafu(>81LaMOYUF;aZU&mj61N%;f zdT>az0->PMW54I$nf3v>^rwoqo*|8K6w$gGc;LV7m=Ps`@%_l!wKff@}M-`M%NTMD8s zfgYhw0jxkeL5y)!68D>2ytujki2v6*%j=x%NAN7=DTQX<=?2c(&LP^X%5<{XlS7 z)}e+;srkYCZOTRkyAd9@5#!?GlKQ8nG?*+mVHYQihA>5N%#l;+x@tvnin?Zy4l-3A zt7r*R@rczdTDOMT2m1KzN1mH@HmmpBG#@Y9L^clIRF~ZvXAS3v1D(yH?lpa>tn|v; zruc*87#{4Dho@9&joXkje13aOCKq_+0)5-G0QZ=fSzk@e^C_Wx#TwfeGWgrGerA<7 zEYwkkGPjk3h|!M|F(;4Us;TZVPmFI=4Kg;-38g%to;%W#b)O(sY>aDNdDDIcuUoCp z#V`_nHa58w)KJCT^!g_R63QAe&);zWU3t?27(TE@-;BN2Qw9Y8ep#1jei$G2(E-K=>Iw*y01j`41e|f$` zS>@;X9OBs9>+m*-euZ|e)GfO=u*F?I(HP!*ETiqd_F>9pb_JTrTB*=Zf1j=veT}mP%4txA{;lV>*N^#oPd}V|W~2TaJg%sPy2hYKuqWXc z5Ko`LycH0l5bw(sf*V6~zan*kAT8c4)&d~a`nFD1H;(dXv#up6BLiIUH2r&bq9tSK zOug4F0(77G0UL~C@mAvFWIAikMCnSNomRauYk-<$^bZ!g6JCrIq`1%2Zt}7>Fr`Hd z%mqCYN@{3m$_+*fCO*y*g!q35-s{nqnG#;}&A1gWAE8VpP4hK5kBQ6%?+?7P6noQX zS)GGEoN7L!ZW9dq%gn0m&yN%!w?7_Ew4SDTpufzB&8WH!a$t`)ft=Uy24?q>h}s7tapTkacF)PmIypt()m7J<5Y8{ojR|FObWg5s zAKNHpaB#Z?ATiD^$EyR8TL{rIZreItlXbk(D3loe{gZy=YMhhm~LJ8LD^x*3U2$1xgN;E>U2WBIm{OwN=r(h z-?{c3<}F;u8tBbdZRbDs1_@wU zbS&*URuit$_zNZVL^`{;lyj?@`Pg*}Z;Tcjk}tJ+t~4SyR2X@MAY`PU`)DQQ-ILGj z;o>Q&sn%8&7SQYU@BOwLv8Q-4^*sLR*tg|7W6D%)NhcRnT&}PfsK@m{yfwL^9PJYB zQZFB=v(dMWq>m@ciJFxC%y=wdbvZHqb{iC)y@i@JMf86^EVN~irWTZhp6-7@0n?Hu z=V7IDpiH39jfdOn0AS??fYmd|wIRv7?1=<_{jK744WNjndzIQuJ)D8=;OXv~f5jj- zNNcV3QawQAAP;AQJjxo^MOFs0GfnuZpGts&)>0IYyUhpmVNU}KP-p|F{LIc%AwY>i z;Q?E4aBs43P;@sJVc(D5RIW4GmagQCQMOKhFyBBJXrr&*Ye}9$ss^Aa7AzA@%n6GB zQjW`b$f}$?km(aIS|1srKd!V@9~l+J06e_6`>o6f{KBeqU#j>VvoBT*h{|eAu;N7R zb_>~RWgxQ)Ma=H{OZ?Ejl4>Tbp5{OmwofmVm8kyh z(M?khl3nVI%PTH^Bf%?`DEAs%XiKM0yrwWatOOXyG$sFguX(+hs-F+6A5Oh{cUkCZ z+FSn*=iuW;BI-g(3r9-{j(~W9?%%H$8={rW_{M!B$kh9cO0GujKOa;eX7Q!^lYja1 z=RJz+Z6ZVnyKqHWgi;TJe~Vhvc=nnH=zwZLq73G5e}${ZZ~%o)`QOQg$ECoH8_MLL zk=qpBz}1gohT|c*V4jUGg{VJt8x!TkG(`Lx`*xDpxk?6)+2-_T?hUUxJ0FFRo8~sX z3BoSliWscuPUE%Dc13oyZ5BYi_g&Aoy#+#`e8$nZ+-l&OiN&`T@}nzt%{O`*ZNAao z!yVb_s8au2ckpQ5WpK>$iZUGkuE$^mqS)k3i_;X)B+!P^d!JWdT#brkRY?myYofG! zU*xzu-!DywEg^IleiLurp%up+LHPf6YxoI!^eL|=*WAboLvkpv1kmy%{dLGq<6Zit z*hm~T)O9#mA1kqLJ-tpgN^vP~;b31Vss41)oIAY=j3_ECbr{T2un6Am@cmQw6EMDz z@11cd2Yp{(9hn^_S^MWaJ{4Xu$61CB@<2jYNxH48vh%MO>Qh@&jvofv-(2}SJ%Q`| zq#ons0MAQ>eNNOzl1Z!hhBxk8o##xu&qwO2FVv%eaiYCOkQ`Rg)Pyja|9# z8j@1Zin$-jMA#QJ+23~Gfo_A~|C~Cy7iw)})Q+66?8^3^ z?a`L|)gHydb4N_f0noXBT?B-yTUE>c-;_k$+aAbK&YY@tB+hi$;%~zbx`3Kpk3dq7 z8r%i8ylu-hzWgr5C2gqIs-?nm>R{6Ke1{ry=Du&80AGT5pS@J+q(7QhLI);dG-jXu zw~i*3?-$ufR$W~kh}B4L>E|#J9~0*E{SpA|X)XRgU&Ta6V`C+^uOyO-*Ey95q5w(> z+PuMxav_|1dwY$U!+AyYJ)uMNUlXEt-CgY#lcuz!(G(# zWjSKT?mep|sYlHfXA{GkCXt~BvaZLyNeutxo)%!S&dUIICgHsxdn&G%KKmCtGePN^ zORxx7K7Hmx|7xri7yUQ%RQ)%)JLqk0@80P|*Zw)dsf{iWZkxXt+l9(WZGSHL;ab!J zA8uO?^n$%urjs6Gpu~Ks{On47(Zeaus)-83^w$@k0oRbEZXb=+p%DQnLV#WPyU1@T z_H@TsGma?Rx5{Cs`s^qsiaPokS5&Hl?jo~rRCATzBV(EgTK|Z+iLW8lV=@=w9X5kr zhb>W@_7-|B^kUIDXLyY55iOh}jsr+E~BS#41|Bgs|(y5bre1JmoYK zFAdo%!K&n84+I4T4}gl~@bepd1<9$Y+s`a4g1<^WkH9=-OFWNNlw@v`ZEdMDI#6Io zaU4ZrO7@`QEv{2lTb8c^zv-D6O~$3vNLM}hI5OqJIE6IG+>19E)5LQ_ylsS%zLBXc zrVl%P@EdqAVc#m4vROAVIx!)4Kw;#*0j!ZnwY9Z;>`@B~5bu{5-ZJcKIt`oZKXJxz z*fPt!860f|-)77Kwp|E~uIGO(CD(A;CkcoRSSh9bkKe0h|FlW$3XhDHl(K7Q0(M)j zXZi-lVau*0rhbb_oZ?m7Znahv8c{hJf^UkIq(pZ&g;9-=s`G5@3Xr58 z66;q~Ij}E#EwRQd=EU5_O<#W)EO(`crLY9`R$KYV_i*|FP?o>|ZSlQ`RRGIBfhSx} z%nQ2$KTsp=Klv_U-;QAijL?MovLGC72A7NO7P3jgG&{sjU5)9Gwars>e*s`gzrECq zH*cu}P(KKY=T-0~ynp{*ihat9#sS-STQr5 z!el`_>iL(NQfiH1PSQ`6184%tiDgJ_n^4vnZcw4oG_3@(CqwE$9uA@I`eS1F)(Xuk zIok3s>l-;lx4Xi^C^4lG&p*;SW{hFLrks1b$hW<%oW3#|GJ9eoK!%^E5*ti^G%V(@x?#7UMje`WsPd#!&`&KP4mK3U$5ey0um833fIt^+Ik&nDvk E0T}jbmH+?% diff --git a/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png b/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation.png deleted file mode 100644 index 05a743ad69d1623190e303e5a3f313911146ede4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11400 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 S5C&lwL&;04NYzQ0h5a89N;J~| diff --git a/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png b/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na__ve_Category_Representation_Mess.png deleted file mode 100644 index 6d06918c1e19980d6023bebd2e9347454a1efb82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12887 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 B=H~za diff --git a/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png b/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation.png deleted file mode 100644 index e8a54997f55b4120565eb15a1bb4a8d3d07e9c8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10186 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 ZCTHpE!bwm0faW}qhN=#<_OVUG{{vHH?EnA( diff --git a/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png b/output/Scratch/fr/blog/Category-Theory-Programming/graph/Na_ve_Category_Representation_Mess.png deleted file mode 100644 index 78a5a27f541aa5f06c7e5bb3387737e3d4646d33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46898 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

Sop%32r01N&6&u&k+g5IaihB1s{WG*oEdZ507 zy^;6#n4`&8XQ!e~R)hH20JU{DF^S$1*g6Tw4*?)yki%B^vEYp;{$iIk3xvJc*yV(R{>3t5q^qFf~Rs1Oz^0; z51Aqqt+^@ag>Bz4TxUey4|67&&mFz>_&&QBt14Xq)4rkuM(Q#^L!*yUW=4v9MN2pX zprizVo8jL+B*9mh22}eS&_eUk$;m+4KSqXzzR)wIbDuyc-SC%Us5z^SF{vzZKux~p z+lf-Q{=cmxw^|lCpLvt7^Yl}*&*Zb&@&J(tZ{ncjDo0z-l6q%(BBngk9!9V ziV8$on1ng*lvjK7ni!T!>{anQQ&4qmZ0tE@Bi)zp2sMDt5Cm9m05W#9&H&U=6W4M& z*gBx#w&m-(`X&1=Y|6*D*Ax?Y=OXaH8l=e}QvgXon?mDJzdoffR8>k7MU1QORD5XT z7(Xs1^JIG75JydU7e}_QhRD5NZ;&n@NDFtbAmsIYTMd9{;21zK^v8~1#=rzIGB8if zufZ?Kb0{x7aHFRor~?&(uX&+AG8j%^wct_XJVe&q4Mq62zg_#HR$)H^$oHCmob@kY zu7ye}Hs)=6pf!S#w1-zOoGW}Rp!{&7n71y7=~YFQX=GL&NsV}#L+IR5i{Ps?zn4HO z1hjJA5P%D=jtL=qrkzwnnAf!wIJeQkT^iAea*;z0u#K9P2(I%$hy_0;q)_w(GDa;uMZygFEN&p-EijrdXSYqa~2;zBGQgLNbmYb&>!DtFIg zuB!%Y*}>KK3qZuhNAy9YtEo-CfjpezN>vA@>b zOlAA2<*hlIPi2_U8!XpB7z(uLC0D`W=iK!tr~thSFCWS4?oUxsPuqQV%76+Aj7c6P zn{fM#Vd7u@MV=SC(DuFv0v1U_Q{?7*I?Dw_X~m(qQiZ|TsNqRtfUG>l&}dT*U1%d3 z$=E$ZNR5L<^!=r~&!}2$Wg(nmA9-`Fp=@b5rW7TTKCEz0+OY5JbD%sTsCZF(e!DZK z0PWs(cXI-3R$0yj0Fv7Po7=lE7&CP~;lrmwUjKgQ_0|lKbRplr$kRi`f<<&S;#hIZ z2=1j*IGNZ?+7Yy1kSrN!%76O(rQ7bmKn<1UUva?MKu71q8Dm+_M zMj<#2U3=y-yc7>+(f~4_BemzvLM71sJdm1?_&L!Alqb6gDqy%}%{6Glp6MuDigzb) ze|kh(Yt5}mKs8J}u}buF@@M7GWHzn@b`JQ$oD-~k(~CpzzSoNmM4&I+ycvJ8P ze8|a9OV;HLm5+m0&yFH!>3<5Ktk`EuZSC>fSK%FRTnzs8;Msr8p>cQZmh~7g6Kp*m zd9y%CWZ$36ts1BaNh0_ctNaaP7tWWAe(u;Nazlq#zuGtWMJ_3P5RR@!hvi_Pb(IdL zg0{f*vT80brE`NzVp~;ddN{&X86E?a?81xlW)qWAA2LDg%v?mP#Wfksc0}igU7+(z zX2Ka6$zfzUkjRcB$>r%ON$}D5kw0N;f!`2IScX3&=}8iMZ-YJ|Xr0Izix6osxZS>T zY7h+-dt6vd0)AZ0baS&6ZOJB#@9Z(yWnEY)L^=zp{M%q`UM+tZQ-g8CnW}B}O@R-Q zLr!2nvqNSc&0(D)w5BDb#VcWQR0>14+oBY>Y$DCMj9+g6!B|LKIq0z|v+K z8qUKKUeMUmV*j5bWoL^Bz#(v&nVH@3gPoo`rc8v0fA8!*lI820Ng#dqTI^K`;$cre zF~-FpZLBQV`O*OxjZBbys^dUk*hND}mkz+U*z~1{PO!+cEbSzUWPNKUz$5IsHOSYnd;_BHIeHz@~Fg|V+7cVN_btJ-ks%*b>*Ie)BSRNB#pJ6iYc(wzQ z@6C3SvkyYWc5iMA1M-=hBEj%y(<%IEBRA4t9X>dirpgX&?FLHdEB{y1E`YD!!f-<_qg)7`x4>X3aX@&OXDDcx5yB|9_?D#MyGJjr)` zVqs=z`1g(JcoYBAVP?l(bEsQ9bDQDfvs}sCk}WgvXFr}tSiq4`D=PrNC}cuk0ID7h z$0~mh$H}3WN=6CUL7Uv!0sjaq+M0BwYtH+QTG*7ArC0e%;3Z1wZL*jM(-R)SxnG{EP_Flx0zZ|F(RspJc9pHN5i5&KEGY>=* zz5=2Vo~t0feJ=>}6L7wYz4b|}nPvLgl zQvObJjyh@~kNmk14Rm=*7(WH}B!zv@Q#7Nym9uen>1zfsB#tHG58`o3w99wXG{5Gx zKssO~P_nHyDW4C#bWxAfGc#k9m)Qq#?39lpsb59*FfNvwtJ%SWoHo0myHac1`UMDxBvu)t%6FnQ z?q-o3L1OgB%#eiP@D=dQclx!bh8$oBxJH4;k{Fe8inuu+AKq!_OU5r;CTxOk6}asF}~3c(6{y zzWZzxl*z%HD=o4$@xb*NNq#SK2hknYNtbNev)X;YpPVC6vRT-@o&TRQ&x<_W0vmcr zGNW3gu-1`eW@xMe9W`~x_^0-y7&(RltuSXZ93cN$XRPv2GN|y1sSdLr!fI(a?V86v z`qb3c1_May*+GD8sPcEgKgN(NP^h8bl~X7zVp<`-?qItmdZN}zXIgB4)r;kK8&`TG= zl1$mzpFa7rB-*_3`8`7~cRFEb4xRNY1JrH0L!J}4$?`dTrgUf#{7RYePvXX-`h1MAl)rUqjV!B zKS`xT7?1|Zp}SM*6e($>8M+&W?(RlHq`L*)!~b2+d|>f`#oTeu6?^Y%A1k%#3^iw? zO{i5i%!gwB?=l-5C4CAULLHq?P=Frz4k7_zAzGNKvt1o%Zf^d__aLAs4N=C6sYx*5 z@5e*L(zhSA1ZEToNpIu#y5Pdz@4kJBa4~(ZbdWF9gkRXx94a%y2R75riQ8?#uJ~`e zdN6SA4b+@A%{ZT?zuAR}Q={)^!^nc#!8~ehQeFeaXLdT8`P%!K-VM#=8p~OTySw|M z3yoPO5qw!$O5aNHX_-d%6e<>aD>04VQmtruI->qo7{A{kA4{!VM?ck?OU0;83Ei-_cR zFY&H5rn+hjoAr*kVXwgg+7eh>;9fT*3!6xaj})uR%rr=YChLdvsZ{G3Z9ZH2tnOmD zbTD^wbCa<)R8C^^$W@srio}JO5t5ovhV_DzdbG<>_TQSA$&jUv)2?|UpI|sxg5Ot< ze5D~}2#5KR4TZg3WY$adF=pxRK?4IH^xREm>j&~Evei4@!(%0UQ@uWp)>R`w#1L6V zY_pYZOK`UA;>who{1p}7=t?EPc2&j`Ah?gHpZuP|`LWF(MU}*02`jjvGxaJhe-b!! zwL+_A>rfCNI zoyBW;KYD0`XmtKsy``Yq*~iRw&E;%4zMjZ={=^^J2|{jK{afG6yy~??oHO#Dzi(aO z!fk23Ud8=wjQuLqt)%u9NFQN-Ult5brwa5XK#5hDQ+-J;x70A%d@ZPo4JLBlFWGfsH|5YFGGl%VIbL>Ec~ANW zRTlACeLW6XjoyB}wFm#qFA6s)?yR_H)U7Xch)cv5F<|HeT*-zJ;8s7_op#kseOewD z;+X8lHuoeNN$(Hlh7dK`XL}4|Cuxax?H!yaVc_~7esg>zl0UcCyva9V~H6c)NaXC`~3s;l7(Dj?6cENe*+IjsLyqFr~|N8gk%=)NAx zT)*}e^Y3z#ASNltW}K>0AuFw^WlxSjqHo1JsY-uaOiawTky;s>3oL_>i)QnSdG+%2 zt|C-diUHr`@kn;ML4TF;i5gOw4Iz2HO(fxjgbd3)MIR=Vq#`?M8nQrk&~0N2{c|B+N|%X z`HlEIFRe&8boxY&nmemT#hV5z_DY+gfOxagp#AHM=c}+OwV6!GS5u!+p!3!L@TX;{b++(L zcuMq=(N8%pGB0K-95cig5P4qm^72+S2y2CG`w{Z+^5VK^%Sl3cN!q1n)^vyvknK1` z>z0P9ApE;M1q(_#=m8dDJ<##PCVD)a;I|03CdS6+(I+3p{IF87P+Zq@CU4k}=|oI) zRzq)up6j~)K~7Eal+fYxucX)h)0Oa^lG=YH5 z-||Z{6Cc-m3JkCPY0M?m+=@fk@XtwOdh&|rS$+0qFan+l=-?f+iXgpz|NfbTGv+?! zi%25|B}9_nQ*Ummn3WBW#HxJ}=EU?DD})5Ef|^TLcbYf+o9vhR^}CbeA-~zO55$Y+ zChMtPmhYacKHf81%<7zWb~DcziX+@gi+i-GmS9Q$eD8Km6~C?FByR0uo68v)qWA7YY7{28o%3 zCaFnZ;nueI3B@jgX~pCeRv7a|CC=`qiKhhcN<{@jg5lT z0P_&Hn`X}N;(5!@@2rfASb_xc#vx0MiLnn@)S`Ho!Y#v5=6&lwN9K=8N9VJ)A$M3> zplZE%=5I|PFcKvV#(opzl7*9XZ6C7zSna;PqwJvM^9r@Ol4_Kd5nmK+1$w;{WWClY1g*fxdkaC-T(PK)Lie-K5~QrpaR=- zwPGJ2!3<1Hf6R=Hu`FRDp9!!~*)wxWgm|jSjf@vv3ZcpJUgE3d)%(>|gj`gKW->zd zl+qQuOSW4!|6SNym4r=`9i%c!41nsGGQ+LH&}x;_!#97F8cn=MGtaW`$M~D4Yjr&u zz-#h(jOu=lV{IPyNV4WCnNE=N|P{G`)J%q}E z@wH8JU|?W3bu=^K^$=IYV^ZF{7R|aIUd)+n6jejMShu>gHjhj%=&kXS%##0TP4d|S zjh~Y|ibWLM{y*nMvRtHG?iZPB>5G#XhlRE~3`#G6sEPxT?~@fL302@myL$bknWW$9 zh7iwwO@cD7X2b^LEHYVe)xN1TpL7b7zGMGnShTt^c~mSKd^^bQUvg-nO4*xuP=Xm< z9WE=QrX%PHDmr46?5FQuc<3WEs%vOu?9?W-jKd!6E>u2${!E31${DE^tAi-2qp5lG zYxRhRW<$=1(9FHP#(WtR{5J4ku!V{C@Ph=we22BKg`$s_Q!i2$hUq@Zc$r{bMT&R4 zkE}Y2yY|SzEjN&E|F!cNZeK7nHcj*eU>t1;RSsiV`t|Og;L&RaUO7<{$_5pAvuz!hH z&qIZC6s+2`@%1CidEw~xUG(TSrR3RF{0L$c0*`$H%aXCsM`A40MV zrK!q{qTNp~i%PaoERnX?*)Ut%>VhJ3>}OM9SV<~g+00ZN&noFN9t!BTlv~q?UZ@8iDtC* zVlBHSgp)YtknU7@lJ6~e)TQU==aMON7gg}*LeD95*~d#@ol=|h$%hG)W`aaGQrA4m z-eG-B5?^7pb)Po>GZ0n!F@tHBfO-VC{}952-TLQ~X~M;OpZZM`ha_GNSexaQc6e}3eXX6RF5ybbHS z)Ul`ieg~r7Z~we{3)vLV!l)x_Tzj={(eVr(UEwOr$<_C44NQ$9&YFS`2@z5KK}3!0 zt`4ZK2VN`4$<1lgbut0s^$Ku?-XhMs)w8+z;MawJ|NcevM8$v-;3sGUDMtP*Lxm0t z&!jflJGmYv)iI`$@-%Up!K|=xT}?IVN_xj0`gFcxn9a=dNj|ee3sWw#p)k`n`&pV81|oHQQ^A%{ zIuQC^;%j23nrY57e~wO!kDs2cJpkaVPO73QGRwzlSEzHcJ ztZG{J3nK0hy|!sDaGF z?)xq-8`5(MpQwD8j2o9>mDvaRBW!+>Nj@~BGdrE*(Hb_^-B&FX1sm!H@1&)>{bS~} zi#lq=vJJTENtkQ;BiXt2e0(0F0o$vbVDbWYKfLO)<%3iy@&gErbv|v68F^5p%Nwt4 z@c41epX+*dZk(KVYAW5=GxkERWda9@tqI*rD8f6+)IuBc;||9yTOfw+^zE8h#;9u`rLfha5B1;q zB8@U`n}{|+otAN9Q`2-X58;c|*%uNw=#1QXbae;0U`VaL+!2DFAPTJ4tCp!wD`RzD zGf?4_31S)D`ynE?rUG*kHDqkrXzDbe@gDEpyST&&?)1j${L5?D5dfo)7Cnt1=EUaM zqgzCsakdc}TJ2fVyK0^I3f18l7z;|*Pj+sj*+a4j1k?(D%&(U5h4#lM?g=fN2s&)%`6=DsbmV}0{aKdN zh0d+$NOznWB3c4#t70pvWqkHC?*`|irKWljuiS+&S6A}auU{XN^E9(yf(ROo44pVA zNH_a&XslvlEs3*xignf^%UltikeZB;YsiH`Czl68v34EKB%dHMu~59A>w{}qfrVgZ ze#kkJ2Vx7DzXJx7{?>~j=rAxAFi0)Fo$45sY$EEb9ujb0xix$wJMSpS@L`%mK1}c1 zE&Y)7#B_lOs_E64>e&%ioT;MTj>;X~ns207Tf;{0sh6bYBn)c_Baun?!m$Q zZM>GRfpp=18_+Mjr`SD!>!ArW)!ril^q$D(=r!D=n2D6m29c=s6kiHGQvN~S|t$K)2vZ-<> z*DYY5kin~?r}I{;!5#6ivrTn+h5ZX7U*|$*u~ra?7@&sb)}G&bH|Fs$0)2MptG0tc z-)oH^X-f1+5x>fk8gkk~A-au!mjtQHN$mY282Dr8?vP-7RU`Q7ZJ%wV?KpFN!rH;B zrJ{~yc)sDcjgeHmv^ABsRo^_=2=ZkW+g`Bw`FuM0Q>kuf_oDB}eyO)^QZHhRlS`48 z*o@}A^ya?A%Q3onh|JT11KFD2uFXUfx323acDJ(;pTlO~2tPl626D7k!Ze5AV0ORX zE0bWimfwT^tRHVNn{7K|Etztpmm7XD@VfeiRFF6+SUiZS=#MzWzG+}^*%@j&b?gZk zl@>az4jo=i;Z>|+KF)?kVWNI3?QX7i!O74Q6^+)GBs#egF*XuG z^`=r8;E`{oHqr4LMDft8KJ4caYHB}f-@)7s?Q}syYyOV<~F9lGmTNbZ~Z>vb#|ZMM|bTKZ(sihk4? zpbnSLSZJyTh7b|x!|oViJmwxJKR0)}PB|nrYKxsUg8^oMwnq9(p+Q_W|211amLGn zdTW2D{xxy9Xv?#G7D_9n-O6C;MSfXai5*29D_NB=3y=mrh}d#vaa;kq_1;j@2KnjE z@9kH@{u%ONw%bN=vbAo4j~AfJa^mHh;#Zh##&e^{|9T`{0n@IXbfZChtYs^bZcd_n zSHvZQ0D>Pe-QZN6%{p5+novRZr$8rRQ3=H)klgx zG7jm$C|d}MV$1k0V4oi3~L-Zx_ZtWr(%csUGXZ-h; zuQYn2q}q}Og@6m}Li@6}-V~M$bWbX-r1wZb64v8-QQiKYzh7F3YXxcf zo{ndvvUv0FD=Tk?Q5JI8fSY|PzQ>Wn$5#-^bh&-2=FcwPAJ||Wwc6m1`RPuX*QUF= zx{9*W%%_j8^nt_-sM0^m_Xtl*7xBml;SZR=F$ODj-Y1Q#knz;Gp`&Un(h*xaOssQU zh@4zX8W(&I9z*^J;Sk$U*R!&EOHNMCOcr#ap9vyFhO~a6Czkhdc5Cuy#|oIvSJfnE zG$d^`_i-*ao&<=x2$FclkvYCQ@il>vNb+j7+;WMnUlW-0VAHx6h@UZys6}fZ0fwsv z|NYm#ZL=3T$$c|R6jd4MYQGd^NvtGp^l2lEO$G_emmuZ@WcQmn7HiEQg*&^r57!vq z?Io_3aeRMu>`N`4In8&);p|o8TR*`IwbpmoYj~YpJ)qWVuA7ae2pQe>l#${Ad+{$A zaZrK?0-5le@!dA=Y6`TV1FMDV9rv|hJE5i5lc}zJKg@_;Oxymc9PzZBZxy;wPsm&% zx#9kAEmx3cuEJ^dC78&pE!@R`SWlkFNams9Dx|ABSe~B$fV{pW_+E59k2j5Ei;?PW zFdZFS(*M5ctxZUl{L}5#)YSAM9nIIajPVT@Wlz*{j{v-SC<9TKDEsf7meZxjpGDB_6 z>8093-iRJLdN>ScE2l?@59Ax`(?9m6!Ku?lo$hp2 zi<8p_^djmRJw<7FHBv?3H5uc(69}Pf`_my7K&EBCwr8?VL$#NO&@;gd{-{t8kCrlm zeKP!Zsk3(4t@9qADU|0lxB6F=bqqbGC)p^L2UmUB;;q)#dyf-J#C*FH2d}yd1*kD; zxSyn!{QDoba{cV`RHt?)N&S=Z`Z(6leTxRdg`{8AQD$NI&xcW~h|{v?iZWmPuBWw7 zdCItSJTj18#Bjj1Q1WZ9Dginz5i#Wk#N7fzvQm?FXnapWb@e$j#G9i2RXSat?#yaj zMTIEyLH{)2#L!U_(~EnPE9zCO>y!NO2$Un{{>cwE&f5CLC(-!=Y&t=e&n4nhR()80 zl>9;j@BbCe+=RtOq{B2B&qe3PkNkLX$Rhv0$c0m;zc(1VE*3Qk0pWFS0*@9K0oALe zNn9QA>vr~3Kq9sX`g6*^lo)|XU|Wa~fSSl%9#{_mhb1(For&Cdcqkk-6=QBq0pW}K zvZrnJ2O|_fk#Z5vl{s#YJdRqk+fxlVP9&Ze71!T~l(p947R`ADhs8CP6f%4LURjQ^Mws~^H!2yH&;KJML;vu?Bl_cXrXd*(SRdg}5EmS)Y}V6N@-`$+;w?6M z5zqt`^%Ou3$*p^juG%tT^dQ3`7A$(KOV}@*mc*b>>u54PPY+w4K#lPGMJ3Hf&x zoX+yvY{7z3w?Sc_54&m<>-@s7^0%QcdbEL9ebT}V81)Kc zlO3MjC^=}$Qw8HQ62gew6~_iIX9V13`W1tfS*ex?8nuv=k>0>(5$JTdeJQYCvr}UP zk|4DR*si3$koRtKG(Tj1FPWE^8ZX*%-Y}pTy1HP|{LK!#i6W~E-<0-pyvXqrE_=pz zKv3Y-ya0Rr9d)!>G7RJG>L{_B&;DFRlStZr3}}y#xSk~@?r2>Mp}XW1qXUc~Y*A}n z$m^%~kv*&uy+Sspw2ysWHN}52{OatbG#oMHPvO914P;qgKf`mbmL!1^0y;G^;uRE> z_SbXo)NMFChf7QWezSH2_%-wAxrIXQLk_iBMiQ0tj{Mv4nT`kLBf6fJ9-3?yU7_qT zQ~${$(lo7%S{pQnc$tv(WMFsB?RC*p;aoif9MRhz8TNp8zXZXw5p}1F4!g*TgelUQ z;^etB!Sf#bq&VW+m0(Ra#8E^zb>w(2p^TSo>81Rkx)(#OeJHJH{9Mf`C)g-@J>~i= zqwn=6Ix4d}pmnD+U!lzr4zyuONnN&n^VmYpv{B(sPLVM%tYp0(zwzJb8b%0jksITV zCKai;4|APgxTyzRO3s$*ULhug_8G>6O)mN|q-stmKw92V;n48-{9Bo%59%}w3lBfJ z@w)%=%Ng|TUV!*&`#h{INb`SM0O}Q`q6~6Guv|f!9jGj>TAm@uhf-ad?>ww%-F^D6 z6ah!$e1xA+Ms%&VH1BwHhw4v-W~k%1FMS%h!vc0xovyCbhnO})U3{}sZWqDYQykD0^)pujT*R^)uhweNhW0X_2$iJBi4Hg!+>QmyN5|RC zU35h#ZVf&60`Zwz^(P8d=3+f!fnb}yqT+DV^XJcNsH3-0*5Z4j-k5(-2_s8aeI}Oc zB7be}!amuOW(}tc5EP?6(xzGF+u!SnBFwiYc z>x)SUKvI8_|CXXAEwa$$B5Q_QbK9>s-^+UZRiD|Ym-Mx@-5TR=uqr&Fn&cxz-lJSE z;WPMzYczW^B~7vrTSkIC{Cw|;60>#0fK3VHhopZyW1J>h{Z#}w zZ>x4|BQ9(#7s<;K-v(OtBQ~;bvW=L`*f&h=uou9<@W21i&=CG=hPWBz%j`h5UDld1 zgM#oHBI5Ei%5yJNVda>*A7fjLZ=fgh%Be200G9^w8T;=30Sdd_E-o(af8s3bOI|5i zg{UEkd5lf1`%p`Ad>Xf$-fQ4>_XrI#}G=m#>@$LTa5`e6@!jE9>Ry+G`7M*C5%_*Eaoi4 ziFl5G+=9G3+`_`ViC*{eWS8iID6*T2zdl+h56KyM)b{LL+f8`TUGK7w z6)=fl8-!il-SetB_k`fnQ$LyPPFO42XEN-qB(a1-pIvq3ph7flK45d9{p2+EVPms?|7ofnLr_`v_LT~^NeV-wa%Gjb)%ucGaH zxA%uaFVeu*ApqY0(g~Tqx!H{yEE{C_(N%10tmJB|cao?(PeVh)FvSzJ`qW+LLB)}lQW6pbYMywtI(}!T z4*tvV6)7Vv>w{W*IIoSx8!xTjYvpcw2~|Hd7zw9*Crm2U?3c4GmWDT z?G>79#MM`?2U->r&T|Gl(4bkxI1j(+|KY7 z_i4-E&}}>(m!;u086X05`e;uiWr~(JBBZe}a!2ycsJ$gT}hE99D zhF*jG$6{!*)6q)WAV*U~QK`j8q&p92Y)=88$Oia^dm;SHfX8^4*VDA)9cC^)cH#_1L6^nnj4!5#7i#Cg9 z{6$DWKmtVVZa~)Jg2cs%>Ki0vpF9k}{hx0fnMn2AXf^a(wzC%d`}@y#CWGLNzIYo;M3yFTle69Dg`;r*4c{3D{CQdU z-+&V8eiXnJb4vzQ^!b^*K9$O;e#fNL+K_gG!#QB|U zSz1_Uov)N8_x?Tf@+W}T*#WYE%!OJ1hLJHh)-8O z*(4ai^H}5ysC_WzeMXi6z-U6djKwd)!ZKe^X6^dKJ5sLieI$w;n^qeVCa^JEZ!dO_ zY88?4U~;Xb(HANs<;p3OkI*;8I$ZH4@EG`G%L#hRNJFUD;XXwWHvpB%Qv_|r$=#~n zY&7`iBr07y|* z()Ted;+1MT%W#gr5l9X?y-7};noY3`sm-pWr+595ztEVt3ls$6XzB&KbLJ6yNMe5Y z)w+@t`P4II`pOOt4r->N*tv?7^ay3McPw~H3JU+efts%Rg?KCDh2wWKyh9-_LA)AP zrIuzThUc)?+xxjUI%`8f#_bX{bIsnT0%wK?+hB$gdUyQhx&sFyv{)Reb4Yf_Rf%cLJi&Rk@0QSt-q}ix>OvWQ%r(ZPxVm&y*VimXLpLryV;^B}FB( zduhl{MI|L-ue3JmUiK1X5Z7qqh+iA{{Hu7_-Ka7fHQk^4tGEyTGZK(%MI$a+SXyq7 zldtprjCKg}4m%EkZQ?w&y&IexQEu3Yy5jrjUD|qUAz(EJe^PEw50oEt zkRgJdK7=IT*|KuI&!Y5AQw(a(*l~|Oi<_z`z(V02)sO~(dmsdC>{)^)Ob@m3Vt3k7 zfv?AgsTbK5c@`X20*Og{X0=>$fGknO>OsaV%)r2K{5Lz=0l1c(Cbst{^l z@_q1n`gUr!HAG?Ou){OeCTV(+8W>s2k4ym`j$@sYCPB7gY z`%a42@vez-fTGH6Ev-dsIkQ5f;)fp0@tZgTZSn)|G+Ez%Df!?n)hyOka41<`ry7oOQ{ zg1Jw`aB5m?k^t#+hV7amZuXv~C0P$I{5fbn@3Z-R2;UGe+n9SU*yBdc>ZEIbU3a2d zi02*{99%?IAdaz=jUcoC{uE7Ml_2D3ZqM|+t$|8fmhQCG zdXex;S+SBhS`=y{5-Dj;NFpZ>q zG16_n?6Yc3YrosWH>?JTc~D-J-P}Knf`LhyPOcTzX<5HPsZH%Vet|d_XaoY_S2K`X zu>#+nw9u2{OF`UGH^Da9an9?3T4SZDIGwJQ=5{0Jp?C*TeD+#GZ{bM-{2>BT$&Q^Ssqf4 zJMD}1Oe04O>63($=Rs$hib;{f{GjkUxFQ?^CuA?CRib~z#)eg}8@o^8N7XTZCGwvX zY*}T-ZJ`8&DHNnfgfKvj!L8X}BpJ@U(9b7c@>X5=vACe%etk;yh#NGQNS~S^+H(Dm z$(12aX61#J{>0P)3X;DsqBP9IGq%@?LIX+6{xZBWWcHN>;r0E)q#t4E5ZpduLI7A* z)UfTLUB&UIyI4mc5XVrhu}$(tJ7_DU)^@{E&jXQ^zy5Py>&#WW7}6oW(ReqohFYxw zX_1y10WZdxNi%Y?0`#HKJSd0y)44E620TjTm9%uEq$DJzR#q86dcEsBJHy&?7%%bi zJD?PSO%Kt%Z2C>jGz z9xd8k1<0f<03?eoe_RV40N(2gKL$Q9QZM2pnK=6ECjBW z7Pu|<5wO$!s!@lnc#WP9!a!SkL2Y~0gDwGK4wL%@O*Yd^;I}<8>k8dChLrjaj*&Bx zE|h!qo&Q)Zb>YzxBs(cbU39k{%S;+~DMe10tGx#+{xbA`!aeSd9;klA3z3;Bo8`t; zMAssV$PgV9%^6H7>e4fSe*o2}+2;1PZ)N^jS$&paznJ*-+P4Cz4O_|TjpzqJ{?V-+ zt+d=7%XN9C3Slz=Bu0{jIYA@WG?vvxa@6zwzgw5nwc=$~Uy*xtiquo)|IY(@YeR6K zDFKSY$#%O7>I<6tZ0XHt_-{I%+`K$f4+idYz4!9+dkclC`5uI_i?!agb~MK|hGg8! zBjETo3&7cXItd@qxnTT8e^1Hkfy=&RbWe{ z!D~wYbh^znffyN+&s>0ZQaZ@|kIq5;C0?KH{+7&_!fp;fPTMGJaCL`+;l8uK<>&IW*dDWR^==;Hp7gNlWr}U_(*kZxwRpJNg)J=EZ1M6VaCiW0umGwNHp)XGEObAv;y)N3MtrS{{yKuN{V#sQ90$iUQ|2>+Ad&^4v ziAhs!BsBRBynuP3ou7^1jKLQ`Ma0g=_Rqq0TYwmU$7=CX6u%JBBE)SIj5P?#u=fLy zrVh4i46^iT0A7CJ`~JaYtlQ?SS=I*YTM?nZ(Uu#^mHAZsZ>_ z`z%Qr85!S6zEvb(iDoNpTyLT&NJ30pbA9@mK}<{dSjYek$-j<$P-|&I*dC-RYY?VfNW!sZgR#w)xYSY?&{h^_uuYmr6U63D0ZLd_P z&*%_qN`i1={eN*NOnS*m-J&A-TWR?W3n+wq%ddRKYn$GYAh+mT)19pBw|LN2)1+#uexw6wo3XMX4d63Em4 z1k_ab04H6v*nQ#rH%TP`jP0NU9ZAjNyY*`887p!h-VS+|GVGt9T>3cBy8Ao)CZ;|S zMRrsc1H$eQm>VG+XTes$nQP}s&}7`?yqltgu`zsZ#j1R0a&(~uZFzJE6)D(1*6cy% zPh%o}t6_b-CH;8+Es+^&&b(fGj^FSWgyr{$q4w(t-&tL5*b6l%`k;F@iZ@o3@&xBKxj zm-nhYRxp8vR~s-roEp<7aJ!fKkc=xg(K2E%n6nX-SF6;;d%$gg!o|wXeX{b@Qrl_H zPyXy}4wu>I^9M#n`iup1&Lv@f$$2$1us zwDfcIcKfQsyPzXE4!d0v6L<(QY6N3~wp} zajB1W@*hzk#At;k>n_dAFU%dnu!~VD)h^fuE2E&pLFnKJqCNi~Gv*;LZ6aLoo(Hr% z7wX(TOIxo^kCNNLzj~pU?7jNlW-sK~>$gp1nCFhFgNIMb14}NlRIs1l{ICqHa3pP{8pAHrBfphasCl9gb>tl09(cbcY28oZiabj<`b#CQ8ghb zPVl*urA(9alGbX|ae@~#3QI;&hvp9sZI3E$ylNsg@oz--7>()|J$AEz;pFcA@!21QK=?6O5SE%VB#F8F zAprpaMSia#-tE@x&H&4ExRf$A{e!SrtARua#CF-B#3so7{`(c!9_FwFwAEe9pV#X4w1k#6cw>S%LZpdox#k1AKoHaPuN z^+n`FaX%)}kBQSGad3^}rtL(n=<*%^Ic}C7oo?-W`{!H28duB3uga}$EG^k~c6M5@ zI)y$+RoY>xl8j-ZBhrM)fi{B?)`)Sg&k?scng{v9mz%Dm&nm= z5e=z7>r12JF51evU6JF|Wc(ItS3pQsLJ~6zioc_!naLQI{?;Qt6;lMC zAFN#@@&uFk#*+N(%z`+R<+=g&du6S5v4h?J3?BH>@wT)O$`U1Q%EMd2L=jWjUTc)4 z|Gd>mWRyt*cpFt5Krid97lV;I{eHpm47S4t((G zf~ifmE)|-;aA8pyRWq4MHQl_R{J_Auu+Uee^y$;5MgU42l)>&iMAL16NEa=NcIP#n z$O`gY?ea8Ngjk-|r|Dq{_MrdFAAjEk;fPeWF}d6eKu;nPrH$!7o(v1FdQF2zegwMW zx^@Gu2d?eISNijMP*ybZ$iigN&umqsqX6Y<_eE@3%1KMq^zJORfHv{ z#Kle7J~84pd-Ie}Um*ujZlHEkzxX@8fojkQc0b0!Fdkwme`pz?6|@a}1BZgr1>Llu zQ6Yzf7@p~KVu+ThjofBv1g`}d69V}8hzevrzvkk#ntRmqJPV_$MNS6u5Ig>& z%_W70>#@xG)aSgDG7ag|J(;?*&w`)!wL!xjp&!RZB=_;`VrB^+7~DPjeNmNJ8@$G7 zX3yvLLSIl>Hn)+uVQifgQm2Z-cT{jJUiA7Nd%1E4DQfwY+?Hms?qNklA|@hzu+q&c6|LuTJyNI zyzZUHCTJ2(d36vOr)jeME`?teTMUVB5${ktKGu|fa|ySKIiqYK!*9Ou#&s3nsIYV$ zsFnq==s{Xa1r0$EfqtIl)2v5|xA^Lj^yW0+wzk18NoW8B)nb?WgP9aHBDNs|-xygW zC8-{^qkn@W&A)=Ow9k%Fu=KFLqrpS+OHv1;+&SI> zFYk#Jn{VEuksIDYAxZ>Jw@k`ccSdDPV&G-sLBymXqt4p$Mj@jS6#mfUGk?iO*Q3L5 z>0-&$%h43oox{Kk1l*34eC5sk&ryPZ+t*ru{IsjKCS#@kQyfU5K&`3VSdv@O1)kJ<1%=d4s;Z6^hGdg| z;o#cw@fIJ{#d-=udjvQ95<#-jA$nl6V@9A>Vhrj*H#orlR)olUYC%N1IA;oPY>X;0 zoJy%;uNXMnSGMy0U8Lh1ZhA`Hx_(GHi{s%nvQ{JLlrtxR=u-wO>teld!2=PwKM%S9 zBt>p@HBLn0Lyfjd(3wrYMd7UW)HiM`=>xc!d0A)q1SQ7hk3G)|tR0oR@Rg8eHjFXq zr*vOg6M_o38Je7YRrquH|Fi%AC_Jo9$is`~wLk(@3+=HozPqSiKv`h<1vi|nKUs9b z`qi+>l28Z65fXY1o0rgQlRjlc9~AMhclzwZkG4l68`%X%Z=>48tKOpryFDHkfBlU6 z@_U*h-8#PQv*HUsb?X|77L_81L{U8oE>1YalGw7OCVkAq-i>sME@*ik`}v8?o_Dn# zo}8S^_Sv100N!_chNh(D%{wpAQ#-Rtku%i!`~9J--AKWM$x!&Bn_~~TwwzQC0w#To zT>Pr$LI+WHZ4=R)B*b^a^?Rv-fm6r3mvnTAH))J7i2m@uRbqHAOS+`zR`rEbuCqdT zLHRft3wCUJ(dy{PS-?>!nCVr&oW_N*52)leP*UTTzQqRuE-s&VEv!vNpRE3a@cza_;%yH{l<- z{EDn2a>x5wA7gY7sUa!}|J=-)y`d#;2%h0u@23)(uB`aVy_uxBFvGL`SFRw)h-W+Q2q3qJ-DSQ z^kzM=DXS6n@pE4E`C)a7qkw)*qepx1k65N$(A6}+BajK0ZwX+mTW@o?+9&hbgWhC;-dawqgwY4fmuprLgc9J`st>Bg` zQzYKwyt{eE3pdr(1xdFw(g*=NUDt>ZDd2*eHT+hj37n$E1Y9HW4bnrFAbNUwe_g5R z1*zU9kR3Z%oE5kWsxAd}##PyXgHN^oDFTCLob}K4#BAA) zY4Om$xLIq=TCtpKcXl-CwDg8#=+y5SI;Y$dQoQAIJ6_ZESJjzaw$ixPF$hzkXejmM zF5d&xaL;X8cOUIQi6u3Lwy;f!;7U$WS@oPNS~=E{fbO760pW=-W%Zx!&5My(I3?QD z{>MzTx2dx>#9XL)b{8jeB2uH4^efW_ps*I zWYhL7To#`w@lVXzO{v3glIDMk&4o@{wa=ELXVo2DJqVEO$jfQ;Y#U-vFvh>mG~4;O z3)vPK>*~ZcNuN7H-dK#S?*;2tSp9iTdXJ|XQv3OTLx3(Qho>U)jlhrB^az}_V*#d8 zQKEpG>Go|}K5xn!3sVE|FBA>o6yS7&%Ma+d2&;%8b}Oo?T4HY((T=~ZJ9C#aQ||nl zk)heRSl9~{)b=jQrxv#QPl(nomhlkoA5R!WDh*!ZMNzv%{?C84*}1|Tq6b1FvOZ?- zNmV0wUJ`^#`DsfVYXOFGL|HesL}rvCjp&@F)IsyW&(433Z6p5Z?^sEOdbsNp%>Uw<*O1qfO{|=&yv1KFiFFt zBE<+)x)4z|<2N3!$@n_-u7s6%ct@bIvtx=@0Tu6Wd}7^ij&bn4y z00MrNq4pJ@ z?ixX)J4U)|kd{Vx&U}CWcaImBFSsu5IOjg+?7jBdYfW?|pPecIK@cXl?8xgu_cRR= zlSVKp`bI`T2cH*91FW*b;LYt)iXDAR>p|?q(_;zMz?0I=M>Ob4;f6Ns zsY27t&j*E@@55Ve`k?IB$%`pXp8E_e|$ zJSmtjxc#=}U#jHYx%R~s$2MTt7&w^m>tk~NYVjb7<%EbZBFLho=ODp(maiC%Hsltb z+viRJdk+C8=;};VW_3_l1G=u?k5^yC45Uhgiy`k|Y4g%aNeMz2q&Xf?PnCTkC*h>4 z@$1+Za3{_MLMcqRdeJ=xuZ1pS7X1Z&%oXfB1c<&xRF4=uK%0X?+~v5Oze${w7ea@n z*KpWqpI1w+=560K@_p>1FRH9cN@?wprSe2ZWh2b!eu(Lv7V=od*{Yw)8vF)|jNG+% zrm}(e$U8uyXgdMN%KV19ZH@|@{GG>b?5|EEs3N=KUoxBGYpdSuXEZT-1X;7FFA zhJh1W4Liv*c0iMXJ&KfWhBDsk38Oi z+V3nfI&Rge7q>~QyN34SAyxDs_6-}6NXz;%VD()Q$8|0t1WxyWe|W0vN2=7tma63S<>mRv!Aazw=Uj_E_XkTaD8g zzI2Uef?xE+vpl8 zA$M>w;Pk!^JZ}g@c_{9sulQyRDQ1_$Zz`K=UKK4GjlDcKOujpZ8`?M3D#dtUt-hT{ zkesY>$+yBQ&l=fdJwaE8H-1E8R0`Pc-AMOz?@v3I10o!mfc^Qv?Uk`3n_GSIOmR9ZpJ1e_90{|fM zLfKDuQ02EkI^;8$P$AuzH^SCEpPYdw!u^A&RnfvLu!|RSrg)L%RO3Le_ALD8n}auB zMA#KnXx0y(miZ9w+|zfx+IG1A`t=%&`$Xbvf;kYfd=8)`Y3u@^$v(X=$p}8-Vw>)z>@yQH*E#mI~P#hwt zRhtMje$Mf{0D`^nRoGF=s3>D?EVnplDU}_E~>6#~d=33Xre6G*a*t5^g(>i;5>N1)Av73jd_*-So#HAk3O{|*$ zFxGQFE-m%jG5@S#Pp)Daf<>OrK&q>mydt9_dw_Q3v+IkD!}Z5%yeNKFXlf zFoB2b&4#3FI%A_r63g|_7`H=2ppetq{N}4($y!m|zkG=GnRis0TOu3+%WzDnHaGV) zuKD|IQE4Nz&y&aY+pKr`yT};Q1O>3K01JvZ;5}?jJ6p#GaRHV>pZp}-diEvLe>DGd z-JiN`b^TstUt#C{qN^Myx!F&~reSbZNiV@)*PmGQp3Hlb5Ao~pns6cUxlfPePKj`F z_OXHY<#ENLzxZcP#c3s{*$l`Z0RD?w1BN!&HL*xPOGs@cYU zr!}O5)99NSKg}j;(EVM1v~6}I{M#R%6R1l28-D7IG|VMNPC zZcu@bUUI_fxAMViL8LJDdS%MXd*bM8#Q@+^w_+#b3QJ%1rIP+O>t)1Udpeo`jvNKd zwtJc0ZCFz0HMYzv{=iQ*d^+s?)gLVO>jVq`j+dpM|I3gQB~!c7<^|5l1#s8ySCzbC z3nLV{+{xe59}%~JIK@3Q#gkiAewX&bzBrgro475s1o(=pCXkL#S4KO?t$i3vfBXXWlUY3#4=Vp-d?rh;k0Q(2|ufvqZ#u#;QMm{3Fa2KN6ty=9; zOVv(}?s^pmk29EbXxJ_d{Am2?#Vm-PmmGb&o<8j-^4M*_PxT6?pQoe=Oo|Iu({LsUlzeqlz_*% zU&f)t*GheUn(LHEN!-7l4Bhn$-=>js1^th}u?Wlh4|c0%YAX4AU$U`Jr{3mpyQcoR zQcV86^|^_H{0_O{1+@?hIochPgr~?q2=ho_Qj)eRIt26sN2*FAoM-ozfrj?ltDt7v zT+Z@wDwa^vRe!_fv*JPLL@LeU=JW+H#PADAY4JtKe*4| zShSv$VBG8cZ(xknXXZmm*jL@uD|?Ae{1y}0KKo-f!Kp<(GZTCJ?Ng+^*WunA4@l;6!3;>l zPV`~vFK2y5_9ev>j67}DptD!B`MC_9lorMPFJvI0_e6%%V^YpW*umO|2nh=bNiO*& zI|0WW;+^^CGsA~C12xWpj=+2B9;uW|Wn;6etoZMq5_df@Jl7Adgv&qd3ap27-kEg) zYXuy50I6FD5H<&5$yMQ;iegSb-s0T_;+~M_@@xCw5SL{~>66Ea8{JfYHtdq)ggqoZ zwRtt1H=6raJ=q0&P+DdK1k7*v$$p!`)Vsr}Fm}WV%4>v6UNA0dPWg_EmOhZa{e}1}EynDOpNR^q!A4hqY z=C0!nucEYIEU`&;T}dSvbJ%n8Z(&BMe+Yo>o4%i%tfREq$$^)-!6cV_ zUPs+-?zrF9yRdcSXCbC>X#`?>p)AJ?t~7rc*Bs@5TA{IoIiMyQbsHvz)zUxVfpaVZ zxaqWkb68lQtB5?R>lGk1v?8TJbI_UQ_{;tHUpc?uF&{8zVLw_GlgjhiIarUut$J|UU8hDuz z(pg;>PKg?mX+< zTBc7t09kOUbY(c8IxxB-yHx(0K9T!e3S=0U-yiqO?=-3{jZSQ6d|&ID)}5Y3X^89YzLaYrVFlC)OTnGHZ&!wo6!rSavy{;Z*3C z)tnwZQ%k-Z;l6_wBhS8=y&g(F8WR+$F3fE7P&YSU*p|tTT>BfC&jMaqp$JX$5CPXL zoYJu`+c?cJF#gjFG5p}0$~*tgQ6dJ8NTDB~d{&R15)@an$}FROeBkAP+Cy}eXlmw` zm;dmHi0sKnssX#_P2X=$c2U~Y%c2_O2ZUL6(1eEgso{el5-p|Unx`2-p{fVs0<7aH z)pGWhgHB{{eG>$YL@U_GCMN~&eM_CGH9^|^m^1m^Ic(a90li2pvD{LD8yN^C%pw7R z3RrZ;@^OUW|B2Kb*|_4wSL~hVTpbn&HA)PUN_=Td3=Z)5GpE+{lv#7Ri%>8v7^f1#3c_pEHN4UdNbFNQV zN~vEQNZ(Rp-I}xpoNxoHt$VsLO&s0sY*@EI*j1l{0$ue^%6r!|P(Md%xQ5>OSEa#$ zdPbKvQU~jO)mugLZ=RkmaU%WiF};waVh_$e!S0(2r0T)$YxWiJqS7EOW$)kFJ-rBmq9EZ0};2z?!6bGC^h=eg$RU;P{n<>um5KNXZAZsAsP)b zBGNlR;%NBh-<9vNgl@#Rb@VIinONhUpZynz%22D^R>v-H(*54RpF~sVm%+zW! z4P-t~Hw(JI0lXyoL$i$Z-}I-vvL*qmU13dc=_~lyOBem$kYJN=2&B{04QQ`k1lRW8 z$$C<|)2&a=H;~?^5xjAv>fqzTP8HpX2DWcjQ3=>GLUcijF!my}I{5nrOvqgN&z4yk zQR8IMxt5iPSl*G5QmXK={2PqC_SfCg*^$T4H?=26*Urx++P}TBE+qxA5*daCsy$ox z4!{^3yhoSc?y)?jBQMI%7?SvvG#=eRfl7iqa%vHEw+!W__dp zlrmTUdNd~hoV-xom>BPY@6Wi5w6xrsB3p9d!$6tK>oV~6k=^x~U;j(2Z(O-PqEZ9! zrhwp_gZK%=uABc}N-x8jW5vJ~=LkDE1GarXnc74p973Y0c;E(;nON$GogrF&OPNB~ z2?N&80S(9W1PhjI*v=6E_AxkF--OS7ovE$mk`(cM(tSzCUCpaK*$8arItQgEf0KX* zy04<{FU|0~6-Y}80#CZ*>!B|%-ZmGU>E`r49~kCN|FJd7YH+eDxwJ5WVB(0E7EIDW ziLp(#1ytA=6-f9>fT4BzvMSmS8kjku5fhV>|B|NoBoaJJ^V&wP4dvth3aZ*Y4G`*G zwgP?`Qxk|i#L-$>?{x>ta@+UOfi0NU(fx;w0~9P)iO>XPc~}SnUN}?72%w(=BDW4^ z?BcG|zsd>{&da;X(5=Wr(?<(GTd*#mlKj3;zFyIBtLqTLGI*gOI1?Zyz+9yoScNl? zHqv|}0bDF_m5nXcVuGLrj?{+Ca&7UH<<$l%8={3*F>eKehA8&#M0j2aa-^tb;0gHv z5mr~=km@b=@4=5PQQ)YB@75eS=P-LZ3L=&}Ng>aq)!^O@ncCvHq^pg(OB7j5GL~vD zd~F9G=x%w|2-5;y2^I}Rvche-gAx-k7tqj_0k_O`=#l7wA27}i1KE7NWN+ZdjYGw^ z+dn^HcXl7Ly5WpmF9(gmnFi9t()Xl(IV9TjC*LRV(PT@s#cmbi@9OzY<^nqEGzm6< z)vFUgUOz5|joG(%q29#m5Qch0k_qp}6VW`4qc+V>o4~E*=stVBaxq`7bJVZO&R(VlF|hZ%or;PIK8U*0^=cZGCWvbv^$)D1KkANu zT)<1<03VM;%6_&Uol8BhT%0!UtlJF=%N_VLw+)tKWfx#2(Zf!xm()?-nS7j_+nc@x zHKWKxM`rZLV8!h}ispk?u`h_R%<)LJG(%tW#wh4aMu$BBb7R_G?L`HK#u*sqKCxsy z$lqz=1N)k9l)~h~%yBni*e!O}k#5MiS1`L-Cu%G`H&jWdxy~c0a6@ewD(&g40;tkJ z3Y*;Zu>lIC-e7}NOcjeeZry3>#)?h0d7eqf>>N&Sv60y)0ZWC-{!{70hilbz@i$JDF+tT1E5)^ z?npv6@a~@OV7wU)`*})!35l#y3`^;OV-{!a)!65~f$xk35t-9dEEt%>4FkReM{KL9 zJr$VYA^Z4-h=C6p_)JJ>fDSCuu*H-aD{q}lh(2}^oKunU^_u7nP7GF?=B{`zdg!{) zB`-d{atbsWDdGH6Sn~lxB@Bkj9-PGY7kr`vY;(8E zWbx)?`E`iX_XDX^Y?kluFTbf_6PekFWr|{CftD-gj^+c$XD9GPW53+fK*325)~~R( z{r`>v6HWp4lMxmC&l~8Xcd;~@>Np?n{nTmpk@L4%u#P+C(goj~G%2lplc(JWFxbW* zKNej$kFHv14U|qO!FzH1SrhBy#1vo9{c(kK{noF~M4~ z&Yeoi>H<3Ak9~b?ZC|ml0L2R)C?8gI+wIL&;zHnl>m;ys)KOLC%FuH~(+O?w8LYiu zoSAcs`I|~xkY)EskR&*1CLg(`{2cY6lX1MZ2?SJj0PgNadI6L3tw>LwXB&MzJ&}go z8x05v9MRW++B7sM%sSd$?oab+s19Fqh=#Gi{ioj$4&nzriUm3Oc;5dqyw_=-loo*L zns`mk2#H*lArvJzs;q&jfW=zVUL_KUjlD)tvKEg|3q1%`2)5sVAEP4O=VCl)4q(R! z#UCkxv0;pEmrvp1T)>aJ9x^ofI7Q@Zg7%@`n*;Uqbo~a07O|mU6hz|AuTrp9uIqvBGnC zwM)Izh}T7)jU=%BTL|0lQ$VT&ZD^7(J5h7-Y7xO%@%UY_?%EUpq86Nv@Y zEh~SS)oDJWa7htK3K?il=V`;y^fvVq01#U8Lf)?r--wAml!IJ_)(?9Nn_*paNFbBN zd17oVikdPGi-bnN?eP8MU^@X}ry*;_NYqrlvjeKzFow>ZGO5fzh=bw@Y*Gc~{Q$I% zl{?)~Dh8%-v2+>$$FYTp2`^D|$lsD|ts)kD{<@Dj^@yN>{9xOs!T^!qXzC-$YLqzL zYiN-K$0oMC-6v@~0s7YY@5cHqGZZ;-R*0CGQhp2?4Fb@OVzd<0!&EqKTiN>F2uRdqQrSH*=y3E*Iacs;Z_~hBQm&s>RDtm1fzO*2L_Y-!i(}rsu~Fm>QWe0Fd5bAi zb|=a=l;^)@#}cewlySRr?z9_^8mpaG&BZ1<`Vs`op3DakW)Y$Jo0W#AF@OZKDR9X$Fp zJi`_hirlx=wB-+tOvCyMP+;PA4<8sss5qe)Dl+ zGJ(TtU{c%VHyY9hn`Z9Gy+}4wL9Q$VTomll5J~d*Zt1^|t*JqOkz1!>=Bj8tsQV%D z>YSyM=}7mRTe&*>WeW<0>+ez+8eGx!yiQvEb*K{`;6w721$R%y?D6v3{JtCiuoimx zJS}VW=B&{$HCJ(#9iY6_sj%jb#Mba&VCPA+tm|&JSzfsB&`R*WbQD*x|3Vd|HLVi1@L#Yjf}}MigMzOc*8jPeyaJpWP;doEd~G< zw`=R`NzpwaVP8R0AHVc5L*2tP5`*pnVIJ9AYump=jM@@&xd2AJOSvO1d#+=E-gKE) z1uz4AfWEtj69X*^3kxTgpiAJFIsky19hQW!poZ~nAz3<2H9zTA?U-`ClfP)7O=v1s z9Eq`mt8p1-iEDZqxCN&=6j5FP?VOPHjo(bb>#Xe=LNb>!852=_hY zimvpZ%%_y&5n6!;enbt@Q;X4Kg6}?Ga+|87R{9)w?9fq?5vm0Lq*yx zwb#8ji~G26qE>KNC%o$ySBt2}y_u{qso9!jx4VNW>iL~>HF@)U;s14edwpml?6|+; zLG=k&=6v-tr1SP`m@XsXoBJ&(VOI5BZOGMKNk!Ks(k1yNXUh^H<`70zRkjSSoCqBM ztVN;Xl0~iC=`Ew&#BIs=N*fS&h=&8SG9zHd`vZQd2}^gJJ+&4;Upzx@y$`?FuIaq@ z`f(|3R6(GnKc8iYrR?|kS*q5sA4uI@$sx@Hmu}cHWv0aVo9k!r-GjC#V{hnd-G%qf z1obVxl+QKUr@qNf0EIu=bVZOeTX9oe)xymQO+l&BB7&H4rj((~)?n71GROvFF z)@2cUsjeSLkB9X7Dd2^%44WF+>sCZbjfGe8&d#w~FvTa_(uhNSO8g|po9#C3>#`|> zO!S<8p!m?snsg8V+2w-6fQ?k_u4pzWTGm?f|8CFKXgdr1ictJq2sy!u(lFBT>BP2| zR1iCO;^)jLCGmyXyw(fig58ERK`gVi7*&aM*>>*!M=u_nI_Y}0JBZVTb#FNC-)XHh zPA+Vc$ZHS>^Ex^pHG0Cw=b8makR_nw7~+MB1WfM-yl@a))H$m}zjIj-R*&G*{CD=O zWp51wx_SLc4h~20!U!bs|E@=P8ZmV|i0+E@t0#5NqPT-YF5(f_dKl$!hbG$BW}>Rq zRj%7LG2ez#nmX^|$qC`0=kRsa+1JjnGEh%sR_+#yIepsIvsDAML8Z3=fJ};f2M=%s zWlVtJZnWhWc4c*;Zt=?5X^`=GmD{5i>&vG;x_hx_gTTOo>Njx%mLG}Xt zMWbgcN&|Nf2LZXna$TluJ+V{Igm9a>E^Z?m{hr@Qy?A~zsdyu~zd{KO4fgBWOBrMc ziJtu6!U0=vn>b8_ANBtz4{s++(1m%+0xgrTyU!y=gE3RXp$D8kMLbTnhqFtc1#@;Z8?c=}-^T`RUirwc&?7^(A!jEskj?Yv0;lQuvbq_#nmiM1 zGNsOWF?oB|r>i{THrF8?M+oQPoUxg)yD|L(gP|scmo#ov(hOKvxMl4MXTvAvftC&y z$CK(<=?L=H%pLKs^xf zg>_L4-KJsZnpm(#zG8e4J^**g}2oMWA74?qI>8ULbHGhAG?FuL!HP$PK zCVt-lR+)TUIFHTU*{n|ey7E@uI3#-S|HxtckTKu2phjUn;zJB$k8+o3fJeN9jOt%Zt)zQbmO;-Y7 zV21Li1H;4Rck$n`2>MHv%e{+Hb>1lH8JHP+5#jpd5pl=PG?iKr`ZD;=mR1|E=)KWAQ8S)u>XX_u8#j!V<6HrW}dRTy~ zrbYfvi{cg7TD^>b=knOdh*l}wQ{LJK$VD|{GM9oOk=KXb<1(quV$@ArX@E|`VtjEV za#%26KTYK&ZJs(XzpdJ9<5yoN)!pn65I-<@YPmW;rmCu4B(=5SJP$j1>zB@tB~>RM z$5gd7qnVnitE1zA%g>*pR#z|hF~N2_1OAiWLkHAKUdZoZw^1cnfGn`4-b$#1x9l6# zeDvgF+`Bau2=ERh~`XqTRyxT1U)7NQ_4?_C0{Zqi`J%; z_sIbgAMf;p;~NjMh23_q@?%e^80rwo)B-A|HmQh|)P&B%6 zW<21j{+sbQ%uV&Mb%EPdf0(Co$RnKcrPywI)7gUm^qeEk=7WskwA<71(LtNDj1cqq_}~(+waJ1xdNwB`$kyKKuI+rN@M5CnzyZ}nz z(Ew)>`p$)`UnO@44 zR?*-)rzz6{CWFXIOaW#~JcGEV?}PQIBFf4FE;|>^1G_z|xtbyM%=U8xrt93=zX) zIeYqW$-HHnq#)$>-x;bM7?;tfzRXgGtFp(DS>rphOFQGH*Fh^LV?lZG)xTa9iTwQR zsF#Sx)Pw;73q<6D`kdEKGh2#z@T**6KzlxPq%b@C5s(1cG3X}ArTpJL>_E(H5#6(o z@egZxE!6ZdoxO;&@ujaDv&>Yf1@1vxzQz?`squ@TxAem2&yr!ku5Y@1`B&XlDj!Jl01Bh!^K&ORRYjPXpxP*MhH5|?c zyit8)RWIza)$r{kP8mV(Ugm?JDvnPsr(r2{JmzK~a z`gNz@fc{CdVR9|*H;_dt*vC0phjJ=@7?nzPo~6bTfmnbpvzM%7{!i1{{bq^xN50sp z>#nO!wb{{Yx0WC$=}+B3)AHtpc*o})`{$7G5)JnR!JnzIE$jS=Y_b_%uzl_*HNVFD z5%oYx0{dM1<;#}<*9_+xBb({r03Q|0{r>?1Y>6OKd4VJcOP2Pd{DS7D7+m!UF=c}E zTVkimz{Y#^j>uN41IOjk%=2ntFS+8Vz_@$T-KjCP`F!$??B&Sx%KeUm%N@a5V-AYT zbhrj!G8;-V#nXPFSv6mtuU5KLWU#b< zZC*U99l_iHCplxOW4LR_zoBhd;XE~bu0CYld%s{c4NQt0Pk+GO2EfNTEiH09M*{eu z=Mz}sE~tqKy=?eqv@$>pqUE9XX3Bf>Rc`wMwZS}YoE6;x?Kk+#+At=Dn%`vuYfIC< z{T;14i2_8beRvv36G!_XE^S-F%Y%?Wv|t3!9riKr8%(eRD7lX-C}`~U-3Fh7h)D56 z{x7zF*c{XeKwsrqf^wd^XO;87^^w~`+{qLt-1K9;#>izGp1ER5{5r2;`tOUuPoBZ4 zQWca*=rQ`!fod86d&xdrm-*yvkm{`eKr$L_RbrOT=+RL!<1wU83!o1KVC(QeiZ)prmHE{x60G3Nc;ksezB1biBU+P1R z-=Aq;DDs@qd(BgtDOAc_MsD#wsp9IB@>6~GcSinwd8pWvOE0VcEPCXz9rQs%K!lCa zEsnlPvbSGTbjzqaX3B{50Il87z`(Z{9*1`X^9GK5^M!Vxh&Z4v2!TkwxzeJ1u9B2{ zFykWdRQL8C=}l~v47d5ht+&V+>G5{{FaPI+rNFdAqNS?ps9!B}yoUjN(VYaK$*UC* zQYqm9colTt02kTKPMly6!H3!E@$l3mid3}Tzk+?JIOHmfHHy>9Md%wrVF;4jrsihW z^j+yPAbzPC*8Wi$W@WWnghr!F_orN(zJo=%3@Ty1Sii8TS8I3Xevgc}xhf6jp4Krg zWIvUzV0kf3HM&bte|0&my-v?%8I;V-ac;dBzWRnyMjX%$kU-^18oNOQwojU%s%95H z^aJxn;S_H>1`}MlZfX9>5e9O*D6G7VNT18l3XNE@R~C1`?iyC>~7s4u;=&IUr8nKnkK z5@6_>0@pABm>6W+905%|*Kc zF4&3M5A1h=I23bl3?vS7aSf z7Gc2q+GxWL;Y9}uDoYq~sxmlgY4GJ))=m>SKnNp(?F0peF=Ozk_%zXCRsFWQ89t;v zIScw9+CyV`+tUYi>Q{$I65Np)NGqs^rx2YP+EXYO^1oXZwX{f<13!9-rFu9W&H~P! zx7k@3NKP#>S8G+^CRbv}$4Fu%1o>sitJbb212cN7;LOHGHbRdCA8N{H=uKV$nWQrv zVW0bafW8ij+4$$Q6*%Xr&;*bvKUS4G5&OQ(0)`?tQF*>YLLD|tl|Z(nYFV(;6#sMe z5OsJcyzu|{f6|a(Vj}HHF!UjRCQDEQc!X3!=SlrNOqhktu4im~xhfBJhexJG)u(j= zS*6mQrs4I?&Gz4SQHcc(fKuivQT*3_l=&O|7|4H z0vI@uyI*{!s?Ru#$R(^ArGjcd*jbEA!Z4GGrE4BG&@AJ-~*}1 zCl85R^5A??Jv+90qPfp7%awPaZkGuZk6*AQLge%O%W{H3cSD_jpWFRJAvfWdPY;r9 zj7U-5C8slv<-S#w