From 9841ab27af45ea8e97c703de7f1e0a2da8ff4337 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Fri, 6 Aug 2021 12:51:44 -0500 Subject: [PATCH 01/27] Create post and add generic headers --- blog/_posts/aria-lanea-blog.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 blog/_posts/aria-lanea-blog.md diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md new file mode 100644 index 00000000..4c1ff76f --- /dev/null +++ b/blog/_posts/aria-lanea-blog.md @@ -0,0 +1,18 @@ +--- +layout: post +title: "Planning for the Future of MABE2" +date: 2021-08-06 +author: Aria Killibrew Bruehl and Lanea Rohan +--- + +## Outline + +## Project Intro + +## Documentation + +## Testing + +## Wrap Up + +## Thank you! \ No newline at end of file From 1313713487d8cde7f12481f1a7c144070a620123 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Fri, 6 Aug 2021 14:51:16 -0500 Subject: [PATCH 02/27] Fill in Testing and Wrap up sections --- blog/_posts/aria-lanea-blog.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 4c1ff76f..c0773c1d 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -12,7 +12,22 @@ author: Aria Killibrew Bruehl and Lanea Rohan ## Documentation ## Testing +When you're going to be writing testing for a large project with multiple dependencies, the best place to start is by figuring out what you should test first. +- Levelization and bottom up + - Austin's vizualization of MABE2 + - Assuming everything in Empirical was working correctly + - Flowchart process (insert the flowchart Austin made) + - Why use this? +- Using CATCH2 + - Words of Wisdom (what was easy/hard) + - Assert issue + - What to look for when testing + ## Wrap Up +At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. + +- What is BEACON? +- Include video of our talk? ## Thank you! \ No newline at end of file From 36501e7ec3a84e9a2e95d7e6df7e2b55b0b8abf5 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Sun, 8 Aug 2021 23:43:20 -0500 Subject: [PATCH 03/27] Add Aria's part --- blog/_posts/aria-lanea-blog.md | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index c0773c1d..9fb96909 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -7,9 +7,28 @@ author: Aria Killibrew Bruehl and Lanea Rohan ## Outline -## Project Intro +# Planning for the future of MABE2: A summer of documentation and testing +​ +Hello! This summer we (Lanea Rohan, '22 Grinnel College, and Aria Killebrew Bruehl, +'23 Reed College) participated in the WAVES workshop through Michigan State University. +We dedicated our summer to documenting and testing MABE2, an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. +​ +This project was guided by our wonderful mentors Acaica Ackles (documentation) and +Austin Ferguson (testing). ## Documentation +​ +Prior to this summer there was no documentation for MABE2, meaning we had to tackle +a huge library of files we had never interacted with before. +​ +* documentation process (how we broke things down) +..* obvious things to include (installation, quickstart) +..* sales pitch (why use MABE2) +..* additional things to help understanding (modules, orgs, etc) +* what we could/couldn't document (because it wasn't done yet) +* feedback process +​ +You can view our documentation [here](https://mabe2.readthedocs.io/en/latest/). ## Testing When you're going to be writing testing for a large project with multiple dependencies, the best place to start is by figuring out what you should test first. @@ -30,4 +49,11 @@ At the end of the WAVES internship, we were given the opportunity to present our - What is BEACON? - Include video of our talk? -## Thank you! \ No newline at end of file +## Acknowledgements +​ +We would like to give a huge thank you to our mentors Acaica Ackles and Austin Ferguson +for their continued support and dedication throughout the summer! +​ +We would also like to thank Charles Offria and Cliff Bohm for their support in understanding MABE2! +​ +Finally, we would like to thank all the WAVES mentors who led us in enrichment seminars and everyone who gave us feedback on our documentation! \ No newline at end of file From c0c3368537af9f62db4bd06fa51ee3c3c73cbf32 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Tue, 10 Aug 2021 17:54:11 -0500 Subject: [PATCH 04/27] Start rough draft w/ Aria's part --- blog/_posts/aria-lanea-blog.md | 114 +++++++++++++++++++++++++++++---- 1 file changed, 100 insertions(+), 14 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 9fb96909..ae85b30f 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -7,31 +7,114 @@ author: Aria Killibrew Bruehl and Lanea Rohan ## Outline -# Planning for the future of MABE2: A summer of documentation and testing +# :soon: Planning for the Future of MABE2: A Summer of Documentation and Testing ​ Hello! This summer we (Lanea Rohan, '22 Grinnel College, and Aria Killebrew Bruehl, '23 Reed College) participated in the WAVES workshop through Michigan State University. We dedicated our summer to documenting and testing MABE2, an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. ​ -This project was guided by our wonderful mentors Acaica Ackles (documentation) and -Austin Ferguson (testing). +This project was guided by our wonderful mentors [Acaica Ackles](https://alackles.github.io/) (documentation) and Austin Ferguson (testing). +​ +## :interrobang: Why Document and Test Code +​ +The ???Michegan State University devolab??? has spent countless hours developing MABE2 and preparing for its release. Proper documentation and testing are essential for ensuring that MABE2 is accepted into and used by as large of a community as possible. +​ +Write the Docs (link!), BLURB, puts the importance of proper documentation quite plainly: +​ +> If people don’t know why your project exists,they won’t use it. +> If people can’t figure out how to install your code, they won’t use it. +> If people can’t figure out how to use your code, they won’t use it. +​ +This is particularly important for the end-users of MABE2 who simply want to run experiments and do not want to waste time trying to understand the source code on their own, especially users who have less coding experience. +​ +Documentation is also important for the MABE2 users who wish to write their own modules or otherwise contribute to this software. Write the Docs stresses the importance of documentation for potential contributors: +​ +> You only get contributions after you have put in a lot of work. +> You only get contributions after you have users. +> You only get contributions after you have documentation. +​ +Software must also be tested before it is released to the community. End-users will (and should) be cautious of code that has no testing framework. Without code being tested how can we expect it to preform as expected? We must provide a testing suite to assure MABE2 users that this software runs correctly. +​ +Testing frameworks are also helpful for future developers who want to make sure their contributions to this software does not break any previously functioning code. +​ +## :book: Documentation -## Documentation +Prior to this summer there was no documentation for MABE2, meaning we had to familiarize ourselves with a huge library of files without any written guidance. Trying to understand MABE2 using only the source code and frequent discussions with our mentors was challenging. This made us appreciate the value of well documented software, and underlined the importance of documenting MABE2 for future users. ​ -Prior to this summer there was no documentation for MABE2, meaning we had to tackle -a huge library of files we had never interacted with before. +The main page of MABE2's documentation has a more *sales-pitchy* feel to it. This page overviews what MABE is and why researchers should use it. We also provide an example project to showcase the many benefits of running an experiment with MABE2. ​ -* documentation process (how we broke things down) -..* obvious things to include (installation, quickstart) -..* sales pitch (why use MABE2) -..* additional things to help understanding (modules, orgs, etc) -* what we could/couldn't document (because it wasn't done yet) -* feedback process +The documentation also offers step-by-step installation and quickstart guides so users can quickly familiarize themselves with the fundamentals of running a MABE2 experiment. In addition to these basics we dive deeper into the inner workings of MABE2 with an overview of source (modules, tools for analysis, the MABE core, and MABE dependencies), a detailed description of the different types of modules, explanations of different evaluators, and guide to the essential TraitInfo object. +​ +Despite our diligent efforts to document all of MABE2, there are some features that we were unable to document because their implementation has yet to be finalized. These include: + +Because MABE2 is still under active development there are some features whose implementation has yet to be finalized, meaning that for the time being, they have been left out of the documentation. These include: ​ -You can view our documentation [here](https://mabe2.readthedocs.io/en/latest/). +* genomes +* brains +* worlds + +​If you're curious to learn more, you can check out a live version of the documentation [here](https://mabe2.readthedocs.io/en/latest/). ## Testing -When you're going to be writing testing for a large project with multiple dependencies, the best place to start is by figuring out what you should test first. +### The Beginning + +Many large projects contain complex webs of dependencies, which are files that rely on other files. This is the case with MABE2. Dependencies make deciding where to start testing difficult. You need to be sure that the code you are testing does not rely on any untested files, since they could contain unknown bugs which may lead to errors in your current code. To avoid potential errors from untested dependencies, our mentor Austin suggested that we start with code that had no dependencies. This method is called "bottom up" testing. + +One way to organize the system of dependencies is to "levelize" the code your working with. Levelizing is the process of sorting all files in a project based on the number of dependencies that they have. Then, you can organize the files into "levels", each level representing the addition of one dependency. Levelization can be a great tool to help understand how a large code base is organized. +** CHECK THIS ***** + +In our case, Austin used the levelization of MABE2 to decide which files we should begin testing. We've included his visualization below. + +[ include his levelization here ] + +One really important thing to note about levelizing MABE2 is that MABE2 has a library of third-party dependencies that are used throughout MABE2 source code, including Empirical. We worked under the assumption that all of these third-party resources were working correctly, and thus any error we found was occurring from within MABE2. + +### The Process +The process of testing is not linear, and is more involved than most people first assume. In its most basic form, the testing process can be summed up as below. + +1. Decide what you're testing. +2. Write the test. +3. Check that the tests work. If they don't, return to step 2. +4. Make sure you have tested everything you want to test. If you find areas that you missed, return to step 1. +5. You're done! + +Since we both were thrown head-first into MABE2 and had little biology/evolution background, deciding how to test a specific file was pretty hard. + +At the beginning, Austin gave us checklists of what to test in a file, and gave us guidance on how to test it. Once we finished his checklist, we would go through and decide if there was something that we missed. + +After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. + +[insert his flowchart] + +### CATCH 2 +We used a testing framework called CATCH2 to test MABE2. BLURB, include link to github repo. + +#### Best Practices in CATCH2 + +### Testing MABE2 +- Assert issue +- Makefile must have debugging turned on (use with pointer tracking) +- NDEFDEBUG flag in ErrorManager. +- Put things in MABE.cpp file to check if they work (isolate the issue) +- lldb/gdb then bt to frame number +- check Empirical test files for example usage/tests (only helpful if they're implemented) +- Copy paste from old test files to preserve boiler plate stuff +- ONLY INCLUDE the file you're testing, not stuff included from .hpp file +- once you get one test up and running, it gets easier! +- ask for help! especially for understanding what the .hpp file does +- check booleans actually reset + +What to look for when testing +- test all booleans +- test every method +- make sure to check parent class for virtual overrrides in derived class +- make sure to check parent class for non-overridden functions +- any time you print an error message to the console, you should check that an error is thrown +- side note, also check error message is the right one +- + + + - Levelization and bottom up - Austin's vizualization of MABE2 @@ -46,7 +129,10 @@ When you're going to be writing testing for a large project with multiple depend ## Wrap Up At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. +The BEACON congress is [BLURB] + - What is BEACON? +- Include abstract? - Include video of our talk? ## Acknowledgements From a5197fe0cfe597d08a56e30a96b28a3a932d968d Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 10:52:20 -0500 Subject: [PATCH 05/27] Add wrap up --- blog/_posts/aria-lanea-blog.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index ae85b30f..b6584a7c 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -127,12 +127,12 @@ What to look for when testing - What to look for when testing ## Wrap Up -At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. +At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the BEACON Center of Evolution in Action (insert link!), an organization of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. -The BEACON congress is [BLURB] +We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording for our talk. + +"The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community." -- What is BEACON? -- Include abstract? - Include video of our talk? ## Acknowledgements From 63b18807e416b82d1fd05de91fa976c3786d9258 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 10:56:56 -0500 Subject: [PATCH 06/27] Finish Testing-Process --- blog/_posts/aria-lanea-blog.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index b6584a7c..dd2e0510 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -86,6 +86,8 @@ After testing a couple of files with this method, we decided to push ourselves t [insert his flowchart] +In essence, we began with doing a high level overview of the code to make sure we understood what we would be testing, and then we created our own test suite. Afterwards, we would send our testing to Austin, who would come up with his own independent set of tests. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We would then repeat that cycle until both Austin and ourselves were happy with the testing for the file, and then move to the next file. + ### CATCH 2 We used a testing framework called CATCH2 to test MABE2. BLURB, include link to github repo. From 4a9784153c34b1355113a84683b2211602c6566a Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 11:03:25 -0500 Subject: [PATCH 07/27] Add Catch2 intro --- blog/_posts/aria-lanea-blog.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index dd2e0510..afe672a5 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -88,8 +88,10 @@ After testing a couple of files with this method, we decided to push ourselves t In essence, we began with doing a high level overview of the code to make sure we understood what we would be testing, and then we created our own test suite. Afterwards, we would send our testing to Austin, who would come up with his own independent set of tests. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We would then repeat that cycle until both Austin and ourselves were happy with the testing for the file, and then move to the next file. -### CATCH 2 -We used a testing framework called CATCH2 to test MABE2. BLURB, include link to github repo. +### Catch2 +We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). + +BLURB, include link to github repo. #### Best Practices in CATCH2 @@ -129,7 +131,7 @@ What to look for when testing - What to look for when testing ## Wrap Up -At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the BEACON Center of Evolution in Action (insert link!), an organization of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. +At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), an organization of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording for our talk. From 6fd43164383075cb56b5a2869b1d074bfcad1702 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 11:07:20 -0500 Subject: [PATCH 08/27] Edit BEACON summary --- blog/_posts/aria-lanea-blog.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index afe672a5..f5ffb9cf 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -91,11 +91,15 @@ In essence, we began with doing a high level overview of the code to make sure w ### Catch2 We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). -BLURB, include link to github repo. - #### Best Practices in CATCH2 +?????? ### Testing MABE2 +#### Words of Wisdom +Throughout our testing journey, we have come to learn a lot about both the testing process and the intricacies of writing tests. We thought we would share a couple of nuggets of wisdom + + + - Assert issue - Makefile must have debugging turned on (use with pointer tracking) - NDEFDEBUG flag in ErrorManager. @@ -131,7 +135,7 @@ What to look for when testing - What to look for when testing ## Wrap Up -At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), an organization of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. +At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording for our talk. From a409fcda8e0a5022de38450fd84096f2f361655b Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 11:15:52 -0500 Subject: [PATCH 09/27] Start words of wisdom --- blog/_posts/aria-lanea-blog.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index f5ffb9cf..f9d693e9 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -96,7 +96,17 @@ We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to us ### Testing MABE2 #### Words of Wisdom -Throughout our testing journey, we have come to learn a lot about both the testing process and the intricacies of writing tests. We thought we would share a couple of nuggets of wisdom +Throughout our testing journey, we have come to learn a lot about both the testing process and the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer. + +1. When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file, and chose something that looks simple to start with (like a constructor!). Even if you don't end up testing that specific thing, it will give you confidence to approach the rest of the file. +2. You don't need to understand how everything in the file works to start writing tests! Start with things that you understand, and as you work through their implementation, you will get more familiar with the code. +3. On the other hand, if you are struggling to understand what a specific chunk of code is doing, don't be afraid to reach out and ask for help! It's better that you write useful tests after asking for help rather than writing tests that ultimately end up being useless because you understood the file wrong. +4. f + +#### MABE2 Specific Advice +Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for, but also some fixes to testing bugs that cropped up and gave us some issues. + +1. @@ -109,7 +119,7 @@ Throughout our testing journey, we have come to learn a lot about both the testi - Copy paste from old test files to preserve boiler plate stuff - ONLY INCLUDE the file you're testing, not stuff included from .hpp file - once you get one test up and running, it gets easier! -- ask for help! especially for understanding what the .hpp file does ++ ask for help! especially for understanding what the .hpp file does - check booleans actually reset What to look for when testing From 4bf5212b5ca75c0052a519d7ec2358f1ae5c6da6 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 11:43:45 -0500 Subject: [PATCH 10/27] Edit words of wisdom --- blog/_posts/aria-lanea-blog.md | 43 ++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index f9d693e9..1fe7d330 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -86,7 +86,7 @@ After testing a couple of files with this method, we decided to push ourselves t [insert his flowchart] -In essence, we began with doing a high level overview of the code to make sure we understood what we would be testing, and then we created our own test suite. Afterwards, we would send our testing to Austin, who would come up with his own independent set of tests. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We would then repeat that cycle until both Austin and ourselves were happy with the testing for the file, and then move to the next file. +In essence, we began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file. ### Catch2 We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). @@ -101,37 +101,54 @@ Throughout our testing journey, we have come to learn a lot about both the testi 1. When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file, and chose something that looks simple to start with (like a constructor!). Even if you don't end up testing that specific thing, it will give you confidence to approach the rest of the file. 2. You don't need to understand how everything in the file works to start writing tests! Start with things that you understand, and as you work through their implementation, you will get more familiar with the code. 3. On the other hand, if you are struggling to understand what a specific chunk of code is doing, don't be afraid to reach out and ask for help! It's better that you write useful tests after asking for help rather than writing tests that ultimately end up being useless because you understood the file wrong. -4. f +4. Know that one of the hardest parts of testing is just getting started. Once you get your testing file up and running with a non-trivial test, you've passed the first hurdle, and the rest of the testing should go flow easier. + #### MABE2 Specific Advice Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for, but also some fixes to testing bugs that cropped up and gave us some issues. -1. +1. A good place to start when testing a MABE2 file is by checking that all booleans are working correctly. Another good place to start is to check that simple checking functions work correctly. For example, a function that returns whether or not an input is a double should work correctly. Another example is a function that modifies a boolean. +2. Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. +3. Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overrriden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden though! +4. When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. You can do that by modifying your -- Assert issue ++ Assert issue - Makefile must have debugging turned on (use with pointer tracking) - NDEFDEBUG flag in ErrorManager. -- Put things in MABE.cpp file to check if they work (isolate the issue) -- lldb/gdb then bt to frame number ++ Put things in MABE.cpp file to check if they work (isolate the issue) ++ lldb/gdb then bt to frame number - check Empirical test files for example usage/tests (only helpful if they're implemented) -- Copy paste from old test files to preserve boiler plate stuff -- ONLY INCLUDE the file you're testing, not stuff included from .hpp file -- once you get one test up and running, it gets easier! ++ Copy paste from old test files to preserve boiler plate stuff ++ ONLY INCLUDE the file you're testing, not stuff included from .hpp file ++ once you get one test up and running, it gets easier! + ask for help! especially for understanding what the .hpp file does - check booleans actually reset What to look for when testing -- test all booleans -- test every method -- make sure to check parent class for virtual overrrides in derived class -- make sure to check parent class for non-overridden functions ++ test all booleans ++ test every method ++ make sure to check parent class for virtual overrrides in derived class ++ make sure to check parent class for non-overridden functions - any time you print an error message to the console, you should check that an error is thrown - side note, also check error message is the right one - +- Creating new Test Files: Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must remember to only `#include` the current file that is being tested and to rename anythign specific to the previous test file. + +- Testing Asserts: In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail` combined with `emp::assert_clear` to reset the boolean to test that asserts had been thrown when expected. + +- Segmentation Faults: When setting up mabe objects or calling methods on these objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what calls caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: + +```cpp +void REQUIRE(bool b){ + std::cout << b << std::endl; +} +``` +to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use backtrace to look at the individual frames and see where the memory leak was coming from. +- Getting the First Test to Pass: Setting up a test file and understanding the code that you are to test can be difficult and time consuming. You'll probably get a lot of errors before you're able to get an actual test to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll most likely understand the code to be tested much better by that point. - Levelization and bottom up From 5473ca118aed856d1aa442d90d0e3eac2a5f69f3 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 12:01:26 -0500 Subject: [PATCH 11/27] Add creating test files words of wisdom --- blog/_posts/aria-lanea-blog.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 1fe7d330..d3efef4f 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -91,17 +91,17 @@ In essence, we began by meeting with Austin to do a high-level overview of the c ### Catch2 We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). -#### Best Practices in CATCH2 -?????? - ### Testing MABE2 #### Words of Wisdom -Throughout our testing journey, we have come to learn a lot about both the testing process and the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer. +Throughout our testing journey, we have come to learn a lot about the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer! + +1. Creating new Test Files: Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. + +2. Deciding what to Test: When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. -1. When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file, and chose something that looks simple to start with (like a constructor!). Even if you don't end up testing that specific thing, it will give you confidence to approach the rest of the file. -2. You don't need to understand how everything in the file works to start writing tests! Start with things that you understand, and as you work through their implementation, you will get more familiar with the code. -3. On the other hand, if you are struggling to understand what a specific chunk of code is doing, don't be afraid to reach out and ask for help! It's better that you write useful tests after asking for help rather than writing tests that ultimately end up being useless because you understood the file wrong. -4. Know that one of the hardest parts of testing is just getting started. Once you get your testing file up and running with a non-trivial test, you've passed the first hurdle, and the rest of the testing should go flow easier. +Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. + +3. Getting the First Test to Pass: Setting up a test file and understanding the code that you are to test can be difficult and time consuming. You'll probably get a lot of errors before you're able to get an actual test to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll most likely understand the code to be tested much better by that point. #### MABE2 Specific Advice @@ -135,7 +135,7 @@ What to look for when testing - side note, also check error message is the right one - -- Creating new Test Files: Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must remember to only `#include` the current file that is being tested and to rename anythign specific to the previous test file. + - Testing Asserts: In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail` combined with `emp::assert_clear` to reset the boolean to test that asserts had been thrown when expected. @@ -148,7 +148,7 @@ void REQUIRE(bool b){ ``` to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use backtrace to look at the individual frames and see where the memory leak was coming from. -- Getting the First Test to Pass: Setting up a test file and understanding the code that you are to test can be difficult and time consuming. You'll probably get a lot of errors before you're able to get an actual test to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll most likely understand the code to be tested much better by that point. + - Levelization and bottom up From 99ba2b330f942a0f6cca4278722234e749be67fb Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 12:12:24 -0500 Subject: [PATCH 12/27] Edit words of wisdom --- blog/_posts/aria-lanea-blog.md | 37 +++++++++++++++++----------------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index d3efef4f..05c4c40a 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -95,13 +95,14 @@ We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to us #### Words of Wisdom Throughout our testing journey, we have come to learn a lot about the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer! -1. Creating new Test Files: Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. +##### Setup +1. **Creating new Test Files:** Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. -2. Deciding what to Test: When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. +2. **Deciding what to Test:** When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. -3. Getting the First Test to Pass: Setting up a test file and understanding the code that you are to test can be difficult and time consuming. You'll probably get a lot of errors before you're able to get an actual test to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll most likely understand the code to be tested much better by that point. +3. **Getting the First Test to Pass:** When you write your first test, you'll probably get a lot of errors before you're able to get it to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll understand the setup of the file you're testing. #### MABE2 Specific Advice @@ -111,43 +112,43 @@ Here are a couple of things that you might find helpful when testing MABE2 files 2. Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. 3. Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overrriden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden though! 4. When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. You can do that by modifying your +5. **Segmentation Faults:** When setting up mabe objects or calling methods on these objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what calls caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: +```cpp +void REQUIRE(bool b){ + std::cout << b << std::endl; +} +``` + +to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use backtrace to look at the individual frames and see where the memory leak was coming from. +MABE + Assert issue - Makefile must have debugging turned on (use with pointer tracking) - NDEFDEBUG flag in ErrorManager. + Put things in MABE.cpp file to check if they work (isolate the issue) + lldb/gdb then bt to frame number - check Empirical test files for example usage/tests (only helpful if they're implemented) -+ Copy paste from old test files to preserve boiler plate stuff -+ ONLY INCLUDE the file you're testing, not stuff included from .hpp file -+ once you get one test up and running, it gets easier! -+ ask for help! especially for understanding what the .hpp file does - check booleans actually reset - -What to look for when testing + test all booleans + test every method + make sure to check parent class for virtual overrrides in derived class + make sure to check parent class for non-overridden functions - any time you print an error message to the console, you should check that an error is thrown - side note, also check error message is the right one -- +OTHER ++ Copy paste from old test files to preserve boiler plate stuff ++ ONLY INCLUDE the file you're testing, not stuff included from .hpp file ++ once you get one test up and running, it gets easier! ++ ask for help! especially for understanding what the .hpp file does -- Testing Asserts: In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail` combined with `emp::assert_clear` to reset the boolean to test that asserts had been thrown when expected. -- Segmentation Faults: When setting up mabe objects or calling methods on these objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what calls caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: +- Testing Asserts: In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail` combined with `emp::assert_clear` to reset the boolean to test that asserts had been thrown when expected. -```cpp -void REQUIRE(bool b){ - std::cout << b << std::endl; -} -``` -to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use backtrace to look at the individual frames and see where the memory leak was coming from. From f9e2061d80c9e01a9e93d2dbac8531e2828d469c Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 12:27:14 -0500 Subject: [PATCH 13/27] Edit mabe2 specific and wrap up --- blog/_posts/aria-lanea-blog.md | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 05c4c40a..81eb58f4 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -106,13 +106,16 @@ Also keep in mind that if you are struggling to understand what a specific chunk #### MABE2 Specific Advice -Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for, but also some fixes to testing bugs that cropped up and gave us some issues. +Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for and bug fixes/workarounds that might prove to be helpful in the future. -1. A good place to start when testing a MABE2 file is by checking that all booleans are working correctly. Another good place to start is to check that simple checking functions work correctly. For example, a function that returns whether or not an input is a double should work correctly. Another example is a function that modifies a boolean. -2. Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. -3. Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overrriden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden though! -4. When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. You can do that by modifying your -5. **Segmentation Faults:** When setting up mabe objects or calling methods on these objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what calls caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: +1. **First Tests:** A good place to start when testing a MABE2 file is by checking that getter, setter and boolean functions work correctly. +2. **Test Coverage:** Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. +3. **Parent Classes:** Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overridden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden! +4. **Error Messages:** When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. + +If you ------ + +5. **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: ```cpp void REQUIRE(bool b){ @@ -120,7 +123,12 @@ void REQUIRE(bool b){ } ``` -to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use backtrace to look at the individual frames and see where the memory leak was coming from. +to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use a backtrace to look at the individual frames and see where the memory leak was coming from. +6. **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. + +[insert code example] + +Make sure you use `emp::assert_clear` to reset the boolean. MABE @@ -146,7 +154,7 @@ OTHER -- Testing Asserts: In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail` combined with `emp::assert_clear` to reset the boolean to test that asserts had been thrown when expected. + @@ -165,9 +173,9 @@ OTHER ## Wrap Up At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. -We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording for our talk. +We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording of our talk. -"The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community." +> The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community. - Include video of our talk? From 2cf27e0a89c346bf6c3ca8cdef74025cf2fd869b Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 12:29:52 -0500 Subject: [PATCH 14/27] Clean up --- blog/_posts/aria-lanea-blog.md | 44 +--------------------------------- 1 file changed, 1 insertion(+), 43 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 81eb58f4..8b797f7b 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -13,7 +13,7 @@ Hello! This summer we (Lanea Rohan, '22 Grinnel College, and Aria Killebrew Brue '23 Reed College) participated in the WAVES workshop through Michigan State University. We dedicated our summer to documenting and testing MABE2, an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. ​ -This project was guided by our wonderful mentors [Acaica Ackles](https://alackles.github.io/) (documentation) and Austin Ferguson (testing). +This project was guided by our wonderful mentors [Acaica Ackles](https://alackles.github.io/) (documentation) and [Austin Ferguson](http://fergusonaj.com/) (testing). ​ ## :interrobang: Why Document and Test Code ​ @@ -129,46 +129,6 @@ to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we coul [insert code example] Make sure you use `emp::assert_clear` to reset the boolean. - - -MABE -+ Assert issue -- Makefile must have debugging turned on (use with pointer tracking) -- NDEFDEBUG flag in ErrorManager. -+ Put things in MABE.cpp file to check if they work (isolate the issue) -+ lldb/gdb then bt to frame number -- check Empirical test files for example usage/tests (only helpful if they're implemented) -- check booleans actually reset -+ test all booleans -+ test every method -+ make sure to check parent class for virtual overrrides in derived class -+ make sure to check parent class for non-overridden functions -- any time you print an error message to the console, you should check that an error is thrown -- side note, also check error message is the right one - -OTHER -+ Copy paste from old test files to preserve boiler plate stuff -+ ONLY INCLUDE the file you're testing, not stuff included from .hpp file -+ once you get one test up and running, it gets easier! -+ ask for help! especially for understanding what the .hpp file does - - - - - - - - - -- Levelization and bottom up - - Austin's vizualization of MABE2 - - Assuming everything in Empirical was working correctly - - Flowchart process (insert the flowchart Austin made) - - Why use this? -- Using CATCH2 - - Words of Wisdom (what was easy/hard) - - Assert issue - - What to look for when testing ## Wrap Up At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. @@ -177,8 +137,6 @@ We attended the summer 2021 BEACON congress as both participants and speakers. W > The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community. -- Include video of our talk? - ## Acknowledgements ​ We would like to give a huge thank you to our mentors Acaica Ackles and Austin Ferguson From 6bda19b6860be18a6a40a9f7f48af2ab00b299b2 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 12:41:02 -0500 Subject: [PATCH 15/27] Fix spacing --- blog/_posts/aria-lanea-blog.md | 48 ++++++++++++++++++++++------------ 1 file changed, 31 insertions(+), 17 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 8b797f7b..26a077eb 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -14,7 +14,9 @@ Hello! This summer we (Lanea Rohan, '22 Grinnel College, and Aria Killebrew Brue We dedicated our summer to documenting and testing MABE2, an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. ​ This project was guided by our wonderful mentors [Acaica Ackles](https://alackles.github.io/) (documentation) and [Austin Ferguson](http://fergusonaj.com/) (testing). -​ + +
​ + ## :interrobang: Why Document and Test Code ​ The ???Michegan State University devolab??? has spent countless hours developing MABE2 and preparing for its release. Proper documentation and testing are essential for ensuring that MABE2 is accepted into and used by as large of a community as possible. @@ -36,6 +38,8 @@ Documentation is also important for the MABE2 users who wish to write their own Software must also be tested before it is released to the community. End-users will (and should) be cautious of code that has no testing framework. Without code being tested how can we expect it to preform as expected? We must provide a testing suite to assure MABE2 users that this software runs correctly. ​ Testing frameworks are also helpful for future developers who want to make sure their contributions to this software does not break any previously functioning code. + +
​ ## :book: Documentation @@ -55,9 +59,10 @@ Because MABE2 is still under active development there are some features whose im ​If you're curious to learn more, you can check out a live version of the documentation [here](https://mabe2.readthedocs.io/en/latest/). +
+ ## Testing ### The Beginning - Many large projects contain complex webs of dependencies, which are files that rely on other files. This is the case with MABE2. Dependencies make deciding where to start testing difficult. You need to be sure that the code you are testing does not rely on any untested files, since they could contain unknown bugs which may lead to errors in your current code. To avoid potential errors from untested dependencies, our mentor Austin suggested that we start with code that had no dependencies. This method is called "bottom up" testing. One way to organize the system of dependencies is to "levelize" the code your working with. Levelizing is the process of sorting all files in a project based on the number of dependencies that they have. Then, you can organize the files into "levels", each level representing the addition of one dependency. Levelization can be a great tool to help understand how a large code base is organized. @@ -69,7 +74,9 @@ In our case, Austin used the levelization of MABE2 to decide which files we shou One really important thing to note about levelizing MABE2 is that MABE2 has a library of third-party dependencies that are used throughout MABE2 source code, including Empirical. We worked under the assumption that all of these third-party resources were working correctly, and thus any error we found was occurring from within MABE2. -### The Process +
+ +### _The Process_ The process of testing is not linear, and is more involved than most people first assume. In its most basic form, the testing process can be summed up as below. 1. Decide what you're testing. @@ -88,24 +95,31 @@ After testing a couple of files with this method, we decided to push ourselves t In essence, we began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file. -### Catch2 +
+ +### _Catch2_ We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). -### Testing MABE2 -#### Words of Wisdom +
+ +### **Testing MABE2** +#### _Words of Wisdom_ Throughout our testing journey, we have come to learn a lot about the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer! -##### Setup +
+ +##### _Setup_ 1. **Creating new Test Files:** Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. 2. **Deciding what to Test:** When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. -Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. + Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. 3. **Getting the First Test to Pass:** When you write your first test, you'll probably get a lot of errors before you're able to get it to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll understand the setup of the file you're testing. +
-#### MABE2 Specific Advice +#### **MABE2 Specific Advice** Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for and bug fixes/workarounds that might prove to be helpful in the future. 1. **First Tests:** A good place to start when testing a MABE2 file is by checking that getter, setter and boolean functions work correctly. @@ -117,18 +131,18 @@ If you ------ 5. **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: -```cpp -void REQUIRE(bool b){ - std::cout << b << std::endl; -} -``` + ```cpp + void REQUIRE(bool b){ + std::cout << b << std::endl; + } + ``` -to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use a backtrace to look at the individual frames and see where the memory leak was coming from. + to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use a backtrace to look at the individual frames and see where the memory leak was coming from. 6. **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. -[insert code example] + [insert code example] -Make sure you use `emp::assert_clear` to reset the boolean. + Make sure you use `emp::assert_clear` to reset the boolean. ## Wrap Up At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. From 8dd63722bdf0d01123f227b06bcf8a33733bc000 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 16:33:15 -0500 Subject: [PATCH 16/27] Add ErrorManager stuff to MABE advice --- blog/_posts/aria-lanea-blog.md | 41 ++++++++++++++++++++++++++++------ 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index 26a077eb..a0ddac24 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -15,7 +15,7 @@ We dedicated our summer to documenting and testing MABE2, an open-source researc ​ This project was guided by our wonderful mentors [Acaica Ackles](https://alackles.github.io/) (documentation) and [Austin Ferguson](http://fergusonaj.com/) (testing). -
​ +​ ## :interrobang: Why Document and Test Code ​ @@ -108,7 +108,6 @@ Throughout our testing journey, we have come to learn a lot about the intricacie
-##### _Setup_ 1. **Creating new Test Files:** Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. 2. **Deciding what to Test:** When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. @@ -125,11 +124,11 @@ Here are a couple of things that you might find helpful when testing MABE2 files 1. **First Tests:** A good place to start when testing a MABE2 file is by checking that getter, setter and boolean functions work correctly. 2. **Test Coverage:** Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. 3. **Parent Classes:** Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overridden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden! -4. **Error Messages:** When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. - -If you ------ +4. **ErrorManager:** Currently in the ErrorManager (`source/core/ErrorManager.hpp`) we have commented out the `#ifndef NDEBUG` line in the `AddError` function. This is on purpose and is a temporary fix. With this line active, if an error is added to the manager the entire program halts. This is not helpful when trying to check to see that errors are being thrown appropriately. A couple of possible fixes for this would be a) to modify the Makefile to use a flag when compiling the tests or b) create some type of macro work around. +5. **Error Messages:** When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. -5. **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: + If you are using the ErrorManager, one way to do this is by capturing the error message in a variable in the `error_function` for the ErrorManager and then comparing the generated string to the expected string in a `REQUIRE`. +6. **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: ```cpp void REQUIRE(bool b){ @@ -138,11 +137,37 @@ If you ------ ``` to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use a backtrace to look at the individual frames and see where the memory leak was coming from. -6. **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. +7. **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. [insert code example] Make sure you use `emp::assert_clear` to reset the boolean. +8. **Empirical**: A good resource for modeling both tests as well as implementation examples is the Empirical files, located in `source/third_party`. Empirical's library includes a lot of implementation of classes and files included throughout MABE. Checking out those base class files (like Ptr.hpp or vector.hpp) can be helpful when understanding different MABE files. +9. **Manager Booleans:** One thing to be careful of is to check that booleans who depend on a Manager are actually reset after a test is run. For example, if you want to check a specific feature's Manager throws an error, most times manually setting the boolean back to false is not sufficient. Because the Managers persist, that same feature you just tested to throw an error will again trigger the boolean, regardless of what the new feature actually does in the Manager. For example: + + ```cpp + bool has_error_been_thrown = false; + + /* + Do something to add an error in the Manager + ... + */ + + REQUIRE(has_error_been_thrown); // Error is thrown correctly! + + has_error_been_thrown = false; // Manually reset the boolean + + /* + Start testing something unrelated that doesn't add an error + ... + */ + REQUIRE_FALSE(has_error_been_thrown); // Will FAIL + ``` + To get around this issue you can set up multiple Managers and first check things that won't add an error, and end with checking one thing that does throw an error. + + One note for this: if the next thing you test should get rid of the error. For example: a module A requires that at least one other module of type B exists. First you check that adding a module A by itself throws and error. However, if your very next step is to add a module of type B, this should appease the manager, and the no error is thrown. In this case, the Manager can be re-used. + +
## Wrap Up At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. @@ -151,6 +176,8 @@ We attended the summer 2021 BEACON congress as both participants and speakers. W > The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community. +
+ ## Acknowledgements ​ We would like to give a huge thank you to our mentors Acaica Ackles and Austin Ferguson From c6f84f7d4bbbd7cbf36e5a1d950c75b4c3f9d6bb Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 16:42:17 -0500 Subject: [PATCH 17/27] Add NSF disclaimer --- blog/_posts/aria-lanea-blog.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/aria-lanea-blog.md index a0ddac24..9ed86515 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/aria-lanea-blog.md @@ -185,4 +185,6 @@ for their continued support and dedication throughout the summer! ​ We would also like to thank Charles Offria and Cliff Bohm for their support in understanding MABE2! ​ -Finally, we would like to thank all the WAVES mentors who led us in enrichment seminars and everyone who gave us feedback on our documentation! \ No newline at end of file +Finally, we would like to thank all the WAVES mentors who led us in enrichment seminars and everyone who gave us feedback on our documentation! + +This work is supported through Active LENS: Learning Evolution and the Nature of Science using Evolution in Action (NSF IUSE #1432563). Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation. \ No newline at end of file From d8cae390b0c5be3b88eb2264291cbaceced2320a Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 16:43:52 -0500 Subject: [PATCH 18/27] Fix name and date --- .../{aria-lanea-blog.md => 2021-08-20-Aria-Lanea-Blog.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename blog/_posts/{aria-lanea-blog.md => 2021-08-20-Aria-Lanea-Blog.md} (99%) diff --git a/blog/_posts/aria-lanea-blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md similarity index 99% rename from blog/_posts/aria-lanea-blog.md rename to blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 9ed86515..e2e66063 100644 --- a/blog/_posts/aria-lanea-blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -1,7 +1,7 @@ --- layout: post title: "Planning for the Future of MABE2" -date: 2021-08-06 +date: 2021-08-20 author: Aria Killibrew Bruehl and Lanea Rohan --- From b481abef1c7e533c5b5781b9127e6945375ff806 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Wed, 11 Aug 2021 16:48:36 -0500 Subject: [PATCH 19/27] Add devolab link --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index e2e66063..30a0c605 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -19,7 +19,7 @@ This project was guided by our wonderful mentors [Acaica Ackles](https://alackle ## :interrobang: Why Document and Test Code ​ -The ???Michegan State University devolab??? has spent countless hours developing MABE2 and preparing for its release. Proper documentation and testing are essential for ensuring that MABE2 is accepted into and used by as large of a community as possible. +The [Digital Evolution Lab](https://devolab.org/) has spent countless hours developing MABE2 and preparing for its release. Proper documentation and testing are essential for ensuring that MABE2 is accepted into and used by as large of a community as possible. ​ Write the Docs (link!), BLURB, puts the importance of proper documentation quite plainly: ​ From 182999ae680c2f640f3264b865d900ed068303db Mon Sep 17 00:00:00 2001 From: lanearohan Date: Thu, 12 Aug 2021 11:46:18 -0500 Subject: [PATCH 20/27] Add last point to advice section --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 1 + 1 file changed, 1 insertion(+) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 30a0c605..21d4acba 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -166,6 +166,7 @@ Here are a couple of things that you might find helpful when testing MABE2 files To get around this issue you can set up multiple Managers and first check things that won't add an error, and end with checking one thing that does throw an error. One note for this: if the next thing you test should get rid of the error. For example: a module A requires that at least one other module of type B exists. First you check that adding a module A by itself throws and error. However, if your very next step is to add a module of type B, this should appease the manager, and the no error is thrown. In this case, the Manager can be re-used. +10. **Pointer Tracking:** An important part of testing is making sure destructors work correctly and delete pointers as needed. Empirical provides a pointer tracker which can be used with the macro `#include "emp/base/Ptr.hpp"`. Pointers can be tracked with the boolean function `emp::BasePtr::Tracker().IsDeleted(.id)`. To turn on pointer tracking, the test file must be compiled with the flags `-g` and `-DEMP_TRACK_MEM`.
From cb00198b88e5bfc8f7715300a329440fd0b67863 Mon Sep 17 00:00:00 2001 From: lanearohan Date: Fri, 20 Aug 2021 11:20:10 -0500 Subject: [PATCH 21/27] Aria's refactoring --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 142 +++++++++++----------- 1 file changed, 70 insertions(+), 72 deletions(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 21d4acba..81d83f8f 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -21,75 +21,73 @@ This project was guided by our wonderful mentors [Acaica Ackles](https://alackle ​ The [Digital Evolution Lab](https://devolab.org/) has spent countless hours developing MABE2 and preparing for its release. Proper documentation and testing are essential for ensuring that MABE2 is accepted into and used by as large of a community as possible. ​ -Write the Docs (link!), BLURB, puts the importance of proper documentation quite plainly: +[Write the Docs](https://www.writethedocs.org/), "a global community of people who care about documentation", puts the importance of proper documentation quite plainly: ​ -> If people don’t know why your project exists,they won’t use it. +> If people don’t know why your project exists, they won’t use it. > If people can’t figure out how to install your code, they won’t use it. > If people can’t figure out how to use your code, they won’t use it. ​ -This is particularly important for the end-users of MABE2 who simply want to run experiments and do not want to waste time trying to understand the source code on their own, especially users who have less coding experience. -​ -Documentation is also important for the MABE2 users who wish to write their own modules or otherwise contribute to this software. Write the Docs stresses the importance of documentation for potential contributors: + +This is particularly important for the end-users of MABE2, especially those with less coding experience, who want to quickly run experiments without having to understand complex source code. Documentation is also important for the users who want to write their own modules or otherwise contribute to this software. Write the Docs stresses the importance of documentation for potential contributors: ​ > You only get contributions after you have put in a lot of work. > You only get contributions after you have users. > You only get contributions after you have documentation. ​ -Software must also be tested before it is released to the community. End-users will (and should) be cautious of code that has no testing framework. Without code being tested how can we expect it to preform as expected? We must provide a testing suite to assure MABE2 users that this software runs correctly. -​ -Testing frameworks are also helpful for future developers who want to make sure their contributions to this software does not break any previously functioning code. +Software must also be tested before it is released to the community. End-users will (and should) be cautious of code that has no testing framework. Without code being tested how can we expect it to perform as desired? We must provide a testing suite to assure MABE2 users that this software runs correctly. +​ +Testing frameworks are also helpful for future developers who want to make sure their contributions to this software do not break any previously functioning code.
​ + ## :book: Documentation -Prior to this summer there was no documentation for MABE2, meaning we had to familiarize ourselves with a huge library of files without any written guidance. Trying to understand MABE2 using only the source code and frequent discussions with our mentors was challenging. This made us appreciate the value of well documented software, and underlined the importance of documenting MABE2 for future users. +Prior to this summer there was no documentation for MABE2, meaning we had to familiarize ourselves with a huge library of files without any written guidance. Trying to understand MABE2 using only the source code and frequent discussions with our mentors was challenging. This made us appreciate the value of well documented software, and underlined the importance of documenting MABE2 for future users. ​ -The main page of MABE2's documentation has a more *sales-pitchy* feel to it. This page overviews what MABE is and why researchers should use it. We also provide an example project to showcase the many benefits of running an experiment with MABE2. +The main page of MABE2's documentation has a more *sales-pitchy* feel to it. This page overviews what MABE2 is and why researchers should use it. We also provide an example project to showcase the many benefits of running an experiment with MABE2. ​ -The documentation also offers step-by-step installation and quickstart guides so users can quickly familiarize themselves with the fundamentals of running a MABE2 experiment. In addition to these basics we dive deeper into the inner workings of MABE2 with an overview of source (modules, tools for analysis, the MABE core, and MABE dependencies), a detailed description of the different types of modules, explanations of different evaluators, and guide to the essential TraitInfo object. -​ -Despite our diligent efforts to document all of MABE2, there are some features that we were unable to document because their implementation has yet to be finalized. These include: +The documentation also offers step-by-step installation and quickstart guides so users can quickly familiarize themselves with the fundamentals of running a MABE2 experiment. In addition to these basics, we dive deeper into the inner workings of MABE2 by documenting: -Because MABE2 is still under active development there are some features whose implementation has yet to be finalized, meaning that for the time being, they have been left out of the documentation. These include: -​ -* genomes -* brains -* worlds +* :dart: the source folder (which includes modules, tools for analysis, the MABE core, and MABE dependencies) +* :jigsaw: the individual types of modules +* :chart_with_upwards_trend: various evaluator types +* :card_index_dividers: the `TraitInfo` object + +Because MABE2 is still under active development there are some features whose implementation has yet to be finalized, meaning that for the time being, they have been left out of the documentation. In particular we did not document :dna: genomes, :brain: brains, or :globe_with_meridians: worlds. ​If you're curious to learn more, you can check out a live version of the documentation [here](https://mabe2.readthedocs.io/en/latest/).
-## Testing +## :test_tube: Testing ### The Beginning -Many large projects contain complex webs of dependencies, which are files that rely on other files. This is the case with MABE2. Dependencies make deciding where to start testing difficult. You need to be sure that the code you are testing does not rely on any untested files, since they could contain unknown bugs which may lead to errors in your current code. To avoid potential errors from untested dependencies, our mentor Austin suggested that we start with code that had no dependencies. This method is called "bottom up" testing. +Many large projects contain complex webs of dependencies, which are files that rely on other files. This is the case with MABE2. Dependencies make deciding where to start testing difficult. You need to be sure that the code you are testing does not rely on any untested files, since they could contain unknown bugs which may lead to errors in your current code. To avoid potential errors from untested dependencies, our mentor Austin suggested that we use a "bottom up" method by starting with code that had no dependencies and working our way up to those with more. -One way to organize the system of dependencies is to "levelize" the code your working with. Levelizing is the process of sorting all files in a project based on the number of dependencies that they have. Then, you can organize the files into "levels", each level representing the addition of one dependency. Levelization can be a great tool to help understand how a large code base is organized. -** CHECK THIS ***** +One way to organize the system of dependencies is to "levelize" the code your working with. Levelizing is the process of organizing the files in a project based on the *scaffolding* of dependencies. For example, files at level 0 have no dependencies. A level one file will depend on one or many files of level 0, a level two file will depend on one or many level one files, and so on. Levelization is be a great tool to help understand how a large code base is organized. -In our case, Austin used the levelization of MABE2 to decide which files we should begin testing. We've included his visualization below. +In our case, Austin used the levelization of MABE2 to decide which files we should begin testing. We've included his visualization below. [ include his levelization here ] -One really important thing to note about levelizing MABE2 is that MABE2 has a library of third-party dependencies that are used throughout MABE2 source code, including Empirical. We worked under the assumption that all of these third-party resources were working correctly, and thus any error we found was occurring from within MABE2. +One important thing to note about this levelization is that MABE2 has a library of third-party dependencies that are used throughout the source code, including [Empirical](https://empirical.readthedocs.io/en/latest/index.html). We worked under the assumption that all of these third-party resources were working correctly, and thus any error we found was occurring from within MABE2.
-### _The Process_ -The process of testing is not linear, and is more involved than most people first assume. In its most basic form, the testing process can be summed up as below. +### :spiral_calendar: _The Process_ +The process of testing is not linear, and is more involved than most people first assume. In its most basic form, the testing process can be summed up as below. -1. Decide what you're testing. -2. Write the test. -3. Check that the tests work. If they don't, return to step 2. -4. Make sure you have tested everything you want to test. If you find areas that you missed, return to step 1. +1. Decide what you're testing. +2. Write the test. +3. Check that the tests work. If they don't, return to step 2. +4. Make sure you have tested everything you want to test. If you find areas that you missed, return to step 1. 5. You're done! -Since we both were thrown head-first into MABE2 and had little biology/evolution background, deciding how to test a specific file was pretty hard. +Since we both were thrown head-first into MABE2 and had little biology/evolution background, deciding how to test a specific file was pretty hard. + +At the beginning, Austin gave us checklists of what to test in a file, and gave us guidance on how to test it. Once we finished his checklist, we would go through and decide if there was something that we missed. -At the beginning, Austin gave us checklists of what to test in a file, and gave us guidance on how to test it. Once we finished his checklist, we would go through and decide if there was something that we missed. - -After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. +After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. [insert his flowchart] @@ -98,93 +96,93 @@ In essence, we began by meeting with Austin to do a high-level overview of the c
### _Catch2_ -We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top). +We used a testing framework called Catch2 to test MABE2. Catch2 is an easy to use C++ unit testing framework. You can check out more of Catch2 in their [github](https://github.com/catchorg/Catch2). When writing out tests for MABE2, we relied heavily on Catch2's assertion macros, which you can find [here](https://github.com/catchorg/Catch2/blob/devel/docs/assertions.md#top).
### **Testing MABE2** -#### _Words of Wisdom_ -Throughout our testing journey, we have come to learn a lot about the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer! +#### :star2: _Words of Wisdom_ +Throughout our testing journey, we have come to learn a lot about the intricacies of writing tests. We thought we would share a couple of tips and tricks we learned from tackling testing this summer!
-1. **Creating new Test Files:** Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. +1. :new: **Creating new Test Files:** Test files can have large boiler plates (setup before the actual code is written, lots of `#include`s and `#define`s) which can make setting up a new testing file tricky to get right. We found that the easiest way to get the boiler plate right was to simply copy a preexisting test file and "rip out its guts" and replace it with new test code. When doing this you must rename or replace anything specific to the previous test file. When including the file to test, do not `#include` any of its dependencies because they should be included in that file. -2. **Deciding what to Test:** When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something chose something that looks simple to start with (like a constructor!). As you work through their implementation, you will get more familiar with the code. +2. :question: **Deciding what to Test:** When you first open up a file that you're going to test, it's okay not to understand everything that you see! Take a breath, read any documentation at the top of the file. Start with things that you understand or something straightforward, like a constructor! As you work through their implementation, you will get more familiar with the code. - Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. + Also keep in mind that if you are struggling to understand what a specific chunk of code is doing, reach out and ask for help! It's better to write useful tests after asking for help rather than writing tests that are inappropriate for the file because you misunderstood the code. + +3. :white_check_mark: **Getting the First Test to Pass:** When you write your first test, you'll probably get a lot of errors before you're able to get it to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll understand the setup of the file you're testing. -3. **Getting the First Test to Pass:** When you write your first test, you'll probably get a lot of errors before you're able to get it to pass. But don't give up! Once you get that first test to pass the others are much easier to write since you'll understand the setup of the file you're testing. -
#### **MABE2 Specific Advice** -Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for and bug fixes/workarounds that might prove to be helpful in the future. +Here are a couple of things that you might find helpful when testing MABE2 files! We have included some things to watch out for and bug fixes/workarounds that might prove to be helpful in the future. -1. **First Tests:** A good place to start when testing a MABE2 file is by checking that getter, setter and boolean functions work correctly. -2. **Test Coverage:** Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. -3. **Parent Classes:** Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overridden in the file you're checking. Don't forget to also look for functions from the parent class that aren't overridden! -4. **ErrorManager:** Currently in the ErrorManager (`source/core/ErrorManager.hpp`) we have commented out the `#ifndef NDEBUG` line in the `AddError` function. This is on purpose and is a temporary fix. With this line active, if an error is added to the manager the entire program halts. This is not helpful when trying to check to see that errors are being thrown appropriately. A couple of possible fixes for this would be a) to modify the Makefile to use a flag when compiling the tests or b) create some type of macro work around. -5. **Error Messages:** When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. +1. :one: **First Tests:** A good place to start when testing a MABE2 file is by checking that getter (return data about a variable/object), setter (set data for a variable/object) and boolean (return true/false) functions, work correctly. +2. :bookmark_tabs: **Test Coverage:** Most of the time, you will end up testing every method in a file, so make sure you have a clear list of the methods/a comprehensive strategy to make sure you get them all. Also, make sure you test all variations of a function: if a function has both a templated and non-templated version, both should get checked. +3. :family: **Parent Classes:** Many times MABE2 files will inherit from a parent class. It is always a good idea to glance through the parent class. You should check specifically for virtual functions/variables that should get overridden in the file you're checking. Don't forget to look for functions from the parent class that aren't overridden! +4. :x: **ErrorManager:** Currently in the ErrorManager (`source/core/ErrorManager.hpp`) we have commented out the `#ifndef NDEBUG` line in the `AddError` function. This is on purpose and is a temporary fix. When this line is active, adding an error to the manager halts the entire program. This is not helpful when trying to check to see that errors are being thrown appropriately. A couple of possible fixes for this would be a) to modify the Makefile to use a flag when compiling the tests or b) create some type of macro work around. +5. :speech_balloon: **Error Messages:** When you see that an error message would be printed to the console, make sure you check that the error gets triggered correctly! Bonus points if you also check that the correct error message is written out to the console. - If you are using the ErrorManager, one way to do this is by capturing the error message in a variable in the `error_function` for the ErrorManager and then comparing the generated string to the expected string in a `REQUIRE`. -6. **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: + If you are using the ErrorManager,you can capture the error message in a variable with the `error_function` callback and then compare the generated string to the expected string in a `REQUIRE`. +6. :twisted_rightwards_arrows: **Segmentation Faults:** When setting up or calling methods on mabe objects we would sometimes run into segmentation faults (files trying to read/write to an illegal memory location). Catch2 made this difficult to debug since it would crash at the beginning of the test case and not give specific line numbers of what caused the crash. To work around this we would put the broken code into `MABE.cpp` along with the function: ```cpp void REQUIRE(bool b){ - std::cout << b << std::endl; + std::cout << b << std::endl; } ``` - to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then use a backtrace to look at the individual frames and see where the memory leak was coming from. -7. **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. + to work around the `REQUIRE`s in Catch2. When we ran the `MABE.cpp` file we could use lldb (gdb on Windows) to find the memory leaks. With lldb we would run the program, then backtrace to look at the individual frames and see where the memory leak was coming from. +7. :bangbang: **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. - [insert code example] + ```cpp + emp::assert_clear(); // reest the boolean + error00.AsDouble(); // intended to trigger an assert + REQUIRE(emp::assert_last_fail); // make sure assert is triggered + ``` Make sure you use `emp::assert_clear` to reset the boolean. -8. **Empirical**: A good resource for modeling both tests as well as implementation examples is the Empirical files, located in `source/third_party`. Empirical's library includes a lot of implementation of classes and files included throughout MABE. Checking out those base class files (like Ptr.hpp or vector.hpp) can be helpful when understanding different MABE files. -9. **Manager Booleans:** One thing to be careful of is to check that booleans who depend on a Manager are actually reset after a test is run. For example, if you want to check a specific feature's Manager throws an error, most times manually setting the boolean back to false is not sufficient. Because the Managers persist, that same feature you just tested to throw an error will again trigger the boolean, regardless of what the new feature actually does in the Manager. For example: +8. :notebook_with_decorative_cover: **Empirical**: A good resource for modeling both tests as well as implementation examples is the Empirical files, located in `source/third_party`. Empirical's library includes a lot of implementation of classes and files included throughout MABE. Checking out those base class files (like `Ptr.hpp` or `vector.hpp`) can be helpful when understanding different MABE files. +9. :white_circle: :black_circle: **Manager Booleans:** One thing to be careful of is to check that booleans who depend on a Manager are actually reset after a test is run. For example, if you want to check a specific feature's Manager throws an error, most times manually setting the boolean back to false is not sufficient. Because the Managers persist, that same feature you just tested to throw an error will again trigger the boolean, regardless of what the new feature actually does in the Manager. For example: ```cpp - bool has_error_been_thrown = false; - - /* + bool has_error_been_thrown = false; + /* Do something to add an error in the Manager ... */ - REQUIRE(has_error_been_thrown); // Error is thrown correctly! - has_error_been_thrown = false; // Manually reset the boolean - /* Start testing something unrelated that doesn't add an error ... */ - REQUIRE_FALSE(has_error_been_thrown); // Will FAIL + REQUIRE_FALSE(has_error_been_thrown); // Will FAIL ``` - To get around this issue you can set up multiple Managers and first check things that won't add an error, and end with checking one thing that does throw an error. + To get around this issue you can set up multiple Managers and first check things that won't add an error, and end with checking one thing that does throw an error. - One note for this: if the next thing you test should get rid of the error. For example: a module A requires that at least one other module of type B exists. First you check that adding a module A by itself throws and error. However, if your very next step is to add a module of type B, this should appease the manager, and the no error is thrown. In this case, the Manager can be re-used. -10. **Pointer Tracking:** An important part of testing is making sure destructors work correctly and delete pointers as needed. Empirical provides a pointer tracker which can be used with the macro `#include "emp/base/Ptr.hpp"`. Pointers can be tracked with the boolean function `emp::BasePtr::Tracker().IsDeleted(.id)`. To turn on pointer tracking, the test file must be compiled with the flags `-g` and `-DEMP_TRACK_MEM`. + One note for this: if the next thing you test should get rid of the error. For example: a module A requires that at least one other module of type B exists. First you check that adding a module A by itself throws and error. However, if your very next step is to add a module of type B, this should appease the manager, and no error is thrown. In this case, the Manager can be re-used. +10. :compass: **Pointer Tracking:** An important part of testing is making sure destructors work correctly and delete pointers as needed. Empirical provides a pointer tracker which can be used with the macro `#include "emp/base/Ptr.hpp"`. Pointers can be tracked with the boolean function `emp::BasePtr::Tracker().IsDeleted(.id)`. To turn on pointer tracking, the test file must be compiled with the flags `-g` and `-DEMP_TRACK_MEM`.
- -## Wrap Up -At the end of the WAVES internship, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. -We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording of our talk. +## :gift: Wrap Up +At the end of the WAVES workshop, we were given the opportunity to present our summer of work at the BEACON congress. The BEACON congress is the annual meeting for researchers who belong to the [BEACON Center of Evolution in Action](https://www3.beacon-center.org/welcome/), a consortium of affiliated universities that focuses on the study of evolution in action through an interdisciplinary lens. Specifically, BEACON aims to bring together biologists, computer scientists and engineers to both study evolution in action, as well as use evolution to solve complex real-world problems. + +We attended the summer 2021 BEACON congress as both participants and speakers. We presented our talk "Planning for the Future of MABE2: A Summer of Documentation and Testing". Below you can find both our abstract, as well as a video recording of our talk. > The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community.
-## Acknowledgements +## :ocean: Acknowledgements ​ We would like to give a huge thank you to our mentors Acaica Ackles and Austin Ferguson for their continued support and dedication throughout the summer! ​ -We would also like to thank Charles Offria and Cliff Bohm for their support in understanding MABE2! +We would also like to thank Charles Ofria and Clifford Bohm for their support in understanding MABE2! ​ Finally, we would like to thank all the WAVES mentors who led us in enrichment seminars and everyone who gave us feedback on our documentation! From f29832ff1d4697e5a75376188d4c641d65e74f6e Mon Sep 17 00:00:00 2001 From: lanearohan Date: Fri, 20 Aug 2021 12:01:24 -0500 Subject: [PATCH 22/27] Fix typo --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 81d83f8f..e01b1370 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -138,7 +138,7 @@ Here are a couple of things that you might find helpful when testing MABE2 files 7. :bangbang: **Testing Asserts:** In almost every file we wanted to be able to test that asserts had been thrown when expected. However, asserts typically terminate a program, making this difficult. Luckily, Empirical has a file that implements a "non-terminating assert trigger" which is perfect for unit testing. All we had to do was use the macro `#define EMP_TDEBUG` and the boolean `emp::assert_last_fail`. ```cpp - emp::assert_clear(); // reest the boolean + emp::assert_clear(); // reset the boolean error00.AsDouble(); // intended to trigger an assert REQUIRE(emp::assert_last_fail); // make sure assert is triggered ``` From ab152a10fa1080d0a78d3d2d98f00b10668d2f3b Mon Sep 17 00:00:00 2001 From: AriaKillebrewBruehl Date: Thu, 26 Aug 2021 19:34:23 -0700 Subject: [PATCH 23/27] Add flowchart --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index e01b1370..727ceb33 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -89,7 +89,10 @@ At the beginning, Austin gave us checklists of what to test in a file, and gave After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. -[insert his flowchart] +![testing flowchart]({{ site.baseurl }}../assets/Aria_Lanea/flowchart.png){:style="width: 100%;"} +[**Figure Testing Flowchart.**](#fig-tf){:id="fig-tf"} +*Flowchart for testing process created by Austin Ferguson* + In essence, we began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file. From f00c31aa4bf205780520606aa4573d75f558bd2d Mon Sep 17 00:00:00 2001 From: AriaKillebrewBruehl Date: Thu, 26 Aug 2021 19:34:37 -0700 Subject: [PATCH 24/27] Add folder for images --- assets/Aria_Lanea/depends.png | Bin 0 -> 299357 bytes assets/Aria_Lanea/flowchart.png | Bin 0 -> 113405 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/Aria_Lanea/depends.png create mode 100644 assets/Aria_Lanea/flowchart.png diff --git a/assets/Aria_Lanea/depends.png b/assets/Aria_Lanea/depends.png new file mode 100644 index 0000000000000000000000000000000000000000..0f594da5f9830bbd50ca578f3388ef24269f74e2 GIT binary patch literal 299357 zcmeEubySpF`!=8)VNgIN6eSgep;WpNBqStsr7J!_4#Sd*5;0*L`hY%RUvm0wIB*p`l%QBK}w&4GlXP4ejDJ ztUthS)b3i=prKvXM+ghcJ`onCkhQTiM3@<%p^3i^i@2ns&`jhx7p{0sjRHen$TGfP)i|< z@>TlD=(T7bkB%5F+m7b8Di*YPyLE#CUPWS0S41K&Kh+C1ezri7#fy&xG0^UN-hwBD zSWitQePg~qbXrwehKmn#sTVO=ia$9kn#U1=preU%&qyT-h2WLlM5}yE@s=1v@UoB1 zQijh%LVwCzO^MG#jF6n_?X8M28Q;w>aKGNrXbMCNLAX})-a=bZqBSDKE=VL@5ev~w z5qeF4MtY&i3*!MCi|gvzl;km7kzAB`Hf|R}z z1O>dO+h;6nXB9JZbeHDxo`=zdi#23U`Epf8@=#0Evo?+Qw7pk>-Ha7NOR7*bE|MC1?$OIk%vc(_8ETUTCIY(JYpm>p zt!ZBxac#n5TDt?Xr&}+5hb@#qZQpW|9C6fBO(dKQ)=zyQXi`MGZxVW!>yH9<{R<)% zLhsZreS{L(>iuCq)8Z6%#vU?Eg?RjGgg-ov8ZUTozIBuE`G#(aE;h4hU6{|*7jb*{ zJWY&K&oj}GB@y|jJqe_tx~|*W3_^0o@3|ear0+`ieDNQDOZf7OX~S;Q<`nB8r|LW6 z#5d}X*yRYQjT@#u;C!1>9Buqy;A8#TL|`M}_UU`hA_1qXul~@$ho}f*o6@|;u<=aJ zu1LIfD!=#Q0)NPJGYSkQlIE|k-g%MHxzc#*uHU+8JudyOByvD{E{j0rr#bv_b_Uw_~A)Jd>Zbe>`?ih(ZFW4cwP3w_1c zl&a&HTXzh1WV=>)9nF|jts$}$+v+plH{RR4SRKolDH?&3$RX7;nvO)Q>XtIm;36UEyK11lstPZz%{7D-~ z&~SKOvgs1%-GP#+2?zf%(Dl`9jF#luqJg5;oe!ya1b(T6NcJ0! zerDwwZy1^Mt-mS@ewliLc}Fa7Omlo3P1a4JFE>NE&C3$AmUmA?sq3<*5 zbk6M??w%8_p{g}6MlVz^1#4WRofR>;nd6NAbyV=uDy^P2ZkE@DfF@F>3m*8FYd_t< z$GP?h`u^e;!^`%>Sy1kUGR;tLqSwokn0Q7dI?U6)3$*E?WxX2v%J2iG@q=d>7 z{&|Z+GQOZVvD`$`d6q)r3-5^4hXc)S7Er)T01jjmUTJv6EdGW3;VQJIS)7M zmP_z;>pwbbHNTPseR*qzuI1U;Ks>#)9_z$6;RpY`HqEzhgb}MPVMVil)#=5?3$t29 zA-Y8GyjZIct81&NPit>cg*M$Cx$gGWLW=r3z7an0bq@T!YtgS)zW9F8y7pRM%7z9r zME8lSJY~ka!tlaqy8ye$z9-IN161lEU|>-~PHGC8hUWA$1{Xq2UPQ2t9YKg&1CHS~t#uqBTr@SgD2F$&R(1f|Iv_VXmt~#!L@dII$__g*5T4L6zXlhf7X`LcG9-ghF912()#7=my9Gz9Lt+| zC8BkK-hq!r4Mbf6b8fobH@xY4bB=_W!{UCmsdqGIWB^N~NkR8a@{>KQ=ig52FzZ@h zu92Tc)0r&llUQ=s*<~(Z_G+=%e#Byl99H{y-EjQ7)Ry+v?Jd}MvGxjv8$@12*Zg5b zjSQ#SHw!qkc$KI#!}|3QCN~iog=4zIhQme%mSOrZ-J-$89Jc-_^H_tbmh$@Y#)ewM ztahnrwdhGRx?(f+{1uYX-eSv@JrmD7ZXeU&X3H+xkWY8f{s`=v{va3rHkTr z`aIvcEvzbMUT{C-dL4_5VdDPKG0|~t?n=kX9jrU9V&YKfl=YR5kvHGI z$ycDSU)MDE!AvwIP>p|aJH0bUE9Y6xsD@?5LPel8y|t;0%fjjmlU1%w&ElgytiAWs z-SZo@y~7GKW!+n;#C4`wgL_(xTJe=`m9rD}6Po<&{5ScR+${303|TMNFSAr%oW!5x zs`ho8JbHFSc(}56)H+!&Fz69+*4w@NLF7Y8p!*GN!cTZZ*SfAYLE5m!ZVz46zxf3Z ziR+ASM#^w`g6#OkbW`)UlG(Z(n}ax-;D|#qO({cs0==(Ol~g@7^Gg2X?F zl*M6oi047^gP!*G`p4h&;Pwi=&!wYW8~r8Z zOUmn#x3}NCd&1bv-MrAu)@-RDq@a{+7eLPDKCr))L6h;OuYpxw&1Ph`Z~|NBx{}Pi z)Sd*hbPa#E`&8j;qkEB3Ezx%R1s(dQGZ${Y2zVEud6WDg|JcOcl7`vV%`n)LUgeGx z&1IsTYYwk59@9UTDZnUD(&uZ(ZPJPyr^dae{HlUl164EdWyN!yfcg|;-Q=pH89@URwc$T38Tc)RJt%qZb2-K3=aE;OQlphntq$h8b;%1ZA~s zL7sVNV^Wbne*|`GM_5I;@;eU=1{K%UOC{t`k9qi;qGa=oy`I3sdpEFUv*CQa?N_FR;#TA2Bc$$hn?dp+qQOwXURFk*0mU($qjwc5n%`CC|y7qsFKen$gx0 zj}gl8?tB(^Bhx?`>2{`GO-a*kH3Rd()$Q?!-50BfEZdCHf{3ybSMs5>vAsr_n*y4X zPHuh!j> z43-aO;vDhF+E=msm{oS*Fs!nV(H)ZOnb4#bqDnxN}_e z-gIT~ZO&w6sQZWM)b;PZ>d#8Fj+M66Cs)cGu^d}g7bmhyjhu529UCY29Go0)mytW4 z)jod#_5ni1?~?4aop1YD?{M1h9+8YmT)6<>7~zEdLNK<69sgUtr6r~lg|*I|PSUuu zW94-?v2(+oU3Ey!yhqu7*hVI4E+4#PyJ2U-wuAU3p4nG5xCx+6}Xi)GN3+*C02^uDNgbu#=(Qp0zSQMQW?ZThG$3R2# zMW9{$>u;WdpQwK!;0yJh|NOl0<|W!C@a!7+a!SDX@z>bN2^W4mzKD7a?U91;lPBP( zf}V|mfrYKHrCq75j|TV!ww1W5EgBjTHR=ofiTvGl@cBasMHM?0X(?_!OLHb2eM?;f zCMR<%)aRh_I&p)C<_2~;6i()57Pj0@d{lq_1vhw%`ZY5Z#h-s-XUa#VA}vcHY-wXa z!N$bObf1bJLP0^nYol+-E&o{bueXC|d{oAEc2?ZX%#MzZOpYu}mNrJr54gCvnD0Mi ze)y0P`~{=!GYdN%Cq@g~JOBBRAD{Esz*f%&VP%J~w4gwJu8yvyy&WGF73xBN|NGB< z8aN^TxsrwLU&{guWJbNh{DA2`^WUEh-pY&mEw?Pf$-qqIF~S_!3|xc%AuBs4@1Jk@ z|6cm%lK*)t%+|n0*wP%l(~kcitN-=ppI`j-jelNK^`C1#xX=3V=WG7-(qC`oWk#+2 zCtLi-(0~3GSehTg%l!AQ@k6XXwR{2_c^mOqMiKl3Zif1YfepUV{^uunjDE7x>=zD0 zLlZ=M^7xUW6Z-P_rFXFYgVPP-ms%Ge2|8cBnhc?$-MyCo<%@COP?t&)4N1P^>-?mK zoU4SGZ0T}(UxKb+;`q^~r_;h7Be!wqYT{$hs%uyxc<$GYMV8IF3~<|a@)^We3Cw8> z_$@V8&@-y!Q9LBNh%bnS{$GESpp!)`^rT$uk$BxSi$&pyhVkEiGYq3DLG$|W{~mm< zAOaIBIZP>J>FWRG7Aw)bShX(x*DC_c_bSA~7nj7j6Zn5w4|vNo>Hp=v@WuVXl?w0o zVExxNL)q4gb>hF@p8qWd<&po}ng6-j|6=BU+3dfs0sl+Q|5|7K=We!yC9@rd@L-+_;&+vpgG$SsC>?DOSP zkOY(9wtBf8qQ!o=z`*^?kC0w!sU?ga$1Qav&6a?Z9{M=!_B$w4kZ@NyTaE218V+SP z{zXZ`b?6Eg#It@BMw`t^SyI3)mRPBX&d*n(c%-n>TLu~KN5Wc726HrLj5hPR?H7mG zN6i#w)JiNgEyEfHLsNf)lDsOfQiOza1V?#Mox?)I)Cp)qQ}zBh*^=Q5!^@7b4cBsl_D(wS6ijlkP62BZUZE=^f3QtJ2?Eynllg^^*XMl5&M^W1q|MO=#$t zCWdYALv3QYY*QK43Y$ncEHw13L=#DT5K*iMT`Bl`bi8*=`jwuk5NTYyRLHZ%lHnu~ z9Mkdgq9T+277r7iEJpR>Lg1?g$4(0r=iTnd&CH~NtB<+n1VGMReJJVE;m(ru=YkA{ zv_pHajMwHXy@fuM%WsY|zWRF`Dk4UxSng4TIC!y{4h&_femq`NPLw+dnvVZy)VbU1 zU2HnoQ9Dv>KKiBDJ2?yrlW?gq#y@w3f1qXvDpoI?OKudtm`Svogb~$8t2{@$qn6U~ zIxypuXItNiyrIqUz==9_ZoYgexC)__LbjMd!e1sJj%`8s3{<`7^e+vZT0bHtI*O+^V@8#DrX;zdz79@NFz*4OoPb> zs~|9LQsPeAIEK*2&s+6ge9YAs+_TN*1R~sRSu(HmV zag^sGOa#&v&C%HqOl}$PewYC-%3fd*4oSA1>u`6Oi*+oHVlyQg#=V3B#HE5r?In&$ zS3T)y_99KkakhMiwTV~{^(iZ}JLf*~$HD}KJO$Ofy|0`%u`Q-yM+{=EYA-I3jBg~@ zbTFp~td+W!a>Sx5;n8Yf?(&?b$PX43)B6y9vQi;WQ z7U><*^P%!1v3PA`gC-=Nn(_QH5!YqEE}!g8mPEkahqa!~5@sr9$W!enqKSVrZ0~Vk zCJ_RGCjrf~o)#sSz@Z$*6FBaYx#Bvc;~S|2Gt&Q!O^*qHP2)Rb<$gAR;2)4I^^%SW z=Osp$!-ce!SjUNt{?5a_HA^-1LgP>`zK&|9z?&=$4nsPZ1WvR?_O#qG;5F6lkt}IV zIf~h8{k!9ilT^V*wdkbvFRs z@%qG|Y~$;5yhGWH)s6VG95X(j2pIo2>G1F>`msG>s>dIJCMp)+x)*mOw^!1_6I3Z%3f0&cSFH{rYN4jW}#PF6cC=QoacT_Q6^<@|zB zeFw+6&iJ+G#z@|hqtyy!VOZO4tR1s2|Bli!&kVO!OsNq(7hwQ2b~p?Q*=)Xr3190F`qwc(%FK zDX?}yp4@f)Q5oM^neE(2)!u~ZAl##h&MFE)SyiyDm8b2+w>M_XuU%m?E5WnX#)5L6 zk7`9GVYB9lTR*Sqhtr^6d?*Nf^$*^Q<>x&4fbPEAp&dEKAxOb1%O5+7uRrDV$`id= z4FQ2(M4wyP<9@hsk30rir*59V-~?yoGX>>&Im$FAzvg7c^0g`9V}(4)##WnWd*hDg zH7C0tb8AjVKv`5=R?nDH2`1yq(yVYu&5LMAFldirtA-AgT2C*JTGkYS9FjU@9zOee zad0SK@1(C}7Dg#OEjPcu-7C{sA*gn&3bk`NJJ}ocXRbCjim`rqw)b?69p^V2`mf3M zp^9Kwt|HqL^edPl?q^4n%1(kvP7S0@^77cQO`kS2(Pgz}*j0+&1co-NzcqJt{4yeTcR42nyt=Aaj@Xd#KB)eq7ME#*c3Y*Ue zK`qa6UY%KYl1TMrk?COZuC3r!)G|sq!~-BM2yXI zg^1pUwRk?4;;PfbrBuga;CBxD-+YgD1rBDe3;YqAOlP}uimV-8bKm3ffLGmG^oP3F zXO0|*zCC>*7%uXuzrsvB~Q+r2$A=R01nJ9TS+>E0`LE|33>Q)m-CkAim@ekA?B z3j8eXeXFmZnlPQIh>M|(72&H&OpmXZdCJWQ8FsIKtNS2u{0%SkC_cU$=uBMenC=n* z=m1?DE3>s5H7_}kA=dXxm5RJp27!0aM!?C+{KP|Xz8-9iE4~ZGQ4q0!)IDyrs6P1K z1RM1mV-1!AyPc#L#6@GHlQ*B=NajDaQgI(XgTZ%t3X-1934pWfE&^((_k%hr`td<$s zfnq4ibbqdK2E$Nfw;o2arB}9G(0a_1xL50Af6Q4c!eZ1Bpi$ZyKPTi?JJgm@yKQ2r0lCVPNi~hs`N?KB|Ng_T*uEP;zz6HOF8o|Z&|EQ!=lwR#F@Cyj<-&3 zlsm4Gl_AYTap(`%64y3t!M(%hprr?UGAn%hU!R9+?2HwnYR81+T4{`?=lv1)qm?_v z`dgyqzPlA);jGTv#vamg9@`AUJWOVD9`~GyiJ7&QnO_Th00obWdoISdGCD5u5VWeP@s*&s=tdYQI0wQ3>+h1gyTW@bEa_OY2=EAS;^OrY;xL_Q5jQon4-@W|= zGR?9uBLFB--0@{EyV zng~%yAFYMB#t1yS-^%bW9DRpM9+++$ zfh@cCIS+upBe%2Dy&AVqQlGgQA$eiRd>pYRGsqYb&=jl>68Fn+&GY)S6{29=rBA1a zgEfb1hi}Is@WmCxn_=&^GHYER_fk|3mqrGK-7XAO8!ONW);nW8$0f32$;s{>yhesW)x;^^JuxAL^Lv z7zm?Sd!@c|dsFiL9xig=>;!mQJ`}^kcziR_SWk1*G>m(E`*KRB{J!id-by4@e%(Pn zU@4mTY5#~ME;KXYduR923Ud4aUu$2Q?*6^bb=(R%kE*xPs~r92Ebj4{m*<2LIZ&;J zy)fMK4c(74A=rEoaMEr5AJ1{pUh>$b2<|(uq?Tfl#JjLIn_eB!2rcJ~+$=)!=g`Rd z=iJ<>5H$#^PfDp5E2ia}2*nk8?d1D|0D6Ca&INMg4&i4-YY811pQtg#fNDC-w~GCY z4D|?Rt$rz3Utb*52q9OBOm{CwP+dQfg)6GkD?)mUn%%Iy3Qcp$M14<^mi!>eJ}uhZ za*3Hv0%O}D)$y$n%x7@n)!f>r5J4Xibb-LxHIK83NkVU>X0O8B>cf`!xm3=bxv~t7 z4+19(GKn|Izxz${SbsgUq?Mgb)skLjYLTMMoN*LOEO(-ireuKi$`f+IjByCNKmxlp z>5dhhA*7{3z^PE5pZCI6h@xFObFndPE@jdneV4cc?@_@zZdry3PT2x4ELNeYuAMQF z6n20k`TUP7R4_LjNheVYWKUkJ@}pi`h~B%RI7e4GAJ!cKb>b73snmz<1FOB3zscJu zbbj^zvgqHL9Mu}N2x<2uKdD{}tz{f8Zj0mNk!Pdv5hr-py&X%hl(n9CUt04Lj@)xL71xe zYaBT6-OmM3nsYM5Jc>-A^O*c>UyO5HCK_3tL6Q&-Fu|b!1l( zpsB4SR~^^Qnqa*pT%`9hNX8}A6_7;GhuQNp zd_a3g1Tz5!dpn8i!R@%JLCeq!n&9~)ek&kJA?QASpig;Wi;zSr-tSkeUb2d<2d59fiCKokX~$#WELdQ0VSy zCvvuEP-{zpIG9|3Kl4!9=v;F78~7(UVVv#3ll>j}jm|fTSjmsRPM)1Q_9Y5mf``&w z4C?7Ji)2g0SBPder}EJ*bOk7$AD;mFk}e??Y6!AssKDt)Bl!`2sJDg=*X%omBu$6m zdYQoVEzt3(WI+(+{Drv=MaIq|uoHQTCz;;nQ5_Ey6U!Hona6g1+{&Vf8;=h*1dtu63vAPmpwiYER#T5I zkrD_LH3^OYoIXEE3Zw76=50Y4lIj+9`cW*H?DPPcr1UXQry`zWp z8d{iBtN>>TL>17kWty-7I|`T&E8hi7c7q&iHp>a#kw$5kTSPwHb{+HGAKdE8WvN#I zkikjQKTezAI^oHii*q^j5Pn!)XZIUQrdYyLa6~EJ`s%sZkab4KgcHOpf<7qut5W(4 z#l!I4NpI-Qj9S&VG}6ZezL4Hn(1!8f_)tNoxHBhkHZ0?o{xu|3P;p=4sBRO5>hl-h zV{idP5`;HYXfe(m#cr-vIO%?L0D%D-DWFgW9hvuKR5^voCxO*XPbKcz_nYKaz4qlb z-n#5hH9rd+{xZLF_uR>+G8&KeWD|J{IIWS7t+9BiH z_;NjZ$e3H6k3$uT&uKAM`i09m=lLbPT^-rjUeK5r=T_}*#@G4c?FmC2e?6AZRVe{ld;-zduv;zOILsljwy% zF0Y3pvC<&Voqg+)1l6$6TAsKm>`Ql2^hTfv7G>97O9j~8RPQ%K=g9@~bG!a`AO21w z;SH1Z+10n0e+TfN6)VB}q6S5yMtXxrLX(C{LlD>Z8$6p$ciJ&spy^^FlLIgsmYqS& z>^2`mb}nn+!t8ntmu)G@Y(K|H2buatlXYtp6}=lwtE4DaSgA;eDwBOvmM6FTDiX)_ zpjeZ$MPrB6qYb9W!jY1gF*y=n38J(pY;k0!cxtkLwJnk*8>F=FwPL4T;fL31_+v*o z#;l&B*o=u!m@$=_U~eJgLT89in5%6*6YS3{EXtqShV{GN@?nxVoI=7E&bGhDyY(ct zyN8A0&<=0Tww|Qn;78%a9ZY@(EERlSZ3o_2i`fiWnH*teYBLZx-T%;BCyi54)J{;| zA$?)-il$0-*J-;Oc4rgjz%n4UHZmtR_Is*a9G3=jhd|@kT7pkX^}las!jfWA@ozOBANKrklv3IRx+alg!7mnR}S)MO6O)mPhO3Lp?y zDBT38wW-M(D!UKh@Q`V4m7!(zL24P)jbCvdxfjOS6&ZRVS>fMTB5MX#QlC2Y`20#- zF{@7xP03s2?u(6DkO+^08#x*IXe5&MemQ&vXDwo3!durh7KLW@7AJyu-w^Idf@SRY&RL zn+qH#!$$Fu(L}5daABvm3K@q+>9H0P3h-wP)GD(WALyZoNe&LuTh_i5J2I1P7}X zYgvFd9sq=$km+c#Ikunv;e`|rEPYQ;46jMot-!Mqk+W*!6M#IVy@o&;rM~J8^ASB! zulwEnBKaENUL}0o&h5M)5t!5T?M-^DUAVh(|8=U68JJ3-=)Y=Y6n~uqs22rR$#yr< zFBU5ao;_`Q|Df)YN}5!p{JibPRQ*7{UgP70A^>sRD^x!ks=M&y2%iJTKj=a)UKH=^ zix*3Ij`wxP25jB{ij;bO51B+HL_0E|=!&#UhMHsyj1-y95fgn7p}2JMdwcYp$JXKa zy#BeL2!?;No@m1V3@LtoM@VsD2MoVb~r;_dI4pHmw*I7Bcx5x0>_v`El4^ z_V>Dt@-|_-w~6P0c_c#~*gx{F*O#n|2}V?_UCa6bFd&f11cd%sfF-dJ9MnUWNS|th z5J3WwV%>U(LeWDQ6;Axd3ge1`xGf;Nq+c+V5PZ5!DK*i1+4<@`H*I<9E5_+sw9nLE@_(AAK(-4Cq5H7#1~@5PD`QWvfvg-@piNj?WMZ{T2hb>UAxG zjj^G?bK(8B6%HuD;8Gxt<-_B1k+P|z4NC6obvYX>gzcl$c2b3}PgYDw#V713*xYM*}_v(kvCOuoS{EH2mS z^9yMB=O(q6fIFL4kt+X^VrTL_h2$s|3BBb-Fw>_J>0>`Ey}6(PvCl@0bX?Z>qQN){ z1vg*Y%Ev~Vz>(T2LnVN+74l+%Ir?9kkjEU6D9F7#2c=E(j6sIh*SQKDuRkBR>y;k( zAcj`~=(#N5rqM5s3Ho}Ae#3f!yc$Ud%*qmvQ-vB!{YX3DQ4DkKu((^iPI;i$bYr*rDo8G+U>x|{l~eEl>cybZHYws<>O{lfVp#7I#v6ty zYZ?I1SafpG>A?J~Xig7bqchUH^RWw08e@p_&CkHJmW`_0wN1oAe3r zyDI@K9eME{r^7Gt$Sp{D9NOx2!cC+sD>q)o0-hDXYL1Gn4xX)I8;uP7vR}OYZ(Goc zftoY>sy+KB)BG8!SQyNe>)x@p9bEh&sf)(I)K`4>rLL)bGz^Sy*aG|a=g>wul%AGW zoZCP57X$qBG?D_?|9TvT+t2wIW&c}VDUuN*2Xpb3fZ#6zG~}2Ah~dhcE{IEqpo))z zVs8$l3J;`hN2*-*df1zH{`t^f9wCT;oeX88&gWBn!30{by$P4jr(ClHJToD}%LD3` zMIbv8+Cz{0@n0o1T{>W@+Lq^8DePTd%*-tYkw9$CUh$jV0E~`0$Q;l7Z3TYzBQVab zyx#ThE#zt7jR&>LyNi=G9uqf{T|RAnZ~q7g$w4rPmUP+f7Rz9bu+Sd)^%j3@M6o=o zVXL+N|3=;QSKo75C!t6pP*lY#&Q6cAb?RQ$mj&4R(XE4F+L88%C;A05Fz^NWrbt(- z8S#s8{&{KuGE6puBI5eFKoF!@!(_J@Ge*fBbosu$xV|}&oP|cjprUOQ?^Y}w`LG`4 zU*qNW^qK12O#hx!DLg+Bflx3NouW1nA2_torKx~Cc4GGiC>j_L*JEl3 zF=Y4;k~N*a`8YIFM+~7H0TkZ}Kc&)(=kM=_iNJoc0=Opep|R-Ki`>QLJ)HmGFl-Pp z42B#QfHEOVOurjnaLR4_T}nX21dI~RhVpcZPj*Kmb{G-lzqb zuYdOIA_yq&g8?7UQr5?1Kn@fEd_Ex4ulglpnMus+fnLMV>w9s=_hPKPQACxJtgLL1 zpb)^5|%smu&t_L=^IIR+@z+jo(b>C_fv>Cl!Q0Zg^6#8)3 zY`!-N;=ugNtE&UaPu|+G%c%e68fX|#z(U>#?)&{x&jhV6f?mWFw5)j-a5+C&)SNhE z0#SuE({v03e+bkeO^=hE-KIOiLoA)VdVq<`@YJ%BJRehk8;?Q&_|L?0ZUb>m z1=KGXCe9RpL6B=BdFvATd|U>$Cd&i5yUx##k1WdY`*^WGiooa zW50F$a)Upf3gV*n;-=d zVVNVZuHJcX!RA6v&G#FH#$^y>v3PxER00Ch$75tIX?r*reo zN;p}dwd&y8)40W95mU9@BRK#DquCbzIKOzxKR0_S15(qOYTo&_1c>1&y-=Zmq9|%` zZ*z7*m2))aIpGEHuiv9Bi+#zQo3z|^U`qgx@8Z3>`Zvz`VVA$QfRF(sC2w-Hl3$kC z#OsBLLo|e{0t%^84}5yc9af^A#U_g(uHWEyE!A{Cm_^OQmxezYjf|vFp4+{DGRAL2 zXlNKBkjl*#`rR~vljf(K-!4{w$zB#H4I*)^USn5fZ~R$X0n63_G*l5h7xeD_a@Rke z3UcA#i_;rfS@{0&sQ;`pBoYIV{CWON~<+x;0f@eMt2i`y`m5T9It#?4R2&uoV3~RMUA}7=u!0Tq1M&1RVa= z{5C8m)|C5ir7{U30Q4DQ@Kc0Ii6MPw=xtWuSKR z3%t$sW-oPYr;PI7?Wi9O5~7)l?l$p1H-LJi?T;bDxAP8#*HfVg9XZ++z#$c~ba38T zp1SU(iw(-_XI!4;`%44a(O1ZLOH~G~uKoKJC_-|9@iupwSuD=2m_iIQRVIG*xiC<> zjOxDt={7dk4p!rSA{~@}!K)n`==qojfZhU?Etk_j1dWVk-2NS!+EfEbO-sQ2kMntd zCLE=S%r@$b+ua$2M@)+*n+zFNaFlhdw!f$h*l={t0Z+*NyJq-b>N zAm(oh^_ML6oAS{l=OxKh_GPu^>{Lj>-XxvPq%RK&L+;Cw+jTwKo&ON51_ZP=ie5Tl zDW6c9D-;l_0?6*QBa&fFZ1k5<`SDb+80hg@i|>hg{Nf1mko3i2peeGTSI#N)_Qn9! zHVCDW26%{=2jHS?kF(Qa&myRJ1k|Fi~vcR)63z#{rLy~9vbfwLGV5Nl7jd-Fq+8F zVQcbMX5f(9Ygl5z{@#>DX1Nltm12d1Ik}G-Y8Y*P%=4i$Ta(c4LxK9?q)&U1)0lOmDu^_<`{uTD)|bx*```7m z=^jX`2it`=>3_OmE~W(8NFlu%fRA)FE1j%$d8*-~8+xEu+kgf2T)iw`562r z4!k6vrhEb$M3G146)VL)10ej4)_`{GNf~^OzO6yt#!JMX=m4Q37H~rcB@Sx7^%e5- z;(uxyDK4S(P_)Kmm@DY^ztuP#?6XHuvxK?^)&WvsK;w zQ`nvHgfL4ASL@~aENGn-$a<||2-CjwP(+J@n*~C>h9&$AyAq@rRMUS1+A8eb4f$V! z{qLtwJq1Z}(SNcCmf|Z^Y(!$6|Tad`JL2`V}=4v@ykP=T*qAT_$t|F6L z51dF?K?xHls$A02auUsnD0=UBuxh zd|vE$NXiRypZ51uACuy#_QVpFF9I3e%30v6OLD@3uz1MF4CFUZU;a$U`Y>&_=qa2bke0svSSeSRr*B>oyt4 ziY#_d{+I~rZ}b3|=?KKO_YnQ;Abo0g~AAOW&J+tf#~VnC<- zAU{W~2zvD*b|Su8vE?McQR*l?4@^xI%`2NwrP3+i2Q5n|U&jTs)~O5p74}QvDr}mD zU>cAO1~2L^6@?mmfJ0FS)pHr#4hPKZH@a)|i<@#_pZNLhe;!GAUYEs80>jBB{?mQE zvjZUJQw4MTYv{rFyRz%gQFK@n0lGACmZusoXXXlOR$@`HVhEsMKEQK_=F-?|6Rm*z znoWa}g6aLU$*7}W`jfxSaT7&)-XXgX`%|DNEMtN&5<_7=l$>%G01cJdmM}NtJ1;mu z!bSld=uwc>C1AdU%NM_Q#71KcLCtvFkDW~Wkzp&K=sEyd>M$s9ruK_{bkBK+E#yC! zK8@ub{@BUCBy8;yym{q!`OXamx6cA@{)3JL;~>Aed~gn7x~`x*vW(g zRQ8#su{VDj+|EaE1m-Z6+iqSPu%b_gm($|iO+aGx7eFB$Kz+NnY!z6iAt|&#yHmY{ z5^%+a+Ia*e%;cGRbqCDY4eQO3U*`Bu_ox3B>m_x7B}+4Nx@y?Z^zp6Yaz8h1B~mlrV$cPnO_EML^M@lp&vz{P93d%?n_ot{fok z5fFhRMxiS^8`a>d4LQ|^CN3bVS3q;mDqV%N>HuIAg)}|_wQ^2jiR9=GP!v~^+V{!r z0-9t9jI!d29j33KroFqhILt#}d}su;zY%8v=rUn)5FRUh zeL8(MSaWLNv0q322HWP)1&crEHdha@kHM&pFX{5kTbbQ8Ex=awa_<5}5`__Xcm;@q zYotv_Szn$@lK)skzZ~RHDG#A-yno!nOBdn_R>JPIuB||rd|igO`w}AvHifoKE^|{% zluX%lvbt&<5Pa&Rk4JL+_hzU3nTx^5un$nY)AS#FqA!zj_dVrVVRczZi2!0{T$~E} zZG~@Kn6p6hAOA2jBo&<>g$sI~+&joO8Bvq|b_4zg?rmeoiDzj=#@$qRFkWs{rP0MA4jl7E&NKaA1?u}lFqHMZ1XFw%60tlOy?J6eNz2DQl z7l4BscuKte$pzk}eFB^3I{zphjABy|+~sD-7wn*fxd0923Q&vPmrilo|JJJ6687W& z0`OHw4TfGoh89Y_SwZWZDUkD=#jtH%hu%CBG6v46O=ps!L^T9oP$P7NU-eq`(bKdc za1z0Uxq3fI8uWY0-`>0>f=TrJc^D6{i>ha*CxE{+IenjM;RNJ(&o+mIU&*8VzM|R$MI0G{4mzQR$^DefW%-*XjnsSXOQd!o3r9d~u&_pX zNAvm_BW=hoApM4c+~=esSyoMjH6^=E|BmTNTp?}gHcA=gXR`Qq;ts4DveGd5fbT8f zW(NrJctC{XR5hB&ti7I4uWIBj0aLhdyQf<~D!;jh0NKzZt&XQVL*X8vNzw$;()TDP zf|Dlf*%FL01xHZITo0B41Z`mBI=LfL4g1V=L~m+nv|pEp$4yw)gbRQQ2v5qJ} zK%=@YOvi*}337d4+CC2sIBdn6!1p4#Yz^&DQyll*#eRAl!a*wHwyjCc_w+Wf_9PUE zWEA(z&~Bw@P?RZwFxIAp?zQ{fy?W{9gUs9eKb`W3??&UIYTH#D2>Pb>9Qnt>`DoR%Ur-Q#iWM8Ie$Ktr3E1h8fvan2nU z6751t&hTvwkl&|s9eZs=%WFmkTx@}rd@S~5I0DUQY9EE-+y-X^wqsvU6KmSZ&7{r; zXoR$#rPiVoTW!rP9$dcp@UBg-rYKVg5v~|h*Nu}!<(kd8?Um8N$x)xhBoM5RnQljN z%B+o_9<8m#&#D^55|#q^6+ zI&`RTTw7hs2ZNiVwSw+Vz{osCoywU^GfJHd&MduAMiF&JO0;)-QYHK(G;n#xvcA>_ z2l(R2A3HAHHCKN(2^6fxnm=10uCpVmo0oR$lE(xD)8n))!`QlfL#0V z_?0nW#6vShzh4m2@ysa?$7?B-Pl6 z0&sLfpEpAH=`Z?dgylBD?rhOmK$_bN44N&L6XQ?PQwzij=Dq6N@fq+e?kHCLJ{puI@%~G{=~Rq&hVXp+6ppv zyl59ZA%QoOJC8qD+!>;~O)QjU^QvSCx_#i%=phE7KnggstNGam2|U0#n;)0MV%G#8 zOeGq}w_A$dA;baO)BDGUR9%1$x@%cTJf3_>g7t_JM&Qp3xoy%0_Ru+r9BGmYT0Nl2h8^{6%slXQ03@)I z$C$L{f+OAiR1>{se<8hQH>DB;n7}AtTir&1tVcSDt7t8?R?2no zU=f~72Bpdn^ z_D8?txR|63IJQBctGL64*}y95(|8I_VJwBfh47_d>$N=zkDiND7Ut0gq-`v4A+Nwb zD}+5{L>ABl16alpLspi-dQuJ8?hY6HL%BX%<>}8)35RQww9}!bKGZMT32tBZ$M9R! zyWwcvfjwwAnih>5R34I4uG!&Hz!bui{{0T2rrdZkkq>^_p=3`C`Y7lF#r2kfM^L9! zIy{)Y#G`oG@h6XNV`?iBGBP0N!Fk5^c>o2ACc~g1sSCSPVX;Eu_nx)z!f1L=Rg znWoUwn3?KylDEr1qBa|R?@SJpmQ=Z)kr5J*L8aju>eYcwI9>YyHsA*|tAe_%-w&0Oh{c|th)vs zVAL#UUEU0v6cXX_A>TRPuBJ7XZ zIqlTg8OB)8b+0hOJU*%g)=3{L33|gMfFjsqrGMY5=7U!C;cj==&y902L&DcEZwVcV zdPaDts!_V1()*XzKrmn35+YtJp!kmB>WNkLCv{Q#U?39Xy%(gdisJ=;V?Lik&&U< zi|u9&dR#qRa00X>BIcvTJN?T&!$y2AKIH$WNXYUOdWcj> z?vkyHk}JNfLRd>M1M#nA1Wm9X0Hp*#D9OLr{lPb$N}-o@@d!-6SLri+TGU2B-&rND zpooNorNR_HrGs+|n5jUuG&QQoqXte;uhq$nC}By!dKB9wT7jg_O;B0^{J*&UfTBd5 z``c>VPD@^K18f$58=G+##iS@QAq4j>kMSgMneW1KNUHxw*Odoixvk$rBt()SPKt^$ zON2lqeBb-- z{p|IuXRWov(uDUO@qs)pDyuYc%5bjKrbt`u$X<{DKPOzzU#CgnP2papo72L`=lS~5 zS&)Cx=hbOe@jYTr5)xG7RQr$&LEG1yu~Hi9k;2g*hFS&=YMc`&m4TTU%k^F{<}9}Xkq6$vrc@XENuxG+|Dwa%%`%c& z3|}IxoqD9~ zS+xcOxa(73%5Or$Hn9K7x-D_T^LKf*w^GKr-XfPyTl|7e&VB2Y0@oh@W+wf;5U9lO zo9}perHd)I2>3G|0=%#0Q5UDsHu1Smv}o*~xXr&a-ZAK+9(ew_p~`9D^WUzoD^Fbq z{nAyPHsuHWx_Qk^4^LLtG!74TX^ZFV|M{)q$6m?_*OH`!R$qT_rprwmKceP6a~^I< zzJ1TkxnbYJ-1DcJf{#*4hYkIc#h4%R$=X)S`42M{Y0L2m014c?SESQ&?8)h#E~=mx zyC}=(_swa(&*D*w`nsUP@>$OC=@DqqzVFuZX1_vy?BS8yw?0nrTO>M0cQs3m-cI_u z*1Y|()=tF_yk884QiG$%bt%>7tMqOcjVQHk`BDZ7z6oyIXEwu)4}1;PdK8$4`;+Z# z(BsaTPxL(V*l6~k0j=RTk0b3>@+XD%eOk3nrm^5Xl-Z^O%2N+}3u}a)*@t+j4vqOV z&$dainx4xkyHelwxJ`dfXfn4(NOn9~E}TX8o3<(Q*4DfCy^giso{n*=AMCw^9!PCN zsypn+es|qz^6X@2HU|V=;IdB|(QmWXy{fJ03jM=qfN7wMx}-$N{-OHVv7dBJOG)n^ zlApEA?}lXJ4*Bi>i8M25b(;U`IUi$1%8mMMVsLCL9tR#S0H^!TNV3N0uSz4%N+a&< z8yvCe^uL7Zg`BqvZ3VUGU3!Z>2a`UFu`2IAW@{JX(tS5^Fv(M3W>HP(>VzZL4i_>( z7c#zdINrxAf9`3U|3^hHf7mxUz0xXEInqPD^uFXoVd{Z8|KM8xbHT#z$33K;Dq9R* zRJk_0r#;*;m^Lgjo!m;u^;7K2AA&x1QlkA&m3l=U3JOoD9gT| zc~1FRwak+B^6XTE@5|5JZQcy~|Tq;s?&`Mr()ujkw% zYy4WmMcbweZt^oOp;Pwd7s%Y-uvy<7?PRgOu_&Qh_8f+*rT5BCnIAThaHpimkMnN~ z2`oQpKWrc&IP4E_QV1En7TOZi1te3ayLR_6hia+^PaLJL6ma&X8APW04k$<;m&~tS z7j9|V?Rv)@BlRv&S3aDoQz6mxZA8k&ma_u0&j*_5j6x+`+Lp(gRfNSQERzdqY~c^u zsXfgf%T@L<=*>&3s*_J0eSm<5^yZS~rQ#8TXFjqI!k&OIydXxFLFxfk4^COF*WH4QX_x@l~RCd5@$uN+R{im zM-i`=+4%3*Qpt^!1K$r#rIOp6-g~_47V!>&A=J}*`+`)CBe$9w{OTnJ z6ptr_STBp_%pAJvocZz25I#G$xmwW&{9Z@Ie5^f>jaFaI3HR7S@Gr>$M68SF`@Q^A z$sXF;CvI)o-?l}93UfeOAhMyf?)ELHBxi%pA01*c;t;6I1>-nuMcLY2nNf=k?(Amy1L zFT11`ySJ@$ag={)aV!g(TFBwepmr0Zv}JzOmaM0i8l75GC-MGQq5`-fVeMy%Wu%Lj zv~AJCte2m83oD5(BPg02VKQo$W#zvr+)F#0kV^5g3w--4cNkcmH(WZ3u$RI$_T5jL z#P&UsxBC1Av{nH)kx23!u1$Z-O1q8rCx-}z(=mW=V7kNGt+RnFd*zGTgOX^TDK}5_+Ot9)acdWiD zmq{al!7meEi|gG(8Q}4Hx94>Y{-iSaf^t`9G{7sC`R??yI;zhRPaZSSn*RB%a2_GV zER~lmHj)$8};|qB4bkECavfVnp%H_8W|Gc84;eo(P-D^GE(r9WnJ?BLGHp zur^ZLW*I~itxvm?S|OW!GED@}74|Ic}ivl8YtLi^O- zkT4l?EVMgob5A@c-{P#q?0#(un%rzec7)l0%n*8hTfle!u-6D7Z$ClI7I-%qcI$?& zW8SLGASSgPa`0$}C%is8W>frcaY%OoXE@;OZFqQex6Yr7Y$X+H(zofmY}-gCTv9yQ zX0HRysO;pYtuU-f(llIN{Nls?WI8p?J{7(&bLFN@-gk2CCBdpa=2i*YuBR(R`yQcd ztv|9kWWk$`zW)+@S?X^wn-fu|!?~Bqhwhy(1u0f5RM;OpC!v0wHLE|l<&~%-}{`O;)CWQ2dH;Rw=L;~ zJJg}o>n=!#J}XB?lj?`6ez$Kk15fNbb6=(1*Z-OsXhCqjTq0@%PYKb$u9BBDngQaM zd0tu{{ZO5K9zvBwR+gpGUy4PsTEzMWu!1Sd?A(QD*~T7Dnv%_*^@GO0un( zeE)tIudq2@i*&4XFH~#Gk%{`pe)LQJXkW2PlO~@Ss?3AWK29X|K=|$7)lwKWx@&VU zjbG+R-+)sRr@MzenN+p^Qa{xpRG%#LHlj`a=)Dj6Gfu|oOa3CpNAJ<}FuMtix3{Kq zJ!1VSQ16~5a^ic@*UzpLUm+hljp!{~vtS4BCa4E8m z5ytzH3;x$?YQl>NeDY!CiwnvjkE;Gm=zED8G2iQb<{8pFGEj^ydrc`{2fs9Xy_{L^ zAoOY;!p%+?wd??_yLpBZw{`0dN)9-#GSG+=8<>ot7Hy{~iMw>8|M7NxT@VUNpTtvs2yt`_8fhjO|;CFK4~ z@$UG7`iDVi9fu7w=^6dchrplhJdZjwaHgJP1={d4qfJ?C!@%z3`K5R7?eR>BrCjed zKW;ES_ITnIkv`(Y7x4s+U(4eQyNk-8)8}W>Y;nD3$fSBb3p2y|VW)nrA*M|b%9awT zeNZIDsVJEL54ayxfh9BZ^~3HJ!ox} z!;C#8=C=nr|4ifTpBrhR^=~DnR49ymOj_EZr8v{?djE9(8~|uOH9^ReF>lz*dZi+Q z005 z`vpEpH+>JIAWR96{_-+uMZ*C>2(~m8Gl(fPT24XniqG50{58hf(udA3DP8%0BJ_XY zj71{w%cFDluI#^`6B&iG(h0Cjg#N9QFpUx^W7_IcufdN5t0)M3*4If@(S6EPON2}* zpWDX@AOqo&!%Tmbzr5XIDTdiBG^w_GtD(^jbFj`W{z9NjX?hGrYL3V+tXPh}f2-e5 zK)O$ABu@$3m`{;Vp~yOZ!Q8s5+;7zcq(=ofh4eJfh)z90%thXTORGBpE20WQKZ;JJ zGW9$Jcp(P8H2$qbcQyt!6LxX3dhDb7_wNq}%#2r#WtE-w=ytkNf~-2vJ7yy!dk|0{_ALkFe zqN_>I!b%!4%16J}1ZeO_cOl3q5$bp=o&+LeGWqc6A_z}lvSG~-vYD;SX5IpaPwwSmKqCF6&lp^xXAWVV~bPPZai$h4& zBYhX)T6ls{xV?|j-2dt}6``C|(ac_%iJzbW(bdn2UY`q6M>8EZogXeyI+9AhwM0;# zLEwJ8*@HEFJ1=fslajpi&^V_q*`f8!nnxLO9$Zz-xxbmVWFd2|cj?@0@%zXarH0mldB;A8kTWIkUe5+el~3?9h))2=hqNTcxmx$Ln)k&ta$G{o)G9ddRY zr_m4NhH+w!HWm5?{XkaXNmeaFZi}4JipLDl`38Zah@N7LC(F7;)HthSmh>_WqsC{-HGdZ?i^l%1<#8k=a3ZK;azJHsIH@!4D zARCToxwPAb;Y*NjB=y%uwrr4rZY`+k;gRcl9_Ih+*T);9fygsG@MeWJdOfQoYCJS6 zI)uFB+d|n-2YFka&os-H22ULybbAiP=0f|{Kygiezlve)8b8R}s}XekUEYq}Fx{vy z*OZ$m&`LnfqGoHVo^&EhgH6mP$jGftw`z06|3vR%SaH__(qC;P-E-xS$$<&(KozWl zO=tOa`hynIl^bq}v#frLoGn|(HmR3izc?46&`%+zSmZjQRTk6*vv_TL?z3P+94XuJ zpR?_41k(dotrVP`Au^sbXPvIz;0>e%10e(j=L~J?L`RMSa+@cPDNTSS3dP3rw@)f! za=@1D$2O)nh!%sc@Sm!);-`azH#wnyWQF)XUaLG;fKA%{(cDKS_gE>U+Kc|J5Ickn8W0El4B}0z zf%oGE_eie)eLSuBX*v*zzF9`pZ&s9oI99@PuG!f(r%uJLHg8@1%E>G>))z;cjx+69e5x3@tF&dY0Q`MNoqwbDhZUB z&c*K+HsyG;Lb4UdAn85-Xzky7RN+Vzf^+7P>)2a0QS18gYdNpSH~~_&1K{j#-)2G= zQBXkPYO6t)BE^*t8<8UVfMt0*tfml%1x!U8GZxzsv~1g+*+ZF?vuee6|GinS?g7AT za(}&1nDlL3);&=b%pLz>M~3Sh45doYWxwp&AImM2ZQH_Q+mZbMyYVm$GvD2>2gVO^ zz95I_{4;IpNb|i#U$0X0Fz96@T0)Yg4P?OvhwXBYi zGsII+fN}7$VIM-ig7Ne#q4Q5fuQ-F%RSj?7Hf)&PWcM@|j(D%JxLghijVeP1T!z8? z$Ao5o80VPz>!fHt&k8mK&fI?F)+V-H6kUIAImjsF3ABcRJgQ+#oPyF+&h?m2uMUFG!F8H?h0wHK% zCCSz96fvX@F97q0#_jX2Mi(>yI(bkvL-Y$M0%e3}Xf-ij*~(zxha#g4Ge|$|8|u!S zJ2c{$jC);veE&9>6#5tDM|_4-YT@5n<)V9Gt~0<=kFk(0Cc!MEpKXmr9tznFmLwn2 z^KZJi9BQdVG-S;fh>kQpq^jBH^*zuwF$Lqpt3sWg-@iKL2-HY?L@BGRyt6G4AfnVq zMy`B}9FJvpO@ljpSGo#qffxQ=-Fi#j&9#|2b@_X|r-o}TS8+KaZ z7(SQ}j7xQJ6(U|)W z!st2nDx!oB;Dv;ZcRoJSv+1K}IdHV7ZnJBrdPeYI@9Clup2%J10p6^)*H7nNSltYV zUG#Wx>_}ue-s(9rapM{7@TJ!3i|m>%S6XozhQ*zhTv577R*48;?%8cCHk1){%>MHx z$ROY(41qWPmQWWfe#H_?4u4W8rlXZ8BnQ)zq~0ZloA5zM=@I9A`@#?<5d^KIs2GHv zW2e3OGFBZb8@olk=t?=w>T0(y7P#QeK~qh+C!Zf zR<6P^8$uA=!vVVRoxHN#=mTjd#m$Q$~50EfoV3Wsq2N!69Yewfj zzwX_*@u6bqh1IoU6dTT}*#87z6yn3fC^$nN>V2PKaDy$U^mw1kQ2wj=9ZxiF zw=YK`^S|$hn3}Ja3#2duOh`_BA4)Qs1ma)`zW8VH_rn zex=TWGxrKHqi$d5=uBRyhwo#d29>S9@A)O3odfjRiA6nipC|7>3>W?UwEL#P-nlU|{F|tM%f4EK$t=jQ(0Sm6jA+rH@xGrX_;K1q9tYBH zL+%wNVa?WF?*LfnjI_Ih=VVMaUReDG$#&e3U#idbE=L8#0Z+u!lB-WH(y|32(9bS5m$hP-rslKYtEMC&CY=;+9oxQ73g!IY(u9KJbP{M8Y z*{-l`Y~Ah%gg=6EEMS1n|lQLe{jKNeMji)<6KQ9?}^3I-0 z5Eu;Z3ROEh??@Nx@V?X-{@|f!MAVr~FQ$i)>C!T;7{Qt{@H7wX>SS1RST0_|_RN-#py617sbxKs6W;tSg=y!Z`rx1Y>EaevjV!Vdv|_d~vN2jk#9eavxt$$@%i z(W1h5EO2s+J{8@8hL}#x3NZb9)80YdV=*}IMQXtJbEU!joQzqKb2K!$+Ou?|4o5o*VDjRR}v>BAPqs%>ZlCno?;-ZsLcqGx489@yWm2A8$tJ@JkmrKQDjIb5cg3;(C|K^JNw6cvrX^l(7v+DpwQ_a=S`Sq7XQ{poXANO( zJTV1c4*l+8iQcL^SPG@6$B-c&;BKL9m% zV83SY#1c5yT=cP#5@+HF*WjQpTz2s%WAGcJPTcA}rN0C4ujuV0Cmm{Fu@^v6H z&xKUebzUt)+{$-@AQe)Sm%mt;b@X9?1zeqm$&rIjrx+X{XMDq1chk`&8HUq$G2S6h+ea(1ghuEpmUL2Rr3 zSSpTkqeVy)V!cG#)%dNG{VKOOKfzBVQm&_KItLn06t_`4)_I_J&Y4`iNNkhe zYGEVpHw<*-kos&e4s54(wF8!->UFLWY%cb6(Qe~oAH37G%WlmmbY9{$kxBDLx7OXf z5O58wUw?Xh(#iaZcLmX>KGLV^KGHvm{)j0`-IiodO>$~(B(~c_)-YR=ip+4G9PRWS zoFLVZ@@(6z+KGCg3Y#opz#|Sn>e_Cvu?(W%zo5zaI%uxGe!b-RAH@RL;S`$U)5MX4 zW;WI!QzDFyZgk-$p`;M_^!Iw3y=pprxFuk4c_=f%y|0{1yQ-c;iyu8{{Lth7$^rV< zS?G6`_y^U|AOUbDh8FaCsfeXGLR_H)mtX=c z+w0jh^4y9L4=d$99-TYPF!6@2pV4ICuz;&*q|Ck`xT@@(r3s^71Vj6#TEqsWO1=aA?m3VyfnD|}yP z_dWE8k#v$r>oD+WRAp9@Fy)ATaz$ekBUfls1~ zLD4sZN~3)Xp)dR{KwKO#|~~hk?f{6DR$;OM^2D1sme(Y z9$@(IpY`eI{9M(JdzH9hWIJHX-Sgi+ZPCg;@jUxB7t7vO%gMP#c%*lzF~5-oJZb6q^Oqa{rnj^{H*}XgV=t=;q%bC@rIazA3n)f|5n$LPQa{h z{;kA39c57C35N-3Y5vbE=48hybLf+~d z=d(Vvb?s1TZJ1>hA`vZcBsgQ#NHl1e!|*%yiSc0}c86GJDCqnlUsHqx$5;I_;h zij(ow!jj&O-7VUF3j9i`Tok)%oQ#31fqMQU966BI7=;NKn1y{I+OvG>$J{K6Dpl{K z+6#|SfpU8P_o8fbqFla456rr!_+HsEXk;zG`^H-&@W4dD=N_f^4Jna}KgYWZTXg(d zJOQ~6&kWZ6{k$n5a}4;Q3X)^17q?TTLmoanBv&Ru046k;x<6d2tQVZ`LCSFlbk>oY zyp4Z8#IDhH{8YHH0zWcL$H);v2XLc??jk(n=8s?6gmKj790mzBUm7w>Opo+X{L;WdO4vP0uI%~z`di=3-jzp=zI0uHEY@T`xbjHBg{k5P= zCP!E9_+S2Qi7Ko$Cc({oS_xO%;4`0%n!SB13&nQOR(WFNsoVFx>tb)uTT-ReN@}qu zmlP*jQpr5R>0#)eQgdSr+rcB?p0^amTxD`KOM}`le|M{(kp3XX3Z0_Nj1pxwmja?H82pX7AZxIY+Wb|I;%#?cj8hFy~oO z$l_QV8G?{=42sh&c{it|B6pHi$H9hCaqA@1s|G z?%N~4!zg2RQD<`7qL-OGmi10ujXt1BGCQr0k+md;87J0yA!SS;*=HdKvYW?U1!vB5 zwfpAnxAsQhhpIH8x9W65tGi+CWB%~Sq33zYCq=EJ5r1GiMVw2|@cQ08&)jO=$=oME z=R3?I$7?E+|}0l`r^gG*rs;XVd+A zlP=_EiZot&t8=Q|L)$Z^=jhK@4{ai{uba8+2K&O++su~oL9Kb5|C#xUT*nB|jbH3yf10?vs?WN?W; z3yh*J7+u&;S7mo1Y~_CXheydmw>di+deVsGy}U{-hecGCdB+Y#X6n`6p6V!!KLQW7 zE6sO4aX4OMBHM~h9tzW@={Mcl5zsi)8*D3UJBf(sdD}y~dbBnu(yo28{p}ClI{^B_h#keUQmn$p#?9pwNY8cyhA-kq#@)~gGo|LO!{*HYlOCjcMj?3yO7%| z-PGp4DrMdz7a34aDB+@LH(j4}CAVdtZsa2rYr9Jg@6?+tw#2Y*R8+C2Kkbsiki0zF z5nE?+@$I;Z2B+Z0Gs*iGN>(?Ey&ASR%va;@lZp$1)DQvgrh3mFE;R6w;%3llop7=2;JwvWnpa7H=u54XP!$xU(zxeiM`lpfZaK`ZAIy5G4UY*%t9TXpJI{ny*{Y*)aI} zq1ij`URe#Wc>JsMy5XbY*ImOh)}G}x(>T90Az}L7y|Jp9TV~>~u+9a-9;(xu`_ih^ zJnsAt&&N~nf86dw_>OQ5y~Q_^cD_^d=Y1E$mRnh4s?GgWo=Z)PF~-$Dv8-XimNy8y zrSi^6SUR<0cw_#>NTJYF^EPgwSiy*S7$T*H93Q);%p+7xmM_Q$yyHnXknNX3IzIzLHQo5fo|r(qT|X*X5XE%R;fY zX9o!Q?awT%m3!;YuA0i1?|OA@gU>TJr5dOZYZtl=ZnYS@saM3)yPs{^#9F(nboI9H za_P@I4^*zXz4hy4Y7k2?^AR3FT#ZI{3e&wLWlNCxYWYW&f1IMS7tCnO&0d7u``ebs)N!C59W30O;F6ObVBj7qrV>7n$$laA z-<{0OF+3q_6Qm{k~GZ_Y_?`L@_b<;5{U zbH?hP*Y=?dDk6z2Oz89IYuYLq*y^UnDd=XhiKF;}FURo0`DNdX{ksvtZW+4s=!@L+V}|TTaeEx1zC|*e zyT0k#Ka|;jPHdbOa@81+Xzls9hIDgO%K2exXgEI;^A_M*G&{UiB7?acNlG@hi9#OP zJH80|58l9W(hD{t+>N;Xl89PEjKer<-{bJ9ym9Ws8JNo$qVVnZ%fsMvac@C*t=Mw` zZzT zS+*U@8LsE%MPv2wzI>RQ@)*PQhN!!>?6M%!vf4cF>|%Apa6q--?wfDugCaD;^`u(* z!d9md2Tr}3y+Bv#t#>ASTXMte#3~AZ=7guu>8ffUE1|C+B;XfEdO%I9{v|8J92FnL z$~cglcHJud*`~e9gI)h|_?%e9@K?8P;;8bI^{&zyLwd>{;~jWm!%kgU0o|@G3#ypQ zt0_7b8(-7puNyHEyPwjoEI}7NA~|8XF9RK#!J=#`40{bi9plcq)ay6u^HZf`4 z5Xz$c66A@v;ihO4vJ9`31CBegk0&UupY zCcAyz7FhwJqwnzB1=3@Ra+#QqK|i$<{Ti#Zj_dQWqL=i%*EkL<&wW3r;W**iRd7k$ zj4Ht>>-$fIXNX6KQ^ilEjl(Zbv8mzdzMWVfyK7(7Ds^ql$SAkA*@`|vCg3absJ6~rihWC4OW^?$+o+$qd zbBw3sJ*+ZzQt|Zmx_0xD)fnXlb14K|HD*&Er#T&rQ^(P5OR(>F;AyjC z?jcx~R}%KIAK=UGF^GyHPuGjv!}T}^v4H#9=qb> zRMc*Bl5HWwb^rO!XTf*YZj#g_COy}7af@Gt!?X$p?tb)Dcj{xMub0%un>O;M&VKYM z3uqzarI{{hIk#4SNX$9NwDnqj&&kKz=|9tEaJ#8WE}R;kMDG%UTN|R}(o4>znQjz~ zF;_ZcO3~cRU-|6;OJkX7e)=xRNYLeNb@xAFDyR0+&YfF1CtWq5$or3>)>oZDo*eZh zW0NI0(wcTUf*8&T*JARvJ>Usha=aCdw8tb4YL#z@MI=V^1cK%(?yT8%xNg(No#cMx z^P&$#arc3g$7IZ~w*mjQPL&&r94xqacZWq|2q8lP*<*psMl<1AemEh2%|&(F`b2GP zM(o1m42!->N~w}B?lZ$^A5)VI*EICbp{?VVi4QZCPe!a6S^b~R|MxKHZ+vzqm(<9e zB%i&Pp>f~~946f0XF>@J-`|&%2X=}v&7xO`JkbSAYxlwpfBvi+;(r}=l|=3<+k%1# zp1HRD9SAFK4Aw)DdKfKY1Ix*FRCC_g&CFRF6t4%?yyD!jzLEPPAx9t`!6h}A4~&Vg zU+w-UdWr(lDcZk2@REGQH5QKunqmOHo*=f}R*Hlg>&au0yv(*<@Dk>Hs&()(39zNK zy(eaKg%GiGBYXAaMoME&25E9oN8&Y~et?vl`E+}KpdL>#Iy!=*2qBmZ=b?HI>5%0q zRjB;Cxo?h9W1=VT>e=wmnpO)h&4e7*RFOy^3zl*jeEP&}hNKJlcdeIugbv|)8-GnP z36nH^zZ{Cze&iyF`{fatxtF%7z7GWT~cLb3F}B|Ehsi zJBLaqQZr@XwO=S{^4U56CbmkzoD1}kgs`M{_*wo0cg1Pw7mj1!!p>rttECf zs3lRlcQ%cO&n$k2>vVUhS)SpIUSz^4apzYWZS|sictKB=xVP89*9F{NE@VQT#h#CK zGL1S}J6ap9{ArlYWG}E(s&fizULN|)NkAG?O7Z02E`Yyfayuy2B|?vUdVWdj52}=$ z?Wo&fnLI8eD5m@&IcjzI<;xUoxY;1jzO(t^!?g|B>i1+F_~dQn8VYR{lQkd6CwUQa zm)H0wZm{$p*fy4MGHmq&&s&4Q9_=_b1jrMND`dq z@}w{%z_UiC4R^L3xq5i0&I+TM*&>m&Y1(lpM9!pY(52bx9;HhvJcIp0_p@*KPg*lh z8*H=#+D@FLi#XvBA#o%II;kclMT9$BQ0>)sDMKZcI0v4m4?`cuyaS2Heg4Pyq>Fd; z?hvYN&qoVIj|_kV&3gl=y|m>ng%XM!x3RZXD3Cr2i~8Y%F7ly}n*ZGT@13_fb3 zskZ-Wdyqz-+A4cPt|SnEO1+Sj`X2aer*cxg$hMvLxwJC05_D_le8M^$psFV3tET!| zt3v7pbNURtk{+5;b={NB8@$}sy+lazFi8!5^}y z{UM6rf$;BcS6U(b*}k~Df#YAwRb)>dW{&tnT4A39UQTbR><#+g71A$-E0a z^!>Eo5?<6cN*bo8oWm((VmtmyHEl4Vjo7^3xBK#2M%r|#=i;%^zG{+W;tM6xm0>s_ zvP~4oZBGs)J>JOF$eFRapoc3TxI_sO5NKa8y$iAR$ z60pgzo1BV%6GMjj3Q*o&+MDSTnT3q>1DSZuCRc5t zk`>lT3EGjacBn;Mc}!p2K80-eP!jViEw32C<9o^+qvt7^;T=8S3C(;Q?Dko2gAMxN8 zH`X#L8|)-0j{i_A6!JT;)m_8#R)|N1$TDsuF<&7Z%Izkby>$Da#^Gt~r-%+NYHtjg z?SdHi5Wmt$u#H~EJG%2AjS+`f6N%c`n53!YN z1Fps+L+dzIoR z?x9~tojsyeh{HzQFTXrHYJ*{mxAEa{(3JAR_f_rcB>_XJ)8K5t=#d_O6 zoJm(j3Eb-bd?TrF(S+qJGBhpGB+k4$Qx-{c)MPWiIqmIoH2(?U7?K`?m(s?G&lYzp zWaLnIP3s9iAzJovcl<}ufp!W3YnA5j5`YZzwz}YaWN(?~R?KWAzg3P}8uu|c)^Oqs zMwizD+F}}`dQa)fddSr+cTne|07X>$(915YNl-X}$+RdgA%UKEwaNxY#_t#H7R4(_ z&X|9i>Q^C9GMz2zswMHw`K@K@DDf_!{+j@R8y-Ad8^fnY#YJFoZE6Q#=jO8W=b_^Z z*+DK+w8;j%cRvgb2Wmf_zhdLYN7pjq{18X!@_X8AG62A#-LTa=<4e>Kb3VijtM~78 z=bGN{cY@sZr}W-$M~WWZm%cyfJFa6Q?KPK@`thzlYG1N$9OjI1=d2061nU~yCI^jK zl5QIfivXbjN!-89fOqcVfyXPPn*Z8BYjW_77%nw$B0&kC`Jm3AY8sVZMMZz(82R9` zsUO0*qq&7}?h6o#y{(4=&%Qa#|Iqg9kyUq7dvNKd&EPDCZ%O)OnoC5}$+S~bPV8?W=56`!59GgQkNir7N{8jMl?5@mY~*3gNTYK_GoZ5N`n4G3T`^=0E83I;`J5iu)~)-3c0pYd1FUGlVvzNaV|=a}pT41*1k(K}UaSf0bK5=0<$&MlLt! zaK&xD#OEu9Hz$zTvs?L{l;&4`#DlIUnFa1KoW$vs*Rus%J$p2A2^nH zh1MHB(%%JDq>4z7^ICEzuKT7EU;qh``jjTZpcm3n)ui0mOz>U*yOeQu5ntvVvw1P; zmr?CQ9f{Z7=W6hVxQN31p}FJ-hQ_{XgbDS7Muu#>ND+MrH{{D7hWEDl*yyW=uWRFO zZO$FhvNvoRBxa&$m8sfZK^mkwP!11`3QT?%_g=a5QKkI4U*3tV3qn6f=u--}NFUgf zu`%U=n1^NltF%mzA^aVurRe=4HZ(HK{>zU-$PWn$QJ9eQ;U1OelsR^bGKlO?b(^t=kEu)*eMbT+P} z{t1!7t4M4M$!C44B$8vu{RoW&An{g$L4=Z1{H|I{SOukPVGf~T4dPNzwai0hJ^1>{ z2llwuz8Ikgk#8pmyq%!5!4{FWGPwEmfW%{nH?$8;CqW53ATRkqJf zo@2))JUy7AXTh(VcGomtJb5Nc+bsj+VlXD{C!P&RQp79wVd9XB6kEtJ0r^z(yRdk# zyQFJAApcO8Qk1)vDhpV2dd(Lw$U3$y z$_|E>L4u_aEcnkao??CpNcQzt<&rK>sz}T`XoLFnFn-b8hSFA$g<^iPXYAM^H3hrH z*&SS5&xKQxrkwt?$6N7S+I_Araw;VA`R5Ys?n$3)NSZU_p2A=&Tf% zJ5fyr4M%70O;+1YW&?GVncAGFFgB?39M>^!;XX(>og$SQ`N>lmI!b+>{Svqj!0Cp~ zjVsn?AImb=Ig^q!|Nh91e%KnciXAKLOK{kA=Dt36w$Q4MJ#3RIHGj2fJB_^IdI#)^ zc;@FYurRslHg$*h5j@0}(goODOQh>=vkDpQBrJHTMS6KQO*#d{A)<^~Ln8PRo{q55 z)skF1_!^!IqIQ;*Xd}Ps9w*>an>gJ!8_qiFG;UotwN)ihUC&Hfuo)Q95H>%YeEZwy z*3m=O2GIpS;P`cwEj%kCEPj0xTLL!jk*FsrU!0kgd3z0W%wG3HDSG4775#hPp)l!3 zIzbS=UL>Ch8l#(wy!$b%aYpjAGUOTxdsvNqwH2a(idD6v*{y6LBw}j^#8OF26yrU- zphVFezqB|qyfF2Ciq(+#@MqPgZgWWU7^>B!J{qLYmbwkRWLr9PxNObtt9oQLxfZa7 zfJ`$UHGE$%8Dt2R)i+P(4Aw{|l4AO6A26&2nmQ?$L`!m%m?_D<+>NGQJn@NY6 zwp{p~*86Ql@W_kfIa+PWAj+JPVGuEJM8R!9Jx+#q@p-WjRTm}zV&drzHjOTLUPLae zBCJ;}t@Jw%CF5-m7oSe$$oGvMYiRt{0y|*6Ce5U5(4;N)cww)TuACuTk$j{N2VlI4 z2aIZ_fTY%wkX71VY{gd~EJ!eBjf@1YwEq&-iSsbt@9Ro`3wDwnaapAgtC=YyZWpe; zadcDKf0C&K10cd32jMvnf}a@Zs$Vs`11G5s0Prz_KBQ&Wc4j@7`BU62P;y!K zJK9R$q9j-yd3*z+!q!dE;j0iHCcG~vf!D1hwddDKepLgnHA0_iTV8_S;9KLPm!@+q+k(l|I^fnn(Dok=k?_)7Jo<4X$)aKq zAvY|sgy9vTmjWU-%^XZG9{tPk%IQ`bR z46|Aoc2H9KYXr|#5~{<@*JyRkMK?tV-QOr3DQ9@YSo5~(5FUB1%aHm8Bigm;QV+z9 z<;5^SV%0hBLVij;=q7j3KIfwk9XBpMK6>86^-3#hEkBe=097zb$Of9f$#2-6>VG|)4jyNR^VB#t$!A3_zkRFH_C8W!u z7EcX(RKsQ35~U%skIs~xQ#hBQmt2#g9w~YVd{SKIykzGyJhEbMhmR*MK*c<}kCsp0 z<)XdeHy{Nq-{;~x01w-hK}jPH=_ZxvV1zpCAq7YjA{^HnGeCHu^u9m-|64wWSp1LU zXNz{(k-Ur-LL!jYdZPUF~~c)FYX(W!zx$I`L9#D z3o6M(5Sl!BEF1M)onhM-|W#)}rZ57<_)2AWIk-M^=Z zYXA2a5hX63dh@iIkEBZN;ugVO30kDx)w?b*W`LUw2bs$90RIHWpN_4@tQJkj@HkqMVwsjzm^4U9O@Sx{{JG&S-3 z#((YVtvkWdUHs}wa+J&EtT2c$JI3xJ3eT@SdQ2HHACK z<6&X*@Va@LEF&!Oy){^?6DPnn?q3y~W_PV;O!NUf0t{*DhZmNf?^`5BW+*WDI);{c znAH$gqUAjg`ICw&UXxB4e=Vtx#FCORb{HfvIY0~STJ;>l$B5Algqci%Hil7&%(x3v z1HJeyMWqN3;yNxX8tkHc>U~lFBO%>1o)2BbZJKD%Zx08XJuop;e>d5cpKeg9ot~6) zD2q6~OWbdCFOjn=y1cNx)^jSzVPUdI>#5@h+KZ>y^<1uWKo2^$OuhTXLE^j<#Blrz zZK^}})1&yEFs=O>_n@I|+SBp>wFS>{LnCc(;5L#sbybCou4S0Y1+J~zHQ$cRCRo=- za1jb=nc3RiGZ;i3p4E{TbiljwN#c zbiPuHJ4SSE3u581DLTMOO_m{3h%OYL-A}iju&2|eP=ea&GsNOQblZHkl(29d`Z;Yz z_nA{sBG9FLFBP2?;fcHPCDDySp4$-)J=0$_f{v;5+3EWRk(#yHQtH5|Gml0;FmHSH`cZy;j`r` zDL{w_5edrh?a5j=G;6-0fjqQU=THmH7WVA|AV=P~Z#)F`=JJ9luIh?JR8Gf{Wgzw{ zSX58R_Sau!xTv?##20{UG4b{iJd2a}ws9m8nHOCXk{igfsEJX5PNy@uo!*VM#KvUYwQbaz-$ zKE9nQUqf;tPCt?Z0n?9rzJiF0G9Q~;ocJj`jW$#fGdLoqr5Sgy>ocy8z-?8k_hgAX zO@b=Z*~)4RinLcbu^BuEzvtGRYpGHQnPY!`yNS8M(;H=ZBa?oZ$WzW9_#?4Q(nPtRfFQI%I;~a1zr`K9JvV?6ixs7q3HI1i%$LYiO)WEEaDpp zu^x2T56hVt4q2iHpfGH<*_heVd;X^n;SZxWgc?@NsOPZpeq6nK%fJ~j-QK{Cj@@1( z>egn&2%Nb&&#o7VOLlx?l37ku`vB5lN9~mDI zasUuOhiY2)?N`sZT!8za!Fpg&T-O{|^vW7LnmWBL(>S{P{!kXre@Ch*W?+l820F=* zycDOcB5tEPpo?#$?qo)ejw@!>=3Qo&hp)_l?xeLY zV4Y*Wl_;IB?Q?$E`I*-es#rgf4|_sjd^&)zS{qRv_LCE!9mY0d(ZQlIccs=$eqm@< zb9t08UJA2u%e1wz??9|r0&ez2SIH$%eSiJf*1<{qM|cf>iav1$kB44J?UgMd90b%}-7 z90hwu)=m>(5c}_Xfa;f*r}s>u6`Ji8KY4J?tB2({KI*2J)fEMEEakr}+(NWyRCTnv zqu{j3C3^xA9eE*EXK-G^0J#zX8t6#}*U@1N1#xktvWM;HD_N!UKO2=jjiU2toHvs^ zZ)^fNJ3zn0!`ID8zT(wwe(;i1!EwTi#^A<7gCi9>-~@IM#mPX+4NhjA#x*m!U}BD- za%{)#s5(K`7TqV=x3-SD)3OTPMWL}WI`Y%O6I;g0HXAqkMI_4XE>_s97>bv!p@Mq^fRMVTtopnu!jz^y|%f+XQNSi<~3k{D6BvAWNO6jCE7W35)Qq^26n9}CtnQI zJKrHo`AcXzls-euw0LWvX!A#F^2&rh@cZ_*c2*koqKmvKw4g zL69OdIuB2uUOZ`m{vi?kK|FKWSCL&`RlXwWO$nBy{-z^a=zb)um6<{KmH3w0bx1l} z<^9dH1vE$quux>s2nyR8(I2;YKHdg~{>~`!7X`zb9O9f4*59hL>eM9XJMhp6ig&h_ z_C-m9Q+NzF_l{Q&uftutFpDh&V-8_HMhTpUO&*H8ruXZfxsGflHfgHkFTx!s|)*7Uy>&3@elvqzRXOXZ%q=vP+39OHX~`G zXmlU{S~J3mJp25p825A5dgs4T#raN%N1Op10}?%!MV1iG5e5}Tv@dY+-(kKZ+dWYf zs+OjKPhTYwxh4l!>4LzjH(w|b+8v2W@Bgv&9nf6;CwDx1vkzwUaT=U3t9P5w>rtK_RCB|_VRgvWKIsT8};bg;o$eS|n6h|1&q zl5A%rN%_BP1nLuRnI@G&T8#Zur@aZ{S&3q)!j(odC&M+~p_|ae@xb3pMQY6MnKdLO znJ7(l@0)l+!(ZoDhEW*ay!PX_Wq*w`t&vSobvWT}O#nE!^?mef>28>=R6t+++qs5> zm+l|mnneASA4Iknr|E}Xgv$u>g_4TAa~Vj&Z=VK+8#Eb1x|eN1HC$brpT!E_4jWDj zvdy=Ns;@7ht{mQQ!GoW|q~^9BH@vKn;c^kdifvHmJ|lkHJzTqux!xo|QzP+9g-|b; zE^HTchCPc6>ldnKSOhFkB>f$D#FIe$dT;B6f6WTg2AdAtP8nK)!MwornRxn4K)SA| z+V*W3t|9bwi+60)%mZR4U^JItPi{&JTOcR?!uGP4zHdMbSRTgrX*^mlaJnJ+C(U=R zOzPx2fwi9fVBdcl5?JZE@=vo>Ei(zZPf1Ai6HLhCp)pHe+WG$Mg+h`+s)SEDY!YMb zxy4Ys@Y3dk9Ege7A$(J9o{m&jZSQ9R1C%q}oMJ zX4$GQqVQXWw5j@>4b7ftg#`6TdC~M8T$c~tdv_A_NP@4RR_&ktA+_!1|9mj&3#m@S z*)#tDrz+4vtBr*HO>IRO1tWn!K=3H63^Q}B!WWWCWH?Zu@%2vLhPE*b@ato4y*@l2 zy+F*g!L$jB@mPVg(zs-uQab>>i7n^K0znId-)it~tf&XKv->$XM4@tVBG7{be>>rB zpiHWP^fp@y2Y__>

wnrtZT%Pd7xU7o>WG`UbHl7aOxkX!vAc>EQQo91p|v!3<~O z0|`LtiY4)ygEe+C>VcR0>`dTt`AN(r7R)|3K`5}`0+mj=$j9_SY*53|PcKalV;Y(Z z?pr@zHx!sFczt@)bgWQnaIj_;Q=9GnS8(G07tTi&2JvV-W{_I~68#sYzvzAeZ(uM2 z+yl%tgD}_#4RxfLnQxd4U-x?3X{Q~%LuC&ZTK8t4DrSJRdjvOo1kY8<9*v}w@6eqf z#%g37RD~O%WmwXG7`|Zd(+KP}f$2jhif2>pTz^(#TdHyV`f_%v6dB2q&D+v=k%O9N z(nnQv35R4?ARxd8{v|WO+^Fh@a*}>_faVjCA0JlB?)R~YRWTg+-#D(iH&$dm!MGm&@kT14$|rAHf$0_ckao@BpH#Wv9mFc! zIGCC8*Nq(eqzOQ%nc5#Ek2KOm*!C`ox3KU*Koc#j^Xvkg5MgXGHE-4@fiEoCO6%wG zYrKvpB{yS>1afj}l#N32w=DR1zqsa5!%6UTc;3N1mk2h zt!jdZ$Uo;d)qiUMJgv+Lz7RN*1#VQz0feQt7Z#!KgqaHQ%Fn*^+jVt&AuCjDdacYt zai9UevvRMDhx86)Unql5S25|kr95LX?%o8{>NG;h@B7^~3;V!S+-G0B4jdXn#?8NW zBi=5rw#{Ie`>WXulG#IAhu#Mje_g#1VmPESum$}(bcmF0Zc&MZ2mpj2Sx8n4gN0IO z^=qjf=o;E#{X3%}PHWWYR7-ewcq>xvU^%Z4v%E3jaJ!THPoI@Mgrr&xNZz51b7?gy zgom+oPw)mj4C-LS9PqRl87=unq0%XYNJcu)sSk`2^VTyWZfOIht6UjkuRuB(b-4K1 zISqe#{9sNI>_&}U?->#H{)a=E}haqhb;hnzrOSY zU8d{*FeB_S@P!mKf7W*;45!qOOVY`8g6y!#Kti#p4wp`M;K~dbBmB3KL4xuZIXSsP zQuHSySXNpuPN?*cMB+TiQ`F)jj{p7J@CL&*-E)C>6S70w23sZhjEbX?6y9C~kpF;aY}%PaY;}ijgq+F+(6#6y?p~co4gE7TwlNB3t^>*l42+$cK~0`1>;%oX{T> zO;01ySd6#ugklGv!w_?yk9E?70hT`@x6&^4uqU_k%!G3bX@7}{_=g$EVRVFIFyx1J zLYcCH^&btR!xh#u5U#*~gJsV{8$w>Lr(bgWn+UoEwBOssd@GB;>U*As3>VA7jXdei zK6%^QK^6V1d~o0SKzQm5=nYPBKF*Kid;18`R(3?_fPjqN_N*uS_>k7>TY|o69B2a- zT+bC4TEK@e198QVU^xAN)nmDoO|z5^P`K&!0%Sb`D@(Rs@1|EHFv-bTFOXsldW&{S zePi>)-p^T$7iv;S7#fg0t6LZbp+pfMg8l;GQxj&ZEt;O z<-A^yvixNuU}VNc(rgJID_%lT#J#`#M91W;2P~*qhdwUFDvenvI(hk8hz%ggg%xA_7SNRoK*EDiI{k=FrCn5oUtw7P=02X$Jo0JwJWNCm zGi;iJR3${|exz-w*frnb6TehmKD_4Qw{%3uPDR4ZtdEPMD2| zX5C}{k`5mW=0jxV#|2FOVzkj3xPTud!T1@0&pIS(%KC&~z@F_*{%zdAL5K1PH+BvU0 zgs0sJ>kfWx)nvtAFwov?{DJ!lGP;z(72f4|@HHH|V+}wXIHHXBP3i6ENQWXkUMQ4XI4GZ)wK{$Or^u}CHIk-0O0ny#8o8`%n*Ld_p;1LA%J*fx#<#Lj` zjSEB|xX$-6*^bv%*?34EI0=##!Dyrf8552%gHnitIt2tWMfMpNolI|tgLYTQT*zP2 zSscVIUBJ4Q)XdUVoT|I_BPw4b&^iF2h`{%^4xKeZWm(wX>G~@*CHM&vM5&h)_2w_- zd+Zu6oqz!p_)_eZHiO%WAy8yf^3xovr^2FtL?rqn8@YuOUJFf9I-~`lpW(D2$q9m# z?|)MRsR!^kfg4mR4xW+H>1Ty)YK+}FNg;2Li^6V5x2i0Zx~TH#h!T# z?%$vrig+x>T7_#jid;L8?GKt#_NqcRKe`i0v~fl2H!!WFwox&ArSkm9TS)=^Sjtn{ zxYO@LB?AGe0YU&e2{X=MV{bg)y9mb+P5$n8FG{@wq^bI`07N+m%9RMR>s)rW=s@t8 zDj^MIMt`V|g`0^J~Y|>74sDjvE-N_&}*c zl7%a@p4HejsUAI1Oj2%yfc35b(t#f?z(!J}TGAWZ1lOr;aS&=`83}DXw9g6`5BnOX${rW!^BCy|_; zj)eJ@!jT4gL&3r!HBUp&bG_xqZ_RFV7t+6e727W}h~z6`Cfa(kDYzl~p$Tm#_P&trj6L0jS6r+{(9Q|horPSF8;lxWNPbKD zS2FQoy}~Xjj>Vh$E9I~UhqTl7i@!ZA8&!XzGWu6ChUbicb&?0DOpLbr3uk@!mWK7( z{N~^a`c!GHj~3idKlWKq-^2<`BRzPZgf6^s-NCz}X`b7j&AVSi-(cH&|1 zU0;ZW_-?CTBXUu)cWGH_!e`NYh;k!3blC}NA&fc-_OS{D6PN5NK0q`KNvsT>Puwli-Ehc{54*NT3l2iEGeN`!noe8>kJ{H7B8Y z6=tw!_lh38F|ZvMa9tG0?OrlH>77rij(a%VMyoLS-+eW$4F9^OXSkqRtj^C7dSSok zTX+q!v!5nd@iN$EfM4aJkniqgiVOX*DHR}L>R24;u&&K#kEOakBUlCnM^FeQe6x*Y z;KA$o+V?G5gTJd*F6+TU&X!;Hl z%?gb_y6d`7W#N&3-juI3JT5~_F{CJ6gK4BIxhggJwPnF)oICjc%>od+0QKv2-m`q^ zjf^Eg^7+1g@0+Yx`zH8*0B*a9X+YuFR>tjKvz z!mIffEqV>H{k!0f1J^LbQv-y4~JEZ=?Zp zBNE?)%!shA11m`1jx@EDJHS;7x-gK+!gtlY-n$k@({TbnR z!#L*$pxCw2I>q7DRX6|1zFe5tt z7-j!m3!**7{Sav#u{UJ9C;Z6>!c1k7wEH_wmX+EHM*~2#t9NN_q<-;abuqNUhDdI} zVo>T}*j&w;ja339blq_@Ci%^!FnR|c-CR+hEKc1!YLp054-`;{zt(0t6=g7_q#kM~eQcK~|v5M}J=m~6WY_z7|&+K`IF`%EVHQhtaO==ouTK9+6#?3k!SXrF@gN#0b`I zRPIfH!(;wd8JVrbX$M#c6(?gu1+AEd&`ALPx85#v7hVq+N~9=xbQAU*WPG_m-ph19 z0n1E^UH-6SVLiPj3K|ub;7RVbyeoNe`WdyvYYj; zEQ{Oh2uL(2zFak8&p1ZLB&szz8+&pAG!I@tDS67;JbNy6=FGxf90xZ77|7JFy%K(O zzr|%1Ix`n!5f*z|PVJw+05aE+?0BI zDepck>pWqh=w`n$$~Tir*c^~rw+LzQ4tme!4H*r+f+u^@1B!^}E^14_`)q_s&=IuI zv(E3VzqfgiZP&@1qfWZ)LS`%a;wneXE7^HnH}|)%?^{!^Q6tD_|?;bun;t3OciL1B~iAqLZQ=&*0l;KgQUa_z)Elgo=>aL*bR&qKa_=NZq9nE28lH?e;RD zqbs=9TofBSOPC68Sz;yu!Z*q&byv99$4$J(t2D27xYLgVsj-Ypz(MpYeO)5P7`A!~^*p80H2u3bgJ z47;-VK8ZmzI%S9C>gitY2oJOnhRPkpKqVkgX+yBAWf)04VHm4LHcma)Sp1=5JHzD1 zVebv(>tgzS8vf=C@99YPRJkU_p$)iW>tN=s0gb{4wULDp+7{C+;LIE4*h`E9o1rUX zlUIqyKIQ&MW|ClihY@WS3(&{d(FfDwmNhvwF&!fz9`v>i?MpWn{N;Ha#^{9JpV)aW zXWNR~Bv&b?E)njlFx#`=6)NfWW-gRJDJjIM9CAFz(!5ESe)df#UGVK>lhassMPnr! zHC_?oGhy^{Vk2*Ub_=`rt8f^cCLeASQQu&YYbO^u1m&%JaGH^BlfJfKbtdNdu5WF% zt?g)hWu{xlPc2acxu*i8a|%gsM;Xe}{=6%AUBCZWp2i{UFJFp&BKhy(Fvlg&)BAJhnFlMgfjWcoC07&HzB9sH1RH9eG(#GG`vci+~V*1{c6Jfb7nnm+e*D?944w@4E| z(Ph3_m54Cs9=RZSljoOXL)FOT(3uIZhAd!wk?RWWBgUMf#rc$IQb; z2V%tDhbJ$bxGgrpD3n9khOTR6$5TR7tW{pH2|dchAq#WErE6{LL7lu!4le`2m7%u< zjCrs5m6Dfqjt&nr@(y5g%&y`GTjm*;F436X4chUV_!Mu4H&-2@58oou=~y;+O~-V~ zqGP(prM}I#jCL+KiAV|-KYhLTC|N7g{_87^ck#Y=z_7RsF)^O9-iCE6)t(h>A71rs zuNp539>ir?)9s6Wu-Y^jdwj;prKa-d)Pcy5S&03c0?$7$;m<$6@xiNb-T79u@b9Z2 z!u`dPibFdwagCE97+|h1{=hm>C30lml-*VRWJ<}@WX2rQijCHFV$z^GA1q6Or6fWvqGuPSqb@d2BB*q{Wb>5k;S#~k` zW=z@cs%Pp^QWIbYOA?lb^*tM(AdJz*T&aeKh&%M{EwH{n@ZE{Dr|^2m%G+ulV?Bj1 z0dnr^M$h|3repPUg#{K zzTn)9q;+!Rv1`_1D{ghHosX0e!FYqNG)h7ccFKRu2-sUtOigYVQS?+^4+mLD4G7Lt zH+ZIt0M$1<_rY7!Po<=m@t%C&X|6L{&67hjelf3N4hOfp8*beC?&fW>cxP;E(?Va? z*zS_@?+*_7<|H^6Weqd4%;+=!^RfRqXYmQ}1g+S%R<`OhzCiTDMVMM%0rPcGC+9}X z;S8`sEhrUJ1y$NkKl+Bx7_bO#)zDWRlowHW_;cxQF;zYQMp5-#cz@mXsi;CI05_h1 zqBv<*8QrJE!L&Qzq8d$yz$ZhamfnHJVof>_Hp}hYX4ydi(ug-EV8?Ly%>uZynrgug`WkEn?DL4W zsrZH{=={1c4v-LP;zhvy{u~Zo+vbsJ@)@f0f(-j&_4Ge>0-7D}uN*5sno#~G_(koX zc4t@?O5&pENxRU09*rd_oT3gdP8wqbLZ{DR0y~LegIuM42MYEdbyoq;=G5B_PU7WR z2-bIg)}D_={m6~taRp(wSNdZ)4d7ut;87Nfe~XnTq705P!c)k;i%0Y8T|NM74d)+% zvut#JZpi29=3PEH9cCex=XumY7~GiB(1{|FxMOm{&Gk$~tLD5d1FI5D{0G)!PMqX> z<#)ZyJ-rlQ^xjI1v`0MLZdqUJg2uo`NMRpk^f^;X_(CY&{Ot({^`>wD(EG#6l48c7{vFH$VOu6EjTB-rYbcG~!js1_t{_YSoUf|0$gQyLUJxoT@tDOnl;lgP zm^8|5+A`V_J^+czqG?D71e-0G`8KBbTzFW%6;Qtbxljk*Es~Ln73krpxgS^eMs%K1 z~II|9_Hxdq<#@Cb5OenfS-;qaykOoPc~?~cP`QG z^;c%^R?OvUke<~5L|qG=q_jM@UR8}uP-$<(XA2YQmd@#JH+w&?u(uygb(aduetc_7 zB-Y1{ocnLz9IFCl(&}NucPjYa{`V*N0xNuY!&)8C|BVB(G6Qvz{xk`XFX0HwCp;kA z=V3+a0;DfxeSa!&?GUE-c{0h(E2o=omGUH!FN;$fI|o-~>=*UP>1TS5*e;j0ka5{0 zRU6lue!7Nvg2GXtf>@N7(L3$GOX*MVU>Y3(rY=-mB;)Zo+Pjw6+t|03H}Gy*rd!d- zaKyX8DCl4~CSf5&*v093P3INwmj@_!coa8NtTjp!V14dD0~fNyeNK?aOO-jc8xKA& zhHWrh)WN7Qh^%ET=o+~3>BWsN#&kCVcCFmZzSY<~klZR=Z9+v2If4jz87Q3c9}F(3 zy<^8w&It71io*`ttu4!dZDQDf5(X^61m3RUwSWtmNHKy(ompij{R8y6K>uQ07`1OEd6hC^)-Q}O0?N*`suWMiC%Vf<;o>k z28C>j@dBMe^3Cfbr(<)705`R8y9pWMGGT_B6M2BhBmjxRiqm6b4_r1@3{Io<;X9{t}fjy*y@1M0*D zAj7O09Jb=s3*7U-w|gLzZ5`nD6_ufOiKtWTIQXfrX`;{fNF2I(pA8qlkH4vCaiOIu z9B1a}aJvy{{a*#&-XgV5??#10#&%hEtZz)6XA(_NU`#yrnpHxPZpX88I&#=HDI=`(hF_Dl!qQ(=BlbQFOr32N zxgwGOyD8y6$lw#gWhwd#k+0$F(&%1&@~pMS%Azxb>{9zUEOniI8XLJcV8B6kiKJTc z=SQ7cnYf16+K*tpToy(ai23qgV8Cj8-uU&$@l{cB7cTcmZW|-X3qq!BPgU{OA04w0 zY$d8zWO_-cbs%wbAiP^_e-xe$C7HF(A3UM!9#dk3i3p*B`s5UEm;Q=+}j8G zDg*161lIa-ECft1B@0;H`?}#+w=@fa5AnLsnxa#92=3svuMyAe5D1O^IOxADX$MsU z3h7;1F^OViwxy?(+M-lpBsr>G-URKnAYNu#p z8&S+nX}3l+uHj!-?L(y3vAm*7`|nMA8BR0Tf#v#3R|Fq1u+Es#6kn?B_v)jf|_{545Ey5j)WzeR{ zyvIY-0~FyOEz~sbQFXl$ek%=Z76tI`ps_$K!?nb$z1(j zKhFNWwao2}lw;G3XP!BiF(Z8v)t$9id9t$7@M=|`De^A{0aBj#ZZkG(rsMgu`!O?z zKLo7**Pe#RFl*LT4tM*BV2q2s3hl)6BPd4S|WNLK~L>8U!OFoI@I^bWg za|DC`mi94TeCLA=Nx9_SkdsnF0-BvfKNlixQ#A$4_t>^enX8DqV%(cxP0<(u1=OQ^~G-LDNEKT{=0k{K!3S-K&VCij zo1stXvomNr1G=U-i+RJxc+VzSN>aiqU_j%da2f60DsS2;{C$?|#MZ614h5TO*)Zqu zaK}ypv{ew#|c?5J+xa+UIqkX2FBkc5u8V}2_4_Uu=}r}eR%6PNaIm#wofPj+`# z-CIa6R>r=1z1#_>(RP+_@U$jgD{u(ON{+X|ur+hc? zW62c$+jB4?kOo_{>S^dW|F2Zan4@DEi@$BCCsX4yqc)nGUTHg`C$pxoFD&_rV##?< zMtndvDNGr-LQ2p(1)4$~Ey+(HG5m<1;dYShx9?(tL^pOtw(t(<;;knf!;OZlrH=~9 zD1QH2v^_#t99E(1UaZc|vp6G&TFOmW{z({dOxB$wq2~6rgT)H!;@#eOlWVf_4VeV= z`coL0zJ>AL-MR4n)v902vRrC*MW z;GWmv<~Iw5kk6tpDqVvycMWyYcif`Tu%hWDa$ufJbcU4v{79kQ(X? zF86@}rsha~gG;Ix@8jF07cwVU|^nZ|>j3YU8WfyzX47vaN(0*g^=UJfkt=Rw^ z@dMcdMm(PT$~$T<{{C&E-P$(#JRk(9zLT$AhR1Uew$pif0q;DriKWnN-)))pMlbQ{ zkp~+y1>MFBa`UK31;To7kq338{=o2h+_O}$j37q6k2E923G!0Ac~AVlmr_)QfT#h8 zkBr|u_JrU?!qss^RC@V@4a&;-*v7PA0kmbW6a)w}DWMt1OPKAhF37s`{XFQg22+wr z;#|QoIu7wRoWG_C9W~)DEsxE?mcKoC4rgjhfIR1unreg{5|anE8THQiw;S64?>hQG zvIm!~S20EKUA894``H8HS|9!GZ&-D_0&T>jqW$svE5;DL@9&8R!jXcS7sN&g2p{XKEHL-WNTCuB-L7+4{ zjpjXdwM5{}r(BRU&u+PbF~#6|v9Tl-_BgDvi}Zz{7q_42kINElK~ECiyg}9kFo_Ur zf!5BKA_K_`hT$L#D=7bb)};SeyzJ#>!Ktt?Gj0j1%sx$|JemuwbxANB&7?TJYcUTp~ zY2#9}wzGT;g00(Eqeu<~du~%Mopepf7~%QP`AT7jlU2|g^qu;jPx1nC;C@jcduqce zNOCOVU89a2mjStG**+kQZqKGv9324r7=x^nd1P@cYf}2~H2O8LUhmGBgWY}(_?V+E zktgX@f~y9g+TMnQCQ&iIM2cL`XK0*dw$@vs7eWQ)%0V$Ou>=BjvT$l?tDqHVaU+O& z>UHRJ@X0XwQ!&4v=nNgr^S+|~o)fCa%ntxRd`xBo=Gm7ut&HjGv}J|bu1L{56SHvc zgjW+srgt;;AR==&=8f=u^a_GIg{A@44y0-|0-1>xLpl)x@r%q=D##N~Gw%VjcYT%( z&(xh+!UkjkOT!+(vORMa*9$_O;>5`m_rW19G%1kU*hOa8xuI1xbk~0G9Zc?(7j*Qm zeisUvTI2`d>3{k!8sdteAwM$D;m@8FU*rRLZ>7fJ(n{86glLfxh-4?D4wcgs z75)gLGybBpPy4G@#wi$a=8)~t$gG+ab=-Gye6sc;imO}xIeIqzK_(FEY-7H~L?-vTIA5SS@PCuk5tOT((^>Y?0sth|}ws(Y+ zJ!(Tu06}#Nlw@PaHm57($;4Qh3JcD>i!GZ~i%sO;qD z-f{pb2Y*91EhLp@NvTWdWMQ69*9`wX4IBY|^C4icDd_ob0f z`0L1WX=37J2ZswqlJNWl_(#B=Y|?+rkOP+xBhz(vm4v^lH;S59P$ohqe z|ZUq1|GV4x7_HJR$Ws~b8UpryOF$Y#$E7n!Og3^>vY_lrZRFjh5?F*l@ z2Zn6aeL$o0`cn~JUIZmn;}PFNmX&g+bMRWO`oG;~V7k~Vv7ru1t9`coIAjUlX-G{t z4d&9D4d4P>t{l)5#26cJHgzw+Pw631*bDpnm{i4QL6VlozFklr`|&076;Ir;I@CwM z4($!4;s&r8H5EOVI`R2W zSv)_NX1v>ajQ6+}kX2m??1hyX#=Y1Bu!HET{&=rDRevH7DoHK)XGRg%{j5k_(aZQM z)3FcEolPF{DtP2ejU#mJIDH!>`gXZj;Q~w z?E5}jS5ddt_S_eI3xQWC}z7@gRS(<)C^|D;s;I&=tI+F>;3s(zD8?OJ% zndgonkEu!JGt<9qpaFd2TfD`}tQI||kgD+GW6?k(mr#-p9-^N+Jqat+6*a5G_3lHp zxM2b|;Bin2bf0I|`)OG_2CsZ{tRM6sOCaQEOGgD_TTV~u!nN6%P9m1N;AV>Y$szy? zo6X~*t4XG4m~LRQ9ALr`Y3j)qxhvSLDX3Ttlxkf{UvyEH^)Uz7a>Rq@cS#A;PJ@$q zp77C+7AFBknWeYZ>NSBgmy*kLDmCAd=M{&rT2uc5z{nBSt~f$A!j^rz+bUcW)+NeV zUyeNM^7M9e5hHsY5G`kVtVPSO1^~s`(RFf8yVVxpyX3EI=Sx&tZLx$J*L*w2&MiSF z0xpVYKGx<1Q$Ec>%-S2hBLSIx+0S+U)6NCUF~bMUl;J@C?4J*qRR#vkK&G|cBO}L} zw}`NlJp5M_+uW@4kr+hWbz{!W(Pic0Q&t3@P*5XqU)hn-knVBx5Pf^z*yx0L^0@*~4?GW@|xByCX=n2Rk} z9mrSgJn(zx^_sd66SE2EtQ(Z2+?rD4`hRa%-U0WWGA_=U5g*!CadJVnjk{-AH z-iBvC*pa6`W&RJH#W(}KjhdK+-oG-88bx@TN8&fCuPp*-C2}3e>!`6yk#-Ik-0I_i z{e+nfoR z4VCO87i>CehvZi0t}f3O^yfjT(5-Ar4vYoTyD94C#oDw+px;3AhvafR?SaDM9V=H7bkt+c}c$Xt{M|9MhLgU;nnzO{0y*$-gLCaj$1kt zy_3K%On!L#)68nLxKIu;33v#w0QDXdjwFAgJ zX#_h%_M^>h1?Oe|gi7KLE=Ff9sogyB`RowwEApO{ktipKRGbZyMX{xClye`fck;3) z?*H28r9UXscBF_HUc}(Uav;ncs zgVNW4awcLb&H=RhjU6Z8G_z(4lUTYw>|X9^KlD1jeAorCQ#vtrH9k*2*&zq8-3SWF z%u>;(;D6EJT__~8i`^b_PtiS!=eG$Nk1=hM9dB3tLEaP>)h7$L*|Sxdq1t@wIdVB> z0p;+ZNqDrqwO^O}azbiq=t0svOn9Z3GqDNQiCX1cTyXl$_eryCvVSQ?^v*4MMF4!v z=6xfGNuKs*pE4-BUL^+-pP*R7i37mm*+j{F2r5BMmG<@4$ms&20VOzfl{r1$ihdWf z+O<7Hp){pKzeWfG5g&W2;~Z883zoP)A%J3@-!rZq3!9$+KIBbHVU$RebT1JUHx)> zta*h*N=+zh*R6mG>0V@V;CvNd>8(eI(f=vTWbp36t&-|SB4Fy)Elkx@N~3O=E{}(l z`I6f2oZ%F~+J3lm8D5zzLX)tfmOL;-!dUf50i-+(9b;sY*bVo8nFkxt`ZThn#*KN( z^EK=)`{APcOo6K+P6~DFhtu(0WXxIKP3jpa>PLaML<+dWm5AURz&Q1o6L-#4>Ea0} z9pjKUzTAu}l<2cYt7Ckbm9Bf}e1|fWS}QzXB`&tb8OUgv=Xt%UP4Q&6ZBjwVeu&T4 zmhfT)REcT`@EUue*%9Bj4x4))6HaSN?OGzS8*VDaHd9!UYWmJiI@iQj{zP1BKRGV@#W!4uI5ajnuqbt%Zp5gKPJMQHZJ#of5!v-6t{E+ zv?mggSqW77V(BblWb}3xx$*jjswe7)W1^^Xk~T$r&zJUB(*<{c0cs4e7za6}blryC z+0*+aP2G9$e=7lXf+sJN)YpAoKrtEjQAi6CGbe#(gHrhdy!|V1W?pV_VpbS|NvGn) zl-*TBKY)88Z$zwCSTHW5l%`gqi zK^J1gW@#=$?$9f+cC+RarB6ce&7}95Ik*B!Kn%~W*^;k^`~-o7t799Gno$E5#9DBm zE5ZPKvpTMutILJUtnI?cmJQ;-x0CnN9|^c+>OMoU$_15PgZ(u3 zE@eZi<0#%)RE(ddQbfJNNUnoxI8yA~N*<2)L$fnr;{HJ~<_j8Oh$4lXJs9V!LCHy< z;|~Dqok5U3uYS+#`f99xeHUrvtDL?}AT`dmS%^;AMjFoxyV=^EFlQ#$#$jZZbc%)( zAW=p(yavEGi1nhc+^2SE|1~ich_gwoKxTH&hI_aq_PiJ)CFgGhAvOU4U^)hJmHxfv zW>Kfg8J7S9=aVIKYWz{$*JTp&zJ&H7i`-R#>^xlo9IUUXKs~gACwxv$((r>8KK#d9 zM1pfQ?gLV)GyT?8wxRka`1M!5Y{sMUzGdbK6n!FOKi-^jKxZ<^uz(#UcvknWkqR)Q zoW_O7HKR4!$jQAQ$2~RU*l?pu+w?iVxn#m9Q;SycB|07hMcxCDD--tA*dz~u_Hyqvi;G^%#;489?@`drr5ql? zE$505v^6-B+6Z+)e1nCcvcCR|`xPHKGi1jd6tTaS@FupN?V;Y{hhB8V#Br) zB)}h|#G{@~i;?i(K~NuvTpkA--i^E}q-z3TG(L3QG7a%*vh_Lui&l0e6a0^S7gyAH zYFhQ+N>euC+{2Nj<1Jie)ZczF zgzbm=n6z)+JC}6C!TFz)C6f$i-kdJ=AEXKgQyR$V4?`Dw+d0-VuyyrWq_j7&kPdFV z+;m3IO)w@sN8nqSvehp=>mIH}VHCV$kZ2XA_VcZ+(&J9mQ}|vGJT)?T16WGIyHn3A zddd$`7fJHVDR#h#q3##dzH!?tB6w}h2A8q|cnRObLE-(z5 zV`RlG5YW%ayBn?$akhg#P*lu;66Vr&pZv)hqz{22*6N@oMkZKGY#!qi7w()>&lr50 zkN38+4Y^_-E#{mzZiLIO$xPr)e#N}Dqkb~c$zv2xn6yCwV*2L5sce#$3hsyKIe`b`aQO75{JhSfhKZp;QDy|N;fjrK^A-0i@(&RM>B~(5MLIh_`V3E zc+pe#ADt$pX2Ie!@j7FszDrgiu0XkX7>?Fkz9%1qjIr>YT*xuBEfyc-lvjv|BAgaj zhmYy&q&^&*d82*b<(k446p?Jf4+2tDlRYy+sP9V*`2c7+#n2NrqEyUO z>nXlQJYgr?RPvT&*p$^ye@}lBF&BM!uwMu1Q*{toM15Lh1Fi~pXn`Ayz%42%PR=Y! zxd05Skp2qvyEU+d`I4!{kj>-!4^1f>36b2l%ijG6K_i#^8H8gCKcC3JlNsYcA4;}4 z@drFw^L>u=PS>KYkP;YWj#`YfyB*DY;Qjf2--2MGSX999zsTvI|MrAx_LUR1!1cO; z&)V%Wy@zga=I$@aMIg4n9Max_sMv2SvIUdvh}jkq(rp9YcxqERns7}NDQc}Wkl`Z^ zL$Hoa-3~KG{R8h$Ksa~q6FHMI?b6IALxjBs=HxZ7tnGq_&t8#2Chp+YM&l@gh5V3SkZ+Ipcq(6pIvTm@ zz9DGX`u5oO_P;wig=}LyqN}lCr8sfT@B){i|7vk{8PFV7GXuC{>lTmGHW!;_5Z@WF ze|VA{-ng@nAGwlTXv7>Xx>Pw}Zx-i_bTK}LF`ED(djh>#9;$Hu<6-2guBo5M?avp| zzF0oexNwH#I88(^M4zKcD^zwG;0hekNEiK3Cdnj9o6Uw-Eay@%Q?AFx9LtBJ@Oaa0 z0_Xl4)#mSawgu%}fJfOPOe!Q*WHdm=aH{vexCrH^6O2lt>e}4Z^6m&7l*no!nc@P2ftk?A3QI zitbfY1CZ`Bn@q&lRVVR)7Z|&P>=3f@XyyA~Jbz962UltLM+(=W*hkF29EUdHsa(b- zM5u#ci6CYkeb}KLYDEwXdr`)jE?G`06xrjUoB;WeKkY1^d~MzqC^3;Cgmi&dcrN@3 zGd&>_C6BFjrq8WQPdjbs>lGWFr{pM}@QKPQ#kP4w>~zgR77djx$6Q!!Cz##6uu08v z-+)$fb{MJrV5Wr8-ebf~VJn3YcQ?rm+)6|a25%$aDvlv?$%7I*WmxH{Ck6#0PeErk zD{l2g@`=@qlH2@&-`z|q=6Tp!@w9RaU$mY`l=KUV`Y;E8T!0$!v$ zsZoWJYb@zz_Xnu|FRz;yA;Uz}zcu0Obou(_iFVx%Y21tB?vISX=s=qM?aPP!!-xW{ zEXNQVk^+o~#`_w$YtlrY!%w^n88EH@FsYuWYQFjs+9*UYVC!~EZ2>2g=v_+xNeMo- zyiT~k?WTC`3f}bQlapAs2hNA02hHKKe5?L?}^o;v$bT31=--S5h z-U|`0ym7t*g(5gOPVV)jNmXG_-_$1`p$xiniUA!xPkC?6XbRFxT(CdSz=m$b;Ai}f z%lWVpLFwF(nGqIZX1=!B1PPbeI>JIzJfU}OXA(iOrp2B`CjDuQJ%Od=uIqgO*!iEU z@6SJNIj-2;t%NSP7oXg@Py0z+5{Hb?fKQtUDHFcnaX8-$=ZzBV9U4K$)z>9B1QArSJx8eO^Nye*=+{ zNWx@U0;_rw6LH9z}XtXp9xJ9V_ge>{Te?M24C= zfG89UWeUqfnD56;U^*CwuGnt+J=6&arx<;Lhi7mh(=Rg2ZB8+?pS+h(Vqj|X5+t>x zCBD@18RUg6AQ@1$mXRGX92duK>7+m=wui6g0T`MPl5=r4n$PdI3M`fcxBg?0IGf{; z`Yyu+4#63--js-s&R0j_Z9Tf0(1Da;Xi=HrI(&%IQT(@GmO`HslBHW#B1xRi&5zH* zL+4^t!(^56*D+0>a=^z#_3%mH(cugitJZcZpZQ(T>OBxEFah`Mc{eN)hNj*g96^k^ z#>1LUNXxgH(&tCAykE+t4$W9fUk(7xykwtACYp1BXGnAlRg@zry05_a4uw8T<`PPs z#m{D(hWvBvA>NUgrv-6k4dS921+&oCvyy{+z0#t_ph&-fgS`P9z0h{W%?FYqoT z`5=K`&&J`o&Y`9Z4BLA>h|Ybz3-d-Tv@OZrS$A}}hb9du*Vw1yAdEZJm%B&l&y!Ne zt#?-r453MkEo->U=ji?SyZy!;EJu;IRv>DA zZKp6nJAmAb5sR~qIzSV!Cp58+fJLBMyh1qAmbbGA2%xc06sTUo(Cwo{(KF6GfH4mE&L#u8zISt&$+t+pWQtV+$IG>4Zd zCi~dvDonDWhf_;m zr;Qc*hti)vBjO){gU!kC_t@8qL%9AyQ|32s~o$p+KgU z9PjX*W2oU&gJReq*0fF-Xt;$QJ+Yoy* z&6?JMoqTA`nf?It#sP9#ik|m$gc0yGi&Bn5loM5^LvuwKTjND zIE`~VA9acm=Zrf#=?)GOY0Ir!dh$)==oFQa{na2#_x8~L$Jcjd&=)^ zxONBSAvFRbWHUG_x{2*Oi^Qzc%|cD7I|#VA@L=`nV6! zWORY2bi2^@W(8CZp`gU9n|0-VKS%va?e-15ilR0>`?tuu@PEJp*|_`glx7e`K0gWT z<0XD5K0^iO-woD`jSdn=iYf3T;nxwfQ{`J#srdylBADhgUtVUhi{?>2M{qQ+qyn!K zytm4szQ1A4M%G|h@Im*7U;hK6kPtAxxs>!(ub>uS1+keg@^Tjd|90N+`mVF~3G_%6 zx%UZhkWzuYSjkZu{NMpp5Cnw?%3*}WpaPnbDf)hHmX~@|2pKv8A&ZXB2&4QOuOESY z8|F(6$+`Qfpu}lN?9`v=37Xf(%J`v|M;d|_lb8h-5W$vynDk&M;>Dpcovt_v!|6rP z$$W+EMf<8V-L>x!*a_+F;NMs;ERySc$rD&-K2W^qWy8W>7(5=C2a_hjg>3_7q(Ap&m8hd8?K_eh%(*-O|Ha*?DDJ+@) z;{_nFnnFR%2Zci@fTV6(d=7?}XgK5uMp~fj{(WgUT}3qQAjHl#F|M(UvC{4*M2iTq zJjS*fLzjzm>N)9xZ{9Mx?+;27(rKq*mfs(gnp0@?TStUR2~Osv#301Sh(|NLdIU~q z_8CpUk5(?XK#Yp}y6-)Q``wXba3D5$Ka;t=gFK?kV(S7?rZA0XYkT_I{*hiY3(iYP z_WnloRYZ0LrHETI-^~oMP87Pm>B6s5>+sIzf18Pe$;_u!zN#8zGKsuQcEh&C^1)}f zk!Kim6mND^ZXDQsumtF%6FH(pH8{~96zYfW9^pe)*IJ4)`k|1iUZt5Eg#R8ETYYUI z@CXE?Y)>9I{CjF{1*PKDknhER+?{N~aRio%<-QvbTlGnMoPI^0qhD7@f7)UYM(Foq zGY7BS!<3rGL#li%9O?ha5T#E+)%bJiM|^C{ z6V(GoN!#g}MbM>uOX4}rc}`tFwjLNR`6l8vF0Rm*Zt7ErIqK`EsZXLzIsH%?rh?Y& zRAV-rU57`n^kmOHXZf}|MSHsO71JL718KyS@Wc5Y>4rvlFxAIIC7fO?(z)>u!|r?| z(SQtK?-(T_GjJUzIvl11SVj?(i5#QA@Zrlig@`R?p!arh|IxGGegtMjY*J9x?En3K zzU3dR1DqDJfGn1afPbF_8}n3Vg4t>k1wpBe0^V1}pbUv)OsKdI@Gun(^k)s7sXP!! zOQp~zxO^#KbO2&L?cNH$IX9hcCL@2V3xMC+j+OA~2pF;bwmL`1mVz8iW#9f5<)E=q z1t#Bb=t2^DA)a2QT6Y(jQ4|lF1~fXrf1we!{*@et1!b}c9iCkD22w;gZzOC`##M7% z!@G@uq%RHK4_F`9XE#OIEuGl8v1d<^0{UmfGKds2mzu-vo$aV7tN2LkfdAE{?3#U2 zT9EA6CPkM*E!O@@;R79u;-m&VOp}R61J=-={p}aqXSm;1@OzD%QHhR0?w)%Iu z?nc6E^G8Hy*7*-Q(1QSx8Z+Ljw@BgKq4w>pvjqm5VxM=mAT> zAH(`}X`29QpBa&OzubY*A%}vShemIc?HM}Eq3ni)kvhL=h;}I$ZCkBY;=Q=gynQ+Z zWtMl$8J=@Kj|K>GyGvf>K8I&t!y92Hrjj}~J+2{C>R_0K2M>$Kz^w5!42qfLc?nAU zG!b>BshAva(2~{m;kn&Un;Z+MNqhpvP%a?ix{g;vAX)dgsEs#(do{vsm+KZ+4~4E{ zGU9K{&FEwy?hgcF**NGkUzEfk!Z_%SA1ZJpq)Fqw7GbC!2BL<%^Lw=mu@qOv&5uX@ zx~yJ@poWzOxe?po1XqwFH+h5ZTkm?oU!tU!5M{}$^I9!4S?LeG0atqcinC!E8b)u= zhaW_dO6VmTnO(-aUj8SA<2S1~o9-}7P=6veIS38Md-0WZPc|V|_rR`1ILtppZ)hH{ z&847rXw**U)A+bAD6Q(lEhykJkx|#A?^+8rb0flfA3I4Wt;hBW@U9TuDQBZ414DBC z2Zv)#LK$jp3hO$4GNsgIteyZ9F*f*K|N&JNVZut5eaPJoo}EB7AAt%uCq zpQ1j3&;0z8hM|*1XH|`U{oU3Mh~ns;Wiq$WKN`qFF>7>u9ZWMnzyLk;G(c%8ExG5v zpVF12`>Uyh+8Mm2L@s||J3FL!@-^`@HLU>e1vJYo`$Lrbwjpq4vZ`@vKaz0WgwQcQ z-CR4o_t^sgZKhdbD6OD~yjB~)+7{3(3+V#mPHnoC0<$mvIYM~k7el7*uSVq_?^-;(C8V&8KXb&CFAikwuYLmDumIDo zhS|E6_YgQ=dwaVVLLZKG9B9y-5vgTny82Wn7-(s?4A2~>v3-i@B_c)Ah*6sfJ zzo*BUN-g1C%v9#9G>^4CAl}r`y$_E*`nNA5Ahgi3tHFE^{_#xa60TuTelV)4jT=Ke z`PsOguQEdmdv313b+mA0GQ9Q|Co-wU8o>zm+3U8u0f%p%t)thabNA+|GpaLid^5#b zejVy_k?-;K@aBiy(2ISc-N2<32^=nIUY}s^3V(G$b%J2Xo-1Ss?LU@H5x(y@R|~>Q zmfk+E?cG$mZdXNz+V3{^rIW@ja)M^Rx#z5>_I4DJ)=tutVwrK>_dF>&S^z~?EZd<` z>|fGAH2(xe#C5ykPe4%dSx7NBR=prbic_<%eV&cZO{R!u{7w zMWvJ`&6+vq(XGD>XwvE)&VcD}dvqE^LBCYXKNnL!I|f9uoM(UJFRabgxs*0;u}ap# z&Hh`Ermg?%O?W=47kGj9yVMNY+ijf#&!#i(m z-y(|7j%NwVthKdg->jLRE1mNMM^BF(rgxtGkoa{J_`#s45f8ie;1J$PV9N8s=3)1sGt^zPxm z83o6D(O}Dx-@DglVDVSZvx4xGHZPn!=YmwE|M^&3QYGSy5#=i5FcYWTwc^~mV=^o{ zXc&qL-=)uqJXbb1;Wsbz9s!gL!^>4 zWmq-R0Do(LdZ8wQr_j}fBl=a9a`Ukh^jGt?Vd+MYlx!$8z> zC&#>3uRsqA7k+Jts?4z_^LTIWxuVmL{g|??bKV(Ha0pf11CR7Zg#SM2oM4TXCuqhA zwF!-0oul<$K%jY8*@!e_r)TR)}so&;D$3oIJa>r{LSs{4i zLqT3cW$lkJKncCtR zC_^UXiH~8rBs7JpZe7mjq;oJmz1qgE4Zv>2qGyN}%fv{e<5P zfm7c~tV;Er%YOuB`2}X{Al>ZQC)fKCA*m$3{cEJaeCeUd0LR@)ZlfMpxM# zl8HHIj&H74$ZP6}c3Il#!KQki0tGd59rNv5zfT zBJp0&7bm;VuLNTo6{O-<%FS+)*aiOt1$=GJ{8St1Ly;`3U)4DJ_Ia}6c)mLe6MT1u zcBOV&UxyDipoy1oFN9@})mM_`u))&nZP5IG2VVl!A_Xf$ObLDODNWU%F!%ks)VX@x z;2p%a0D}nOl{Ouamd)D9mpy)3wv-nJu^B$Q=42G8m<__9nS25f-fAW1S&kn3TUBXc zbc$c>9eky^eHDCv@`CaIdZ}FyivgJuD^nJ^PEawHK&DNXumeo$Xj`z^*ZV!Ow8G3-F_e-yzf^< zbCyxLM!w!Ag~qGqhLUC|ASBKZ)DHBn`KjHB=~X)`u_F+NjLk?@0OOR<`)pZ| z?xTH)Wvg~ypW&PsV8cyeb%eKpD_?jUD=#)>sVyQbzK)gUO$RtonR&)-G zna{cN67zUPsE>e)#Nzn)xy7-=X3m$lPEK&gQM^g(CqC7U{c7M#3YPLGu>BR=T>A+L z&B1UTnl_RFL{}q(Da?V{yI>ejA8-Fpplh;)SBf z4kP0HtKteV2XwCALgsv4z7{fdfO^kZi;@r}XsJi>7^eF@uUAJdEkAUeaXCfhL6 zm3?)T`StJ%3@Iw~e)`u$AP7Yqj0EJf^0@&j{g^WXJpp>0|9*U9^MyqhbPSn%2#F$N z_1eDyn}2@;Iv+7F!*sc+Z-Ta8C9JqIt}3Y_w>{Ov}1xde%)R=M>lczU8R$v zD#SVDra$DJRRlNb~F#+V?ui(~d_UcNC2?J_ZyC zIvtic!F@=iZDrr7fr^ww5yOJZJ!N8Cm@iH%2-Ou)(^@zg#w1L1`n2swNG@I_VDPfw zB+Kn>DsHWR3Mh-!zpTLM&f2ut%k0pFk~f%6e1)mQlsembF|=dOF-4VU%ns6q)k5OL zW4OO_VMadCE!}gWIml9TSs!VuA0sYp^KQA~JvF|tu>nI&p(sDO`#gR`^!Xwn?Zhx> zdk+axiAM&Te5td9^3e`iX14P%cKqKO1xMv%iW{f#`*Xb{#uhONbh@zbeWe$+#UfQ# z07WqUCbk4H9M2xq{$jFYV+M01yTUM?ZRkSy%2WZ-J3YvW7qBZtUpf!;Cdb>ifLAki z^-Q+}-4WHZbJjf9zLb81e$C9cG@J*q6PY|@tlh2MtazF81hV6QmM%9whZVcfOYc@7 znQn5kH~ss8xN;PDB8g#7FS=l5@P7&S1hZ9H z<+s*%=WREa=_bm5L6`Fct}fBp;$Vy&E^>vc4gp2xNgUT$ezVBiKgKc%Fl?|Sg#d8^ zdC_mEOv32BX6XvL5$)>oQU5B8{U7!lL%AS1zi?oTe_egJ7bk=_!^AI%s+|tppK#Ru zsU)=UgbBouL#_?{M{BmZ#N=H9Gr+Z{;f=~j#SO+3d&2GKh~*w4rK|#ukEp$_PI6B6 zs2D5$cA!440UZf+bsJU0-+x4L-wtaZS5ZK%i7C@Q4p+Bq$v#CV6ULSDI>4T~Gp<(z z<}@+Qs+VBFaebl+Btz+%tJ981I_zVF4YgsLqL6()=|~=2T`JgX%rEX_zur6dmw5+? zU6mJ_drwB6DuO@!j#O}m>LvgA#+}L5X{H|lil`sH0(r%XHMLKj9iqeWw%P1AV!!bk zgSbxcWndfMGe!)h{51wyCk5zgavAB8f%eqcKHB~7-sib(A}d2b zGH_jh2j`Ke$(kCvJy{VMPEBVV`hHtK%&a?<6pau9KEtfx^-t>M{j(kkj4H;an~ApQ zDbsyJP0WgX3d@Me2q=HdvaFjCgOfyiy|pH|&L1OM;o{q@>e>vE)4jD2J8&feCpZ9z z+}qI3H<$VY?wF!05ymoB>c-t59bUjaaT+8*CqE&h`a6e;>+*YQma{3^9w7BSkcbpL z2gNh;fgtn8AEDTWLRjWksoNC zXI^mmIQsUP@9mSy4Y@WAy)GG#Icxs+xc#TMf*&v<)i4b*qS7^73u%5c3JSd}ppeau zxPJ>b#bMBI1$7ImS?l}np2dIx;}I`-z*5a&O3e2`#Kj0FngUV32eWV;)+B%LH0gS> z5?m*&WKN;h6JEk-#zLY~;jkQLNuNqJ)mTo4kFMkF4HY3ws6l+(4`WPx)%(C99Qqv> zolCl4>x3I&M9g0(BXN3vhffy78O?Mw8Go#~RbH%P&Iy@D7bH_UKN<7)py7~wqUXdEsDMcwDHkB63eDof{V%CHbC+05*- z_FKmA=mM2M=d3r>t??hQq^N_nnuP)YaI0?fPlr>r+AE~>-mN{sN#aUHwT&C&yvV33 zvY+2Lh)I78UmrtWy%p&1Z`~M+d>|ZI>a*ggUK;19#M+oL{HrsHjpUiW^qET*F&+uE zY6u$FTG;vc$p7du0klop53QiFr@otU*Hl>5a`dU>qlJlssQ}=2HJj})#Vrk#q)=tK z2&1Ks3)5zlX0;4;t1!A~sk%rnVfK5a<^}3>U=||r+vV!fk*BJ|t$7L) z8Pgz(_3$m4CS5fTo{5vhRk(9xv*c%~vW7sSU^^8WXJ%dju8S<)mPeX=v%c0pBtG)~VC^)~z_ zYg-y<;c@ZkH6UMf+bi1t#T~thTOiO=5Ri@30K^g*C;Vt9`c-cA;c2<|$S}W-)%s=c z#9;A%Y!&`RAZdAyS~=|HBd6n4rU#UyKa0BlG7so5`;+?vks`}Yz^97WWhtpD@wl)Q z6zJJ`CutLiG8mr57M9lp*$PTX|WgQ1msof@IwFtDmKLi&NX$I&?d>2XWhTR;+g*ab7ZE5-hZr&zbego~yfmM3>M z&Oa^j=a(yB&LQ4uXg6W$+eK(}2+v9N=a{F8OL_v2RXKihq6zq>Lx-)%M@vopOCLNPsA6cbtHF}SC9-=^gQ0cm! z-TTDVUDk_$J2V96C;W6`-}ET=O-XW)*8@}+j%_(+T>jO1E$3>HetpV))tpklAYApM zRScT#`e1~@FlznagQo*qJTVVMuaA0N*4^-Jlct$+=Ro6KCx(v*uLa=t)e_@j8l6JV zD?18U!#w1>|A>z>ppWa$jgDUxKo`19uz5|2H1!&j9$tTbZEtexrqvX;2H0}BLNmuV z(>@0&QT5H!z#mCV+PSXnwSD5mJC@5q+Px{cvbkft~)M z)q{=V+vXhW>ubxAVXJ)ld#usDl0PG)Sn?b;_jYqXim|L@s|52#<_EuNy%@TwbvP@q z?cB*8%}FP^%e|ZY>Sw&N{I5v`e%Z`jyaj{w%iawNK|K#u@nh%tC!NiGrXn_>qz{YJ zt3})fzzVKTX6tdwWG{l+M7$1s{O#u3b60?;fQcgrRf91my_Gg+wr4>=^iEIm zYL`z|2>!f06C#j>@UxBO8czj1#a>|NkZpUMh-H$9YiaG350t#~G#d`xM+0c3eSUs< zjA!6;{}~_SX&6sAP8ueBCe;eHW<~{zNJ?LRFZ0`?1Akx1p*aJJL>X3wF(V{Uqsz${PLNM z9yAJfBQV(QTQCtO&T8+;bCC2KYT9b&n14`D8hrtFskw7Ff%jo! zA62k9JKwkG7IgYDzds)!zZP6eBQ;My9XOst#ge1W|MnItej9B^@Q49R9(Gd z1yya{KXZ0O(X|vGcY^BMKJ36E@P_5OtheqFHzR3Lf-3h){qt9K=Zt?hf!BE;-;Pz~ zG5ZZI+54LHo%eH_FGeI0uZ-$d3~ap^7-nU7JRCKDwSy>^z&M^IcNk3GD*1PpD#@OO z%gC-X>XrA|#y-6KQO}Z|WKDVjzS|d(TI4NzoU#1aOr}n#AQ~ zxW0=M`gmxBiA$lQ!?1awg|6@SBs29FvH;a=?VLh~C|SWICHLq+O*jhy03ji=5Jq9` z=ZNYGI4^P~XAie2lfy-bM{Da_66??G<>mef&U;@qfbwfjpBkPWOrF>Il4$)}tRvd( z%XI#Eezy}W58%aUE%lc@=`KL>j7!Lr4ZV8j0c|VYYm+#C2jNIfEprJf(Nd~g`kp`Z z@$j?L;vHS6b{dZw=! zRFy z>M=u1SMIHJ{q?vVFhyjio=k=| z4R|N{(oH30vpkmtQTnLKT;pRHjiuscAV3aPA;iP_ z7yKcOE?=>JNB!dK28KBvFnwpD*Yq&Zs$AE6ij#IzuNh3>_%y*ggY8A3O;gR9`8zVT zCgVw~nO1HA?4$#0Y3BCrzla}>9385Ks$`+qK#`n9ynfGjN`uO%D!`IVViB7>MZR~S z?Ip3zf+6`S5s?*so{e_;@yNLtCyk!}7M5Z;4c`Ao$EUWLNB2dQCQPLJOQB=@yrD)< z$>mrWCwgDk9DQrN8=dk~jMa~Rs=it$$Fl{0k&QH3cLDQ$>QK@{+<0Oq-2m}BJ^iKL zL-SH2+USe^Gt0>X0CjQ@S9#dDn4R1q0qC!`4GE~V%)sr7T@=0*;Q zJi4c(dqwuTnnQF{W5y?y&eTXpfgT}bBk4U2xp-SeDm3N3Mm_&W?AGPX7_IX)h0Inj z&&1q6FMm{UWMie)ulsPvVaK=nFB_|mxf}GDeb_}@l~JwOa-{{9j_T2N2DYhF?4d8N zGu|pblNvbNSyD47i9b25UNKqEZrOQxu>nksTF|rii81Y(gb-WgRec)1!{TuuV<`Fh z#jxkrR(^rHkqN7xNOagwqpUxdpY;5(TT0FaX`W@3KJ=v6$paEDJ|V% z-9CjJ6`M0?f>ZB$wN*{LQr`4;?xLr9&T4-|N8}t|Kg5i4f!4ulx{0iXuHmCnYF>?! z{1#EEl-HcTq?DzV63wOSp%yIN)~4+vTx$`&7f>`C!N4)FBD^KUJ3UZ{X6!kqJ2z!s z0a6F2m&Z}}3(Y}6T1^}x9YQ7%@FY6sQ#|h@zMDBuikfT=-V?$DTbT-_5vkW^J(E%tZ+;0 zn)0BFC-uB}dywYzwRQ?sCIV?++5uh>M}sC+JhUY$$h&{Ri6Lx|# zm(NNq>!WjBosSXs;&{p?BijzpwO$O%UhOH22GSwB!@y;#WM)j z?eARqGC8qEbLuiS;&2D{ldxUpKKjx>k3tdos-Ud#K|h}7LG|Xr4+yAKYI_6hlujE~ zDD~CHHLwmbSUj%pi|B%WQSOc*a1)Dn>nA@tH+K$Ulz$3(Ks;@wy*ENiPqPjJ zU&)Kwc~VYo9%gmHe>RrcvlRd_G(PWM^8sv)eujhK%;KQ-*iKvOz%W7EINU5|uhyy( z$9U_=)*u3}kX!?>R+)y{I^x7Ovt-3$%-zkU9JrqTsIQf)eoqlI_EZnt|D@`Gn6VyP zvKq$duq=r&dGrUM>nyt5Q8`vMmC-48+7A80u)V{8lxL<0vw~+$> z<;(ehcN{n^%8r$%=+?z+tqHUo!Iv_gC+GcziEI#l^-P)7e@{LHt(V{`I=EqmTciNA z`SUHdUjNYHu*!Z{626g)0BYBic*Z^SMs&? zf(>^Gp$XMPa$af^_cH(@*)Qby7wK-n_CjMZ+158_&wR-;x?(I+e_FCVinN^+cgE!d zv7e54EAPhB@Ge#>lFqXmk7j_tQ%gKsv%Wm{_PP*I&a)EtuJf`+QJjt%bC;?A5&o0# zK6c`bnC#PXH`@Rx?;ftqLnsvI0j)_~d(-cQvjAMhd;z+GJbo6qlYt|hD@!xEXORuq zv43EKFg}+kQ}e5T*Ks*n`(%d+DLz5D*V*N{TSw7LmE5b+bhotIxX)B&U!E9%QuSpl zC3SgZ&XG`sZe4vxAcxQGWH`p}wrM2cPq&FMa!9e_@hqbFFDrEU3RQ!b4;~#39py>c zKM=W@YgW$SQZ=U$xu@G0u=o|kvzh29R*Ap6k{sF;hT-EUwor;@d{vZyZMiZq9N+E& zc78)jSKwN&#PJ4vYLY6!-3OAB&F6;eotSQz6~>E=kW$Y(VUM4Hv`% zF1@EtKB-G~Duv{opdt%9R8AzbCQ!3xPP4Bwts9B5_C=Eop2^954%A^wwid8)6vd7| zA`g7Y&3pCm8WMSRCXS+y8wNcmz2HRG=TmLmFZ=80k%EX*SWJh34gO!v@_sUqDQM2t z(toiQG49#LzL}7uN`)@FFoZF~1T7CF3{FPHf*qr*B58f`#HF~*OrXv?W+mvby$7cW ztXm@A$<%<{FU;g1%n_V1njV$yVo{iuKna4leBo%u`0a{{lB6fNR(b~=5 zE{e|h%@UeHd1kR<4TMdFav339mN&pEyaso&?E@)P@B+QY1Dj}*KwZtmcK4?p=g23h zS%jyws$MDfstMHsb~yJ{ME)d^^t)eXUt=&m;lwMS(KJIE{0C!^M|}_0yO`|sz1{Is z7OJ1UsI>Eh)&xhd%(iZ}F3Z>R7U#DO>iuZ?I!bh7kpuVCJkjiO20{xSM_^#$|nRu^RE;Q0(!f`O{a< zQMZiZD&}ZW4=$X06)q&$zIBFGdHrG2AC?{&GB zjQR~@Cb2tIKZf#Z+Y7zbTC)+03C}kQy!XX(nlpCXcYuYwEht1rId%OaXkdhGtC($$ z4X--}OWlcG|K~$8XI9 z^2D2^WOW^b<-fvxMA!T9ZeS<)=+4QVjT-MO=HQJ^CK`Pxl! zi*Nhm+r(TeOc&z?ajxLCf~q+9ELE@^*Gb^`W}06f%clD{*7iWfJ+{`(*~8=c=RylU zU;Qlc%4=*}6JJ>PWh^8{HHR)@{Ha(dRikXz4&Clz!rrBcJxM8H9V%fAPn`Zn{{}N7 zJzXZnKR)7=o>T^q6D;;ZI7KLhvsc5zd?R(TW8&p*ja?X4PSmaw6G@)D5VD>e*=0-h zLiiCUfla&bY&(mn#NxI9AW{ z;|yh&20t%tr|dA)#ByR6!+v`HX?0uD;CZ(k#y9ah315wwesxy9gE9Nixl;{RyH8T; z8M7{OE-2cRa#bmLsF|fqIPs`=Gf*)=kJOzMT#1I~Cld6ME7)7$lQwrBA) ze>^0ENA0AgYP_GluD(&5KuxU{n-+E_VkJ<2yAH%Q%_%SAfL(O*l8}qbb8t;nrbS zd(Q{_Y6rR7O-yL)5#JWeT0(k##QNz2B+d*Oo2$w$Co4b^?9u2r*Wv!2R(C8`juG3E z^zfqPt`^J>JSwai&fM$0Ge-Pk!=j>Z>cCDG#vMx3L6sBpCNM;f3NA}SH=bp0fd{nv zmMz-ptQa^{U2$um?o8u6Z5f?%c#1~`rI@r@yuX6}fTVDeMv*<3P?#3;jBg1B$7n?L zU1WPCc?v}M9>PqCfm=UhRMI5GkN-~j_UXj)OY=7-LnRHlkIEN+My;D;w)d5DN<8Z% zQs+_AGNH;JqXsD_75RtbID3ePEr^GAc{e~xbbEu7`S!$c&=L7!+!06jilZFuLw$GU zKFJ{Gmvn%#UEYGB!A^c4KW(!3CiBDd5#f@RhdNJ~#G>$r@Xw8Z{|NA%r1Nh z^n3DN%;nf?IO#*o_uM9#FJsEw+XNPl5zFE*Z{B&Mb9Cw1r7-6E3T0d!I)AK%UR3f^ zIMG6}35<*D>Y=)7ByCY1iD~z5=DBJ%+YS7qFxo z;HB+Ranw9>)yg=*$5R+XMP)dwdf-f;tpQEM{qLOMdmMINid^e6o8SBus6mEh@%l?+hpNo`x%*$Utn!3Ph zW*NcazT^q{U4TOV+W&k!L|`vhhHtoYvR=czd92&s!7rM3)4Wg+sfv|Ok2>zjaUI=y z|Mg9gSt^@^7x*50q*+|b%Nn5fsDiT2w8o=z;k$J4>CEq;U<`QZr16bZr5v>?WDY)1 zpyZd`c#G=ky=>ewN--hxGkVwR{Rd@!(vDu6xNCDwCl2?h`xJcdfAFzuH$YuAxc1!f zmRY{#=kSS_cGV|zW9~8y*K9Dh2XR!XVs7CWgA(^2sEFKLd2D@+U1_bd07W2B_`M4I z@u@6l*7yT@P+^n@VIR3VC2aC_okL;Qfket^a(wy}>P}j)6*-yp=?&gX^BX#m8Sj^f zFGruAe|S@nN&o8ded=>N)$#Yj=VMm|L34VO z$&gbZ{S8oYl$DJTL&|%Cw@W`a2J6uXK~|$(8NEw>=00|8H;CA?!J1TXqDoZvC+46S zB`v1$+SE*W$>yC5-AfDrPx-rQxx6o|@Eg>JK zzTM!ya>KfepvBwi3cIn`7}iWILvmaHA8Q(ofnCWQuK7L>xdc8}pE$#OCwW4cT2-mS z;{r5ItZXenZxIAG(MPt67`bXx2E~BBd-~LLJf$w(KzN(7CwRI@wuM6-?gc8u6&Rd5 zUU7SM^)*P0Y5ZDo@$!jsvOKV_78Mg?wuDzr-@Q5R|BebXfBW5wUQ zwAsY6b7X)yq9NTe+?hBbRENmM=aA$4(HriMe{|5~l;-GA&`mt91E&sOdfSv4NMkb9 z+248rIGxhL)QCGY@1e8C0;A{?4Leoefvot^|2KTaQs;_0+r`N=8Ga5;k6fG17=WkJ z^^8F9yIL!fK8UMt6l=%0eZGRbGW0B> zVZYCW=?VvLrY3F9@RDGq?I&^w2p%Mob5uZeVDSzTtKqE9ynf~2tt_{*oD zB|pMT%aU+}W|l+W4|#(RMK~Xz9T7oRmncS277p${Yr6G#y(ILmo7d$DwNWR9XjZfl ztZw4;ZTXY`_4-q?q6Ojj$D{L)93#M$I&q@wT~)y~E{K=7`Tjg`-zz|SL&>o^kunUw zCm7-$6NZGX)^Fyd_o?#jUwraqToH0R-NG*rR+o7wncozg@d1g-4G_X#>BU+dPHq>- z2L{d^>>y^aQC7^Vgsq}5@p{%Qm99xeY5;3w?NUp%AVrsKMct|kf+krQq}XdL(36T` zlFEEf%b7)rq)6P3JF!nttMUyE6<4E5Aw8+~(~CpE6mTH*sF<{XC22?Q@JCTLMDJWUSDa`(mO;ZTV1L)%1PCCv*V7z2(aTgWKQh09jqnAB zL_FsMcoF8QIhUg{+iR~4L9GOLM=k|FQ~S6ePO}6q{+mx4{BAR(p^R~{$kD}_I~e@q zWLx6kw!|7{MG?i|2Mxx(hAdVVKki9#5?u?37KG-iD1oMcF*ip7MdNYWNf;|3pZB zcaL`<3X<^bszb+n;VW?@FSq%sah{5$b9sE$B$J72N?ht|eNz%q66EvW#}XkLusCH~ zFRumL62yaw#SEX2Z>V|U#aE?_(G8a|j@$qCiYsp^l~t0mArU1$MnR8tSzUmwRFJ8gm-N&ieIKc&Y*HPj$ zy+sZOD(>#By|enD%(M{kxBJndq7$Q-Tm_}}4XaYEfjYkvQVg^I;{{;XIxfDkmrh#! zk|m5`LY6q$#v}co*8l<8zZjLG{dBNnsS-8;C1q>8e33`h(zSkxwgb#3Xm75looa%o z;xVx`N>qVE+F97r>|yF+>=SZV z2oHANsn#nCjLzsg{2V=oEwcm@8{DTNgfT%>m@K@7u$_9n1gUI)Oe+zi(I-^>Db?qpReq;l*Vs;sfyt}8#Gy35*esQ2K*N&MdbAw{nrCWz9KEX7 z!5(le(E!;6sp3XcP(+>+ab6P%hj(JTKY96c|0BEE2|EaA(oMF zKOt!0t-kgG6>dGSSPb^)hk1r7u@ZVxV9Da-Ie3W@KE^l%1W|3cCiim>78kIai$+8z ztq$8^zU>Z2X$(}EV3aRQIoUoATRgqks#=~Pq_D6)8BO1ybkGcJ^k^i?lfik`i4#MW zFK$CX3Yu@`()1+89BAfa+tC4^s&yyG$LoA;ka?@t#7wnJt%fjW8Fq8phFvVhf2vgE z2izg}M#@(w?k&NE;oSCO2@ok;{4kUeGv98N=E1G&$K62sz+P}Yba6}?5a_{Mz5>9N zZL#O3e5BKnEOzNAWI?Xw-YTeW_u?B}lPkRVsvQVd`V`*dPspz>n6E@&IXZ^!oxK2vNpbFy+`W|g^eVi<)mnlnc|EU%^4re&(sHr8o4|k|N>?2!Yp#R{l&VPM5`wnQ z{90V&W%bXm0f&-1k6OVn;I1?7AcU+Xmw(+}Pf*cMee=0Vd$N zr;^s!bpA-vO^p@s>YYkP%F%Z{os3)H_3>Sb)~(FEEahw-6mhkYAQ7;I^aZE-04~1f zDgG+X_1Jzo4-vaYuhc7=$2|q?7!sAE`|v8UYM647KlOT_k~&8-7P%Kr-=?SUko;P& zJy^ix@_7A0%1CWb)~ir1e*?&^IZI5g0}f!pEIMq@VCt4}IBG zkEZQcsrqnJy#J|a;e+KEyq(J&9B}@4WwR4#+|NkRJ=}nIA?}Wx{-a#Tz=ZTzaX8T$j|a$oK*Xk8-yyLz6j~_bmMj!*Bk=R%M-z)y;Vq2J zU#gLATN{o{TMWYx^*;+3apXBj&AB`j3%6M_BbBJE&zmbE(9`Dv|H~XGl~R{9SI9xM z$>Fjcjllo9%3xZed7gZX`N3C^&EgACKLH^ViF@Gm(2!g8bY;#oJ%@~a!(lV3luX0r z!-m5-U`T1+4BYs*oD<-KPV=n_w?*VQRN#@+__3r*M`==~qa`#lkz=82+7W$0u7;kL zJ>+5_S!=1VX+l|Ro$YFPa}v32B%JVfEIYaC~}eI{I0PKTo;KpYeUu93#zN zABo)b&)j~5b_|XRe*PkS=}@0;BK3-O^qUHdi4p1>720kJTRqjyQDcpAD(~ z-BS(SyT$qEA+wf;gDNkIM&Az_sx@$~^TpFL@m9OYG1`n$GizS6e7ZbuF!B4vIn=kg zB4vM35Hc~jbXKPPZMJpjCYo#DeFaTb>0ClKUt8fdH9`mhFl)%$O! zq0#&`7Z<8f3!5p`3et3^ehUlMAqqQp0jbJ=AKHoXU+gKcsPk~xWb= zip@^|`3R;@X5eYzs>$VD!z{#t#p*fl@!7H6+edz98fgmQ5O^gG`= zv|OHK5;nmhES+EN_@+6@Pv#izB;gM!CZ1d< zS0wvN99r#tpRw2swu%aV1Hy5~IBjhW&*%=nhhn{_BL#c86GjY@j65n{+&?i_*}(VV zj(LfulUxmdl{bXMUFd}(_S2dCI#83ogfi=c#E@wT1@cp$U|m901=Lz}7)bAupZtHEy?Hd${rf-8m|^T=%aWKuw(R?o z>`Yk-EtGvpvNU8X#8@ZE5=BC2Y>_BwqGVSoBBfBa7F(i-EcLryb-(ZTyK{d3d_U(n zo%?j3ir2iJ*Ymm_+clUj$j=;~N9QQG=(H%QvkrM<5+^@C?KAN%U0^G|%`0OYztdSm zz#av&^{f4-ao0Y8dAa6dQlLN1qqQPL!0;Vp>F*6E8w6%z=9*&3~T7*T5FidoPv9C;_8yG1XYi+MKYXu75?p` zm7tPqOzDx1*Ed`qIwRKVX;`q3T5|QJ?)(DeNIB)tr(fWS-K90$%*>uSZ0R;l8$X&9 zDM4q`3J8l@erXx<#J~b^{YYWiu%L-|6ZOQBGTZ!7RTOZfnK~gekG_8BE(u?p&^Xt# zYaDV6Ib|)6KvI_VoLIh8M+8~)D)`eL0iodu+h)i&cebmyva|V+!sbT=CoX*n;HbU7 z@wNL_*cWFDyME}bSJqrRz>_FFcRwO$l>_O7(OGoWcVL2emGu~uHyom3%+gK=%}_1K zt48{9EA;PIO&599-li*$X+baX-NgXziGi|JBt=XR7)FSL6XysT|E8Sxt|02WgViX5 zR5DSK=mj97-85{;xMAb>w&4K8D($!z^x*>hVBPSOt2tAb5j*>KSZZCLs-M$B=okXW zz6`Di$$~+7b5ow<)l5!XZ$Um`T)v^>$AW_|MiK=e@Y2uO)Ei1(>69F|H7;!z_|o@B zTkKk!60d+r_O7zX>GRFdC#zlj1a6n*6^zfwG;R9){*6)NTxHrrh{QPP)IZ@8_aK#Y z&vA&88r|{hMwJ4L@-HLaLNcJe5R1sd?h6uU4I&>I{hoAjj;K|AmFjh5iIJRrO|wn( z3l;_KSJtRk2-JG`r(gbGZ}a! zZyy0Jt_{EKJ2{wGsdmOXJ;))0*gW&GFZhef{eHo&N_C@-?W@JX^)0udaRAL@I4c1b< z3wNRncr&gh_u$n|?yY4mQ{9okXvoyYh%%yUji8wu8NjZK^q2v`ii^nJjI{`~l+%bg zvT-#Rb#c0AGR$o3bW+3#YL>~GYgra7E3cg0YSJD`>#aUed8zcN-(Yoq2}KG5S2%x; z{c`#T4k#kTFx`VI6B#RQ!j_-cJvj*Fi5r2T;`dD|Bh&1^Ut_Lt_O!!E;&r|m(!{p- zKIEbyafZX8E(!YZgiCdem>*Z?ge2zD1`=}&I&*rj>g)S;ML;9^6{vmYkycQ(m+_n@ zI%q@Ox#5rltwbI80H-z;?;hd$&G-clu{s!AAHh$j2pxYmq{EaeN%`q^G>hlb#mgz5 z?ExyKNO`fY%!9Xxxp_a~$9%bsed5ObQ{N72p?+$fKZ`^Z z`ponp@KU#^aQ_8~-Nj$TYY16z;|3J^1qh&kn9RxS>ao#kR`*gmB|7A_&% zAfv)IBhV<7$SNNzQ=iocI+4yg+d|s#*J*po=n{z0b_ z`FAZ>Lxu*ctYrr)ye--XSRY+L;=)d_Bwvu)D{_R? zjQ$Dj&H)NzAKuXpZ`3CG)PdNXiXO9`QqY0pb_%G7Q)6VNViWKA0B@-BYEO(%MPf>j z1Y$LNKXB4)H$-5R=bnEZx)70)Ri4BtdeBWMe!{Y1>t=9_hYM`P9hklYa7Ukh@S`0g z9&K;b>yQ9SFkh zn&HiWB6G8L|8Ot@JlQ8@$Pn`!4%iLZB?pGXv@Ag8RF*iLAtsT->Z^) zfT|dm9>07qU)9?>xo3j)$~sd5ovqen6H}`vMZ&?z+!dN9mGA}E2cMetq~d*oE!P!) z!BeWxMe^A90om7;%coKB zD{(lSd23H|CXPt0NYO`Qfg-fa?}00EtQ={4lV#LShUv7e2kU%G+L^|#L9ays1BXk# zD%2&RxsUeIZ0LIbVMzu?wtZ!CRM~b3l7x${5(C@$_|Tg*is;Y-ucC?BO+`Jzxf`lIO$W*HV7TLlea7CaP&3lJ?Cn8V&2}7hZE?h ztHze{KP4;%T}6QDM}6eY@dd2bfpo^jZU}jy_VB_q?>R&jur7*Y;$-R9a=&mLx?|-z zzNQnu;AN6M9Xo}VkrlhqO!kA={WYdfdJ*3r!KEkLagINmd;6ZL2G^EY9Yc;m6tk`6oR{0jbhesgBWFx|NGixL73VGMaFk9%u9E+Rbsy^7b_b0BP~8_qcucfg+%;F4J?CsJI$1 z_wK=wQ0SiT;PWeFo+x){*?)R=)VQbFXWS`Gv1+x7fm0c3DiF#sTE$1Dj)u zOaashBOPlh>J%`T0~m(MbZ9clH))0_vKSqi0p_CTY`!PADqQ~f3sX5_tnoxW4eBxS^V$gYJnVAnKK$9Xp}WK)esw3rg!z!M?s{qmv>~2Rq`~f z2m;Svt~HDGK~i6k5jlsYLUvrBO)C09TKP2IizVDrne!D)=%OZ7qv9MfblxKuH9)jekbz=@Xa%!$?Kw6J^MKey6O_3I4@dWR(VX}5?6Do zkGi(3uae!po%n*1RRVAEw}-7t6(E~vi5h^5%a2RBrx7M5?EK0N1)>aR*?p*V4%=9M zcdcZ~_65LEEnooN4m2v#Up5>xo4eecI!uN+GE@N5`ENJ&`#&^5HJN!H!OfJ z|DNs-x2@LRy!job*;jQh(>W@@c3`T{rHnIII)0*+jzZ|;1;{BP!rkZz$$>ML$A3MV z6di|A+zUqi8AsvWgU4yzt>@W{qI7vTT$nkTn@c!2x7s@dj5ghP_z6nj1^13*2SJu$ zNvP^%iewDalLFW!A60k~GNrhl#pX-V??7Ie?NNUY=)bM1h6FqocBTZv4^#XI#s@0F zU@!wt5^xZ0cU$@&>QlACJ0Sr^5JJmJo#LO1J9Zc7MNlDuKiHggfv!L&WY5vwf*TWi zsYys~Tqz}vVOzhX7-kAM=U_x_a3_RzolnkwUk4d@;LO$pRtw+>QNn_itV}4JQm2GY zBRJhtidAXfOfRGpggY-N4<*sXzbCOe-ts&vVU;_ui>!P>i@AA|tNH-MaJ*c46;2Z~ zPGk!d;aAW__`~RLK%UyE|I;w&GdKSbo(Ol$2431h-*<8x9t< z4af>X=tT_(M!xUv-vg{!<6s7^=^DuvCgjWb1H2)27>4bg<{JDHm? z+$*<{TNw%*5yS_=1cf;m?5UQQZIQ)U1q_qk1EjMF7AGJlYokg=DXEQF(7GQwYEH|9 zGXt?nLM*(}g`6tQZrKUHYj(2^iuA3@wj>$8vpvaM}TJN+vz5E<44dwP|Ub!MTE~!A^u=HKpKm4%3&)P4Irz- z3o7Iq)lcgle{%*y>XFqr*>hjez;JIzvYwILpoYY9&dkRU(|ySmyPiIA5{TRe18Tfl z0Tit)nEjkz>~7JH>(D{rwu?O|l~IdZcskMqESgUKWg}I}v#0)84{4p-0VA)2JaI5N zTtgIS2X8vd16Xi2#oBzIB5-&zP;g(&&OmwI|9-3W+pbNtZLksL07y7UEP92tt!Mp! zjK2lNDCX7dUa!4+%UQ6id#mk@!|Ku3nIF|^^)hjaR22`!?0>Z9&nUPd_8eeEAgZen znC9l`a76mKflQ40&Lda;Y8Hg|!d=+K8Q318Ic(`MdtsLT#>^AOB90oz6OE7SYpKH+y?fWsRgcFx${qq-9AEYkwzQf| zElzfMK_h-a%#`Iw7`E7y%GNHSVDS{4p3LB*4G@kvj(>bTVPH400=&;5Gg+27N`|n; zNdYo7%dIDjuxA5rz%nb-ear&F*zS?H&qnP0#Fk6Trk?T^z(jujK2P(Nq;vx%W`p4K zXN{<+_$w0UzA+m-jUPZ32y)X(pj+&HmA{KL7Bg1Fh3&6uDyv~AmvgvvY^Wb@yJ3Rx zn;N$`us0v-mC{8o0lLKU8ZY_J6Paa3CX%r%j#{N{-8V!z&2WMULz5DCRPirlq1hV_ z+K-fE-9%>kM%Ml<@`tH=y}tw2+z|SC4>=z5iO;bP*2v3$>b-jC?z#7mGmqd*N35J5 zo^cBL)FTf`YaESB2Lo4ne(5cAc~PF%GzYSYsmVd=^tXp!=>|yum(=`WbeN#Y$LQnj7Vm8*0^y0C3^u`8UP5*K)tBa10X}db!!SLYkS>?hEacc1^&} zVE+Rmz})=bQvF|?Z`8E8I<^jW8!?+4BYnt)rFlDHX=hkRkEW41olnSEXDss~oQz?2 z?(W+wkW={b8%E6R(l73qNdd>_c%!)69FEVy^inNDZ6)`?Ej%E|7|nJ9x&qiRun*${ zuo)LE)dU{dhdn99x3_8rls|&A1Z1z+S)TPhC~JwBQCBSwu-Qd@h3BDFdu}e16P@14 zqfiXg7q6BD7e^Rj{|tyZE(@I20RiV z38UwviN?v+s!@1JON9I|S6mI0#*Q>a9ocqANtq+V4w|!T>gV(w6N6CPnYG02Izp0IHU5*kecljn1~WpH7*j8>Az6uV-`B-*a2*d4#Oda8J=x zK!x&9dB z0F8PN+86apP}`GNN*rvnm~K?Ex6Z?|HpTJQKegrW2%1FW#to?pAV4OLwn+J@)` zBEgAGyCicW7j3GuM?{KuRgo_Xsng@uJ_W|}}QJkC|GOy*73QHMh{ z|2B>G8Eo^WknAY~Ny@Jtzk_SV0`@YaI_VYs;5DKSskvO^f(tJq`59;-808obf`%M- z3JsuDSu304w{b=QhnsLQ9?~O;-cNIiWCoz{&vm;ozhj!11%jGosKryg`z;z@nB*%z zZwFeN&=rm?58@&o112`5S7J&q@!j%C{-?fj@YM5TU%p}f+;7Y1>xXVC!02!hcn$|q zHgP;X6GH5f_%$B3}wP{a5<(e<`6gNcqYJhpALz9$FJ7_9by5mXp|X!5)Nq$zC+gKwQ2RY z3Em$=CA9m0ux0APyT58R29W!V7Hn)*It8u#W_22$i3l0WjWf)bB?{L`H`p(!eggBc zS4T1*SUHck=n0$)Lje+=0Z-v<{=C&VF_DQ}Q*TTb_k^1UV;%huZ}nY_&U^#N>8Use z%Nu?-Yu(g(5cRKWXT}2r@cj3S9D@`tS80a~E37?%xDI`63DEXB*EA_%TO5zwC0jPM$zVcdeBOr4<%5YR2v_2$e@>HZU!iNJ)-+1_5qpIC2zH zWa}CV4dWSYP>#>XL@2yexmq4r{c^6M4xcZVcNlM}+6|A-gEyaWqq4CP`X_Yi@9!Tc zi(0jcfspD+z#S5=JJe4aph#DQfXGKW|F2*%vVgIOVaS3yZ*;l?Zj;9#Ko@x4kblqt zHdlE8uOq8=$6|B{+63aschye1N8-_guC#h+$E_DgtbeSHF%PiK2^%0EC>Fo|ATgm& zD;~}khafTZ?<0pYg_+hM!&5JmfIDs|6i>jtH?UL#@7X2ZZ_uEpoBgCK!!CQs&E;yFBGA88cjqEic*K)iw%T zFCaJHE!P%Qi1Bb^*v$bzxJ{1{Uoa*qY#GJ6a`RLx-E3OB4s^587%}!6D%G2q`9VRg zt^S9OQ$ui*dh-KhsKQgw2rg7iaBLhq-eH6y7Hu5$BtsjaM^amB^>vNAg?Wa^t0_kbU)-F6Tvz^$IU(Y=S^7^rQgtR zw7F(BbK#Pjk8KcA!|_nVQP|7_e;+&^m{dN-+jxqOFvr`be@Dz|uS=n+of$HyJ-<$j zAJyn5Djcb|gxO!bD@~N2`lUTWI%ff}4Jz7Vj=@IQ#EdwIHLnNl#U7wW{8uj~|b*3jI7zN9Qhn+x`mghz`=;O`(Jo?au^uVw|H*YJh z`4(~o#pE;BfwBxgN>fblvD zglMPFcs33a?`%yjD;mdpCqEsN^$zf0U(vG*{tkerx&Nfz-abL$HH2i2-JJsL4}ANt zFE+y_R!`8|=Jp8o!12SeAv;|&Al80rQ%gjWNLdJk=^xR6wQM>kvI)j=l}^sIuWaSC zeLd|Q0rGex^X&flHRc-f;*^hjdb6QgwonbzRUzH_2YlCFpqjC*vR4iY!_sR-xy3$n^g!mG zuds0UF~qsu$;KTqG>Pwh+7T7~O|Qx$LNwsCz0#>x4)FQw-MONo9=3L3}JWSm7ac2DjZ@D){EX;&My67bX}2pZ29h3F7C<{n_dWSX#(t)b;*dVG8QfX&O2Q6*O4xr!I;}(~U8#b5Lf=QDV`Yf& z1191zFJT@5_nW%!!5~g9`i)wgwHJ=(M+3ej^X58q2nVE8-zGTE4^K&=9dOqO{$=al zuTyu+eY|(|o}!86{DgX4^y-3}41keUMj9&~k#Ec#Nkg&5=k>dx8%J!)=^!RBEm1!2 zGj-d$SHZg{@9eZk_q#4nb+i*{3Gu=u&j6|!nay+gE}gP7uny;gG!ZgynNG$DbidFVFF}gDJ)UI|FussapTB3wR=wcq>0v?1)L(J~0U#er{OpWcHObUPI zojDUaj`yp&JR+;ezldc+s#sgboxfj359DRcDe^S`X^yv#tphe-H)!j(!&y`bnb~hG zCoz^{oNR)WRYU*v@ zSoXU8b;2#Y)0Y0wVi$zJmA-QH2tojiU8EDvgatlgP~Fm1yq<)=O*(M_up319l?xhL zs6+cTCtvpm?Y*pGTGRZPb46aRiO0S%^ak5j4NH&_eONanyjBGn#LO|ayIUKxz{<nX_J98} zst7RVt1N@?SZ-7vQ4#m0*@1CaP&2+6lZ)6ne2bU=*fL zeMGwa@1`}!UTsSbL4XuyMwut+doKQl4XVUQAa&*|YAIo3ZO>b$E6K zIuhPU2v1YcdSKAbKo;!haVL9Z-Te&s(1EwNED2n%=H10k+$1PnD}Orey>DZUDI=$` zu+MH_>W5IPCasbnKLs|ZGT+|M09{Q>_}p}UuwR1tknRc0v>n1F=F<`<1@qMBBz3-R zx%)%JqzLz9LP#CBpyYl_B}Wj2#b?o>AA+Omg|83Xfks0bTgB;5pcmG)jt@v*hK-H} zb?k!&Z{y_;0p56^Ds}&RxkV{D`eE&oTdOh zwlg(p&J3dGd+7xEnBxVJ(b=zA;J1nW-{XnC0+p^s^68qf6+S&yjcR`i7GHP*j+%P< zFt?Ag^5x)-)j+3_yBXK%1~HV#oe8_+v(Wo~Zk+s&#&PQtM8D^#s`Y*7>S z$OON`fZ80iujc}V=h~@PC zlZzIEA2poIh#6vYYuz!soAc>{^o&bae@43B6Q8wTvG15Dl1Bxh5D$3J5A+l{>zH(LS zET;dlQ6z`d0IY9*0^XRHrhE^7$uW!58Hzfl!3LC@@dt3!Yp^}6lJn)5n^!%+!QuwaJ@ zZAAU~i)3hpwc_YZwt!Q_c2RMgUA}Uu^=HhPUjQyEAUzeVo*=@}$sc-|zPtl$e6dSq zv@bOlNFP^976ri0$;ejfc-{$kjqX@kvc>-%{l@}O2)Tneh-U_GMnk$v5;XhH2nNot zF#p?1gp~E)Up)V18usA{A2^4@>M$}I(_WzLv9adCXZCT3ykIU7rC3 zIwA~T-hgr&HZ3{R)$G+<;N;{DYrp5r<;i-%u)}vIb_INNjP>sNzTJRJ34;>~KjHDu zJt{>%B8n_8yamX41mmM}B0dE|CG*PMJvJ!$b8DtFCE^dqbP_yNdulmdXE|?)en-} z4g=s&0{2^kClKl%Sx_5~;lNX2^0BS=b7+Z|ll12LGe)Ch>E^BQh$uAU-Bon4HOxFM z5_EyzK?8<)*bCBz{!++RsN^gPo*!{I{e4dG>BntH!a#EA2|)OzoMK6$o)b%>7Uy-p=3Hm%TC~d2 zztDafe)HTkN$NgWDTK6VdB;BEN}YtGvc!L$x{4hK1mro$N@|CWSumAgkt`d z2m*R4j~j8TXNaL3v4i2R-pU0ynS4wMYiYS4x5|X%gM$E*?*Pa%h*Rd>ux7x>zHy28 zD=pl+#rTc_Gp$|^&CG7V2`09cIdN*i1fSdrE9|5ZITvD8M;up$32aiS;1zIydtK({ z{jbT^JzHdKC60Zrb%&48o5$erNlG8$y8|F2Fx2~vt~rhtJbeM#VJN%r`0JXY!Cf$M zTOpRWl~EF3LQGzVCJHeOjSPmfY)0zpXhn=W-v_FGZJz<@Fwy=7>Eaw1<$k&-x~VTn z|G7Z+;bLA3{YpcEC5-!ohw=1X2xeGo+@1OtbYaj6$Lo?(z|JR4=tw^5=aGAM`CO1^ zAO+`{{d5v?pHF`S?{m~WC?vnJkly`s7I%&*O`t5-~BWNAwT=i9EWT$%Ua z1TYKvQr_VQOd1{|u0CkWk7|4=Uxq(Zy15SW&I6V|fFix_sw|M-Za=Ys^pzoEyd27) z!{jittIC8Ky9J%jA`qL5T-1ObZX2-+eI|n*3$g_O9wxf<6d`rlR{<(2p zsv${G)bKFSDK8yZ7q4L4pMWTy^{2sBxg@nZ%!-m$gSJEZQI!s%K>|e=u~PAIidn%N zCi!MuZ3WbLPY_VnzeNuiRXMU>VhD15=fre>xB%QSwpt2zb?k7f5h_$FCivy*gE*eR z{lqt-|H%RX>G=d3|EC{dV6P4+)=FHN4iw7-0YnAE7xA>6+$%kVAqLJEM6QjuylvNF zObmZM2@<*6cJ?X%G`w+iD*VVyG4txi>>{%Zz`^ZF(AzE+bwvGL-%&`}r;ihMb4syD z|BeWaV0mpYH^xUL&VfU8mz@7loeh%&HWJy_Ex$2q{m8jkjV#{9`i{F1O-%;^5KQbXCEmTB&N$5{tRE%()J{&87;h zJde_^U#n?@>F3U_6nfjexlza+!4fMHK1R2KPV65RIepORa(BOdTow{(3-2+q4q%t`Zk>cAg3f5jT!>-G9xD-AXUPW1J;y zqMe!VgyDON4o-6qfQ6VS!$n@I+fzigf++ccpg4a0H9`wFQMin1fTGxO0;@sbKpL>R z+NZFHdp<4NeWnfm2ja{h5E?V#(mXeANSQuF(H@aZjYFz*jXLhF+I7o56IrF=t{8J<>P zyw3j080K$B6xiJRMuj&@lXRBrPFCFVZjq<~64dIz`3SC&h>o%p0c9h^BlX}*;KR|g zd$(oW`r?tMSIRju_6rp%Lpy;uRo;CW-Y(fr&Kdid!h}W|IQW{gh(Wopr?QK)s-ikY z1swkT?tg#9C&v(Qfr4TQ<%8D4Q*RsZBDPHH*)8iltYo+t?xpOOz8L{+!YeOIfn%ap z+w3QD8ljDAN#Iu2uX6S-=D$)0;r z#{&g9tQ#~;tgC^*r?D|9@i!d;e?qVzhik(xsAZ0cv|caTzA0a0xeqf?t6%xhcHI*> zJw?bS&EZLeo|bwT7$XCLdL7t?nU?4}O7(I|P9jI$T@bTUHANPzHmrOQrbp8Q74q zCh}9c--^aYZ$IGMrrhpD)eaG?Fm_6`f98c{hAPKnR^yeP9v%OE!i zK4iQ!r6Re!^Z-l__fmL+s-Z!D=Y{PHcC5`*To14JO&T0aQ&x@-J#CFqk!)+}^|BOh zTzJs+!;=;~wW5{oU!wpw<|nRI5Z*62x8O{5Z=RgX5N8$!pTifJiKAl_^EE_*pGS;= zzg5?K>H-`JeRb%`aW~-z66%X3q!owhE<+g7b|j}3iDvkSsDtZl8HT=0=GrN40Ff1 zKgHTVl`|7^;Cp@fX6<+3L-)N?OJs=ON;nhSD4lU@AJ-j za&bqalJimJk?(cR6zOLwLGOuCoS)Q_71wjRhWvla)Tb1l2MVT!DYQ)!9~$G10mZM9 z99TH)9tHRF_+Gk){5W}0-B7s=-8K;uG(Gm+Voe8B%#C@)`7YAWtqN6V20sk2ER4mB zr~6gTM}aZm^h3YO!W7pOwPJ;DXI=-?DvSJSv!bC7{jSIwknu11iex?g_v;^~R%qPm zt0Ym?cA&z;NV@%4^9ibSu%M5yzb-dvId(^O2FD8+uN3*>?=i7zD%0%l@oQ-s=6P+| zJ8lcF2QBy>zqnOda#GF12y!<+%TFxUjjzBm;fTN%t272J!_N;@3O7!VcX= z-1oCbYTXlFF&PS(coblSmBx>Dl0)Db4Aedy8PwZy-19>tw-x*y)>XEsaE@S;|n5UYk=#V1Dq=roXD4fp*}wS$z9B<4`Y0ug4{2D{0*DevlFzw{oX^dIy>g_BF?M+lmbI4~U!dFLTvcI(^4n+GQBT+A z>KPd*`h*EKPjU`7M~o}x(0=id{Z$@ZkLn%xVKfcriYaFZxb>4}nQ$mg(4Pk3NRlE| zG1q(xSwysAD(8SMVmMH8ZAQkHO7VrXulku6;D>P}eY|s|2>&cVyfqvt|INDe8+wcZ zOTSS@;Cr9xpV^uFm##n<8LYb4ecHnw+5PS@rrKp+70E&;5Ym$HsOJM*@N4b6Onh+P z@KI9zK1Ta6ca_2p$u3<3YOi4w>g=5(1+Ck)$fr&cRZT4=S!vdVdbHS6J8)MGQP>ruxmIJQN!e^<<9-h>7bFM5c-%$vVNv?73@}r(qQbc?l?vwvU=Tv z5veq%?#juS$8;6igdsyR)*mDwvX({-mRZp0(7+B^KKxOi$a!|j^e6)R%|euks>^lP zXZ(h_(?>tdXJHnf0m$V<3>gAI=zK^1HupS`{;~Kp{ao`!A}c~%)aHGo=6wIRVjwB=^Au6F0JCLddG#@#`;b~JE_?bslFg~@PJw$x(E<*zq zQWeL?-zn<8mzNYfISN!z+)LqEs3ur(6iu`F#4ivjh??1`4iKecA`W4zp4ELLe{@Uk zPj@c(-~#00X17?iJdDa>?Y&4R-7JDU=q@d#p@hBFEoVeGg^w9kpw4ujP-JC}XQdyxD)vAwezQd`{20pTX53qArFGm?16*_Y z(h!Vud!hjOOk5G&TotvqJ|7GPYEtJV*Z(M`{`0xfgO=qm9sU-}5w4i2qcC^q1fmZy z?C6GacwhrI0pPPQ&-6bDe_9VorQ@+}f|84{l4s@#Xy+ny_P^}Ue@*KwI z5>`NpHT?v#Xp-p()hLGB_&eezr%8GMQ(j~()?4TdgxXNeI<4LE4*H4=NS`U1Rz!eC zqsA%SU0th&uM^>o6!7QqfW=6VT5(RuLJ2-0>OB7uQL{9W8~1HA!wWwriJr071`7Js zOW@3ITm#*t?5_B7t^g+zwN06_j&$WM${drJKnclRHkK=@x1(3tjemh7@Z{#mU{rBv zeG8*KXesP4u^=&HJ#C^jXz3;<6c>)0aGEwHfu z4de~dYqser&j@omDEU#KYTBaAgj|#zdAxwJaHm-v7Gm8hMel+Ys2C{$7}%Yv%D-_Y z;rf`f$jY%!V?lSVLC|R(ssHv!JdLtQcUB-abhtffHfOwQN2jqu{aI$R0Ox1QI9eVO zCTk8jvVl1iN;3q^wHZ3Ib-5~wu%-N@cL4;Z9SMY4Z0*SZ3j}HY0X6*OPXTjV&htyL z?li}<EB*5;jt*`# z44qhI4Tc`uBzxdGb^aJG(!kHHEB36KxL)y75CwoeQx^v0WT<=w`62*Kxp$=t+F_Yp z`;P+xEsJaYQ3F9*kpG>igj(0YtSC^do~eLnUAg~wj$#P(Iei@1mUEB=G?Sx%sP>V( z%7cga#r*@YhtuvcV|!Dws$yyTa8lJ*%%0dQ_pfwB;`L#mBcbUX70)k?$eP9FTunf? zlIimF!afgeHxmllovT){odAN|Be2^*8gBids_t+{R~h2DbI%`Mg&q@`6#i(lz@Yf4 z&&_Wf@s5#%d3tlo=&MzhwJ#+nW$KBwMxK8~sx}P5&ni?hT!$mqF3+ZQ^;f5Ygqf)9>5omEYXmf2^mUCEyL#_ECGo|G(oPHg3`APM4ck^bYHun$fXt>)<{c7&$U!~| zOLn|F^nUl6d*Ekv*nQPs_bik#Yay%ef6(6F_#9L`lmWctbOxS$m$(pAz!QABvO`bu zv~PEk2TtZ3OK5KO!B|^DbepYm3S{Hn0HwKY`M#oZ^?IOTX6oi|>r3Fc5e);E7IquJ zGN4irz0>?d4t__L(KK1tjyD(TQF=RHl^H;{5@7mI2du`d#K2f*@BKl@4}7U%+-po&Di{B0Q|D_~^Z$V5AI&fW(+$*ntB`ZJ`g^PaCFfaF<; zE<^ZP^^5*5pR$oFVEg^FKo5tz0r@)ImkmJ`V4)K>F9$rj(rD0<&^#NiXKwiJ-UL;9 z4{~K6aIuktAbo)k`J@_8XexR_EN1^h5}hu1)}2`2fe@z*$u;7~?yNmOa0Q8hs+_6W z5Y8+i_G*Jqp?p>Ou`}phL#Qpe@EPDEnVZMCPA4UWQA<=vwMdbo> zb4MKrvtsL(0NuC7bDlR^}-_K50W$MkJ~ zDFiy%eeH46ziK4pKMd#)euj=xCFY4%GJFYYUOr0*N_*_vNSw8UcnBYGd=K{iI68+` z`teETdm#VMoMBk!k_}?D-9TMkyYXx#{U>Lu`Zx8FaztPeF}a~OfgRJ00>>d=`X*@I zV=?ZxUcUk{V$2(!shczB{yN%d}-QO#ejMU z+3dEkTU|`CX|?!=#vmMcHv_s>0m>e@2<0G%78^$q6l10!MqT6%`vE8o5)kGVhc2Fn zGQ1lMNmQV6-FU)`P$h5(j{jc{ftf3$z97a0CwFd5kg-^Uv-O6LuJIOovCiVv70*Yc!HAE$ppD4{rJOnb!@`t`i5KZr zn?Tnc5Z5XX?IKoQhOS6@ytu5nZ`haG3e2HR3Q37@-@SvyaIFfkDGNxR+)u=Kn_ha& zjKARm`Lk-DbJh!1tq(zBlc_wX-ctIy`3S($H8S+r(?V*;3X4Uk@4X0Q5`Lja_sb)A zmk0VdSIFZBtsx5nI)*IpXIX%wu~k0u>LffH@BK3~KyKL}33^|c0{8yD=g8@ZgXjID zH-*LsL;sxYb@#us3ex))!DVS7tu4ZT90m6KY`DW819n$@Zza5wp8qPKGqX(vR~JKE znMWEzEM8SR?Qn@)OhAA#r%K=qci4lEX3LFQ*r{v|GFxG*l=m{$$15W))8{?n4vf`* zhv0-`4LW&o@R4LAB&hJZ{k$Y1g**k&#(Q9rQR7!5$UC;%p8?kg^qJf%X*7s_aaBcu zZzuyu;c}(B@a|}wOC3*-2}9umTeh)Jdx-+$_eD3MrI8fc#-O4bHXl5<$%wQ^l;HpO zZULR&3~uI^%WSP>zcxPU*VYfhv}(n7miK@hS&GiP4yxx9NU0o1xDE<8+lObOoPr>^ zYL)T45J5u4bpOX8J3Qa;`n&JTkzat^pJ`>3(vZWAga<@K^hS-YMyBq1d+(%q`kDTy zZ7=HYxfty-cPw4#xl*Vo>E>d&-Z1DTvNhAgZJ#v-eQ*s>;_I_4?U}@~1m;%TU%l^6 z#pv3ExJ17=cV-WhO!3lpri%Uu#XXs+F=^QQycqN}Wj{S;|Mh+?gG2%gJ*}@7Q_>pf$~6)>ccw1bQFf=^_e%g zSDXJIXKw;c_4>Atqm3<*IU#LiETjlUAw^^eNkWDOA~s5<%9N0KPMQp*lqeOUkTeq! zm9!C}GE^dp-}N}(;q6`j|61=kYqid5oz7tI&*!)m94ndA$epLfh-@zYAJU?EY{w zX%%rV0jrPbOmd<-JC5yFIYys!m)hU4!8>pYx6*2-6PtI;X^xRRO}rt~IBhUX!YVTNvE#wdN%jA>P5l1&9TD(pX#@lNRxUWk%HE(E3dKqFYxJ$ zOxvH}lMD$+p+t#E7EltyzM&;#kw{2d5%}G;_ktQOQK{#z>)Dy9%v}+;c0J}h7?C2N zPuyk&@*H<@#4>fPBO*_5skl9ueyoUN(vLDM9E0%r5qST3xR4ZDy&#P-Id#8ijxJ^1 z7B7@8t@PzsNfB=CXK+$JGh+Kon5+{+)^q3xaFu9S@HJu=d%p0)_3Vud029P?;o$RE zmnUos zakwla`s(G^nn?(`zP)vo@5h6^Vn5U}$m!h;w}`K=_nwvSB25dS)%Te?=QgeV{oOJx z{Sba+hukAw#}?#)ue1VS-nIVifPi?QBz`2t*MA=a1h#|bcNs3H11`SR6Z~a9y)ndQIDghlg|7}oDUInlZ#^O~uNa}( z`vBPcYm22>fPO;D=?S||*q(gA+Pz0>DJ~5?V@EP+LLdfp+X*M;qpngPJPw7C7#b3H?;!48;%6A+$+TVFqpa9B5_afQhCFb4Ka#jG@)hVTyx4EZur+cre6Lp zgN1)hWy^_!l8nv=o(udTmJ2*PRrj?Rg0DBwHevXMgIBcqNy&uF2pX-WFl@VS}a6TL+}a0nv&msJr7fcz9t)+*TzqA z9mstpiwR<{>JWYkJ^AFkP$n7OFp9(5;$-}^6BNehb~yLFE^#@&t07x+g5QUYFG@BP zp;d+Ne}a>hhU!=EtNQ8Can7YjX1>4_EV}CIV($)Ki$o!HsVY`hx78ftvoqNnQqX=( zFJC=HPVU;E2Zn!OOSC2Ai{aQ~+ASLj*^WX+0(KiyiU)KqKgK=(6zsKu{wob$M`orE zH~swl=B9Dt+Up>tp}BIqr@7{=HQk!JP2TP-dMAzsidd@^3o2C#oVWF(siSL&kX#a} zpIBbA^owZ71uj*}FfM;fJb#I9%FD#Y0I&8g7XP!g0fZ((raf9?eb*-1G~DG0(L8nO zHq-j}MWQpz`&Y0`zh?_mz4&W}1LaCt3x(^3voU#oR9RH#+D&JD|C&4Bm=ygvcWx%) zPYxcfKC&={5$l|x!< zcYs86!6FDoBAxD{)_@l%$Ez`-=ix?u$GvU45MS|X=HQI(H3IiSFPNSd*>ZFqv%2#y z6_z6gj2Yk04y0U#|NU}BeMzmZDFi@5Y!%Ub2k7+F{wxHb^A!^%rRBZ+Y5Geq^pjzw zf!NguM!j$d=oOS+?)^mMOIbW<6myH3E}jW|65nMI{0yzKm8Y9w|7-XIr8TU;BaZJS zeg}panDSvQzqW0H=+Mw}5K;fyw<8qn^~xzq4wVHK>+aty0r#|zyP?UDMx}_a4KBzI zAU@0|VPUic4lC3fHbI8e$_n)8aLY_b^SgabyGBkfO_5v2^P;?=Z+Oi`Ql}lA2&Ulg zE1Y!|lg6IHFV4l}Z~x~PPcZ(R^{mR?<)%zI$6sDFdx~o}_E1dISMWd5vG{omOvfcV zIyS@b7^Leg(t}I4UQQ*{H1HIqz=MsM$0W3qkQRHPfJ{TES#5XHipq9sHq^3&oF8!w zxR`l-c*)J%pUOe8GluVvv*1K095H~f(MY(H(TscB%@v+}#hlE+ji~3_f4^D?wXS{b zo^0ODjI&3llTe@M#!tkZB{KE=Ccps1vlPJX!&mdjgFgHZ9<(KuSOGftcd=^1S*A{Q z>@Ap~dH5cErhf%kc3*!=e~68o{* zr00SOm;JTLVDToDVwQ#V*AGumPkHqw`eEQEjscAt3zQwMto0?fgGoi|YisbJGdD90 zZ;Bd9Y8K-zfJEpZ3)KI~Sm``P_2|XEAQj>XTkQ|$>JNSWu&LKGYF##9LVNT6xqS?L z){DlvS>Dzjv#Sl*kLlWK4ETEfHDFde{$FY|LZV#BEO|UiojGqbG-{ry7B1MRHh-Qe z+Jg?X65VR?_N%=h-(tKdg)eo@x^rC@*qimP+axd*`D*08s|sohtWn7c;c(pf5PViN zWXZfz8y^vOVh+9~RDZ3)gC58vtDNXQQF4LxK)Ia-Ft4$nT-!FzI$QAQ+*y~`<$#zF z{ff=3$CV7!PBGmTbqM;Rh9!P1d@(FwAnW-<;Fj3@f#T6M%=g}Zu_cex_wPT_D1Ux` z(B*eywjJEFwUYfMTL`D1g{`KVG>?Tiu^T}lT#7@PicZ7`{}35i_b_^dbtMUuMM@J^ z6Viq&>FspBkQ2gojtu`5?yr_f$8zn}+Vfl+rphFqayO{=CENi}Hxd_eMkcWmfBSU_ zj_wQv2U`kURQ|l?!*FBxy*NbMkQPCqZAAS(HE9aEkL`geOLW`3PP`7(~0MbDpo&w`C+CF%KqNbu4?#)aiec90!&`rG<*fA)v| zq(2nj5ihoeIZ6=9l^lyL^_|T#H&A-h;Re}0#5M#+5K>hL0Z$&Bk4jh)2;}^{_dESd zXv!2;sL9^swE(3lLh~}z+?C1 z(HV|oaO=6!j<-LAQcJwD>COEero??9#V^JEFMZL!nR&#pVGoNwcb9r7uIcTGfrAk0 zC9gdkcyH=q>v{0SpLm}G$7Ln26#H#c-pzoJlWJ^NZiL=hdtwy-x?JqdrQ^}{C=35A|^ zNA#fYhezil&PC|4Sj&>=9Rfxhz1*}{b;j=#Tv99$EkgW6h&$QzL2eg!G{5&R(w=K9 zy+yW7p>#Yu#q95zw^Q(e`tsg=u>AvVt0ph)Nv5Rr6DCaZYNH|aWx~6$-$3!8|g1u z;<%j!vp}bR57$qiw!5)-_==T~?JDb~?2)OJSl#ec{F30Z!5H@|Cg&e~P|(KSCl>jF z6{u^xLmhVwGdbiSRi|Jcv)~bskC%=d7hD#~+YYyg1E1TsAoVt9`kYMh7QMG8 z@WxjDgJCt2Lo0Z~{Pza!2xr_^svV8*Bk7B6?*^9}C4BUH?|9o_pLkyJ)KJAR#ncm; z+uS)u#pieI`b8G^=+fnI)@~Z=&y&igKpw=7V-!t}?%>7)8ZIg;)a?|zB6<=+hOkq{ z#$_#BLE|PrtFM^yN*Ya@@G^0Lw+Qv(^JApf$P_;ih|bxi~*#@y8^KGN|T`#Gw@s zkhURt@V^Hi)-U1NL>UR{#Rp0!y+39*g7L^h0pQOUjg}hAuJc_5p!gD5 zB^Xbu#N8GI&mk^meD&PsN?#|%**ywzkF$QuTko)a<2krLB{Huf?{)+#9_brsJDnqF3vDVyp^f;us(n5f|;|C!Se}WTTqXsku9n znJii{Y&t~qDlVjj&*cnVx~<3%09qc5D!z6dUu*;^-hDm;yA;Xad+;c%p7fTzxpS7V z2}vsQZ2ONx_|9xp6UTKUll**lB(I?;mSY5u-)vZYoig0r^OJT&rj3 zJIKUImJadF#3KI9*Dgym4=4UX^AJhZi4Fh0pUy<}BMeWn-9)iVa5NMAG*R|=o_Z;; zB8Bshu@_tH9(3lws!-6~j6+#iiPvm{gWR@$^-vfiK85kW9DcYYysn!7wEY&BYF`AU zx-x2ywQ0h1!x$dr6IgNY0!EcC*zvPM=9Vn;N-D_~j((BYT#kahXWnBKLz*0g@%=44 z(+Iuc+37Xg2;iR@AQ|ui4Rb-`oHf5p^Jvc}(v1GWB$HANv05H@8Z75eQhWbHy5SnC{#iLVPbcXp2Pbl1JWY!HT1px^K+JS$qK`UijZ60cBC` zlV5+$JA6^?DTJ39L8;F*<|M^OR|o~xpb$FWZY8$*A6s_&*mKk9qum>btBTQ57|Pjf zN~DF(vEKb$nsG>S`luV2@g%9vo$cqn0@C_x|AW@whJ#3(LBUiY`2j@SS#nG5+Y+(Y za1kdy!z#WuXI<>!lbx8%`-zBiQk8dh?%i=FN{j`sNqUN`S>Q6^OGV_Wta)xP#7CE9 z+F}chD#`vzhUchlU*8NC4!t-T8GuA9j(=+VM#5`Q@Y5`_b}o9INfFbp?)BM(yN%*` z*?(u#{wKPpJ{9M~Gil@RP}aISD0}JcgICJ4;p9b19NB!nnm2NE%NCsFpnq_dOZZ$d zQiD&j`h&VP_BDmsPiRM|e)wVIiT59!pF{og$7z0#?jH+}g8i}rLqWg@L$~x?SC$_f zEP5k&zfg9f3K45DqcZff@(U4pE1ek(P0@ANCQ0dY9IEF)?JzpM`e4h=1gl#xZi=Rm zz;H~eguo!j{@id^wc3ue)i6P3y_Y{)A#~4cyWV=Hvt0DlTY+y((Le2+|Mwpz^(=)L zwb1KAN7z`h&4qrs@Yy|K=`I<4`*hbHQX&`vz?k9O-8AM-kC;E4GG|p@FKX`a+ zIcQ((pgyZjK0|o*1Or{DK|j|x(e2BUGcV5$AaJ3N0rEAxgCkvb9_Q29cZ+!9VZWVY z9o2G^80+A2GH4y;;P98C1B@aJF5(I%fU_&<*pxP>BS>6UGo zZzOoFr2Qo2v%Vv$!B^sHjUh=Eo9645A7jz91tOKTbZqWCTb&rL8o3%`)$ z4T#hQHJ*Q`8YWlC`+>7NOd+7)S8gtjt-nh~y5UZh|CPfym+UaZ(!%#qpeSF4n}GAg z8j)2@>Ms*TIMt6nS0FOjSxqj0QM86!0U{PRUe$PG|AK#Z@J=~=wfOb|1wXaIxi0Dj zTg__^6Q=lB9uBe5>>rp2l3Ui9r1uME zg*+M$uP25Ga>R;hTF?x4R0XOn`c+%03k#N00!ytoHi?`lJJ zG%p$+=<-lQY|}z@&urr40RZ)wf5Kw`jO6}Y0;`ZP7g+6CU9Kgv4{oNS76BH#V99uf zkANtPr;E10Q#}b6t%6hbLQWL7Qw;S-AO}1bj(156k>()XTXYklc9r!ZLuwxd*@26R z?;s;VDKQ<diVnAqV(J4fC2@2;twvrd*R z?<2`QAn6MX3w?<#!LA!U-{a6cMXpjF)UMa@7C&OGNn_v4K!G%BZ@zmt2&Kiix`*3R$U48k*60)`k{(8-tcF0t*z0t8VnLEk@003A$)`(q~m5(5e56Fk*kiTFq7M&yxg zJ(lveOIAecvdl=+e}3IP7L*5eB8gz>^0ITcUr5+g#A^fe*QXDs zC)VMCdlTK9y+%yiQgB5~ygR!n%z(*M{LpY`Tp&&G!j!vLqsy(DPXtd$ylk|tK3M$Q z&7caM2Hi}iq+O^?IpQGS|CkipAA9Co>nb$K3LE5_`y{uzdd%Os-`q@M!$?uD&PL>$ zTqcsryKAB?kca%dc@ zhIdg*kU&^6Jzwe2T;rnq!7T8&%m9)0()-(n53>O_e3R{p8kHoD+a#^M7o4V15m}ql zn0!ss|2}BLyMcjqIGIgD%c|$fw`1WZ1E1bx?8NmS2)FT5 zTZ>{3Cyzv|QJ40w7JGO0{&VhrG}^tRWmp|pEuvVIL>JNud=5#zB?A6!WuBt?;I4L>gyOeJok5Ks>7tO*jb<_n@+F3nFkus zpzt@%dPkMxOxYQX>)WpH+O%->fdb8N5n!!)mVD3v#+xba#rJKD+j~nSTl$&mq3v%^?KiF zuEEnnu;g-Xq*H~cCm%MyZ?Yn)zR02KvN#6ey)C{iKLe48W+J^S%x2Tkk9soWZ9E#~ zoM%Ql>?y1g3yoc=WJ%xgAmomX`L+9J25a?xQ=QIF+pW|4kb%a3>`ZOb?@-aAPKTa1 zI_reYW`j`po?;EW5e{OXUsrz+$@5zZGb)CwA7NksL$+hIyF55GwC7qzkLD?+h==G0 zErwj-8*=5wf~T#o<52`i2*QZyZ4ggxomkh*Qa^LQ+WQX5K>Ci=01IzN{QdXtJe3wF z>3P=^Fc08WcMgTXH|A1GdYDhsGaLdplOCM}HEg~gfbcSDShs@_Qz1&`W% zqf8jf>iGgFG&|n~3WJSfE}JE!2AkORi0rujC+LFV`dQ}Q0G{BAbC%lS8Ft!pKYGI_ z`}rO^l2o53u-I2b=gVC`B9=nY({lu!U4g3`@S>u$Q7ZLuc6J0M7L}`#?6}b26Bx$G z(Iap1+lUMutmdUr_>lLKFv8Zo+Yji3&ghm6x>@s=UzydVpCG-GvuG{d!x+8NThB#v z{^*rL8N`26!%oV(1(V5T)r>M;_q4FgRiISzc-C1XAxWD4a(&j-1rGiaw=Ue$X5U+g zy2#NHH9|ic-$rhCA0t(TX}IR(@87k-QWl<(H$+xNYo#ndYe)R45q^I~+>2`dW z7P}^4%Xy2wG1+=N@cr4=2fSIN#OgMr>U`8x*Y%a7uOQk~weT~gr+5tt^5?tZv1k8K3U5XrbJk-WDSwSTJ5d;ywOrZ$a)kh+kM!Kq zM&E=4Je#YgCqI#Z+@I)nQ#nI#`}ti8!Xk?#>qW1|#^7Q+k3U1^1AxMO%4(Gjt0&#X zEb|PVGV)iL@Ug|n%-(n&Z+{g~uJ$ z&jxv_SEe<>?|u7xvkT7TRtls1%ye zuiRK{=ZHS%;t!eT=4<4H;Bqf}{EG+8c zg`Ig7LE}YuuKExu2#gVvLLa>+uz=xf_-GKdm*JC+SkZ!mUpauoflruLZNejIHqPF` z3e|>U+34VO$cvR*a`fxj=KB-^^?d|eLAE_=M{Q^NpieV60H@2oy72D~2u`;&Qv zWIPdVMa!Eq;VHgM&TQkzYP{_oZ#V6 z(9v2BG{897AIJskOtBRx@dNE8xz(do^?};MF8zQ6NU)d$%`3o>15ho}MkFLXF3I-{FwdaZnq78PRd<9C0 zL3tgQ@bc>KB~@HDAZgXu8LBZr`l>Pk>7GE{omMU2DFbtFt6Gb^^H;Dw z*BWcF)ZKwBnkg&WTbNK!u4T7tBS}s9MrkV!dw9*!TmB1dQn~ofh8yveS`!9H9?6hA zDX7@uM!mm?yI+>M9EspYhq6&ePeSsKV7O!}F}-u(dJWEZ2l?Ick{|)S*8J^C7|W0V zUq<3u)sHM6!y5{bs3!Jn;e{OlhfFJlGV_NVyl+63OxwX~_nIJL;-HVrJ1Cc(0JdKQ zg^?3^;0VwCZdAm%ZcRDIRQJEJ!cNn5-x9;O(JEcBDVn}}Ue<5C(+qkVC#4j$r4{=- z+Sypt^FkfU=uVIH=_L>D`z~RaGGNhYHFVf;w`iplg3(RhPNn`}N{O#~-7QlBAmN9X+b{nZ$^pvsoDwQ=Bl4Zu-&Q zvxhHOu6QAd}2J>9I)cW9IT z-s)9F?|2!izK#{MMD%OVb)y>sKfO|veil;L2z^B!en^GWTY?|P70%%PmnSQ8;+6_Z ztyRpT!jforE^DoX1EC~g0}a(NZLM(|vW!6=W6d4R!`$^dBsC7pj|F*=$3)W?vMNOo zp(n0(xkHL&zi~K>NZTQGh!KWkFv5cvJ$`Bx~~-TqhSG-%MBV2Ni=cr4Hzxg30s1?iKj)gK!r z1`orIuXT!Jc&QK{RXr3x#%0yF6CKC+1z~@X!j!#4qI2V9JJ|bVb5pyJyPsP!6nboe zx1~a`%1=-o({(5ypNZik3_4mOp@+?UIv*OmJCxxxC#T+LMji(Qc(t53h zVjUM_(W1YJ=ib5LPJ4_}vZI0-6e-h+`0X&6A{?q}HTjMQ+Co%*2JI&H9=)*_9Gx`H9tQoQz?(Mr{#fLxwDWR!pVKjU76^asZ}gf>rJoJIVYh_Z ze88Wlyb>!|vKo~Bu@tnwBTt5Wl5sy?o9=LBI(OS%~}1Li{+8|g35c0DC$~3 z+NLZ#jP>pDjrV}j9A7EWV8RkM%th@?LGb%s<@=*QkzTkc6urh%(o9Y-mpX8xUYnoQ z&3k3@4)eqdDU77qmX^St?!)tQZ_Fnx?Tu}*seiPzdT4n|6CM3NECIiYr>xKB@nh;G zF3?m8#j+Dkt(5VwwhgTDR;|z}Z9;AoAp}+;#wvNmZlfC)qsIM7TMy#s#zfC$aBU!( z6Y1uc?2%6wHLT~c0&U@-c>gWWcM66E97#Nrj9-}8x84RvN5P;NG-8hI8|I`McC5y1 zBg6CR<3KLWR)0;@cVZcBaava{iU6=`>Ylg2VKkym_$X)c*A}8^Y{Dzoa;d%k+s$Y+9lmAx}0ND|4*s`p;BI?=4W^P}3x`zu zcq@1%>?WY#?1k}3I{#k4lfNYYziM7C)pf@8@t+D209#uqsw$Dj{4M%bes5CHTU3Bp z*i*Xu*kSEAalG5`RoG`0OMfo;$V^g+luVZNGCY;>XY;+)a+}>kDJm8CB=iO#{AZo zR8+U5h*z3EN7fp$tNKdvL8}qA@_J#V2D}gF?!0mfjc)teM(0^Q*;T z^PN&r#y*p*cFX6NICNSwvofC?oA5sEs&3lKt3ne>ZSS+#OiYA z3Fd=8nmMMfmKOzR^50P~@wl}1ww}7wUP(Cms)iOA^RKTc6?oocHUbV}CevL`HI+(Z z{-ekJ_n0m)WwFijYdht2cVPohWrKZzxkN_an@?kQWeTG+T1edBZu`Er{|n~a7t`xn z`t!8@ik4xhhi-ES*zj94?){?I2o9i$Fh~E0QT~Ja1ml%6U{>%R<)Bb>e2skEiX558 z)GA)$?z971Cu){EBDKC35_&*;J4Y{wt4!o9H+5|=G1 z)369NvWnEaW>?!rOFHS1|IAM#%8+G3} zqtBu*%+c8Q&R5qp5c3@T^3fN;0k&f`M``IlVXus|zKamTCt z@+5f~9?@Um>c)hxD+%FrZf#z8x!rl1y-lpay}@(P3Yr|dtQ+y1wHg8)HsERx+hY#2 z%F$Ak&c56xR&BNJxxH!CtC=1p!SfIr<=c+`(k#-9;@@sa6Qj@uAB-IW6inaTsJTgpxB3uF^xxTG61kDh6tzQu zaQheTg|pnh$>K{GM2>7Gb44Olhpc(1YCrxY^sy7FP|YdPy8N2*NA_iWb(fqM*&6RJ z$Tp^RhKAH`BV4vZptE;P+3oJZ4RC>2@D)2o9Vb1SXn5qG;J(OSN3=iye?{-s)sykq_cwkbtj zrWG|?uwQm^5p8^Ad!UA&Vmu_BXv44$wQ(uhzW5Ltroms>YhJueV+mhl|BR(esM8Gp zU6+BmR*7u=YM*a52s{LxR9;r)F!#<9N3RiwfwpUB3yHfT?#@Cr;t_PYP+3=`FSeWw znLxweyWLHHYsF7a0~}s`StQIzV`zXih&^;s=Tu;50Z-8Rhi-Xsooz7&8t(^KHXQ8^ z0>|8*fW7PNgKr&kT+yfY@rHMz86yy-$v1It*9cjj++EZ4tKdXb?%Cd@d{i!G#ojx{ z#w&}CxOcBfmi|iBNqhx^p{I)3+yp_zU;dtWkarbDESp#q^+pO5^-2j!S_tb2Q*IZw z&$TeAHF@%xWv^nMna_fUncBw}_UK+=l~u}H716%o(28(Qkq9mNhL@b#CqZ#OZ=s)~ z1aoifTrMXJnIBtqXT3;vNe8Fc_2p-8|8DBvXk-@U+OZfsD69KA-=l24w-j%zKe1o& z4r7zqaKS?n!)1o^=lTJed3ikAFG6Z@!+j2J*05z7(d7%MLoZ}5yrqfNI>&^@YUDX- zl@;q&_cri1!UIRS)44`7>fXp{CY42YgFx%gcdtQi#NePw;)TYAFHaJat;^Sxu6$Ly zD9#_>`GZ~FIcd;Jndg))Q@=xEk$@Pq>_wO3O1+1@^83sB(D45Z(bF5;k=Lu1OB++7 z+_sjZe~7S@M8_OcP24{YP2mb%uO{6u!91U3qM_AtFMD^^fC_D?2RRHqZ#N$Q58u_W zn#ecLY_?g?5=yXIo_(KTy89oo3{toVfEli?ZfJZzj+eT)c6*}V3NXlyL@P7+STAzi z;Ouz7SaJ{;{*B|Sc59Vw9B>Ypz9%YM-dXErI^`f9W(Ubq6SLJBrV4EBIHo3b_ojx^0!{Ztjmi>Ei<;%9bJ*x|#2SJqs5q-@56~uO(5W z;~e_Zj&uST(q3c;9gKL{ZfT~SuOAYaudFLnWPFHydDJ*Im4f@<3Ez*RaeYAp-52J5 zET~3}u-^+5yh?Oz*!ootIW7Fb(Wd7SraBLv4%X7#aalS+VXD{4l8P31`40Af&%OP7 zRK{@q=AniIcP31Z9$lX(v`zG|>C#2>#WWaUYaGr=W?~0hcEI57#FbAN0gH%EFaK~{ zqs^Z0$EFAeVCz2nmGwQsOL#;>dmbhfHhKjwD8WXLsuRri(D+vaC~z(sdW>u#LNOkF z{@*qUp08v>EzAEZQHMrY)Da?6|KaA;H z%Tn2!xZy4yHs zo}fJolVkH3>u&V#eAR6-5>evfqhoJZa*oRxyQoW?16*S)Dk9So{7McyKR!OlppoV$ zM%nJO`EsE;t06tDmLUE-K}Fk^R*=oo*aRh2KTEVb-=n?J2frtjuK>=;mR0pfgCB&A zulhkTJya%9bkVSt)s4(+B@%}vi%uY7>5_^|0~&HuY0sdkFSlJz^E>G0E@Um;rqt%~oH+$nM!HOAyC$X$vP?Ca0WtyrxrQm}-)m|b zvl(unfE7+$927Dp=@gV8Huit8HZ?NwuW)yE(3Wv=@1P%O2Dvp;@|DEJ%_nm@G6AeC za9`sk3tGu15iARCTV809IOd8UHI;6-V9v=EbS-w>z=oOend!5iW~PT{?C9pTqge37 ziHu=2szgnCAp>WDCu8p5fNbf9Rq|E+UG&DV#Qoq*8KqJV6~nUrk=l`8{@bu8w0ehs z^UEYClev@Km?n)|0yNfPcr$zFTIJgxzc0Kz=?ssXCd?MDMOcEQV@}4h%MspzPmH&^ zIcn{656uwNFRLa9I>btzlkjFq!7Lc13-p-MJsMK^a7>Eky@xWIOs22e&Ho zIJI8gvF*XJ@7K_vSxFW({G7FRL2^89Sc{w7WIX}nbvc9e z+V8e`lzep8HF9_seT%_*Tm4-C=hU$=!WlPOMm?lP?crHW*{|UT`;RA1Pv2&jvC*}= z#EhQ(4y93YOT&?htYFOjoQIo3F`#F_$-`H8;t-bS7aw_EM5>-)apdH&p3 zwIsT2bX4GOf-&IZ+#`Cr@Txh{vJuEXrXPdolY(J}`t zrxx8%={#X;w5F-{pXsikuS3TxtjX#%d z)|tA`H#WsLGk;Hh&hO9@^}|ECdPwJD9A8U(xV_U6r0ecymIk_d#|)H1;Z;eWNB zQKmY+Q5k?VVtzdInw@SELw4e=`Np|G^bclI$X{V4+N*qzf#@gjoY%PYyZ;_;(N8vI zTdtHVMyF?)5d+#y@YB2U|p2e@+yQSq*B=5rS5jTIt@{El}_`xWa_f%2Su z59|4b59<9to1DWR^%}AjKOJmUz17%w?4n&RBWuBB76W-|7Co0&y`pOuZc4?m7tNwE z>G8|0&eO#?p@UqH&BzAh`OxnZ6DEoC81Zy>U;GPs;S;9 zE`l`=(DXZzV zY!P!N55~;u?f@)Qw~FYbTraq5yY zY~y%XOq}3A2WR0vkJUBFM?$RE=4zLS%PyFbVL>Kuflw!Nlg9yK8=1m3=530YQXmn! z2!=0&UIXAdr^SQrl^MriUI(GCUBt9DjLPpVn~0qSp#K$x8>?+tEs9sZa*NadDhJC+ zIq?7X+h!8xymHt?B*IssF2P}1{qV%dd9os#4VQ(3=_O}XeP0+gT|zoCRHDk$>o84a;{z%BdArxhTUN#6vWOL~g1bzj&RJ|Ho@x zo2jF+;&k)oW9MKkU;L~a#=cSz2c-cMkYHpcdJ4GT-@6%@<{WWZt3}?v;*vFvM;9O4 zr=2ZZN};K4$nwY=_5>5fRkq)QcN3`h92UMfTGr8SqXrA0mjA2zMf+q8Aps;9i}(69 z$IkU0o&L6%INAFc%&R$&4Ffk~TcU$w&q|GdXGmkix8cmxHEVeBZ}}ow4h!UMm=tvM z_)X`5kTjv?>W(&><4m?S1MKR@lZw9GXk5Ee(d1%~T$y~P#CkUAzS^cC0_r{~;gA&3 zP#*}(0)A(R$)a^mx2o1d-uY$nO= z1A{k&*jP)PsN61xuOUj)lhve#wro$Jy))~=k{ zsljkrnfwek#{Sep&M^T8)XVXcapD4~`;l$BA<19uWJTXBoAiv3qb%sp=l$KotivxMJ!h@tMR#U#*!%ulQ&y!c;;%}8c2lR7ua@(DL~$Vv zFTA;Roy>*DCHO9EocswI@l(8DyOCeYlHr7fAvqWIkFkIM7i;#JX0UT zXum%y&1?Sj-383p)NdjkZSdXuGTO0iQAZ)4%;t|`bh~I6Wf+j;ta4a7uD-J_;VO5V z9i($PbqRN<&21{!D)I(>q5a;053n0w1PiYNZNniOSae2x$?hKNtXhf|%yJ+@!f2O7 zXgigx#z~itMIrZ{kJ`61{2P8!7@Il!H&Sy*YIe;y-nu%Hf>l58Prid1?0aL=!H&Ige0+5$gnMa;%%+6KMO&`5{S1u%#$(V${00t2 zxMwKov?Qn;i|KT58J6(a6@99@*y%n+eiPILJ!PU(u1z@QkI!gV@KL5*od@=HESIw@ zE3O1dExb)}8+=N{?VluHphpBlD3fRFK?FAEO?4xY>ugh2o8a)D^Dw@_<*VQ8l#Y?!H zM2gbB7-LGWu~>fFI#5<&@u7s$Y;K^{ws`0u+TJZJa#Vhah}t>M3Z)Nx#{;DrT|VU| z#FeJ^-yJGQ-i>()==Jglu$Dt9h@Y zm3zV~I1H5$m5n*-)0%^WOQ2~pcUv8Bl{MVwLp&@zN2~s;5dS}8QEEaMGk4^s4Miift;m>B+{q8Wrh_) zNikQ<6tdtPgr*!CU{U@Z@T_gfrA}+XH#LhCy-Xp?GNErbD<+<|l@kUVKIeyZGd~mf z1Ri)CZ==V&Jm#;GaA&zPnmb6;!^}PB_s7VFqFiw5yFpUU;h%?BMow3xXmN!Q)vRkI zQuP^D|2IFa5I&Sh71Iv1B1~`+Ig6o;%}t0~bbyjLy~r~~x$1i|k(?YJ-ng2-=)E28 z&V~K>qW<=Fp)tQ}&rvi5TeAvv?EQm}F`XBU(EZl;{9Egig0V8)ssjTS+u?m{-rvRe zAu-Y!H2fHPkq<ExmGG7dIBz3fs$l@(Hv5tIA5aq=lStM7P!58xPgNDnf9a zjYKsp^(7a(&&2u|EuwoQ%#93+K#s`sq3>rKO$)Cp_=H8WN$UY9W z)m)2;liT|m&niQ?k^~h~q~gu@sO&P>j4bFVy|5SWj0hA0Lo=pw9j{CqAtY0pomlG6Jfp=)sygpG=XL5Xth5M zpnw-Ijg`Meo4S4lI;K@5R(%sl327^PV2CIUKG7btno&bq49evex$a;+UEA!ac63an zX%fN*d%$x1qG9!X{O%|736no9E%?alh@(QRU4+`j;4Gd#Ye`Nml*TrLuH!`aU=1v^0B>c6~Y!yJokups+{>I znDUOwt8R#fA_~wx-#n7aIg}Qfiq@H`U-SO(_-U8AGS;~Q=EFPJXo#|1-}~7mo5?~> zYSDi90qlbFMg5xV(j3AxCf#97r@LWJL)4MdMk`;$nfw)eyfQxFznt~|GvI#)6ycl* zBPS~J$%U-yF-xrq&UrF^_ph5#ae3q)7kbnK+!bPrCGXHvd_$Xqw8LuYPFWZAIlA1LtwPjjstUyBkAYik@6L-O{SmaArN&4 z{e}<_rLzNopIvk&6BDzfNB0sIV#osKx_p_Agab>@3lV-45HyP{+EV+GhXzQ4D6=GqgqVan!KVhvTrucZO-XpaQ@ZEts@wK?DAEz%!^64 z#~j)E=h3`Gj%Lg0gv0Mhdj;2nr|{o!_HrHhOuXN5T%c9{LCN0Nz_5xug`;Y!nJ2;J z0FuYNahLT${5IEjMU#tn@J(dY127q(s-i4h83yC{%GFYXTY|UlUSJDgwa~y z#UyScmy-}AlMw~uQgTRrvCl;u=cjld^1!dK=1wVLjb@^h(Vx5}Mum_s7~Y__8%i;rGxgBrpN2h+W78R=uenC~`?GI{|1z$jE%cXoEGAkTe|l}pQ@?Cie!Ubz z6o~A^hDV=?(Lg-<3I*s_ncS1+idwG#>mmD7{wwSt)*NX}x=RNKjN}1H@3}s5Yk8># zb>5=YR(R?1ntAG*T0RW`A~A%-F>U>BtU#-7l?3&IeUau$PNUz>xjo}4)evJ@DU6_p z;=KEEwj(i|dV|oAnz+YcuW493a%Yo`=l$o~YDP10Tzj0Ul3U%n4EdPM@n5~vH8M7z zUcL2}*L%-$RRf+!HKRFz-e%aI?Twcj`Pd{yZr@#4UVbH+sKCz`-QMWMiD~TG2c%tD zN>+kd9OPcR`UHP_RnTpcjiK3z*YWYND=`+xreU0Rjj3)QX3}fv0{Bk+N;Hp7SGu`f zSTC^pVl+Hl)&7S8gp#;a$x@DA8P&i;^I(e;*65HoxNPfXfu=+q8@#o9#Ma^Q{%Z@I z7$S>{N9$y9B!vae9=5cWc7(S7Rhwu3Dz+KuAiI}mh%pY|sqb)E8A+HNRm5I29pMX? zT0#vk?YRj*FpIQ1yh;|!8kW%EjwM}J9`Nk~pCV(Wa`F>wxbnfwdUCpW=e;9Ir3c<# z8$(J1U$7^Ns0EfG-Q$6@x(FT>(65NI#m{%|Jr{w*qX@SU3s1V=iPNK#W=!4dqh2uB zP`NE<*d6D?zhzeETEW-GzxEI$8N9iyJCk)jl24bd`Hw!GDBz<(nB0#r8BE+3Z5AU( z63X7+Uirt)*u$L3r@ujwm{Fn7?~q#&>C6_2V)+OT76lYda6gmLG-Rn<`BG298Tj&% zKB@z+04?|H=bgH5GKDqeQ)seTx*wSSkYEb+ z1}K#W`jU~3*V#u4F9~umZtKA~$;#H{mv!~c2VjR21D4U#1fBZJQ0V{ME^^V`49y}= zEye{opB^#eR{?spfP$4_epdMUgssNdL+!@lBS8QJBV?g5@mhm*lLsE^3f%QX36%g}YX0Vv&BKCvb!`0wXiW|Acz+FfJ>&)^ zwRK>O7{OimQrg2N68jTNJ`!CXS}iopE5sKyKNQVnLCY&ru*vWRw5Via-ov{~99QH0 zjFp0>_-}t)N4GmJ!um@w0&qA+9Ig0{h!^C`^WFZv!@X)Rd=$*%x1c$?H5TTg&&;a< zQaAB?EqEW)%nLt;x!)#8h1M^=V>|Xul?ge~&B8W`efkGDW%b@{%YaSL{ zmyhCg#%Jy4-u%|B|J{i-e!-D7nj@gngr&aa;FpQ5;NOuLvVeuY;r?(7b{vlhgBk6M zgKbF+rPd6GtS9K-Hzv7B{;%Yj>gKgmpI2@#qn`(;s1?#V;|CFb3}1!V+F%>pY2SxA zIM)(ap*$QuqW{^ke0Agp<=GYuq6=1*^}oU;PsoOX_GpYCl3ggO7SKI3vR&a2W!9L| zwHhN{lTd2@ig)R$k88fXbt&0)=VKB(GJZRVy-Wfr6$FcQ9?xHXMEQUEIv7HlU0LcV z$Wdp)bT$F!NvJF*4w^^+8>3}wN?17}h>cEt4G4>W7einxE+xu*{10+E4zhd{Z)J5p zhYt0%o=ao(3i3KW`N!54buB3l__l}W5{MB_ z{-=3+m-(F(?Os$yZ!Orep0O+q48e+sp)!pbNZo7t&B-=;Qsd}?GQxRYuD|+~p_%qJ zh+2qQ1u-|-8SCM-g@stP%+mLY9sx<)kh{yqT863rJ#2jn8(+hU*a%nnRWT(OsZcpI zOB>EdeS`0>x1{r&*=8x!hBWcBCJ*cIyFT`1tNut_4Fz_pYrEw0^%6BGnvKf80e^aB z!@l?`EhgwQgwx9a;O zBB))E*IZ|XAzM?~$FICtnYpxpro6_Q}D^L#w@>KP!4x(O>t?)ujD@ z-qYmwj2R9hyYaz7epC9glS@w$Z%XiTq*1SYcLz_;+eex!NSM$l23|3pf^CN(7MLH< zdnL36glR4u2Gf7;BPh3)0A#7D{C}jqc{tT=+cu0SQ!+(TT83q&3<;UZutW%DY_Jp! ziUw23JVY5nC6TcV6_S!6NybWsic%3$QiMvHzWsDP@B7}@_C4G7y`FE|?mxP(>#D5v z`<>^pAN#TI`=NS$sW}tr%`wjA_}rE(!`F5r;@vbbg&77b?f`jZkmZ3e3iJq#&bgus zuLkPc)na%-2u8`VBa7NQv9E?8ctlev8XtP4IfFA7nrTSv=7>J7T>CHqTcJO6*&r=Q z2(xzNXReXhxhvt1_!{5O&LsJ*9LqS!P9HOfTK-x-R!P)LVExtp_gDPv-!pK|GJiPv zPLV)>^H_&I`&a6a3X|?AVJHYz`Tcia|Mgve*io-i0D{dh41T!jt?55+CH8bZzx#&@ zDmoR{^rGJ{swr%@WAwDxJ-uF7HvU^ET`Hv~s_>2Tl}{vE5_8;~c_4LC4LcuP11GO; z=~HZ#6-u1=lbC2YozBF%c|;DdjK*HZpH71$BrMQd&~-nu(Gje)hH*=)#l7BsaNEuR zgW>=Z$v^;&@3V1jCBq`tikiZ_jq}Fuvkc5`&C(b^|2iPGO5@}lqQmnfdE6f`j>viT z_(7urV{{z$)LQe-xl<4z=3PZ`y~w;%KiDA6-;clZ;f??Lyo}R9@BGVymhS63>reu8s1NoKPo4qZG6G+(H4f5~r1)7>$hB?7dGMJpyacQ#{` zM@I}4*H(qI(Z!t2qeS{`)A(huZ3hIWqpL&lnkXQJabobizw9=q?Z3uP{B>&a!0kM( zz2d_meqFt9o9Hazapwu5Z;BjcoG?4LCJWi0QduYKI=prLCiI|tx*A@OeqTdVKvBn! zd7^3z-3)16h#-*!mUoZnP1x7TB?kXxvocj_PsT^KUon?cC$U{ZPxMi9xVFUh2!;q% zxo-7;<67s9_-F zYzX`6T0x!@CM16(va=3vqZtOYgon=JuaMgraWH1%RYGkb1<&|xQ~dbJ+sll$v-N*} zj>d-!znH1-!B`3Ra7>O#aAQeX=fkl4gk2d+$tE;NoR*Ofue@Uk+g4G0X7;s@|E;qX zjVmfwfUve)l>Ixip9b+MxFG8=dQ7DCn zdsq{%@xHtL`^v;jEx@Xu0opMG?Y_TER`EV($P%3yJ>o(KW*QzjEwo)!=N&}cWXVDc zEVxgPV|p!Z9W}GJe*eH`Q~E-+itf9+ zK=gLND-slf`o*D~vsBT!=V|E+(c3Uq6v=PKdz%8nj4Z|;E0J%y#+YP_iL>2#hw4bT z`a|gA2>V5K%jRF{G|f!*7C{2N`C;~|M?6O?xQiQO^b@5~l&82slTTJu~=5LmiWM4WL72lV{z2Z{eW zpxnIprx6WmCPEUlx&d=7`Wu+@-ILvNGI z7a`k3P9_bd^V3ar!RrfomnsKXoLAm}(pgw`s8YQzIO5yP7dNV9{|(|RC45TPbJCo4 zi;!)Td%Cae2ynf!#2JiC+%hEt%GHwI%sMC*^5E(uR80%^oBbAixU^AdF2)cqwVkB) zF`ZhZLU~sRxSnHXvLIJc{rn%Kq@kg`3ab?EM^%mc>SJgbWM8%eZAf66)5ys6A>TqymrChSzgQRmhgsY{kxyuZi>kWvwj*OltdBg>P zNrA{w`NBnjR<@yB%H2rH&?`d-*wcd|Q=-9~Clap0w%@qVNoU{KH-2S5T>9>Koyj(Z zDuwuurEHA9PDk#mmj3tx;vEuBookv{FIhCGY)V-}p5F*f^pTd_>A4MqylZ$bCG4Wt zi}02h;LBLLC;i`2UqwkA+y@u-Dy!1Z>v_s27nQ#tX9RxK46us#M`iY@EYZpcn)M{< zUi+W%w{rBN8?XNMVs9Ceu?t|nmd=Tu>iM!^)wj2V$ism0Wr;{L6Dp6&bd*mM`m|hR z>l8MOp?{_Bs1MIS_zN(e$im1RzQ64~D5G;}P5J|Dl)X}}H@F>p$ISY19!Xig_cI56 zmv7DzTb7P6le{N=q1QMh1<%=4@*01n9%R%P!%wf}!S4Ca!5iV^L@k?$J6D|V8-kt ze5z{ZcId?wLHwS|f#3E~--Vm@RB%m!M6e0912CsUr@tc)gBB) zY#iEgnXXdY$I7430rYrTc{Y6gvKBtm<9KsZKuNICI$*k&NJ<=2Gu#e|K&bNFH$gwI zo*!7jM`wa0!A{u`(n344my~T8XAd!u%*vuS3SV6RfGj6H`rDrlAA{H2HsUQI#l-*c z|KJTbSPvs@vb=-M<4oOEMXP6Iw_KCQC_5E5bZ>**CvBtEFDt=@$=F^=s1f}5_G#9} z9cU_&r?Cq|T+n2+`Uz#b=paAMIy-qcAox?){SddfTavhosnC-TPJTo@81Awyyyt_` zfJ9_@_M>9UcAbA6ADFCe2|bGM*??mRs9sCV?Z}!~(E^j(4$k#EjTwYS$;yQ7!aP&w zE}qKyZN@;gLl;n>yv?AFF3z}(2}R9bck@J59n^qS@L;uuNXv8HgfHTU!u*TVTAt;~ zImGvi4Bx#w4>uU%YL+6|FlfK60oVn;P@=wmLmpvDv!NPSML%CKC5G3FY_dj}gW3#7 z|I!?4a9p%srd}UH*Gh`92`8aN5<(JkppoCTt$gI*{a|#tavDp70|1Qz}MbQqJwxWKR{XV`b)nBoXqEl*g35*v_AiTSN7qtDq z{6Oj@v&O&C-8%YQU4+%2vm-1wv7Afq=qD?b+FI-D}p$e=hIhyt&{hvc+0ZaLVx6LJXI@8^Ar1M z4K|~?%H`{_yyJ-vmTU{kW|mqGO)osF?iZ(1_67a@?Mofa>XXT>A(^WnMRLLAGAa21 zc3x{)<9X{;3LYx&W{$C@X7E;biVVV$u0-T^Kb1?Eh6syAD;?gx)kn0&#| zkS)gDutXLHoZM0|rygM0IThY%?@7jE`dTo#g=~NK3jbCV3LCEP{?WYU*lC5LdX3d} z#ADgnbq8Fj? zL|rMGOb1!Sm-_6;-wc)dbHFvbG6er8AAIo&b*q%qKgVvgXA22^-C+u0ad84p;Rfv| zJ5YkO3uz{Ve{xs#>6u)4tB*uilVk@#zg=wW7LAF#p5k^y+`9zXc!GIJxYOG3BH!2k zCUA2P9{la)7h0SIqCF9sL8Il5(e|VqJoNM1ei@fL<^5Ae?Ya4zLM4tM4lQnvbbJH@V{`S)??YgoNc6$iDG5|sQEm-G ziID#v-+}&>y0a^!*YCdh3aOSb--{s)`H;JD5y-;=n*iuOOHM{lZR9=&!iGeSf#GQ6 z^^)}K^<*u3NfGZMJL%3vwliyUY{iUZ7~S_|-=X$i&z4e0j)p3Dwg1nVv8EUPp%5%JOHBp64()%_2Cbm;Q3vrd*zs@Xx=w2}1y!7`wIdmASw~>;C zNx!xG`LMf8t{sZZ6H^0lhw_-dCn*LfvkwaQRlB@>t7%HHBDhG(eBQW7c!Njt9$Tz$ zAc-Kn(%H+F4~x>v4GO4zRi&qJ{t}+LqmlOFY!^@>k>mLO#Ss{uh!rcnJ1v}z9hQf0dK3HHu7tDv&A7OGN{}%*tr|%Z zdTV0GM9$x*Bu7G1tEM}DTbuY z$OHLfQ@mA)W;5`f<((Pa$+pItW5P}cS^HHM2pMA!dtuqBg(HR4Cto4IouV_-zkn)r z0t^djx3}zidQ;fdt-W%jAMZ4Vo5dSrBTt~~;UM$+;b@rL-%q%>zNYx%_kUn76 z`cuh##Yw%;Sko)|x~;wjqg@;Bf=37I=b0QVm@*dS#+^&y8f6lF98qI_LG7w$)c51` zc<-wqTQuJa@&w*z?T_7)9M=bF`PNmdm{04GaR!=E+0A0DU1bphA-JTkC|{M{%_*vY z(M=Xha7R*bCM%%XlB9Vi&YRB-!b-XrI4_mfypxMdzD#aCB|$*YgOxx3A*_u1omhh1}m zMXaVPqy-F4MJpU;)thM;KSy%(>ov@WA|Jn2>8#@>RakERRahb`>!Bp=F%n0llX%`$ ziE3lFfgVNucBN<+hcfqK5v`s_I~GzafF-Z+Ugz$lI8+wstF6bvtvkqo-WDpH5%`AW zF{gM>FO3unIPDV;ZM+YkSR*fmsku1c{B#Ffyz~IOk{r4VTE*9zsNh)nH0jHu6_LD2 zAQI0&hIvOp^<~2iG`b&NRo$9Pru*uCA;MdfkxG{9%t;0TTSk4U$FfEm+Y^EfhFZ)h zOn_Tr!MtXI5#^?JB^Ty~+I9TES@~0_$;UJJf%qrd5SE(cCz6QJDhb5~~$fed) z{4y|0I?5kQ*~s2>B6GuZkoV{bEJ$xbnqF@9l7>~$yS+}_^_zO@_LE0Xpn_xt@llUI zFiYln1O=w-4S=uLB|m|6TA3kZ(H zLggy27oosTVk3+>LJs-_ow>zA`w8z4j2^9uT{Ns);$BfHB-zOnbChMDMS3q=-LX4+ z7%)T}WyQXpOWE9dYurlT#}$hh=|Au9UY~3JMp(HN^BQx)N)j`~ou)xtB{>(LWS>c;SyHc=rhzj zkUV_oqD23)IrzPF{_j6?*72`Tw@kh~aF?yDp`qe882(N;X7xWju=2q7lZwH0Gl1tR z_JP^8#>c!}kg6kt_&kUgJFkzN{?tNweQ9hA!6J09h&#Sx6l@!MO7X?}@5zsMnx{`) zv}EX25-s=*j6r+WJuWJd#d!c!ot>oRZ;|@^i$)f7eNtNYWsqn9v-h zkD=)i$`&ZdCwq;eP9sx2zx7W@oP%^#^RA3K5@-lv$Ruh5yV3RAdk|7*RWC%R{f_L6 zNO)w`DsT%3v*;&)$AhQJ{w}-+#`{N@B%rlK4rChmw1V{q*F*vJzE=5?PI!7U!@x)k4ZryhSkmZ^oA0nPdKLV zEs`yv#3(Qg2?^y0g4@)m_15gcE*-xT@&(T zu9YdXXdcbTWKK6?$n*K~pj0td?1Cd0>Y^)# zD)!3}Qyq2vaW02|ldGjgcb!6zZ|AYgmZ7R&KxEMHkuNScuzCh+Z@3(ergSg>LMGEQGv{^vN()G_nD*o zX22WQR2~Kl`f}qQ0?lZi?HU!5vpDVdBG;B=zQ<%jW5fE)J-sM&UUBuOg z`m}JnkulfVkKd7j8RJE0?ro0+_ehZuZtyE~u-)SVSps*R1|RH}Z!JB6eH2NcB7}5~ z-Nq4ZxH_P$$a|2PvFguX0UhCq8<+G#m?{QLMIWg--HVuGpT)tr9U7|e?ocB`z{m^r zRI-iWfB#R<8Em}3+37If{iY(#wqM~|p81pw@vN0{1GZcLK58kI{vI=LP#s*<@1nwj z7ZU4;P7$|6;R+Hqermzajxgmwd@Or+J>pzSIc{`w0&2^o%1&rkyf%-e78>v0;R zwyML`;Yz$}&12C)$v#GvPjMFzMpKgLLQ&hAhJEh4RBebA2yJ&rj#+HK9vfm2+o4Z3 zHErQ2<1TcDdYwo(ubvOH`)!$^X3uab8N;!um0 zB285C6K0_-&=~sFWnXNXb!NzRc>seUC6<)w81IRb-tVYO zR%%L+983H)t$6HX4=J}t4>C_gu{W2no)@5MZo_s<>fcD=1}V(myp2f>ot}RUbWIkKv5PgL0u7_o5nkC8lEdVoh%*6A5kV!9{87JQvA=rf+V^GC z;%9{4ZYZ#B-V8F&W}Jgn3w;E;ujLpUZL`7caMsYI*6q~?-soVFcBSmLLPg$|6Ng0? zi;;8 z{*g^AQ0%|_cl)De&Zx}2+}*|O?w}}=fZj|o1N>dC?3?)x&6`b@0m~1>c%*QTefD^@ zYGwFq#C({x49>VkVC}=!pw*R`0^$-Ox5deTEbzarT2!VNy2hpdx}R`S=`CaYWF8nV zX&bKX`!Wm%BCx#E(2GOP_=|`8D=kOKbITqnsce)HK*i8S!}yGjmZJl0OXDu8 zw8fn-9?GdEe2v8$;}4%sz1Nn*<|?9KZlCM+b~IR0(qC1nHOD=C^L3W1`*KWvHZ6~r z^ev!zG9_Gw(n7?-Xv$;TuRzs%O@!oX$6KNeOgGU#WhSTlp@VtJT35cyS|A-KJVGtD zn$G;{EDQHn{n1E5Z{t%}ZoGH^b2JePgDH=sl*<@PW?ZkGZOv)18l44mJJJ6ljWz$B zM{jPol0s2ti1;&5nd^_#ynig{Ab+kJCYyLklY)pq-p12H9>$uh-QdI?68j zmnWs~QAk^n_v~7R(L^S?r~uWh=0mg7o?kVXKl^21n7awuyKYTHl7G@4Q;&SU3*?S= znnzxS8|SmQ$Rm5o&Y845c}I|~6i5dV3ohHHI-4`BPt$P)`NMH~NoP~3y+T{+jyTEG zf?6m${BhDo$VMTPGatJ(ZgQR&J-1HIB689rDP0NkH!E8#t`k4~f zv8>eNPjX^BM!zoaJu-M_Rp}8(xW=G&)83xtK3lH5cIaK-og-~IEomYO;(MAOe69%o za=zer@4Jq0+xTx$EZ6>=V7T>Zx#er7}aY#?xMxp%UXTa7wC*oJ&cHP#q@+o9aEEpGZfxS zo(_++h%K~UNJ6D~zemDhO0#Egix!WIaOctnYIB%JLZZ^Pw(R^2!|kyxKaRPPyzG-( z+TLY7{!U!7*mrYaj{>+uZy@6 zPEnloS9B?#inz$QH|&xcQbJ2~Op_gt-Ypq%{AL($|4x0ZQsnF(cd>6=^{L-$N8NC< zbe_Fc65GDxYH|KRI`^|DYWsRFJi6SyH{NH(N5e zor5(UGU~VhO8kp71|9KopXW5I2+CECn-#9Af-uzdXC>_Vvw>VL^Aj5U{F^1(Wl70p zY8C<|bwsz$R4jZtwAjuurpnYf+;ZKJ7JalcZ`ldsYbiUXv0Ujv=H=;^l?hMH%P;3Ww*I~Hu^pMI(tgL`bYiR$_tHWH@S6O^6+~Q8b7C)+ue`eE9 zZ#+~jN4CvR^Ef;mduijMBJ_2J)!VPFyBe22IwjCaBD6YaP601&9T+DoQCrLMQ`SAZ z>^FToLErKK{>c|Tde;RVW5G`3jpZ9D(c8l)(b`|UX8n$@PGIBSyAlg^d)Cn9x>~~{ zwd3D2hL`hFY2hmkQnk}f+9x6x_a$})Enti}iyDv)1cn=~~ z1sLqyyfN4oj>STu37*p2+a#jyBt&lEG7?O-;v9}FcELBqe(qeEYhZ&@Rg5X7OM1ZLy3CIZTF#TAX{i(-YP%7TaR9 zcv47tw`i9jU1MBWnVxmiv&)!mtKW)OKOQz@o7>lBuIsqU(pyb}_S=Evqw=mSWL&sW zG|0F+L7P+P%@Z65oAbU4+)BPFem^;O<3nYm-H83aiF3CG6`ld`H zmf;&`nPh`Y^6*oYeVTIY*T~usP+`w8R{g)9!Rle;rWGKxdR=5MmUi2XHk>LwAM*j& z(bnO_!?;r)ma%(^e5GoK-^Bp<0e_}kqoG7-Pw474rl$!La0Y)ZI8sq9mmv? zv+5hLcl~L%Q$(F2`!uH5N?NYq`qHq6>8lI39;3?ruGfreepZGooJ~NLS^(!yE=%uN zvhyi$)&1G&MF9e9YWm#i25E}B{dX&e9gdh9HCX=nOJCJ5Ng7|Hy{TcOQjMri$+uMY z;|?s2rc;kgqG~o_o97~`WyfLBN9*sWD_XwY9ql6gjnn&s(4XRBzTUfy*kRya_;IBF z24m)?k@igAfda=hN!l{`Ie}md&{zK1ZjJ7szV~-(|J=pgf z2B!}FOUGRIfEkByXw=6J7sPjv0IwgcUv|U;liz8--8C@*haaA{G5x9Q+N?LM!2cjF z`-X|3YABu0K|t=rhN#Y1?&}FPt(J>BEkU@}>li{+Sv(}E{j(PkD#bZ+jGho|wH$V( zPFi+H8?%_X5KYlwR__@1*@tw~1&de@HYb6JwTxgH(d)Hv-f~xswtQ5m&8lLtJEg;_ zQ84o_0L$j~FRSLRt!*tdUGKwtNg9hR+m-m|;~$?EjkF*#;M{anQ1Weg(3h7%$jz3R zs^sdQdkEqDqTzLkOSy!?5;~qZnXV7|b-PvKJNVP0sU4g~r+e5vxyP#WRErsVtEb5U74_j*|WsvwPMCht_!0KCF6MD6QvQRY43X)4LbT!jMh{AK1m=>6} zic|&_2BXcSUq-;F3^iBZx$7myvMIm9+jmA=p?2AoS%HtxMw2{&tX;d5-$rWY)B4Lg zgB>2z`h0QqB>d3 z`584Ebx+XuG8RD$Bi!gFqEnUdijz8062xlicOC0G^sX*-qihC~WT9l(yD53mSFaf# z-aHwIUW<`v_U!#dA+Ao5cRT-S6xqIkd)We_nGG|F$)Lr5I~# z%+B_b6M&*$Y_BRRJiBT&k<=Kfxe#SRUJE0F3-Bx zQh#P1MqIgaR`I6YCGXqIs)Iyx^taP*=rSI&d^;tOImK=75c=#-VB^vxy^Uljwkh_% zFH(A18$16D#GLw7MdzR;&9_Yb5&b#K4Aly?*Wp(9A7TGZiC!qje zUnW{Q+T_1B(V#qTMX6@Iu;gC%(p=EPotWFL3+LO<>1Z$3!7SaO93GSUMefCyKg%z* zm}i@5koaQ%fe1mPGlfQN>F=(0IqAfwp5ItrmYB_E!K)i|?7n}Amjd5ekKQ&Tz6j2y zj*vmeikqw>ChGT!Hp_KLrd^Rtqe!Qj4j(Zxx~q0A_Txv3GlE8ZrABR*`MwdaE@*7C zEe*feJfd&3x1+2o#$MB=ZjG{<`YFkvxAF2D_!^HrUjDTUx{{NUTOoMeZFB~|(?ALe z2SEkHbdQ~zd*}+W>11(K-G(+R!Dp*3EJ|CGcP)0U+u}bSe&ah%DS0{`RU;ZJlAL!k z$Nt)8)eyxo{xpgV8vZRC%Zt;p&CoUEnjPEW_I8r-n@iiY40;TnVzahgQfaF1Z&5v! zFL|6F?*7?+K=Y z+P8|I zt$IN8kyB^v!GqlE(cwxvO0MrHQAv{rnMV4Gpbb=vyRe507tN|L$0G1&hoQ2Z8fnyE9%cw{esAU&PNCD5v zZ|18a$|sg39$_mJD9ihiYQd@7S=pYD!a3PWG?ED$#-3Rj90eOh+l3E(y7gOF+@|K* z6d0kZ6wZER6Jx9vfv|-_%%X4Y{0rW*UMil3e7}3~ux%ov#aSBmHS@nZe0N2YV2^Z8 zMEgyv{g`Vez;wuFZ(kPnIJ}*3ip*%3N=!_G2iv zV;w!#z+S$O1dm9&nQFAmEZ?<+jrk;lgx@iTYM`6mn|seD`GS7FR_1T8d_(U&=)4z= zP9|muQukTc{sJeRL?UIHD!($&bj9RWHq_njAGg0&dWys0V*<}7#FTCBja#&Mxe<>- zg_TAo^NKlCZISbTKY=>Ss}6mDtS9ujW?PI|8Cl$4Og~h=#;F{73FLo%S&d!;2OWQ2 zZfsd1==GaPm*Pw=z6|43z9T!}J1T;H2Y904;JuP)m!jasrUk>*@6T(F%^bui zC!Q0+OIMt%+b;aqEkO{C%+1}H{#yp~znA#S%z2EFGdBcQ+Sfh2nfn__p6hK$VKnCM z2DVRO4em+&Et7D{z_H;l2<6fDhFOyM+)C4bYOTSbD9#oF^B9PhBS4Vm-P3GnA?yMJg>TUyzo#yED!6& zbdD#IAmw2m@D*2lD`!RSibF$hn6f>8n*Wy5VzvO>s*@PPn`5olP)@v#jeFkUQM+nQ zco|&gjxyi8j&d`5cg23E9}vK}2n~S#AD(L%FFFftXV!ZwF&@W@&f@;HXSCl(&KklM`JeL_L0>IWDSmPr{*t*WXN! za6bc@6}*)4rCehBMTWBUtYhCX$g6*4)hc{kJ@Vm>gog*)GIdY%xK-C;O|8f8w`ypA z5%34s1krS;IofSc4PAzS84BSIXLG{qoFjIhI?d49GPqmrTNe7HNpO2K1aoFzXe2fz zQF4XOQ!Y$V!oIIQe*TEt!I=g40xQNQGI9YGR zTKsBWq|wjnYJwjz30@z~?Kiz|8AS))d6E;WHG8PfaF^lHN|F!|U}$U@N7P|`EcJ3# zk#(np*A3z7^1&ICK5*ji?^^+{KJdC5?Q}=~?tGtGsArYxi|#E6{l%3?joD?cf+U0m zEWIg)yDL}5ZWfH!Cc6duzlW2}utac}BJ`->%fVOp*dbKHv2CmR^U@f9#?w_Y&;zv` zTk~I5LvAEHc7~o#7d$Kjen;`u*2oS20gCj{=MvG9toVI=+^ZXJ{Z5A!r(jG$`UF4w zCoJxf{m9l@#FFE@JfggLn_crU;!AS48&o6fF8IUrrwDOk_v2cuxKy1nW-j(k?*7Mn zTR2ae3fzGhR__m)kF?VA-iRBf{MmZ<`OgV0)UeWR67Acam|%iQB4X|#rSZV=rdg$$ z)%u~#3xDu*=3M7zW9w9Kc)YVJ1Rk|y_+QO2``sBR>-6{p0z1LHZ%MJ+@NH{FKcXf1 zd0*fR4P%aT;Xz59r14`UJ{o7phrG^fD$QcU%=v#jVo*2aL+hO>wP^gv3_iQY3ZGe^t!u}l3 z`7u|T3dV^A#MNR@ZQ^cc4k4$}kw8dAH{8{R9eT7h2tzWTRQ|(bOJZ!FD0^9%PQ7LvbTgF(TLDFwiJ1#xMb2VaVUGJU zrEYs%oc2*MhK`0UdkomD4^*-xT~IXKAYrUe->^%qk8;`nO`z_x_zm4rHaX4Z5yEAM zSSCf3233}nZJ~@OT93kcGa4!HTN_{VlX8*b^+sbmhgSmQ5ymG!m1e6q)I*jM9(dX< zxh-_+bXdAB8Mi_&bWm|wLlMPI{%!p#vHss}0)9+L!?!*`De>qK^F(VZn|M+_VjpQ1 zxcSIS)0I6Rv;YCXs-dd!+B4{ts+8-|n784lr1IA?AYm=*801+rQ;ui5Y)oS_rY8pO z4?~rt3_0QZMK9?_kbttdZ+kUcxt;G}h2z3p#cjRp?KKfa??nu&mF1$&^R#3y4~yGj zZFazVW!DA`6}L44*%xmG3-%7es@x1+3bWW@M3342pvOHpwkxOXX`6QE1IplblF@5# zP~F(q2{uM@#vy#Nt+}vCU@Oy1%@hXJTa*KE`f}u+KKox;0LgueO9?c@=HfXi=JNR< zi8}B*c9oV=Ey}xYG4%%HPRmwaRQVxxxcTjMha36*t2Tk*7U<=^`+c)%tVlrybwAws z`fbjFzYE1ym7-1hsyU10v9_uC%_ftqct2M&(lZHTlN5%Cx78%H0+&Fu>4?5hl0Wvh?GI1(v@!4H_*g>Uiot?rMnU@tK*}F=xPTx1pO5p%W#fXYNyp z%(UYprq~k-P#Xxp^6^ zI5i7p5HZ%06IcL))QYR2XQ_-Me8fjc0+zv077Zl>e-##cf`~X0bWkz=651Eq7`A~I z42nl=g-T^VQB)zC;PIC)JxUDp2xo9DvX5eXYKSH!;I{-Vx%qV4a2g)k{{-bO(+#Sg zEjtF!-L=?*ps5H&d#~oD6DkfBz7u6w*)K)HCc5G?%DXvwCc9@BF`ZAlz`rPmvV90T z$du)=VQo`M68$u$1Z&a!tYT&QW#lc;vJ4`eg^Gkjmt#>qrE4Y4S+g>0%m*sir+cr% za$(8!Aa!q3`;laWm9PTR+cR8ZJQDsIh>BlVSQj2E#z-vTyMhkQt5qf1LMV!l<^@k; zjg>jrtlSfS|0uqy`OCqv?c}@WL_>T+acD0V?b|Es%#Egj%A`a}i#H6Yj5S0=M9%l|msp1MGDnb6I#I3G*E8 zo6y|(E}z0MLN!QZXr0Y!SjGGVd{JSXCu9Ywmooxnb1QqOGq6pPUD`uXeH?YLiF@{? z|K0+-eArf#LUlE_Pb~q{&&8U{oveGDNVLv-!i)DI^URd|+||hfcwt@lMZ-w+(IVE& zf6V_4(aWBxn%a4oYmqqiW(3THM)!i`z}7w_PRSOCGw}(A5VLtP=oL3 z4xi19!pNxI+If{w{ zv_Lz9m~a*j1K$=ki+TPfxPKT6|6z+aKoT*G$wY?t%P4(r zQz0XTyoR>(dJRb!6)~N`BXQ6!ym`g5J4g2FAM@HTEgDg*fi%=pH@IbT9Sq45J7VCM zy}2BO^&soIoKfr<*n-K( z^ZJ5$eJGUF7GN$pw4%Ot;UrZHRE!;Dykmv8r?-3c-4+EvNG0?OK_kA4erFh@9T_4` z6{M5q&UC4l5EGN+|C%6NcDuD%A0rBZbvfg)&zle;(&E{iyin;X#x6-~cGO?GDr&39 z?C=3*r$ll?VtTP(SWP+i?QXW#jaXCGUh%QKs~)PdRd#BDAkas@OI62P&8Clwum8mR z98o>}Bx7RTsVl1hf6|u3|8q4O;U7A7AM;CQen_aWDpYNL~at3Mx+m{}r|`{1+&t<`{i!;h!iv0Q}Y`~$Lx zZ#_G71htgOXge@8ZR7p+Fsvq*)+oSin(>aK$3@bU+En_u->Z2=JTm0+8I5O)T(ZjR z)^P7GZ6eci*AUIln%<9jLN55?B(SY7ixW9WJWa@ZG)S?hpPY!_Z2EIGhmP1>Kz_6a z?ii)rjY1OKJopul^^R5lq1$C(3zrV5_Md76p+bfD^P1?B+T(#K9Sv874Dpxe(btbT zIirM?z6^mMezR-92Wkpc0hpq6{rQ+)60?Mo)do?DorWggX7zAI%qRuk>WfpHzW9%p9UoNzgnAIJp~?lA`dVq|*Rr78ObiASBgJ z(kPi49-f9}(3d0mcYlnWUd&d9W~=?aL4qt zlX(3eKeG@D{?vN$Bc2nhJShY}=2ZyD)?A-Izx>T0E07b@IzC&Ttl(ttzSi6ASpteu zOEix-@yb>7tj6PevykqiZ!CT+QKWfe1os%*1Il!>{ z>`oPvezb!&7@*#(aakU|lXVLo{S9XEqI{RPr}wP%{oI#`qG8IrX{Ed(C&Z7?fiep6C#+czR7sMZJ^nB$5yX(Yvd#nS6R2=3WfVYDX?}d zTp}V58`zBv$lm&OV=*igXUV;ZRPOOizS(pZ19n<(wyl(eEk;HmPejSS4H<{ss2(J0 zAPP%vyYI&pIcVjP>C2cmn(IpqYcP(gaY0hGdq7Hi(tCl?C)QB604J^S-ORYML$;hE92W9;ntIs zIo5b7U5b7<+7r1I+k2a&D@wqG(wOUxJ6B+yPqHR$Wk^O}=lV7ES?uNWi@=+r@9Re%)I7 z9(|ckz-3cxW!le&4*lL< zUMmYFb6JOMB|m{#teoU@RnFsdaj=oF&*NFXpwG4#MV$z4)D;Wt7r#ZN2#+C< z<7!#Xj^q5D)xI)E<3(f8@LIn1A6ZF=D>vV=znNFhjy43o#XjrFHVuDX{21T4)v+3b zcZX;L$#FuK)@m7Kjt4Tuxl54H4U%XEiI1DV@@w#tmD`i@ALh$3o(NT z*R#bkX7e&LHf+I2s3d5;7GCT(ET&cEFK7dFabvcM{RTu%G}mW7ZDJDe=SMsldL$Ga^8b{hFkksl9`=bIruc0Lzyc{dNxt(#p}kh2)i^{+SQB+#<52##HuXg+ zTsNNMKS(6WIVkfIh{Q-<_u9`;^YD8L9H7d9?5F20%;$4M?!EJ14kG3PQPBP;U|6lG za|gi06m!^NGG|0r($ti*D0sCehoGW7sa*&@au~08q>ZC@fTdxPX-acas@i@>b3qc% zN}}9T{Enj?SGX8<2KCM0LLJIE@-5yhO@jx9V0jP;;r#rp0W+NF;S0Bw*{4N3M_Qm= z&@qw&3QhZst`+M(qjJmgy@0x%3b8NEz)(#!+Ha1Y#J(*PQogq^&Fd-ReQ=+vN{0gc zxGREw3=4jJkl*F@#q}@#CKjPiSce8*?Z42(-^p}iDM=l^WGh$3@8F5?WGa&I*lLG% z{}+jN8@cq;G;rH#OiK()9vl;djW>k&yWV-r|~?5!V+r``b;c0WUs;L z_-m*#qvn(7;MeO2Xfx0&TQhY@kuY*U(e?Aw;Z33nYpO!_Y0dZqk=}SM_n9Kp3yYKh z5L=nyd(PLKn|Qkw_sSt=3NOiCizy?s3ApA+0s|EqsCSnACDt=S$8cqS=qb%f>X=xO zcLNu*43-)N7U$?2KgZA~lJ93iser*3Xh`I7N@KsS9XlL~(SU4+7n#@Y+xMonhPYO* zoF5r$2>Ykn-5}_hN;R0*M?d`Dsxt69Sufns(cx0*vw=`PK!Rrw^R1~VF#dofQTRZf zckk@2qxd1Ql8PCWtZ2uW9SN_Z(vlO9SV!*nJx7<%bsl?GVk3=}aNy}Q>L#&f0pId$$a>S)z zTE{lmF;VByF^PtdrWK?|E}HDqr>_A*kD4DmcK%~(q;`nBI^HR#C?ipYl9xC9zU-vx zj=io~|6=u|(n9K9j9lcf^kvCdz28w%zbC|keNrK=uy^Q6C@4qpIpQLxq}!AX?tJyr zvOfLgj*-7RtC;b)zyAgAmxh%6y zk&n_jxR!xOA?VkPET1E&$6>@}-fZKo>9IfL>Eqy94pjm1W3t8tYkBE%*l$%@%+>cTBts zhf=;Pt=GX>Pj}Hjs+v3ycO_g-`Gfw>Ur;!}LnwdGf&2PgVzML~@%}X0k(j|LI6avtX6uB3G>CC}5cWWMkYECV3 z3AqL!I3sa{{`vD5!Wu9&(?a8D2q-#4Ka7U-4B%NSJS)uSH>AIYvrJ(wGVe@?{QGcY zQ3ds?!w4XeaV)VlctKa zT=_Kj(L=wF#Ai~ae`q0OaH-tmpGfmUYNH7q@P=ma60Y(j)-O{FPcZjKzNz~4AbwCKz^8Wpg zAnm@^>Z7=|gffRwt8=+=U7P~HR z6S2h)5la1E8T`)jRDu-Uw0Qkl`&!o6prq0j*!?ETDWy{i-%JQ4_-o zG$*mZn63-1N4@c}PxCU%=Pvy1S!#-I$v zFk3BzY%3--bFg-Ck^r)!h6_PBjt{8&bM4^BGq!d`M){4x>MJP`6b=V8kSuwtdBm0T zvQ~IFr&^dSECi=yXZ?`fN;X{CGuB_gA zaoGzXaCh{jWCNv?qHbTBbs5nA9>Vtk0GQu)J9@%ERN?mea%l94vY2dZCEKj=M${CUYWi(KqHYXQRaq9@inB z-x>E_{pUYNnrZGxH_q!r1L7w_JKBuOu@dPt0c67{ghOwezXq-j05T`*O-S;^Y|_i0 z=U#zA=J>-!fDB1)`a!1VF>6^D&wc6JrI@&@D7Ax;o$0e~zaD=<>`5#5aXb5KM0;{= z+uduqSHOg@DeGr{2(`s~OM-(Ur{0e=tZ3eGXPH1^|8TrcF&p)9TZ-J}YnR*h@v!Yn z{F-GeqgMW#K@Cb? zhnhdc&1rW>Wk#-lDN0_SB?B+NQ7P$La+Ufn9FOysZt^rv58XPvo=f++Xzqu4doUV9 zucwQUK?WhaI+?F%z_nAyD``I%0)=Bh}6zzvo^BMB;^kDbf zF;ECh1rI#0qVN|E3DN{LYfxnzQ!H01?F<(;%t{dWwg3KJvM!ZIyDw<_54u@8m*WEY z&sEy$w3@r9WwRQ>iGK9_CGHxDi{lL22p4H!-->p`gmH=)22Zw&CvJ>$85Nh-S# z6G6Lx6s-^ltXMh)5JpAwFc)u|wzeqe+2^VrNZU+NtW%tax{Jm5JCFIUEosO9CzH!W zsJu+^7P;eQo`e`}(YI`^^`KNgu~N<~4Zno$yBULe=x2ZGG?juWzfx?^6Qlq7`0Mz@ z77ll@UQ>!B^Thh)%69`|;}f-?HHq@M;=X#S@c&TuCg4=B>)*Ix8I}yokjyP(#v;l* z6D>ogkVsL6k`|dFGS3;xRH%$iBB9KgN(q@lGRvGPim3K`KWm?J-rxKF&wKrM*VWZI zS9@P=Ykj}ZbKm#p{tR&0o=NPU-Ql_QiG+&b`$)W}sXscO&?KcoK1>@7S3J8vBB9IK zEcj`Z&yUo{)dBBc`~wUVXHnq&%9&P``$_DzPqaQBO7VRaa1TfcD0A=lf;Y5GjVCcB zIVUiY&;ukpC6l$X%(`q>Mo+GRT*mr-0 z=}vr|>$fQR3%HLT2dvD(*yFvMo0??OjrM^*7tvMwPoo8nkO>PU+nob-MnVj|eb*jI zYZJW3ae#DW786`@(0T`D^l?D3ATF|pUY~g+*UmcvMe&mGVVHVom6n-zWAiE0h zsMXa{7u38C^q$8(_kd~5Jchz=KkSHESj!m0%jHW_=BfVyl5-A&e~}N@6ePzlX1uWk z<5Of+4WO-}QwOt@7ch>HIpgt1vS6>k%-~@NjQnx85C5|6eg@tCw}_gc575;gh0)hS z-Qd=|h2JrX?*e2$wxG}S1o%=BOe(7<)_?)>VTbdXp^iMQD>{BNv~!{N_j~z|P1R9{ zunHG@NSNHy7<5dbI!D5!lu2wB-#-BH&tX6^eBeO+Rxa2__sb;bl%E5R7uwq=oG4q- zGJV8);t7hQ73TQC=R0(n&NXDL6v!b4fP|s2C(yxMXr_Wpg#3h;5Uv#I_yrwNKJv3` zI%zNle2=I>n87(Wz(}rTV8U9HxHwH!H zu5*Kh!5x+I5E*}XIG;#+35h@YNL+{AL{U05*kvgQJOloN0gM$EX}5sVpyU7#h{dcM zwh_GckIWNcRx}nMZlX2~!1Z0va^Uy(ME7a%$h9LMuJ|7 zfVD}oz@)CGi3vt0rI&x=l z!ygTA%>E221B9_H;J0ihX6EDUlj8=vPP@PS<@4@}C13*KkquCjD;)Rn1v!M>JOc!% z0sxBr!=6&@KZ8{;TQmv0QVwu8oa&R&dZ@b>txd?TfuV{8r}huSj_b_@g32 zYi$Z+l&2KVwF6(~|NfcIpza=G1?Nv0CI8ntzz^mt zD*38A$i(!^ux)3`^!5f?EZ6V2qa`N`5BbB>Ys$ZnmmplLtZwga!q@nn_9tLNC`0TW zT+vcMQ~lr|8*TbjvoBlfHx=7J?`AYf%dxlcn3gvRcqXOT}IQ`B zreX91)$tk?ZPW|pm0EKs1-tEUMi<@3OL?U;2xNdX>A3R3M~^chgC4L%eFio!FCVIE z?-A1z37Hdk3dt2{w~vg`?+@#oU!>vl)40DHSDYFdbO=12dzQ@*F*-%eJTj;W<0S2f zaMb_vAB)TR}W0Tp}6-}xRbe3y%+i&;XO^MnYq;TGr z7)BQ#280C#5%flT{mC0GKwRvXT9W$?&#CHEWhk4g{t3VFhLGUB)HTyL5PTj=g9XY` z8u0t8gp2OAXlmM+NZU|{OhL%;G-lHnqAsLne;wC|Hvxv^Jj|XDwKZzb+7CZXi#FNI z%P{KpxnAPua|dRx+=YJ0h0(I96G3ktt#PiQU7^~$X1jK4c#DM*rvb%5#kH(1oP;$* zLBuM~MAL*Zy$x8_TZau+w}4h{V{#RuW!?b3n-6ae_PP8qWRwS!2nx(ehEja%1GZib zjKh!v9YUlFpoE0(aJrsbs|p@mtHLFGg%=YAoo=WS*Jq550;r?Vq@Sj^rs@sd{q|_6 zxmbqPBMY$;Gc!W)0(Kig+TPAUI{a2N_%A1R0{oE#YkyKOu#@u@b6%^#zxTg?;dC*` zZwi9OlAxT{1RaM(L*HZ-O4;~Uy1i=^R+DCrEu~HXRSVYI{qPnR=i#N~(wW?qKpH8vjx&Iaq3m3Z>St2e7NHOz2)3a$I~3-jkq6)b$~?itCAQ}=G>vGU?NAt& z323DVv4-O0r4M*$x2tvCQ~(go5Ge22%Ihn1)R5+kb(-V}3YL8S1em7j!rgqRT<0kF zy@c9KH~LpcXv%xwCw5(+O~?NRT?@<4Q@Szv-nN#7a3iqZi)t919k zu?7O3{1q@ux*mh)KrHXvp-_A8!8b2D(H6cgigJ4ZfM57Uv-hgWeVooh3knLL+q1vu zm9d{o4YVI4)b2#oMFZw^p7{_@wMiGv(zqKHzp`2SZL#p=&aZIgCqaocD0O)CxwMt9 zcT!@+^p}RAz9TGU%v}2(Bo`aIs8j}=Q7PK(TD>=L!*nU0j`CjjxezwT zK53Uv@oJNk7~Jp_P5{N)E#I~4RH5bY(BHs1PEMXSx;=D-kN7+^W7pJnb&b@iTI>7g zAqo7kk4#u*fiDU^_OTD^Jq5M-(4}5}hT?NCe|^tHu7maxEfFb+qQquN&^C>3?$bAj zf1$3)#rFV#5X8H1RUJ_-Y<#l2m`Efxdq-I#Yi0jaKQ(^A8JkAzdEk&Q9`Y-ZDOFIR z{N>xqmOr5+aB&vCvvSHapi%eQ)k5(a*RI*Xw5de<%!7fM+jewZCDJTc2dnwWFkh6a z8H{yok$m)h)f$ajt4E@Ml%&~n?W{K>^7H`o$skN2lcIcgN@g$_lbelP`r-pt>IO_6g0GFmw4aM8f5sZf&NvA_FNkVp zBz&X?vo7_+DGKc-TGEc-ksHY}$HAn!k@UO$BZNKXm>F>`s53GMFZA1`Or<9uuveRc z3%RcqAa~i62E!MPJDq`>BhI4TH@YDNO7(R!lX_7r_#xkO{s}$#LcO?ZPEL!t5?}md zvkTk=9VgM*&GlB3X!>gm8D{*8kGsYI`2W_O(PwZSGVN zRLdNm0ea!u-c~|z;n)FKnz}qFPkjweaP-2t2T=gfF`oL;@hw;w%OXRBDWHUYm=ZNj zxgQ9ea)#8I9uwD-4AV(74_loTGer4s&yX*VCoZ05pPqTtYOWWz3r|NioX0vm`EF69eD`QhGl}4?1 z?L-6VjT9Ppr$DG>$hERkc=v>^ll^`cA3++zNxdRz8jr+2=sUZuS&_*M6k$vCs}{@B z?u@ddgDL9?L6t#pG5dYeX~xp^ga+*9S2EqNxJ`c5>!WvS*Tc$lj^OL}q- z$UT+i(>W*pDu<6r;5l$hTutT0Qvz-$+=tKx>hKy|lx7NseE*~iECZLL_HNlWRj0yx} z%yDA+%~;xELrt!PZl;U1CwAayuSVh-1ojWhwh5ajVl_vg>yf^`f6MsL**CcLE(LHj zSuTUd%I8pC5?Nue4;*+T?}cQ=~Oz&dJ$9eW12Rr`wIxH&JX$=sd?OP*x*@0;*tn; zX?;0^cQLsM!Gz{B8Iv6H2aF3!`a-!Y-JmOZJ7pG;aonE}=nlaKcZA1PF-;;r_bCzZ zp>nCzy|Rox4YZC|l<#QLV$N{T**4+!3_odS(AuwXGG|Q)=^p zih0H^_sinE4@dQ~Pk=ySpIy3zrj0|b%-t8-TnWdAEVT>rK7`7epN{m8W^9e;%!{}T zI)r|KYEXwvq8QgmCGZY4_e9MX>R*3#tW%= z=}1SJ%j2Ep<-GR*h4`y1QOzh(<_N1N>m#sjm>=U$b$|Z@|K%u!sXodB&ef63)p=iR zpY8dH?Hk?(^wb6FFQSbkTj1rt_MrDyTorI9c^3hK26RLTO&OD-tTJ z7P4r*QoN5bK>07G^8>**c0*F`jr<wBbKn_8bdWJ{T_OYbK4v9xjMeNJ=Y1aTKWvg(6+2mfhzlS zkcfEd{Rb&YbCbRduv)K}NmMXJbR9zYzGxa`e((#BN|rUC$)axsg!Ev?(uRcSFS zmNB0CtkW8Wi{h3=qR>?*it^`5jn0MdXvEZG20lqb3Sv6Y@937V2;=um2aA9^2aB); zYiiGN02_-r#nNRsL3FfSXgjNeZ9(~3PeB*(7$_=Q>)$;mBj!-0PG{nSS5B&R||L6DIsNn5H6Uv9=BR2k< z%S%TMX8Jj%;tXQ0c@aeN+2SHXcW7Owt#2G5bN43*IRNY+>`M7#!;-0v;oH;E`)N@^ zxKEfqZGv`8x{ABKdjYw#sO<4cSp1bMvzcj~s`h%@z}5Gc=4+2zq3gRB(4MGHDE~~0 z%&?Y8QjiQRyMxSqCbN9!VP(7=C(}XEDkVJG69u<}96WdDJ3S@Qn_xozVTUMbE+F^* zN6YK5-c**3D?^Snu2K_+V;z+8#rU(;4qwaQsqHnHIvAVAl(| zvMnXJ;#Yl2d4OE8OygStW9?j^@V0!Ev>`+vM#(88@;@m&k>Y2vX&`#e8E%lY5^b&p zq7jh^za&Cej9n&|T@tpfNfGVfkUkx(mblaLIWpxrLAr29&`vBiTfs}aWN)GN?M+p1 zI#zq1<#N98i`?vyY?jUWs*b)TqJFbe8d{FrU)A9n&=-Zac0K>z^>9B_`h0mLZc0?|K(>H+RV`jH_ZfaaXjz#L8XA?GuZV zxvbxO*P3=8?9^OETjf+mUTa<%51}d7!0z~6LPX~^XaUB%8g@7^=f~+Zzh8VY;)MLY zw|RmvN_=L90uh23d(ky)&sD{HOR&x_e?zAwa;@~<^%6Y8nChu(zrHDm5dx`PXSnd9 z&9&nR0ki^QJYgZ8HnJ%<(>-9%o&6i7FATKTQMtCM8kdFPIK@oiBR={hB&2T;E#DtD zDWM-0Y@&E+q11?f;(=-2MyZ&b&Lh)d) z+wQ@MvNb?OAU*Q`Q3U?`SUoO6ZpAFmp4!$n2MRuJZ3Af$m91Bl{V4DKH?HqJcU zVUqT}`+3n>J219*T<*z#YaL+*wq&z>?63o?#HRz)!8vshLH;#xQ!x!e39j zV6j|v6mH>j_Fd{CXkz3q{(tpSz>)HefF|bixV{KtVGUQs#fb&AqC z)&019m;!E6jdoc&ig34hw(%P`$V`LYTe^Oz*x7@*D2iQseZ}@#(cWR)0fz=ZNP$Y2 zijKRGYgWDR9M=hWoRRzhqF91whG=KX66XlQW`8LlO#p(Qa#4m(xF8_CT=ieRse^3`(9tO!7#Gj-+ zh)O6HAcEf5lqvNbOgXuH>^0)g!$VD(Ty#~5Y|~1D;>T^YjPjPVSoGe&tD%eS&2_){ zw)7sb4B}Ymqdh6ir*L|(e6aZSKC$GIGL9?&!VR>Y(j!ABd zN^y*Rl{%e0vYU^~ytU&!8J@rz@DF5$w7?R^&HjN(#fvli1$ zB(c|1yA&@o01J2bG{)IAcD;??D8;4ifNWVaIC$t_8FdS~@jhfdFjAT&{9E+K3*FITtsqR~vD2=+NEqDm^aW6Zsp_{!KcKc?czX7#I+TOmeEeZ4<3@?Pl8b#tJVtX7n6@FIq3hUS=dr6Fu8yGYvqx8 zN=!hg9w2Ar%=hq8cw0Ba{{f=`^rlC~q`o$OxGSnIM`R87RP#}H+oXj0%&EMu{%k$i zLIx`?#)Zmc=?u@DWUzdE0}K;Ee%papTZ4{?^HHoh^|Ocx2wM);X|E|IYWir*um)LE zIc##YEVwjGJ5Si0F6ueCOGi&KgxO?SD0jFdAEdP*-t?LmV?`Xa+4xG#I2Wa!j6xhxzinz3uhe{Q@?h+&S4cD~b23_b!#XTVv6o>v0!UK> zrP|?zX7L0l8yf*sI!`1K=!ugA5cK1|qkr^~X&8Bu*rjY}`6_E3YDk7f{nk%s7o&1z z-|Iie{}I?-##ZcN9yGGX`C;LYapA6#-?0tXQI`5w$SHjbAmpW&jx08lIqG~jrgGQ; ziVRkzz{P8M?P{bq!wRTg1~NAaTfd=xEhr%D>EEk{U@`_RntU<)7w*~6+?c%FGp>9{ zt(Ed<9oL$4C2%A{&XT~);XeU0`N`JUdMGE)+&^xE{bzB+6b6p#eAGO2?1W-hMJB8cLkP_O zE_y;&gPOn(y8?Kt`fwK)z!>3wmoeP*a#d9lhX|R~VTJEngQwjQWczX!m+v59UtgOK zLw=-~$2>fnx4Njv=EKtFeXJB>AA*|%MpVD-;28$20zX`{tmnV{pV88$S`8NyEdA!9 zqJDt1ywBY+Ihb?VlGy4BF&!xHjzx>{L_CoZ=<~NVGG03*HURsxaODSbVDh|A#sj4V z@z%ft&gp>la}Wwer#Ap4$;)5U{AuXeJSdD@a_CybXDk6F%#M{F4e>*Fi5mv;j7$E) zQ@BUZAQ#id6{+yT8B2h)f9>!-*HDy!RS{@1@g2Vl?gMBj@%-I8PK=)9#fanACZHeI^&uG)}t2z z4TPGO%C(<=?dyVdEz;pYa*q1PWEdgU&A=!SZTwJ7)yLV{a3S0h#?a#(@XCu`N%`rX ze+g^Iqd?#JMjfSfSshyG?u76~!H}n{l|V;8YMc9y$AH)#q`Tnn2Gpo7v2uRAuJ}ba zTpm1d@h={-@b;0jkfFuh7|kEOeyc+lO0ayvFCl>ajD0tAz=ah$K&}wd z#L29c0l@cy)fY!udTpq!?9LKETvS6qkmIS1tXiwsGTnnn9J8oiiBc-5xPNao4eQ#e1DVrj0>z81g?CHMj?;vc)WOeuK0OS%tqd!)I0F?>4D{AWFrwHZ>){8-J)9QoU^F2(y~z9; zEEWuQxqyC7jA&B>Y#kpnaJfp_`ZQjh23*(h$XP{}Xf6sM7j=(uuGMw>DudkVC+r#^ zu#s8wywT;bLDn5y9_(q)yHo8C$2cUw3;F$kBK&ruRG9Qu2B*RwS&9_#lkbBQcvv_fY}@p~kyA4fy~ z`0pFY4QhP{yU1aI5FL02(nJLgBYN6@euc~ln}9y^7I-AUjzXj;4xQQpRP%fbFaTp9^ zx^QV8oWhpTME?&OFv>a1+#uV1sW1~j`#m~{1Rk12=p$A?m1}^6PTZQ ze_ZnLiWDf=9J0}?utN4<7ajkPeLSuq>?H^b=4k>ZY*>0!)F9D#C|e9({t3F~{#xK@ z-2@usJHbR10T2V#8<>hEWg?0AK#tt#K693|six1HEb)gHp`bulG zb#wQ^LM+`u|EH&`@&K&9(pvH<(0oEmrS3y}N0 zR{X9O6}Ya_V>YE+Sn`y)weU^%CeM&;s?$9yBqYT+Tt{C^iNYV85IWih2JC#@>S-lg zs`*2B6A4Oq@ zXsZfJgHOM1DQ(42c$!~58+)TRvEvt#l0VfPPXT!ESG{xnq-xi2 z;>w|2}5dv>id$R|f65YrJO$ads1RypyVz*Hw?yUCLf5eR=rz zg7jV;2i(||xUJev{>iY@t5As3q0qjCmD>H1JYJ8xij3RlCNo<;&U)zjpyfp0QeMFy zGzjD&Kn-{cns+KO*=Eym1#_tLA&wR>OgA%!E-6A)ltMy8AlWR^G(J~;ZLJ;61M!Od zz~G20P5pFo8Ft5bI55djct0)TA}vvFg~nAxIxzR+r2d_CP?`ew4Q!r=Cf(T|K9r+8 z8MtcGJV8Gxs~`lLA;K=_lK=}3CPm8Kh&{s*6mh1WLV9H?|BIuVJ#(g*W!cF~FR~Sj zM;1N4EgTP77jD^wDi~bs1n4!Ee4Lg4zBTudIwRejKl

Nn*3!;>+puklz}6E(5QU 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™^IwV=fenu|i%3gtqWzyVuDp-)VfTIr?irds9 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 literal 0 HcmV?d00001 diff --git a/assets/Aria_Lanea/flowchart.png b/assets/Aria_Lanea/flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..e766a9cef98c8623d962efbaf15d67c7aa21c7d4 GIT binary patch literal 113405 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�I`JFNAAURVO$`ol$7@~I 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 q8cex@x Date: Thu, 26 Aug 2021 19:37:10 -0700 Subject: [PATCH 25/27] Fix path to image --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 727ceb33..ee86d676 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -89,7 +89,7 @@ At the beginning, Austin gave us checklists of what to test in a file, and gave After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. -![testing flowchart]({{ site.baseurl }}../assets/Aria_Lanea/flowchart.png){:style="width: 100%;"} +![testing flowchart]({{ site.baseurl }}/assets/Aria_Lanea/flowchart.png){:style="width: 100%;"} [**Figure Testing Flowchart.**](#fig-tf){:id="fig-tf"} *Flowchart for testing process created by Austin Ferguson* From f99357358dc2a0eef740b6b959ecc89fdcb3df57 Mon Sep 17 00:00:00 2001 From: AriaKillebrewBruehl Date: Thu, 26 Aug 2021 19:38:49 -0700 Subject: [PATCH 26/27] Retry inserting image --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index ee86d676..33eea8bc 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -89,10 +89,7 @@ At the beginning, Austin gave us checklists of what to test in a file, and gave After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. -![testing flowchart]({{ site.baseurl }}/assets/Aria_Lanea/flowchart.png){:style="width: 100%;"} -[**Figure Testing Flowchart.**](#fig-tf){:id="fig-tf"} -*Flowchart for testing process created by Austin Ferguson* - +![testing flowchart]({{ site.baseurl }}/assets/Aria_Lanea/flowchart.png) In essence, we began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file. From c61eee64b9dbe3a83dd969c4a05a0d8ade90e402 Mon Sep 17 00:00:00 2001 From: AriaKillebrewBruehl Date: Thu, 26 Aug 2021 19:46:01 -0700 Subject: [PATCH 27/27] Add video link --- blog/_posts/2021-08-20-Aria-Lanea-Blog.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md index 33eea8bc..9d1f4124 100644 --- a/blog/_posts/2021-08-20-Aria-Lanea-Blog.md +++ b/blog/_posts/2021-08-20-Aria-Lanea-Blog.md @@ -66,9 +66,7 @@ Many large projects contain complex webs of dependencies, which are files that r One way to organize the system of dependencies is to "levelize" the code your working with. Levelizing is the process of organizing the files in a project based on the *scaffolding* of dependencies. For example, files at level 0 have no dependencies. A level one file will depend on one or many files of level 0, a level two file will depend on one or many level one files, and so on. Levelization is be a great tool to help understand how a large code base is organized. -In our case, Austin used the levelization of MABE2 to decide which files we should begin testing. We've included his visualization below. - -[ include his levelization here ] +In our case, Austin used the levelization of MABE2 to decide which files we should begin testing. One important thing to note about this levelization is that MABE2 has a library of third-party dependencies that are used throughout the source code, including [Empirical](https://empirical.readthedocs.io/en/latest/index.html). We worked under the assumption that all of these third-party resources were working correctly, and thus any error we found was occurring from within MABE2. @@ -87,11 +85,7 @@ Since we both were thrown head-first into MABE2 and had little biology/evolution At the beginning, Austin gave us checklists of what to test in a file, and gave us guidance on how to test it. Once we finished his checklist, we would go through and decide if there was something that we missed. -After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. This lead to a new testing workflow, demonstrated in the image below. - -![testing flowchart]({{ site.baseurl }}/assets/Aria_Lanea/flowchart.png) - -In essence, we began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file. +After testing a couple of files with this method, we decided to push ourselves to come up with tests on our own. We began by meeting with Austin to do a high-level overview of the code to make sure we understood what we would be testing. Then, on our own, we created a comprehensive test suite for the specific file with a variety of unit tests. Afterwards, we would send our tests to Austin who would come up with his own independent list of things to test. He would compare his test suite with ours and give us feedback on what we missed. We would then go back and review our own tests with his advice in mind. We then repeat that cycle until all of us were satisfied with the testing coverage for the file. Then we repeat this process for the next file.
@@ -175,6 +169,8 @@ We attended the summer 2021 BEACON congress as both participants and speakers. W > The second Modular Agent-Based Evolver framework (MABE2) is an open-source research platform that provides accessible tools for conducting evolutionary computation and digital evolution research. MABE2 reduces the time between constructing a hypothesis and generating results by providing a library of modules that connect to form a variety of experiments. To promote use among interdisciplinary researchers, modules are connected and adjusted via a simple text interface (i.e., the user does not need to add or edit any code). However, if the user requires modules beyond the existing library, MABE2 provides a set of practical tools for developing additional modules. With the understanding that MABE2 is a large piece of software, this summer we created a documentation guide and testing framework as part of the 2021 Workshop for Avida-ED Software Development (WAVES). In this talk, we will highlight the role of the documentation and testing framework in the MABE2 user experience through a demonstration of constructing and running a custom experiment. By creating the documentation and testing framework, we hope to make MABE2 more approachable to new users and more useful to the interdisciplinary research community. +:movie_camera: Watch our talk [here](https://www.youtube.com/watch?v=D_XHRPY0xC8&ab_channel=AustinFerguson)! +
## :ocean: Acknowledgements