From b3588517e29db8ac2d83dbd2327f2e9f9d2e91f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Ziobro=C5=84?= Date: Fri, 11 Jun 2021 19:12:31 +0200 Subject: [PATCH 001/151] fix #30 --- module2/presentation_static.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/module2/presentation_static.md b/module2/presentation_static.md index 803b4f6fb..736e23f0f 100644 --- a/module2/presentation_static.md +++ b/module2/presentation_static.md @@ -51,21 +51,21 @@ ___ Rozwiązaniem tej uciążliwości jest `static`. Co więcej, problem ten możemy rozwiązać na 2 sposoby. Nie musimy w ten sposób tworzyć specjalnie obiektu, aby dostać się do cechy klasy, jaką jest jej nazwa. ```cpp -class ObjectA { +class ClassA { public: - static std::string getName() { return "ObjectA"; } + static std::string getName() { return "ClassA"; } }; -class ObjectB { +class ClassB { public: static std::string name_; }; -std::string ObjectB::name_{"ObjectB"}; +std::string ClassB::name_{"ClassB"}; int main() { - std::cout << ObjectA::getName() << '\n'; - std::cout << ObjectB::name_ << '\n'; + std::cout << ClassA::getName() << '\n'; + std::cout << ClassB::name_ << '\n'; return 0; } From c5340c88e6394dd379916f1ffd511a3be4c9fb18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Ziobro=C5=84?= Date: Fri, 11 Jun 2021 19:13:54 +0200 Subject: [PATCH 002/151] fix #84 --- module2/presentation_static.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module2/presentation_static.md b/module2/presentation_static.md index 736e23f0f..e73fe4a05 100644 --- a/module2/presentation_static.md +++ b/module2/presentation_static.md @@ -11,7 +11,7 @@ ___ -## "Zmienna lub stała klasy" +## Zmienna lub stała klasy Czasami chcielibyśmy przypisać jakąś stałą cechę do klasy. Nie konkretnych obiektów, a klasy samej w sobie. From 220bf13cf12af434185d53afeca47742b26d8ff2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Ziobro=C5=84?= Date: Fri, 11 Jun 2021 19:25:31 +0200 Subject: [PATCH 003/151] fix #88, module3 almost removed --- module2/presentation_polymorphism.md | 10 +- module2/presentation_solutions.md | 12 +- module2/presentation_virtual.md | 6 +- module3/index.html | 134 ---------- module3/presentation_homework.md | 148 ----------- module3/presentation_polymorphism.md | 367 --------------------------- module3/presentation_solutions.md | 267 ------------------- module3/presentation_static.md | 91 ------- 8 files changed, 15 insertions(+), 1020 deletions(-) delete mode 100644 module3/index.html delete mode 100644 module3/presentation_homework.md delete mode 100644 module3/presentation_polymorphism.md delete mode 100644 module3/presentation_solutions.md delete mode 100644 module3/presentation_static.md diff --git a/module2/presentation_polymorphism.md b/module2/presentation_polymorphism.md index 5e46c6f19..1612473c6 100644 --- a/module2/presentation_polymorphism.md +++ b/module2/presentation_polymorphism.md @@ -110,7 +110,7 @@ ___ `override` jest opcjonalne. Jeśli go nie podamy za sygnaturą funkcji klasy pochodnej to metoda z klasy bazowej i tak zostanie nadpisana. -Jego użycie jest jednak dobrą praktyką, bo dzięki niemu kompilator sprawdzi czy faktycznie nadpisujemy metodę z klasy bazowej i jeśli nie, to program się nie skompiluje. +Jego użycie jest jednak dobrą praktyką, bo dzięki niemu kompilator sprawdzi, czy faktycznie nadpisujemy metodę z klasy bazowej i jeśli nie, to program się nie skompiluje. Bez `override` mogłaby zostać utworzona nowa metoda w klasie pochodnej, która nie nadpisuje niczego z klasy bazowej. @@ -230,22 +230,22 @@ ___ ```cpp class Doppler { public: - virtual sayHello() { std::cout << "I'm Doppler!"; } + virtual void sayHello() { std::cout << "I'm Doppler!"; } }; class Dwarf : public Doppler { public: - virtual sayHello() { std::cout << "I'm Dwarf!"; } + virtual void sayHello() { std::cout << "I'm Dwarf!"; } }; class Elf : public Doppler { public: - virtual sayHello() { std::cout << "I'm Elf!"; } + virtual void sayHello() { std::cout << "I'm Elf!"; } }; class Human : public Doppler { public: - virtual sayHello() { std::cout << "I'm Human!"; } + virtual void sayHello() { std::cout << "I'm Human!"; } }; int main() { diff --git a/module2/presentation_solutions.md b/module2/presentation_solutions.md index 708e7969e..e090368cf 100644 --- a/module2/presentation_solutions.md +++ b/module2/presentation_solutions.md @@ -10,6 +10,12 @@ ___ +## Disclaimer + +W PDFie te rozwiązania mogą być częściowo ucięte. Przejdź do lekcji na platformie lub na GitHubie, aby zobaczyć je w całości. + +___ + ### Zadanie 1 Cargo.hpp @@ -247,11 +253,11 @@ Cargo* Player::getCargo(size_t index) const { } size_t Player::getAvailableSpace() const { - size_t total_cargo_amount = 0; + available_space_ = 0; for (const auto cargo : ship_->getCargos()) { - total_cargo_amount += cargo->getAmount(); + available_space_ += cargo->getAmount(); } - available_space_ = ship_->getCapacity() - total_cargo_amount; + return available_space_; } ``` diff --git a/module2/presentation_virtual.md b/module2/presentation_virtual.md index 44a01f5d6..d7b237865 100644 --- a/module2/presentation_virtual.md +++ b/module2/presentation_virtual.md @@ -82,16 +82,12 @@ public: }; class Hummingbird : public Bird, - public Flyable, - public Soundable { + public Flyable { public: // Override from Bird void eat() override; void sleep() override; - // Override from Soundable - void makeSound() override; - // Override from Flyable void fly() override; }; diff --git a/module3/index.html b/module3/index.html deleted file mode 100644 index 1712af944..000000000 --- a/module3/index.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - Object Oriented Programming - Coders School - - - - - - - - - - - - - -
-
-
-
- -

OOP #3

-

Object-Oriented Programming #3

- - Coders School - -

Mateusz Adamski

-

Łukasz Ziobroń

- -
-
- -
-
- -
-
- -
-
- -
-
-
-
-
-
-
-
-
- -

Coders School

- Coders School - -
-
-
- - - - - - - - - diff --git a/module3/presentation_homework.md b/module3/presentation_homework.md deleted file mode 100644 index 13c848d34..000000000 --- a/module3/presentation_homework.md +++ /dev/null @@ -1,148 +0,0 @@ - - -# Programowanie obiektowe - -## Podsumowanie - - - Coders School - - -___ - -## Co pamiętasz z dzisiaj? - -### Napisz na czacie jak najwięcej haseł - - -1. dziedziczenie -2. wielodziedziczenie -3. funkcje wirtualne -4. funkcje czysto wirtualne -5. klasy abstrakcyjne -6. interfejsy -7. polimorfizm -8. pola i metody statyczne - -___ - -### Pre-work - -* Dowiedzcie się czym jest problem diamentowy -* Poczytajcie o zasadach SOLID, dotyczących pisania dobrego kodu obiektowego -* Lektura o wzorcach projektowych z przykładami w C++ - [refactoring.guru](https://refactoring.guru/design-patterns) -* Spróbujcie w grupie metodą Copy & Paste dorzucić system budowania cmake do projektu. W tym celu popatrzcie na dotychczasowe zadania domowe i plik CMakeLists.txt. - -___ - -## Projekt grupowy - -Wykorzystajcie kod napisany podczas zajęć. Możecie też skorzystać z kodu w katalogu [solutions](solutions) - -Projekt grupowy - kontynuacja. Możecie zmienić grupę jeśli chcecie ;) - -___ - -## Organizacja prac - -* Jak wyglądało wasze daily? -* Czy Code Review nie jest zaniedbane? -* Czy współpraca idzie gładko? -* Zróbcie sobie retrospektywę :) - -___ - -### Punktacja - -* 3 pierwsze zadania - 5 punktów -* zadania 4, 5, 6 - 8 punktów -* 20 punktów za dostarczenie wszystkich 6 zadań przed 05.07.2020 (niedziela) do 23:59 -* brak punktów bonusowych za dostarczenie tylko części zadań przed 05.07 -* 6 punktów za pracę w grupie dla każdej osoby z grupy. - -___ - -## Zadanie 1 - -Napisz klasę `Store`, która będzie umożliwiała dokonywanie zakupów. Wykorzystaj poniższy enum i funkcje. - -```cpp -enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; - -Response buy(Cargo* cargo, size_t amount, Player* player); -Response sell(Cargo* cargo, size_t amount, Player* player); -``` - -___ - -## Zadanie 2 - -W klasach `Alcohol`, `Fruit`, `Item` dopisz brakujące metody oraz ich implementacje. - -```cpp -// override from Cargo -size_t getPrice() const override; -std::string getName() const override { return name_; } -size_t getAmount() const override { return amount_; } -size_t getBasePrice() const override { return base_price_; } -Cargo& operator+=(size_t amount) override; -Cargo& operator-=(size_t amount) override; -bool operator==(Cargo& cargo) const override; -``` - -___ - -## Zadanie 3 - -Dopisz do klasy `Ship`, `Cargo` oraz `Store` metodę `nextDay()` - -* Klasa `Ship`: Metoda powinna odejmować po 1 sztuce monety za każdego członka załogi. -* Klasa `Cargo`: Metoda powinna powodować psucie się towarów. -* Klasa `Store`: Metoda powinna zmieniać ilość towaru w sklepach. - -___ - -## Zadanie 4 (dla ambitnych) - -Spróbuj napisać klasę `Time`, która będzie odpowiadać za zarządzanie czasem w grze. - -Klasa ta powinna informować inne klasy, takie jak `Cargo`, `Ship`, `Store` o upłynięciu każdego dnia. - -Poczytaj czym jest wzorzec projektowy [`Observer`](https://refactoring.guru/design-patterns/observer). - -___ - -## Zadanie 5 (dla ambitnych) - -Napisz zaprzyjaźniony operator wypisywania do strumienia - -```cpp -friend std::ostream& operator<<(std::ostream& out, const Store& store); -``` - -Ma on w przystępny sposób wypisywać towar, jaki znajduje się w danym sklepie. - -___ - -## Zadanie 6 (dla ambitnych) - -Napisz klasę `Game`, która zarządzać będzie całą rozgrywką. - -Dodaj jej jedną metodę publiczną `startGame()`. - -Finalnie plik main powinien wyglądać tak: - -```cpp -#include "Game.hpp" - -constexpr size_t start_money = 1'000; -constexpr size_t game_days = 100; -constexpr size_t final_goal = 2'000; - -int main() { - Game game(start_money, game_days, final_goal); - game.startGame(); - - return 0; -} -``` diff --git a/module3/presentation_polymorphism.md b/module3/presentation_polymorphism.md deleted file mode 100644 index 32a9b3088..000000000 --- a/module3/presentation_polymorphism.md +++ /dev/null @@ -1,367 +0,0 @@ - - -# Programowanie obiektowe - -## Polimorfizm - - - Coders School - - -___ - -## Słowo kluczowe `virtual` - -Jeżeli chcemy, aby przy używaniu wskaźników lub referencji na klasę bazową, jakaś metoda zachowywała się inaczej w zależności od prawdziwego typu obiektu, to należy ją oznaczyć słowem kluczowym `virtual`. Jest to tzw. funkcja wirtualna. - -___ - - -## Funkcja nie-wirtualna - -```cpp -#include - -struct Bird { - void sing() { std::cout << "tweet, tweet\n"; } -}; - -struct Sparrow : Bird { - void sing() { std::cout << "chirp, chirp\n"; } -}; - -int main() { - Sparrow sparrow; - Bird& bird = sparrow; - bird.sing(); - return 0; -} -``` - -Co pojawi się na ekranie? - - -`tweet, tweet` - - -___ - - -## Funkcja wirtualna - -```cpp -#include - -struct Bird { - virtual void sing() { std::cout << "tweet, tweet\n"; } -}; - -struct Sparrow : Bird { - void sing() { std::cout << "chirp, chirp\n"; } -}; - -int main() { - Sparrow sparrow; - Bird& bird = sparrow; - bird.sing(); - return 0; -} -``` - -Co pojawi się na ekranie? - - -`chirp, chirp` - - -[Sprawdź na ideone.com](https://ideone.com/yW43Tq) - - -___ - -## Słowo kluczowe `override` - -Jeżeli w klasie pochodnej **nadpisujemy** metodę wirtualną, czyli zmieniamy jej zachowanie, to należy dodać słowo `override`. - - -```cpp -class Interface { -public: - virtual void doSth() = 0; -}; - -class SomeClass : public Interface { -public: - void doSth() override; // there should be an implementation in cpp file -}; - -int main() { - // Interface interface; // Compilation error, Interface is pure virtual - SomeClass someClass; // OK - Interface* interface = &someClass; // OK, we hold a pointer -} -``` - - -___ - -### Mała uwaga - -`override` jest opcjonalne. Jeśli go nie podamy za sygnaturą funkcji klasy pochodnej to metoda z klasy bazowej i tak zostanie nadpisana. - - -Jego użycie jest jednak dobrą praktyką, bo dzięki niemu kompilator sprawdzi czy faktycznie przeciążamy metodą z klasy bazowej i jeśli nie, to program się nie skompiluje. - - -Bez `override` mogłaby zostać utworzona nowa metoda w klasie pochodnej, która nie nadpisuje niczego z klasy bazowej. - - -Metody wirtualne **nadpisujemy**, nie przeciążamy. - - -___ - -## Nadpisywanie metod - `override` - -Wracając do przykładu o ptakach, klasy `Penguin`, `Hummingbird` oraz `Goose` to klasy pochodne, które dziedziczą po pewnych klasach bazowych jak `Bird`, `Flyable`, `Soundable`, `Swimmable` oraz nadpisują kilka ich metod jak: - -* void eat() override -* void sleep() override -* void makeSound() override -* void fly() override -* void swim() override - -Nadpisanie takich metod powoduje, że możemy zmienić ich implementacje. - - -___ - -## `override` - -```cpp -class Soundable { -public: - virtual void makeSound() = 0; -}; -``` - -```cpp -class Goose : public Soundable { -public: - void makeSound() override { std::cout << "Honk! Honk!"; } -}; -``` - -```cpp -class Hen : public Soundable { -public: - void makeSound() override { std::cout << "Cluck! Cluck!"; } -}; -``` - -```cpp -class Duck : public Soundable { -public: - void makeSound() override { std::cout << "Quack! Quack!"; } -}; -``` - -___ - -## Wspólna klasa bazowa - -Ponieważ wspólnym rodzicem wszystkich klas jest klasa `Soundable` możemy przechowywać w kontenerze wskaźniki typu `Soundable`. - -```cpp -std::vector> birds_; -``` - -### Jakie dane otrzymamy na wyjściu? - -```cpp -std::vector> birds_; -birds_.push_back(std::make_shared()); -birds_.push_back(std::make_shared()); -birds_.push_back(std::make_shared()); - -std::cout << birds_[0]->makeSound() << '\n'; -std::cout << birds_[1]->makeSound() << '\n'; -std::cout << birds_[2]->makeSound() << '\n'; -``` - - -___ - -## Polimorfizm - -Zjawisko, które właśnie zaobserwowaliśmy, nazywa się polimorfizmem. - -Polimorfizm pozwala funkcji przybrać różne formy (implementacje), tak jak na przykładzie. - - -Dlatego, jeżeli utworzymy kolejno obiekty `Goose`, `Hen` i `Duck` w zależności od obiektu zostanie wywołana jego wersja metody `makeSound`. - - -Polimorfizm włącza się, gdy mamy funkcje wirtualne i używamy wskaźników lub referencji na typ bazowy. - - -### Kto grał lub czytał Wiedźmina? - - -___ - -## Doppler :) - -W uniwersum wykreowanym przez naszego rodzimego pisarza Andrzeja Sapkowskiego, występuje pewna intrygująca i ciekawa rasa zwana Dopplerami. - - -Rasa ta potrafi przyjąć, postać różnych form życia, może stać się człowiekiem, elfem, krasnoludem. Zmienia w ten sposób swoje cechy jak głos, kolor włosów, a nawet ubranie! - - -Pomimo że rasa ta jest typu Doppler, potrafi w różnych okolicznościach podszywać się pod inne rasy jak elf, krasnolud czy człowiek. - - -Z punktu widzenia C++ nasz Doppler podlega zjawisku polimorfizmu. - - -___ - - -```cpp -class Doppler { -public: - virtual sayHello() { std::cout << "I'm Doppler!"; } -}; - -class Dwarf : public Doppler { -public: - virtual void sayHello() { std::cout << "I'm Dwarf!"; } -}; - -class Elf : public Doppler { -public: - virtual void sayHello() { std::cout << "I'm Elf!"; } -}; - -class Human : public Doppler { -public: - virtual void sayHello() { std::cout << "I'm Human!"; } -}; - -int main() { - std::shared_ptr doppler1 = std::make_shared(); - std::shared_ptr doppler2 = std::make_shared(); - std::shared_ptr doppler3 = std::make_shared(); - - std::cout << doppler1->sayHello() << '\n'; - std::cout << doppler2->sayHello() << '\n'; - std::cout << doppler3->sayHello() << '\n'; -} -``` - - - -Jak widzimy, nasz Doppler może przyjąć różne formy i zachowywać się tak jak one. Wskaźnik jest typu Doppler, ale program dobrze wie, kiedy Doppler podszywa się pod człowieka, kiedy pod krasnoluda, a kiedy pod elfa. - -___ - - -## Nie-wirtualne destruktory - -Bardzo ważne w przypadku tworzenia metod wirtualnych i dziedziczenia jest tworzenie wirtualnych destruktorów. -Jeżeli korzystamy z dobroci polimorfizmu i nie oznaczymy destruktor jako `virtual` to destruktor ten nie zostanie wywołany. - -```cpp -#include -#include - -class Parent { -public: - Parent() { std::cout << "PARENT C'tor called\n"; } - ~Parent() { std::cout << "PARENT D'tor caller\n"; } -}; - -class Child : public Parent { -public: - Child() { std::cout << "CHILD C'tor called\n"; } - ~Child() { std::cout << "CHILD D'tor caller\n"; } -}; - -int main() { - Child child; // ok, object on stack, not a pointer -} -``` - -___ - -## Nie-wirtualne destruktory - problem - -```cpp -#include -#include -#include - -class Parent { -public: - Parent() { std::cout << "PARENT C'tor called\n"; } - ~Parent() { std::cout << "PARENT D'tor caller\n"; } -}; - -class Child : public Parent { -public: - Child() { std::cout << "CHILD C'tor called\n"; } - ~Child() { std::cout << "CHILD D'tor caller\n"; } -}; - -int main() { - // Problem - std::unique_ptr child = std::make_unique(); - - // But shared_ptr will cleanup properly - std::shared_ptr child2 = std::make_shared(); -} -``` - -___ - -## Wirtualny destruktor - -```cpp -#include -#include -#include - -class Parent { -public: - Parent() { std::cout << "PARENT C'tor called\n"; } - virtual ~Parent() { std::cout << "PARENT D'tor caller\n"; } -}; - -class Child : public Parent { -public: - Child() { std::cout << "CHILD C'tor called\n"; } - ~Child() override { std::cout << "CHILD D'tor caller\n"; } -}; - -int main() { - std::unique_ptr child2 = std::make_unique(); -} -``` - -___ - -## Q&A - -___ - -## Zadanie 3 - -Napisz klasę `DryFruit`, która dziedziczyć będzie po klasie `Fruit`. - -Klasa ta powinna nadpisywać metody `getPrice()`, `getName()` oraz `operator--`. - -`operator--` powinien odejmować zużycie raz na 10 wywołań. - -Metoda `getPrice()` powinna zwracać trzykrotnie większą wartość w porównaniu do ceny bazowej. - -Przetestuj wywołania polimorficzne oraz podziel się wnioskami. diff --git a/module3/presentation_solutions.md b/module3/presentation_solutions.md deleted file mode 100644 index 24c5503b1..000000000 --- a/module3/presentation_solutions.md +++ /dev/null @@ -1,267 +0,0 @@ - - -# Programowanie obiektowe - -## Przykładowe rozwiązania - - - Coders School - - -___ - -## Disclaimer - -W PDFie te rozwiązania mogą być częściowo ucięte. Przejdź do lekcji na platformie lub na GitHubie, aby zobaczyć je w całości. - -___ - -### Zadanie 1 - -Cargo.hpp - -```cpp -bool operator==(const Cargo& cargo) const; -``` - -Cargo.cpp - -```cpp -bool Cargo::operator==(const Cargo& cargo) const { - return Cargo.getBasePrice() == base_price_ && Cargo.getName() == name_; -} -``` - -___ - -### Zadanie 2 - -Cargo.hpp - -```cpp -std::string getName() const; -size_t getAmount() const; -size_t getBasePrice() const; -``` - -Cargo.cpp - -```cpp -std::string Cargo::getName() const { return name_; } -size_t Cargo::getAmount() const { return amount_; } -size_t Cargo::getBasePrice() const { return base_price_; } -``` - -___ - -### Zadanie 3 #1 - -Island.hpp - -```cpp -#include -#include - -#include "Store.hpp" - -class Time; - -// Class describes position of island and available store. -class Island { -public: - class Coordinates { - public: - Coordinates() = default; - Coordinates(size_t pos_x, size_t pos_y) - : pos_x_(pos_x), pos_y_(pos_y) {} - - bool operator==(const Coordinates& lhs) const { - return this->pos_x_ == lhs.pos_x_ && this->pos_y_ == lhs.pos_y_; - } - - private: - const size_t pos_x_{0}; - const size_t pos_y_{0}; - }; - - Island() {} - Island(size_t pos_x, size_t pos_y, Time* time); - Coordinates getCoordinates() const { return position_; } - Store* getStore() const { return store_.get(); } - -private: - std::unique_ptr store_; - Coordinates position_; -}; -``` - -___ - -### Zadanie 3 #2 - -Island.cpp - -```cpp -#include "GTime.hpp" -#include "Island.hpp" - -Island::Island(size_t pos_x, size_t pos_y, Time* time) - : position_(Coordinates(pos_x, pos_y)), - store_(std::make_unique(time)) { -} -``` - -___ - -## Zadanie 4/5/6 #1 - -Map.hpp - -```cpp -class Time; - -// Class responsible for map generation which will be used to travel. -class Map { -public: - Map(Time* time); - void travel(Island* destination); - Island* getIsland(const Island::Coordinates& coordinate); - Island* getCurrentPosition() const { return current_position_; } - friend std::ostream& operator<<(std::ostream& out, const Map& map); - -private: - Island* current_position_; - std::vector islands_; -}; -``` - -___ - -### Zadanie 4/5/6 #2 - -Map.cpp - -```cpp -constexpr size_t kIslandNum = 10; -constexpr size_t kWidth = 50; -constexpr size_t kHeight = 50; - -Map::Map(Time* time) { - std::random_device rd; - std::mt19937 gen(rd()); - std::uniform_int_distribution<> widthGen(0, kWidth); - std::uniform_int_distribution<> heightGen(0, kHeight); - std::vector islands(kIslandNum); - std::vector> usedPositions; - - // Generate map - for (size_t i = 0; i < kIslandNum; ++i) { - while (true) { - size_t x = widthGen(gen); - size_t y = heightGen(gen); - if (std::find_if(begin(usedPositions), - end(usedPositions), - [x, y](const auto& pos) { - return pos.first == x && pos.second == y; - }) == std::end(usedPositions)) { - usedPositions.push_back({x, y}); - islands_.push_back(Island(x, y, time)); - break; - } - } - } - - current_position_ = &islands_.front(); -} - -Island* Map::getIsland(const Island::Coordinates& coordinate) { - auto island = std::find_if(std::begin(islands_), - std::end(islands_), - [&coordinate](const Island& island) { - return coordinate == island.GetCoordinates(); - }); - return island != std::end(islands_) ? &*island : nullptr; -} - -void Map::travel(Island* destination) { - current_position_ = destination; -} -``` - -___ - -### Zadanie7/8 #1 - -Player.hpp - -```cpp -#include - -#include "Cargo.hpp" -#include "Ship.hpp" - -class Time; - -// Class is responsible for every action made by player -class Player { -public: - Player(size_t money, Time* time); - virtual ~Player() = default; - - virtual size_t getAvailableSpace() const; - virtual size_t getMoney() const; - virtual size_t getSpeed() const; - virtual Cargo* getCargo(size_t index) const; - -private: - std::unique_ptr ship_; - size_t money_; - size_t available_space_; -}; - -``` - -___ - -### Zadanie 7/8 #2 - -Player.cpp - -```cpp -constexpr size_t kCapacity = 100; -constexpr size_t kCrew = 50; -constexpr size_t kSpeed = 10; -constexpr char kName[] = "BLACK WIDOW"; -constexpr size_t kId = 10; - -Player::Player(size_t money, Time* time) - : ship_(std::make_unique(kCapacity, kCrew, kSpeed, kName, kId, time, this)), - money_(money), - available_space_(kCapacity) { -} - -size_t Player::getMoney() const { - return money_; -} - -size_t Player::getSpeed() const { - return ship_->getSpeed(); -} - -Cargo* Player::getCargo(size_t index) const { - return ship_->getCargo(index); -} - -size_t Player::getAvailableSpace() const { - available_space_ = 0; - for (const auto cargo : ship_->getCargos()) { - available_space_ += cargo->getAmount(); - } - - return available_space_; -} -``` - -___ - -## Q&A diff --git a/module3/presentation_static.md b/module3/presentation_static.md deleted file mode 100644 index da4b1bb48..000000000 --- a/module3/presentation_static.md +++ /dev/null @@ -1,91 +0,0 @@ - - -# Programowanie obiektowe - -## Zmienne i funkcje statyczne - - - Coders School - - -___ - - -## "Zmienna lub stała klasy" - -Czasami chcielibyśmy przypisać jakąś stałą cechę do klasy. -Nie konkretnych obiektów, a klasy samej w sobie. -Np. każdy obiekt klasy ma nazwę "Object". - - -```cpp -class Object { -public: - std::string GetName() const { return name_; } - -private: - const std::string name_ = "Object"; -}; -``` - - -W celu otrzymania nazwy tego obiektu, musimy najpierw utworzyć obiekt, a następnie zawołać `getName()`. - - -```cpp -int main() { - Object obj; - std::cout << obj.getName() << '\n'; -} -``` - - -Nawet jeżeli obiekt zajmowałby dużo miejsca w pamięci a my chcielibyśmy tylko jego nazwę i tak musimy go utworzyć, ponieważ tylko na nim możemy zawołać metodę `getName()`. - - -___ - - -## `static` - -Rozwiązaniem tej uciążliwości jest `static`. Co więcej, problem ten możemy rozwiązać na 2 sposoby. Nie musimy w ten sposób tworzyć specjalnie obiektu, aby dostać się do cechy klasy, jaką jest jej nazwa. - -```cpp -class ObjectA { -public: - static std::string getName() { return "ObjectA"; } -}; - -class ObjectB { -public: - static std::string name_; -}; - -std::string ObjectB::name_{"ObjectB"}; - -int main() { - std::cout << ObjectA::getName() << '\n'; - std::cout << ObjectB::name_ << '\n'; - - return 0; -} -``` - - - - -___ - -## Q&A - -___ - -## Zadanie 4 - -Przekształć klasę bazową `Coordinates`, tak aby miała funkcję statyczną - -```cpp -static size_t distance(const Coordinates& lhs, const Coordinates& rhs) -``` - -Funkcja ta powinna zwracać dystans pomiędzy dwoma pozycjami. From 44b8e81a50eeffc853cc8fa3649e579d4fe198a4 Mon Sep 17 00:00:00 2001 From: Barbara Tessema <74462021+BarTes8@users.noreply.github.com> Date: Mon, 14 Jun 2021 13:44:44 +0200 Subject: [PATCH 004/151] Update 09-operators.md --- module1/09-operators.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module1/09-operators.md b/module1/09-operators.md index 395ce6e97..fc14da274 100644 --- a/module1/09-operators.md +++ b/module1/09-operators.md @@ -37,7 +37,7 @@ public: ```cpp int main() { - Person adam("Adam", 25) + Person adam("Adam", 25); ++adam; std::cout << adam.getAge() << '\n'; // prints 26 } From 124ad575f118ebf933d6eb324ba02ae905ea5858 Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Wed, 23 Jun 2021 14:24:33 +0200 Subject: [PATCH 005/151] task 4 --- shm/Map.cpp | 1 + shm/Map.hpp | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 shm/Map.cpp create mode 100644 shm/Map.hpp diff --git a/shm/Map.cpp b/shm/Map.cpp new file mode 100644 index 000000000..a06e820b8 --- /dev/null +++ b/shm/Map.cpp @@ -0,0 +1 @@ +#include "Map.hpp" \ No newline at end of file diff --git a/shm/Map.hpp b/shm/Map.hpp new file mode 100644 index 000000000..854b8f269 --- /dev/null +++ b/shm/Map.hpp @@ -0,0 +1,12 @@ +#pragma once + +#include +#include "Island.hpp" + +class Map { + public: + + private: + Island* current_pos_; + std::vector islands_; +}; \ No newline at end of file From 5904834330b4017028fc23f2968af02815b43c7e Mon Sep 17 00:00:00 2001 From: Crazyayane07 Date: Wed, 23 Jun 2021 15:46:08 +0200 Subject: [PATCH 006/151] added island and coordinates classes --- shm/coordinates.cpp | 1 + shm/coordinates.hpp | 25 +++++++++++++++++++++++++ shm/island.cpp | 1 + shm/island.hpp | 13 +++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 shm/coordinates.cpp create mode 100644 shm/coordinates.hpp create mode 100644 shm/island.cpp create mode 100644 shm/island.hpp diff --git a/shm/coordinates.cpp b/shm/coordinates.cpp new file mode 100644 index 000000000..3e56d6abe --- /dev/null +++ b/shm/coordinates.cpp @@ -0,0 +1 @@ +#include "coordinates.hpp" \ No newline at end of file diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp new file mode 100644 index 000000000..a474c4abb --- /dev/null +++ b/shm/coordinates.hpp @@ -0,0 +1,25 @@ +class Coordinates { +private: + float positionX_; + float positionY_; + +public: + Coordinates(float positionX, float positionY) { + positionX_ = positionX; + positionY_ = positionX; + } + Coordinates() + : Coordinates(0.f, 0.f) {} + + float GetPositionX() { return positionX_; } + float GetPositionY() { return positionY_; } + + void SetPositionX(const float& positionX) { positionX_ = positionX; } + void SetPositionY(const float& positionY) { positionY_ = positionY; } + + friend bool operator==(Coordinates& c1, Coordinates& c2); +}; + +bool operator==(Coordinates& c1, Coordinates& c2) { + return c1.GetPositionX() == c2.GetPositionX() && c1.GetPositionY() == c2.GetPositionY(); +} diff --git a/shm/island.cpp b/shm/island.cpp new file mode 100644 index 000000000..34cb44aa8 --- /dev/null +++ b/shm/island.cpp @@ -0,0 +1 @@ +#include "island.hpp" \ No newline at end of file diff --git a/shm/island.hpp b/shm/island.hpp new file mode 100644 index 000000000..93859d773 --- /dev/null +++ b/shm/island.hpp @@ -0,0 +1,13 @@ +#include "coordinates.hpp" + +class Island { +private: + Coordinates position_; + +public: + Island(Coordinates position) { + position_ = position; + } + Coordinates GetPosition() { return position_; } + void SetPosition(const Coordinates& position) { position_ = position; } +}; \ No newline at end of file From 1e0942d3dacb5dfcf6a69067f41a7c633a123b4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Wed, 23 Jun 2021 18:15:04 +0200 Subject: [PATCH 007/151] Adding ship class --- shm/ship.cpp | 1 + shm/ship.hpp | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 shm/ship.cpp create mode 100644 shm/ship.hpp diff --git a/shm/ship.cpp b/shm/ship.cpp new file mode 100644 index 000000000..953de94b7 --- /dev/null +++ b/shm/ship.cpp @@ -0,0 +1 @@ +#include "ship.hpp" \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp new file mode 100644 index 000000000..f26ac1429 --- /dev/null +++ b/shm/ship.hpp @@ -0,0 +1,45 @@ +#pragma once +#include + +class Ship { +public: + Ship() + : id_(-1) + {} + Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id) + : capacity_(capacity) + , maxCrew_(maxCrew) + , crew_(0) + , speed_(speed) + , name_(name) + , id_(id) + {} + Ship(int maxCrew, int speed, size_t id) + : Ship(0, maxCrew, speed, "", id) + {} + + void setName(const std::string& name) { name_ = name; } + + Ship& operator-=(size_t num) { + crew_ -= num; + return *this; + } + Ship& operator+=(size_t num) { + crew_ += num; + return *this; + } + + size_t getCapacity() const { return capacity_; } + size_t getMaxCrew() const { return maxCrew_; } + size_t getSpeed() const { return speed_; } + std::string getName() const { return name_; } + size_t getId() const { return id_; } + +private: + size_t capacity_; + size_t maxCrew_; + size_t crew_; + size_t speed_; + std::string name_; + const size_t id_; +}; From 65a6e338d80a98d9abf6afbb093999ffb7419295 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Wed, 23 Jun 2021 18:15:44 +0200 Subject: [PATCH 008/151] Adding cargo class --- shm/cargo.cpp | 1 + shm/cargo.hpp | 19 +++++++++++++++++++ shm/main.cpp | 2 ++ 3 files changed, 22 insertions(+) create mode 100644 shm/cargo.cpp create mode 100644 shm/cargo.hpp create mode 100644 shm/main.cpp diff --git a/shm/cargo.cpp b/shm/cargo.cpp new file mode 100644 index 000000000..f94e894f9 --- /dev/null +++ b/shm/cargo.cpp @@ -0,0 +1 @@ +#include "cargo.hpp" \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp new file mode 100644 index 000000000..7049ab811 --- /dev/null +++ b/shm/cargo.hpp @@ -0,0 +1,19 @@ +#pragma once +#include + +class Cargo { +public: + Cargo& operator+=(size_t amount) { + amount_ += amount; + return *this; + } + Cargo& operator-=(size_t amount) { + amount_ -= amount; + return *this; + } + +protected: + std::string name_; + size_t amount_; + size_t basePrice_; +}; diff --git a/shm/main.cpp b/shm/main.cpp new file mode 100644 index 000000000..8cabedb7f --- /dev/null +++ b/shm/main.cpp @@ -0,0 +1,2 @@ +#include "ship.hpp" +#include "cargo.hpp" \ No newline at end of file From f94483f09d1d99225643007d0c165c1579e0b02c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Wed, 23 Jun 2021 19:40:28 +0200 Subject: [PATCH 009/151] Adding comparison operator to class Cargo and little fixes --- shm/cargo.cpp | 23 ++++++++++++++++++++++- shm/cargo.hpp | 14 +++++--------- shm/ship.cpp | 14 +++++++++++++- shm/ship.hpp | 10 ++-------- 4 files changed, 42 insertions(+), 19 deletions(-) diff --git a/shm/cargo.cpp b/shm/cargo.cpp index f94e894f9..b7eb70303 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1 +1,22 @@ -#include "cargo.hpp" \ No newline at end of file +#include "cargo.hpp" + +Cargo &Cargo::operator+=(size_t amount) +{ + amount_ += amount; + return *this; +} + +Cargo &Cargo::operator-=(size_t amount) +{ + amount_ -= amount; + return *this; +} + +bool Cargo::operator==(const Cargo &cargo) const +{ + if (name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_) + { + return true; + } + return false; +} \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 7049ab811..fbed3dcf4 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -1,16 +1,12 @@ #pragma once #include -class Cargo { +class Cargo +{ public: - Cargo& operator+=(size_t amount) { - amount_ += amount; - return *this; - } - Cargo& operator-=(size_t amount) { - amount_ -= amount; - return *this; - } + Cargo &operator+=(size_t amount); + Cargo &operator-=(size_t amount); + bool operator==(const Cargo &cargo) const; protected: std::string name_; diff --git a/shm/ship.cpp b/shm/ship.cpp index 953de94b7..ec599bb17 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1 +1,13 @@ -#include "ship.hpp" \ No newline at end of file +#include "ship.hpp" + +Ship &Ship::operator-=(size_t num) +{ + crew_ -= num; + return *this; +} + +Ship &Ship::operator+=(size_t num) +{ + crew_ += num; + return *this; +} \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index f26ac1429..d81974c09 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -20,14 +20,8 @@ class Ship { void setName(const std::string& name) { name_ = name; } - Ship& operator-=(size_t num) { - crew_ -= num; - return *this; - } - Ship& operator+=(size_t num) { - crew_ += num; - return *this; - } + Ship& operator-=(size_t num); + Ship& operator+=(size_t num); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } From 814c82e742ed9de31e7224d3ca27a854c1b535b8 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 23 Jun 2021 21:02:05 +0200 Subject: [PATCH 010/151] Added cargo getters and constructor --- shm/cargo.hpp | 7 +++++++ shm/ship.hpp | 3 +++ 2 files changed, 10 insertions(+) diff --git a/shm/cargo.hpp b/shm/cargo.hpp index fbed3dcf4..d2f2d1b3d 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -8,6 +8,13 @@ class Cargo Cargo &operator-=(size_t amount); bool operator==(const Cargo &cargo) const; + std::string getName() {return name_;} + size_t getAmount() {return amount_;} + size_t getBasePrice() {return basePrice_;} + + Cargo(std::string name, size_t amount, size_t basePrice) + :name_(name), amount_(amount), basePrice_(basePrice){} + protected: std::string name_; size_t amount_; diff --git a/shm/ship.hpp b/shm/ship.hpp index d81974c09..bd7cb74cf 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -6,6 +6,7 @@ class Ship { Ship() : id_(-1) {} + Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id) : capacity_(capacity) , maxCrew_(maxCrew) @@ -14,10 +15,12 @@ class Ship { , name_(name) , id_(id) {} + Ship(int maxCrew, int speed, size_t id) : Ship(0, maxCrew, speed, "", id) {} + void setName(const std::string& name) { name_ = name; } Ship& operator-=(size_t num); From 4d803d1d2dec85708b741e29cfd75e852aa30b98 Mon Sep 17 00:00:00 2001 From: kondorski Date: Wed, 23 Jun 2021 23:38:15 +0200 Subject: [PATCH 011/151] Player class + main update --- shm/main.cpp | 8 +++++++- shm/player.cpp | 5 +++++ shm/player.hpp | 21 +++++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 shm/player.cpp create mode 100644 shm/player.hpp diff --git a/shm/main.cpp b/shm/main.cpp index 8cabedb7f..6fde2d86d 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,2 +1,8 @@ #include "ship.hpp" -#include "cargo.hpp" \ No newline at end of file +#include "cargo.hpp" +#include "player.hpp" + +int main() { + + return 0; +} \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp new file mode 100644 index 000000000..b39a87e9c --- /dev/null +++ b/shm/player.cpp @@ -0,0 +1,5 @@ +#include "player.hpp" + +Player::Player(std::unique_ptr ship, int money, int availableSpace) + : ship_(ship_.get()), money_(money), availableSpace_(availableSpace) + {} diff --git a/shm/player.hpp b/shm/player.hpp new file mode 100644 index 000000000..4538938ef --- /dev/null +++ b/shm/player.hpp @@ -0,0 +1,21 @@ +#pragma once +#include "ship.hpp" +#include "cargo.hpp" +#include + +class Player { +public: + std::unique_ptr getShip () { ship_.get(); } + int getMoney () { return money_; } + size_t getAvailableSpace () { return availableSpace_; } + + size_t getSpeed() const { return ship_.get()->getSpeed(); } + + + Player::Player(std::unique_ptr ship, int money, int availableSpace); + +private: + std::unique_ptr ship_ = std::make_unique(); + int money_; + size_t availableSpace_; +}; \ No newline at end of file From 80f9fc03ccc38df5bdb566ceae0033ea6b400920 Mon Sep 17 00:00:00 2001 From: kondorski Date: Fri, 25 Jun 2021 21:37:53 +0200 Subject: [PATCH 012/151] player refactor --- shm/player.cpp | 26 ++++++++++++++++++++++++-- shm/player.hpp | 23 ++++++++++++----------- 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/shm/player.cpp b/shm/player.cpp index b39a87e9c..3f6960398 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,5 +1,27 @@ #include "player.hpp" -Player::Player(std::unique_ptr ship, int money, int availableSpace) - : ship_(ship_.get()), money_(money), availableSpace_(availableSpace) +Player::Player(std::unique_ptr& ship, int money, int availableSpace) + : ship_(std::move(ship_)) + , money_(money) + , availableSpace_(availableSpace) {} + +std::unique_ptr& Player::getShip() { + return ship_; +} + +size_t Player::getMoney() { + return money_; +} + +size_t Player::getAvailableSpace () { + return availableSpace_; +} + +size_t Player::getSpeed() const { + return ship_->getSpeed(); +} + +Cargo* Player::getCargo(size_t index) const { + return ship_->getCargo()[index]; +} \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index 4538938ef..4a38458d7 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -1,21 +1,22 @@ #pragma once + #include "ship.hpp" #include "cargo.hpp" #include class Player { -public: - std::unique_ptr getShip () { ship_.get(); } - int getMoney () { return money_; } - size_t getAvailableSpace () { return availableSpace_; } - - size_t getSpeed() const { return ship_.get()->getSpeed(); } - - - Player::Player(std::unique_ptr ship, int money, int availableSpace); - private: - std::unique_ptr ship_ = std::make_unique(); + std::unique_ptr ship_; int money_; size_t availableSpace_; + +public: + Player(std::unique_ptr& ship, int money, int availableSpace); + + std::unique_ptr& getShip(); + size_t getMoney(); + size_t getAvailableSpace(); + + size_t getSpeed() const; + Cargo* getCargo(size_t index) const; }; \ No newline at end of file From 57d4b2187ded152b233709457d910b75329ec593 Mon Sep 17 00:00:00 2001 From: kondorski Date: Fri, 25 Jun 2021 21:42:10 +0200 Subject: [PATCH 013/151] ship class, added vector for cargo and addCargo function --- shm/ship.cpp | 4 ++++ shm/ship.hpp | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/shm/ship.cpp b/shm/ship.cpp index ec599bb17..be1188163 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -10,4 +10,8 @@ Ship &Ship::operator+=(size_t num) { crew_ += num; return *this; +} + +void Ship::addCargo(Cargo* item) { + shipCargo.push_back(item); } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index d81974c09..ca00c9142 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -1,5 +1,7 @@ #pragma once +#include "cargo.hpp" #include +#include class Ship { public: @@ -22,12 +24,15 @@ class Ship { Ship& operator-=(size_t num); Ship& operator+=(size_t num); + + void addCargo(Cargo* item); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } size_t getSpeed() const { return speed_; } std::string getName() const { return name_; } size_t getId() const { return id_; } + std::vector getCargo() const { return shipCargo;} private: size_t capacity_; @@ -36,4 +41,5 @@ class Ship { size_t speed_; std::string name_; const size_t id_; + std::vector shipCargo; }; From cff4651a4203761604fac60a1fe1510c5f0096e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sat, 26 Jun 2021 09:16:33 +0200 Subject: [PATCH 014/151] Fixes --- shm/cargo.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/shm/cargo.cpp b/shm/cargo.cpp index b7eb70303..be9b2cf42 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -14,9 +14,5 @@ Cargo &Cargo::operator-=(size_t amount) bool Cargo::operator==(const Cargo &cargo) const { - if (name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_) - { - return true; - } - return false; + return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; } \ No newline at end of file From 193c1b27271c6615ddff583a6b61a3781261e704 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sat, 26 Jun 2021 11:05:59 +0200 Subject: [PATCH 015/151] Checks --- shm/Map.hpp | 2 +- shm/coordinates.cpp | 8 +++++++- shm/coordinates.hpp | 9 ++++----- shm/island.hpp | 1 + shm/main.cpp | 25 +++++++++++++++++++++++-- 5 files changed, 36 insertions(+), 9 deletions(-) diff --git a/shm/Map.hpp b/shm/Map.hpp index 854b8f269..de7e31b8f 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,7 +1,7 @@ #pragma once #include -#include "Island.hpp" +#include "island.hpp" class Map { public: diff --git a/shm/coordinates.cpp b/shm/coordinates.cpp index 3e56d6abe..8613621ca 100644 --- a/shm/coordinates.cpp +++ b/shm/coordinates.cpp @@ -1 +1,7 @@ -#include "coordinates.hpp" \ No newline at end of file +#include "coordinates.hpp" + + +bool Coordinates::operator==(const Coordinates &c) const +{ + return positionX_ == c.positionX_ && positionY_ == c.positionY_; +} \ No newline at end of file diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index a474c4abb..b73c692f4 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -1,3 +1,5 @@ +#pragma once + class Coordinates { private: float positionX_; @@ -17,9 +19,6 @@ class Coordinates { void SetPositionX(const float& positionX) { positionX_ = positionX; } void SetPositionY(const float& positionY) { positionY_ = positionY; } - friend bool operator==(Coordinates& c1, Coordinates& c2); + bool operator==(const Coordinates& c1) const; + }; - -bool operator==(Coordinates& c1, Coordinates& c2) { - return c1.GetPositionX() == c2.GetPositionX() && c1.GetPositionY() == c2.GetPositionY(); -} diff --git a/shm/island.hpp b/shm/island.hpp index 93859d773..01d061c65 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -1,3 +1,4 @@ +#pragma once #include "coordinates.hpp" class Island { diff --git a/shm/main.cpp b/shm/main.cpp index 6fde2d86d..0a1c6f844 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,8 +1,29 @@ #include "ship.hpp" #include "cargo.hpp" #include "player.hpp" +#include "coordinates.hpp" +#include "island.hpp" +#include "Map.hpp" +#include -int main() { +int main() +{ + Cargo bananas("banany", 15, 150); + Cargo kryptonite("banany", 15, 150); + Cargo onion("cebula", 250, 1); + std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << std::endl; + std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << onion.getName() << std::endl; - return 0; + Coordinates miami(125.f, 174.f); + Coordinates breslau(180.f, 115.f); + Coordinates chicago(125.f, 174.f); + std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << std::endl; + + Ship Titanic(20, 90, 1); + Titanic.addCargo(&bananas); + + std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; + /*std::unique_ptr Rudy102 = std::make_unique(Titanic); + Player Zdzichu(Rudy102, 170, 3); + std::cout << Zdzichu.getShip()->getId() << "Utonął!";*/ } \ No newline at end of file From a099870d005052f20e0ecd69d9b4e61975bba0cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sat, 26 Jun 2021 11:54:25 +0200 Subject: [PATCH 016/151] Adding task 5 --- shm/Map.hpp | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/shm/Map.hpp b/shm/Map.hpp index de7e31b8f..27c6da20f 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,12 +1,33 @@ #pragma once - #include #include "island.hpp" +#include +#include + +class Map +{ +public: + Map() + { + islands_.reserve(10); + std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> distrib(-100, 100); -class Map { - public: + std::vector cords; + for (int i = 0; i < 10; i++) + { + Coordinates c(distrib(gen), distrib(gen)); + while (contains(cords, c)) + { + c.SetPositionX(distrib(gen)).SetPositionY(distrib(gen)); + } + islands_.push_back(c); + } + } - private: - Island* current_pos_; - std::vector islands_; -}; \ No newline at end of file +private: + Island *current_pos_; + std::vector islands_; + bool contains(std::vector, Coordinates); +}; From 3c0dd7d5c5a5e2eb82a33457cad7389a2c76f97b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sat, 26 Jun 2021 12:06:01 +0200 Subject: [PATCH 017/151] Adding function contains --- shm/Map.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index a06e820b8..e24e32099 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -1 +1,13 @@ -#include "Map.hpp" \ No newline at end of file +#include "Map.hpp" + +bool Map::contains(std::vector vec, Coordinates c) +{ + if (std::find(vec.begin(), vec.end(), c) != vec.end()) + { + return true; + } + else + { + return false; + } +} \ No newline at end of file From 8aee177bab6c244407e5ccacc83879d31e37fbe9 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 26 Jun 2021 12:37:39 +0200 Subject: [PATCH 018/151] Islands tryouts --- shm/Map.hpp | 30 ++++++++++++++++++++++++------ shm/main.cpp | 3 +++ 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/shm/Map.hpp b/shm/Map.hpp index 27c6da20f..a11313965 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -3,6 +3,8 @@ #include "island.hpp" #include #include +#include +#include class Map { @@ -11,20 +13,36 @@ class Map { islands_.reserve(10); std::random_device rd; + std::random_device rd2; std::mt19937 gen(rd()); + std::mt19937 gen2(rd2()); std::uniform_real_distribution<> distrib(-100, 100); + std::vector cords; for (int i = 0; i < 10; i++) { - Coordinates c(distrib(gen), distrib(gen)); - while (contains(cords, c)) - { - c.SetPositionX(distrib(gen)).SetPositionY(distrib(gen)); - } - islands_.push_back(c); + Coordinates c(distrib(gen), distrib(gen2)); + // while (contains(cords, c)) + // { + // c.SetPositionX(distrib(gen)).SetPositionY(distrib(gen)); + // } + islands_.push_back(Island (c)); + } + + } + + void DebugPrintIsland (){ + for (auto &el : islands_){ + std::cout << el.GetPosition().GetPositionX() << " | " << el.GetPosition().GetPositionY() << '\n'; } } +/* + tworzymym obiekt Coordinates + sprawdzić czy taki obiekt istnieje w wektorze + jeśli istnieje to generujemy kolejny + jeśli nie to dodajemy +*/ private: Island *current_pos_; diff --git a/shm/main.cpp b/shm/main.cpp index 0a1c6f844..d7f814576 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -26,4 +26,7 @@ int main() /*std::unique_ptr Rudy102 = std::make_unique(Titanic); Player Zdzichu(Rudy102, 170, 3); std::cout << Zdzichu.getShip()->getId() << "Utonął!";*/ + Map map; + map.DebugPrintIsland(); + } \ No newline at end of file From 47df11f34925dc25dbec282b742f530417ec8cf4 Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Sun, 27 Jun 2021 12:14:45 +0200 Subject: [PATCH 019/151] task 5 --- shm/Map.cpp | 38 ++++++++++++++++++++++++++++++-------- shm/Map.hpp | 45 ++++++++------------------------------------- 2 files changed, 38 insertions(+), 45 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index e24e32099..9ea289f10 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -1,13 +1,35 @@ #include "Map.hpp" -bool Map::contains(std::vector vec, Coordinates c) -{ - if (std::find(vec.begin(), vec.end(), c) != vec.end()) - { - return true; +Map::Map() { + islands_.reserve(ISLANDS_COUNT); + std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> distrib(COORDINATE_MIN , COORDINATE_MAX); + + std::vector cords; + for (int i = 0; i < ISLANDS_COUNT; i++) + { + Coordinates c; + c.SetPositionX(distrib(gen)); + c.SetPositionY(distrib(gen)); + + while (contains(cords, c)) + { + c.SetPositionX(distrib(gen)); + c.SetPositionY(distrib(gen)); + } + islands_.push_back(Island (c)); } - else - { - return false; +} +void Map::DebugPrintIsland () { + for (auto &el : islands_) { + std::cout << el.GetPosition().GetPositionX() << " | " << el.GetPosition().GetPositionY() << '\n'; + } +} + +bool Map::contains(std::vector vec, Coordinates c) { + if (std::find(vec.begin(), vec.end(), c) != vec.end()) { + return true; } + return false; } \ No newline at end of file diff --git a/shm/Map.hpp b/shm/Map.hpp index a11313965..ea08a139a 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -5,45 +5,16 @@ #include #include #include +#include "coordinates.hpp" -class Map -{ -public: - Map() - { - islands_.reserve(10); - std::random_device rd; - std::random_device rd2; - std::mt19937 gen(rd()); - std::mt19937 gen2(rd2()); - std::uniform_real_distribution<> distrib(-100, 100); - - - std::vector cords; - for (int i = 0; i < 10; i++) - { - Coordinates c(distrib(gen), distrib(gen2)); - // while (contains(cords, c)) - // { - // c.SetPositionX(distrib(gen)).SetPositionY(distrib(gen)); - // } - islands_.push_back(Island (c)); - } - - } - - void DebugPrintIsland (){ - for (auto &el : islands_){ - std::cout << el.GetPosition().GetPositionX() << " | " << el.GetPosition().GetPositionY() << '\n'; - } - } -/* - tworzymym obiekt Coordinates - sprawdzić czy taki obiekt istnieje w wektorze - jeśli istnieje to generujemy kolejny - jeśli nie to dodajemy -*/ +constexpr size_t COORDINATE_MIN = 0; +constexpr size_t COORDINATE_MAX = 99; +constexpr size_t ISLANDS_COUNT = 10; +class Map { +public: + Map(); + void DebugPrintIsland(); private: Island *current_pos_; std::vector islands_; From 8d987b83f5f8a3704d92af38b60901c51edd63c4 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 27 Jun 2021 15:39:02 +0200 Subject: [PATCH 020/151] tasks 5,6,7 --- shm/Map.cpp | 15 ++++++++++++++- shm/Map.hpp | 2 ++ shm/coordinates.hpp | 2 +- shm/island.hpp | 2 +- shm/main.cpp | 13 ++++++++++--- shm/player.cpp | 2 +- 6 files changed, 29 insertions(+), 7 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index 9ea289f10..c949f9d74 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -23,7 +23,7 @@ Map::Map() { } void Map::DebugPrintIsland () { for (auto &el : islands_) { - std::cout << el.GetPosition().GetPositionX() << " | " << el.GetPosition().GetPositionY() << '\n'; + std::cout << el.getPosition().GetPositionX() << " | " << el.getPosition().GetPositionY() << '\n'; } } @@ -32,4 +32,17 @@ bool Map::contains(std::vector vec, Coordinates c) { return true; } return false; +} + +Island* Map::getIsland(const Coordinates& coordinate){ + for(int i = 0; i < islands_.size(); i++){ + if(islands_[i].getPosition() == coordinate){ + return &islands_[i]; + } + } + return nullptr; +} + +void Map::addIsland(Coordinates& coordinate){ + islands_.push_back(Island (coordinate)); } \ No newline at end of file diff --git a/shm/Map.hpp b/shm/Map.hpp index ea08a139a..ca6cceb76 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -15,6 +15,8 @@ class Map { public: Map(); void DebugPrintIsland(); + Island* getIsland(const Coordinates& coordinate); + void addIsland(Coordinates& coordinate); private: Island *current_pos_; std::vector islands_; diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index b73c692f4..9614ccad6 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -8,7 +8,7 @@ class Coordinates { public: Coordinates(float positionX, float positionY) { positionX_ = positionX; - positionY_ = positionX; + positionY_ = positionY; } Coordinates() : Coordinates(0.f, 0.f) {} diff --git a/shm/island.hpp b/shm/island.hpp index 01d061c65..f2a79cea3 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -9,6 +9,6 @@ class Island { Island(Coordinates position) { position_ = position; } - Coordinates GetPosition() { return position_; } + Coordinates getPosition() { return position_; } void SetPosition(const Coordinates& position) { position_ = position; } }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index d7f814576..629c5d87c 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -23,10 +23,17 @@ int main() Titanic.addCargo(&bananas); std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; - /*std::unique_ptr Rudy102 = std::make_unique(Titanic); - Player Zdzichu(Rudy102, 170, 3); - std::cout << Zdzichu.getShip()->getId() << "Utonął!";*/ + // std::unique_ptr Rudy102 = std::make_unique(); + // Player Zdzichu(Rudy102, 170, 3); + // std::cout << Zdzichu.getShip()->getId() << "Utonął!"; + auto ship {std::make_unique(1, 2, 3)}; + Player player (ship, 1, 1); + std::cout << player.getShip()->getSpeed() << '\n'; + Map map; map.DebugPrintIsland(); + map.addIsland(miami); + Island* is = map.getIsland(miami); + std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY(); } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index 3f6960398..b72a5d95b 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,7 +1,7 @@ #include "player.hpp" Player::Player(std::unique_ptr& ship, int money, int availableSpace) - : ship_(std::move(ship_)) + : ship_(std::move(ship)) , money_(money) , availableSpace_(availableSpace) {} From 5070b12f79d5bba3c6be086d438c303553d1f05f Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 27 Jun 2021 16:22:35 +0200 Subject: [PATCH 021/151] zepsuty vector --- shm/main.cpp | 10 ++++++++-- shm/player.cpp | 12 +++++++++++- shm/player.hpp | 3 ++- shm/ship.hpp | 2 +- 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index 629c5d87c..4f83beb5a 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -21,14 +21,20 @@ int main() Ship Titanic(20, 90, 1); Titanic.addCargo(&bananas); + std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; + std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; // std::unique_ptr Rudy102 = std::make_unique(); // Player Zdzichu(Rudy102, 170, 3); // std::cout << Zdzichu.getShip()->getId() << "Utonął!"; - auto ship {std::make_unique(1, 2, 3)}; + auto ship = std::make_unique(1, 2, 3); + ship->addCargo(&bananas); Player player (ship, 1, 1); - std::cout << player.getShip()->getSpeed() << '\n'; + std::cout << "Vector size: " << ship->getCargo().size() << '\n'; + // std::cout << "Vector size: " << ship.get()->getCargo().size() << '\n'; // std::cout << "Vector size: " << ship.get()->getCargo().size() << '\n'; + // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + // std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; Map map; map.DebugPrintIsland(); diff --git a/shm/player.cpp b/shm/player.cpp index b72a5d95b..993bc08f8 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -10,7 +10,7 @@ std::unique_ptr& Player::getShip() { return ship_; } -size_t Player::getMoney() { +int Player::getMoney() { return money_; } @@ -24,4 +24,14 @@ size_t Player::getSpeed() const { Cargo* Player::getCargo(size_t index) const { return ship_->getCargo()[index]; +} + +void Player::calculateAvailableSpace() { + // size_t cargoAmount = 0; + // std::vector shipCargo = ship_.; + // for(int i = 0; i < shipCargo.size(); i++){ + // cargoAmount += getCargo(i)->getAmount(); + // } + + // availableSpace_ = ship_.getCapacity() - cargoAmount; } \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index 4a38458d7..9738c17b5 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -9,12 +9,13 @@ class Player { std::unique_ptr ship_; int money_; size_t availableSpace_; + void calculateAvailableSpace(); public: Player(std::unique_ptr& ship, int money, int availableSpace); std::unique_ptr& getShip(); - size_t getMoney(); + int getMoney(); size_t getAvailableSpace(); size_t getSpeed() const; diff --git a/shm/ship.hpp b/shm/ship.hpp index e18028ef3..9474b1f1a 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -35,7 +35,7 @@ class Ship { size_t getSpeed() const { return speed_; } std::string getName() const { return name_; } size_t getId() const { return id_; } - std::vector getCargo() const { return shipCargo;} + std::vector getCargo() { return shipCargo;} private: size_t capacity_; From 5c098519a6bb919b6f659b8687362515c0b041a4 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 27 Jun 2021 16:46:09 +0200 Subject: [PATCH 022/151] all done! --- shm/main.cpp | 19 +++++++++---------- shm/player.cpp | 23 ++++++++++++++--------- shm/player.hpp | 2 +- 3 files changed, 24 insertions(+), 20 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index 4f83beb5a..2a305b345 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -25,17 +25,16 @@ int main() std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; - // std::unique_ptr Rudy102 = std::make_unique(); - // Player Zdzichu(Rudy102, 170, 3); - // std::cout << Zdzichu.getShip()->getId() << "Utonął!"; - auto ship = std::make_unique(1, 2, 3); - ship->addCargo(&bananas); + + auto ship = std::make_unique(20, 1, 2, "titanic", 3); + ship->addCargo(&bananas); + size_t shipCargoSize = ship->getCargo().size(); Player player (ship, 1, 1); - std::cout << "Vector size: " << ship->getCargo().size() << '\n'; - // std::cout << "Vector size: " << ship.get()->getCargo().size() << '\n'; // std::cout << "Vector size: " << ship.get()->getCargo().size() << '\n'; - // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - // std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; - + std::cout << "Vector size: " << shipCargoSize << '\n'; + std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; + std::cout << "Available space: " << player.getAvailableSpace() << '\n'; + Map map; map.DebugPrintIsland(); diff --git a/shm/player.cpp b/shm/player.cpp index 993bc08f8..231769cd2 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -3,7 +3,7 @@ Player::Player(std::unique_ptr& ship, int money, int availableSpace) : ship_(std::move(ship)) , money_(money) - , availableSpace_(availableSpace) + , availableSpace_(calculateAvailableSpace()) {} std::unique_ptr& Player::getShip() { @@ -26,12 +26,17 @@ Cargo* Player::getCargo(size_t index) const { return ship_->getCargo()[index]; } -void Player::calculateAvailableSpace() { - // size_t cargoAmount = 0; - // std::vector shipCargo = ship_.; - // for(int i = 0; i < shipCargo.size(); i++){ - // cargoAmount += getCargo(i)->getAmount(); - // } - - // availableSpace_ = ship_.getCapacity() - cargoAmount; +size_t Player::calculateAvailableSpace() { + int cargoAmount = 0; + int capacity = ship_->getCapacity(); + std::vector shipCargo = ship_->getCargo(); + for(int i = 0; i < shipCargo.size(); i++){ + cargoAmount += getCargo(i)->getAmount(); + } + if(capacity - cargoAmount < 0) + { + return 0; + } + + return capacity - cargoAmount; } \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index 9738c17b5..00701cfeb 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -9,7 +9,7 @@ class Player { std::unique_ptr ship_; int money_; size_t availableSpace_; - void calculateAvailableSpace(); + size_t calculateAvailableSpace(); public: Player(std::unique_ptr& ship, int money, int availableSpace); From 7fec7d3a599274fd35453ba1ccc05ee1d213ed56 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 3 Jul 2021 10:52:28 +0200 Subject: [PATCH 023/151] Fix pt 1 --- shm/Map.cpp | 30 ++++++++++++++++++++---------- shm/Map.hpp | 12 +++++------- shm/example | Bin 0 -> 105800 bytes shm/main.cpp | 10 ++++++---- shm/player.cpp | 6 ++++-- shm/player.hpp | 8 ++++---- shm/ship.hpp | 6 ++++-- 7 files changed, 43 insertions(+), 29 deletions(-) create mode 100644 shm/example diff --git a/shm/Map.cpp b/shm/Map.cpp index c949f9d74..d7fe56da0 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -1,17 +1,27 @@ +#include +#include +#include +#include + +#include "coordinates.hpp" +#include "island.hpp" #include "Map.hpp" Map::Map() { + SetUpRandomIsland(); +} + +void Map::SetUpRandomIsland(){ islands_.reserve(ISLANDS_COUNT); std::random_device rd; std::mt19937 gen(rd()); std::uniform_real_distribution<> distrib(COORDINATE_MIN , COORDINATE_MAX); std::vector cords; + cords.reserve(ISLANDS_COUNT); for (int i = 0; i < ISLANDS_COUNT; i++) { - Coordinates c; - c.SetPositionX(distrib(gen)); - c.SetPositionY(distrib(gen)); + Coordinates c ((float)distrib(gen), (float)distrib(gen)); while (contains(cords, c)) { @@ -19,22 +29,22 @@ Map::Map() { c.SetPositionY(distrib(gen)); } islands_.push_back(Island (c)); - } + cords.push_back(c); + } } + void Map::DebugPrintIsland () { for (auto &el : islands_) { - std::cout << el.getPosition().GetPositionX() << " | " << el.getPosition().GetPositionY() << '\n'; + std::cout << std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; } } -bool Map::contains(std::vector vec, Coordinates c) { - if (std::find(vec.begin(), vec.end(), c) != vec.end()) { - return true; - } - return false; +bool Map::contains(const std::vector& vec, const Coordinates& c) { + return std::find(vec.begin(), vec.end(), c) != vec.end(); } Island* Map::getIsland(const Coordinates& coordinate){ + // Find way to make find_if works: return std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island i) { return i.getPosition() == coordinate; }); for(int i = 0; i < islands_.size(); i++){ if(islands_[i].getPosition() == coordinate){ return &islands_[i]; diff --git a/shm/Map.hpp b/shm/Map.hpp index ca6cceb76..eebb817c6 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,16 +1,13 @@ #pragma once #include -#include "island.hpp" -#include -#include -#include -#include -#include "coordinates.hpp" constexpr size_t COORDINATE_MIN = 0; constexpr size_t COORDINATE_MAX = 99; constexpr size_t ISLANDS_COUNT = 10; +class Island; +class Coordinates; + class Map { public: Map(); @@ -20,5 +17,6 @@ class Map { private: Island *current_pos_; std::vector islands_; - bool contains(std::vector, Coordinates); + bool contains(const std::vector& vec, const Coordinates& c); + void SetUpRandomIsland(); }; diff --git a/shm/example b/shm/example new file mode 100644 index 0000000000000000000000000000000000000000..cb6ccb14e08a2fcd6c06767aa902aba21ca1472f GIT binary patch literal 105800 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�{hq;vjx)W-Vo6Zrx5xR?&VEcE%JMgXes=h| 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 $&~ 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 literal 0 HcmV?d00001 diff --git a/shm/main.cpp b/shm/main.cpp index 2a305b345..4770ef04d 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,10 +1,12 @@ -#include "ship.hpp" + +#include + #include "cargo.hpp" -#include "player.hpp" #include "coordinates.hpp" #include "island.hpp" #include "Map.hpp" -#include +#include "player.hpp" +#include "ship.hpp" int main() { @@ -29,7 +31,7 @@ int main() auto ship = std::make_unique(20, 1, 2, "titanic", 3); ship->addCargo(&bananas); size_t shipCargoSize = ship->getCargo().size(); - Player player (ship, 1, 1); + Player player (std::move(ship), 1, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; diff --git a/shm/player.cpp b/shm/player.cpp index 231769cd2..df7bc0592 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,12 +1,14 @@ +#include "cargo.hpp" #include "player.hpp" +#include "ship.hpp" -Player::Player(std::unique_ptr& ship, int money, int availableSpace) +Player::Player(std::unique_ptr ship, int money, int availableSpace) : ship_(std::move(ship)) , money_(money) , availableSpace_(calculateAvailableSpace()) {} -std::unique_ptr& Player::getShip() { +const std::unique_ptr& Player::getShip() { return ship_; } diff --git a/shm/player.hpp b/shm/player.hpp index 00701cfeb..f29459b1a 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -1,8 +1,8 @@ #pragma once -#include "ship.hpp" -#include "cargo.hpp" #include +class Ship; +class Cargo; class Player { private: @@ -12,9 +12,9 @@ class Player { size_t calculateAvailableSpace(); public: - Player(std::unique_ptr& ship, int money, int availableSpace); + Player(std::unique_ptr ship, int money, int availableSpace); - std::unique_ptr& getShip(); + const std::unique_ptr& getShip(); int getMoney(); size_t getAvailableSpace(); diff --git a/shm/ship.hpp b/shm/ship.hpp index 9474b1f1a..a12d2830d 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -1,7 +1,9 @@ #pragma once -#include "cargo.hpp" -#include + #include +#include + +#include "cargo.hpp" class Ship { public: From f1965b3128dcb4f5c2857d238b3512037d2fab6f Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 3 Jul 2021 11:26:54 +0200 Subject: [PATCH 024/151] fixes part 2 --- shm/Map.cpp | 14 ++++++++++---- shm/Map.hpp | 5 +---- shm/cargo.cpp | 10 +++++++++- shm/cargo.hpp | 6 +++--- shm/coordinates.hpp | 17 +++++++++-------- shm/example | Bin 105800 -> 105784 bytes shm/island.cpp | 6 +++++- shm/island.hpp | 5 ++--- shm/main.cpp | 4 +++- shm/player.hpp | 4 ++-- shm/ship.hpp | 1 + 11 files changed, 45 insertions(+), 27 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index d7fe56da0..9be0d2cd2 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -7,19 +7,25 @@ #include "island.hpp" #include "Map.hpp" +namespace constVariables{ + constexpr size_t COORDINATE_MIN = 0; + constexpr size_t COORDINATE_MAX = 99; + constexpr size_t ISLANDS_COUNT = 10; +} + Map::Map() { SetUpRandomIsland(); } void Map::SetUpRandomIsland(){ - islands_.reserve(ISLANDS_COUNT); + islands_.reserve(constVariables::ISLANDS_COUNT); std::random_device rd; std::mt19937 gen(rd()); - std::uniform_real_distribution<> distrib(COORDINATE_MIN , COORDINATE_MAX); + std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN , constVariables::COORDINATE_MAX); std::vector cords; - cords.reserve(ISLANDS_COUNT); - for (int i = 0; i < ISLANDS_COUNT; i++) + cords.reserve(constVariables::ISLANDS_COUNT); + for (int i = 0; i < constVariables::ISLANDS_COUNT; i++) { Coordinates c ((float)distrib(gen), (float)distrib(gen)); diff --git a/shm/Map.hpp b/shm/Map.hpp index eebb817c6..a1686efaa 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,13 +1,10 @@ #pragma once #include -constexpr size_t COORDINATE_MIN = 0; -constexpr size_t COORDINATE_MAX = 99; -constexpr size_t ISLANDS_COUNT = 10; - class Island; class Coordinates; +//Class responsible for representing map in game class Map { public: Map(); diff --git a/shm/cargo.cpp b/shm/cargo.cpp index be9b2cf42..7380e6b96 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1,5 +1,8 @@ +#include #include "cargo.hpp" +Cargo::Cargo(std::string name, size_t amount, size_t basePrice) :name_(name), amount_(amount), basePrice_(basePrice){} + Cargo &Cargo::operator+=(size_t amount) { amount_ += amount; @@ -8,7 +11,12 @@ Cargo &Cargo::operator+=(size_t amount) Cargo &Cargo::operator-=(size_t amount) { - amount_ -= amount; + if(amount_ < amount){ + amount_ = 0; + } + else{ + amount_ -= amount; + } return *this; } diff --git a/shm/cargo.hpp b/shm/cargo.hpp index d2f2d1b3d..b3a2cb2d4 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -1,6 +1,7 @@ #pragma once #include +//Class responsible for representing cargo in game class Cargo { public: @@ -8,12 +9,11 @@ class Cargo Cargo &operator-=(size_t amount); bool operator==(const Cargo &cargo) const; - std::string getName() {return name_;} + const std::string& getName() {return name_;} // TO DO: test deleting Cargo object size_t getAmount() {return amount_;} size_t getBasePrice() {return basePrice_;} - Cargo(std::string name, size_t amount, size_t basePrice) - :name_(name), amount_(amount), basePrice_(basePrice){} + Cargo(std::string name, size_t amount, size_t basePrice); protected: std::string name_; diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index 9614ccad6..1d1dbf433 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -1,23 +1,24 @@ #pragma once +//Class responsible for coordinates on map class Coordinates { private: - float positionX_; - float positionY_; + int positionX_; + int positionY_; public: - Coordinates(float positionX, float positionY) { + Coordinates(int positionX, int positionY) { positionX_ = positionX; positionY_ = positionY; } Coordinates() - : Coordinates(0.f, 0.f) {} + : Coordinates(0, 0) {} - float GetPositionX() { return positionX_; } - float GetPositionY() { return positionY_; } + const int GetPositionX() { return positionX_; } + const int GetPositionY() { return positionY_; } - void SetPositionX(const float& positionX) { positionX_ = positionX; } - void SetPositionY(const float& positionY) { positionY_ = positionY; } + void SetPositionX(const int& positionX) { positionX_ = positionX; } + void SetPositionY(const int& positionY) { positionY_ = positionY; } bool operator==(const Coordinates& c1) const; diff --git a/shm/example b/shm/example index cb6ccb14e08a2fcd6c06767aa902aba21ca1472f..e756948673ee88d4a0542067fe34fa8522b7b29b 100644 GIT binary patch delta 28570 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 diff --git a/shm/island.cpp b/shm/island.cpp index 34cb44aa8..222a074a9 100644 --- a/shm/island.cpp +++ b/shm/island.cpp @@ -1 +1,5 @@ -#include "island.hpp" \ No newline at end of file +#include "island.hpp" + +Island::Island(Coordinates position) { + position_ = position; +} \ No newline at end of file diff --git a/shm/island.hpp b/shm/island.hpp index f2a79cea3..c78098690 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -1,14 +1,13 @@ #pragma once #include "coordinates.hpp" +//Class responsible for representing island in game class Island { private: Coordinates position_; public: - Island(Coordinates position) { - position_ = position; - } + explicit Island(Coordinates position); Coordinates getPosition() { return position_; } void SetPosition(const Coordinates& position) { position_ = position; } }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 4770ef04d..c53af8a8d 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -16,6 +16,8 @@ int main() std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << std::endl; std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << onion.getName() << std::endl; + bananas -= 100; + Coordinates miami(125.f, 174.f); Coordinates breslau(180.f, 115.f); Coordinates chicago(125.f, 174.f); @@ -42,5 +44,5 @@ int main() map.addIsland(miami); Island* is = map.getIsland(miami); - std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY(); + std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; } \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index f29459b1a..e3c4fefbe 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -3,13 +3,13 @@ #include class Ship; class Cargo; - +//Class responsible for handling Player object class Player { private: std::unique_ptr ship_; int money_; size_t availableSpace_; - size_t calculateAvailableSpace(); + size_t calculateAvailableSpace(); //calculates space available on the ship based on cargo and ship capacity public: Player(std::unique_ptr ship, int money, int availableSpace); diff --git a/shm/ship.hpp b/shm/ship.hpp index a12d2830d..4672cdeff 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -5,6 +5,7 @@ #include "cargo.hpp" +//Class responsible for representing ship in game class Ship { public: Ship() From ec032820b20a7259133d1951ed4de1abbaaf359a Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 3 Jul 2021 12:06:21 +0200 Subject: [PATCH 025/151] fixy part 3 --- shm/example | Bin 105784 -> 106064 bytes shm/player.cpp | 27 ++++++++++++++++++++------- shm/ship.cpp | 7 ++++++- 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/shm/example b/shm/example index e756948673ee88d4a0542067fe34fa8522b7b29b..cf953af8cec768f7829116f0d5e14d27fc16de8b 100644 GIT binary patch delta 23790 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 delta 23118 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 gs59>~t)5Tc%93saE;_0Sa4}OaK4? diff --git a/shm/player.cpp b/shm/player.cpp index df7bc0592..566cd45f7 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,3 +1,5 @@ +#include + #include "cargo.hpp" #include "player.hpp" #include "ship.hpp" @@ -20,25 +22,36 @@ size_t Player::getAvailableSpace () { return availableSpace_; } -size_t Player::getSpeed() const { - return ship_->getSpeed(); +size_t Player::getSpeed() const { + if(ship_) + { + return ship_->getSpeed(); + } + return 0; // TODO add something better } Cargo* Player::getCargo(size_t index) const { - return ship_->getCargo()[index]; + if(ship_) + { + return ship_->getCargo().at(index); + } + return nullptr; // TODO add something better } size_t Player::calculateAvailableSpace() { int cargoAmount = 0; int capacity = ship_->getCapacity(); std::vector shipCargo = ship_->getCargo(); - for(int i = 0; i < shipCargo.size(); i++){ + + //cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo c) { return i += c.getAmount(); }); TODO + + for(int i = 0; i < shipCargo.size(); i++){ cargoAmount += getCargo(i)->getAmount(); - } + } if(capacity - cargoAmount < 0) { return 0; } - + return capacity - cargoAmount; -} \ No newline at end of file +} diff --git a/shm/ship.cpp b/shm/ship.cpp index be1188163..287e38a3c 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -2,7 +2,12 @@ Ship &Ship::operator-=(size_t num) { - crew_ -= num; + if(crew_ < num){ + crew_ = 0; + } + else{ + crew_ -= num; + } return *this; } From 17d1ad60112ee35bb022cb55893d7904426dce92 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 4 Jul 2021 19:37:46 +0200 Subject: [PATCH 026/151] getIsland find if working --- shm/Map.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index 9be0d2cd2..44c8cf0f7 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -50,11 +50,10 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { } Island* Map::getIsland(const Coordinates& coordinate){ - // Find way to make find_if works: return std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island i) { return i.getPosition() == coordinate; }); - for(int i = 0; i < islands_.size(); i++){ - if(islands_[i].getPosition() == coordinate){ - return &islands_[i]; - } + auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return i.getPosition() == coordinate; }); + if(selectedIsland != islands_.end()) + { + return &(*selectedIsland); } return nullptr; } From 40d94488a7a6f2bbac7d88782f58b78f4851994c Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 5 Jul 2021 18:52:09 +0200 Subject: [PATCH 027/151] formated main.cpp --- shm/main.cpp | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index c53af8a8d..513a189d9 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -10,39 +10,46 @@ int main() { + std::cout << "Test Cargo" << '\n'; + Cargo bananas("banany", 15, 150); Cargo kryptonite("banany", 15, 150); Cargo onion("cebula", 250, 1); - std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << std::endl; - std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << onion.getName() << std::endl; + std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << "\n"; + std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << bananas.getName() << "\n\n"; bananas -= 100; + std::cout << "Test islands" << '\n'; + Coordinates miami(125.f, 174.f); Coordinates breslau(180.f, 115.f); Coordinates chicago(125.f, 174.f); - std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << std::endl; + std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; + + std::cout << "Test ship" << '\n'; Ship Titanic(20, 90, 1); Titanic.addCargo(&bananas); std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; - std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->addCargo(&bananas); + ship->addCargo(&bananas); size_t shipCargoSize = ship->getCargo().size(); - Player player (std::move(ship), 1, 1); + Player player(std::move(ship), 1, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; - std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; - std::cout << "Available space: " << player.getAvailableSpace() << '\n'; + std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; + std::cout << "Random islands positions: X | Y" << '\n'; Map map; map.DebugPrintIsland(); - + + std::cout << '\n' << "Get miami position: X | Y" << '\n'; map.addIsland(miami); - Island* is = map.getIsland(miami); + Island *is = map.getIsland(miami); std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; } \ No newline at end of file From 711f112aecda3c1b8396830d9efe4b0f3b89ed2e Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Tue, 6 Jul 2021 21:28:04 +0200 Subject: [PATCH 028/151] Added std::accumulate, changed cargo bananas to cotton beacuse of an issue --- shm/main.cpp | 31 ++++++++++++++++++++----------- shm/player.cpp | 27 +++++++++++++-------------- shm/player.hpp | 4 +++- shm/ship.cpp | 2 +- 4 files changed, 37 insertions(+), 27 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index 513a189d9..e81a44b1f 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -10,15 +10,19 @@ int main() { + + + std::cout << "Test Cargo" << '\n'; - Cargo bananas("banany", 15, 150); - Cargo kryptonite("banany", 15, 150); - Cargo onion("cebula", 250, 1); - std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << "\n"; - std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << bananas.getName() << "\n\n"; + Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? + Cargo kryptonite("krypton", 20, 200); // ( name, amount, basePrice) + Cargo onion("cebula", 250, 1); // ( name, amount, basePrice) - bananas -= 100; + std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; + std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; + + cotton -= 100; std::cout << "Test islands" << '\n'; @@ -27,21 +31,26 @@ int main() Coordinates chicago(125.f, 174.f); std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; - std::cout << "Test ship" << '\n'; + std::cout << "Test ship Titanic" << '\n'; Ship Titanic(20, 90, 1); - Titanic.addCargo(&bananas); + Titanic.addCargo(&kryptonite); std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; - std::cout << Titanic.getCargo()[0]->getAmount() << std::endl; + std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; + + std::cout << "Test make_unique ptr ship" << '\n'; auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->addCargo(&bananas); + ship->addCargo(&cotton); size_t shipCargoSize = ship->getCargo().size(); Player player(std::move(ship), 1, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - std::cout << "Player's ship cargo: " << player.getCargo(0)->getName() << '\n'; + std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; + std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; + std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; + std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; std::cout << "Random islands positions: X | Y" << '\n'; diff --git a/shm/player.cpp b/shm/player.cpp index 566cd45f7..afafaceda 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,5 +1,5 @@ #include - +#include #include "cargo.hpp" #include "player.hpp" #include "ship.hpp" @@ -38,20 +38,19 @@ Cargo* Player::getCargo(size_t index) const { return nullptr; // TODO add something better } + size_t Player::calculateAvailableSpace() { - int cargoAmount = 0; - int capacity = ship_->getCapacity(); - std::vector shipCargo = ship_->getCargo(); - - //cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo c) { return i += c.getAmount(); }); TODO - - for(int i = 0; i < shipCargo.size(); i++){ - cargoAmount += getCargo(i)->getAmount(); - } - if(capacity - cargoAmount < 0) - { + + int cargoAmount = 0; + int capacity = ship_->getCapacity(); + std::vector shipCargo = ship_->getCargo(); + + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) { return i += c->getAmount(); }); + std::cout << "Cargo amount(po obliczeniach): "<< capacity - cargoAmount << '\n'; + + if(capacity - cargoAmount < 0){ + std::cout << "Miałeś za mały statek biedaku teraz masz 0 pojemności bo ci zatonął" << '\n'; return 0; } - - return capacity - cargoAmount; + return capacity - cargoAmount; } diff --git a/shm/player.hpp b/shm/player.hpp index e3c4fefbe..5206f7527 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -20,4 +20,6 @@ class Player { size_t getSpeed() const; Cargo* getCargo(size_t index) const; -}; \ No newline at end of file + + +}; diff --git a/shm/ship.cpp b/shm/ship.cpp index 287e38a3c..2439bfe2d 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -18,5 +18,5 @@ Ship &Ship::operator+=(size_t num) } void Ship::addCargo(Cargo* item) { - shipCargo.push_back(item); + shipCargo.emplace_back(item); } \ No newline at end of file From 65e4ea05196c63fa406e2152309576035f048b58 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 7 Jul 2021 18:27:11 +0200 Subject: [PATCH 029/151] Changes in getCargo. getSpeed --- shm/cargo.cpp | 11 +++++++++++ shm/main.cpp | 2 +- shm/player.cpp | 7 +++++-- shm/player.hpp | 1 + 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 7380e6b96..c4a648a9a 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1,10 +1,21 @@ #include #include "cargo.hpp" +#include "player.hpp" +#include "ship.hpp" Cargo::Cargo(std::string name, size_t amount, size_t basePrice) :name_(name), amount_(amount), basePrice_(basePrice){} +/*size_t Player::gettingCargoAmount() +{ + std::vector shipCargo = ship_->getCargo(); +} +*/ Cargo &Cargo::operator+=(size_t amount) { + auto ship = std::make_unique(20, 1, 2, "titanic", 3); + Player player(std::move(ship), 1, 1); + + //if(amount + amount > player.getCargo(0)->getAmount()) amount_ += amount; return *this; } diff --git a/shm/main.cpp b/shm/main.cpp index e81a44b1f..e5c4cdd46 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -22,7 +22,7 @@ int main() std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; - cotton -= 100; + //cotton -= 100; std::cout << "Test islands" << '\n'; diff --git a/shm/player.cpp b/shm/player.cpp index afafaceda..23f08a76b 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -23,18 +23,21 @@ size_t Player::getAvailableSpace () { } size_t Player::getSpeed() const { - if(ship_) + if(ship_->getSpeed() > 0) { return ship_->getSpeed(); } + + std::cout << "Something went wrong, we set your speed at 0" << '\n'; return 0; // TODO add something better } Cargo* Player::getCargo(size_t index) const { - if(ship_) + if(ship_->getCargo().at(index) > 0) { return ship_->getCargo().at(index); } + std::cout << "Something went wrong and you lost your cargo" << '\n'; return nullptr; // TODO add something better } diff --git a/shm/player.hpp b/shm/player.hpp index 5206f7527..edaa36dd2 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -10,6 +10,7 @@ class Player { int money_; size_t availableSpace_; size_t calculateAvailableSpace(); //calculates space available on the ship based on cargo and ship capacity + size_t gettingCargoAmount(); public: Player(std::unique_ptr ship, int money, int availableSpace); From b0d2e516adf672d386fda061eb905bc38540e01c Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 17 Jul 2021 16:48:57 +0200 Subject: [PATCH 030/151] progres? shm2 --- shm/Storable.hpp | 20 +++++++++++++++++++ shm/Store.cpp | 49 +++++++++++++++++++++++++++++++++++++++++++++++ shm/Store.hpp | 18 +++++++++++++++++ shm/example | Bin 106064 -> 130800 bytes shm/main.cpp | 3 --- shm/player.cpp | 22 ++++++--------------- shm/player.hpp | 13 ++++--------- shm/ship.cpp | 8 ++++++++ shm/ship.hpp | 9 ++++++--- 9 files changed, 111 insertions(+), 31 deletions(-) create mode 100644 shm/Storable.hpp create mode 100644 shm/Store.cpp create mode 100644 shm/Store.hpp diff --git a/shm/Storable.hpp b/shm/Storable.hpp new file mode 100644 index 000000000..33b50bcbc --- /dev/null +++ b/shm/Storable.hpp @@ -0,0 +1,20 @@ +#pragma once +#include +#include + +class Cargo; + +class Storable { +public: + Storable(int money, size_t availableSpace) + : money_(money) + , availableSpace_(availableSpace) + {} + ~Storable(){} + int getMoney() {return money_; } + size_t getAvailableSpace() {return availableSpace_; } + virtual std::shared_ptr getCargo(size_t index) const = 0; +protected: + int money_; + size_t availableSpace_; +}; \ No newline at end of file diff --git a/shm/Store.cpp b/shm/Store.cpp new file mode 100644 index 000000000..35b96f90e --- /dev/null +++ b/shm/Store.cpp @@ -0,0 +1,49 @@ +#include "Store.hpp" +#include "Player.hpp" +#include "Cargo.hpp" + +//enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; +Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} + +Response Store::buy(Cargo *cargo, size_t amount, Player *player) +{ + if (player->getAvailableSpace() < amount) + { + return Response::lack_of_space; + } + if (cargo->getAmount() < amount) + { + return Response::lack_of_cargo; + } + if (player->getMoney() < amount * cargo->getBasePrice()) + { + return Response::lack_of_money; + } + //player->load(cargo); + player->getMoney() - amount * cargo->getBasePrice(); + return Response::done; +} + + +Response Store::sell(Cargo *cargo, size_t amount, Player *player) +{ + if (player->getAvailableSpace() < amount) + { + return Response::lack_of_space; + } + if (cargo->getAmount() < amount) + { + return Response::lack_of_cargo; + } + if (player->getMoney() < amount * cargo->getBasePrice()) + { + return Response::lack_of_money; + } + //TO DO BUY - add cargo to store, remove cargo from player + return Response::done; +} + +std::shared_ptr Store::getCargo(size_t index) const +{ + return nullptr; +} diff --git a/shm/Store.hpp b/shm/Store.hpp new file mode 100644 index 000000000..b4db68c44 --- /dev/null +++ b/shm/Store.hpp @@ -0,0 +1,18 @@ +#include +#include +#include "Storable.hpp" + +class Player; +class Cargo; + +enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; + +class Store: public Storable { +public: + Store(int money, size_t availableSpace); + + Response buy(Cargo* cargo, size_t amount, Player* player); + Response sell(Cargo* cargo, size_t amount, Player* player); + + std::shared_ptr getCargo(size_t index) const override; +}; \ No newline at end of file diff --git a/shm/example b/shm/example index cf953af8cec768f7829116f0d5e14d27fc16de8b..7cb749ed71f0c698f98ff9e294021ebb57d195d6 100644 GIT binary patch literal 130800 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%0A&v(B8_@SgpCN}|h@i*%8PX72!^7%F! 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 bD~W1elgOdC$$Gy0TYY|!Wt0zjx557dL~F^| literal 106064 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 bqwBw ship, int money, int availableSpace) - : ship_(std::move(ship)) - , money_(money) - , availableSpace_(calculateAvailableSpace()) - {} +Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) { + ship_ = std::move(ship); +} const std::unique_ptr& Player::getShip() { return ship_; } -int Player::getMoney() { - return money_; -} - -size_t Player::getAvailableSpace () { - return availableSpace_; -} - size_t Player::getSpeed() const { if(ship_->getSpeed() > 0) { @@ -32,7 +22,7 @@ size_t Player::getSpeed() const { return 0; // TODO add something better } -Cargo* Player::getCargo(size_t index) const { +std::shared_ptr Player::getCargo(size_t index) const { if(ship_->getCargo().at(index) > 0) { return ship_->getCargo().at(index); @@ -46,9 +36,9 @@ size_t Player::calculateAvailableSpace() { int cargoAmount = 0; int capacity = ship_->getCapacity(); - std::vector shipCargo = ship_->getCargo(); + std::vector> shipCargo = ship_->getCargo(); - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) { return i += c->getAmount(); }); + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) { return i += c->getAmount(); }); std::cout << "Cargo amount(po obliczeniach): "<< capacity - cargoAmount << '\n'; if(capacity - cargoAmount < 0){ diff --git a/shm/player.hpp b/shm/player.hpp index edaa36dd2..590098feb 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -1,14 +1,13 @@ #pragma once - +#include "Storable.hpp" #include + class Ship; class Cargo; //Class responsible for handling Player object -class Player { +class Player : public Storable{ private: std::unique_ptr ship_; - int money_; - size_t availableSpace_; size_t calculateAvailableSpace(); //calculates space available on the ship based on cargo and ship capacity size_t gettingCargoAmount(); @@ -16,11 +15,7 @@ class Player { Player(std::unique_ptr ship, int money, int availableSpace); const std::unique_ptr& getShip(); - int getMoney(); - size_t getAvailableSpace(); - size_t getSpeed() const; - Cargo* getCargo(size_t index) const; - + std::shared_ptr getCargo(size_t index) const override; }; diff --git a/shm/ship.cpp b/shm/ship.cpp index 2439bfe2d..49d41819f 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -19,4 +19,12 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo* item) { shipCargo.emplace_back(item); +} +Cargo* Ship::findMatchCargo(Cargo* cargo) { + for (auto& el : shipCargo) { + if(*el == *cargo) { + return el.get(); + } + } + return nullptr; } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 4672cdeff..ba4f25bd8 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -2,7 +2,7 @@ #include #include - +#include #include "cargo.hpp" //Class responsible for representing ship in game @@ -38,7 +38,10 @@ class Ship { size_t getSpeed() const { return speed_; } std::string getName() const { return name_; } size_t getId() const { return id_; } - std::vector getCargo() { return shipCargo;} + std::vector> getCargo() { return shipCargo;} + Cargo* findMatchCargo(Cargo* cargo); + void load(std::shared_ptr cargo); + void unload(Cargo* cargo_ptr); private: size_t capacity_; @@ -47,5 +50,5 @@ class Ship { size_t speed_; std::string name_; const size_t id_; - std::vector shipCargo; + std::vector> shipCargo; }; From 696a99a46c750be128753724bd3a919f09f64aef Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 17 Jul 2021 17:51:14 +0200 Subject: [PATCH 031/151] fixed pointers, changed raw to shared --- shm/Store.cpp | 4 ++-- shm/main.cpp | 19 ++++++++++++------- shm/player.hpp | 2 +- shm/ship.cpp | 7 +++++++ 4 files changed, 22 insertions(+), 10 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 35b96f90e..a0543c6f0 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -1,6 +1,6 @@ #include "Store.hpp" -#include "Player.hpp" -#include "Cargo.hpp" +#include "player.hpp" +#include "cargo.hpp" //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} diff --git a/shm/main.cpp b/shm/main.cpp index 6f4511662..ec35feecd 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -7,9 +7,12 @@ #include "Map.hpp" #include "player.hpp" #include "ship.hpp" +#include + int main() { + std::cout << "Test Cargo" << '\n'; Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? @@ -20,7 +23,7 @@ int main() std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; //cotton -= 100; - + std::cout << "Test islands" << '\n'; Coordinates miami(125.f, 174.f); @@ -29,17 +32,19 @@ int main() std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; std::cout << "Test ship Titanic" << '\n'; - + Ship Titanic(20, 90, 1); - Titanic.addCargo(&kryptonite); + //Titanic.addCargo(std::shared_ptr(kryptonite)); + Titanic.load(std::make_shared(kryptonite)); + std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; - + std::cout << "Test make_unique ptr ship" << '\n'; - auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->addCargo(&cotton); + //ship->addCargo(&cotton); + ship->load(std::make_shared(cotton)); size_t shipCargoSize = ship->getCargo().size(); Player player(std::move(ship), 1, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; @@ -47,7 +52,7 @@ int main() std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; - + std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; std::cout << "Random islands positions: X | Y" << '\n'; diff --git a/shm/player.hpp b/shm/player.hpp index 590098feb..6c8c788cb 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -13,7 +13,7 @@ class Player : public Storable{ public: Player(std::unique_ptr ship, int money, int availableSpace); - + //~Player();//{std::cout << "ten działa?(Player)";} const std::unique_ptr& getShip(); size_t getSpeed() const; diff --git a/shm/ship.cpp b/shm/ship.cpp index 49d41819f..98c0f289c 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -27,4 +27,11 @@ Cargo* Ship::findMatchCargo(Cargo* cargo) { } } return nullptr; +} +void Ship::load(std::shared_ptr cargo_ptr) { + if(Cargo * ptr = findMatchCargo(cargo_ptr.get())) { + *ptr += cargo_ptr ->getAmount(); + return; + } + shipCargo.push_back(cargo_ptr); } \ No newline at end of file From 6df4544b2d78b3b13e8be5b952de110ae2baafd0 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 17 Jul 2021 18:36:31 +0200 Subject: [PATCH 032/151] Added test store, Sell function in store --- shm/Store.cpp | 37 +++++++++++++++++++++++++++---------- shm/Store.hpp | 2 ++ shm/main.cpp | 9 ++++++++- 3 files changed, 37 insertions(+), 11 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index a0543c6f0..8602a56be 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -4,8 +4,16 @@ //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} +Cargo* Store::findMatchCargo(Cargo* cargo) { + for (auto& el : cargo_) { + if(*el == *cargo) { + return el.get(); + } + } + return nullptr; +} -Response Store::buy(Cargo *cargo, size_t amount, Player *player) +Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo from store to player { if (player->getAvailableSpace() < amount) { @@ -25,21 +33,30 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player) } -Response Store::sell(Cargo *cargo, size_t amount, Player *player) +Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling cargo from Player to Store { - if (player->getAvailableSpace() < amount) - { - return Response::lack_of_space; - } + // if (player->getAvailableSpace() < amount) + // { + // return Response::lack_of_space; + // } if (cargo->getAmount() < amount) { return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) - { - return Response::lack_of_money; - } + // if (player->getMoney() < amount * cargo->getBasePrice()) + // { + // return Response::lack_of_money; + // } //TO DO BUY - add cargo to store, remove cargo from player + + if(Cargo * ptr = findMatchCargo(cargo)) { + *ptr += cargo ->getAmount(); + } + else { + cargo_.push_back(static_cast> (cargo)); + } + + return Response::done; } diff --git a/shm/Store.hpp b/shm/Store.hpp index b4db68c44..e3354f387 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -15,4 +15,6 @@ class Store: public Storable { Response sell(Cargo* cargo, size_t amount, Player* player); std::shared_ptr getCargo(size_t index) const override; + Cargo* findMatchCargo(Cargo* cargo); + std::vector> cargo_; }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index ec35feecd..34ccbc6a7 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -7,6 +7,7 @@ #include "Map.hpp" #include "player.hpp" #include "ship.hpp" +#include "Store.hpp" #include @@ -43,7 +44,6 @@ int main() std::cout << "Test make_unique ptr ship" << '\n'; auto ship = std::make_unique(20, 1, 2, "titanic", 3); - //ship->addCargo(&cotton); ship->load(std::make_shared(cotton)); size_t shipCargoSize = ship->getCargo().size(); Player player(std::move(ship), 1, 1); @@ -63,4 +63,11 @@ int main() map.addIsland(miami); Island *is = map.getIsland(miami); std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; + + std::cout << "Test Store" << '\n'; + Store store(100, 500); //(Money, Avalivable space) + store.cargo_.push_back(std::make_shared(cotton)); + store.cargo_.push_back(std::make_shared(kryptonite)); + store.cargo_.push_back(std::make_shared(onion)); + std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; } \ No newline at end of file From 2099da7511513e1775d5434bdab5eb72920bad5e Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 17 Jul 2021 19:29:55 +0200 Subject: [PATCH 033/151] Added print store cargo --- shm/Store.hpp | 9 ++++++++- shm/cargo.cpp | 4 ++++ shm/cargo.hpp | 1 + shm/main.cpp | 3 ++- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/shm/Store.hpp b/shm/Store.hpp index e3354f387..9f6350432 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -1,9 +1,10 @@ #include #include #include "Storable.hpp" +#include "cargo.hpp" class Player; -class Cargo; +//class Cargo; enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; @@ -17,4 +18,10 @@ class Store: public Storable { std::shared_ptr getCargo(size_t index) const override; Cargo* findMatchCargo(Cargo* cargo); std::vector> cargo_; + + void printStoreCargo() { + for(auto el : cargo_) { + el -> printCargo(); + } + } }; \ No newline at end of file diff --git a/shm/cargo.cpp b/shm/cargo.cpp index c4a648a9a..2c9a65039 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -34,4 +34,8 @@ Cargo &Cargo::operator-=(size_t amount) bool Cargo::operator==(const Cargo &cargo) const { return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; +} + +void Cargo::printCargo() const { + std::cout << "Cargo Name: " << name_ << ", amount: " << amount_ << '\n'; } \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index b3a2cb2d4..29b0c90a2 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -14,6 +14,7 @@ class Cargo size_t getBasePrice() {return basePrice_;} Cargo(std::string name, size_t amount, size_t basePrice); + void printCargo() const; protected: std::string name_; diff --git a/shm/main.cpp b/shm/main.cpp index 34ccbc6a7..b04f575be 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -68,6 +68,7 @@ int main() Store store(100, 500); //(Money, Avalivable space) store.cargo_.push_back(std::make_shared(cotton)); store.cargo_.push_back(std::make_shared(kryptonite)); - store.cargo_.push_back(std::make_shared(onion)); std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + std::cout << "Prit store cargo" << '\n'; + store.printStoreCargo(); } \ No newline at end of file From 44ca58b436bef56a5a4aa110f9660daa5e2f316f Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 17 Jul 2021 19:59:08 +0200 Subject: [PATCH 034/151] Store cargo add --- shm/Store.cpp | 6 ++++-- shm/cargo.hpp | 2 +- shm/main.cpp | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 8602a56be..01eddd912 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -50,10 +50,12 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling car //TO DO BUY - add cargo to store, remove cargo from player if(Cargo * ptr = findMatchCargo(cargo)) { - *ptr += cargo ->getAmount(); + *ptr += amount; } else { - cargo_.push_back(static_cast> (cargo)); + + //cargo_.push_back(static_cast> (cargo)); + cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); } diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 29b0c90a2..5e98e3e13 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -12,7 +12,7 @@ class Cargo const std::string& getName() {return name_;} // TO DO: test deleting Cargo object size_t getAmount() {return amount_;} size_t getBasePrice() {return basePrice_;} - + Cargo () = default; Cargo(std::string name, size_t amount, size_t basePrice); void printCargo() const; diff --git a/shm/main.cpp b/shm/main.cpp index b04f575be..81bdb6f87 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -69,6 +69,8 @@ int main() store.cargo_.push_back(std::make_shared(cotton)); store.cargo_.push_back(std::make_shared(kryptonite)); std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + store.sell(&onion, 5, &player); + store.sell(&onion, 55, &player); std::cout << "Prit store cargo" << '\n'; store.printStoreCargo(); } \ No newline at end of file From 373c6bdef058bf79b8cff691c4cfd82087bd2623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 18 Jul 2021 11:09:01 +0200 Subject: [PATCH 035/151] Adding excerscises: 5, 7 --- shm/alcohol.cpp | 6 ++++++ shm/alcohol.hpp | 20 ++++++++++++++++++++ shm/cargo.hpp | 14 +++++++++----- shm/dryfruit.cpp | 18 ++++++++++++++++++ shm/dryfruit.hpp | 15 +++++++++++++++ shm/fruit.cpp | 25 +++++++++++++++++++++++++ shm/fruit.hpp | 25 +++++++++++++++++++++++++ shm/item.cpp | 6 ++++++ shm/item.hpp | 24 ++++++++++++++++++++++++ shm/main.cpp | 5 +++++ 10 files changed, 153 insertions(+), 5 deletions(-) create mode 100644 shm/alcohol.cpp create mode 100644 shm/alcohol.hpp create mode 100644 shm/dryfruit.cpp create mode 100644 shm/dryfruit.hpp create mode 100644 shm/fruit.cpp create mode 100644 shm/fruit.hpp create mode 100644 shm/item.cpp create mode 100644 shm/item.hpp diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp new file mode 100644 index 000000000..bbacaa6e4 --- /dev/null +++ b/shm/alcohol.cpp @@ -0,0 +1,6 @@ +#include "alcohol.hpp" + +size_t Alcohol::getPrice() const +{ + return basePrice_ * percentage_ / 96; +} diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp new file mode 100644 index 000000000..e8992c82b --- /dev/null +++ b/shm/alcohol.hpp @@ -0,0 +1,20 @@ +#pragma once +#include "cargo.hpp" + +//Class responsible for representing alcohol in the game +class Alcohol : public Cargo { +public: + Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + ~Alcohol() override = default; + + // override from Cargo + size_t getPrice() const override; + const std::string &getName() const override { return name_; } + size_t getAmount() const override { return amount_; } + size_t getBasePrice() const override { return basePrice_; } + + size_t getPercentage() const { return percentage_; } + +private: + size_t percentage_; +}; \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 5e98e3e13..ed93c1a47 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -9,12 +9,16 @@ class Cargo Cargo &operator-=(size_t amount); bool operator==(const Cargo &cargo) const; - const std::string& getName() {return name_;} // TO DO: test deleting Cargo object - size_t getAmount() {return amount_;} - size_t getBasePrice() {return basePrice_;} - Cargo () = default; - Cargo(std::string name, size_t amount, size_t basePrice); + virtual size_t getPrice() const = 0; + virtual const std::string &getName() const = 0; // TO DO: test deleting Cargo object + virtual size_t getAmount() const = 0; + virtual size_t getBasePrice() const = 0; + void printCargo() const; + + Cargo() = default; + Cargo(std::string name, size_t amount, size_t basePrice); + virtual ~Cargo() = default; protected: std::string name_; diff --git a/shm/dryfruit.cpp b/shm/dryfruit.cpp new file mode 100644 index 000000000..27e5f8c0a --- /dev/null +++ b/shm/dryfruit.cpp @@ -0,0 +1,18 @@ +#include "dryfruit.hpp" + +size_t DryFruit::getPrice() const +{ + if (time_elapsed_ >= expiry_date_) + return 0; + return static_cast(3 * basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); +} + +Cargo &DryFruit::operator--() +{ + if (++counter_ == 10) + { + ++time_elapsed_; + counter_ = 0; + } + return *this; +}; diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp new file mode 100644 index 000000000..54cbb8258 --- /dev/null +++ b/shm/dryfruit.hpp @@ -0,0 +1,15 @@ +#pragma once +#include "fruit.hpp" + +class DryFruit : public Fruit { +public: + // override from Cargo + const std::string &getName() const override { return "Dry Fruit"; } + size_t getPrice() const override; + + // override from Fruit + Cargo& operator--() override; + +private: + size_t counter_{0}; +}; \ No newline at end of file diff --git a/shm/fruit.cpp b/shm/fruit.cpp new file mode 100644 index 000000000..f5df38fb7 --- /dev/null +++ b/shm/fruit.cpp @@ -0,0 +1,25 @@ +#include +#include "fruit.hpp" + +size_t Fruit::getPrice() const +{ + if (time_elapsed_ >= expiry_date_) + { + return 0; + } + return static_cast(basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); +} + +Cargo &Fruit::operator--() +{ + if (time_elapsed_ == 0) + { + time_elapsed_ = 0; + std::cout << "Fruit is expired!"; + } + else + { + time_elapsed_ - 1 ; + } + return *this; +} \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp new file mode 100644 index 000000000..ffb1c49a1 --- /dev/null +++ b/shm/fruit.hpp @@ -0,0 +1,25 @@ +#pragma once +#include "cargo.hpp" + +// Class responsible for fruit representing in game + +class Fruit : public Cargo { +public: + Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); + ~Fruit() override; + + // override from Cargo + size_t getPrice() const override; + const std::string &getName() const override { return name_; } + size_t getAmount() const override { return amount_; } + size_t getBasePrice() const override { return basePrice_; } + + virtual Cargo& operator--(); + + size_t getTimeElapsed() const { return time_elapsed_; } + size_t getExpiryDate() const { return expiry_date_; } + +protected: + size_t time_elapsed_{0}; + size_t expiry_date_; +}; \ No newline at end of file diff --git a/shm/item.cpp b/shm/item.cpp new file mode 100644 index 000000000..92e4a1383 --- /dev/null +++ b/shm/item.cpp @@ -0,0 +1,6 @@ +#include "item.hpp" + +size_t Item::getPrice() const +{ + return basePrice_ * static_cast(rarity_); +} \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp new file mode 100644 index 000000000..49a723cd7 --- /dev/null +++ b/shm/item.hpp @@ -0,0 +1,24 @@ +#pragma once +#include "cargo.hpp" + +class Item : public Cargo { +public: + enum class Rarity { common = 1, + rare = 3, + epic = 6, + legendary = 10 }; + + Item(size_t amount, const std::string& name, size_t base_price, Rarity rarity); + ~Item() override = default; + + // override from Cargo + size_t getPrice() const override; + const std::string &getName() const override { return name_; } + size_t getAmount() const override { return amount_; } + size_t getBasePrice() const override { return basePrice_; } + + Rarity getRarity() const { return rarity_; } + +private: + Rarity rarity_; +}; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 81bdb6f87..6618f55f3 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,12 +1,17 @@ #include +#include "alcohol.hpp" #include "cargo.hpp" #include "coordinates.hpp" +#include "dryfruit.hpp" +#include "fruit.hpp" #include "island.hpp" +#include "item.hpp" #include "Map.hpp" #include "player.hpp" #include "ship.hpp" +#include "Storable.hpp" #include "Store.hpp" #include From 3c968539819c9e6591356c923a92f98c9ebbfbe5 Mon Sep 17 00:00:00 2001 From: karo Date: Sun, 18 Jul 2021 11:23:04 +0200 Subject: [PATCH 036/151] TimeEffectable added --- shm/Storable.cpp | 8 ++++++++ shm/Storable.hpp | 2 ++ shm/Store.cpp | 6 ++++++ shm/Store.hpp | 4 +++- shm/TimeEffectable.hpp | 6 ++++++ shm/cargo.cpp | 9 +++++++++ shm/cargo.hpp | 4 +++- shm/main.cpp | 17 ++++++++++++++++- shm/ship.cpp | 33 +++++++++++++++++++++++---------- shm/ship.hpp | 11 ++++++++++- 10 files changed, 86 insertions(+), 14 deletions(-) create mode 100644 shm/Storable.cpp create mode 100644 shm/TimeEffectable.hpp diff --git a/shm/Storable.cpp b/shm/Storable.cpp new file mode 100644 index 000000000..cc85fc224 --- /dev/null +++ b/shm/Storable.cpp @@ -0,0 +1,8 @@ +#include "Storable.hpp" + +void Storable::SpendMoney(int moneyToSpend) { + if (money_ - moneyToSpend <= 0) { + money_ = 0; + } + money_ -= moneyToSpend; +} \ No newline at end of file diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 33b50bcbc..10618b777 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -14,6 +14,8 @@ class Storable { int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } virtual std::shared_ptr getCargo(size_t index) const = 0; + void SpendMoney(int moneyToSpend); + protected: int money_; size_t availableSpace_; diff --git a/shm/Store.cpp b/shm/Store.cpp index 01eddd912..994b3eaf5 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -66,3 +66,9 @@ std::shared_ptr Store::getCargo(size_t index) const { return nullptr; } + +void Store::nextDay(){ + for (auto el : cargo_) { + el.get()->reduceAmount(); + } +} \ No newline at end of file diff --git a/shm/Store.hpp b/shm/Store.hpp index 9f6350432..3361104ae 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -2,13 +2,14 @@ #include #include "Storable.hpp" #include "cargo.hpp" +#include "TimeEffectable.hpp" class Player; //class Cargo; enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; -class Store: public Storable { +class Store: public Storable, public TimeEffectable { public: Store(int money, size_t availableSpace); @@ -18,6 +19,7 @@ class Store: public Storable { std::shared_ptr getCargo(size_t index) const override; Cargo* findMatchCargo(Cargo* cargo); std::vector> cargo_; + void nextDay() override; void printStoreCargo() { for(auto el : cargo_) { diff --git a/shm/TimeEffectable.hpp b/shm/TimeEffectable.hpp new file mode 100644 index 000000000..1f564df8f --- /dev/null +++ b/shm/TimeEffectable.hpp @@ -0,0 +1,6 @@ +#pragma once + +class TimeEffectable { +public: + virtual void nextDay(){} +}; \ No newline at end of file diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 2c9a65039..30d6472f3 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -38,4 +38,13 @@ bool Cargo::operator==(const Cargo &cargo) const void Cargo::printCargo() const { std::cout << "Cargo Name: " << name_ << ", amount: " << amount_ << '\n'; +} + +void Cargo::reduceAmount(){ + if(amount_ -1 < 0){ + amount_ = 0; + } + else{ + amount_ -= 1; + } } \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 5e98e3e13..ef1490323 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -1,8 +1,9 @@ #pragma once #include +#include "TimeEffectable.hpp" //Class responsible for representing cargo in game -class Cargo +class Cargo : public TimeEffectable { public: Cargo &operator+=(size_t amount); @@ -15,6 +16,7 @@ class Cargo Cargo () = default; Cargo(std::string name, size_t amount, size_t basePrice); void printCargo() const; + void reduceAmount(); protected: std::string name_; diff --git a/shm/main.cpp b/shm/main.cpp index 81bdb6f87..92bc15d2d 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -46,7 +46,7 @@ int main() auto ship = std::make_unique(20, 1, 2, "titanic", 3); ship->load(std::make_shared(cotton)); size_t shipCargoSize = ship->getCargo().size(); - Player player(std::move(ship), 1, 1); + Player player(std::move(ship), 100, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; @@ -73,4 +73,19 @@ int main() store.sell(&onion, 55, &player); std::cout << "Prit store cargo" << '\n'; store.printStoreCargo(); + + + //ZAD3 NEXT_DAY + std::cout << "\n\nZAD3 NEXT_DAY"<< '\n'; + Ship* ownedShip = new Ship(5, 10, 2, "Special owned ship", 88); + ownedShip->setOwner(&player); + ownedShip->setCrew(5); + std::cout << "Player's money: " << player.getMoney() << '\n'; + ownedShip->nextDay(); + std::cout << "Player's money: " << player.getMoney() << '\n'; + std::cout << "Prit store cargo" << '\n'; + store.printStoreCargo(); + store.nextDay(); + std::cout << "Prit store cargo" << '\n'; + store.printStoreCargo(); } \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index 98c0f289c..ac9b56303 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,18 +1,16 @@ #include "ship.hpp" +#include "player.hpp" -Ship &Ship::operator-=(size_t num) -{ - if(crew_ < num){ +Ship& Ship::operator-=(size_t num) { + if (crew_ < num) { crew_ = 0; - } - else{ + } else { crew_ -= num; } return *this; } -Ship &Ship::operator+=(size_t num) -{ +Ship& Ship::operator+=(size_t num) { crew_ += num; return *this; } @@ -22,16 +20,31 @@ void Ship::addCargo(Cargo* item) { } Cargo* Ship::findMatchCargo(Cargo* cargo) { for (auto& el : shipCargo) { - if(*el == *cargo) { + if (*el == *cargo) { return el.get(); } } return nullptr; } void Ship::load(std::shared_ptr cargo_ptr) { - if(Cargo * ptr = findMatchCargo(cargo_ptr.get())) { - *ptr += cargo_ptr ->getAmount(); + if (Cargo* ptr = findMatchCargo(cargo_ptr.get())) { + *ptr += cargo_ptr->getAmount(); return; } shipCargo.push_back(cargo_ptr); +} + +void Ship::setOwner(Player* newOwner) { + owner_ = newOwner; +} + +void Ship::setCrew(size_t newCrew) { + crew_ = newCrew; +} + +void Ship::nextDay() { + size_t moneyForCrew = crew_; + if (owner_) { + owner_->SpendMoney(moneyForCrew); + } } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index ba4f25bd8..fc65abac5 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -4,9 +4,12 @@ #include #include #include "cargo.hpp" +#include "TimeEffectable.hpp" + +class Player; //Class responsible for representing ship in game -class Ship { +class Ship : public TimeEffectable { public: Ship() : id_(-1) @@ -36,6 +39,7 @@ class Ship { size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } size_t getSpeed() const { return speed_; } + size_t getCrew() const { return crew_; } std::string getName() const { return name_; } size_t getId() const { return id_; } std::vector> getCargo() { return shipCargo;} @@ -43,6 +47,10 @@ class Ship { void load(std::shared_ptr cargo); void unload(Cargo* cargo_ptr); + void nextDay() override; + void setOwner(Player* newOwner); + void setCrew(size_t newCrew); + private: size_t capacity_; size_t maxCrew_; @@ -51,4 +59,5 @@ class Ship { std::string name_; const size_t id_; std::vector> shipCargo; + Player* owner_; }; From fe4f5acf502e4eaa8b63a448434daa3c47abea17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 18 Jul 2021 12:38:44 +0200 Subject: [PATCH 037/151] Adding operators -= and += --- shm/alcohol.cpp | 25 +++++++++++++++++++++++++ shm/alcohol.hpp | 6 +++++- shm/cargo.hpp | 8 ++++---- shm/fruit.cpp | 20 ++++++++++++++++++++ shm/fruit.hpp | 3 +++ shm/item.cpp | 20 ++++++++++++++++++++ shm/item.hpp | 21 ++++++++++++++------- 7 files changed, 91 insertions(+), 12 deletions(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index bbacaa6e4..f2beec2eb 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -4,3 +4,28 @@ size_t Alcohol::getPrice() const { return basePrice_ * percentage_ / 96; } + +Cargo &Alcohol::operator+=(size_t amount) +{ + amount_ += amount; + return *this; +} + +Cargo &Alcohol::operator-=(size_t amount) +{ + + if (amount_ < amount) + { + amount_ = 0; + } + else + { + amount_ -= amount; + } + return *this; +} + +/*bool Alcohol::operator==(const Cargo &cargo) const +{ + return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; +}*/ \ No newline at end of file diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index e8992c82b..584c76393 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -12,9 +12,13 @@ class Alcohol : public Cargo { const std::string &getName() const override { return name_; } size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } - size_t getPercentage() const { return percentage_; } + Cargo& operator+=(size_t amount) override; + Cargo& operator-=(size_t amount) override; + bool operator==(const Cargo &cargo) const override; + + private: size_t percentage_; }; \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index ed93c1a47..a7d3d082d 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -5,9 +5,9 @@ class Cargo { public: - Cargo &operator+=(size_t amount); - Cargo &operator-=(size_t amount); - bool operator==(const Cargo &cargo) const; + virtual Cargo &operator+=(size_t amount); + virtual Cargo &operator-=(size_t amount); + virtual bool operator==(const Cargo &cargo) const = 0; virtual size_t getPrice() const = 0; virtual const std::string &getName() const = 0; // TO DO: test deleting Cargo object @@ -15,7 +15,7 @@ class Cargo virtual size_t getBasePrice() const = 0; void printCargo() const; - + Cargo() = default; Cargo(std::string name, size_t amount, size_t basePrice); virtual ~Cargo() = default; diff --git a/shm/fruit.cpp b/shm/fruit.cpp index f5df38fb7..b5efdbdeb 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -22,4 +22,24 @@ Cargo &Fruit::operator--() time_elapsed_ - 1 ; } return *this; +} + +Cargo &Fruit::operator+=(size_t amount) +{ + amount_ += amount; + return *this; +} + +Cargo &Fruit::operator-=(size_t amount) +{ + + if (amount_ < amount) + { + amount_ = 0; + } + else + { + amount_ -= amount; + } + return *this; } \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp index ffb1c49a1..0a46f3272 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -15,6 +15,9 @@ class Fruit : public Cargo { size_t getBasePrice() const override { return basePrice_; } virtual Cargo& operator--(); + Cargo& operator+=(size_t amount) override; + Cargo& operator-=(size_t amount) override; + bool operator==(const Cargo &cargo) const override; size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } diff --git a/shm/item.cpp b/shm/item.cpp index 92e4a1383..d063beb26 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -3,4 +3,24 @@ size_t Item::getPrice() const { return basePrice_ * static_cast(rarity_); +} + +Cargo &Item::operator+=(size_t amount) +{ + amount_ += amount; + return *this; +} + +Cargo &Item::operator-=(size_t amount) +{ + + if (amount_ < amount) + { + amount_ = 0; + } + else + { + amount_ -= amount; + } + return *this; } \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp index 49a723cd7..645803345 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -1,14 +1,18 @@ #pragma once #include "cargo.hpp" -class Item : public Cargo { +class Item : public Cargo +{ public: - enum class Rarity { common = 1, - rare = 3, - epic = 6, - legendary = 10 }; + enum class Rarity + { + common = 1, + rare = 3, + epic = 6, + legendary = 10 + }; - Item(size_t amount, const std::string& name, size_t base_price, Rarity rarity); + Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); ~Item() override = default; // override from Cargo @@ -16,9 +20,12 @@ class Item : public Cargo { const std::string &getName() const override { return name_; } size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } - Rarity getRarity() const { return rarity_; } + Cargo &operator+=(size_t amount) override; + Cargo &operator-=(size_t amount) override; + bool operator==(const Cargo &cargo) const override; + private: Rarity rarity_; }; \ No newline at end of file From 5593b20cef4095ee9a14560860df378ce04d1481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 18 Jul 2021 13:48:55 +0200 Subject: [PATCH 038/151] Adding operator == to cargo classes --- shm/alcohol.cpp | 13 +++++++++---- shm/fruit.cpp | 10 ++++++++++ shm/item.cpp | 10 ++++++++++ 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index f2beec2eb..91e159c24 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -25,7 +25,12 @@ Cargo &Alcohol::operator-=(size_t amount) return *this; } -/*bool Alcohol::operator==(const Cargo &cargo) const -{ - return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; -}*/ \ No newline at end of file +bool Alcohol::operator==(const Cargo& other) const { + + try { + const Alcohol& other_alcohol = dynamic_cast(other); + return Cargo::operator==(other) && percentage_ == other_alcohol.percentage_; + } catch (std::bad_cast&) { + return false; + } +} \ No newline at end of file diff --git a/shm/fruit.cpp b/shm/fruit.cpp index b5efdbdeb..8ae64098a 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -42,4 +42,14 @@ Cargo &Fruit::operator-=(size_t amount) amount_ -= amount; } return *this; +} + +bool Fruit::operator==(const Cargo& other) const { + + try { + const Fruit& other_fruit = dynamic_cast(other); + return Cargo::operator==(other) && expiry_date_ == other_fruit.expiry_date_; + } catch (std::bad_cast&) { + return false; + } } \ No newline at end of file diff --git a/shm/item.cpp b/shm/item.cpp index d063beb26..71007008c 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -23,4 +23,14 @@ Cargo &Item::operator-=(size_t amount) amount_ -= amount; } return *this; +} + +bool Item::operator==(const Cargo& other) const { + + try { + const Item& other_item = dynamic_cast(other); + return Cargo::operator==(other) && rarity_ == other_item.rarity_; + } catch (std::bad_cast&) { + return false; + } } \ No newline at end of file From a0ce807f268161359f8a7a91af85630717b08c90 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 18 Jul 2021 14:09:12 +0200 Subject: [PATCH 039/151] Changed cargo to Fruit&Alcohol --- shm/main.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index e50586355..116643ccd 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -21,12 +21,12 @@ int main() std::cout << "Test Cargo" << '\n'; - Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? - Cargo kryptonite("krypton", 20, 200); // ( name, amount, basePrice) - Cargo onion("cebula", 250, 1); // ( name, amount, basePrice) + Fruit banana(150, "banany", 3, 150, 1); // Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); + Alcohol kryptonite(200, "krypton", 20, 69); // Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + Fruit onion(200, "cebula", 1, 100, 1); // Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); - std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; - std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; + std::cout << (onion == banana) << " " << (banana == kryptonite) << " " << (onion == kryptonite) << "\n"; + std::cout << banana.getAmount() << " " << banana.getBasePrice() << " " << banana.getName() << "\n\n"; //cotton -= 100; @@ -49,7 +49,7 @@ int main() std::cout << "Test make_unique ptr ship" << '\n'; auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->load(std::make_shared(cotton)); + ship->load(std::make_shared(banana)); size_t shipCargoSize = ship->getCargo().size(); Player player(std::move(ship), 100, 1); std::cout << "Vector size: " << shipCargoSize << '\n'; @@ -71,9 +71,9 @@ int main() std::cout << "Test Store" << '\n'; Store store(100, 500); //(Money, Avalivable space) - store.cargo_.push_back(std::make_shared(cotton)); + store.cargo_.push_back(std::make_shared(banana)); store.cargo_.push_back(std::make_shared(kryptonite)); - std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + std::cout << store.findMatchCargo(&banana) << " adres cotton: " << store.cargo_[0].get() <<'\n'; store.sell(&onion, 5, &player); store.sell(&onion, 55, &player); std::cout << "Prit store cargo" << '\n'; From aa91d5a9b14796a1f47d72e1ad2b8587a7489516 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 18 Jul 2021 15:53:31 +0200 Subject: [PATCH 040/151] Problem with everything --- shm/Store.cpp | 51 ++++++++++++------------ shm/Store.hpp | 9 ++++- shm/alcohol.cpp | 3 ++ shm/alcohol.hpp | 8 +++- shm/dryfruit.hpp | 2 +- shm/fruit copy.hpp | 29 ++++++++++++++ shm/fruit.cpp | 5 +++ shm/fruit.hpp | 3 +- shm/item.hpp | 3 +- shm/main.cpp | 98 +++++++++++++++++++++++----------------------- shm/ship.hpp | 1 - 11 files changed, 130 insertions(+), 82 deletions(-) create mode 100644 shm/fruit copy.hpp diff --git a/shm/Store.cpp b/shm/Store.cpp index 994b3eaf5..af0b8f671 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -3,7 +3,7 @@ #include "cargo.hpp" //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; -Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} + Cargo* Store::findMatchCargo(Cargo* cargo) { for (auto& el : cargo_) { if(*el == *cargo) { @@ -35,40 +35,39 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo f Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling cargo from Player to Store { - // if (player->getAvailableSpace() < amount) - // { - // return Response::lack_of_space; - // } + if (player->getAvailableSpace() < amount) + { + return Response::lack_of_space; + } if (cargo->getAmount() < amount) { return Response::lack_of_cargo; } - // if (player->getMoney() < amount * cargo->getBasePrice()) - // { - // return Response::lack_of_money; - // } + if (player->getMoney() < amount * cargo->getBasePrice()) + { + return Response::lack_of_money; + } //TO DO BUY - add cargo to store, remove cargo from player - if(Cargo * ptr = findMatchCargo(cargo)) { - *ptr += amount; - } - else { + // if(Cargo * ptr = findMatchCargo(cargo)) { + // *ptr += amount; + // } + // else { - //cargo_.push_back(static_cast> (cargo)); - cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); - } + // //cargo_.push_back(static_cast> (cargo)); + // cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); + // } - return Response::done; } -std::shared_ptr Store::getCargo(size_t index) const -{ - return nullptr; -} +// std::shared_ptr Store::getCargo(size_t index) const +// { +// return nullptr; +// } -void Store::nextDay(){ - for (auto el : cargo_) { - el.get()->reduceAmount(); - } -} \ No newline at end of file +// void Store::nextDay(){ +// for (auto el : cargo_) { +// el.get()->reduceAmount(); +// } +// } \ No newline at end of file diff --git a/shm/Store.hpp b/shm/Store.hpp index 3361104ae..645d45bfe 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -1,7 +1,10 @@ #include #include #include "Storable.hpp" +#include "alcohol.hpp" #include "cargo.hpp" +#include "fruit.hpp" +#include "item.hpp" #include "TimeEffectable.hpp" class Player; @@ -11,7 +14,11 @@ enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; class Store: public Storable, public TimeEffectable { public: - Store(int money, size_t availableSpace); + Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} + // cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + // cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); + // cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + // cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); Response buy(Cargo* cargo, size_t amount, Player* player); Response sell(Cargo* cargo, size_t amount, Player* player); diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 91e159c24..e688c6542 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -1,5 +1,8 @@ #include "alcohol.hpp" +Alcohol::~Alcohol() { + std::cout << "Alcohol " << name_ << " destructor" << '\n'; +} size_t Alcohol::getPrice() const { return basePrice_ * percentage_ / 96; diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 584c76393..1c548c4b5 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -1,11 +1,15 @@ #pragma once +#include #include "cargo.hpp" + + //Class responsible for representing alcohol in the game class Alcohol : public Cargo { public: - Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - ~Alcohol() override = default; + Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage) + :Cargo(name, amount, base_price), percentage_{percentage} {} + ~Alcohol() override; // override from Cargo size_t getPrice() const override; diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp index 54cbb8258..54bd7dbe8 100644 --- a/shm/dryfruit.hpp +++ b/shm/dryfruit.hpp @@ -4,7 +4,7 @@ class DryFruit : public Fruit { public: // override from Cargo - const std::string &getName() const override { return "Dry Fruit"; } + const std::string& getName() const override { return name_; } size_t getPrice() const override; // override from Fruit diff --git a/shm/fruit copy.hpp b/shm/fruit copy.hpp new file mode 100644 index 000000000..6974e9901 --- /dev/null +++ b/shm/fruit copy.hpp @@ -0,0 +1,29 @@ +#pragma once +#include "cargo.hpp" + +// Class responsible for fruit representing in game + +class Fruit : public Cargo { +public: + Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + : Cargo(name, amount, base_price), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} + ~Fruit() override; + + // override from Cargo + size_t getPrice() const override; + const std::string &getName() const override { return name_; } + size_t getAmount() const override { return amount_; } + size_t getBasePrice() const override { return basePrice_; } + + virtual Cargo& operator--(); + Cargo& operator+=(size_t amount) override; + Cargo& operator-=(size_t amount) override; + bool operator==(const Cargo &cargo) const override; + + size_t getTimeElapsed() const { return time_elapsed_; } + size_t getExpiryDate() const { return expiry_date_; } + +protected: + size_t time_elapsed_{0}; + size_t expiry_date_; +}; \ No newline at end of file diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 8ae64098a..c7b56da84 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -1,6 +1,11 @@ #include #include "fruit.hpp" +// Fruit::Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) +// : Cargo(name, amount, base_price), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} +Fruit::~Fruit() { + std::cout << "Fruit " << name_ << " destructor" << '\n'; +} size_t Fruit::getPrice() const { if (time_elapsed_ >= expiry_date_) diff --git a/shm/fruit.hpp b/shm/fruit.hpp index 0a46f3272..6974e9901 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -5,7 +5,8 @@ class Fruit : public Cargo { public: - Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); + Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + : Cargo(name, amount, base_price), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} ~Fruit() override; // override from Cargo diff --git a/shm/item.hpp b/shm/item.hpp index 645803345..158c518bd 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -12,7 +12,8 @@ class Item : public Cargo legendary = 10 }; - Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity) : + Cargo(name, amount, base_price), rarity_{rarity} {} ~Item() override = default; // override from Cargo diff --git a/shm/main.cpp b/shm/main.cpp index 116643ccd..096d9db92 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -24,11 +24,10 @@ int main() Fruit banana(150, "banany", 3, 150, 1); // Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); Alcohol kryptonite(200, "krypton", 20, 69); // Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); Fruit onion(200, "cebula", 1, 100, 1); // Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); - + Item hook(5, "Hak", 100, Item::Rarity::common);//(size_t amount, const std::string &name, size_t base_price, Rarity rarity) std::cout << (onion == banana) << " " << (banana == kryptonite) << " " << (onion == kryptonite) << "\n"; std::cout << banana.getAmount() << " " << banana.getBasePrice() << " " << banana.getName() << "\n\n"; - - //cotton -= 100; + std::cout << hook.getName() << " " << static_cast(hook.getRarity()) << '\n'; std::cout << "Test islands" << '\n'; @@ -39,58 +38,59 @@ int main() std::cout << "Test ship Titanic" << '\n'; - Ship Titanic(20, 90, 1); - //Titanic.addCargo(std::shared_ptr(kryptonite)); - Titanic.load(std::make_shared(kryptonite)); + Ship Titanic(20, 90, 1);// Ship(int maxCrew, int speed, size_t id) + std::shared_ptr ptr = static_cast>(&kryptonite); + //std::shared_ptr ptr = std::make_shared(100, "Whiskey", 50, 40); + Titanic.load(static_cast>(&kryptonite)); - std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; - std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; - std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; + // std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; + // std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; + // std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; - std::cout << "Test make_unique ptr ship" << '\n'; - auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->load(std::make_shared(banana)); - size_t shipCargoSize = ship->getCargo().size(); - Player player(std::move(ship), 100, 1); - std::cout << "Vector size: " << shipCargoSize << '\n'; - std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; - std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; - std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; + // std::cout << "Test make_unique ptr ship" << '\n'; + // auto ship = std::make_unique(20, 1, 2, "titanic", 3); + // ship->load(std::make_shared(banana)); + // size_t shipCargoSize = ship->getCargo().size(); + // Player player(std::move(ship), 100, 1); + // std::cout << "Vector size: " << shipCargoSize << '\n'; + // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + // std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; + // std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; + // std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; - std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; + // std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; - std::cout << "Random islands positions: X | Y" << '\n'; - Map map; - map.DebugPrintIsland(); + // std::cout << "Random islands positions: X | Y" << '\n'; + // Map map; + // map.DebugPrintIsland(); - std::cout << '\n' << "Get miami position: X | Y" << '\n'; - map.addIsland(miami); - Island *is = map.getIsland(miami); - std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; + // std::cout << '\n' << "Get miami position: X | Y" << '\n'; + // map.addIsland(miami); + // Island *is = map.getIsland(miami); + // std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; - std::cout << "Test Store" << '\n'; - Store store(100, 500); //(Money, Avalivable space) - store.cargo_.push_back(std::make_shared(banana)); - store.cargo_.push_back(std::make_shared(kryptonite)); - std::cout << store.findMatchCargo(&banana) << " adres cotton: " << store.cargo_[0].get() <<'\n'; - store.sell(&onion, 5, &player); - store.sell(&onion, 55, &player); - std::cout << "Prit store cargo" << '\n'; - store.printStoreCargo(); + // std::cout << "Test Store" << '\n'; + // Store store(100, 500); //(Money, Avalivable space) + // store.cargo_.push_back(std::make_shared(banana)); + // store.cargo_.push_back(std::make_shared(kryptonite)); + // std::cout << store.findMatchCargo(&banana) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + // store.sell(&onion, 5, &player); + // store.sell(&onion, 55, &player); + // std::cout << "Prit store cargo" << '\n'; + // store.printStoreCargo(); - //ZAD3 NEXT_DAY - std::cout << "\n\nZAD3 NEXT_DAY"<< '\n'; - Ship* ownedShip = new Ship(5, 10, 2, "Special owned ship", 88); - ownedShip->setOwner(&player); - ownedShip->setCrew(5); - std::cout << "Player's money: " << player.getMoney() << '\n'; - ownedShip->nextDay(); - std::cout << "Player's money: " << player.getMoney() << '\n'; - std::cout << "Prit store cargo" << '\n'; - store.printStoreCargo(); - store.nextDay(); - std::cout << "Prit store cargo" << '\n'; - store.printStoreCargo(); + // //ZAD3 NEXT_DAY + // std::cout << "\n\nZAD3 NEXT_DAY"<< '\n'; + // Ship* ownedShip = new Ship(5, 10, 2, "Special owned ship", 88); + // ownedShip->setOwner(&player); + // ownedShip->setCrew(5); + // std::cout << "Player's money: " << player.getMoney() << '\n'; + // ownedShip->nextDay(); + // std::cout << "Player's money: " << player.getMoney() << '\n'; + // std::cout << "Prit store cargo" << '\n'; + // store.printStoreCargo(); + // store.nextDay(); + // std::cout << "Prit store cargo" << '\n'; + // store.printStoreCargo(); } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index fc65abac5..5888a1d4e 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -27,7 +27,6 @@ class Ship : public TimeEffectable { Ship(int maxCrew, int speed, size_t id) : Ship(0, maxCrew, speed, "", id) {} - void setName(const std::string& name) { name_ = name; } From d321d3a02634e5a703cc719fec4d5729f70d3bff Mon Sep 17 00:00:00 2001 From: kondorski Date: Tue, 20 Jul 2021 17:33:37 +0200 Subject: [PATCH 041/151] Observer patter in Time class working with Ship class --- shm/Time.cpp | 37 +++++++++++++++++++++++++++++++++++++ shm/Time.hpp | 21 +++++++++++++++++++++ shm/TimeEffectable.hpp | 2 +- shm/ship.cpp | 3 ++- shm/ship.hpp | 27 +++++++++++++++++++-------- 5 files changed, 80 insertions(+), 10 deletions(-) create mode 100644 shm/Time.cpp create mode 100644 shm/Time.hpp diff --git a/shm/Time.cpp b/shm/Time.cpp new file mode 100644 index 000000000..9592db078 --- /dev/null +++ b/shm/Time.cpp @@ -0,0 +1,37 @@ +#include + +#include "Time.hpp" +#include "TimeEffectable.hpp" + +Time::Time() +{ + currentTime_ = 0; +} + +void Time::attach(TimeEffectable* observer) +{ + list_observer_.push_back(observer); +} + +void Time::detach(TimeEffectable* observer) +{ + list_observer_.remove(observer); +} + +void Time::notify() +{ + for(auto el : list_observer_) + { + el->nextDay(); + } +} + +void Time::changeTime() +{ + currentTime_++; + notify(); +} + +void Time::HowManyObserver() { + std::cout << "There are " << list_observer_.size() << " observers in the list.\n"; + } \ No newline at end of file diff --git a/shm/Time.hpp b/shm/Time.hpp new file mode 100644 index 000000000..5c723fcd0 --- /dev/null +++ b/shm/Time.hpp @@ -0,0 +1,21 @@ +#pragma once + +#include + +class TimeEffectable; + +class Time { +public: + Time(); + + void attach(TimeEffectable* observer); + void detach(TimeEffectable* observer); + void notify(); + void changeTime(); + void HowManyObserver(); + size_t getCurrentTime() { return currentTime_; } + +private: + std::list list_observer_; + size_t currentTime_; +}; \ No newline at end of file diff --git a/shm/TimeEffectable.hpp b/shm/TimeEffectable.hpp index 1f564df8f..f6bd28fa1 100644 --- a/shm/TimeEffectable.hpp +++ b/shm/TimeEffectable.hpp @@ -2,5 +2,5 @@ class TimeEffectable { public: - virtual void nextDay(){} + virtual void nextDay(){}; }; \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index ac9b56303..3b4d84de9 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -35,7 +35,7 @@ void Ship::load(std::shared_ptr cargo_ptr) { } void Ship::setOwner(Player* newOwner) { - owner_ = newOwner; + owner_ = newOwner; } void Ship::setCrew(size_t newCrew) { @@ -43,6 +43,7 @@ void Ship::setCrew(size_t newCrew) { } void Ship::nextDay() { + std::cout << "PAYDAY" << '\n'; size_t moneyForCrew = crew_; if (owner_) { owner_->SpendMoney(moneyForCrew); diff --git a/shm/ship.hpp b/shm/ship.hpp index fc65abac5..486c265f5 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -4,30 +4,39 @@ #include #include #include "cargo.hpp" +#include "time.hpp" #include "TimeEffectable.hpp" + class Player; //Class responsible for representing ship in game class Ship : public TimeEffectable { public: - Ship() + Ship(Time &time) : id_(-1) - {} + , time_(time) + { + time_.attach(this); + } - Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id) + Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time &time) : capacity_(capacity) , maxCrew_(maxCrew) , crew_(0) , speed_(speed) , name_(name) , id_(id) - {} + , time_(time) + { + time_.attach(this); + } - Ship(int maxCrew, int speed, size_t id) - : Ship(0, maxCrew, speed, "", id) + Ship(int maxCrew, int speed, size_t id, Time &time) + : Ship(0, maxCrew, speed, "", id, time) {} - + + ~Ship(){ time_.detach(this); } void setName(const std::string& name) { name_ = name; } @@ -50,6 +59,7 @@ class Ship : public TimeEffectable { void nextDay() override; void setOwner(Player* newOwner); void setCrew(size_t newCrew); + Time &time_; private: size_t capacity_; @@ -59,5 +69,6 @@ class Ship : public TimeEffectable { std::string name_; const size_t id_; std::vector> shipCargo; - Player* owner_; + Player* owner_ = nullptr; + }; From 90f6010c59cfeb23b50fc9d443d2775593ab9050 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 20 Jul 2021 20:52:40 +0200 Subject: [PATCH 042/151] Fixes in cargos --- shm/alcohol.hpp | 3 +- shm/cargo.hpp | 8 ++--- shm/dryfruit.hpp | 2 +- shm/fruit.hpp | 12 ++++--- shm/item.hpp | 4 ++- shm/main.cpp | 92 ++++++++++++++++++++++++------------------------ 6 files changed, 63 insertions(+), 58 deletions(-) diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 584c76393..006664fdb 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -4,7 +4,8 @@ //Class responsible for representing alcohol in the game class Alcohol : public Cargo { public: - Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + Alcohol(const std::string& name, size_t amount, size_t basePrice, size_t percentage) + :Cargo(name, amount, basePrice), percentage_ {percentage} {} ~Alcohol() override = default; // override from Cargo diff --git a/shm/cargo.hpp b/shm/cargo.hpp index a7d3d082d..fed2daa63 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -7,12 +7,12 @@ class Cargo public: virtual Cargo &operator+=(size_t amount); virtual Cargo &operator-=(size_t amount); - virtual bool operator==(const Cargo &cargo) const = 0; + virtual bool operator==(const Cargo &cargo) const; virtual size_t getPrice() const = 0; - virtual const std::string &getName() const = 0; // TO DO: test deleting Cargo object - virtual size_t getAmount() const = 0; - virtual size_t getBasePrice() const = 0; + virtual const std::string &getName() const { return name_; } // TO DO: test deleting Cargo object + virtual size_t getAmount() const { return amount_; } + virtual size_t getBasePrice() const { return basePrice_; } void printCargo() const; diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp index 54cbb8258..e28904974 100644 --- a/shm/dryfruit.hpp +++ b/shm/dryfruit.hpp @@ -4,7 +4,7 @@ class DryFruit : public Fruit { public: // override from Cargo - const std::string &getName() const override { return "Dry Fruit"; } + const std::string &getName() const override { return name_; } size_t getPrice() const override; // override from Fruit diff --git a/shm/fruit.hpp b/shm/fruit.hpp index 0a46f3272..edd66cfab 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -3,9 +3,11 @@ // Class responsible for fruit representing in game -class Fruit : public Cargo { +class Fruit : public Cargo +{ public: - Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); + Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed) + : Cargo(name, amount, basePrice), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} ~Fruit() override; // override from Cargo @@ -14,9 +16,9 @@ class Fruit : public Cargo { size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } - virtual Cargo& operator--(); - Cargo& operator+=(size_t amount) override; - Cargo& operator-=(size_t amount) override; + virtual Cargo &operator--(); + Cargo &operator+=(size_t amount) override; + Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; size_t getTimeElapsed() const { return time_elapsed_; } diff --git a/shm/item.hpp b/shm/item.hpp index 645803345..d362062fb 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -12,7 +12,9 @@ class Item : public Cargo legendary = 10 }; - Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity) + : Cargo(name, amount, basePrice), rarity_{rarity} {} + ~Item() override = default; // override from Cargo diff --git a/shm/main.cpp b/shm/main.cpp index 6618f55f3..9a217bf24 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -19,63 +19,63 @@ int main() { - std::cout << "Test Cargo" << '\n'; + // std::cout << "Test Cargo" << '\n'; - Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? - Cargo kryptonite("krypton", 20, 200); // ( name, amount, basePrice) - Cargo onion("cebula", 250, 1); // ( name, amount, basePrice) + // Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? + // Cargo kryptonite("krypton", 20, 200); // ( name, amount, basePrice) + // Cargo onion("cebula", 250, 1); // ( name, amount, basePrice) - std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; - std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; + // std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; + // std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; - //cotton -= 100; + // //cotton -= 100; - std::cout << "Test islands" << '\n'; + // std::cout << "Test islands" << '\n'; - Coordinates miami(125.f, 174.f); - Coordinates breslau(180.f, 115.f); - Coordinates chicago(125.f, 174.f); - std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; + // Coordinates miami(125.f, 174.f); + // Coordinates breslau(180.f, 115.f); + // Coordinates chicago(125.f, 174.f); + // std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; - std::cout << "Test ship Titanic" << '\n'; + // std::cout << "Test ship Titanic" << '\n'; - Ship Titanic(20, 90, 1); - //Titanic.addCargo(std::shared_ptr(kryptonite)); - Titanic.load(std::make_shared(kryptonite)); + // Ship Titanic(20, 90, 1); + // //Titanic.addCargo(std::shared_ptr(kryptonite)); + // Titanic.load(std::make_shared(kryptonite)); - std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; - std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; - std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; + // std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; + // std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; + // std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; - std::cout << "Test make_unique ptr ship" << '\n'; - auto ship = std::make_unique(20, 1, 2, "titanic", 3); - ship->load(std::make_shared(cotton)); - size_t shipCargoSize = ship->getCargo().size(); - Player player(std::move(ship), 1, 1); - std::cout << "Vector size: " << shipCargoSize << '\n'; - std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; - std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; - std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; + // std::cout << "Test make_unique ptr ship" << '\n'; + // auto ship = std::make_unique(20, 1, 2, "titanic", 3); + // ship->load(std::make_shared(cotton)); + // size_t shipCargoSize = ship->getCargo().size(); + // Player player(std::move(ship), 1, 1); + // std::cout << "Vector size: " << shipCargoSize << '\n'; + // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + // std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; + // std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; + // std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; - std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; + // std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; - std::cout << "Random islands positions: X | Y" << '\n'; - Map map; - map.DebugPrintIsland(); + // std::cout << "Random islands positions: X | Y" << '\n'; + // Map map; + // map.DebugPrintIsland(); - std::cout << '\n' << "Get miami position: X | Y" << '\n'; - map.addIsland(miami); - Island *is = map.getIsland(miami); - std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; + // std::cout << '\n' << "Get miami position: X | Y" << '\n'; + // map.addIsland(miami); + // Island *is = map.getIsland(miami); + // std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; - std::cout << "Test Store" << '\n'; - Store store(100, 500); //(Money, Avalivable space) - store.cargo_.push_back(std::make_shared(cotton)); - store.cargo_.push_back(std::make_shared(kryptonite)); - std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; - store.sell(&onion, 5, &player); - store.sell(&onion, 55, &player); - std::cout << "Prit store cargo" << '\n'; - store.printStoreCargo(); + // std::cout << "Test Store" << '\n'; + // Store store(100, 500); //(Money, Avalivable space) + // store.cargo_.push_back(std::make_shared(cotton)); + // store.cargo_.push_back(std::make_shared(kryptonite)); + // std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + // store.sell(&onion, 5, &player); + // store.sell(&onion, 55, &player); + // std::cout << "Prit store cargo" << '\n'; + // store.printStoreCargo(); } \ No newline at end of file From 08564da498cf5a7d5a6daf7fb6b91f1c4d3a737c Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 21 Jul 2021 17:29:32 +0200 Subject: [PATCH 043/151] Added virtual destructors --- shm/Storable.cpp | 3 ++- shm/Storable.hpp | 2 +- shm/Store.cpp | 29 ++++++++++++++++++++--------- shm/Store.hpp | 9 +++------ shm/cargo.cpp | 40 +++++++++++++++------------------------- shm/cargo.hpp | 9 +++++---- shm/dryfruit.hpp | 2 +- shm/main.cpp | 45 +++++++++++++++++++++++++++++---------------- shm/ship.hpp | 2 +- 9 files changed, 77 insertions(+), 64 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index cc85fc224..40a974acf 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -5,4 +5,5 @@ void Storable::SpendMoney(int moneyToSpend) { money_ = 0; } money_ -= moneyToSpend; -} \ No newline at end of file +} +Storable::~Storable(){} \ No newline at end of file diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 10618b777..10faccc47 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -10,7 +10,7 @@ class Storable { : money_(money) , availableSpace_(availableSpace) {} - ~Storable(){} + virtual ~Storable(); int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } virtual std::shared_ptr getCargo(size_t index) const = 0; diff --git a/shm/Store.cpp b/shm/Store.cpp index af0b8f671..deb8c04d4 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -4,6 +4,17 @@ //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; + +Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) + { + // cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + // cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); + // cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + // cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + + } + Store::~Store(){} + Cargo* Store::findMatchCargo(Cargo* cargo) { for (auto& el : cargo_) { if(*el == *cargo) { @@ -61,13 +72,13 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling car return Response::done; } -// std::shared_ptr Store::getCargo(size_t index) const -// { -// return nullptr; -// } +std::shared_ptr Store::getCargo(size_t index) const +{ + return nullptr; +} -// void Store::nextDay(){ -// for (auto el : cargo_) { -// el.get()->reduceAmount(); -// } -// } \ No newline at end of file +void Store::nextDay(){ + for (auto el : cargo_) { + el.get()->reduceAmount(); + } +} \ No newline at end of file diff --git a/shm/Store.hpp b/shm/Store.hpp index 645d45bfe..619b49cc9 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -14,12 +14,9 @@ enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; class Store: public Storable, public TimeEffectable { public: - Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} - // cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) - // cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); - // cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - // cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); - + Store(int money, size_t availableSpace); + + virtual ~Store(); Response buy(Cargo* cargo, size_t amount, Player* player); Response sell(Cargo* cargo, size_t amount, Player* player); diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 30d6472f3..b549d7bb4 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -3,33 +3,23 @@ #include "player.hpp" #include "ship.hpp" -Cargo::Cargo(std::string name, size_t amount, size_t basePrice) :name_(name), amount_(amount), basePrice_(basePrice){} -/*size_t Player::gettingCargoAmount() -{ - std::vector shipCargo = ship_->getCargo(); -} -*/ -Cargo &Cargo::operator+=(size_t amount) -{ - auto ship = std::make_unique(20, 1, 2, "titanic", 3); - Player player(std::move(ship), 1, 1); +// Cargo &Cargo::operator+=(size_t amount) +// { +// amount_ += amount; +// return *this; +// } - //if(amount + amount > player.getCargo(0)->getAmount()) - amount_ += amount; - return *this; -} - -Cargo &Cargo::operator-=(size_t amount) -{ - if(amount_ < amount){ - amount_ = 0; - } - else{ - amount_ -= amount; - } - return *this; -} +// Cargo &Cargo::operator-=(size_t amount) +// { +// if(amount_ < amount){ +// amount_ = 0; +// } +// else{ +// amount_ -= amount; +// } +// return *this; +// } bool Cargo::operator==(const Cargo &cargo) const { diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 1ad4f8791..a73b44123 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -6,9 +6,9 @@ class Cargo : public TimeEffectable { public: - virtual Cargo &operator+=(size_t amount); - virtual Cargo &operator-=(size_t amount); - virtual bool operator==(const Cargo &cargo) const = 0; + virtual Cargo &operator+=(size_t amount) = 0; + virtual Cargo &operator-=(size_t amount) = 0; + virtual bool operator==(const Cargo &cargo) const; virtual size_t getPrice() const = 0; virtual const std::string &getName() const = 0; // TO DO: test deleting Cargo object @@ -19,7 +19,8 @@ class Cargo : public TimeEffectable void reduceAmount(); Cargo() = default; - Cargo(std::string name, size_t amount, size_t basePrice); + Cargo(std::string name, size_t amount, size_t basePrice) + :name_(name), amount_(amount), basePrice_(basePrice){}; virtual ~Cargo() = default; protected: diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp index 54bd7dbe8..4257b58f0 100644 --- a/shm/dryfruit.hpp +++ b/shm/dryfruit.hpp @@ -4,7 +4,7 @@ class DryFruit : public Fruit { public: // override from Cargo - const std::string& getName() const override { return name_; } + const std::string& getName() const override { return name_; } // "Dry fruit" size_t getPrice() const override; // override from Fruit diff --git a/shm/main.cpp b/shm/main.cpp index 096d9db92..05ccb8030 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,5 +1,6 @@ #include +#include #include "alcohol.hpp" #include "cargo.hpp" @@ -13,12 +14,17 @@ #include "ship.hpp" #include "Storable.hpp" #include "Store.hpp" -#include + +//Klasy użytkujące cargo: +//1.Store +//2.Storable +//3.Ship +//4.player int main() { - + /* std::cout << "Test Cargo" << '\n'; Fruit banana(150, "banany", 3, 150, 1); // Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed); @@ -38,27 +44,27 @@ int main() std::cout << "Test ship Titanic" << '\n'; - Ship Titanic(20, 90, 1);// Ship(int maxCrew, int speed, size_t id) - std::shared_ptr ptr = static_cast>(&kryptonite); + //Ship Titanic(20, 90, 1);// Ship(int maxCrew, int speed, size_t id) + //std::shared_ptr ptr = static_cast>(&kryptonite); //std::shared_ptr ptr = std::make_shared(100, "Whiskey", 50, 40); - Titanic.load(static_cast>(&kryptonite)); + //Titanic.load(static_cast>(&kryptonite)); // std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; // std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; // std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; - // std::cout << "Test make_unique ptr ship" << '\n'; - // auto ship = std::make_unique(20, 1, 2, "titanic", 3); - // ship->load(std::make_shared(banana)); - // size_t shipCargoSize = ship->getCargo().size(); - // Player player(std::move(ship), 100, 1); - // std::cout << "Vector size: " << shipCargoSize << '\n'; - // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - // std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; - // std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; - // std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; + std::cout << "Test make_unique ptr ship" << '\n'; + auto ship = std::make_unique(20, 1, 2, "titanic", 3); + ship->load(std::make_shared(banana)); + size_t shipCargoSize = ship->getCargo().size(); + Player player(std::move(ship), 100, 1); + std::cout << "Vector size: " << shipCargoSize << '\n'; + std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; + std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; + std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; - // std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; + std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; // std::cout << "Random islands positions: X | Y" << '\n'; // Map map; @@ -93,4 +99,11 @@ int main() // store.nextDay(); // std::cout << "Prit store cargo" << '\n'; // store.printStoreCargo(); + */ + + Player Tester(); + Store sklep(20, 100); + std::cout << sklep.getAvailableSpace(); + sklep.buy(); + } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 5888a1d4e..7fce504f2 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -41,7 +41,7 @@ class Ship : public TimeEffectable { size_t getCrew() const { return crew_; } std::string getName() const { return name_; } size_t getId() const { return id_; } - std::vector> getCargo() { return shipCargo;} + std::vector> getCargo() { return shipCargo;} //instead of getcargo we use load atm. Cargo* findMatchCargo(Cargo* cargo); void load(std::shared_ptr cargo); void unload(Cargo* cargo_ptr); From 0a43340a5eb86c3c194109340ace6f413650515a Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 21 Jul 2021 18:08:40 +0200 Subject: [PATCH 044/151] Testing Store cargo --- shm/Store.cpp | 8 ++++---- shm/Store.hpp | 1 + shm/main.cpp | 8 ++++---- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index deb8c04d4..33a691c52 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -7,10 +7,10 @@ Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) { - // cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) - // cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); - // cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - // cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); + cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); } Store::~Store(){} diff --git a/shm/Store.hpp b/shm/Store.hpp index 619b49cc9..d6881a733 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -27,6 +27,7 @@ class Store: public Storable, public TimeEffectable { void printStoreCargo() { for(auto el : cargo_) { + std::cout << "hej printStoreCargo działa" << '\n'; el -> printCargo(); } } diff --git a/shm/main.cpp b/shm/main.cpp index 05ccb8030..59f0e8aa4 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -100,10 +100,10 @@ int main() // std::cout << "Prit store cargo" << '\n'; // store.printStoreCargo(); */ - - Player Tester(); + auto StatekTester = std::make_unique(20, 1, 2, "titanic", 3); + Player Tester(std::move(StatekTester),20,100); Store sklep(20, 100); - std::cout << sklep.getAvailableSpace(); - sklep.buy(); + std::cout << sklep.getAvailableSpace() << '\n'; + sklep.printStoreCargo(); } \ No newline at end of file From c1a310cd07d3119d10e4492cd10a3af4b155335b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Wed, 21 Jul 2021 19:32:42 +0200 Subject: [PATCH 045/151] Adding virtual constructors --- shm/Storable.cpp | 7 +++++-- shm/Storable.hpp | 3 ++- shm/Store.cpp | 13 +++++++++---- shm/Store.hpp | 2 +- shm/fruit.cpp | 4 ++++ shm/fruit.hpp | 5 ++--- shm/item.hpp | 1 - 7 files changed, 23 insertions(+), 12 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index cc85fc224..1977ce6f0 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -1,8 +1,11 @@ #include "Storable.hpp" -void Storable::SpendMoney(int moneyToSpend) { - if (money_ - moneyToSpend <= 0) { +void Storable::SpendMoney(int moneyToSpend) +{ + if (money_ - moneyToSpend <= 0) + { money_ = 0; } money_ -= moneyToSpend; + } \ No newline at end of file diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 10618b777..d3b8bb44a 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -10,7 +10,8 @@ class Storable { : money_(money) , availableSpace_(availableSpace) {} - ~Storable(){} + virtual ~Storable(){} + int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } virtual std::shared_ptr getCargo(size_t index) const = 0; diff --git a/shm/Store.cpp b/shm/Store.cpp index 994b3eaf5..0479addfa 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -4,6 +4,8 @@ //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} +Store::~Store(){} + Cargo* Store::findMatchCargo(Cargo* cargo) { for (auto& el : cargo_) { if(*el == *cargo) { @@ -13,6 +15,8 @@ Cargo* Store::findMatchCargo(Cargo* cargo) { return nullptr; } + + Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo from store to player { if (player->getAvailableSpace() < amount) @@ -52,11 +56,11 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling car if(Cargo * ptr = findMatchCargo(cargo)) { *ptr += amount; } - else { + //else { //cargo_.push_back(static_cast> (cargo)); - cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); - } + // cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); + // } return Response::done; @@ -71,4 +75,5 @@ void Store::nextDay(){ for (auto el : cargo_) { el.get()->reduceAmount(); } -} \ No newline at end of file +} + diff --git a/shm/Store.hpp b/shm/Store.hpp index 3361104ae..45ca5ee6a 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -12,7 +12,7 @@ enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; class Store: public Storable, public TimeEffectable { public: Store(int money, size_t availableSpace); - + virtual ~Store(); Response buy(Cargo* cargo, size_t amount, Player* player); Response sell(Cargo* cargo, size_t amount, Player* player); diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 8ae64098a..1b1ed1896 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -1,6 +1,10 @@ #include #include "fruit.hpp" + Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed) + : Cargo(name, amount, basePrice), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} +Fruit::~Fruit(){} + size_t Fruit::getPrice() const { if (time_elapsed_ >= expiry_date_) diff --git a/shm/fruit.hpp b/shm/fruit.hpp index edd66cfab..afdc6da4f 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -6,9 +6,8 @@ class Fruit : public Cargo { public: - Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed) - : Cargo(name, amount, basePrice), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} - ~Fruit() override; + Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed); + virtual ~Fruit() override; // override from Cargo size_t getPrice() const override; diff --git a/shm/item.hpp b/shm/item.hpp index d362062fb..8573e0106 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -14,7 +14,6 @@ class Item : public Cargo Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity) : Cargo(name, amount, basePrice), rarity_{rarity} {} - ~Item() override = default; // override from Cargo From f890a34f177098f5f2b196329cf52ae4642648a7 Mon Sep 17 00:00:00 2001 From: kondorski Date: Wed, 21 Jul 2021 21:00:36 +0200 Subject: [PATCH 046/151] TimeEffectable interface --- shm/TimeEffectable.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/TimeEffectable.hpp b/shm/TimeEffectable.hpp index f6bd28fa1..11a2285e3 100644 --- a/shm/TimeEffectable.hpp +++ b/shm/TimeEffectable.hpp @@ -2,5 +2,5 @@ class TimeEffectable { public: - virtual void nextDay(){}; + virtual void nextDay() = 0; }; \ No newline at end of file From 7a05ac4620112db59ecd462aeba442dd7d3fd3f4 Mon Sep 17 00:00:00 2001 From: kondorski Date: Wed, 21 Jul 2021 21:15:31 +0200 Subject: [PATCH 047/151] Delete binary, delete player and ship from Cargo::operator+= --- shm/cargo.cpp | 9 --------- 1 file changed, 9 deletions(-) diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 30d6472f3..79cac459c 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -5,17 +5,8 @@ Cargo::Cargo(std::string name, size_t amount, size_t basePrice) :name_(name), amount_(amount), basePrice_(basePrice){} -/*size_t Player::gettingCargoAmount() -{ - std::vector shipCargo = ship_->getCargo(); -} -*/ Cargo &Cargo::operator+=(size_t amount) { - auto ship = std::make_unique(20, 1, 2, "titanic", 3); - Player player(std::move(ship), 1, 1); - - //if(amount + amount > player.getCargo(0)->getAmount()) amount_ += amount; return *this; } From ddac1bc33e3fa0074d9a10558b0b1f4d9a2df980 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 22 Jul 2021 18:48:24 +0200 Subject: [PATCH 048/151] testing access to store --- shm/Store.cpp | 49 ++++++++++++++++++++++++++++++++----------------- shm/Store.hpp | 2 +- shm/cargo.cpp | 4 +--- shm/main.cpp | 21 ++++++++++++++++++++- 4 files changed, 54 insertions(+), 22 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 33a691c52..82e7e4b47 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -7,10 +7,10 @@ Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) { - cargo_.push_back(std::make_shared(0, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) - cargo_.push_back(std::make_shared(0, "Apple", 10, 100, 0)); - cargo_.push_back(std::make_shared(0, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - cargo_.push_back(std::make_shared(0, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + cargo_.push_back(std::make_shared(10, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + cargo_.push_back(std::make_shared(10, "Apple", 10, 100, 0)); + cargo_.push_back(std::make_shared(10, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + cargo_.push_back(std::make_shared(1, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); } Store::~Store(){} @@ -26,21 +26,36 @@ Cargo* Store::findMatchCargo(Cargo* cargo) { Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo from store to player { - if (player->getAvailableSpace() < amount) + if(findMatchCargo(cargo)) { - return Response::lack_of_space; + std::cout << "Jest cargo" << '\n'; + + if (player->getAvailableSpace() < amount) + { + std::cout << "getAvailbleSpace" << '\n'; + return Response::lack_of_space; + } + if (cargo->getAmount() < amount) + { + std::cout << "getAmount" << '\n'; + return Response::lack_of_cargo; + } + if (player->getMoney() < amount * cargo->getBasePrice()) + { + std::cout << "getMoney" << '\n'; + return Response::lack_of_money; + } + //player->load(cargo); + player->getMoney() - amount * cargo->getBasePrice(); + + return Response::done; } - if (cargo->getAmount() < amount) + else { + std::cout << "ni ma cargo" << '\n'; return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) - { - return Response::lack_of_money; - } - //player->load(cargo); - player->getMoney() - amount * cargo->getBasePrice(); - return Response::done; + } @@ -60,9 +75,9 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling car } //TO DO BUY - add cargo to store, remove cargo from player - // if(Cargo * ptr = findMatchCargo(cargo)) { - // *ptr += amount; - // } + if(Cargo * ptr = findMatchCargo(cargo)) { + *ptr += amount; + } // else { // //cargo_.push_back(static_cast> (cargo)); diff --git a/shm/Store.hpp b/shm/Store.hpp index d6881a733..52b3639a8 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -27,7 +27,7 @@ class Store: public Storable, public TimeEffectable { void printStoreCargo() { for(auto el : cargo_) { - std::cout << "hej printStoreCargo działa" << '\n'; + std::cout << '\n'; el -> printCargo(); } } diff --git a/shm/cargo.cpp b/shm/cargo.cpp index b549d7bb4..2bc4dfe5f 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1,8 +1,6 @@ #include +#include #include "cargo.hpp" -#include "player.hpp" -#include "ship.hpp" - // Cargo &Cargo::operator+=(size_t amount) // { diff --git a/shm/main.cpp b/shm/main.cpp index 59f0e8aa4..729d53f0d 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -100,10 +100,29 @@ int main() // std::cout << "Prit store cargo" << '\n'; // store.printStoreCargo(); */ + Fruit Banana(10, "Banana", 10, 100, 0); + Fruit Kwikens(9, "kwik", 10, 100, 0); auto StatekTester = std::make_unique(20, 1, 2, "titanic", 3); Player Tester(std::move(StatekTester),20,100); Store sklep(20, 100); std::cout << sklep.getAvailableSpace() << '\n'; sklep.printStoreCargo(); - + if(sklep.findMatchCargo(&Banana)) + { + std::cout << "Są banany!" << '\n'; + } + if(sklep.findMatchCargo(&Kwikens)) + { + std::cout << "som ma banana!" << '\n'; + } + else + { + std::cout << "ni ma banana!" << '\n'; + } + //sklep.buy(&Banana, 10, &Tester); + auto testCargoSklepu = sklep.cargo_.at(0); + sklep.buy(testCargoSklepu.get(), Kwikens.getAmount(), &Tester); +// std::cout << Kwikens.getAmount() << '\n'; +// Kwikens.operator-=(5); +// std::cout << Kwikens.getAmount() << '\n'; } \ No newline at end of file From a5ce88ec33ea42efa578f617b599d2c98792c015 Mon Sep 17 00:00:00 2001 From: kondorski Date: Thu, 22 Jul 2021 22:08:45 +0200 Subject: [PATCH 049/151] Time working in Ship, Cargo and Store --- shm/Storable.hpp | 19 ++++++++++++- shm/Store.cpp | 12 +++++---- shm/Store.hpp | 8 +++--- shm/Time.cpp | 2 ++ shm/Time.hpp | 1 + shm/TimeEffectable.hpp | 2 +- shm/alcohol.cpp | 6 +++++ shm/alcohol.hpp | 9 ++++--- shm/cargo.cpp | 9 ++++++- shm/cargo.hpp | 5 ++-- shm/example | Bin 130800 -> 0 bytes shm/fruit.cpp | 23 +++++++++++----- shm/fruit.hpp | 3 ++- shm/item.cpp | 13 +++++++++ shm/item.hpp | 7 +++-- shm/main.cpp | 60 ++++++++++++++++++++++++++--------------- shm/player.cpp | 6 +++-- shm/player.hpp | 2 +- shm/ship.cpp | 31 ++++++++++++++++++++- shm/ship.hpp | 31 ++++----------------- 20 files changed, 172 insertions(+), 77 deletions(-) delete mode 100644 shm/example diff --git a/shm/Storable.hpp b/shm/Storable.hpp index d3b8bb44a..e5adb0df9 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -1,15 +1,31 @@ #pragma once #include #include +#include "Time.hpp" +#include "TimeEffectable.hpp" + class Cargo; -class Storable { +// Interface for classes storing Cargo objects +class Storable : public TimeEffectable +{ public: + // Constructor for objects not subscribed to Time class (i.e. Player) Storable(int money, size_t availableSpace) : money_(money) , availableSpace_(availableSpace) {} + + //Constructod for objects subscribed to Time class (i.e. Store) + Storable(int money, size_t availableSpace, Time* time) + : money_(money) + , availableSpace_(availableSpace) + , time_(time) + { + time_->attach(this); + } + virtual ~Storable(){} int getMoney() {return money_; } @@ -20,4 +36,5 @@ class Storable { protected: int money_; size_t availableSpace_; + Time* time_; }; \ No newline at end of file diff --git a/shm/Store.cpp b/shm/Store.cpp index 0479addfa..c8a679b01 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -1,9 +1,13 @@ -#include "Store.hpp" -#include "player.hpp" #include "cargo.hpp" +#include "player.hpp" +#include "Time.hpp" +#include "Store.hpp" //enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; -Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) {} +Store::Store(int money, size_t availableSpace, Time* time) + : Storable(money, availableSpace, time) + {} + Store::~Store(){} Cargo* Store::findMatchCargo(Cargo* cargo) { @@ -15,8 +19,6 @@ Cargo* Store::findMatchCargo(Cargo* cargo) { return nullptr; } - - Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo from store to player { if (player->getAvailableSpace() < amount) diff --git a/shm/Store.hpp b/shm/Store.hpp index 45ca5ee6a..80fdc7d36 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -2,16 +2,18 @@ #include #include "Storable.hpp" #include "cargo.hpp" -#include "TimeEffectable.hpp" + + +class Time; class Player; //class Cargo; enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; -class Store: public Storable, public TimeEffectable { +class Store: public Storable { public: - Store(int money, size_t availableSpace); + Store(int money, size_t availableSpace, Time* time); virtual ~Store(); Response buy(Cargo* cargo, size_t amount, Player* player); Response sell(Cargo* cargo, size_t amount, Player* player); diff --git a/shm/Time.cpp b/shm/Time.cpp index 9592db078..b3aff4f47 100644 --- a/shm/Time.cpp +++ b/shm/Time.cpp @@ -8,6 +8,8 @@ Time::Time() currentTime_ = 0; } +Time::~Time(){} + void Time::attach(TimeEffectable* observer) { list_observer_.push_back(observer); diff --git a/shm/Time.hpp b/shm/Time.hpp index 5c723fcd0..f9357c442 100644 --- a/shm/Time.hpp +++ b/shm/Time.hpp @@ -7,6 +7,7 @@ class TimeEffectable; class Time { public: Time(); + ~Time(); void attach(TimeEffectable* observer); void detach(TimeEffectable* observer); diff --git a/shm/TimeEffectable.hpp b/shm/TimeEffectable.hpp index 11a2285e3..1f564df8f 100644 --- a/shm/TimeEffectable.hpp +++ b/shm/TimeEffectable.hpp @@ -2,5 +2,5 @@ class TimeEffectable { public: - virtual void nextDay() = 0; + virtual void nextDay(){} }; \ No newline at end of file diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 91e159c24..001cfceb3 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -1,4 +1,5 @@ #include "alcohol.hpp" +#include size_t Alcohol::getPrice() const { @@ -33,4 +34,9 @@ bool Alcohol::operator==(const Cargo& other) const { } catch (std::bad_cast&) { return false; } +} + +void Alcohol::nextDay() +{ + std::cout << "Next day\n"; } \ No newline at end of file diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 006664fdb..2a2b946aa 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -4,8 +4,11 @@ //Class responsible for representing alcohol in the game class Alcohol : public Cargo { public: - Alcohol(const std::string& name, size_t amount, size_t basePrice, size_t percentage) - :Cargo(name, amount, basePrice), percentage_ {percentage} {} + Alcohol(const std::string& name, size_t amount, size_t basePrice, size_t percentage, Time *time) + : Cargo(name, amount, basePrice, time) + , percentage_ {percentage} + {} + ~Alcohol() override = default; // override from Cargo @@ -18,7 +21,7 @@ class Alcohol : public Cargo { Cargo& operator+=(size_t amount) override; Cargo& operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; - + void nextDay() override; private: size_t percentage_; diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 79cac459c..1ce755ea1 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -3,7 +3,14 @@ #include "player.hpp" #include "ship.hpp" -Cargo::Cargo(std::string name, size_t amount, size_t basePrice) :name_(name), amount_(amount), basePrice_(basePrice){} +Cargo::Cargo(std::string name, size_t amount, size_t basePrice, Time *time) + : name_(name) + , amount_(amount) + , basePrice_(basePrice) + , time_(time) + { + time->attach(this); + } Cargo &Cargo::operator+=(size_t amount) { diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 16be745a2..ccc90a824 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -1,5 +1,6 @@ #pragma once #include +#include "Time.hpp" #include "TimeEffectable.hpp" //Class responsible for representing cargo in game @@ -19,11 +20,11 @@ class Cargo : public TimeEffectable void reduceAmount(); Cargo() = default; - Cargo(std::string name, size_t amount, size_t basePrice); + Cargo(std::string name, size_t amount, size_t basePrice, Time *time); virtual ~Cargo() = default; - protected: std::string name_; size_t amount_; size_t basePrice_; + Time* time_; }; diff --git a/shm/example b/shm/example deleted file mode 100644 index 7cb749ed71f0c698f98ff9e294021ebb57d195d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 130800 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%0A&v(B8_@SgpCN}|h@i*%8PX72!^7%F! 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 bD~W1elgOdC$$Gy0TYY|!Wt0zjx557dL~F^| diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 1b1ed1896..56e8cbb8b 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -1,9 +1,16 @@ #include #include "fruit.hpp" - Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed) - : Cargo(name, amount, basePrice), expiry_date_(expiry_date), time_elapsed_(time_elapsed) {} -Fruit::~Fruit(){} + Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time) + : Cargo(name, amount, basePrice, time) + , expiry_date_(expiry_date) + , time_elapsed_(time_elapsed) + {} + +Fruit::~Fruit() +{ + // this->time_.detach(this); +} size_t Fruit::getPrice() const { @@ -36,7 +43,6 @@ Cargo &Fruit::operator+=(size_t amount) Cargo &Fruit::operator-=(size_t amount) { - if (amount_ < amount) { amount_ = 0; @@ -48,12 +54,17 @@ Cargo &Fruit::operator-=(size_t amount) return *this; } -bool Fruit::operator==(const Cargo& other) const { - +bool Fruit::operator==(const Cargo& other) const +{ try { const Fruit& other_fruit = dynamic_cast(other); return Cargo::operator==(other) && expiry_date_ == other_fruit.expiry_date_; } catch (std::bad_cast&) { return false; } +} + +void Fruit::nextDay() +{ + std::cout << "Next day\n"; } \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp index afdc6da4f..2a86ad4a4 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -6,7 +6,7 @@ class Fruit : public Cargo { public: - Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed); + Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time); virtual ~Fruit() override; // override from Cargo @@ -19,6 +19,7 @@ class Fruit : public Cargo Cargo &operator+=(size_t amount) override; Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; + void nextDay() override; size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } diff --git a/shm/item.cpp b/shm/item.cpp index 71007008c..b9cc2bfc5 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -1,4 +1,12 @@ #include "item.hpp" +#include "Time.hpp" + +Item::Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity, Time *time) + : Cargo(name, amount, basePrice, time) + , rarity_(rarity) + { + // this->time_.attach(this); + } size_t Item::getPrice() const { @@ -33,4 +41,9 @@ bool Item::operator==(const Cargo& other) const { } catch (std::bad_cast&) { return false; } +} + +void Item::nextDay() +{ + std::cout << "next day" << '\n'; } \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp index 8573e0106..6f8ae2aad 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -1,5 +1,8 @@ #pragma once #include "cargo.hpp" +#include + +class Time; class Item : public Cargo { @@ -12,8 +15,7 @@ class Item : public Cargo legendary = 10 }; - Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity) - : Cargo(name, amount, basePrice), rarity_{rarity} {} + Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity, Time *time); ~Item() override = default; // override from Cargo @@ -26,6 +28,7 @@ class Item : public Cargo Cargo &operator+=(size_t amount) override; Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; + void nextDay() override; private: Rarity rarity_; diff --git a/shm/main.cpp b/shm/main.cpp index d7dc4a5f5..bfa900d6b 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,6 +1,6 @@ #include - +#include #include "alcohol.hpp" #include "cargo.hpp" #include "coordinates.hpp" @@ -13,17 +13,18 @@ #include "ship.hpp" #include "Storable.hpp" #include "Store.hpp" -#include - int main() { - - // std::cout << "Test Cargo" << '\n'; + Time time; - // Cargo cotton("banany", 15, 150); // ( name, amount, basePrice) bananas does not work, imagine why? - // Cargo kryptonite("krypton", 20, 200); // ( name, amount, basePrice) - // Cargo onion("cebula", 250, 1); // ( name, amount, basePrice) + Time* ptr_time = &time; + + std::cout << "Test Cargo" << '\n'; + + Fruit cotton("banany", 15, 150, 20, 0, ptr_time); // ( name, amount, basePrice) bananas does not work, imagine why? + Item kryptonite("krypton", 20, 200, Item::Rarity::common, ptr_time); // ( name, amount, basePrice) + Item onion("cebula", 250, 1, Item::Rarity::rare, ptr_time); // ( name, amount, basePrice) // std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; // std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; @@ -39,19 +40,19 @@ int main() // std::cout << "Test ship Titanic" << '\n'; - // Ship Titanic(20, 90, 1); + // Ship Titanic(20, 90, 1, time); // //Titanic.addCargo(std::shared_ptr(kryptonite)); - // Titanic.load(std::make_shared(kryptonite)); + // Titanic.load(std::make_shared(kryptonite)); // std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; // std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; // std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; // std::cout << "Test make_unique ptr ship" << '\n'; - // auto ship = std::make_unique(20, 1, 2, "titanic", 3); - // ship->load(std::make_shared(cotton)); + auto ship = std::make_unique(20, 1, 2, "titanic", 3, ptr_time); + // ship->load(std::make_shared(cotton)); // size_t shipCargoSize = ship->getCargo().size(); - // Player player(std::move(ship), 1, 1); + Player player(std::move(ship), 1, 1); // std::cout << "Vector size: " << shipCargoSize << '\n'; // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; // std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; @@ -69,13 +70,28 @@ int main() // Island *is = map.getIsland(miami); // std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; - // std::cout << "Test Store" << '\n'; - // Store store(100, 500); //(Money, Avalivable space) - // store.cargo_.push_back(std::make_shared(cotton)); - // store.cargo_.push_back(std::make_shared(kryptonite)); - // std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; - // store.sell(&onion, 5, &player); - // store.sell(&onion, 55, &player); - // std::cout << "Print store cargo" << '\n'; - // store.printStoreCargo(); + std::cout << "Test Store" << '\n'; + Store store(100, 500, ptr_time); //(Money, Avalivable space) + + store.cargo_.push_back(std::make_shared(cotton)); + store.cargo_.push_back(std::make_shared(kryptonite)); + store.printStoreCargo(); + time.changeTime(); + std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + store.sell(&onion, 5, &player); + store.sell(&onion, 55, &player); + std::cout << "Print store cargo" << '\n'; + store.printStoreCargo(); + + auto ship1 = std::make_unique(20, 1, 2, "Uboot", 3, ptr_time); + // ship1->setCrew(50); + // Player player11 (ship, 1000, 1000); + // Player* player1 = player11; + // ship->setOwner(player1); + // time.HowManyObserver(); + // std::cout << player1->getMoney() << '\n'; + // time.changeTime(); + // std::cout << player1->getMoney() << '\n'; + time.HowManyObserver(); + time.changeTime(); } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index e0a564bb8..221e2d5d6 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -4,11 +4,13 @@ #include "player.hpp" #include "ship.hpp" -Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) { +Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) +{ ship_ = std::move(ship); } -const std::unique_ptr& Player::getShip() { +const std::unique_ptr& Player::getShip() +{ return ship_; } diff --git a/shm/player.hpp b/shm/player.hpp index 6c8c788cb..42632e189 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -18,4 +18,4 @@ class Player : public Storable{ size_t getSpeed() const; std::shared_ptr getCargo(size_t index) const override; -}; +}; \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index 3b4d84de9..0c9a86353 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,6 +1,36 @@ #include "ship.hpp" #include "player.hpp" +Ship::Ship(Time* time) + : id_(-1) + , time_(time) + { + time_->attach(this); + } + + Ship::Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time* time) + : capacity_(capacity) + , maxCrew_(maxCrew) + , crew_(0) + , speed_(speed) + , name_(name) + , id_(id) + , time_(time) + { + time_->attach(this); + } + +Ship::Ship(int maxCrew, int speed, size_t id, Time* time) + : Ship(0, maxCrew, speed, "", id, time) + { + time_->attach(this); + } + +Ship::~Ship() +{ + time_->detach(this); +} + Ship& Ship::operator-=(size_t num) { if (crew_ < num) { crew_ = 0; @@ -43,7 +73,6 @@ void Ship::setCrew(size_t newCrew) { } void Ship::nextDay() { - std::cout << "PAYDAY" << '\n'; size_t moneyForCrew = crew_; if (owner_) { owner_->SpendMoney(moneyForCrew); diff --git a/shm/ship.hpp b/shm/ship.hpp index 486c265f5..9f251253e 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -13,30 +13,10 @@ class Player; //Class responsible for representing ship in game class Ship : public TimeEffectable { public: - Ship(Time &time) - : id_(-1) - , time_(time) - { - time_.attach(this); - } - - Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time &time) - : capacity_(capacity) - , maxCrew_(maxCrew) - , crew_(0) - , speed_(speed) - , name_(name) - , id_(id) - , time_(time) - { - time_.attach(this); - } - - Ship(int maxCrew, int speed, size_t id, Time &time) - : Ship(0, maxCrew, speed, "", id, time) - {} - - ~Ship(){ time_.detach(this); } + Ship(Time* time); + Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time* time); + Ship(int maxCrew, int speed, size_t id, Time* time); + ~Ship(); void setName(const std::string& name) { name_ = name; } @@ -59,7 +39,6 @@ class Ship : public TimeEffectable { void nextDay() override; void setOwner(Player* newOwner); void setCrew(size_t newCrew); - Time &time_; private: size_t capacity_; @@ -70,5 +49,5 @@ class Ship : public TimeEffectable { const size_t id_; std::vector> shipCargo; Player* owner_ = nullptr; - + Time* time_; }; From 5c0af0d6493644ae8ce71380874a51191dec1a97 Mon Sep 17 00:00:00 2001 From: karo Date: Fri, 23 Jul 2021 13:32:28 +0200 Subject: [PATCH 050/151] rest of zad3 and fin zad5 --- shm/Store.hpp | 28 ++++++++++++++++++++-------- shm/alcohol.cpp | 4 ++++ shm/alcohol.hpp | 1 + shm/cargo.cpp | 6 +++++- shm/cargo.hpp | 1 + shm/dryfruit.cpp | 17 +++++++++++------ shm/dryfruit.hpp | 2 ++ shm/fruit.cpp | 11 +++++++---- shm/fruit.hpp | 2 ++ shm/item.cpp | 4 ++++ shm/item.hpp | 11 +++++++---- shm/main.cpp | 28 ++++++++++++++++++++++++++++ 12 files changed, 92 insertions(+), 23 deletions(-) diff --git a/shm/Store.hpp b/shm/Store.hpp index 45ca5ee6a..90dd3cbaa 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -1,15 +1,18 @@ -#include #include +#include #include "Storable.hpp" -#include "cargo.hpp" #include "TimeEffectable.hpp" +#include "cargo.hpp" class Player; //class Cargo; -enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; +enum class Response { done, + lack_of_money, + lack_of_cargo, + lack_of_space }; -class Store: public Storable, public TimeEffectable { +class Store : public Storable, public TimeEffectable { public: Store(int money, size_t availableSpace); virtual ~Store(); @@ -20,10 +23,19 @@ class Store: public Storable, public TimeEffectable { Cargo* findMatchCargo(Cargo* cargo); std::vector> cargo_; void nextDay() override; - + void printStoreCargo() { - for(auto el : cargo_) { - el -> printCargo(); + for (auto el : cargo_) { + el->printCargo(); } } -}; \ No newline at end of file + + friend std::ostream& operator<<(std::ostream& out, const Store& store) { + out << "Store: \n"; + for (auto& el : store.cargo_) { + out << el.get()->getCargoInfo(); + } + + return out; + } +}; diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 91e159c24..03e79dbab 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -33,4 +33,8 @@ bool Alcohol::operator==(const Cargo& other) const { } catch (std::bad_cast&) { return false; } +} + +void Alcohol::nextDay(){ + basePrice_ += 2; } \ No newline at end of file diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 006664fdb..680a50f99 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -18,6 +18,7 @@ class Alcohol : public Cargo { Cargo& operator+=(size_t amount) override; Cargo& operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; + void nextDay() override; private: diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 30d6472f3..3b8ac0663 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -37,7 +37,11 @@ bool Cargo::operator==(const Cargo &cargo) const } void Cargo::printCargo() const { - std::cout << "Cargo Name: " << name_ << ", amount: " << amount_ << '\n'; + std::cout << "Cargo Name: " << name_ << ", amount: " << amount_ << ", price: " << getPrice() <<'\n'; +} + +std::string Cargo::getCargoInfo(){ + return "Cargo Name: " + name_ + ", amount: " + std::to_string(amount_) + ", price: " + std::to_string(getPrice()) +'\n'; } void Cargo::reduceAmount(){ diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 16be745a2..efa506008 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -16,6 +16,7 @@ class Cargo : public TimeEffectable virtual size_t getBasePrice() const { return basePrice_; } void printCargo() const; + std::string getCargoInfo(); void reduceAmount(); Cargo() = default; diff --git a/shm/dryfruit.cpp b/shm/dryfruit.cpp index 27e5f8c0a..1c8935473 100644 --- a/shm/dryfruit.cpp +++ b/shm/dryfruit.cpp @@ -1,18 +1,23 @@ #include "dryfruit.hpp" -size_t DryFruit::getPrice() const -{ +size_t DryFruit::getPrice() const { if (time_elapsed_ >= expiry_date_) return 0; return static_cast(3 * basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); } -Cargo &DryFruit::operator--() -{ - if (++counter_ == 10) - { +Cargo& DryFruit::operator--() { + if (++counter_ == 10) { ++time_elapsed_; counter_ = 0; } return *this; }; + +void DryFruit::nextDay() { + if (basePrice_ - 1 == 0) { + basePrice_ = 0; + } else { + basePrice_ -= 1; + } +} \ No newline at end of file diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp index e28904974..3150a0d29 100644 --- a/shm/dryfruit.hpp +++ b/shm/dryfruit.hpp @@ -10,6 +10,8 @@ class DryFruit : public Fruit { // override from Fruit Cargo& operator--() override; + void nextDay() override; + private: size_t counter_{0}; }; \ No newline at end of file diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 1b1ed1896..46ef732f0 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -7,10 +7,6 @@ Fruit::~Fruit(){} size_t Fruit::getPrice() const { - if (time_elapsed_ >= expiry_date_) - { - return 0; - } return static_cast(basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); } @@ -56,4 +52,11 @@ bool Fruit::operator==(const Cargo& other) const { } catch (std::bad_cast&) { return false; } +} + +void Fruit::nextDay() { + if (time_elapsed_ >= expiry_date_) + { + basePrice_ = 0; + } } \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp index afdc6da4f..51372d72e 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -23,6 +23,8 @@ class Fruit : public Cargo size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } + void nextDay() override; + protected: size_t time_elapsed_{0}; size_t expiry_date_; diff --git a/shm/item.cpp b/shm/item.cpp index 71007008c..71b157fd6 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -33,4 +33,8 @@ bool Item::operator==(const Cargo& other) const { } catch (std::bad_cast&) { return false; } +} + +void Item::nextDay() { + basePrice_ += 1; } \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp index 8573e0106..6f3c8a503 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -1,16 +1,17 @@ #pragma once #include "cargo.hpp" -class Item : public Cargo -{ -public: - enum class Rarity +enum class Rarity { common = 1, rare = 3, epic = 6, legendary = 10 }; + +class Item : public Cargo +{ +public: Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity) : Cargo(name, amount, basePrice), rarity_{rarity} {} @@ -27,6 +28,8 @@ class Item : public Cargo Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; + void nextDay() override; + private: Rarity rarity_; }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index d7dc4a5f5..04165625f 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -78,4 +78,32 @@ int main() // store.sell(&onion, 55, &player); // std::cout << "Print store cargo" << '\n'; // store.printStoreCargo(); + +/* + Alcohol a("A", 1, 1, 96); + Fruit f("F", 1, 1, 5000, 1); + //DryFruit* df = new Fruit("DF", 1, 1, 12, 1); + Item i("I", 1, 1, Rarity::common); + + std::cout << "Alcohol: " << a.getPrice() << "\n"; + std::cout << "Fruit: " << f.getPrice() << "\n"; + std::cout << "Item: " << i.getPrice() << "\n"; + + a.nextDay(); + f.nextDay(); + i.nextDay(); + + std::cout << "Alcohol: " << a.getPrice() << "\n"; + std::cout << "Fruit: " << f.getPrice() << "\n"; + std::cout << "Item: " << i.getPrice() << "\n"; + + Store store(100, 500); //(Money, Avalivable space) + Fruit cotton("banany", 15, 150,1,1); // ( name, amount, basePrice) bananas does not work, imagine why? + Fruit kryptonite("krypton", 20, 200,1,1); // ( name, amount, basePrice) + + store.cargo_.push_back(std::make_shared(cotton)); + store.cargo_.push_back(std::make_shared(kryptonite)); + + std::cout << store;*/ + } \ No newline at end of file From 2b9b0c8845c627de2acc5b79b829b12be4fd802d Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Fri, 23 Jul 2021 20:33:06 +0200 Subject: [PATCH 051/151] TODO ship cargo, store money --- shm/Storable.cpp | 7 +++++ shm/Storable.hpp | 1 + shm/Store.cpp | 68 ++++++++++++++++++++++++++++++++---------------- shm/Store.hpp | 12 +++------ shm/cargo.cpp | 7 ++++- shm/cargo.hpp | 2 ++ shm/main.cpp | 22 +++++++++------- shm/player.cpp | 11 +++++++- shm/player.hpp | 3 ++- shm/ship.cpp | 10 ++++++- shm/ship.hpp | 11 ++++++-- 11 files changed, 108 insertions(+), 46 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index 40a974acf..c94d100ca 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -6,4 +6,11 @@ void Storable::SpendMoney(int moneyToSpend) { } money_ -= moneyToSpend; } +void Storable::EarnMoney(int moneyToEarn) +{ + if(moneyToEarn > 0) + { + money_ += moneyToEarn; + } +} Storable::~Storable(){} \ No newline at end of file diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 10faccc47..ba883a3ef 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -15,6 +15,7 @@ class Storable { size_t getAvailableSpace() {return availableSpace_; } virtual std::shared_ptr getCargo(size_t index) const = 0; void SpendMoney(int moneyToSpend); + void EarnMoney(int moneyToEarn); protected: int money_; diff --git a/shm/Store.cpp b/shm/Store.cpp index 82e7e4b47..121d3334a 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -24,11 +24,13 @@ Cargo* Store::findMatchCargo(Cargo* cargo) { return nullptr; } -Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo from store to player +Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player)//Buying cargo from store to player { - if(findMatchCargo(cargo)) + if(findMatchCargo(cargo.get())) { - std::cout << "Jest cargo" << '\n'; + auto price = amount * cargo->getBasePrice(); + + std::cout << "There is cargo" << '\n'; if (player->getAvailableSpace() < amount) { @@ -40,49 +42,62 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player)//Buying cargo f std::cout << "getAmount" << '\n'; return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) + if (player->getMoney() < price) { std::cout << "getMoney" << '\n'; return Response::lack_of_money; } - //player->load(cargo); - player->getMoney() - amount * cargo->getBasePrice(); + + player->SpendMoney(price); + player->load(cargo, amount); + return Response::done; } else { - std::cout << "ni ma cargo" << '\n'; + std::cout << "there isn`t cargo" << '\n'; return Response::lack_of_cargo; } } -Response Store::sell(Cargo *cargo, size_t amount, Player *player) // Selling cargo from Player to Store +Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) // Selling cargo from Player to Store { - if (player->getAvailableSpace() < amount) + if(findMatchCargo(cargo.get())) { - return Response::lack_of_space; + std::cout << "There is cargo" << '\n'; + auto price = amount * cargo->getBasePrice(); + + if (player->getAvailableSpace() < amount) + { + std::cout << "getAvailbleSpace" << '\n'; + return Response::lack_of_space; + } + if (cargo->getAmount() < amount) + { + std::cout << "getAmount" << '\n'; + return Response::lack_of_cargo; + } + if (player->getMoney() < amount * cargo->getBasePrice()) + { + std::cout << "getMoney" << '\n'; + return Response::lack_of_money; + } + + player->unload(cargo); + player->EarnMoney(price); + + return Response::done; } - if (cargo->getAmount() < amount) + else { + std::cout << "ni ma cargo" << '\n'; return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) - { - return Response::lack_of_money; - } //TO DO BUY - add cargo to store, remove cargo from player - if(Cargo * ptr = findMatchCargo(cargo)) { - *ptr += amount; - } - // else { - - // //cargo_.push_back(static_cast> (cargo)); - // cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); - // } return Response::done; } @@ -96,4 +111,11 @@ void Store::nextDay(){ for (auto el : cargo_) { el.get()->reduceAmount(); } +} + +void Store::printStoreCargo(){ + for(auto el : cargo_) { + std::cout << '\n'; + el -> printCargo(); + } } \ No newline at end of file diff --git a/shm/Store.hpp b/shm/Store.hpp index 52b3639a8..cba7719e1 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -17,18 +17,14 @@ class Store: public Storable, public TimeEffectable { Store(int money, size_t availableSpace); virtual ~Store(); - Response buy(Cargo* cargo, size_t amount, Player* player); - Response sell(Cargo* cargo, size_t amount, Player* player); + Response buy(std::shared_ptr cargo, size_t amount, Player* player); + Response sell(std::shared_ptr cargo, size_t amount, Player* player); std::shared_ptr getCargo(size_t index) const override; Cargo* findMatchCargo(Cargo* cargo); std::vector> cargo_; void nextDay() override; - void printStoreCargo() { - for(auto el : cargo_) { - std::cout << '\n'; - el -> printCargo(); - } - } + void printStoreCargo(); + }; \ No newline at end of file diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 2bc4dfe5f..21e696b77 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -35,4 +35,9 @@ void Cargo::reduceAmount(){ else{ amount_ -= 1; } -} \ No newline at end of file +} + +// void Cargo::increaseAmount() +// { + +// } \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index a73b44123..8f1a0743f 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -17,6 +17,8 @@ class Cargo : public TimeEffectable void printCargo() const; void reduceAmount(); + void loadCargo(); + void increaseAmount(); Cargo() = default; Cargo(std::string name, size_t amount, size_t basePrice) diff --git a/shm/main.cpp b/shm/main.cpp index 729d53f0d..8fe3b1ada 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -103,26 +103,30 @@ int main() Fruit Banana(10, "Banana", 10, 100, 0); Fruit Kwikens(9, "kwik", 10, 100, 0); auto StatekTester = std::make_unique(20, 1, 2, "titanic", 3); - Player Tester(std::move(StatekTester),20,100); + Player Tester(std::move(StatekTester),1000,100); Store sklep(20, 100); std::cout << sklep.getAvailableSpace() << '\n'; sklep.printStoreCargo(); + //StatekTester->printShipCargo(); if(sklep.findMatchCargo(&Banana)) { - std::cout << "Są banany!" << '\n'; + std::cout << "bananas!" << '\n'; } if(sklep.findMatchCargo(&Kwikens)) { - std::cout << "som ma banana!" << '\n'; + std::cout << "Banananas!" << '\n'; } else { - std::cout << "ni ma banana!" << '\n'; + std::cout << "No banana!" << '\n'; } - //sklep.buy(&Banana, 10, &Tester); + + std::cout << "tester money: " << Tester.getMoney() << '\n'; + //sklep.buy(Banana, 10, &Tester); auto testCargoSklepu = sklep.cargo_.at(0); - sklep.buy(testCargoSklepu.get(), Kwikens.getAmount(), &Tester); -// std::cout << Kwikens.getAmount() << '\n'; -// Kwikens.operator-=(5); -// std::cout << Kwikens.getAmount() << '\n'; + sklep.buy(testCargoSklepu, 5, &Tester); + //StatekTester->cargo_.push_back(testCargoSklepu); + std::cout << "tester money: " << Tester.getMoney() << '\n'; + std::cout << "sklep money: " << sklep.getMoney() << '\n'; + } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index e0a564bb8..e642315e5 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -42,8 +42,17 @@ size_t Player::calculateAvailableSpace() { std::cout << "Cargo amount(po obliczeniach): "<< capacity - cargoAmount << '\n'; if(capacity - cargoAmount < 0){ - std::cout << "Miałeś za mały statek biedaku teraz masz 0 pojemności bo ci zatonął" << '\n'; + std::cout << "something went wrong and you have lost your cargo" << '\n'; return 0; } return capacity - cargoAmount; } + +void Player::load(std::shared_ptr loadCargo, size_t amount) +{ + std::cout << "wywołuje sie? " << '\n'; +} +void Player::unload(std::shared_ptr unloadCargo, size_t amount) +{ + +} diff --git a/shm/player.hpp b/shm/player.hpp index 6c8c788cb..db62fc290 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -9,7 +9,6 @@ class Player : public Storable{ private: std::unique_ptr ship_; size_t calculateAvailableSpace(); //calculates space available on the ship based on cargo and ship capacity - size_t gettingCargoAmount(); public: Player(std::unique_ptr ship, int money, int availableSpace); @@ -18,4 +17,6 @@ class Player : public Storable{ size_t getSpeed() const; std::shared_ptr getCargo(size_t index) const override; + void load(std::shared_ptr, size_t); + void unload(std::shared_ptr, size_t); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index ac9b56303..20fd74e15 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -26,7 +26,7 @@ Cargo* Ship::findMatchCargo(Cargo* cargo) { } return nullptr; } -void Ship::load(std::shared_ptr cargo_ptr) { +void Ship::load(std::shared_ptr cargo_ptr) { // Not working if (Cargo* ptr = findMatchCargo(cargo_ptr.get())) { *ptr += cargo_ptr->getAmount(); return; @@ -47,4 +47,12 @@ void Ship::nextDay() { if (owner_) { owner_->SpendMoney(moneyForCrew); } +} +void Ship::printShipCargo() +{ + for(auto & el : CargoOnShip) + { + std::cout << '\n'; + el -> printCargo(); + } } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 7fce504f2..7369b3e4f 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -5,7 +5,7 @@ #include #include "cargo.hpp" #include "TimeEffectable.hpp" - +#include "fruit.hpp" class Player; //Class responsible for representing ship in game @@ -22,7 +22,10 @@ class Ship : public TimeEffectable { , speed_(speed) , name_(name) , id_(id) - {} + { + CargoOnShip.reserve(10); + CargoOnShip.push_back(std::make_shared(10, "Apple", 10, 100, 0)); + } Ship(int maxCrew, int speed, size_t id) : Ship(0, maxCrew, speed, "", id) @@ -42,9 +45,13 @@ class Ship : public TimeEffectable { std::string getName() const { return name_; } size_t getId() const { return id_; } std::vector> getCargo() { return shipCargo;} //instead of getcargo we use load atm. + + std::vector> CargoOnShip; + Cargo* findMatchCargo(Cargo* cargo); void load(std::shared_ptr cargo); void unload(Cargo* cargo_ptr); + void printShipCargo(); void nextDay() override; void setOwner(Player* newOwner); From ba49fa659f85f90ac056ce5c8a22ea02e359d71c Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 24 Jul 2021 12:05:59 +0200 Subject: [PATCH 052/151] main working --- shm/Store.hpp | 2 +- shm/alcohol.hpp | 2 +- shm/dryfruit.cpp | 4 ++ shm/dryfruit.hpp | 2 + shm/fruit.cpp | 2 - shm/fruit.hpp | 3 +- shm/item.cpp | 4 +- shm/item.hpp | 1 - shm/main.cpp | 121 +++++++++++++++++++++++------------------------ 9 files changed, 69 insertions(+), 72 deletions(-) diff --git a/shm/Store.hpp b/shm/Store.hpp index 2ec2c5c05..5cb52532a 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -15,7 +15,7 @@ enum class Response { done, lack_of_cargo, lack_of_space }; -class Store : public Storable, public TimeEffectable { +class Store : public Storable { public: Store(int money, size_t availableSpace, Time* time); diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 2a2b946aa..728b7bc12 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -6,7 +6,7 @@ class Alcohol : public Cargo { public: Alcohol(const std::string& name, size_t amount, size_t basePrice, size_t percentage, Time *time) : Cargo(name, amount, basePrice, time) - , percentage_ {percentage} + , percentage_ (percentage) {} ~Alcohol() override = default; diff --git a/shm/dryfruit.cpp b/shm/dryfruit.cpp index 1c8935473..ccef68b43 100644 --- a/shm/dryfruit.cpp +++ b/shm/dryfruit.cpp @@ -1,5 +1,9 @@ #include "dryfruit.hpp" +DryFruit::DryFruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time) + : Fruit(name, amount, basePrice, expiry_date, time_elapsed, time) + {} + size_t DryFruit::getPrice() const { if (time_elapsed_ >= expiry_date_) return 0; diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp index 3150a0d29..10108be93 100644 --- a/shm/dryfruit.hpp +++ b/shm/dryfruit.hpp @@ -4,6 +4,8 @@ class DryFruit : public Fruit { public: // override from Cargo + DryFruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time); + const std::string &getName() const override { return name_; } size_t getPrice() const override; diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 44cde34ec..71c0b1e08 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -60,12 +60,10 @@ bool Fruit::operator==(const Cargo& other) const } } - void Fruit::nextDay() { if (time_elapsed_ >= expiry_date_) { basePrice_ = 0; } - std::cout << "Next day\n"; } \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp index ab9b88c77..c1166545e 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -19,8 +19,7 @@ class Fruit : public Cargo Cargo &operator+=(size_t amount) override; Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; - void nextDay() override; - + size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } diff --git a/shm/item.cpp b/shm/item.cpp index df64d7145..32896dff3 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -4,9 +4,7 @@ Item::Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity, Time *time) : Cargo(name, amount, basePrice, time) , rarity_(rarity) - { - // this->time_.attach(this); - } + {} size_t Item::getPrice() const { diff --git a/shm/item.hpp b/shm/item.hpp index 9503e2780..c5231e7d2 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -29,7 +29,6 @@ class Item : public Cargo Cargo &operator+=(size_t amount) override; Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; - void nextDay() override; void nextDay() override; diff --git a/shm/main.cpp b/shm/main.cpp index 9fe78a421..95614b07a 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -13,99 +13,94 @@ #include "ship.hpp" #include "Storable.hpp" #include "Store.hpp" +#include "Time.hpp" int main() { - Time time; - - Time* ptr_time = &time; + Time* ptr_time = new Time; + Store store(100, 500, ptr_time); std::cout << "Test Cargo" << '\n'; - Fruit cotton("banany", 15, 150, 20, 0, ptr_time); // ( name, amount, basePrice) bananas does not work, imagine why? - Item kryptonite("krypton", 20, 200, Item::Rarity::common, ptr_time); // ( name, amount, basePrice) - Item onion("cebula", 250, 1, Item::Rarity::rare, ptr_time); // ( name, amount, basePrice) + Fruit bananas("banany", 15, 150, 20, 0, ptr_time); + Item kryptonite("krypton", 20, 200, Rarity::common, ptr_time); + Item onion("cebula", 250, 1, Rarity::rare, ptr_time); - // std::cout << (onion == cotton) << " " << (cotton == kryptonite) << " " << (onion == kryptonite) << "\n"; - // std::cout << cotton.getAmount() << " " << cotton.getBasePrice() << " " << cotton.getName() << "\n\n"; - // //cotton -= 100; + std::cout << (onion == bananas) << " " << (bananas == kryptonite) << " " << (onion == kryptonite) << "\n"; + std::cout << bananas.getAmount() << " " << bananas.getBasePrice() << " " << bananas.getName() << "\n\n"; - // std::cout << "Test islands" << '\n'; + std::cout << "Test islands" << '\n'; - // Coordinates miami(125.f, 174.f); - // Coordinates breslau(180.f, 115.f); - // Coordinates chicago(125.f, 174.f); - // std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; + Coordinates miami(125.f, 174.f); + Coordinates breslau(180.f, 115.f); + Coordinates chicago(125.f, 174.f); + std::cout << (breslau == miami) << " " << (chicago == breslau) << " " << (miami == chicago) << "\n\n"; - // std::cout << "Test ship Titanic" << '\n'; + std::cout << "Test ship Titanic" << '\n'; - // Ship Titanic(20, 90, 1, time); - // //Titanic.addCargo(std::shared_ptr(kryptonite)); - // Titanic.load(std::make_shared(kryptonite)); + Ship Titanic(20, 90, 1, ptr_time); + //Titanic.addCargo(std::shared_ptr(kryptonite)); + Titanic.load(std::make_shared(kryptonite)); - // std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; - // std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; - // std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; + std::cout << "Vector size: " << Titanic.getCargo().size() << '\n'; + std::cout << "Titanic cargo: " << Titanic.getCargo()[0]->getName() << '\n'; + std::cout << Titanic.getCargo()[0]->getAmount() << "\n\n"; - // std::cout << "Test make_unique ptr ship" << '\n'; + std::cout << "Test make_unique ptr ship" << '\n'; auto ship = std::make_unique(20, 1, 2, "titanic", 3, ptr_time); - // ship->load(std::make_shared(cotton)); - // size_t shipCargoSize = ship->getCargo().size(); + ship->load(std::make_shared(bananas)); + size_t shipCargoSize = ship->getCargo().size(); Player player(std::move(ship), 1, 1); - // std::cout << "Vector size: " << shipCargoSize << '\n'; - // std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; - // std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; - // std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; - // std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; + std::cout << "Vector size: " << shipCargoSize << '\n'; + std::cout << "Player's ship speed: " << player.getShip()->getSpeed() << '\n'; + std::cout << "Player's ship cargo name: " << player.getCargo(0)->getName() << '\n'; + std::cout << "Player's ship cargo (should be 15): " << player.getCargo(0)->getAmount() << '\n'; + std::cout << "Player's ship cargo base price: " << player.getCargo(0)->getBasePrice() << '\n'; - // std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; + std::cout << "Available space: " << player.getAvailableSpace() << "\n\n"; - // std::cout << "Random islands positions: X | Y" << '\n'; - // Map map; - // map.DebugPrintIsland(); + std::cout << "Random islands positions: X | Y" << '\n'; + Map map; + map.DebugPrintIsland(); - // std::cout << '\n' << "Get miami position: X | Y" << '\n'; - // map.addIsland(miami); - // Island *is = map.getIsland(miami); - // std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; + std::cout << '\n' << "Get miami position: X | Y" << '\n'; + map.addIsland(miami); + Island *is = map.getIsland(miami); + std::cout << is->getPosition().GetPositionX() << " " << is->getPosition().GetPositionY() << '\n'; std::cout << "Test Store" << '\n'; - Store store(100, 500, ptr_time); //(Money, Avalivable space) - store.cargo_.push_back(std::make_shared(cotton)); - store.cargo_.push_back(std::make_shared(kryptonite)); - // std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; - // store.sell(&onion, 5, &player); - // store.sell(&onion, 55, &player); - // std::cout << "Print store cargo" << '\n'; + + store.cargo_.push_back(std::make_shared(bananas)); + store.cargo_.push_back(std::make_shared(kryptonite)); + std::cout << store.findMatchCargo(&bananas) << " adres bananas: " << store.cargo_[0].get() <<'\n'; + store.sell(&onion, 5, &player); + store.sell(&onion, 55, &player); + std::cout << "Print store cargo" << '\n'; store.printStoreCargo(); - time.changeTime(); -/* - Alcohol a("A", 1, 1, 96); - Fruit f("F", 1, 1, 5000, 1); - //DryFruit* df = new Fruit("DF", 1, 1, 12, 1); - Item i("I", 1, 1, Rarity::common); + ptr_time->changeTime(); + + Alcohol a("A", 1, 1, 96, ptr_time); + Fruit f("F", 1, 1, 5000, 1, ptr_time); + DryFruit* df = new DryFruit("DF", 1, 1, 12, 1, ptr_time); + Item i("I", 1, 1, Rarity::common, ptr_time); std::cout << "Alcohol: " << a.getPrice() << "\n"; std::cout << "Fruit: " << f.getPrice() << "\n"; std::cout << "Item: " << i.getPrice() << "\n"; - a.nextDay(); - f.nextDay(); - i.nextDay(); + ptr_time->changeTime(); - std::cout << "Alcohol: " << a.getPrice() << "\n"; + //std::cout << "Alcohol: " << a.getPrice() << "\n"; std::cout << "Fruit: " << f.getPrice() << "\n"; std::cout << "Item: " << i.getPrice() << "\n"; - Store store(100, 500); //(Money, Avalivable space) - Fruit cotton("banany", 15, 150,1,1); // ( name, amount, basePrice) bananas does not work, imagine why? - Fruit kryptonite("krypton", 20, 200,1,1); // ( name, amount, basePrice) - store.cargo_.push_back(std::make_shared(cotton)); - store.cargo_.push_back(std::make_shared(kryptonite));*/ + + store.cargo_.push_back(std::make_shared(bananas)); + store.cargo_.push_back(std::make_shared(kryptonite)); - std::cout << store.findMatchCargo(&cotton) << " adres cotton: " << store.cargo_[0].get() <<'\n'; + std::cout << store.findMatchCargo(&bananas) << " adres bananas: " << store.cargo_[0].get() <<'\n'; store.sell(&onion, 5, &player); store.sell(&onion, 55, &player); std::cout << "Print store cargo" << '\n'; @@ -120,6 +115,8 @@ int main() // std::cout << player1->getMoney() << '\n'; // time.changeTime(); // std::cout << player1->getMoney() << '\n'; - time.HowManyObserver(); - time.changeTime(); + ptr_time->HowManyObserver(); + ptr_time->changeTime(); + + DryFruit fruit ("name", 1, 1, 1, 0, ptr_time); } \ No newline at end of file From fed4d2c5d14e7ceb5a8724b3ce789d423b73e5db Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 24 Jul 2021 15:03:53 +0200 Subject: [PATCH 053/151] Remove print from Alcohol::nextDay() and Item::nextDay() --- shm/alcohol.cpp | 1 - shm/item.cpp | 1 - 2 files changed, 2 deletions(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index cc58b8ccf..905fe0259 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -39,5 +39,4 @@ bool Alcohol::operator==(const Cargo& other) const { void Alcohol::nextDay() { basePrice_ += 2; - std::cout << "Next day\n"; } \ No newline at end of file diff --git a/shm/item.cpp b/shm/item.cpp index 32896dff3..cdb911f91 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -45,5 +45,4 @@ bool Item::operator==(const Cargo& other) const { void Item::nextDay() { basePrice_ += 1; - std::cout << "next day" << '\n'; } \ No newline at end of file From 71371d2be0964132a3aa635e3757306a4ab1f986 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 24 Jul 2021 15:40:18 +0200 Subject: [PATCH 054/151] Added amount increasing, unique ptr ship fixes --- shm/Store.cpp | 28 ++++++++++++++-------------- shm/Store.hpp | 6 +++--- shm/cargo.cpp | 9 +++++---- shm/main.cpp | 11 +++++++---- shm/player.cpp | 15 ++++++++++++--- shm/player.hpp | 6 +++--- shm/ship.cpp | 19 ++++++++++++++++++- shm/ship.hpp | 17 ++++------------- 8 files changed, 66 insertions(+), 45 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 121d3334a..5bbf6597b 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -7,16 +7,16 @@ Store::Store(int money, size_t availableSpace) : Storable(money, availableSpace) { - cargo_.push_back(std::make_shared(10, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) - cargo_.push_back(std::make_shared(10, "Apple", 10, 100, 0)); - cargo_.push_back(std::make_shared(10, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - cargo_.push_back(std::make_shared(1, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); + storeCargo.push_back(std::make_shared(10, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) + storeCargo.push_back(std::make_shared(10, "Apple", 10, 100, 0)); + storeCargo.push_back(std::make_shared(10, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); + storeCargo.push_back(std::make_shared(1, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); } Store::~Store(){} Cargo* Store::findMatchCargo(Cargo* cargo) { - for (auto& el : cargo_) { + for (auto& el : storeCargo) { if(*el == *cargo) { return el.get(); } @@ -24,9 +24,9 @@ Cargo* Store::findMatchCargo(Cargo* cargo) { return nullptr; } -Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player)//Buying cargo from store to player +Response Store::buy(Cargo* cargo, size_t amount, Player *player)//Buying cargo from store to player { - if(findMatchCargo(cargo.get())) + if(findMatchCargo(cargo)) { auto price = amount * cargo->getBasePrice(); @@ -47,7 +47,7 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) std::cout << "getMoney" << '\n'; return Response::lack_of_money; } - + player->SpendMoney(price); player->load(cargo, amount); @@ -63,9 +63,9 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) } -Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) // Selling cargo from Player to Store +Response Store::sell(Cargo* cargo, size_t amount, Player *player) // Selling cargo from Player to Store { - if(findMatchCargo(cargo.get())) + if(findMatchCargo(cargo)) { std::cout << "There is cargo" << '\n'; auto price = amount * cargo->getBasePrice(); @@ -86,7 +86,7 @@ Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player return Response::lack_of_money; } - player->unload(cargo); + player->unload(cargo, amount); player->EarnMoney(price); return Response::done; @@ -108,13 +108,13 @@ std::shared_ptr Store::getCargo(size_t index) const } void Store::nextDay(){ - for (auto el : cargo_) { - el.get()->reduceAmount(); + for (auto el : storeCargo) { + //el.get()->reduceAmount(); } } void Store::printStoreCargo(){ - for(auto el : cargo_) { + for(auto el : storeCargo) { std::cout << '\n'; el -> printCargo(); } diff --git a/shm/Store.hpp b/shm/Store.hpp index cba7719e1..fcfa82a57 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -17,12 +17,12 @@ class Store: public Storable, public TimeEffectable { Store(int money, size_t availableSpace); virtual ~Store(); - Response buy(std::shared_ptr cargo, size_t amount, Player* player); - Response sell(std::shared_ptr cargo, size_t amount, Player* player); + Response buy(Cargo* cargo, size_t amount, Player* player); + Response sell(Cargo* cargo, size_t amount, Player* player); std::shared_ptr getCargo(size_t index) const override; Cargo* findMatchCargo(Cargo* cargo); - std::vector> cargo_; + std::vector> storeCargo; void nextDay() override; void printStoreCargo(); diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 21e696b77..b2bba087b 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -19,6 +19,7 @@ // return *this; // } + bool Cargo::operator==(const Cargo &cargo) const { return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; @@ -37,7 +38,7 @@ void Cargo::reduceAmount(){ } } -// void Cargo::increaseAmount() -// { - -// } \ No newline at end of file +void Cargo::increaseAmount() +{ + amount_ += 1; +} \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 8fe3b1ada..c78cb317e 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -107,7 +107,7 @@ int main() Store sklep(20, 100); std::cout << sklep.getAvailableSpace() << '\n'; sklep.printStoreCargo(); - //StatekTester->printShipCargo(); + Tester.getShip()->printShipCargo(); if(sklep.findMatchCargo(&Banana)) { std::cout << "bananas!" << '\n'; @@ -122,11 +122,14 @@ int main() } std::cout << "tester money: " << Tester.getMoney() << '\n'; - //sklep.buy(Banana, 10, &Tester); - auto testCargoSklepu = sklep.cargo_.at(0); - sklep.buy(testCargoSklepu, 5, &Tester); + //sklep.buy(Banana, 5, &Tester); + auto testCargoSklepu = sklep.storeCargo.at(0); + sklep.buy(testCargoSklepu.get(), 5, &Tester); //StatekTester->cargo_.push_back(testCargoSklepu); std::cout << "tester money: " << Tester.getMoney() << '\n'; std::cout << "sklep money: " << sklep.getMoney() << '\n'; + std::cout << "ship capacity: " << Tester.getShip()->getCapacity() << '\n'; + Tester.getShip()->printShipCargo(); + } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index e642315e5..cd30386e2 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -8,6 +8,8 @@ Player::Player(std::unique_ptr ship, int money, int availableSpace) : Stor ship_ = std::move(ship); } +Player::~Player() {} + const std::unique_ptr& Player::getShip() { return ship_; } @@ -48,11 +50,18 @@ size_t Player::calculateAvailableSpace() { return capacity - cargoAmount; } -void Player::load(std::shared_ptr loadCargo, size_t amount) +void Player::load(Cargo* loadCargo, size_t amount) { - std::cout << "wywołuje sie? " << '\n'; + loadCargo->printCargo(); + for(auto i = 0; i < amount; i++) + { + loadCargo->reduceAmount(); + } + std::cout << "get amount: " << loadCargo->getAmount(); + ship_->addCargo(loadCargo); //<------------------------- Core dumped !! + } -void Player::unload(std::shared_ptr unloadCargo, size_t amount) +void Player::unload(Cargo* unloadCargo, size_t amount) { } diff --git a/shm/player.hpp b/shm/player.hpp index db62fc290..4046d6d92 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -12,11 +12,11 @@ class Player : public Storable{ public: Player(std::unique_ptr ship, int money, int availableSpace); - //~Player();//{std::cout << "ten działa?(Player)";} + ~Player();//{std::cout << "ten działa?(Player)";} const std::unique_ptr& getShip(); size_t getSpeed() const; std::shared_ptr getCargo(size_t index) const override; - void load(std::shared_ptr, size_t); - void unload(std::shared_ptr, size_t); + void load(Cargo*, size_t); + void unload(Cargo*, size_t); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index 20fd74e15..64f7b09d8 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,6 +1,22 @@ #include "ship.hpp" #include "player.hpp" +Ship::Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id) + : capacity_(capacity) + , maxCrew_(maxCrew) + , crew_(0) + , speed_(speed) + , name_(name) + , id_(id) + { + shipCargo.reserve(3); + shipCargo.push_back(std::make_shared(10, "Apple", 10, 100, 0)); + shipCargo.push_back(std::make_shared(10, "ejple", 10, 100, 0)); + shipCargo.push_back(std::make_shared(10, "wejple", 10, 100, 0)); + } + +Ship::~Ship(){} + Ship& Ship::operator-=(size_t num) { if (crew_ < num) { crew_ = 0; @@ -16,6 +32,7 @@ Ship& Ship::operator+=(size_t num) { } void Ship::addCargo(Cargo* item) { + printShipCargo(); shipCargo.emplace_back(item); } Cargo* Ship::findMatchCargo(Cargo* cargo) { @@ -50,7 +67,7 @@ void Ship::nextDay() { } void Ship::printShipCargo() { - for(auto & el : CargoOnShip) + for(auto & el : shipCargo) { std::cout << '\n'; el -> printCargo(); diff --git a/shm/ship.hpp b/shm/ship.hpp index 7369b3e4f..e4abf5107 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -15,22 +15,13 @@ class Ship : public TimeEffectable { : id_(-1) {} - Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id) - : capacity_(capacity) - , maxCrew_(maxCrew) - , crew_(0) - , speed_(speed) - , name_(name) - , id_(id) - { - CargoOnShip.reserve(10); - CargoOnShip.push_back(std::make_shared(10, "Apple", 10, 100, 0)); - } + Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id); Ship(int maxCrew, int speed, size_t id) : Ship(0, maxCrew, speed, "", id) {} + ~Ship(); void setName(const std::string& name) { name_ = name; } Ship& operator-=(size_t num); @@ -46,7 +37,7 @@ class Ship : public TimeEffectable { size_t getId() const { return id_; } std::vector> getCargo() { return shipCargo;} //instead of getcargo we use load atm. - std::vector> CargoOnShip; + // std::vector> CargoOnShip; Cargo* findMatchCargo(Cargo* cargo); void load(std::shared_ptr cargo); @@ -57,7 +48,7 @@ class Ship : public TimeEffectable { void setOwner(Player* newOwner); void setCrew(size_t newCrew); -private: +protected: size_t capacity_; size_t maxCrew_; size_t crew_; From 5ab23a316b1f6ee7e5c68dec00edbbce2509cb3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sat, 24 Jul 2021 19:33:13 +0200 Subject: [PATCH 055/151] Test & fixes --- shm/Storable.hpp | 4 +- shm/Store.cpp | 91 +++++++++++++++++++--------------------------- shm/Store.hpp | 10 ++--- shm/alcohol.hpp | 4 +- shm/cargo.hpp | 3 +- shm/dryfruit.cpp | 27 -------------- shm/dryfruit.hpp | 19 ---------- shm/fruit.cpp | 17 +-------- shm/fruit.hpp | 3 +- shm/item.cpp | 2 +- shm/item.hpp | 2 +- shm/main.cpp | 95 +++++++++++++++++++++++++++++++++++++++++++++++- shm/player.cpp | 61 ++++++++++++++++--------------- shm/player.hpp | 3 +- shm/ship.cpp | 91 ++++++++++++++++++++++++++-------------------- shm/ship.hpp | 4 +- 16 files changed, 230 insertions(+), 206 deletions(-) delete mode 100644 shm/dryfruit.cpp delete mode 100644 shm/dryfruit.hpp diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 39b5180d5..f88c61787 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -17,7 +17,7 @@ class Storable : public TimeEffectable , availableSpace_(availableSpace) {} - //Constructod for objects subscribed to Time class (i.e. Store) + //Constructor for objects subscribed to Time class (i.e. Store) Storable(int money, size_t availableSpace, Time* time) : money_(money) , availableSpace_(availableSpace) @@ -26,7 +26,7 @@ class Storable : public TimeEffectable time_->attach(this); } - virtual ~Storable(){} + virtual ~Storable(); int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } diff --git a/shm/Store.cpp b/shm/Store.cpp index 872dfd2db..38ad71887 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -3,88 +3,74 @@ #include "Time.hpp" #include "Store.hpp" -//enum class Response {done, lack_of_money, lack_of_cargo, lack_of_space}; - - -Store::Store(int money, size_t availableSpace, Time* time) +Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) - { - storeCargo.push_back(std::make_shared(10, "Banana", 10, 100, 0));// Fruit(size_t amount, const std::string& name, size_t base_price, size_t expiry_date, size_t time_elapsed) - storeCargo.push_back(std::make_shared(10, "Apple", 10, 100, 0)); - storeCargo.push_back(std::make_shared(10, "Wodka", 30, 70));// Alcohol(size_t amount, const std::string& name, size_t base_price, size_t percentage); - storeCargo.push_back(std::make_shared(1, "Hook", 50, Item::Rarity::common));//Item(size_t amount, const std::string &name, size_t base_price, Rarity rarity); - - } - Store::~Store(){} +{ + storeCargo.push_back(std::make_shared("Banany", 10, 20, time, 15, 0)); + storeCargo.push_back(std::make_shared("Apple", 15, 14, time, 20, 0)); + storeCargo.push_back(std::make_shared("Vodka", 33, 60, time, 70)); + storeCargo.push_back(std::make_shared("Hook", 5, 100, time, Rarity::common)); +} +Store::~Store() {} -Cargo* Store::findMatchCargo(Cargo* cargo) { - for (auto& el : storeCargo) { - if(*el == *cargo) { +Cargo *Store::findMatchCargo(Cargo *cargo) +{ + for (auto &el : storeCargo) + { + if (*el == *cargo) + { return el.get(); } } return nullptr; } -Response Store::buy(Cargo* cargo, size_t amount, Player *player)//Buying cargo from store to player +Response Store::buy(Cargo *cargo, size_t amount, Player *player) //Buying cargo from store to player { - if(findMatchCargo(cargo)) + if (findMatchCargo(cargo)) { auto price = amount * cargo->getBasePrice(); - std::cout << "There is cargo" << '\n'; - if (player->getAvailableSpace() < amount) { - std::cout << "getAvailbleSpace" << '\n'; return Response::lack_of_space; } - if (cargo->getAmount() < amount) + if (cargo->getAmount() < amount) { - std::cout << "getAmount" << '\n'; return Response::lack_of_cargo; } - if (player->getMoney() < price) + if (player->getMoney() < price) { - std::cout << "getMoney" << '\n'; return Response::lack_of_money; } - + player->SpendMoney(price); player->load(cargo, amount); - return Response::done; } else { - std::cout << "there isn`t cargo" << '\n'; return Response::lack_of_cargo; } - } - -Response Store::sell(Cargo* cargo, size_t amount, Player *player) // Selling cargo from Player to Store +Response Store::sell(Cargo *cargo, size_t amount, Player *player) { - if(findMatchCargo(cargo)) + if (findMatchCargo(cargo)) { - std::cout << "There is cargo" << '\n'; auto price = amount * cargo->getBasePrice(); if (player->getAvailableSpace() < amount) { - std::cout << "getAvailbleSpace" << '\n'; return Response::lack_of_space; } - if (cargo->getAmount() < amount) + if (cargo->getAmount() < amount) { - std::cout << "getAmount" << '\n'; return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) + if (player->getMoney() < amount * cargo->getBasePrice()) { - std::cout << "getMoney" << '\n'; return Response::lack_of_money; } @@ -95,20 +81,14 @@ Response Store::sell(Cargo* cargo, size_t amount, Player *player) // Selling car } else { - std::cout << "ni ma cargo" << '\n'; return Response::lack_of_cargo; } - //TO DO BUY - add cargo to store, remove cargo from player - - if(Cargo * ptr = findMatchCargo(cargo)) { + + if (Cargo *ptr = findMatchCargo(cargo)) + { *ptr += amount; } - //else { - - //cargo_.push_back(static_cast> (cargo)); - // cargo_.push_back(std::make_shared(cargo -> getName(), amount, cargo->getBasePrice())); - // } - + return Response::done; } @@ -117,16 +97,19 @@ std::shared_ptr Store::getCargo(size_t index) const return nullptr; } -void Store::nextDay(){ - for (auto el : storeCargo) { - //el.get()->reduceAmount(); +void Store::nextDay() +{ + for (auto el : storeCargo) + { + el.get()->reduceAmount(); } } -void Store::printStoreCargo(){ - for(auto el : storeCargo) { +void Store::printStoreCargo() +{ + for (auto el : storeCargo) + { std::cout << '\n'; - el -> printCargo(); + el->printCargo(); } } - diff --git a/shm/Store.hpp b/shm/Store.hpp index 652c39a45..2fe9c7f7a 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -19,7 +19,7 @@ enum class Response { done, lack_of_cargo, lack_of_space }; -class Store: public Storable, public TimeEffectable { +class Store: public Storable { public: Store(int money, size_t availableSpace, Time* time); @@ -32,15 +32,11 @@ class Store: public Storable, public TimeEffectable { std::vector> storeCargo; void nextDay() override; - void printStoreCargo() { - for (auto el : cargo_) { - el->printCargo(); - } - } + void printStoreCargo(); friend std::ostream& operator<<(std::ostream& out, const Store& store) { out << "Store: \n"; - for (auto& el : store.cargo_) { + for (auto& el : store.storeCargo) { out << el.get()->getCargoInfo(); } diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 1c0ab68ac..c1ddf8ae8 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -7,12 +7,12 @@ //Class responsible for representing alcohol in the game class Alcohol : public Cargo { public: - Alcohol(const std::string& name, size_t amount, size_t basePrice, size_t percentage, Time *time) + Alcohol(const std::string& name, size_t amount, size_t basePrice, Time *time, size_t percentage) : Cargo(name, amount, basePrice, time) , percentage_ (percentage) {} - ~Alcohol() override = default; + ~Alcohol() override; // override from Cargo size_t getPrice() const override; diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 7987dbddb..20ce53715 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -23,8 +23,7 @@ class Cargo : public TimeEffectable void increaseAmount(); Cargo() = default; - Cargo(std::string name, size_t amount, size_t basePrice) - :name_(name), amount_(amount), basePrice_(basePrice){}; + Cargo(std::string name, size_t amount, size_t basePrice, Time* time); virtual ~Cargo() = default; protected: std::string name_; diff --git a/shm/dryfruit.cpp b/shm/dryfruit.cpp deleted file mode 100644 index ccef68b43..000000000 --- a/shm/dryfruit.cpp +++ /dev/null @@ -1,27 +0,0 @@ -#include "dryfruit.hpp" - -DryFruit::DryFruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time) - : Fruit(name, amount, basePrice, expiry_date, time_elapsed, time) - {} - -size_t DryFruit::getPrice() const { - if (time_elapsed_ >= expiry_date_) - return 0; - return static_cast(3 * basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); -} - -Cargo& DryFruit::operator--() { - if (++counter_ == 10) { - ++time_elapsed_; - counter_ = 0; - } - return *this; -}; - -void DryFruit::nextDay() { - if (basePrice_ - 1 == 0) { - basePrice_ = 0; - } else { - basePrice_ -= 1; - } -} \ No newline at end of file diff --git a/shm/dryfruit.hpp b/shm/dryfruit.hpp deleted file mode 100644 index 10108be93..000000000 --- a/shm/dryfruit.hpp +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once -#include "fruit.hpp" - -class DryFruit : public Fruit { -public: - // override from Cargo - DryFruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time); - - const std::string &getName() const override { return name_; } - size_t getPrice() const override; - - // override from Fruit - Cargo& operator--() override; - - void nextDay() override; - -private: - size_t counter_{0}; -}; \ No newline at end of file diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 71c0b1e08..37d79fd1d 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -1,7 +1,7 @@ #include #include "fruit.hpp" - Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time) + Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed) : Cargo(name, amount, basePrice, time) , expiry_date_(expiry_date) , time_elapsed_(time_elapsed) @@ -17,20 +17,6 @@ size_t Fruit::getPrice() const return static_cast(basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); } -Cargo &Fruit::operator--() -{ - if (time_elapsed_ == 0) - { - time_elapsed_ = 0; - std::cout << "Fruit is expired!"; - } - else - { - time_elapsed_ - 1 ; - } - return *this; -} - Cargo &Fruit::operator+=(size_t amount) { amount_ += amount; @@ -62,6 +48,7 @@ bool Fruit::operator==(const Cargo& other) const void Fruit::nextDay() { + time_elapsed_ +=1; if (time_elapsed_ >= expiry_date_) { basePrice_ = 0; diff --git a/shm/fruit.hpp b/shm/fruit.hpp index c1166545e..d6c8bc9b8 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -6,7 +6,7 @@ class Fruit : public Cargo { public: - Fruit(const std::string &name, size_t amount, size_t basePrice, size_t expiry_date, size_t time_elapsed, Time *time); + Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed); virtual ~Fruit() override; // override from Cargo @@ -15,7 +15,6 @@ class Fruit : public Cargo size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } - virtual Cargo &operator--(); Cargo &operator+=(size_t amount) override; Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; diff --git a/shm/item.cpp b/shm/item.cpp index cdb911f91..a727a684a 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -1,7 +1,7 @@ #include "item.hpp" #include "Time.hpp" -Item::Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity, Time *time) +Item::Item(const std::string &name, size_t amount, size_t basePrice, Time *time, Rarity rarity) : Cargo(name, amount, basePrice, time) , rarity_(rarity) {} diff --git a/shm/item.hpp b/shm/item.hpp index c5231e7d2..1e22d4a8f 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -16,7 +16,7 @@ class Item : public Cargo { public: - Item(const std::string &name, size_t amount, size_t basePrice, Rarity rarity, Time *time); + Item(const std::string &name, size_t amount, size_t basePrice, Time *time, Rarity rarity); ~Item() override = default; // override from Cargo diff --git a/shm/main.cpp b/shm/main.cpp index e5554613a..0ec1c7804 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -2,9 +2,100 @@ #include #include +#include "Time.hpp" +#include "Store.hpp" +#include "player.hpp" +#include "fruit.hpp" +#include "alcohol.hpp" +#include "item.hpp" +#include "cargo.hpp" int main() { - - + Time *time_ptr = new Time(); + //time->changeTime(); + + //Show created store via friend method (zad5) + Store store(2000, 100, time_ptr); + + std::cout << store; + + Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); + Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); + Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); + + // buy zad 1 + //No cargo + Cargo *cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); + Response response = store.buy(cargo, 5, captain); + std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; + //No available space + response = store.buy(store.storeCargo.at(0).get(), 1, human1); + std::cout << std::to_string(response == Response::lack_of_space) << "\n"; + //lack of cargo + response = store.buy(store.storeCargo.at(0).get(), 1000, captain); + std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; + //no money + response = store.buy(store.storeCargo.at(0).get(), 1, human); + std::cout << std::to_string(response == Response::lack_of_money) << "\n"; + //correct buy + response = store.buy(store.storeCargo.at(0).get(), 1, captain); + std::cout << std::to_string(response == Response::done) << "\n"; + + std::cout << store; + + // sell zad 1 + + //TO DO:: poprawic Sell i zrobić unload + + //zad 2 + Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); + Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); + Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); + + std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + wine += 4; + kiwi += 4; + hook += 4; + + std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + wine -= 3; + kiwi -= 3; + hook -= 3; + + std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + std::cout << std::to_string(wine == kiwi) << "\n"; + std::cout << std::to_string(kiwi == hook) << "\n"; + std::cout << std::to_string(hook == wine) << "\n"; + std::cout << std::to_string(kiwi == kiwi) << "\n"; + + //Zad3 + + //przed nextDay + Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); + captain->setCrew(5); + + std::cout << captain->getMoney() << "\n"; + std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; + std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + std::cout << store; + + time_ptr->changeTime(); + + //Po nextDay + std::cout << captain->getMoney() << "\n"; + std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; + std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + std::cout << store; } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index 3b9cbb43c..fc869d3ab 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -4,65 +4,68 @@ #include "player.hpp" #include "ship.hpp" -Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) +Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) { ship_ = std::move(ship); + ship_.get()->setOwner(this); } Player::~Player() {} -const std::unique_ptr& Player::getShip() { - return ship_; +const std::unique_ptr &Player::getShip() +{ + return ship_; } -size_t Player::getSpeed() const { - if(ship_->getSpeed() > 0) +size_t Player::getSpeed() const +{ + if (ship_->getSpeed() > 0) { - return ship_->getSpeed(); + return ship_->getSpeed(); } - - std::cout << "Something went wrong, we set your speed at 0" << '\n'; - return 0; // TODO add something better + return 0; } -std::shared_ptr Player::getCargo(size_t index) const { - if(ship_->getCargo().at(index) > 0) +std::shared_ptr Player::getCargo(size_t index) const +{ + if (ship_->getCargo().at(index) > 0) { return ship_->getCargo().at(index); } - std::cout << "Something went wrong and you lost your cargo" << '\n'; - return nullptr; // TODO add something better + return nullptr; } - -size_t Player::calculateAvailableSpace() { +size_t Player::calculateAvailableSpace() +{ int cargoAmount = 0; int capacity = ship_->getCapacity(); std::vector> shipCargo = ship_->getCargo(); - - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) { return i += c->getAmount(); }); - std::cout << "Cargo amount(po obliczeniach): "<< capacity - cargoAmount << '\n'; - - if(capacity - cargoAmount < 0){ - std::cout << "something went wrong and you have lost your cargo" << '\n'; + + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) + { return i += c->getAmount(); }); + + if (capacity - cargoAmount < 0) + { return 0; } return capacity - cargoAmount; } -void Player::load(Cargo* loadCargo, size_t amount) +void Player::load(Cargo *loadCargo, size_t amount) { - loadCargo->printCargo(); - for(auto i = 0; i < amount; i++) + for (auto i = 0; i < amount; i++) { loadCargo->reduceAmount(); } - std::cout << "get amount: " << loadCargo->getAmount(); - ship_->addCargo(loadCargo); //<------------------------- Core dumped !! - + ship_->addCargo(loadCargo); } -void Player::unload(Cargo* unloadCargo, size_t amount) -{ +void Player::unload(Cargo *unloadCargo, size_t amount) +{ } + +void Player::setCrew(size_t newCrewSize) +{ + ship_.get()->setCrew(newCrewSize); +} \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index 4046d6d92..ca0ec0f50 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -1,8 +1,8 @@ #pragma once #include "Storable.hpp" #include +#include "ship.hpp" -class Ship; class Cargo; //Class responsible for handling Player object class Player : public Storable{ @@ -19,4 +19,5 @@ class Player : public Storable{ std::shared_ptr getCargo(size_t index) const override; void load(Cargo*, size_t); void unload(Cargo*, size_t); + void setCrew(size_t newCrewSize); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index 023958436..d57f9af22 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,89 +1,102 @@ #include "ship.hpp" #include "player.hpp" +#include -Ship::Ship(Time* time) - : id_(-1) - , time_(time) - { - time_->attach(this); - } +Ship::Ship(Time *time) + : id_(-1), time_(time) +{ + time_->attach(this); +} - Ship::Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time* time) - : capacity_(capacity) - , maxCrew_(maxCrew) - , crew_(0) - , speed_(speed) - , name_(name) - , id_(id) - , time_(time) - { - time_->attach(this); - } +Ship::Ship(int capacity, int maxCrew, int speed, const std::string &name, size_t id, Time *time) + : capacity_(capacity), maxCrew_(maxCrew), crew_(0), speed_(speed), name_(name), id_(id), time_(time) +{ + time_->attach(this); +} -Ship::Ship(int maxCrew, int speed, size_t id, Time* time) +Ship::Ship(int maxCrew, int speed, size_t id, Time *time) : Ship(0, maxCrew, speed, "", id, time) - { - time_->attach(this); - } +{ + time_->attach(this); +} Ship::~Ship() { time_->detach(this); } -Ship& Ship::operator-=(size_t num) { - if (crew_ < num) { +Ship &Ship::operator-=(size_t num) +{ + if (crew_ < num) + { crew_ = 0; - } else { + } + else + { crew_ -= num; } return *this; } -Ship& Ship::operator+=(size_t num) { +Ship &Ship::operator+=(size_t num) +{ crew_ += num; return *this; } -void Ship::addCargo(Cargo* item) { +void Ship::addCargo(Cargo *item) +{ printShipCargo(); shipCargo.emplace_back(item); } -Cargo* Ship::findMatchCargo(Cargo* cargo) { - for (auto& el : shipCargo) { - if (*el == *cargo) { + +Cargo *Ship::findMatchCargo(Cargo *cargo) +{ + for (auto &el : shipCargo) + { + if (*el == *cargo) + { return el.get(); } } return nullptr; } -void Ship::load(std::shared_ptr cargo_ptr) { // Not working - if (Cargo* ptr = findMatchCargo(cargo_ptr.get())) { +void Ship::load(std::shared_ptr cargo_ptr) +{ + if (Cargo *ptr = findMatchCargo(cargo_ptr.get())) + { *ptr += cargo_ptr->getAmount(); return; } shipCargo.push_back(cargo_ptr); } -void Ship::setOwner(Player* newOwner) { - owner_ = newOwner; +void Ship::setOwner(Player *newOwner) +{ + owner_ = newOwner; } -void Ship::setCrew(size_t newCrew) { - crew_ = newCrew; +void Ship::setCrew(size_t newCrew) +{ + if (newCrew <= maxCrew_) + { + crew_ = newCrew; + } } -void Ship::nextDay() { +void Ship::nextDay() +{ size_t moneyForCrew = crew_; - if (owner_) { + if (owner_) + { owner_->SpendMoney(moneyForCrew); } } void Ship::printShipCargo() { - for(auto & el : shipCargo) + for (auto &el : shipCargo) { std::cout << '\n'; - el -> printCargo(); + el->printCargo(); } } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 400330e7d..824311ee5 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -4,7 +4,7 @@ #include #include #include "cargo.hpp" -#include "time.hpp" +#include "Time.hpp" #include "TimeEffectable.hpp" #include "fruit.hpp" class Player; @@ -15,8 +15,6 @@ class Ship : public TimeEffectable { Ship(Time* time); Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time* time); Ship(int maxCrew, int speed, size_t id, Time* time); - ~Ship(); - ~Ship(); void setName(const std::string& name) { name_ = name; } From 46fecab7338cb3bcb82959fc8ee082c938990268 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 18:19:04 +0200 Subject: [PATCH 056/151] Reduce amount changed --- shm/Store.cpp | 5 +++-- shm/Store.hpp | 3 ++- shm/cargo.cpp | 12 ++++++------ shm/cargo.hpp | 8 ++++---- shm/main.cpp | 13 +++++++++++-- shm/player.cpp | 14 -------------- shm/player.hpp | 2 -- shm/ship.cpp | 16 +++++++++++----- shm/ship.hpp | 4 ++-- 9 files changed, 39 insertions(+), 38 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 38ad71887..f77e4c151 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -43,7 +43,8 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player) //Buying cargo { return Response::lack_of_money; } - + + money_ += price; player->SpendMoney(price); player->load(cargo, amount); @@ -73,7 +74,7 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) { return Response::lack_of_money; } - + money_ -= price; player->unload(cargo, amount); player->EarnMoney(price); diff --git a/shm/Store.hpp b/shm/Store.hpp index 2fe9c7f7a..71153aa2d 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -30,8 +30,9 @@ class Store: public Storable { std::shared_ptr getCargo(size_t index) const override; Cargo* findMatchCargo(Cargo* cargo); std::vector> storeCargo; - void nextDay() override; + + void nextDay() override; void printStoreCargo(); friend std::ostream& operator<<(std::ostream& out, const Store& store) { diff --git a/shm/cargo.cpp b/shm/cargo.cpp index dc034a1eb..a8ee38f9b 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -30,7 +30,7 @@ Cargo &Cargo::operator-=(size_t amount) bool Cargo::operator==(const Cargo &cargo) const { - return name_ == cargo.name_ && amount_ == cargo.amount_ && basePrice_ == cargo.basePrice_; + return name_ == cargo.name_ && basePrice_ == cargo.basePrice_; } void Cargo::printCargo() const { @@ -41,16 +41,16 @@ std::string Cargo::getCargoInfo(){ return "Cargo Name: " + name_ + ", amount: " + std::to_string(amount_) + ", price: " + std::to_string(getPrice()) +'\n'; } -void Cargo::reduceAmount(){ - if(amount_ -1 < 0){ +void Cargo::reduceAmount(size_t amount) { + if(amount_ < 0){ amount_ = 0; } else{ - amount_ -= 1; + amount_ -= amount; } } -void Cargo::increaseAmount() +void Cargo::increaseAmount(size_t amount) { - amount_ += 1; + amount_ += amount; } \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 20ce53715..6e70e93f4 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -7,8 +7,8 @@ class Cargo : public TimeEffectable { public: - virtual Cargo &operator+=(size_t amount); - virtual Cargo &operator-=(size_t amount); + virtual Cargo &operator+=(size_t ); + virtual Cargo &operator-=(size_t ); virtual bool operator==(const Cargo &cargo) const; virtual size_t getPrice() const = 0; @@ -18,9 +18,9 @@ class Cargo : public TimeEffectable void printCargo() const; std::string getCargoInfo(); - void reduceAmount(); + void reduceAmount(size_t); void loadCargo(); - void increaseAmount(); + void increaseAmount(size_t); Cargo() = default; Cargo(std::string name, size_t amount, size_t basePrice, Time* time); diff --git a/shm/main.cpp b/shm/main.cpp index 0ec1c7804..21090852a 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -13,6 +13,7 @@ int main() { Time *time_ptr = new Time(); + //time->changeTime(); //Show created store via friend method (zad5) @@ -39,11 +40,15 @@ int main() response = store.buy(store.storeCargo.at(0).get(), 1, human); std::cout << std::to_string(response == Response::lack_of_money) << "\n"; //correct buy + std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + response = store.buy(store.storeCargo.at(0).get(), 1, captain); response = store.buy(store.storeCargo.at(0).get(), 1, captain); std::cout << std::to_string(response == Response::done) << "\n"; - std::cout << store; - + std::cout << "pieniążki store po: " << store.getMoney() << '\n'; + + captain->getShip()->printShipCargo(); + // sell zad 1 //TO DO:: poprawic Sell i zrobić unload @@ -52,6 +57,8 @@ int main() Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); + Fruit banan("Banany", 5, 20, time_ptr, 15, 0); + Fruit banany("Banany", 6, 20, time_ptr, 15, 0); std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; @@ -77,6 +84,7 @@ int main() std::cout << std::to_string(kiwi == hook) << "\n"; std::cout << std::to_string(hook == wine) << "\n"; std::cout << std::to_string(kiwi == kiwi) << "\n"; + std::cout << std::to_string(banan == banany) << '\n'; //Zad3 @@ -98,4 +106,5 @@ int main() std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; std::cout << store; + } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index fc869d3ab..e6dcc7c46 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -37,7 +37,6 @@ std::shared_ptr Player::getCargo(size_t index) const size_t Player::calculateAvailableSpace() { - int cargoAmount = 0; int capacity = ship_->getCapacity(); std::vector> shipCargo = ship_->getCargo(); @@ -52,19 +51,6 @@ size_t Player::calculateAvailableSpace() return capacity - cargoAmount; } -void Player::load(Cargo *loadCargo, size_t amount) -{ - for (auto i = 0; i < amount; i++) - { - loadCargo->reduceAmount(); - } - ship_->addCargo(loadCargo); -} - -void Player::unload(Cargo *unloadCargo, size_t amount) -{ -} - void Player::setCrew(size_t newCrewSize) { ship_.get()->setCrew(newCrewSize); diff --git a/shm/player.hpp b/shm/player.hpp index ca0ec0f50..7055150f1 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -17,7 +17,5 @@ class Player : public Storable{ size_t getSpeed() const; std::shared_ptr getCargo(size_t index) const override; - void load(Cargo*, size_t); - void unload(Cargo*, size_t); void setCrew(size_t newCrewSize); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index d57f9af22..ab7878837 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -46,7 +46,9 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo *item) { + printShipCargo(); + shipCargo.emplace_back(item); } @@ -61,14 +63,18 @@ Cargo *Ship::findMatchCargo(Cargo *cargo) } return nullptr; } -void Ship::load(std::shared_ptr cargo_ptr) +void Ship::load(Cargo *loadCargo, size_t amount) +{ + loadCargo->reduceAmount(amount); + addCargo(loadCargo); +} + +void Ship::unload(Cargo *unloadCargo, size_t amount) { - if (Cargo *ptr = findMatchCargo(cargo_ptr.get())) + for(auto i = 0; i < amount; i++) { - *ptr += cargo_ptr->getAmount(); - return; + } - shipCargo.push_back(cargo_ptr); } void Ship::setOwner(Player *newOwner) diff --git a/shm/ship.hpp b/shm/ship.hpp index 824311ee5..4328854e1 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -34,8 +34,8 @@ class Ship : public TimeEffectable { // std::vector> CargoOnShip; Cargo* findMatchCargo(Cargo* cargo); - void load(std::shared_ptr cargo); - void unload(Cargo* cargo_ptr); + void load(Cargo *loadCargo, size_t amount); + void unload(Cargo *unloadCargo, size_t amount); void printShipCargo(); void nextDay() override; From 0a11444373b248d29dc82fa5a29e6f942c4b9fef Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 18:49:11 +0200 Subject: [PATCH 057/151] Changed add cargo, added removeCargo(TODO) --- shm/Store.cpp | 8 ++++---- shm/ship.cpp | 48 +++++++++++++++++++++++++++++++++++++++--------- shm/ship.hpp | 8 +++++++- 3 files changed, 50 insertions(+), 14 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index f77e4c151..ab23c0475 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -46,7 +46,7 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player) //Buying cargo money_ += price; player->SpendMoney(price); - player->load(cargo, amount); + player->getShip()->load(cargo, amount); return Response::done; } @@ -74,8 +74,8 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) { return Response::lack_of_money; } - money_ -= price; - player->unload(cargo, amount); + money_ += price; + player->getShip()->unload(cargo, amount); player->EarnMoney(price); return Response::done; @@ -102,7 +102,7 @@ void Store::nextDay() { for (auto el : storeCargo) { - el.get()->reduceAmount(); + el.get()->reduceAmount(1); } } diff --git a/shm/ship.cpp b/shm/ship.cpp index ab7878837..211565fa5 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,6 +1,9 @@ +#include +#include +#include + #include "ship.hpp" #include "player.hpp" -#include Ship::Ship(Time *time) : id_(-1), time_(time) @@ -46,10 +49,18 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo *item) { - - printShipCargo(); - - shipCargo.emplace_back(item); + if(findMatchCargo(item) == item) + { + findMatchCargo(item)->increaseAmount(item->getAmount()); + } + else + { + shipCargo.emplace_back(item); + } +} +void Ship::removeCargo(Cargo * item) +{ + } Cargo *Ship::findMatchCargo(Cargo *cargo) @@ -65,15 +76,21 @@ Cargo *Ship::findMatchCargo(Cargo *cargo) } void Ship::load(Cargo *loadCargo, size_t amount) { - loadCargo->reduceAmount(amount); - addCargo(loadCargo); + if (amount + calculateAvailableSpace() <= capacity_) + { + loadCargo->reduceAmount(amount); + addCargo(loadCargo); + } } void Ship::unload(Cargo *unloadCargo, size_t amount) { - for(auto i = 0; i < amount; i++) + if (calculateAvailableSpace() - amount >= 0) { - + if(unloadCargo == findMatchCargo(unloadCargo)) + { + //removeCargo(); + } } } @@ -105,4 +122,17 @@ void Ship::printShipCargo() std::cout << '\n'; el->printCargo(); } +} + +size_t Ship::calculateAvailableSpace() +{ + int cargoAmount = 0; + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) + { return i += c->getAmount(); }); + + if (capacity_ - cargoAmount < 0) + { + return 0; + } + return capacity_ - cargoAmount; } \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 4328854e1..33a31afee 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -22,6 +22,7 @@ class Ship : public TimeEffectable { Ship& operator+=(size_t num); void addCargo(Cargo* item); + void removeCargo(Cargo* ); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } @@ -42,6 +43,11 @@ class Ship : public TimeEffectable { void setOwner(Player* newOwner); void setCrew(size_t newCrew); + bool isCargoOnShip(Cargo *item); + + + size_t calculateAvailableSpace(); + protected: size_t capacity_; size_t maxCrew_; @@ -49,7 +55,7 @@ class Ship : public TimeEffectable { size_t speed_; std::string name_; const size_t id_; - std::vector> shipCargo; + std::vector> shipCargo; // TODO reserve vector Player* owner_ = nullptr; Time* time_; }; From 33f80862c6df07667b5ba822cc2e203008e8c432 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 19:59:33 +0200 Subject: [PATCH 058/151] Dead end --- shm/ship.cpp | 18 +++++++++++++++--- shm/ship.hpp | 2 +- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index 211565fa5..67454c5f3 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,7 +1,6 @@ #include #include #include - #include "ship.hpp" #include "player.hpp" @@ -58,9 +57,22 @@ void Ship::addCargo(Cargo *item) shipCargo.emplace_back(item); } } -void Ship::removeCargo(Cargo * item) + +void Ship::removeCargo(Cargo * item, size_t amount) { - + if(findMatchCargo(item)->getAmount() == amount) + { + // auto i = std::find(begin(shipCargo), end(shipCargo), item); + for (auto it = shipCargo.begin(); it < shipCargo.end(); it++) + { + + } + shipCargo.erase(shipCargo.begin()); + } + else + { + + } } Cargo *Ship::findMatchCargo(Cargo *cargo) diff --git a/shm/ship.hpp b/shm/ship.hpp index 33a31afee..5f81f5c62 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -22,7 +22,7 @@ class Ship : public TimeEffectable { Ship& operator+=(size_t num); void addCargo(Cargo* item); - void removeCargo(Cargo* ); + void removeCargo(Cargo *, size_t); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } From 2afbb7b1d09ab77678c7fce781aaf929226b1a45 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 20:37:24 +0200 Subject: [PATCH 059/151] Changed to shared pointers, changed store sell --- shm/Store.cpp | 25 +++++++++++++------------ shm/Store.hpp | 6 +++--- shm/main.cpp | 14 +++++++------- shm/ship.cpp | 29 +++++++++++++++-------------- shm/ship.hpp | 10 +++++----- 5 files changed, 43 insertions(+), 41 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index ab23c0475..b4d47f1df 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -13,19 +13,19 @@ Store::Store(int money, size_t availableSpace, Time *time) } Store::~Store() {} -Cargo *Store::findMatchCargo(Cargo *cargo) +std::shared_ptr Store::findMatchCargo(std::shared_ptr cargo) { for (auto &el : storeCargo) { if (*el == *cargo) { - return el.get(); + return el; } } return nullptr; } -Response Store::buy(Cargo *cargo, size_t amount, Player *player) //Buying cargo from store to player +Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) //Buying cargo from store to player { if (findMatchCargo(cargo)) { @@ -56,26 +56,27 @@ Response Store::buy(Cargo *cargo, size_t amount, Player *player) //Buying cargo } } -Response Store::sell(Cargo *cargo, size_t amount, Player *player) +Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) { + // Ship -> if (findMatchCargo(cargo)) { auto price = amount * cargo->getBasePrice(); - - if (player->getAvailableSpace() < amount) + if (getAvailableSpace() < amount)// miejsce sklepu { return Response::lack_of_space; } - if (cargo->getAmount() < amount) + if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount)//cargo gracza { return Response::lack_of_cargo; } - if (player->getMoney() < amount * cargo->getBasePrice()) + if (money_ < amount * cargo->getBasePrice())// pieniądze sklepu { return Response::lack_of_money; } money_ += price; player->getShip()->unload(cargo, amount); + storeCargo.push_back(cargo); player->EarnMoney(price); return Response::done; @@ -85,10 +86,10 @@ Response Store::sell(Cargo *cargo, size_t amount, Player *player) return Response::lack_of_cargo; } - if (Cargo *ptr = findMatchCargo(cargo)) - { - *ptr += amount; - } + // if (Cargo *ptr = findMatchCargo(cargo)) + // { + // *ptr += amount; + // } return Response::done; } diff --git a/shm/Store.hpp b/shm/Store.hpp index 71153aa2d..f08eac9ff 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -24,11 +24,11 @@ class Store: public Storable { Store(int money, size_t availableSpace, Time* time); virtual ~Store(); - Response buy(Cargo* cargo, size_t amount, Player* player); - Response sell(Cargo* cargo, size_t amount, Player* player); + Response buy(std::shared_ptr cargo, size_t amount, Player* player); + Response sell(std::shared_ptr cargo, size_t amount, Player* player); std::shared_ptr getCargo(size_t index) const override; - Cargo* findMatchCargo(Cargo* cargo); + std::shared_ptr findMatchCargo(std::shared_ptr cargo); std::vector> storeCargo; diff --git a/shm/main.cpp b/shm/main.cpp index 21090852a..9cd0d0efd 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -24,25 +24,25 @@ int main() Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); - + // buy zad 1 //No cargo - Cargo *cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); + std::shared_ptr cargo = std::make_shared("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; //No available space - response = store.buy(store.storeCargo.at(0).get(), 1, human1); + response = store.buy(store.storeCargo.at(0), 1, human1); std::cout << std::to_string(response == Response::lack_of_space) << "\n"; //lack of cargo - response = store.buy(store.storeCargo.at(0).get(), 1000, captain); + response = store.buy(store.storeCargo.at(0), 1000, captain); std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; //no money - response = store.buy(store.storeCargo.at(0).get(), 1, human); + response = store.buy(store.storeCargo.at(0), 1, human); std::cout << std::to_string(response == Response::lack_of_money) << "\n"; //correct buy std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - response = store.buy(store.storeCargo.at(0).get(), 1, captain); - response = store.buy(store.storeCargo.at(0).get(), 1, captain); + response = store.buy(store.storeCargo.at(0), 1, captain); + response = store.buy(store.storeCargo.at(0), 1, captain); std::cout << std::to_string(response == Response::done) << "\n"; std::cout << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; diff --git a/shm/ship.cpp b/shm/ship.cpp index 67454c5f3..b27ebd32a 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -46,7 +46,7 @@ Ship &Ship::operator+=(size_t num) return *this; } -void Ship::addCargo(Cargo *item) +void Ship::addCargo(std::shared_ptr item) { if(findMatchCargo(item) == item) { @@ -58,35 +58,36 @@ void Ship::addCargo(Cargo *item) } } -void Ship::removeCargo(Cargo * item, size_t amount) +void Ship::removeCargo(std::shared_ptr item, size_t amount) { - if(findMatchCargo(item)->getAmount() == amount) + auto shipCargoAmount = findMatchCargo(item)->getAmount(); + if(shipCargoAmount == amount) { - // auto i = std::find(begin(shipCargo), end(shipCargo), item); - for (auto it = shipCargo.begin(); it < shipCargo.end(); it++) - { - - } - shipCargo.erase(shipCargo.begin()); + auto i = std::find(begin(shipCargo), end(shipCargo), item); + shipCargo.erase(i); + } + else if(shipCargoAmount < amount)// 5 < 6 + { + //TODO something } else { - + findMatchCargo(item)->reduceAmount(amount); } } -Cargo *Ship::findMatchCargo(Cargo *cargo) +std::shared_ptr Ship::findMatchCargo(std::shared_ptr cargo) { for (auto &el : shipCargo) { if (*el == *cargo) { - return el.get(); + return el; } } return nullptr; } -void Ship::load(Cargo *loadCargo, size_t amount) +void Ship::load(std::shared_ptr loadCargo, size_t amount) { if (amount + calculateAvailableSpace() <= capacity_) { @@ -95,7 +96,7 @@ void Ship::load(Cargo *loadCargo, size_t amount) } } -void Ship::unload(Cargo *unloadCargo, size_t amount) +void Ship::unload(std::shared_ptr unloadCargo, size_t amount) { if (calculateAvailableSpace() - amount >= 0) { diff --git a/shm/ship.hpp b/shm/ship.hpp index 5f81f5c62..15335b232 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -21,8 +21,8 @@ class Ship : public TimeEffectable { Ship& operator-=(size_t num); Ship& operator+=(size_t num); - void addCargo(Cargo* item); - void removeCargo(Cargo *, size_t); + void addCargo(std::shared_ptr item); + void removeCargo(std::shared_ptr, size_t); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } @@ -34,9 +34,9 @@ class Ship : public TimeEffectable { // std::vector> CargoOnShip; - Cargo* findMatchCargo(Cargo* cargo); - void load(Cargo *loadCargo, size_t amount); - void unload(Cargo *unloadCargo, size_t amount); + std::shared_ptr findMatchCargo(std::shared_ptr cargo); + void load(std::shared_ptrloadCargo, size_t amount); + void unload(std::shared_ptr unloadCargo, size_t amount); void printShipCargo(); void nextDay() override; From f1b55f3e7b6677bec558c7ee48c502e6e16b4a21 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 22:00:39 +0200 Subject: [PATCH 060/151] Fixes in sell --- shm/Storable.cpp | 4 ++++ shm/Storable.hpp | 1 + shm/Store.cpp | 25 +++++++++++++++++-------- shm/Store.hpp | 13 ++++++++----- shm/main.cpp | 21 +++++++++++++++++++++ shm/ship.cpp | 10 +++------- 6 files changed, 54 insertions(+), 20 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index bbaf271b3..04137ab7e 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -14,5 +14,9 @@ void Storable::EarnMoney(int moneyToEarn) { money_ += moneyToEarn; } +} +void Storable::removeCargo(std::shared_ptr, size_t) +{ + } Storable::~Storable(){} diff --git a/shm/Storable.hpp b/shm/Storable.hpp index f88c61787..ee853fe8e 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -33,6 +33,7 @@ class Storable : public TimeEffectable virtual std::shared_ptr getCargo(size_t index) const = 0; void SpendMoney(int moneyToSpend); void EarnMoney(int moneyToEarn); + void removeCargo(std::shared_ptr, size_t); protected: int money_; diff --git a/shm/Store.cpp b/shm/Store.cpp index b4d47f1df..0f3ef9df1 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -47,7 +47,7 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) money_ += price; player->SpendMoney(price); player->getShip()->load(cargo, amount); - + //storeCargo.removeCargo(); return Response::done; } else @@ -59,14 +59,14 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) { // Ship -> - if (findMatchCargo(cargo)) + if (player->getShip()->findMatchCargo(cargo)) { auto price = amount * cargo->getBasePrice(); if (getAvailableSpace() < amount)// miejsce sklepu { return Response::lack_of_space; } - if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount)//cargo gracza + if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount)//cargo gracza player->getShip()->findMatchCargo(cargo)->getAmount() < amount { return Response::lack_of_cargo; } @@ -86,11 +86,6 @@ Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player return Response::lack_of_cargo; } - // if (Cargo *ptr = findMatchCargo(cargo)) - // { - // *ptr += amount; - // } - return Response::done; } @@ -115,3 +110,17 @@ void Store::printStoreCargo() el->printCargo(); } } + +// void Store::removeCargo(std::shared_ptr item, size_t amount) +// { +// auto storeCargoAmount = findMatchCargo(item)->getAmount(); +// if(storeCargoAmount == amount) +// { +// auto i = std::find(begin(storeCargo), end(storeCargo), item); +// storeCargo.erase(i); +// } +// else +// { +// findMatchCargo(item)->reduceAmount(amount); +// } +// } diff --git a/shm/Store.hpp b/shm/Store.hpp index f08eac9ff..32ddbe804 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -14,10 +14,13 @@ class Time; class Player; //class Cargo; -enum class Response { done, - lack_of_money, - lack_of_cargo, - lack_of_space }; +enum class Response +{ + done, + lack_of_money, + lack_of_cargo, + lack_of_space +}; class Store: public Storable { public: @@ -31,7 +34,7 @@ class Store: public Storable { std::shared_ptr findMatchCargo(std::shared_ptr cargo); std::vector> storeCargo; - + void removeCargo(std::shared_ptr, size_t); void nextDay() override; void printStoreCargo(); diff --git a/shm/main.cpp b/shm/main.cpp index 9cd0d0efd..e96f0c5c8 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -47,6 +47,27 @@ int main() std::cout << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; + captain->getShip()->printShipCargo(); + + Response response1 = store.sell(cargo, 2, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "\n"; + //No available space + response1 = store.sell(store.storeCargo.at(0), 1, human1); + std::cout << std::to_string(response1 == Response::lack_of_space) << "\n"; + //lack of cargo + response1 = store.sell(store.storeCargo.at(0), 1000, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "\n"; + //no money + response1 = store.sell(store.storeCargo.at(0), 1, human); + std::cout << std::to_string(response1 == Response::lack_of_money) << "\n"; + //correct buy + std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + response1 = store.sell(store.storeCargo.at(0), 1, captain); + response1 = store.sell(store.storeCargo.at(0), 1, captain); + std::cout << std::to_string(response1 == Response::done) << "\n"; + std::cout << store; + std::cout << "pieniążki store po: " << store.getMoney() << '\n'; + captain->getShip()->printShipCargo(); // sell zad 1 diff --git a/shm/ship.cpp b/shm/ship.cpp index b27ebd32a..15d00c067 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -14,6 +14,7 @@ Ship::Ship(int capacity, int maxCrew, int speed, const std::string &name, size_t : capacity_(capacity), maxCrew_(maxCrew), crew_(0), speed_(speed), name_(name), id_(id), time_(time) { time_->attach(this); + shipCargo.reserve(1); } Ship::Ship(int maxCrew, int speed, size_t id, Time *time) @@ -66,10 +67,6 @@ void Ship::removeCargo(std::shared_ptr item, size_t amount) auto i = std::find(begin(shipCargo), end(shipCargo), item); shipCargo.erase(i); } - else if(shipCargoAmount < amount)// 5 < 6 - { - //TODO something - } else { findMatchCargo(item)->reduceAmount(amount); @@ -102,7 +99,7 @@ void Ship::unload(std::shared_ptr unloadCargo, size_t amount) { if(unloadCargo == findMatchCargo(unloadCargo)) { - //removeCargo(); + removeCargo(unloadCargo, amount); } } } @@ -140,8 +137,7 @@ void Ship::printShipCargo() size_t Ship::calculateAvailableSpace() { int cargoAmount = 0; - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) - { return i += c->getAmount(); }); + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) { return i += c->getAmount(); }); if (capacity_ - cargoAmount < 0) { From 9676a03d7fcc5cc432692acb2c7a4cee7ba122e5 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 25 Jul 2021 23:43:54 +0200 Subject: [PATCH 061/151] problems with shipCargo --- shm/Store.cpp | 46 +++++++++++++++++++++++++++++----------------- shm/Store.hpp | 1 + shm/main.cpp | 42 ++++++++++++++++++++---------------------- shm/ship.cpp | 9 ++++----- shm/ship.hpp | 5 ++--- 5 files changed, 56 insertions(+), 47 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 0f3ef9df1..cacdb07d0 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -1,8 +1,10 @@ +#include #include "cargo.hpp" #include "player.hpp" #include "Time.hpp" #include "Store.hpp" + Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) { @@ -47,7 +49,7 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) money_ += price; player->SpendMoney(price); player->getShip()->load(cargo, amount); - //storeCargo.removeCargo(); + removeCargo(cargo, amount); return Response::done; } else @@ -58,7 +60,6 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) { - // Ship -> if (player->getShip()->findMatchCargo(cargo)) { auto price = amount * cargo->getBasePrice(); @@ -74,9 +75,9 @@ Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player { return Response::lack_of_money; } - money_ += price; + money_ -= price; + addStoreCargo(cargo, amount); player->getShip()->unload(cargo, amount); - storeCargo.push_back(cargo); player->EarnMoney(price); return Response::done; @@ -111,16 +112,27 @@ void Store::printStoreCargo() } } -// void Store::removeCargo(std::shared_ptr item, size_t amount) -// { -// auto storeCargoAmount = findMatchCargo(item)->getAmount(); -// if(storeCargoAmount == amount) -// { -// auto i = std::find(begin(storeCargo), end(storeCargo), item); -// storeCargo.erase(i); -// } -// else -// { -// findMatchCargo(item)->reduceAmount(amount); -// } -// } +void Store::removeCargo(std::shared_ptr item, size_t amount) +{ + auto storeCargoAmount = findMatchCargo(item)->getAmount(); + if(storeCargoAmount == amount) + { + auto i = std::find(begin(storeCargo), end(storeCargo), item); + storeCargo.erase(i); + } + else + { + findMatchCargo(item)->reduceAmount(amount); + } +} +void Store::addStoreCargo(std::shared_ptr item, size_t amount) +{ + if(findMatchCargo(item) == item) + { + findMatchCargo(item)->increaseAmount(item->getAmount()); + } + else + { + storeCargo.emplace_back(item); + } +} diff --git a/shm/Store.hpp b/shm/Store.hpp index 32ddbe804..01526f4d7 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -34,6 +34,7 @@ class Store: public Storable { std::shared_ptr findMatchCargo(std::shared_ptr cargo); std::vector> storeCargo; + void addStoreCargo(std::shared_ptr, size_t); void removeCargo(std::shared_ptr, size_t); void nextDay() override; void printStoreCargo(); diff --git a/shm/main.cpp b/shm/main.cpp index e96f0c5c8..fc719cd15 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -9,11 +9,11 @@ #include "alcohol.hpp" #include "item.hpp" #include "cargo.hpp" +#include "ship.hpp" int main() { Time *time_ptr = new Time(); - //time->changeTime(); //Show created store via friend method (zad5) @@ -40,39 +40,37 @@ int main() response = store.buy(store.storeCargo.at(0), 1, human); std::cout << std::to_string(response == Response::lack_of_money) << "\n"; //correct buy - std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - response = store.buy(store.storeCargo.at(0), 1, captain); + std::cout << "Store money: " << store.getMoney() << '\n'; response = store.buy(store.storeCargo.at(0), 1, captain); + response = store.buy(store.storeCargo.at(0), 2, captain); std::cout << std::to_string(response == Response::done) << "\n"; std::cout << store; - std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - + std::cout << "Store money: " << store.getMoney() << '\n'; + std::cout << "size:" <getShip()->shipCargo.size() << '\n'; captain->getShip()->printShipCargo(); - + // sell zad 1 Response response1 = store.sell(cargo, 2, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "\n"; + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; //No available space - response1 = store.sell(store.storeCargo.at(0), 1, human1); - std::cout << std::to_string(response1 == Response::lack_of_space) << "\n"; + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); + std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; //lack of cargo - response1 = store.sell(store.storeCargo.at(0), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "\n"; + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; //no money - response1 = store.sell(store.storeCargo.at(0), 1, human); - std::cout << std::to_string(response1 == Response::lack_of_money) << "\n"; + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); + std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; //correct buy std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - response1 = store.sell(store.storeCargo.at(0), 1, captain); - response1 = store.sell(store.storeCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::done) << "\n"; - std::cout << store; + std::cout << "store przed sprzedaży \n" << store; + response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); + response1 = store.sell(captain->getShip()->shipCargo.at(0), 2, captain); + std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; + std::cout << "store po sprzedaży \n" << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - - captain->getShip()->printShipCargo(); - // sell zad 1 - - //TO DO:: poprawic Sell i zrobić unload + captain->getShip()->printShipCargo(); + std::cout << '\n'; //zad 2 Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); diff --git a/shm/ship.cpp b/shm/ship.cpp index 15d00c067..99af84381 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -14,7 +14,7 @@ Ship::Ship(int capacity, int maxCrew, int speed, const std::string &name, size_t : capacity_(capacity), maxCrew_(maxCrew), crew_(0), speed_(speed), name_(name), id_(id), time_(time) { time_->attach(this); - shipCargo.reserve(1); + shipCargo.reserve(10); } Ship::Ship(int maxCrew, int speed, size_t id, Time *time) @@ -97,10 +97,8 @@ void Ship::unload(std::shared_ptr unloadCargo, size_t amount) { if (calculateAvailableSpace() - amount >= 0) { - if(unloadCargo == findMatchCargo(unloadCargo)) - { - removeCargo(unloadCargo, amount); - } + + removeCargo(unloadCargo, amount); } } @@ -127,6 +125,7 @@ void Ship::nextDay() } void Ship::printShipCargo() { + std::cout << "Ship Cargo:" << '\n'; for (auto &el : shipCargo) { std::cout << '\n'; diff --git a/shm/ship.hpp b/shm/ship.hpp index 15335b232..2283da552 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -31,6 +31,7 @@ class Ship : public TimeEffectable { std::string getName() const { return name_; } size_t getId() const { return id_; } std::vector> getCargo() { return shipCargo;} //instead of getcargo we use load atm. + std::vector> shipCargo; // TODO reserve vector // std::vector> CargoOnShip; @@ -43,8 +44,6 @@ class Ship : public TimeEffectable { void setOwner(Player* newOwner); void setCrew(size_t newCrew); - bool isCargoOnShip(Cargo *item); - size_t calculateAvailableSpace(); @@ -55,7 +54,7 @@ class Ship : public TimeEffectable { size_t speed_; std::string name_; const size_t id_; - std::vector> shipCargo; // TODO reserve vector + Player* owner_ = nullptr; Time* time_; }; From 0ccb59ed7b65ecf6cc754a7c91774ed424e2bf31 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 26 Jul 2021 19:04:10 +0200 Subject: [PATCH 062/151] experimental changes --- shm/Store.cpp | 2 +- shm/cargo.cpp | 5 +++++ shm/cargo.hpp | 4 ++-- shm/main.cpp | 53 +++++++++++++++++++++++++++++++-------------------- shm/ship.cpp | 29 +++++++++++++++++++++++++--- 5 files changed, 66 insertions(+), 27 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index cacdb07d0..1a258d1fd 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -48,8 +48,8 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) money_ += price; player->SpendMoney(price); + std::cout << "Line -1 - Value of is :" << cargo.get()->getPrice() << " " << cargo.get()->getName() << std::endl; player->getShip()->load(cargo, amount); - removeCargo(cargo, amount); return Response::done; } else diff --git a/shm/cargo.cpp b/shm/cargo.cpp index a8ee38f9b..e25db6ccf 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -53,4 +53,9 @@ void Cargo::reduceAmount(size_t amount) { void Cargo::increaseAmount(size_t amount) { amount_ += amount; +} + +void Cargo::setAmount(size_t amount) +{ + amount_ = amount; } \ No newline at end of file diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 6e70e93f4..4232126bc 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -11,7 +11,7 @@ class Cargo : public TimeEffectable virtual Cargo &operator-=(size_t ); virtual bool operator==(const Cargo &cargo) const; - virtual size_t getPrice() const = 0; + virtual size_t getPrice() const {return 0;}; virtual const std::string &getName() const { return name_; } // TO DO: test deleting Cargo object virtual size_t getAmount() const { return amount_; } virtual size_t getBasePrice() const { return basePrice_; } @@ -21,7 +21,7 @@ class Cargo : public TimeEffectable void reduceAmount(size_t); void loadCargo(); void increaseAmount(size_t); - + void setAmount(size_t); Cargo() = default; Cargo(std::string name, size_t amount, size_t basePrice, Time* time); virtual ~Cargo() = default; diff --git a/shm/main.cpp b/shm/main.cpp index fc719cd15..92014dac7 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -27,6 +27,7 @@ int main() // buy zad 1 //No cargo + std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; std::shared_ptr cargo = std::make_shared("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; @@ -41,31 +42,40 @@ int main() std::cout << std::to_string(response == Response::lack_of_money) << "\n"; //correct buy std::cout << "Store money: " << store.getMoney() << '\n'; - response = store.buy(store.storeCargo.at(0), 1, captain); - response = store.buy(store.storeCargo.at(0), 2, captain); + std::cout << "Store size: " << store.storeCargo.size() << '\n'; + + std::shared_ptr c1 = store.storeCargo.at(0); + std::shared_ptr c2 = store.storeCargo.at(2); + std::shared_ptr c3 = store.storeCargo.at(3); + + response = store.buy(c3, 1, captain); + response = store.buy(c1, 1, captain); + response = store.buy(c2, 1, captain); + std::cout << std::to_string(response == Response::done) << "\n"; std::cout << store; - std::cout << "Store money: " << store.getMoney() << '\n'; - std::cout << "size:" <getShip()->shipCargo.size() << '\n'; - captain->getShip()->printShipCargo(); + std::cout << "Store money: " << store.getMoney() << '\n'; + std::cout << "size:" <getShip()->shipCargo.size() << '\n'; //TO DO + captain->getShip()->printShipCargo(); + std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; // sell zad 1 - Response response1 = store.sell(cargo, 2, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; - //No available space - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); - std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; - //lack of cargo - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; - //no money - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); - std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; - //correct buy + // Response response1 = store.sell(cargo, 2, captain); + // std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; + // //No available space + // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); + // std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; + // //lack of cargo + // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + // std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; + // //no money + // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); + // std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; + // //correct buy std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; std::cout << "store przed sprzedaży \n" << store; - response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - response1 = store.sell(captain->getShip()->shipCargo.at(0), 2, captain); - std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; + // response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); + // response1 = store.sell(captain->getShip()->shipCargo.at(0), 2, captain); + // std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; std::cout << "store po sprzedaży \n" << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; @@ -73,6 +83,7 @@ int main() std::cout << '\n'; //zad 2 + std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); @@ -106,7 +117,7 @@ int main() std::cout << std::to_string(banan == banany) << '\n'; //Zad3 - + std::cout << "-------------- ZAD 3 -----------------------------------------------------------------\n"; //przed nextDay Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); captain->setCrew(5); diff --git a/shm/ship.cpp b/shm/ship.cpp index 99af84381..93d0004f4 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -3,6 +3,9 @@ #include #include "ship.hpp" #include "player.hpp" +#include "fruit.hpp" +#include "alcohol.hpp" +#include "item.hpp" Ship::Ship(Time *time) : id_(-1), time_(time) @@ -86,10 +89,31 @@ std::shared_ptr Ship::findMatchCargo(std::shared_ptr cargo) } void Ship::load(std::shared_ptr loadCargo, size_t amount) { - if (amount + calculateAvailableSpace() <= capacity_) + if (amount <= calculateAvailableSpace()) { loadCargo->reduceAmount(amount); - addCargo(loadCargo); + std::cout << "Line 0 - Value of is :" << loadCargo.get()->getPrice() << " " << loadCargo.get()->getName() << std::endl ; + /* if(Fruit* f = dynamic_cast(loadCargo.get())){ + std::shared_ptr toAdd = std::shared_ptr(f); + std::cout << "Line 1 - Value of (Fruit)toAdd is :" << toAdd.get()->getPrice() << std::endl ; + toAdd->setAmount(amount); + addCargo(toAdd); + } + if(Item* i = dynamic_cast(loadCargo.get())){ + std::shared_ptr toAdd = std::shared_ptr(i); + std::cout << "Line 1 - Value of (Item)toAdd is :" << toAdd.get()->getPrice() << std::endl ; + toAdd->setAmount(amount); + addCargo(toAdd); + } + if(Alcohol* a = dynamic_cast(loadCargo.get())){ + std::shared_ptr toAdd = std::shared_ptr(a); + std::cout << "Line 1 - Value of (Alcohol)toAdd is :" << toAdd.get()->getPrice() << std::endl ; + toAdd->setAmount(amount); + addCargo(toAdd); + }*/ + auto toAdd = loadCargo; + toAdd->setAmount(amount); + addCargo(toAdd); } } @@ -97,7 +121,6 @@ void Ship::unload(std::shared_ptr unloadCargo, size_t amount) { if (calculateAvailableSpace() - amount >= 0) { - removeCargo(unloadCargo, amount); } } From fee2dae8220ab2de858f483ecc6c610b2879e99f Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Tue, 27 Jul 2021 19:53:49 +0200 Subject: [PATCH 063/151] Store raw pointer tests --- shm/main.cpp | 165 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 108 insertions(+), 57 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index 92014dac7..98a11e594 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,6 +1,7 @@ #include #include +#include #include "Time.hpp" #include "Store.hpp" @@ -11,6 +12,7 @@ #include "cargo.hpp" #include "ship.hpp" + int main() { Time *time_ptr = new Time(); @@ -28,7 +30,56 @@ int main() // buy zad 1 //No cargo std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; - std::shared_ptr cargo = std::make_shared("Kiwi", 5, 5, time_ptr, 15, 0); + + //tutaj + std::vector storeA; + Fruit banany("Banany", 10, 20, time_ptr, 15, 0); + Alcohol vodka("Vodka", 33, 60, time_ptr, 70); + Item hook("Hook", 5, 100, time_ptr, Rarity::common);//push_back + storeA.push_back(&banany); + storeA.push_back(&vodka); + storeA.push_back(&hook); + std::vector shipA; + Fruit cytryny("Cytryny", 10, 20, time_ptr, 15, 0); + Alcohol whiskey("Whiskey", 33, 60, time_ptr, 70); + Item nail("Nail", 5, 100, time_ptr, Rarity::common); + shipA.push_back(&cytryny); + shipA.push_back(&whiskey); + shipA.push_back(&nail); + + std::cout << "PRZED ZAKUPEM\n"; + std::cout << "SKLEP\n"; + for(auto a: storeA){ + std::cout << a->getName() << " " << a->getAmount() << " \n"; + } + std::cout << "STATEK\n"; + for(auto a: shipA){ + std::cout << a->getName() << " " << a->getAmount() << " \n"; + } + + //Cargo, amount + //chcemy kupic 7 bananow + //store:3, ship:7 + Cargo c = *storeA[0]; + Cargo* toAdd = &c; + //amount do kupienia == amount mamy w sklepie + //Cargo* toAdd = storeA[0]; + + toAdd->setAmount(7); + storeA[0]->reduceAmount(7); + shipA.push_back(toAdd); + + std::cout << "\n\nPO ZAKUPIE\n"; + std::cout << "SKLEP\n"; + for(auto a: storeA){ + std::cout << a->getName() << " " << a->getAmount() << " \n"; + } + std::cout << "STATEK\n"; + for(auto a: shipA){ + std::cout << a->getName() << " " << a->getAmount() << " \n"; + } + + /* std::shared_ptr cargo = std::make_shared("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; //No available space @@ -59,8 +110,8 @@ int main() captain->getShip()->printShipCargo(); std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; // sell zad 1 - // Response response1 = store.sell(cargo, 2, captain); - // std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; + Response response1 = store.sell(cargo, 2, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n";*/ // //No available space // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); // std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; @@ -71,70 +122,70 @@ int main() // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); // std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; // //correct buy - std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + /* std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; std::cout << "store przed sprzedaży \n" << store; - // response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); + response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); // response1 = store.sell(captain->getShip()->shipCargo.at(0), 2, captain); // std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; std::cout << "store po sprzedaży \n" << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; captain->getShip()->printShipCargo(); - std::cout << '\n'; + std::cout << '\n';*/ //zad 2 - std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; - Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); - Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); - Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); - Fruit banan("Banany", 5, 20, time_ptr, 15, 0); - Fruit banany("Banany", 6, 20, time_ptr, 15, 0); - - std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - wine += 4; - kiwi += 4; - hook += 4; - - std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - wine -= 3; - kiwi -= 3; - hook -= 3; - - std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - std::cout << std::to_string(wine == kiwi) << "\n"; - std::cout << std::to_string(kiwi == hook) << "\n"; - std::cout << std::to_string(hook == wine) << "\n"; - std::cout << std::to_string(kiwi == kiwi) << "\n"; - std::cout << std::to_string(banan == banany) << '\n'; + // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; + // Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); + // Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); + // Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); + // Fruit banan("Banany", 5, 20, time_ptr, 15, 0); + // Fruit banany("Banany", 6, 20, time_ptr, 15, 0); + + // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + // wine += 4; + // kiwi += 4; + // hook += 4; + + // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + // wine -= 3; + // kiwi -= 3; + // hook -= 3; + + // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; + // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + + // std::cout << std::to_string(wine == kiwi) << "\n"; + // std::cout << std::to_string(kiwi == hook) << "\n"; + // std::cout << std::to_string(hook == wine) << "\n"; + // std::cout << std::to_string(kiwi == kiwi) << "\n"; + // std::cout << std::to_string(banan == banany) << '\n'; //Zad3 - std::cout << "-------------- ZAD 3 -----------------------------------------------------------------\n"; - //przed nextDay - Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); - captain->setCrew(5); - - std::cout << captain->getMoney() << "\n"; - std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; - std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - std::cout << store; - - time_ptr->changeTime(); - - //Po nextDay - std::cout << captain->getMoney() << "\n"; - std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; - std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - std::cout << store; + // std::cout << "-------------- ZAD 3 -----------------------------------------------------------------\n"; + // //przed nextDay + // Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); + // captain->setCrew(5); + + // std::cout << captain->getMoney() << "\n"; + // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; + // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + // std::cout << store; + + // time_ptr->changeTime(); + + // //Po nextDay + // std::cout << captain->getMoney() << "\n"; + // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; + // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; + // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; + // std::cout << store; } \ No newline at end of file From b88fa984d6598697190fcf129862850736b8f6aa Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Wed, 28 Jul 2021 16:19:56 +0200 Subject: [PATCH 064/151] After changing everything to raw pointers --- shm/Storable.hpp | 2 +- shm/Store | Bin 0 -> 827568 bytes shm/Store.cpp | 28 +++++++------- shm/Store.hpp | 18 ++++----- shm/main | Bin 0 -> 164288 bytes shm/main.cpp | 96 ++++++++++++----------------------------------- shm/player.cpp | 6 +-- shm/player.hpp | 2 +- shm/ship.cpp | 48 +++++++++++------------- shm/ship.hpp | 16 ++++---- 10 files changed, 81 insertions(+), 135 deletions(-) create mode 100755 shm/Store create mode 100755 shm/main diff --git a/shm/Storable.hpp b/shm/Storable.hpp index ee853fe8e..97d29e8cc 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -30,7 +30,7 @@ class Storable : public TimeEffectable int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } - virtual std::shared_ptr getCargo(size_t index) const = 0; + virtual Cargo * getCargo(size_t index) const = 0; void SpendMoney(int moneyToSpend); void EarnMoney(int moneyToEarn); void removeCargo(std::shared_ptr, size_t); diff --git a/shm/Store b/shm/Store new file mode 100755 index 0000000000000000000000000000000000000000..100c3292c2dae8047e29d2ed3abe0332f04a5995 GIT binary patch literal 827568 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%0DtX~d48 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≻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

)d+e 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�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�M^)?cOTMw^lSck2>wfQKFfFg!!QwRIx%M> z$ZT3Qe_sv%np4+G#p1XG(_l%Sl>ITbJ;&+0Z70B|C zfEmv%cum`t@bg=Fylq-mvf(ATx%s4Nhmr^2PPqXg;)PZ;3z-nV{2&-tbXW~x>9Hiw zP_As%P!)PQs0GVk#=BaqC>Xy6oDj1zWYAbT3xgBk#JL-99PzX4`z;nfUS zJ&%Al74%siPsxN+Kd@E{G--her2D|yG+-S?%_dT9gt3_-4^W+Ky|nWKP3j3+9$0Z0 z?Z=BWNWBf@`#xGfkhTd}yA!Z~81m|8@ctlQBB%Ks1J)q$Sr=65ZRr2-7k85KI0P_iAx)fdR18dblOHSn7 z2iAcBYiYR~?!y2*O%X<3iv;9Bcu2rnhn`*nKM24l1jY2~2i9Q$Yus#C)1LqYQIHii z$)oS6fc5DRS5q|r>Jn5zldL{qOWI|v(a$p$odGEKKzdAIrI3-T6Vhaa7^||b==G%f ztXf{7`pC>PR(@Z%I2 zLv?=jxua6`nR-lvRLbqZ;IGks^@*n9Lk_0433x5Zm&p0m=fb{N>_s5zJn$~`_-9m~ zm*=@kW&$wF1I4OO68NIz4)E^r_-9m~MiDn%I{|o^Af`*v6{|iAD^;KQce&wy573_! zVdS-lUwz8)K2riuL-|z0zk*)B`dsw4tEm+Wk)R5iyz0{ey`gBj2!QctX!5F0>QPKi z7>l_8+~k3D^y827>Kz{63&@a{WC+EXG zAvUPLwG|nZ@(KGOsA-7W`2VEl6;X3+jaI`i?EjzCyg)ULSH6v98B83G+=&s;oj43w z3)-E~yBdEpa}RLd#9;;|_3AN@pY>R(s_@;3!zYu$e;d3b9>4O$fonm^n>ZBVL6>3=P8@@f+{flVxwj z&%W68yCc4h_e2#({QqDvTm0^bzv)@+_eOl4H4s{fu)GnUM;3S^es3_n5q~r3e93|l z{}RN=8}TQ@ozel%vK;XpWP&&14}q|Z_>x&N;>!^QWu4aJd4VH-pH&sQY*|r^b=eQ& z0Y!C(y59Jk`_QCgUG{+O;Ee|TGLNU;A;9mlUqO!-8}X-O(V0kf2aLNZa#+x^M2!*u z89{p^{`dvBBAw`$V7%s|{VsdNOzeMxy!srxZ^)O(`CYaFKI?)Cu0);1U-)Nq+0*ZG zmDB~Gkq3%(*>7VBTa=W8cfQ9zqsuH{jc&O2 z0JN1NjJy`{yX;r7jxB+|48Q?`VtV~9d-Y~l)3*SeJVTS$Wgo{nwrEO5N$28UQIpqY z-*E#jR$(lf1JKq3=`Ndt;DKNJeGsijZn6T z3b#Xjtokfo4BmRsAM|)?Cjox-IgMqCSoOjEE`n6=0{$UIUJ$fbeSQ|SSA7nnYavL* zAcLuMI$3LU`Y#Qq-84ti^9w=6Qx`8iB zZUS$a$3LU`Z1vLhAOJfEV!9MvvFh`sB+jcow@-7!{S=^YDZhsecTuH}RTn@m0JdmzFtP~Zh z4`bE1ZZniV2FJfJ)_Q~E{HmaBgY46k{{m9};JCO3SZ{&+fyYwc3cqn%fCgI+okq|< zfcKZjuRJ*N6bXNDd?Kg>rwR~wef-VsFM~~&KRE6r#e1rLfgW#gJQ9yj8Ua+qMYC#tU$LKmeC>j@P`}v{TZsPiR(nY;{LG%a5_mZ&6146I02t-c% z@CL_naK@1;M}E-o2geIqyMvwkI9$}+^}B=P`Ngi^eH`A4!mT(shO215H#qVDjnI<_ z%NzKSHO+rlI%xD}E=nZ_!AteJJPp!}|mYEWxaq?-z8dYz`Jzo9lYptjW z1&tux9Dnn7rpB9>9ZmqNC&&XlmO3STx9Y7&>eQv+&G7h@s~%6r@T;Dgj}6kmsZ}uU zqd=H!y8Nn_M2c7SGGfxht%HqlehH-y!}#2nrpvE-xgy|Jy*(}5;2fki2Y*SLqU&F( z-f_g;N`)I>cO!-r9`;$#M zT^ie+p{!P3Siu|;LD|(>kcRzwMu>rIP(QR$MwgO2g3QM6jsqVJY2>|LYw2tC#%i~^ z671Q8T*swiuOW@T2drfvukl!Fk?`Gyw2@m$9tUri$FJOwWaZv_z*+Y)z7PUVeGcOX z3Oop1iY~t)$qNUsA;~*$uMc0fTp9mRy81@LD8^q))8#iLE{^*TINi>7gX<5-XbLcC zimrcYNS}>Cif#aAxi2AcrkLN5=1)?hQ9T6eHUgOvBg%6aqIa0}u+FaD2Kfm7{(EN~ zJafc|@+^kvVzc-<038%X4*ot+zJegt{h~plEjfAh8x-bw3=rP85W?L78+4X1sqXg; zF=2Vz;=lSZLOi-7<;Go5g0{_91#IIBMrpgJYwvVz9%E6j5e&bre~)($e9!wh!qTU7 zcx}DPOUihYRKBgzZy~*Bur~eNw(GX_tCzWcx2>;#(e=B-Oe$V|RUBqM>Z|?UFq1kO z!%Q{A-D~_jWWyVBen#-#kn;!JDNjvcVrNEYQovnZ&4-3qro{F#m7N~wPL^NURAI6# z#TT0_KfN6qABVc9@Hbnqc>LAX4^c_fTcCg7@f0^M#3sx8=OBCZb|9>-?(2dhB7jtZ z`w=_*&F+HsCd)4g+M6sd#M?50RAU$|e6&AVUUL|SU_oA;3*JETC35~`c?kIO-fIeY zS9|<3Cd-cuaFr|vV3h}oO_u9|FG{w9_q@kHW3t?^o13l=0N|E2NtdE4Hd)>wiSs7Q zPh8}N8%5S<;V+TbBK~Cg&@FD@O#vt+i23D$WIGU6SATiH)ielzQDVLx|(JI zF#ilq-ekGgG-b%XlY0QT-vb$$-1=ze23l=p3eMhEV1$@KWm9i*D^rs#6)KZ#w2W1z z6}?em)C1TAioco8()TOVvd6*81HHD#Q~6RoxUOJhss2*QL2k*lQJKC$M?|FR3u6F9 zY6{w`Ov422Ri-CaRT98!rzrjs$QhOC)2H2Z)drv`K}?sTD^{8MN#eZ9^xHl+ z+#vv6Oc6$2i};mk*M)B2a{yRKP)x7?!)dLw;Ev#PI^#bvophTsis#L>YUiq`%(Gi#T{!-CcedHO9`&Wz*OCXD( zHoG%8{d@g(>H^BId=U@qn5xLuBO~jbCj_!DtRb^J2xl<*Gsc96u*JdtC=kr+h@IVN zs1Ffy_Ldn&MM-=T%CFH9i~Hjx7vk`#Cs8Sqs{Bhx&@eWt_6s1g5WBU?b)WvP0T}g_ zxx4_W zAi;$jAj>(`y(%s^e$sR!GzFgeb}+~+<$Gti;e=%H0$Opw_wNRWN1oL;lfJv1q$KA9 zkT!!9ws~L8$b@bbh)Zt`%Z|&Y6&H6to@9mc4(?poQ*?D(bK;jW$A zk?x#_;jWX$RE3UHL8tj3)XnHY=C?n?T|bM_kH7Z-+zoP=OY!HPfV)}BQ^aSUgu5hl z58a6v&RaB3JwSKx6S!NX9ie+U8b^zksiMDE7Tm4U{v!P^>S>*7;r&?rrvu?`la@+% zjR@S`QzYDPCc)i9hx;H(y2YJ3KA*k<_gy)}+^_7g&D4kZrY-&xWI@YJ9lH>c-7-tZ zC=W?(nXO~-9a7dZM?&sN$$ubt9@7>uQos8axm-Jt7zRFUC&8S}?BV--nY!xvYuK&} z!X}kmghlA){mck4ors|U!5*+4PzlxBf<4Ggp-l*HG18FSF?nE(NqhxVUVx#Sf9^(7 z$B8=LaO6_=k$P#eB-f`VU;huN%>q$g)5GhJV)0X~g!OBa0zhdXfj2bCeMV=dYKyAL?7hrP z;N?v^F_VLBKzd1u+J3X{gXd+Hz{{KzE47ik4YSndmrJ()PO8Lj$EgC0%;gC%t-!_1#&^4D);$tb5MnSKDkHHaGOsqV!!dKA876i-+{U}gVf_5 zRY|g$>qhSSz2Lu5tuH*>Rdi-ra`_0-{6EpRz~^qG7~jb4Mb+1&@!cKoC#t~Os_LN) zh3zHXX%0b8XNy@R6x*e*03B(D`JlQH_{>%YFR&Or={M}MHKeRYZ@X&%pVww(hV;AtVAB&RLu!&ZFoVO3R%) zkc2Co^8haGmBN8zj&pf2JiQYyg6BGCGqSFgS*n< z61V4^+H z+SYeu{%j_*ui|A^x;J9Y(6Hn;-v!{9mgX&2ifz*6&Hod;KlLEMo3C`U7WK))&~=x! z)4cKINzhW|lI#5eUT4kY4OyDUKH(fAp<7Kb=a`XF*o5=ytcrl-iy7rZI!3%tOGjq% zVB}cYN1B{G7wxO8sgl0E>y zC6T5ViJS~@f=LzI%*Y=#bQrv5ELJ8;pviYIs-v_n-i&odR5dE$>j+Rg&B!OP8C~8` z7K^T{>gRI+x=5?y-C7zT!6XFV0&j;I`TI?+fLEGT;3s$L3Vs7!AiU-*Hj?PF$Tj){ zFhXj)xdVI|rkP|TchVfNE|D>mH=@PjW#s-?0@hq%@shNPEFK`)7@I=HDankF+lOUcX=RHhfIz+{j=KS#rJbEn1bbe_DPm*wQowT*^ zB#S5C*?$b4vO0E~0;Pefd!WJb`UG9uU50N(o&$$@0W5-A#z z)vMrdQ8KgQy>~if2}gH_vt|MCh?1!lFT^_&ko#Q*05?k1c~M@45G0$DPfP_rUw2Tv zK~Gw^k$m0(kWEeIg?h0hyEE3-?*R}}67`gw|3z_)hXHUjpy_`DT*OM8r~%y5sG}xB zgpOMMKLF^dTk-?~bf=W?1|F=-t~Vnu!e%b;B0raxb@kWat;?fDH1GD)QJ3kUX0NG2 zHnVz9rC^P$7cYnOOL?>?&6@yY33u7MtB_6UxM#rjOU%fc!uW2^qeW@n8(1-HVQ;EJ zi$c6kFqUK^t7S(>zm-Re(!6D`V%WmoSA`a(=lIeD8(HgKg!CVIv`E>6LVcLHRY||r1O$C+nxn8?3$Xgvo9u)SD=IHn5iF|mtmURF-t!xcbN}& zwthUm{{Y-M`jNQb2|Qia%dCbeQGD`fxa()Np!?2Ea5u>6L-#+#6laa4JNqQujkD^} zZG8fFlk84(_sN30Y4#Ahj}C;pS@tx#2aJTfbp~g1@gc;mQ`=PbaPg-k-z`(t7J|gPkLag}FV~Oj*~ItM?zcj457e@6(tUxZ*NVVBCVe*JaAFeN7iTPl z+qQX8m~HofiAQNMHD!K3Qn>d$#J%>m&Cd+NV%o9@V9Ux#SZ+rO@e(fE-hy$?7DCEl zgg3l%Q#=28OxDN!h4o-PB{!Vjo#D|_a@%S31w5rPZ%%SHT>(#L@nkyH^5E$ro_uFC z6?7F(ZKs?Hx{0TeQ$hvZ#naL`2X(r05Al>acO$-?%f-{($@>YOo)YiAP60jVi054A z(;4ve7SDOkt@QL2Pd|q%e4Wn|Pk-m0Qh54{=X|FWk2al$h-ZNF=}LHpif5qn5fuy* z&md@qr`K8vzpq*h-Zk?n%X9aXQ=ZLwM`Vyg+}fVSHpLeEElvvMoNQ` ziKQ_|ZMz@5SsC3y58H>4|2;VrT?DTzuqdNs)UUV}U`@0)NF{5~uXbH4<6g<9&EZ}r zqeICUV(!(Lb;LZVF-M7cNH7nprVHRn(cSu3{X(`|ef0LO2wK?YQ=+Ug@rg(> zfz(#;^ySfVVS7BC_0s5^4yRym^{}Z%d`HBjynhNK5+c2%s67ZbMYq5mmgmlrdmaE~ zflx}u)rNbacAwk;ec6(CJvU*N@)<-PMHvh#0X--CU26M{n5sH|2a;Y*=>4Y8f}UT^ z1l|;<7#5!SF@}^M6e#bF)70byG?4O>dT8q!Bkx2XRQ`u1^Hw=m$79n#J}f$T$DFI< z(S@LXuFH~F&bj1zH-U_67g-|rdSpcxQqH_c&b=9kW_s<4chl*a5AkkzqmiWY-y}PD zXPtfk;*8BmZdnf24W`T|qA!BSN6re1OghoLfxG-~QBX{fJVA*e{A4Q`{4F|;eFz{~ zuaz+xM)KY0;LAVJfJ=PGcM)qFa!GTW3qm&wi?^}7k!R>`y6)ra7IT6zm!-sdWMISlG- zohfrjjulx+jp}#+ZXgmR&dYEYi`%w&N1kneEhfMBL1zy$Z1+W0h8~8NBI)L(1?`7d zT3aFjod_T$Z12gTTsqpjZN~>_^2!oh=tTmw#l#XjvL$Tak73fbcf$0ot|MK*h0V(BFWsrXNxmzbN8@q4<1BQyLnlfZQm;<_b}V`eK5oJdx%+)V0u#d zQYdj3rNcINl7{UtxRhrj`NqUiBY!}Jf#lkkPQw!UhVA^7a?a@Psq#3rk z*Uh%MqcCi9_gmNwAhSbsUaNkthBriJz#{1p{D+Y6Wpj3%@HN5TBv6fh3t217r%fe-KCOJm*7)qyCIQTt>#IHgA#bfFGj((93ek42@WuoFCk%qsBDi*U5Jz#*J5bolD zUkAKqXYe~gaj$4Nqc!+F!0Y4jjp&1r>6I8>%UF#D`H~n*p<47x3QtG|Yc|O9d{#z2 z2IgMLk?JjRR~uS`S`F3)pY42G2zFXN^TTjzVgFUH^ayd8$igj1TiE7}LbjbSoF?7z z>o8RGuBj)UFaCunHp>1U3d8nq7!7itItuO@=^uHMlU^L+T~9`CjXD6gkaeSaK8x2u z8M(E{YL-Gz2eM>f$=yj^E0ZZb(5G%w6Gk8wfqqNS_ux0O#|8%eGKeF8gb}vWN5aYF z)3D7ALLu%SvTbe`3)?)6B*Zt-XwP)g-=gR{d=D*v5H~^Df(qOG;yA>YzqUBTHunmJ zcqNc+*BeEX1lzt;+*gRnjXdDO4BNa|C3G6_B5~UG+%aU59JYB6Mu-=z*!IMW2_d1# z9s##4X4vNS5~22h;7!jsILih7jG)PbO5}M`YS`w{uwk2rlc6UTlSh_@co0F0T|pC6o=%Bw8$8?QVVy-Tg)+A5 z=4pax+*eTx-9=)CZJtwT+b>BZd4yw;OQCw(b@Ti@+veehw#@?xF&4lK+oTtXY1=$# zugK=vNMSK;*Uh8lFg(m8orkf8X1-2>CNm*no2Q8tiD`=&wmZxLkSD3xHjiVo?L09_ zzD^bVi9^fdIGpyiB3}bk>)T;yUbU`zpEKZ&*ya$bRci<;4zQ2C?P1SNj&N^Atyi!s z%&4{O97?QwL}t#|p%OqexW^$x46*}tBW!a&O^ACnY~h7%Znp_>uaj-xB?xZc3UOYtaDC6Af*=)G^D*B&;5Sbm?f!&Cz9iY7`!L{D#kBtGE8Y3G!N)}a$VTKqU79AiR zwp+s8;&>W+8xlgySlKtgDa<*b4u<`dvTw&Q+8xd!nQPfLr&dp^DxYF)`ym{fwYj!o z^y`9%_Fp%_Fy4Sm^}jWMiBMP2rVP3VUvuAr^)l}_d#9?`7fXAfoz}nEQ^uide`2u) zUGa=Ml#O#C;RSnk|9QLceFU0a&8h98C|%5Eo2jXv3^k15aCT1Z|G*-AlC>V|Uj3hb z0J|IDnmuJTI;dlC&6#t})ba+{JOKCU+0UvYc#gdLMnnt0ENx+%{w{SblF-+s_wwm8 z_v0*%nOl)F3nV+uB@^=IK(p^1XS6N70pIX$)FLUqsW!^wR0-Mc~xH`MINj|RZ0N(Wa=X#xe_EzF%+u(sa znL5lti4#l3Uqk!*Ccd;r{EfB0yOGV)ysEn4)bzu-9N|<>2oCV7$1Y7G#}mBvZO~|x zsr=Ncw;?1^BF;avOGjzHifU;$O8Zrg_PbHquWETwYMYFqXs4?^mba&%z4@?VBaQU+ z1y#`dFd}VvOxV3HG{cWbo3|^(z5#b*0-X3BDiqENE7su*H?nWQMCNi=xUnz1oWft5 z$bF>3KV&A48Jjk$rjGQuJmzcKs8a16p2uuW8=b9H4>Gcwp;AR%)nk3tk#{QWA@;X% zO9tUMvMg6x$_#!tLv#kE-5qe;3~KNx`Zse)SyS!^NLv#~=20e+8)1?HSNq*MHdD25v#{yhcW_<~R@=k<-9YA{&UHB}LQ@e4 z;y&F--&4rLk{O>;9_Mxs82(Xh`K%j_M%LuYLOv@-qmf-?l|fEtD&?_mPZ3}Fw6;>7 z;C9^8!@0PpN8GL+S-a7Cc$}O0uB%7ra*9GWPi{+cqh8|Y&jcd>hiW{nmaeyhbTyvV zUVHoMYCJv1&872SzZ@0phLlVcsJY}aqkt!0UIo485*X?1uI8g{_2QA5c0pWqIr6dx z1Ae?0K4yab69xhPVnzHCs5x54xSYB0m`hL{c(NR~V)HjvTc}ZO54lNTeEgQ^9~`IK z&9i|59bH}MIC!p=_Pgz7S0LR@PU16cq`Lz3-1cJ>wn5b&foxF*cWUZ@O|gQt?wL z@pS|P*`}YjgZ~%Lk6bu}T)4~C)zObi)_Z`Rb@E-}Ul*YU7pP3mV^J-2?^d9SbYh_` z{w8cta<#>(#S&=y-v^MJRF#UEievR$y>3goNi}jawdwH1h{r9;uO!(#cdwHhZh@bQ zH<^mFb_UB3i8J@Qx~VX-dFWmZS2|W}^4_m_fLrC$^&;Tu)Af+!XsLz4Hhxp(seIkR zmxdtCQ=006yjW9RP(nAhJ8ePLBh=dko&WeAOgZkXs@XiFZ>gs#)>s$h#Tx5^61t62 z?xlXj)5NW>o+e>u^Ax`y*6NIjl}r9%HzvGRssJw`NEopj3`F5`My z6Mx)y$B4d0HqQdw;0AY&4iy#jA_V6v_Ye0&2BIY&j+29!rFxf+H;hTHbaP*tOTZE% zT%A~z?*&)^*C8%}I8&>P`MJ0#AZp=zOV zMj_9Sn*m5)S1?vVd5)qlC<&a2z8?jjS0f+e&kt3!j^UUjBrZg5rom|9YKb-E&!FXu zlNk4dRN*8>-H3~WMLfly<82{7j?4PUFuq%@Gpn<

VZ)>QAHOYdGTc*KifeU=Vt5 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

  • !qR!j<`GV}6{6-i?-k4}wcRIVA6!l-=mjDvePO-B^Zz&~#wUick^ z6~f2xobvN|NTJ!Zkf*jF7-g{8jF9`lyNDi(7=9)%^u&NnZFEx|6*FppWxNs;8Sm{lwQoNSIwD_|ruW*v9cQU8OV!I> zi}hZM<*jMtyvS4F6NZvnNBZ#igx_A?xtnSd88M3%`bQ3&V9=5gt(36OM#$ zzX{=ig*U@tIQu@@eXxpI>af^_Y;e)3a6YDN674=x#bS0S4MR4hr~uBd3~&4!!b6KT zz>#p-XoQCq6~STn^b5uyJi45fTqqpexew+n8w8`|;Ld%xBX70}M|SR`osPyrLO8r~ zAM3=$lrYETKHe!l6ZK0DZbljo?ie_@?}HuT;EsWVo2wAHwcHM9r!e#gx zWN^)WF3JA$ow$V1_Fw3f@a;1)g@gN0XcrGg>ii5CQ&+)(IoBNAxtfFf0DyZD%x{1R zZZmpF3I{js%^-vyP6F;A#sT-27t0bosyp=(mT& zakv^f)Ak}`WZKUE!_)T}vy`XrGlGko_Zi8-%~_co+^q8|pM#sHuurZh9Nd4vo*IJF zb@vS9&?nau4(?J!xAsNqFOes6aPJSJCsZ0$CE>hI+xs3)aG?#~>+C zdR_{I&&7EoTGFTV6u;r(8~uiZn^!_UGv(i~JoK3<&w;=2g0;vem??8m2|hDr z1dDw+9i=IQ3!lN3gL}eAZ29y#xaE`%NR)+xdlbx#$3OHs$AvyA9NhB|zsQ#<88|G7 z^6?lo0up6%a1*Jn#o;EZY^6EN!97pVK8Z3pxCv4(;qZnPyIWQ7)OY zB+64DmrqVaM&R7QU*t;qU?a{x`{;Fff6185ypn0c*YNt9P(q?5#70pK451$HfoGC8=#(zgKonr6u-Q6>ks zSSmzIH^)EOl24+1TpwIwGZ(!8=uf&klnHm7tSa&Qx=w&JjjD$feq=iuIy(tXImO_0hS zg`1%GYqae?0IJ`n++t)o zWLNw0wC+O=ZYdX;z@H?D$xRQ~22@ND}1Pm6)9VCo@lp8J~ljSJeNLnMY`* z%IBHhjMb~Z9uc1Di(&T){6p>n;QaN7@Jy3E`~hF2az&oZGyM`|n|*oedW09)mh6{2 z)5NJg1S12XEfmvd*CQV@#$S(o9%#>W$upe~sH(-G-fGil*CStvLK4rkBzFWLr%-`K zQ}pd)Jt92Q*8;P~YKRf4+4Tr{rp3;4h<%wrmPAity!>`zY^Fk=XL{!WdZyoi3wF-< zi;erOad{J<-7Ey`j8C3v-fyUaroIv4&-mn-9>7?+8^VL*&-mn-mKi*WXIjE$#wX9T zgp+utC2VGV@=P=A&-lEz5W5U%`LlV>(eQJ#WA&igLih`Pp6L$>;>SL#Pa8B5S~8pS zfTPcD&!eCb+^gO&;(Z{6l51X}g~AOt(h#e!fVx5P34s^dQK_`tsDS$D0PW z>yc-gICTOJXHuaf#q`;(*NriL*V{kPo+&)j%c;E{hYePnKHK&Bi9!<3v?RA3kRPbP zqAB|J(e;F9x(KyXg}>GiBUH0pk37?2ryoFr31mr)&!>C#MJs@@Srv-fFwcajAy z;W>+wIJjAZ@{MceQ?94U%_m&gKBJ#zHTIddSuOCBIxvmok6Ap^P+4N8|AP56

    hHJ)f`m=_={jGx!QW6p!zTNs0pzXF? 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%0Dt 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.=10O$<--81KgqJ_#`j>=hu=qm$} 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 DFifAU literal 0 HcmV?d00001 diff --git a/shm/ship.cpp b/shm/ship.cpp index 9bf17e4c0..0b3f703a4 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -160,4 +160,4 @@ size_t Ship::calculateAvailableSpace() return 0; } return capacity_ - cargoAmount; -} \ No newline at end of file +} From 7eb2b2d7a3511f2074072fc7dea2ba54bb55f08e Mon Sep 17 00:00:00 2001 From: karo Date: Wed, 28 Jul 2021 21:18:05 +0200 Subject: [PATCH 066/151] added stores to mai.cpp --- shm/main.cpp | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index 03a25bc8c..6940f648b 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -26,7 +26,9 @@ int main() Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); // no money Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); // no capacity - + human->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); + human1->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); + // buy zad 1 //No cargo std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; @@ -65,17 +67,17 @@ int main() Response response1 = store.sell(cargo, 2, captain); std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; //No available space - std::cout << "Player: human1: ship cargo: \n"; - //human1-> - human1->getShip()->printShipCargo(); - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); - std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; + Store store2(2000, 0, time_ptr); + response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); + std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; //lack of cargo - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; + Store store4(10000, 10000, time_ptr); + response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; //no money - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); - std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; + Store store3(0, 100, time_ptr); + response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); + std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; //correct buy std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; From b31c9127ee2ba47a617d0a079b5fc3d3c0183486 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 29 Jul 2021 19:56:46 +0200 Subject: [PATCH 067/151] Added Game class --- shm/Game.hpp | 11 +++++++++++ shm/main.cpp | 22 ++++++++-------------- 2 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 shm/Game.hpp diff --git a/shm/Game.hpp b/shm/Game.hpp new file mode 100644 index 000000000..f9743610b --- /dev/null +++ b/shm/Game.hpp @@ -0,0 +1,11 @@ +#pragma once +#include + + +class Game +{ + public: + Game(size_t, size_t, size_t); + + void startGame(); +}; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 6940f648b..0dd710285 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,20 +1,14 @@ +#include "Game.hpp" -#include -#include -#include - -#include "Time.hpp" -#include "Store.hpp" -#include "player.hpp" -#include "fruit.hpp" -#include "alcohol.hpp" -#include "item.hpp" -#include "cargo.hpp" -#include "ship.hpp" - +constexpr size_t start_money = 1000; +constexpr size_t game_days = 100; +constexpr size_t final_goal = 2000; int main() { + Game game(start_money, game_days, final_goal); + game.startGame(); + /* Time *time_ptr = new Time(); //time->changeTime(); @@ -144,5 +138,5 @@ int main() // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; // std::cout << store; - + */ } From ff179b4f39dbda328c85877d936f99e1e88b9a89 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 29 Jul 2021 21:40:00 +0200 Subject: [PATCH 068/151] Adding class Game - set player --- shm/Game.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ shm/Game.hpp | 26 ++++++++++++++++++++++---- shm/main | Bin 827568 -> 0 bytes shm/main.cpp | 2 ++ shm/player.hpp | 2 +- 5 files changed, 67 insertions(+), 5 deletions(-) create mode 100644 shm/Game.cpp delete mode 100755 shm/main diff --git a/shm/Game.cpp b/shm/Game.cpp new file mode 100644 index 000000000..9fe36b9a3 --- /dev/null +++ b/shm/Game.cpp @@ -0,0 +1,42 @@ +#include "Game.hpp" + +class Map; + +Game::Game(size_t money, size_t gameDays, size_t finalGoal) + : money_(money), gameDays_(gameDays), finalGoal_(finalGoal) + { + + } + +void Game::startGame() +{ + printTitle(); + setPlayer(); + menu(); +} + +void Game::printTitle() +{ + std::cout << "Project SHM" << '\n'; +} + +void Game::setPlayer() +{ + Time *time_ptr = new Time(); + std::cout << "Set your name captain!:" << '\n'; + std::string playerName; + std::cin >> playerName; + std::cout << "Welcome on board captain " << playerName << '\n'; + Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); +} + +void Game::menu() +{ + printMap(); + +} + +void Game::printMap() +{ + //tu wypisac kordy +} diff --git a/shm/Game.hpp b/shm/Game.hpp index f9743610b..c97559e5b 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -1,11 +1,29 @@ #pragma once #include - - +#include "Map.hpp" +#include "player.hpp" +#include "Time.hpp" class Game { - public: - Game(size_t, size_t, size_t); +public: + Game(size_t money, size_t gameDays, size_t finalGoal); + enum class Menu + { + buyCargo, + sellCargo, + travel, + Exit + }; + + void setPlayer(); void startGame(); + void menu(); + void printTitle(); + void printMap(); + +private: + size_t money_; + size_t gameDays_; + size_t finalGoal_; }; \ No newline at end of file diff --git a/shm/main b/shm/main deleted file mode 100755 index fb6ff9f31c12dd75b54f393db87d1fd7bdcd8a47..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 827568 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

    )d+e zz|L;){MvLB@OOY0)TUI=xxjx0euKB3rdr&mA#W4#>Lc)-TQ5%Sy1s+Ml|{b`aQYVidjS1j!1+RO`W=BwzzbSWq`^M@zQBUf`2HTQBjUA7 z`AVG0;50zoXL~tnKRA(CR3G{sgQeiShwC6cMB$D7YswbYXFqJUx-~z)i`Nz(o-n10`CR9uyHa9oc1Uq%UgzLoXiE@=63&n zya{-dLhu8?Yy037%M9RQl>ZT~gM&&&#`0}9mPt*qo(0dZA2$HL7r5Wt*8})r;2(PH zX};scdOYyiWBu(f0=@)zLF0t#aR&9+16hovPgf|Cnj^pR_biY)O70Y?CFYxWq_q&fz20mxJe|xV4KD7{h zH*osx8H@@y27DGkaY_O{7v;Z=>);B^p4vy6GhTAz5WE`w2KDe;Ph|kF2i&heWCPCv z?$=&akCDKiAwQ}_`SG~x$6VMsSBM{*fUiXV_VeQa@D0HI`sEqm&%wT5d&f1$`5y3s z+MD7z82Z;t!*}ViR}9{cnZg^-zf?V_uTed^!H+TV;0^HbI?L}bzFxanPkcK4XhgEE zb}_SKZ6naqcH^-U{(O(}ZiG#zEYEZIyMb4n9(Atkd8X(D@ZP|)y!vQ+{rTl3;FEw; z-5mR#XVOx!0G9SB2lCOtCMXLyx~yv-@uqDx;c3A86r!I6{F*}WT(;lSYu{9zi0n@Vekb((`d}XL zNx-oTaQ*Y_`S$={0NgJ=CxJgy2ySFyyaKP_wSR*<2Gf8)ScrZW@CORPbAitW?sq;l z75KtJ^z(o}TnN4gIMv_J|C5ZT82HokmFKxMqc!e9(D&=ZX}~8JQhpY2YM%tJeb1Rl zF7OeB*q;h~;pBqnlj|0GSfnV>n&mZ#9_@a6&0$xU-&O;;p4A|~@XHr}2O&{PhQ~fM5`$=}F z9(lko;yQSBq#g6LJ9hfQ&X_p`pS@Ov?snL@_#pZ&`4jfo;peylMO~lP!`An63-0G> zuw^hV=hCBbZhSp+=^1d&!G>R7kITkB5_m7N=kz1@8Qq$|KSI583DRI zzboO6zB=rtxUEI`)zOcJ;yT#O<0JJG&+{mYU}rdZ*mk;h__?MuWNimN1^8$$PBzq* zS&j+%J*xfSV2SJ6@H|sOzf<)EaKBiTZih8IaEhl>7f&pk0RIelEidjlzvu=03~;}B zdm?c2q5S;bUVT$dOccwdz?%avCy!z$4m{V%)~<-_5}}4o*QaBpZE!9{@fE*G>$hK9imbPV)SM&-SSvdB95n z_lv_G;5C5{@|NNGJo6;*>6n|YiNMuaT^i+ez-NlU{pQyUP^cbM#+$ef&M)HDh2rs| ziU;v#fcFk~wP-xw8OaM&P-B_K{U-1ZEx>cE#2XaJGjFL~>~^e<>9{rx++*Or{;(R8 z!LA;zXPvtjb+`ylC-9v(d%ml43V7Nh1@~1dBiIr9AK>%7`c$|3RNaU}zhkx>oWh=) z%mHWOLjUJOM*(lM%)hPY0?!6M-Rp-rNjgD&VH5E6!2RZ@1HkG3sUc);9QgBh(mw+{ zyj(rE>BNbj*`)T%20k19AE$OXZMimNpAEc2El746AkfVgM?DKZMa7En9>8w~?zbix z&$!>*u?YBB=wpbwK1_D)ZwI~vIGtlS^)L@QaXJkA+9d_wztW)cGw|WSAN1-|dwZT$ zD2>HLMZ~hO-~MP0&PLeDB|8P&5BdThi+ES@mc!@#6mP1>MBr<19o!gp>q5RPcI&$q zcGjSrg2ph#doOVMjn0C`a5nH$z;~dWA-Fc$#}}J#c8V|kP@r9W+Pq-9_^NY5+3}e( z!yV(BOt(73XN`$((mFn~b$rz}@o8=1OSg$H)+Rp2C;(64aYRMHpvefZ;EfsZ-d5)kOE4*AVT*AjJHMG?@VKf znRwVVW(O2h?3fwA2Wo-PI|1Vx&XdNe0Di?)#lp5nsEydmGP@Y%GJ0dO%1gAJSffts^YvLlzup5d_&%P?EC}XO_-VA5TWU&I77}X zF=O*gW1AUiuZ&2j6Ph5Fh|mgQJmYmbe?=i!zKCxRLxV%Bg|UmYWZXxz#?>4V`YL2B z6`_M6D*pM9aa>+MW`>>)8yn5gqOft)4E-50evsE&0-+zn#w&r)@v!k#AoN<;xG1l8 z21DB{!mG0Qj;49&2Ne0lw?g+g>gP`NAqK}`N9F?QP+wu_4*O;hg`b5&&M`4beK za1C6TAwmxdV?6=Ls@D23^#-cB)ghCJtrt5RZwG<+Acy51dOw&u4ybbL&r^;HYEN34T@-Q>gE5W z&F%Rjgs*tKO6>#PGOdyJ2)!>1_{}sk+nrOf&nGQ^>s6}HDG*fPLNil3%I)CJo`VJ3urw2 z`}c1I{*A!D5%@O(|3={72>cs?e{Jf+fi=pkDC9p0tV?_O7F+CG&oI-=53U#oQgZz|1W`%1!deK_@_zaBGG zPLruBy_3`CoUd~6+$8gBvR^tsm-BnGU-h0-NG_)vIK8w@<+p!crF}Ua$7yfI4{)mO zPmC(J`3nje$?0}Z_r0X@k8^sC)9`MUe~SG}=JK@t1#G_;$1(FYh4kliJ*R#5sC@Gc zm6qnTHm85Rs`6_xPf7T^iS2KBQ{~LrtI{2unw&qB10kfaH{R^iHgsO zFBFpUrAoJRs`PP)hZGAmPl;Aa@xzUEEjeBHh} z|2XGI+dbpM|Jf&hM^H$U(dCMe%GdUlEFT1zmlBlgw^m+m-5eKpcof~^MCngaaxMg*%c%6>Ho~qpZ0q=J5oetJLSvg$~?S3 z^Hu#&x>Ws(<*r;%KFiwAb1c7-tPKCoavv_||2jFx;~?5@CbxGMr(HSC<#a5kQ#oD0 zX&$FrINihPAx=+ndX7^=K2U-0QFEHcX(p#xoOb0jm(#JFPUUm~r+J)i;dBqDhd4dS z={Zh~daCBdI8Ea;lhZ6tyKs!BO&zD0yv^yf;cd z6(tASse-N9I@{Nr5xK3Tjr)hAx ziRI>upJq9W<*HopRF>DXtmCzxWjzu6!Lp7=EC;eF>u0l^$np&=*JgPJ%avK)z;YFq zKZuh5V3~)hQMbDy-o*SlEbDk4WqA$blde}6PqUoSLtQjrxfjd2z7tul$M^=8b$xfS ztn2$T%Zbbn_f!|Uz71H`_3h2FuJ5!cc>~M3zF)Ac>)Y%GWnb5KCd<0M)wv^VV1Ev? zto{3jJk0L_El-RN{pH;Yx^yu@Bu7qe>bw6%ldKs z)P>eB&oWor7|*hf|8$n?vHtTcS7-TimPfGMv45of-Yo0(na#2u@2{|2p7l?#+>qts z1Js4a>qN=dvaJ2>$FlZ!KFiwQoh)mAE9NTuIvx#J*8bkivi5f=%i5n8Sl0fYiNa$C z8uHI+KbA|WZ2Xdrx=3cZH_O_eQ7pG$d;`n6f2L}pOR&6-WnJE0mg_M7Gt2E+ZZ=X~up7o|mUa6bWw{dbe`mQ9%WZB^7uuf@ENg!z zv#kAD&ay85B+I(|4x^MkUH)X2b$@=4WnG_LEdRy+>=>;sI&#|oAv%#$j z*X=i#IfLa%?cos4%K zr!ID~9DBRE(E1fw*7^-t*7_S**7}3TEB!~=-X)exuw3j8by1S#t60|K@oJWJycV*o z%YTw(XD7yv)MR@#S=RCC%5q7@hp^1cP-8vI+Wszu6^`848^BZz~^vPU;qY-&=DNOpOS_h4 z<%TTpVmXK9@Pq22E6X>qoW=4ImUVyI#j>vNA(r+0cQ#6no2v|IygJL&uJkvQdw$Y!}O%X}Nh zw;~kqIpeDzQ5QO1&#|n>^Es9qF~9Ocb&KBJIgwLOISX~_GUh& zE;RlQ%Z(Wq+|W0%+?!>6KiS5zz8~#lS@-9&ENlDq9#@9Sv%Rh?>+yU)%Q}9KvOI?Q z;XHMr%S&OoGUL(fjV#7%Gd_mpMl7#oS@*|tENg$RTCIrM-?l94_8QEx<}YKJk9~|! zSRTRUWj~=V^m=Lz%flEy&$2GB*ct_B`|ViP_#l=CvHrd&JbFEOigCRjxx})Lcl=sq zNc(dK%XQiQI+l}J-p#VsKghD~kL90KMBP5wEbI2%#&Suv_ZG|A9%nnrr~uvn?r3K6 z{qH#Qo0^Ieeg8{ZuktIfg$69^_8%FA&xw*ZM9J?&$=|bFgY73j9a&x@mNkAe%X)rY z$#QF<^gi35((Bk>?TzX}_s>Zz>v-m|T#5O6Sx#s98O$);ijrSpS^Il}W!>M;v#jTz&=zH{9@}rivTl#QEH`6(3CpcmKEkrT zKO}BdfR0ZCmUaExv#jUW(Ja?ydn=;&n_13g{5;FovD{{xy3q3hXFJJcT$#rDNA-Bq zpYT4w<4u1eTbDKTC$n`})}IvX_~}oKwX8om*0NJDU!1_WFpVc;13cbmKd*oxA(j5H zOQl&VF>1Y}E;3o}$MSHNqu0aw6KCC?`jcnvkNyN&%leaOEl01XuXO&Mx?4H2pZz(- z@@$qzy{s@P%hBhthZ)!XCHj2qZ|4(Zl_9;~z0&^iO8c!V^#^v_ zNowNCG+v&o+xHvxKg(f6Ua0=q{~^t<{HnrF;J!eA`jdU#KKc`WE$dJEwfs;0&7m@k zyR0Dh$Lu#`vGfC~@-O=Hn{kX+V>~)pi44;i8msNCWd373zVwp>+F$)dftK}?1zNsR zee@Fuwb&8;B!V8V(f*x5TutN4Y1+S!_bJBVc$G$f-W9!neCCMa(XR#3-<8J4uA_>l z*Z+whDOs;KN3xuyvW*QaXRv&bWxbyGie)_>eqs4l_GkOYN^u11mpiU5G=AcfNO|R_ zN^Z{l=>1#t{xN!dMvuoU?ca`ZdD{Q)qvT60>-$;d&y-{3*}v>4`DT{2z40tx&HQJh z@YkZ`!z}k?e)Z4Qg^qvpelL2yxt95jSbqk~CF-VdB*JVB`& zm!tHf*XvAkk~6rknnvRWA)eogeW9Qqf+~%^e@5T`{`y++I3^cKlP82$Fr>0 z57FmI>lm-V<2CyHD7yXkeXGjT@%)BmJwBqxd$H4suj5;hWj)_S_vh&G9X%gh>HO+S z=T*`3$t3otE5|eXeCQpusie@NNW<01NdEBgHEpPm`{) z1?c!kpEq4;ez?;7*@Erg#pOrOe=jhu*T2!{S<&Zt(dUQJ=S6R`Jw2YI&xfMtrz_3Z z(er8a`BGM%s+eAX{lVqy@zUX>!u5O^Jzq!9pV8+tozEzJ-5>k1JVs?3SDK%r=iBJ> zmv`7+I@^mrkNGd-x_?BUzeLaP(dWNuKPbb4*nV`K0e8Ed&VpOp)NYI9DRTIr=Kre>3nz$ zm#3fSi9XN&zy7@7O81L@I$uTKU!w0P(f5bw`@#SA^MsT<)likWy^KrhLZ4?u&nMC6 z&udvfhxMzn{u-9Abp9WGzJI09BckWO|Lx}!(f6C^`$6>lf2GeGqR*G3=fg1^FMU6X zK3_h^xSn7B>E{K}p9e&L{_syf&xoGCqCek=zMn+j53Y3n9X-ECpT9?+w?}`T5axL4 z`{h6V{33e(kDl+ZbpHNNKYxfmkB|PmAo_mte|=s*9rt6kb%=wn|(8<;Xw>B+zM_+E`GZA0%#-tyumOMjJt}N zo2-%ozZm!U0ASCQ_zKqh{$b;Ka|y~fGTNRKhS{s$a>-Ho%9JuLwcl@p<`Y zAAHDLqKVYrW&MOD0P&v#ypt$@t%lU3|LeGX#d`HRg}x8uBSOi(k@0>mF8ein zh-#py`>o`YigJl)CSKA|dTXqm%nz*QH{mz_keg13bW(beZk>mG)EXVY&lv;CiiDfo z^#)`cJ=CKY;QmBWPCmF3mtR_6Kdqd+6Ua=*K=27TrwW49 z)Wxl$B4zX@7jCRn7MKVV!+PXx8u}^SaURa-0#50pmAPgY1*Jc>5D6IK$ zXm-E@01Y8nh9NTs%U`pRu+DEW465)HKsX{*u&jwFDm|@v1esaFI*K8M-+nUiD^Ok% z=_+Ps<(GkU5?0OQ%H;cCe(`stX$Fyy6c%2?fxar-fQ3u`Tc zQyG{@oy!HOFxOo*8iYZ@su6?VVl0U8Q&SK|32Waz{A!&;kp9XxsQcMFAlxggZI9rm zh#i8wqBkR>KRUA6Kl{JbV-cN$jC+EGdCYuRSR1xYwRv3Hpk{@giUckpGd!)O@Ox_Xz9c5)gg>_?ttJ9xKAT!g_5Y2=N$q zmGE+_q$)4xW<@;*N<-@GVlT9vTE7q5c$UL@7yYpQA8iWyUU4aOf1OEv;^MsL|wP3wtc$SQ^)m&Hp( zAe9?JbvXw@U4X3}!jm;3&2%uWz_ZA@5sYCDiz4kUtcz*cXOVRe81oz!6~?UR zsL3BTt*NgeYYiBiHA~&y0&6ka&1I(5C=);YNP7E0_)wFCY+6OyV_NG=GU*2pesf5& z$1Bo*OzZqZOiD!A<*0l)_sc=6NGD9I+%HUO3_=@+B*UagWdoM^Ig|Q=Fw7xQsEk14 zcvx;0u=dR2;eQ_pvowkEHUVqh(>&l;1AB^aIfFJBGG?%0b`DsLPO<)Lz}|B772Z8y z4bNl!FMxgP=x5wOv&+qyt7;-! z$rg$ut_HC+k)>yW@UOTW9k9Blv#~zF20F$RerLd{Hiq@@26msTPybijyfImG$^8|dJ18y5h7 zDPT=1g<>Zle->fR0z=(>6>ERM8a)WC$G})0!7}15Q8f+*tcle@cm?2IO)vu4iNL-H zShWVS3!ecyMYybD+`B_?`Fp_n2%!{zAU|Xy!*RigTT>4)$PZXw9RQ&$K>A{;>I{Ln zH*jeMt^YPr_fK&(u-1f2;~4{!aoMNwHk!c#qiB>R2d$Ci6h{mP@pesCvwy}5@h0xJ z_13u>Rf5(EOw>da%klOkX}JD17&zWAn+L5b_1Wqxz~3egxuC2{PPd>{v^d-O68I01 zb^-&_QO|)v%jnG{D-K_-#f$4I@liqRue-URD!^(HuKLQU*0`Jyv<8o2{SLscA)K5w z0urAVw4OY``on;YCS2*4e+-ukg4VnL<*8y8utx}&l~vQ1BrOYC8@4cM69_LlBsG0W z(i1_e%M>QP55ftDq^2)PdNydyN@3DP5JXX3oSK=o(vw?3SHIDn7TCrWox*n||ieO?+!b`P)id#8a?eqv) zd7rYC+8{J_NGc?fG&p2U!oZYHT@ONkhotTel5}^-dIQ5+k|u&M&moZ|Z`>sP!H^Zd ziRn*)`l3Vk#7#0+gshJDG4p+}PDC(`fFx}~+~zXrA_(CGU0F}uBy)erx)zIM>1P^P zH5{huDebO>=3gOe+it!GwF9BILz1ggk4;I>30w7dFnv6zGa~68!^6T>%57ZwDzG*? zOleaEUD})ywptxz=6{f7);Whs1u&_hWi?;Jq*zRtDR`*?Aia>xxVCg- z?r2%(m&374FdAu=5g7O?uz{A?n3wzqKwmio=XTTS9i*)WNstD5IB3`qsjc1r%7Sx6X&^=8l zi}=v8z8%Oq*MUFS(Q$(4t^T)`)f$UGS&J#4E-io_U5m?>H41Z))Y%69TRu8mi^Ldf z)ZqWqXp==yJ1z%s2D42I_qo&|33xjxO-xybAL?9U6onqYw-VYbR4FTvrgvh z8K~)dF;*%D4@I~{67KbQMRyZ7VwwG^+kY5iwSp?CvxUm@GAZQ;uM#(cH z@H#EUF2z_apTZIcJzZP?;dgD%2oxU%Jf?{CAcncbOO!N>GI;S?C67*g$`-M#H`RfW zs1K~Ei?=-nyhahrM3(gHdRz?GxI9?#j$}!1TEv>(pXt*;eZ-+VcS0i|nKu=&aPNS)yiQyrOUb*%J5S~tVY$DeiNu8{!VA+jw04j>{q0-)4^KkFg?y5PKRInidfHJ zqavBlfc3J&^f)V--xaaORbb{vV4ZQ8(auWxuSKkB3z;6qo+KGB6$OWG1SHdrwGweI zBwfe^E6ZVeoTUev&6HSc>3L@M25Y3l^f)V-En=-OZfnx!46v3tOs8~?tfY5=3vV#} zIZ)sDJKYFK=73mh!$Zvc6s#W{rpMX0(bvte#>2jeulsiM8_LnK=in{!~pzZz@Z`3f_)gSFRT zdLk>CU&dNV7_zcjpMiD3VMaSE>E~jtecEu*GC2Cc>u=paGELh$*^>=72CIX^^f>$C ze5faaiP@qpO-Td6y3JuqujtJP#G*@?SJ~Fnd(}~+co3{54wI_Iq-nObejAgvfbgb6 za?J4!R@z)?TY29y{c}+N@}YZYC8@aCwmPn5#nRX+Rl>^+1v|6Pw#t0Rq!u7_cSx=? z6lkV@VOuq3GJO=NGkxf)v!~}`iIRNKDuU{+0dogl!3Quw)2y%VM{@p`Z{J{VZKPkk zAT`c6H;f}-f3G#j2c;pKUA`%e!EoQaP~_5GINHZCZ7N>DH853B8Ixrh$FrnHr3RSz z!M;{&6jX-PC`a`$Em0)75B>oe=##Zd0fiXls1C&LgD$Zg%nh1dKmkTv=_6p@W)_(^ z8Qtq`P(LF&{vk<$HIT=l!C0($sh2kWU_ah6@cL;L8n_y&9j0!2_o>A&`be2Tr$#t( zsR_gCQ?zdM;U2P#Qb{|InbI_FF?^i-9n7U%U2FOS2;q>@!boXei#}3l((h^Hw=91D zRVVYc>&kb0GDdpO_iL0 zw(u=^|8ZIJtWJjU9F#u7>r=A*khkQmEfx9;kUt&t?qk^DSFR{;kZbQEn4bb+)hMlPV8{NQ%Fe7sqs@g-x6eQ{4g8j*M#sY_oglBH5> zpH=@NUKOqbaY$#l8BL8dG0_htH+eO{({Ha+GNs<6hcD$^(J zhB94eca-T<_6V7-w;zz{)ArLc-DvNT=_dPInVw4)7z?2aza)=GR6`XmCI>KWhbsJ* zTtTM4C*L8{Kav~D^v~p;GQE_%0O>L@;D&leT17Ld8@<)QnxlK%P)tP)ie_NN(u#iS zA}0MhI~js)j04cEXc^Ssm?{WLzrNV`OvAVfYBTUMx5A{5c>3XifP2Q_-(wg{0j<)o zkv_5^kQ?HX4j9HZh;SNC0`OAKyzHtDv36n=B`O1}>)>rsF*ZHIdS^B8_Q1M1_#32OnLeUOztf7p z2}hJv#gV}8a5%CI#hGM%j&3hG4*_51aHO4-H-Cbi`>bk@!Nz7_J2kF83Q3_2K>7@; z4tj_<2<&5x3o>ae7xUn5`hsFFV%DQcN?ZWpcOuCU-6u-+0=~?85HWfW8X^IFg&E<_ zh*v1RQ?Z&<Z>X;(FxXoKg-6kxSin8FKt>ao<8{TlOQv zh`*!AgvYS}fE;`eQytx|h4W^t6g|F_q|_If@C^~1H&mfwmc4iZrSt6iGM#U?dxYc# zc3+u3Y~Ll*N9^S?U1+}`(?#|NGF@z+mFW`O#tav#_^4e|rc3R%GF@hOmFaSOf=pM~ zkI8hUy-TK#+26=?m2F}V5~`SImyzic_SG_7WA~NmT6>~Q*V&KD^l5vqOgGuz%XG7y zfLm6m;ugDxOt;xxWcr*_IYp)t(~L*X%r*zG3f{>0bMUOy9IG%XFVzektj{ zWw(^+e!Hhk-?s0R={xqLGX0OeL#7Apk7fF<{gX@&+C`U<{z1E@Oy9G+a5_?^hwKM9 zT`$x3?YB7nMy4Owq2;9ifn5!0m5R1VzD8ceiR2OTqNqroBQMH|c&ba4iseN-1-nYc zbP-Qcu2L~W#8Y^yRIDoEm3lQ1uhgrHcv7#C^dY)frHUf1a%D^sbbwl^hOj1Y!L1)7 zPHY56Y{i?AI==(343SO?kuZV%hTLXUsv|7>j2fDYNP)OYq2H+SMy2|~x)~jYM(%Tw zZ~`q_D_t$D&V$tg^BCbTlDd4OyR?x&A6r$z^ATy;csL0;7c|L8plx%d>+xYfvPq*f zmMyNT@*!dMXpja9Yeg;WJwa+gB)V{!MgpB#R2m_y_Ei<>=7LBvG`9)s(~lKtmO~=H z1O>!Mm`gFbOIRDfQSp0%NN=DxBlYEdfUXkhv@#1*e!?!w!Lt;f{f7V4gpBuyEMuLp zcqbq{IMD`nD0V+;JIdHJG33^vMx|N8N=Q<=36;RA^q{a>hEzssWnHqfdNgVji$i9m zg(9v5YN{H0rLY>@fS-sY`r8zj_oTP7u@{T<%j7MAva$0JZQP~Eqx(pKxJp4b_F7>b zYNp`4NLV%YdSTT!Rb#(N_z_ZY& z^<9SX2}sq6L>JydWMdx{)`_i(bX`Ft+1Q^6t1ZGy2F5!i+1L~iZtQP_b@3$?zxhO> z$H%y_mxy$lq{Ec28vA=;jhJK@l(C!0GS;fG&kAe!-70n`v>j!P8~ePl-h?%2Og8pK zVLj7HWfVbkDza>BYBVF1QOB-=#tLO*+Vy2x*KQ@#dUh9?Hn1nGAiSYHU8arf`7&*6 zuaId|yOd0u*_C8^wOvQ1&F!mY+S2|}rmgIcWZK&P7L^ZWw6QP9w5^>l(`?(8czgRP znRc+BlW9l$Rhf3O|0B~bb_bc}*w@SS8he0DueEQHX;=GCnRc_kqV%eUwuMD}=&DBc zHIGr+*dC75I{pjpemwpQjxLt_G*T4eP|p)BvOWlg;8XV z)e}>c$U%O0yv$0S0~ zGM!={l<9Q)3z^Qaf0gO|cH(NXH_N_CrnBu9GJVhG;O7RI3m`V?F z7Jpn6rNO7v-xgM%4obZk3UJj0iAL%@RNyjEbUq5K`z>0b_z_{9L^HH>*i^JCF@YX_ zDE>QU)4kY^Bl{*I?SV%|!p`>rnWnX1l5%vs1Etc|x%fO$lx~Qr@8^QIP!y#-e`>>; z5H^b#szK1%s<*N(;Iy_%9eWvI`Jh~tMk(@S!|nmARhlJkL!usAtUbS@j9{N>_q7>XEuCjg{RLsnDkQg@b@=f>Tdx7?tUP zkt!Xm?J!A-q6?sI1lNW^qcT0|Q>BZQJ3tj9Mgkh^z>f)flBddbR+~|b&jGf;!D9xr zlLrtovDamaBbRvTbiTR%W{B63ROWj3Q~#QjWIu4!f7 z2dp;on`%sr!k$ujkZH}S4T9(jw2x+pEHd%9ppjl}uvzpYM6o?ZTTB3DS|n|T`0)qO zhMQ%-z$7$76hZ&5Ho{Dzd!-RRLsbb??{4>keyIBOc8*MYs8xLRzV=8d53%o;>2Nzw zrX%bZkoLfT%QSvRan7CGIR`R&)UAUvP5ACi{1T(ZoYCXGm(lq(7IA)L^mylcJo2G2 zx?#9_)-!`Jfaj!>**r05#2BMY^Tfbm#ka19VvTv}pTeK^XLGP^ZISpLl93>{Z}Ji3 zmWlO|NO>)0v@)#{A4fv6wTTRGt3*DvpKJkZQ(^*=b%b>%yU$mmdbUpv0Bc*KIFi?i zyXS7m*(F{=BIVMZA-5}00tv~h#mp|q=v;=vT%~5UpnV!)t5UOi&_02S?l+tGNUU1X zT6M80tKJF&DX={LL&PoJx*rFfdFEZe8%AfyJ@GP|KaCddfH&iQF&cFbtTpE%pH5=N zARSMfYZx9l(Fm+J-#M$`d4Lu=uskmdY&A`kO3E97Y$cQmz<=g6Ffal;ZCO$vSQ?$1 z{0n}wMbV9LHIPf)L`$H+jQBR0sNk8lP?=>;JBbh6AHcuH1VPY+I#;5rTLugmEiq)` zXbS7y0Rslg41udb3hFFMsD*~;eE%lCGD_{kbV?^LsilUT`9ChB z%q?%B0*_d$hbXhBVOAcAk?S6V9UP}|#ZIf@M_r&0JYxNKfwJIe|E=QwHjJ6#!7uU8 z$4dm>750|;`1j(cl410M$f$|ii&!H*c@5&vERHps&G`xPFDy4(7=(0@rQ|ohf^<%l zp&E$rM6_VD73gh&Uq!}D2%_1&C@S!qR&Gwx?;0CM(jOYjAn8wy-A>Xajb)N_Sz{eZ z`b%T+BOv8#>=&$91BR(ek86Jyq@Za{TL)ii)iaFxc$wxJ^o;rvvrKE#lfXJ5zlX*I z)x(IpOs0}eYfUu}MgqJek}yCHk2KTzeFr9Ts_lT$G$N{)R%iGmbK-iJgpt~&HDLnq zXJKHMW8`_n%m~o2a-gnh)$743he0^5Nk+N9ngO3=#?@_V7(XKW7YDkL?!|%0X7Qp_ zpS7YNiT9Yr>Bc#=L~#Fb)kn}hC&-SUhAuWnUX3-K-Zqa0#yFWd%q5|{%6_k|PbL~xd9J_^#baN=v=8F8c+Xde!pLR>{Y z=%EH^(F(FfCDth%IxrJhS>#vNm}u|>DIX@~F5%EUM?h!}u!AP3yP@jNt-~qwbsMxM zO@B9pLkpi#Om5%a;n1{!oD�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�M^)?cOTMw^lSck2>wfQKFfFg!!QwRIx%M> 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

    VZ)>QAHOYdGTc*KifeU=Vt5 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

    5VJUGxBXl&o+!J; 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 E2H0!3e*gdg diff --git a/shm/main.cpp b/shm/main.cpp index 76c64252b..03a25bc8c 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -65,6 +65,9 @@ int main() Response response1 = store.sell(cargo, 2, captain); std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; //No available space + std::cout << "Player: human1: ship cargo: \n"; + //human1-> + human1->getShip()->printShipCargo(); response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; //lack of cargo @@ -140,4 +143,4 @@ int main() // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; // std::cout << store; -} \ No newline at end of file +} diff --git a/shm/player.cpp b/shm/player.cpp index 1ef1dc3ad..790001f6f 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -54,4 +54,4 @@ size_t Player::calculateAvailableSpace() void Player::setCrew(size_t newCrewSize) { ship_.get()->setCrew(newCrewSize); -} \ No newline at end of file +} diff --git a/shm/ship b/shm/ship new file mode 100755 index 0000000000000000000000000000000000000000..ad1222315bfbcd28565dbe029b654d360a77457e GIT binary patch literal 827568 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

  • !qR!j<`GV}6{6-i?-k4}wcRIVA6!l-=mjDvePO-B^Zz&~#wUick^ z6~f2xobvN|NTJ!Zkf*jF7-g{8jF9`lyNDi(7=9)%^u&NnZFEx|6*FppWxNs;8Sm{lwQoNSIwD_|ruW*v9cQU8OV!I> zi}hZM<*jMtyvS4F6NZvnNBZ#igx_A?xtnSd88M3%`bQ3&V9=5gt(36OM#$ zzX{=ig*U@tIQu@@eXxpI>af^_Y;e)3a6YDN674=x#bS0S4MR4hr~uBd3~&4!!b6KT zz>#p-XoQCq6~STn^b5uyJi45fTqqpexew+n8w8`|;Ld%xBX70}M|SR`osPyrLO8r~ zAM3=$lrYETKHe!l6ZK0DZbljo?ie_@?}HuT;EsWVo2wAHwcHM9r!e#gx zWN^)WF3JA$ow$V1_Fw3f@a;1)g@gN0XcrGg>ii5CQ&+)(IoBNAxtfFf0DyZD%x{1R zZZmpF3I{js%^-vyP6F;A#sT-27t0bosyp=(mT& zakv^f)Ak}`WZKUE!_)T}vy`XrGlGko_Zi8-%~_co+^q8|pM#sHuurZh9Nd4vo*IJF zb@vS9&?nau4(?J!xAsNqFOes6aPJSJCsZ0$CE>hI+xs3)aG?#~>+C zdR_{I&&7EoTGFTV6u;r(8~uiZn^!_UGv(i~JoK3<&w;=2g0;vem??8m2|hDr z1dDw+9i=IQ3!lN3gL}eAZ29y#xaE`%NR)+xdlbx#$3OHs$AvyA9NhB|zsQ#<88|G7 z^6?lo0up6%a1*Jn#o;EZY^6EN!97pVK8Z3pxCv4(;qZnPyIWQ7)OY zB+64DmrqVaM&R7QU*t;qU?a{x`{;Fff6185ypn0c*YNt9P(q?5#70pK451$HfoGC8=#(zgKonr6u-Q6>ks zSSmzIH^)EOl24+1TpwIwGZ(!8=uf&klnHm7tSa&Qx=w&JjjD$feq=iuIy(tXImO_0hS zg`1%GYqae?0IJ`n++t)o zWLNw0wC+O=ZYdX;z@H?D$xRQ~22@ND}1Pm6)9VCo@lp8J~ljSJeNLnMY`* z%IBHhjMb~Z9uc1Di(&T){6p>n;QaN7@Jy3E`~hF2az&oZGyM`|n|*oedW09)mh6{2 z)5NJg1S12XEfmvd*CQV@#$S(o9%#>W$upe~sH(-G-fGil*CStvLK4rkBzFWLr%-`K zQ}pd)Jt92Q*8;P~YKRf4+4Tr{rp3;4h<%wrmPAity!>`zY^Fk=XL{!WdZyoi3wF-< zi;erOad{J<-7Ey`j8C3v-fyUaroIv4&-mn-9>7?+8^VL*&-mn-mKi*WXIjE$#wX9T zgp+utC2VGV@=P=A&-lEz5W5U%`LlV>(eQJ#WA&igLih`Pp6L$>;>SL#Pa8B5S~8pS zfTPcD&!eCb+^gO&;(Z{6l51X}g~AOt(h#e!fVx5P34s^dQK_`tsDS$D0PW z>yc-gICTOJXHuaf#q`;(*NriL*V{kPo+&)j%c;E{hYePnKHK&Bi9!<3v?RA3kRPbP zqAB|J(e;F9x(KyXg}>GiBUH0pk37?2ryoFr31mr)&!>C#MJs@@Srv-fFwcajAy z;W>+wIJjAZ@{MceQ?94U%_m&gKBJ#zHTIddSuOCBIxvmok6Ap^P+4N8|AP56

    hHJ)f`m=_={jGx!QW6p!zTNs0pzXF? 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

    ()) + {} void Game::startGame() { printTitle(); setPlayer(); - menu(); + menu_->printMenu(); + menu_->menuChoice(); } void Game::printTitle() @@ -33,12 +34,6 @@ void Game::setPlayer() std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; } -void Game::menu() -{ - printMap(); - -} - void Game::printMap() { //TODO:: Make friend with map! diff --git a/shm/Game.hpp b/shm/Game.hpp index 8cd3c2b32..b74b322f6 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -1,6 +1,7 @@ #pragma once #include #include "Map.hpp" +#include "Menu.hpp" #include "player.hpp" #include "Time.hpp" class Game @@ -8,14 +9,6 @@ class Game public: Game(size_t money, size_t gameDays, size_t finalGoal); - enum class Menu - { - buyCargo, - sellCargo, - travel, - Exit - }; - void setPlayer(); void startGame(); void menu(); @@ -27,4 +20,5 @@ class Game size_t money_; size_t gameDays_; size_t finalGoal_; + std::unique_ptr menu_; }; \ No newline at end of file diff --git a/shm/Menu.cpp b/shm/Menu.cpp new file mode 100644 index 000000000..39651d70b --- /dev/null +++ b/shm/Menu.cpp @@ -0,0 +1,63 @@ +#include "Menu.hpp" + +Menu::Menu(){} +Menu::~Menu(){} + + +int Menu::playerChoice() +{ + +} + +void Menu::menuHandler(MenuItem item) +{ + switch(item) + { + case MenuItem::buyCargo: + std::cout << "Welcome captain, what business brings you here?\n"; + std::cout << "Choose a cargo to buy: " << '\n'; + break; + case MenuItem::sellCargo: + std::cout << "Welcome captain, what business brings you here?\n"; + std::cout << "Choose a cargo to sell: " << '\n'; + break; + case MenuItem::travel: + std::cout << "Where should we travel now?\n"; + std::cout << "Set sails!" << '\n'; + break; + case MenuItem::Exit: + std::cout << "Get me out of this game, I'm done\n"; + break; + } +} + +void Menu::menuChoice(){ + int input; + std:: cin >> input; + + switch(input) + { + case 1: + menuHandler(buyCargo); + break; + case 2: + menuHandler(sellCargo); + break; + case 3: + menuHandler(travel); + break; + case 4: + menuHandler(Exit); + break; + default: + std::cout << "Please use 1 - 4" << '\n'; + printMenu(); + } +} + +void Menu::printMenu() { + std::cout << "1 - Buy Cargo\n"; + std::cout << "2 - Sell Cargo\n"; + std::cout << "3 - Travel\n"; + std::cout << "4 - Exit\n"; +} \ No newline at end of file diff --git a/shm/Menu.hpp b/shm/Menu.hpp new file mode 100644 index 000000000..5db86528a --- /dev/null +++ b/shm/Menu.hpp @@ -0,0 +1,23 @@ +#pragma once +#include + +enum MenuItem +{ + buyCargo, + sellCargo, + travel, + Exit, +}; + +class Menu { +public: + Menu(); + ~Menu(); + void printMenu(); + void menuChoice(); + void menuHandler(MenuItem item); + int playerChoice(); + +private: + +}; \ No newline at end of file From 8aa5cd36f9c90d4ca36d6f99c4577d4e1d8d1dc7 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 1 Aug 2021 20:35:32 +0200 Subject: [PATCH 075/151] add return to empty Menu method --- shm/Menu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 39651d70b..8cfbad626 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -6,7 +6,7 @@ Menu::~Menu(){} int Menu::playerChoice() { - + return 1; } void Menu::menuHandler(MenuItem item) From b6746f0ff6d6b8ec39f27cc0568716349758cc29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Mon, 2 Aug 2021 19:52:14 +0200 Subject: [PATCH 076/151] Adding stuff... --- shm/Game.cpp | 14 +++++++++----- shm/Map.cpp | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index ba0020aa2..4d2194e1c 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -26,7 +26,7 @@ void Game::setPlayer() { Time *time_ptr = new Time(); Map mapa; - addMap(mapa); + std::cout << "Set your name captain!:" << '\n'; std::string playerName; @@ -35,13 +35,17 @@ void Game::setPlayer() Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; std::cout << "You are in start point. Current coordinates: (0,0). Choose Your next move!" << '\n'; -} - -void Game::menu() -{ + addMap(mapa); } +// void Game::menu() +// { +// auto i=0; +// std::cin << i; +// islands_[i]; +// } + void Game::addMap(Map &map) { map.DebugPrintIsland(); diff --git a/shm/Map.cpp b/shm/Map.cpp index 646848900..54d98c279 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -47,8 +47,8 @@ void Map::SetUpRandomIsland(){ void Map::DebugPrintIsland () { int j = 0; for (auto &el : islands_) { - j++; std::cout << j << " | "<< std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; + j++; } } From b39c214ab48d7629fbb2377e785c162fcaf709f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 3 Aug 2021 21:33:10 +0200 Subject: [PATCH 077/151] Adding travel to menu --- shm/Game.cpp | 28 ++++++++++++++-------------- shm/Game.hpp | 6 +++--- shm/Map.cpp | 16 ++++++++++++---- shm/Map.hpp | 2 +- shm/Menu.cpp | 13 ++++++++++--- shm/Menu.hpp | 5 ++++- 6 files changed, 44 insertions(+), 26 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 5ed9c9017..af0f39813 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,8 +1,10 @@ #include "Game.hpp" -#include + class Map; +Map mapa; + Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) , gameDays_(gameDays) @@ -10,6 +12,8 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) , menu_(std::make_unique()) {} +Game::Game() {} + void Game::startGame() { printTitle(); @@ -26,9 +30,7 @@ void Game::printTitle() void Game::setPlayer() { Time *time_ptr = new Time(); - Map mapa; - std::cout << "Set your name captain!:" << '\n'; std::string playerName; std::cin >> playerName; @@ -36,28 +38,26 @@ void Game::setPlayer() Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); mapa.changeCurrentPos(&mapa.islands_.at(0)); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; - std::cout << "You are in start point. Current coordinates: "; + std::cout << "Yeou are in start point. Current coordinates: "; mapa.PrintCurrentPosition(); std::cout << "Choose Your next move!" << '\n'; - - printMap(mapa); } -// void Game::menu() -// { -// auto i=0; -// std::cin << i; -// islands_[i]; -// } - void Game::printMap(Map &map) { + map.PrintCurrentPosition(); map.DebugPrintIsland(); } void Game::travel() { - + auto i = 0; + printMap(mapa); + std::cout << "Choose Your destination captain!" << '\n'; + std::cin >> i; + mapa.getIsland(&mapa.islands_.at(i)); + //TODO add travel to menu + //TODO add travel time by using pitagoras trójkąt } diff --git a/shm/Game.hpp b/shm/Game.hpp index 28bc9a197..7f2c99c31 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -1,5 +1,6 @@ #pragma once #include +#include #include "Map.hpp" #include "Menu.hpp" #include "player.hpp" @@ -9,15 +10,14 @@ class Game { public: Game(size_t money, size_t gameDays, size_t finalGoal); + Game(); void setPlayer(); void startGame(); - void menu(); void printTitle(); void printMap(Map &); void travel(); - - + private: size_t money_; size_t gameDays_; diff --git a/shm/Map.cpp b/shm/Map.cpp index 905a86e99..d1b9ca07c 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -19,7 +19,6 @@ Map::Map() { Coordinates zero(0,0); addIsland(zero); SetUpRandomIsland(); - std::cout << islands_.size() << '\n'; } void Map::SetUpRandomIsland(){ @@ -54,15 +53,24 @@ void Map::DebugPrintIsland () { void Map::PrintCurrentPosition() { - std::cout << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY())<<'\n'; + std::cout << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY())<<" <------ " <<'\n'; } bool Map::contains(const std::vector& vec, const Coordinates& c) { return std::find(vec.begin(), vec.end(), c) != vec.end(); } -Island* Map::getIsland(const Coordinates coordinate){ - auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return i.getPosition() == coordinate; }); +// Island* Map::getIsland(const Coordinates* coordinate){ +// auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return &i.getPosition() == coordinate; }); +// if(selectedIsland != islands_.end()) +// { +// return &(*selectedIsland); +// } +// return nullptr; +// } + +Island* Map::getIsland(const Island* coordinate){ + auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return coordinate; }); if(selectedIsland != islands_.end()) { return &(*selectedIsland); diff --git a/shm/Map.hpp b/shm/Map.hpp index eaab097fc..e1f5a387e 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -11,7 +11,7 @@ class Map { Map(); void DebugPrintIsland(); void PrintCurrentPosition(); - Island *getIsland(const Coordinates); + Island *getIsland(const Island*); void addIsland(Coordinates); friend class Game; Island* getCurrentPos() {return current_pos_;} diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 8cfbad626..d2c65e4c4 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,8 +1,12 @@ #include "Menu.hpp" +#include "Map.hpp" +#include "Game.hpp" -Menu::Menu(){} -Menu::~Menu(){} +Menu::Menu() +:game_(std::make_unique()) +{} +Menu::~Menu(){} int Menu::playerChoice() { @@ -11,6 +15,7 @@ int Menu::playerChoice() void Menu::menuHandler(MenuItem item) { + switch(item) { case MenuItem::buyCargo: @@ -24,6 +29,7 @@ void Menu::menuHandler(MenuItem item) case MenuItem::travel: std::cout << "Where should we travel now?\n"; std::cout << "Set sails!" << '\n'; + game_->travel(); break; case MenuItem::Exit: std::cout << "Get me out of this game, I'm done\n"; @@ -60,4 +66,5 @@ void Menu::printMenu() { std::cout << "2 - Sell Cargo\n"; std::cout << "3 - Travel\n"; std::cout << "4 - Exit\n"; -} \ No newline at end of file +} + diff --git a/shm/Menu.hpp b/shm/Menu.hpp index e49c685f0..2ae38e65e 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -1,5 +1,8 @@ #pragma once #include +#include + +class Game; enum MenuItem { @@ -20,5 +23,5 @@ class Menu int playerChoice(); private: - +std::unique_ptr game_; }; \ No newline at end of file From 4072f66aa94ec7d96d660c85c70fa486ac3554be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 3 Aug 2021 22:09:27 +0200 Subject: [PATCH 078/151] Adding counting travel distance --- shm/Game.cpp | 5 ++++- shm/Map.cpp | 10 ++++++++++ shm/Map.hpp | 1 + shm/Menu.hpp | 3 +-- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index af0f39813..17b3029eb 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -56,7 +56,10 @@ void Game::travel() std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; mapa.getIsland(&mapa.islands_.at(i)); - //TODO add travel to menu + std::cout << "You have choosen Island: " << i << '\n'; + + + //std::cout << "Your travel will take " << travel << " days." << '\n'; //TODO add travel time by using pitagoras trójkąt } diff --git a/shm/Map.cpp b/shm/Map.cpp index d1b9ca07c..74a04ecdf 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include "coordinates.hpp" #include "island.hpp" @@ -83,3 +84,12 @@ void Map::addIsland(Coordinates coordinate) islands_.push_back(Island(coordinate)); } +int Map::calculateTravel(Island* island_pos_) +{ + auto distanceX = current_pos_->getPosition().GetPositionX(); + auto distanceY = current_pos_->getPosition().GetPositionY(); + auto disX = island_pos_->getPosition().GetPositionX(); + auto disY = island_pos_->getPosition().GetPositionY(); + + auto pierwiastek = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); +} diff --git a/shm/Map.hpp b/shm/Map.hpp index e1f5a387e..d2ce34af5 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -16,6 +16,7 @@ class Map { friend class Game; Island* getCurrentPos() {return current_pos_;} void changeCurrentPos(Island* position) {current_pos_ = position;} + int calculateTravel(Island *); private: Island *current_pos_; diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 2ae38e65e..74edebce7 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -9,9 +9,8 @@ enum MenuItem buyCargo, sellCargo, travel, - Exit, + Exit }; - class Menu { public: From 734a84ba8414da604401a9f5e01bb20973af3544 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Wed, 4 Aug 2021 21:40:50 +0200 Subject: [PATCH 079/151] Calculate distance issues --- shm/Game.cpp | 28 +++++++++++++++------------- shm/Map.cpp | 16 +++++++++++----- shm/Map.hpp | 4 ++-- 3 files changed, 28 insertions(+), 20 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 17b3029eb..c0c44122b 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -2,8 +2,9 @@ class Map; - -Map mapa; +Time *time_ptr = new Time(); +Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); +Map map1; Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) @@ -29,17 +30,16 @@ void Game::printTitle() void Game::setPlayer() { - Time *time_ptr = new Time(); + std::cout << "Set your name captain!:" << '\n'; std::string playerName; std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; - Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); - mapa.changeCurrentPos(&mapa.islands_.at(0)); + map1.changeCurrentPosition(&map1.islands_.at(0)); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; std::cout << "Yeou are in start point. Current coordinates: "; - mapa.PrintCurrentPosition(); + map1.PrintCurrentPosition(); std::cout << "Choose Your next move!" << '\n'; } @@ -52,15 +52,17 @@ void Game::printMap(Map &map) void Game::travel() { auto i = 0; - printMap(mapa); + printMap(map1); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; - mapa.getIsland(&mapa.islands_.at(i)); - std::cout << "You have choosen Island: " << i << '\n'; - - - //std::cout << "Your travel will take " << travel << " days." << '\n'; - //TODO add travel time by using pitagoras trójkąt + auto j = map1.getIsland(&map1.islands_.at(i)); + std::cout << "You have choosen Island: " << j << '\n'; + auto travelTime = map1.calculateDistance(*j)/playerOne.getSpeed(); + std::cout << "szypkosc kurla" << playerOne.getSpeed() << '\n'; + std::cout << "spolzedne kurla" << j << '\n'; + std::cout << "Your travel will take " << travelTime << " days." << '\n'; + map1.changeCurrentPosition(j); + map1.PrintCurrentPosition(); } diff --git a/shm/Map.cpp b/shm/Map.cpp index 74a04ecdf..e90ea0437 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -84,12 +84,18 @@ void Map::addIsland(Coordinates coordinate) islands_.push_back(Island(coordinate)); } -int Map::calculateTravel(Island* island_pos_) +int Map::calculateDistance(Island island_pos_) { auto distanceX = current_pos_->getPosition().GetPositionX(); auto distanceY = current_pos_->getPosition().GetPositionY(); - auto disX = island_pos_->getPosition().GetPositionX(); - auto disY = island_pos_->getPosition().GetPositionY(); - - auto pierwiastek = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); + auto disX = island_pos_.getPosition().GetPositionX(); + auto disY = island_pos_.getPosition().GetPositionY(); + std::cout << "dystansX korwa: " << distanceX <<'\n'; + std::cout << "dystansY korwa: " << distanceY <<'\n'; + std::cout << "dystX korwa: " << disX <<'\n'; + std::cout << "dystY korwa: " << disY <<'\n'; + auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); + std::cout << "dystans korwa: " << distance <<'\n'; + return distance; } + diff --git a/shm/Map.hpp b/shm/Map.hpp index d2ce34af5..ccc075292 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -15,8 +15,8 @@ class Map { void addIsland(Coordinates); friend class Game; Island* getCurrentPos() {return current_pos_;} - void changeCurrentPos(Island* position) {current_pos_ = position;} - int calculateTravel(Island *); + void changeCurrentPosition(Island* position) {current_pos_ = position;} + int calculateDistance(Island); private: Island *current_pos_; From 7d5d4112409dc03b0ac823f6046d256a3a0060d7 Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Sat, 7 Aug 2021 16:55:01 +0200 Subject: [PATCH 080/151] removeCargo in Ship class works & storing random Cargo in Store class works --- shm/Map.cpp | 12 ++++----- shm/Map.hpp | 7 ++--- shm/Store | Bin 827568 -> 922792 bytes shm/Store.cpp | 35 ++++++++++++++++++++++++ shm/Store.hpp | 5 +++- shm/island.cpp | 2 +- shm/island.hpp | 4 ++- shm/main | Bin 823736 -> 180744 bytes shm/main.cpp | 72 ++++++++++++++++++++++--------------------------- shm/ship.cpp | 10 +++---- 10 files changed, 90 insertions(+), 57 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index 501611b10..ec195ebf9 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -13,11 +13,11 @@ namespace constVariables{ constexpr size_t ISLANDS_COUNT = 10; } -Map::Map() { - SetUpRandomIsland(); +Map::Map(Time * time) { + SetUpRandomIsland(time); } -void Map::SetUpRandomIsland(){ +void Map::SetUpRandomIsland(Time * time){ islands_.reserve(constVariables::ISLANDS_COUNT); std::random_device rd; std::mt19937 gen(rd()); @@ -34,7 +34,7 @@ void Map::SetUpRandomIsland(){ c.SetPositionX(distrib(gen)); c.SetPositionY(distrib(gen)); } - islands_.push_back(Island (c)); + islands_.push_back(Island (c, time)); cords.push_back(c); } } @@ -58,7 +58,7 @@ Island* Map::getIsland(const Coordinates& coordinate){ return nullptr; } -void Map::addIsland(Coordinates &coordinate) +void Map::addIsland(Coordinates &coordinate, Time * time) { - islands_.push_back(Island(coordinate)); + islands_.push_back(Island(coordinate, time)); } diff --git a/shm/Map.hpp b/shm/Map.hpp index 3847b41ee..ead79bc40 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,5 +1,6 @@ #pragma once #include +#include "Time.hpp" class Island; class Coordinates; @@ -7,14 +8,14 @@ class Coordinates; //Class responsible for representing map in game class Map { public: - Map(); + Map(Time * time); void DebugPrintIsland(); Island *getIsland(const Coordinates &coordinate); - void addIsland(Coordinates &coordinate); + void addIsland(Coordinates &coordinate, Time * time); private: Island *current_pos_; std::vector islands_; bool contains(const std::vector& vec, const Coordinates& c); - void SetUpRandomIsland(); + void SetUpRandomIsland(Time *); }; diff --git a/shm/Store b/shm/Store index ad1222315bfbcd28565dbe029b654d360a77457e..6b60b4c6db0a56f1674cf00b261679d9a0a70a1d 100755 GIT binary patch literal 922792 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%0A+h?c*jwqHW2*uq~6+ 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

    9xw5m(1A1Z(&~2`ZLIB z-3unO^|k1{ow-d=<}-~iGjo-a`6e*J3pDZq4_|3eH+q3j5a{{MJS6BpB7Zrg6*Mv# z4IDq8xdlTPr#iKXil5K?(Lkf@d}jR>pt19rzfqJH;F?TM1}a>>z_h*6eC7(|D@w?Eo>xSPfcW{$FV!{q{(m9&=QCe%I95M^?pOQ+-yk#oeCFb3khPSHF>%LV zaOyV_*!j%1%Rvw(*3M@pU>l7(4UqnphatllKc6AO&S%a;_fWF|SsKsyH|s|y>&<6A z!NgsKNoVIXJ9hx|1RyV1?iUXrt9Cv!aySdRAJ`+7B6J88c0O|}T3-DDWNeC8T8hwV z+xg5IWTyZGtt}Cy2vMc^OjkSu>`C{HJ~NVD^qmwal>XQseeA(7%S{If_cd9(AG z>U)f|n}NHHc#&r3GgHygh5u3Dw)y`YnNL=i|Nk%wMqA(%u7s8{*@=`Aoy7w4qR!05{9x?R@4n z)Q?&U`0d28?26+2`Ah>Sp?Vm|XX6Nz)-P{9a|FYxdJhx_Ju3e>`E_uxC5y*_`;&Ox z1m1im1G-78ud=7X3C3UJz4=Vb#t_{c;0{FjIkfYc8#hxuy!p)eSotKS8i&i|N-W-d zX0^|P`ApN_G^JVz@^xfk22DM9^O@yv(*sWc`9eH_H=n765lGTK2>chM@w4j9XGWnY z%#u>mVFdB7kdU3vkfiQ9@|v zGgt1z{$CI*vP9xn#m{HHK;K*qf(PS?v^UiVy`J-#nplhtybX%O_{)5TktT^~N>dD` ztRx-`y$21&1ZDfP+CvY7FGFMFFB6n?3q2Om4Mr6&dV)eXR3<2NgPri5nAUX8egjWE zgFC}Xj{!DcP5PeEH^V9FYsjq5Xz-nI;O8iwe*rK7|3C^|p-n;>d@meWyA4$a_>CS; z$*XI;;4|2xoZz8wV1J5oegOV{{5O%VI%V9XMmxbz!hwMxC3YA7yDheCc5@{DO*kf! zf@K4DBl@k5x7NJw+61g#g|WK1|~<+nYa_I z1wSmsdWvagbP6V5v)M(

    DEgNrf9O&fX%v0+yyGWy5BZ1NXSZy${1&@~ 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%0D0PA0jp|(R8}jemi(129 zSmRYkp00RSYusi{r<#GdJsGZrEX9yjom&X;R7aj%c~)ya9=P-bshWh#EX&Q1RUMvF zWhZ}^Z86EM1<58duxN^*|4^OhILhw<%_o+FWfL~5I=M%+M0J8FRHc+es}3IkI$>%{ z<`r1LrRwn1PO41cbbWumx4ySDai06#a6N!lb=ntWdmaGiK(;>n+*6&pXDVj~p?svH zpX+$Dw&Gnz6^!b%!pF-f zEZCb!-m_qP5zbus1@Z$6RttsoEZ9m&5DO-iB5KG|Ij#9c#m_;~$v64@f&jOYMaEy&UjG9!}jr0_$V%feY(T(T;Y-Vl61u!?-+7mgPb% zyDKn7+bPuE6m3+I5+d~>C_l5**2k_}58DdBul@!ubibE5>tnB|s~={neBkPP_)0$Z zl~~ggAzeYx%OmoA?3=#Tk1Ewz;3j$aNmiCW$iJJYkO55S;^kJ6uh^P|LG4< z1D+|H`4vzP0KCORsh0(BOxb=ctEyLl+w0-uO_{9WdZw%zHY$)#{eeql1JZf}vT)Wk z67<%wWVPBeWwKoCnX+rJ@L3h4svR!fEH^{el*zMSZyl@c8#-I+LXgZR1B<2@`VUjK zas;}^9iZ80IV8_yv!?7gp1q2koq)bZLYBly=ZSGCD*~(VJU|@<_-Fj>sc|}aS^ZAu zsc|Vw1B*XLUTUK$n&WQ?(ZSBe-+d7HiSAecH?k5~skPw!j9a+b7!Z!3@Hqp_}sxSR10)H{Uwv9|IE z@~Q3z{4o!wT9Cln%0K6Wz%FOKguMu)R0nZ6OqRAn?b*ujh1#=~>+l$iL@Mba7y zwY8P|dMl?Z_*Dbonh`IVv$paw;N^KoZ{W`I@Re+32)lGd$Yc;q^N4&~IsRfJWGQgB zd-zJWayZPDl5o~>;E0(NOL^Iw4IN3t;Un#J162fxq@(mby3_1fwfSvbHiAFYGfHmw|wru}t%{UyFs! z++f>%EP*@`p^C`r1kXco!j#D1kPCDP>Kq{SnM+R1d=)sDFk_w^bRW>QJq#_UX#LO@^PM9zJ zWWFgi);!96545@W&(-$}&HaG6^W~R@<+xbe`yF~e_w_`q8I>p#p6425EQ(_rtd?PX0?@Kevh#(fnl4pA_#WQ0zpZXO9e|bdO zPo+|bwdKp5PMEpseBu=|%^AM6g8ImN4gS#m*l`H#3H|Def1nq{`|2}%H*n(spX}k( znIy34)Aec)SoK-{v8GfjLB5(SLxtK?pEg46sZa2EO{8{$@-<6s)#m`FG3TaNf}UaFR)P9f%$z3p1}-ton3;>nJ7I1%kIp#QHKsvWXl|qPjhe zBPj{~8U(*qlH{q+=CMXnI$F9W{uL#8>NC2(a@c&T7zEr0Vw%Srx@)lnGIUc#Dku~4 zm{*F!M{2ALy@I-+HCzDxgu7r5xF#-}8lAlNufz_Fm7ylCc24i}NVu-9-}g@5^&Q-V zgTc@vec=3~F#Acv-8^wgDsHKgi<5i}YLXo9;Qd!ROUX$5WdA~OADCR6V4>XbNsBd{{_Ak*VP2Gl(rJA$0!4OPnwt z^|y3GA>=E}O&tg$2+q*U1-K=IhQX+WhZ7U1!gB^&CRAyA8x#Kyi4UmJh_nftQbEKA zHZ9$R#}ICrkkA(?j+`_e4`bUTZ3gCXRoJfDTOfB5YgflPEN^AA3}K>L)(ZZ;O5|)Q z#i?U%NlCCI155Nk#U9JUd;9GZWk;#FUx(I6;m0VTa0CGLv-m_P@h8km+c&Jv>?d+7XZuDutg6JDvk-2Xel_X8L%(U?Dq|VL z<9Z|9I^zz8r>{o1xaxfj@0*5jn+%cv7V4^f+p0SW?~8?u_U$tEF#Kj`giER(Vt98V z!e!}_?yr3j?y1u)AB^xyou4V!BYbNPX|^gi>az4e^Ol9svAgG_dx zb0KF|Acgg}#}{7%wO4XhFqOLe4Z%!aE>3pzTHtOAN2n><@PbQ<;1N z;^g8JL|t~{?Ca}-3@`XGBmMt@Z14ftk&=$VGvU(>4lCL2N1vxXn z-Ve}=cvA(j!N)E^P;W zFV-_m1#u^|LaubUij#OX`evu9+2pv;Elp7ik)flIbfrotO$)w((D*xGUrN(6NHTs~ z9>N*Xtq|nI_Q9r>rbeWiVkgQGsT$e<4%que5L22NT!UERwFq|(XHshT7XrSAz|%t2 zGoHmntIbBdPS>TGd)spmxTOK!^lxDV-dBo9>qM%68=Kc0kz$Edi9Ov1kv0;k7JK#z zMA}NER_qs;$S&<9QZH8C3Xu|tG>y$EMx?z&+Qee$HC;MLq%_u|1tO&qDT~c%gh*$J zl*fi*2<>v3LBiSg*~ zE`yUNLcr1(zr@&OXm)F0R>u0JAu_CbXGGS#lWA+V1{uoH389PCw*fVN|Cd=--2?U>N?rcmc6uYazWj_qu?|OV_L7en> z5ue={R=ryXjpGOCgvI12lQO$%+ysjwb1x@(Q%xY}1!DK&&U{=~i6DCsv;3aU(On+W znK>Rc*6pClXi+;vS|~Bodq`s~v|<#cr$T2hxEo~kG}&Jyi?`;QHoM0_P!(#cn~4Q3 z#S26PSb@{Zfb6G5bS6?nNJxyiNsj4fm$TfT=`4;RZH2lFP6X~Njhp4+ob0QI0^CPe z)ha7qB%At5jDccdAm-rC`r1w^X$Vb_9c&1KKv3F$ACc4#(}Go*qqDU5--#0i5pG6N zNLsAqacq;v0?#1SY#lpn570`#Y+$JDHR=yP7C_ zb_s}vYf(!qffg`y8E{VoV*PPvc{jx4vsbhRzL9Q_*NKy{NNQTzqHski2u6vSd5<9?E)EIgF7qc%PE|DDo|GmDz6gir*fdq7J+Svsvxk80-qE$92n1)U2qmq zr|B_smSyv+i!juG&6lv8tuDF9Y12I-k=R#Vu(XMTJdMIu#Wi?2sSj|J6Yt?MCDMKHOseUlJLlSr-DmunHJ8l#s~ zFV->@k<3);bWE1_X*t=K zp$@vuRN^_C)XNWo{{NZt)foUY+< zyv7{X83cldm3Uoq|AC1&$r)muOiR+9B!|4Hymok5VK397#wS2isnKqXGq1nn$=bT&0CKM)&&JA3g&AD8!L58&>s$s4J!^H5?g9gSX-O*E@|LtL^>UfKX~zgUwua=&W1 z88hhTvxz46QOm8-J(%AIYVt-v;wvW0CT&6Am(3fw>k%#O%_2K__rTlf_GV4q$lb$o zYvF?4oy{AW&b8bceg9%`|5lSX0v20tzdrMX=6E)56u~z`{0x{mN(1(ac}m<@zA>VE zlvc)fh7-#s@|izo<$dpK)8mUIroCr_Q=t*Axgd10H&hQTpBHXO{FQlKj8sX+OQV4%L1K}1miWuGloi1xx zqa(xpdm-E|i{4yfG4fW{K7$r6u`N1WSqB|%KNI1OI^2)+J*vsFLu=BT*?Sw(_tGTZcD?5I$S;KEm)24SzEc;c=P0n1|o{B7APvSqNutjlxOo*}{GBbvV^;z&Q5Q zuCo)Xg$nJdU1v9T`(i{oiho-r_RSrLbd^Z8SRTBtp4}u;EA}b{beBlISS|(hkVwZ9)`#;iJTpKf&xZJWKirpMn*|wa4dt; z#z>)}UCy}ACyD4pgM25w_r?iVCa*k8D1UlYxmdyBHMn#HZ>p9~s>YGb}o0GK{ z@TfcfHB8GmWE?|Ore!#iw(~|9s5L1E0P0YG4#I0?eClvpeT456E8d|CY3|W94N3E$ zrddUrhlFN@>O2yWbZvgm(;Ja{H&hFEV*zb>F6z8-%jL*i;{)BWQry@bf(4q!Yi1Mv z;AFyQw;((dw!&%rGcHuiJMo%Stz_EEsLQvI!hGw=byIF5fLB-Qz?BuWsLK~-!drx- zOIsod$V@yB&$7;lR{0r-*zEa^b4E;NI!mYkptuDo^ zqe05qkC!m1=o`Fp9wNdluHnf%FMFEo6`YVERYU|(d2!u)!{l={ODUlYQ66z= zoEobst&lW%x@G=Hc)q{~=MI9Lp99GsgGezgr!f0!fZi3-;})9zDpax0aXomYyy+2V z&w2>p-!!<61sCq@2k-|Xqr^h9tBeBlGpz;veeh~nygvK2jENptF@%z{F0%WRv87(P zT22b_ZP@lE&$rbB!7oxBn~0Yw4lhpjakO@y1p)CG_7YcVg-I7W)(%vEh=5<>1n2~^ ze@p>>gU)02TP9t-P{wRH*>^&n`h27bT37;xP>3-s#EDx$@o+$TM7c-dWT&xgM@-kS z;F;IKboM!>!GlwmA`%HEFC<=yRk%DApc|!z@9?2-vXyQY=vEJ^83r%!4AhoD@~bwD z!S^f#sHsXm?17|So$RL`0KBD6J8_R!SijE2ow-H*p+L4#>a1|UEeJm;cBUaYNbF?S za{-;JE2WHJzsWj0l!NzS8wp2;jSnN-Si-J56iwl}0CDt*QnbM62mhfrAYd& z^q^Z2mEM*Lg03VWB(Swi}H?Mc%G*Qk4$gqw6A zgyF>8BFE`hq(`fCbeEUc0J}!2yaAwkM)?DB;S?Uu2XV1XHoIHY zUxNCKsFvxB3?oW6>Z_D>dm6c?Sm^WW`i{s&aMq0|4t|MKFgqWxJe7-eiF@(-_<&og z+<@>3mA3_mkX}=ax;#KNydGluatZTA1YS@KO$s3E$5B~f!lG^hoJZGOe*wO2l{2sv zAR!^b7noz;VE08rSU(Sm9m77lgou6~l1{ROXlVPd$bKG38{;34trybD(k(PmO6Vh; zhoHKEpr=RVJl7>Am}TAT4>Sff3`&GRipd3 znP(Ni_j)MxD?(0s6weS7GNV^>f6G&VycCbWc;w60UzE;Xcp>lKq)UHaKU;~Clc@)b)UnvNUl-$Yf!r`-=>MW zeDfpf4#qXi;EO8#ULZrk2tmE~Vu4J(aw|4@HCIlZ50S4c0lp6Z0I5|2fDDB?f(BAIL*Md})zBr^48!P5_~hA4%95Qq&m3OHF_> z0L$~>dLz_M6+?QbF=h3VIs`is3Z?HJi&&tF!*Z#v9s`O^09I8{8?LF1fq=L!uTht; zfw=C-GG29ft%Ntql`opWGT;i|MZ$bh1Pf8UcxBi%;RqmT3xV_f0N4Fft_(-rD!GJw zjBAmEi`=&b(nGig3fJ~dq}+~*f_%Y}rbxn3w|)b{p99u)*VN)Qt$kaJwtvbK$KIOo^@v1AiE}FFm}Ie&2mS zrAA{n1N9fc3CNJi)zK8ha$yCadP%a;nme2Kwz`Tj=K<+l1T-?50g3m9a)b^9)~Vk8Lj{R&s8 zqV5$W;67?sf>D<{@xvPhuns|20Iqvj!r#f2oBv(+9ZBmcR7dy#$ctPCU3csmyfPeh zFGV=~o5<>eeo-WVBKI_eUAacxhsdA1kJK~E5v+@#>#i1R;#~I(3}aE32aAQf3NoQT z!PDe=>oAHX(v@q}B_zx*z8AUUg=C2Eb8mQdfI}k}sx)um`mm*y_mhuorGIbd2KjI(Q44fjh5+%(24ShD8 zoOacAyf8v&4ES{Xh0saAeE?*nM8Dk)R9%3Zdnj#6hcJyFxW&3F5PdC@o4*}F&g=^0 zC`2b%r0krY)eu~*eu3Co9zv_V6Xt&E{=crliN3(hV&LIVLH9q>bv=$yUtExD78COW zP={HnsLL(bVeZg&T|O^>H;!wV+reESgOW*@SJ?4$fIKFEl?cL&$n|}>ekNCLg?8Q0 zgCtKK0rH&vY%K;|_i?#09Ci7<<1jy@?Yei4BnbgU?s9}(xx%=RWGG0Y?rWnF^xVqKRXFfJ0LE7zz%!W%$X~O?GOX znHYKW01k_h*qKS8qkB+opM&-X`~yVk=1>3oBRs5&MSB6PA^<1jFL)>S>{ozFPW~M` z*hFcHfNJKUb@QhmM)RMU68#xlepPqi&a!yf{VFOJYuE%tRg)>iiETjJotaskrF2WG zV)M$GS$)pRLO_wr)3U*j zYt;RQ{5-T8nV63t55sodgF;Q5>rS3bB=`7*zY%2JiwRzhYmtDV$3RAA{qgmfnE>JM{=J$!uWF5K)D=4LgxpEBfg^I(`8(_ELhsLS`vU6+&E zs2f_#Fd;?Kh!`psf_yQ^;ioM^aJg_28g;oVF?^2zeuTFcb-AxK%srE?;G!-MzzOdX zZk~`+B~yT7ZjH{o@*D-%z3M53c?gGVAaret z#JNLr?lpT$=oj?@VHxhPD!1w-SnoyfH8pAtj2L7L?URp_{u?+5P3wzi$_S~U>tcX4 z1njbosNK_6;?b-3oBO&N-vLuB!2Z_1xtCplp}f{@nrOyu^TK5IRuuK)xUQ%;#djhL_M%|^*l+$%`#0wxTW zltHIKL|xTbiyY}>@ch!AhPjnxo)6~#I;>P@eUZwJ%laZ!7?<@$s;QUt->V|s>s2~W zMhYyORLpeBke#THYARO?L8bBt)GWhPV4044OiWxhV$%H(Zk&zU zoz4Vnt1jOZ&H4nJCl_nhYF5H2fTq5l<2cJ8fwUPsNOh^9n`r5-1zn|Tp>%t!sjikS zs+vyIwCEO9N5@TzZc)ulwKxshT!*$Z>G;*K1L;WHkxvSOV^?#vknv9bLKNgfkhC$3 z-E9VghfP7o>4MZAF=8SPSgIkf)h-)Zz+G3+G$(^cw|)+T!yhV3ernYyu%CQbt1i`B zDkZK|Z>gNPQoW_>dZo(WjttI&tQ{tWx;BNoPR`(DoaIzQ-b+RXbw-gvzI%J4VQ*~N zKLUG=5hF%9=})R!FX%ENK9TVzKZ7N(3_887qvMP+yv;0c$)~8)uNB_2xDNrIEyw(3 zu@hDuQ)DVPi+!-_n2tI+GK*cX>ew2(WXKj@1#V(QH@Bh}LbT4-yQ;RIt;tUMyQ&G_ z#znStHs4hpbv6e%`G3GZ-UH5GuhD{vt-R*}6@9F|PxMiEBLkJ3f5jr^e209z1**V) zT&hrYKS5!fVse)L4IRgQr;+RDGXgIE{C~1-c!>4?9>s-@$nj(1C`who$`# z(D+wyNT*-H5gDBiQpONa5qup(Gr$8kZSWA{)3;pLJ$UU-97on{!$!&mEYR1V9PGYZl zKE@JHB@jQA=f1I9=68dvC&0DD$Qoj0?LAr6L?<#<)zZ9BiS-crDX0R!<08%ZH=6Sz z_Lj)ibrPUSP8~`)6K~|y{2WfKNu#w*qcNaqA_A@YHAPX?c%(pkU;=${v1(G~)46)l z%PA&XGyJFE-+iH$mTHC01~g6hsdJst85RK&Sc8iQ+w5gBdR^_U)ZsehxC^_xpTj+O zp%zr%%6l8oG!cPJ-iQb@nK2pt;oAk8sF9`p8|aifd*B`YK%mPj5Kdb7HxSx@M@%0y z9O;&WXF=PSi=bhb;K1iL6hozj=Z&tP!DFV^8cw(_@>8qkgHvoam)g)_XYknRrj&=4 zMSP|co0V{?j+Z+bXUv0NaFP(7JRPt5j{~B0A2ML~K2f<7MgPYm4g>RvDq?~t*yRW} zH$7kwT{pT)4S3#lzmtl|!>Xm2oWJN|j;X@1F6Pc_!Py3!olfE$;&F2B>s1iN$*?&T zJW<2r_qvyXKH2h0`qmG^!Ke+44HiEL@h-*)iyu_AxvFNYZ~>20K#zCoax2~!5dQ1c zx)uC({29=SUC+tc4Qm^O(GO(dBAQ3z>Z@@bVZocZZGpeX2<)fj!WTRZ&@|zv8s|Y+ zIfY$PQCK^UM3IInhkX(ebi9VDb#v)?Kqr=pmVIVsOF{thm-b63bcC3JbuagO88S5x?dCoVs=%J~ZNg`c@!fKHeKNT2{0 z+X*WOBl$UDym5iMbCR$#08JBq2&+2Ahw_dkfu#P3m^RfVwxeZtEHnQ-t@#yHDdRug03jX5*7Lhs4Z7&${iT# z`BSTQ95eZN@NKBTvh{Q8zuzB6QZH56d{#imx;MPyD$Bfhc{ldfD(h4lpEV%kZ>v2< z=t?cqnGKPky3na|lgeOg2bXP~+xrVcHN#M8Im=awmNN)z;ul<{ah@P88NU&${Q2D7Qtu7`lwW`Y3(x)pN75^i0sci?UcQVdp&(x-3(6H2A1;$dK z8S1vZ26W&aZe;r7c6&gj3B7T8q${vK>w zg>&y`1ESBp_u7GrL{L0w2O3heJjPD0I%2`|K9C2t;v!v>3lI9F{5q7p80(4qasO_f zP7i$YQ>%^vnkKv$7#~4|gIxoj!vF3(O;bbP&?Sn$MH}2SNuQf9E^yB1B0lhhwu}3d zGrF6Ojx5;Th+qr|PeRm7MpTLwHI|}yz&Pm(cy=SZ`q)DtzL_Yd!bgLpbhMF*gz04? z35FHrJ7alF{{~N#z~vamx|eUkLIdEBn1p@Zd>>HJ%~76D$zw5`@9>1d(4K-Qe`-}O zprR#QMir(Pq}InvgQToT)eQn~XLf&_0t4zmXI!KKdVvMTe1;P#3giw&#HmAZzhQ^+ zSllPV58@9ahy2v4>42tD28}{m3khtR>)fgo&D0AjbUQ$MFW2NN^bL933aDg_W(qn9 z(=ZD;P#Mphrt37L^R;k@3?D3${M4#bzDF%{Uc*%*duFzt*PLENAT&+;w5NB}(NgWx zo>7C{fw^pR6Z=PB&ptRA{1C!Db955ZY*HJ%q{wHJ@_U`krPc>e(Y>rp59I5EB|2WJ z2lD%Z*En+#($TY_XjrIPz2MH!Q(qf!rDrU~w_bTdFFmC6HQ>`CEXr4m@7Qgzf;Ds`!1 zrE1+8H&KtXZb2tc9hITwk9QjI zs}VOFo^)H3*pC%>JR8PCZ>0GAj6{3GGsyDv1&tl!qmn!bcDyXI*gm6?eetr&L3^4;0jJz;#8 zu+#_>bUqIq{~2f=pvGSdeM5&z{|Pyul5nY38vT2*6oW)za4vZ^5#nv|h3aM?513;3 zqgqEmg}2jPJ4uXL_#7W#SCJ@_Ut$ z0@ENrwQ8>?CGK_Fl-su9vBJS%Cnf^xAk&)IphYw6%V^Ruy_CG=rZL`DT{p z9%O~^m19vU(%Bwmza1irO!(GFvFR<^c63!aI!L-xtoia;&yx08AyI3H4Om&W*V^{OC|PeJLoY21W9?E}us>?S#0lCXq{R zBHsaOhb=iLgmn6hCP`e6Vr6<1TPo)ap)O=8gc)SM(4c%^3BN)eN3vCL@%;*UMp=i+ zJdH}SW@zc=hQ4|qplQO33D6`&SU>%5n5~@G5ShimpJ*htgQ&M~Q3r5A z4#*gFc?}cnx}@*^2rkufa?^B!WFtENIw-M!&QH=8<=b#$cjj(Q4HoLxpns+E!PIz-=Oz^yE}$?vGTe{qJU*45sRUEtGEyTGTdU|Hn_ zzKr0Fc>ZKkI?twbkCzhJ{>>M9I#{5k>PG?i;!s;1H}>qApmDj3J$okDK+i}@o&04F zV@DMdIdZ8^v%5|DOF%1`aarZ(0Y^|Pf0dtS0PQmDd6qr%glENnQ$_spH64KleVaMX zV}{lrI(mWD7S5Dqyt$8b@?S!V=Y!;W!&uiQavh+R@+b@aa_kiHsPhU3@0QN6e1^TJ zWq%3mP=y&zaAC5UJ-6YrtKcG6N0H-(;4CnlzN@eP_&;)H@Q47uZ_QsTeM1+$5S;(! z^G&U*ojj{MI%;*tj7pVtC%->z`(ntw$E4;r;)8%zu;EmEX~fy!sMv@N_*tpxhTZQ& z--EqUAKDq;hj!XNl)-cO1{)E+9@PA^f*vI9*LskV4u80&p>1#LW+Z6spe+tz>iK5G z*AvFn^E>J~fL2_CBFqKDFH<$YuNCV6tyE~yioFl$LhHg~A$(B{O#49m$P_K23+6Zc zsZ}X3ObLIVuIHN~Yt0@qmt_@W{Lgx$mi94Av!29Ami0ypMmY`^EZ6hcHWSwX{$7kb zYdOfweG*9(Lg*k*Fvn{#?i5^Vq!L(aL^7->?p;+un3KUzc}*(Q8NJ_T_!Y|KESTP= z{dkwuVe;fU+6C2Wl{~qt@kq0N{2H57F3#Z7dlb!^gSUAp6W~J7xzQ_Lv`^58>z05Nb#6S(a&X(gMGHFE=nuV{xqs< zAB4383fnO;^6?QHz4=nUV4rccmYmI2OxBCuaGZ;9-)#iv*$TTH&@>T&3hRJ~jQI=Z zq0J0!eM|d1&~_cm`q*(x{qV8%;4#w4;5XGyH$nzkA?*}O!qM-)#w7UIabpsE?6@%r zKDLhgKDIX|)#X`RgONx(lXSXGn&$&aZ`_VbVr63wDXKGr2N3-N<>$}$$G0(~-u&I3 zon-xS3ajXk>p1-JrBm_6LLl!q5@819r&b;D(*Nlo(}xMUVHVUqfFtiFYMSpXE#9Kk zdCf*%<9zr27Zb3F&iudl?ju1#vysE|;|4%b-~wDkJvKmEyAdPKcVb1s`VS-G6f>nV zn6c|{Uup7DVDrI`cBY98=*KWbs2}+kKLW#oNV%c!Vd?ovJF6oy9Uz@PHc;yRKc0+I zU(q$_A)n3;y9)}`(WKzFVjDaglnzUB-C=vRVX|z|{6nBW7ZklN)LHr|pzmtcAAm}R zh^{a{S+rlflPTS+LGS~r_9O7JgUgoAy-gw3Y9*)(^hD*FxlVn~kCHa4Y|f8lHAwa& zJf>2|j3Hp_-1?;jpxB}TaAWJQg(XgUTyvmw_0yxkZ}sry^|$>D{1cvl^>dw!XNF@M zZSvp2)-1mS7(dZ!0*Ee%?u>Zu7B}I=b2l^I>E~`N1=SAq`}6|TFF!{3`vp1yzkXLr zI`~2@XVPB%GI7>#-5W2%nNNs(YWT8j{$2o7S~y>{8?>81%Wa9T8QN@1`(0(){0~Yo z>W0v346Uz$xqyn?KcKG6L(Uw~)(13Dii@Z-UTfWqbe& zIoQyd8`@+b=p>!U*WpuZi(Zt~U;hWn@>-3pCd8 z9?f|)CnS>teK?P0P$4u%LS_bYqxT%q$!Kz#<2-zl$hRwsoZ^XOt}v84|5t+f(b3C{ zV845vhEw!Tp3z9|X@G3^(vum#d+E5}y|kqpRG`<|u;lv)4D#@k%5goCE1<20_M5xW z`j=Hx4Ifl62SWk|(1LEFNzis48s5~%^0oaH$gZT`%bA;>gFUwpve6TC@(c@7>*6mj-X znCO6}s!70i82SO4CNeN6rc%~23_7D>Z6`BwQk~2JRO+M?go}f5^MmL*r2QW*l8MF@ zGr`l+ono^6)lfMv;{MS%U2}dW_5zwFGLVUz5n(3sADoT(BKGEeFX)LR^0}u zc&9{HaF;n%;9{rsPOqF=(K~Go>H=0Cmsox8lrw-h@08Z3K0wk(bZJ7ee7 zhm4n_(373uX_0D81YcJF)U&aS*ew#CTq@So$v+ImDTcUVBenE(HjxEPggb@lZ&s-N zG6==Po{vKXoG@Y{qJ6(lLN!Q8UC_?oC!v-afG6ABNgVk!6w{55t;83iKB|}`{T}=R zlC=J>{XjO-!?f~)1hany+z&(P_-Yn^gY^wsQY+2#LwBnjlakKLZq?AJojA>r-KxEg z>sfx}4V9_=&{8MAWImpbK+-%Tzu3wj2B_4-Yf_nf_=kF^uraxAyG!x%5vT?k-ny3e z8jqK=ZkmF+2SIx;piNJreY7%d{t(c<4QSNR7FoF;Ri@40N5&5f*95*t(K6jMCjC!a z#o8%-HQp(G)pJVCgaT&&#w#)1hlE#*TwjAn0$Q<7ocs}}zqx=eHMDJQUN=;t73JiP z;PqFCGV1!Qup>C<=S_I}2(G~ExL8Nl->X+lk<&*j=R4fznFReY{x?9=gdY{2(*&tR zG9WAs7ZJ7u?dTMf>fSG~+y!tSBcr*^bO%7wgpD$GUyf~TlyRmf;~dJUL#lnR;WZ)L z8ygwl>8rU@HmOu*#z20#Lvaglsfg^YIepo8y)v-uDTkx?G))9zKv;8tFiSVp$9 z05LL@fb_JHF)pi<@iBb)&W77JGFO9J8$1{plae(uI<6mY(a7kyZ)CLl4W#phoZ2}~)4HuE|12W{)A=TmP$~lPpRwKhVGDiSS6E?`G+Zu%mVcGE> zL+4j!I-pWPx9`(RlEaVI)dDn7jEkhV7%12vy_hRst1BkknlSRi479PKcWgS7pxJxe&S+ z?7w>=;^tH5c>IK(<1sVh1ecU)vegOwwEoQvurUmU1Is4nuwff7d0 zgrl6mlt7l0rw&ElJ{fPy;!W-c2kW+&r*CM&9)McmX_6jxqwHb2*pC09+{@CA$-UIc zIQ1611kgisW9d$QYSrBo^3G!w9`|wTDE2aWN@}j2i|VBo#9Qk4NSS9QPfbnp=9wA% z4#Px~#ZoK%M@r|s_a8QgT^lTo+Z?te*w)(|mT?a9+T2KMZ>9Cab`{AhXPMR|(s><{ zYNnzluR~Is>AC306wWJ?ho+`@Gll%WregjFSsx72qRkCeItNhcYTD^5bMl`C?J7X8 zG(_H@i9JA-Y3n|Zg6;xzf}zc{Ie*uq_2!jz`8l(n04+1Lg_c&~v4Z4*6HSf@8T?{} zYv@WXU0={i-O?`0Ln(ig80t1|lNjpOZW2p54=n}Wt)?jDR^n_gWj&(fq0|n{kZ%KY zf}!;t|9elOeQi4Sg#mi(EG=-Zm3!Eu)ssPvkl3EQHsO@N53+JMAjcPMr2Sm`0ZkJbNZ?6Cq-UG~e=rw3@0f~TY87)lpcQ(CRZQc4_paMt=e<=W#njt5 ztzsGv7>bz-_xS~rjIWqWkW2-|><^;r4N(QfJb+cNM?e{P5f>>x`)h^fzYFl!@igNL z+`AioUopQ2G)?%~bOrDg{{|$Gj_0Q$jBaEFVI*JvELIeO=lR$C8JTFQj)0~KKZVUc z2U`yS35@WB(Ko9gjO6DZz~KzIzhi{?ig_)dX~IuoACG`T2uNTZE|Rm3$eB}zR9m_z zXD9CKjSOEg-vBgC*dQZ+FM859fRr0LW7v`L6M#yK>Q}`u`rHEA8nuXsB-5uuw+-Kq6gX}#z^3od@ zC#R?_R-6$E+>VQgd@9~uB3HM?@PBZB1pgkSc5-&M!OQdr1zy3$@;L)ZvH^;}ANP;( z??ECbXDR%-ZxIRvPN|S{zljEtw$VjcT?f88{yj+TbjPsh1a3*G4@jVc$4U>;XRSl> z6SW;@B<}B(cDOt(WT9@-OJ_ABJ^q#?Iu;`QL<(IosK zE%~WcSJjD=x7EmN*+8#4Z<^bt?GIpYB_G}fDQ9N%?&+csR?(F5j-7S0E0Y^HHaD*dsD^j2=YEvJu|xpe1Ctue3)VL}wsWRAgb7i>td{HN`)>%#Ir&g?x zpaGy)rf((DtM{Um;(F1(dTkJW?#Wxma}{!Jao?bSPdG!VS&0JLKA+iQlEoQfae5CL zsd=+wsjk#%qqE?T-365xVlzh%!&p+gR=%A%x_WsGi@}6koQYP@SDd_wo)IWvWIh+G zeXpxfY`z{@u6xztL)Pd>EKZ}tz3R}RS-r;%)V#?l^d(F8s@I;J)qBXG(VDkVybn(m zu2mLkWP#V*K5OQ)|ExmSIAXx3(N2#x3sTNjR|&sDlt9i_}~ zDHBFYPa-#fd(|=8jjc5vi5B9A0REEbrVvg%lh6+gBd%|%wtgNDg}@J6*JUx)CUkQ% zB~fJ z9LtlwQ#77pMJ_V6rZ}-ay5{rw`i_m`k8)*^P}g2U8-dW9uWU3x1u)fg5s{;RjuY#k+qsrS zthN7O{|Ca9yL7lqLkEjd6Q}oOlO-WjFNG7Up?hzH$w=azzwo*j;Xl@sO1K+4A~%lZ zp|2!;b#FX!zO#5qjvZzrm#=0TX#7g9%%_^R4Y{W+Zg_3}B_|DD{R58TDb)%W4VCZ`(YbMgKpx`6Y!75?Jaf6Fg@nFpVB8iC@dWlQ=4c~ZXhki#bVn{8x!nBsF*%Tx zgQLLBK(1a1C$1Mk5krAQYS$K8XChe&!$YADa^qN@lvRMTQN){!lcP+_BG#~H@cfIg zehXEbBTl7uAUBT0$RmrLGFa_>*<7KRaQPp8`wyI7Kj^DdKNqHaqFGMAb5b<=>3nPX0uB9r$Q5A%HIg`Fv1_M}OU+t`T^cUPo_h)XZj};ui zr!Bc;M=p~V8<4@;V=S2Ul#0H14b}l;NGlP<)X}%%6Nqn^j^cOWu`|{ZM(`Du`2EID z7^s!d3ZaF~Kaa!Dml8$2QMd-m?kt1p$=ywuH(dA=i_PhYh2As?SNtLb z#S=w(awbw)L~&0Rdh7%EurM-~eS?;uPs3c@-ONY4P_eSn`9 zB$#uig0NA@eGgkzxB`Nv<3Cj)qVDE`F<@>J(NXIxW*S%-Hd8bEtq1Srgv>#s_0GueXJdlsnt8ku2(Jk_3?rul6+R7wIX20{j|zFMv!+om zi%q~DC7i95F#=X~9}_Zb3NUdPz^jh1Wbim1Mxk`m~TMHjwn+Km~@W zGIlp^0IT>!$b+4L6#`hY06~olRnRv=R;&wFZ7^CnEFM`Ay1o~(^LVfZfHArNOOv

    !aF$l7m&TBU~CP6%Bm3NgF-MLtV#l>760;G=rSMd zCx8#gifckEpUek^U_LkzBQQkaVPHNebeRv>>K`%zu_nP`U_K~xnGYzoBkja7G9MJW z%m?h{a>^r2E~kSEna0R`Q0OurFlLAcvSMUDD0G<*m}0RfQUsbZ#K?S5=rSL~0XmN$ zdfH~ff5R8L%mZB0Qh^i=?p9*I+(a&caeCeZAW-AFx2rGXb$Cf%LV@ zd_eJ6?Zu|AUFHKeKz0-1!#p>1&typaP&% z2%@KLCeqg~^8sbM{|F>~?J^$_^so<-zGj2CeeE(IFy%{z%*S<`r2haVB7Vih?LAa1R;ajgV9)af*F8}wF*@24*nx4*td+(!KuaR=ymf*Ytu zi#tdkDe*0Ok+_5P3F5Zu)5IOBI|y!=?k?_dT_f%YJxJV<`X0fJ(vOKdTE8Uj82zre zQ}`*Pk$lqHl2s3&tRvEbgj4->(Sy~suziS znLb0@oqDghSLjE?-K{?ncaQ!>+-r1nBK7Rm9mKs>4-oe{eU!M@>$T$kS#KBjMtwls zFS7?qIljqWjF~3b>D%n*CI0*DFU0*JyY&dh|Ck*T_owVG;{KdHlWx(`y1JF_937fO zcb+~)-1+)kaTn-6iMvqWCGH~qyts??$Ko#0zlpn47vnAxEILNFh95-eJ)i^bib`-;0!A13Y@dY-sv>DA(%tnB2j3~AMJO4Txd_Ke2-lJpVOR>@ zP75tUXVM}JLNJZN&K@no9YEfLBM?KZm39whvs_w)7ZCrJCo_wcL6X>~Mfe6%3pypW zN~el7TsC!fX%TV}qf`M9-P)rTlNO;fXc2Z|$Sx)=LTAt-aE7o#7f@-i%i+2lse@f6 z=#Jt}G|xy~X6Qx<&(o8|U8q-xyGWl6x0bXBJCT`xYv@~WF5Wir4pvKAggZPLrxKBI zabVSw7U2a?##>68bfiW2wmchxT7-@RD?;3kTD?r?{Fl%=vageEds+ri_rDf&MZay2oK5l3=YHVNQ;nhSRNbs2+|^So1o*nR^S;m`MB77 z0IXL#-cVNZ2}ujL<5lR+Phl!z8amNGVVTz(FNsuaW~?_JcXLjC6L)|)N#kBMz^;gk zd=9-Q4}ix{&XAH56(Ib#@5(A~~-<Gj9rVs6b{AGk$Dp;F(eQUoWh!1JDwV= z7b3z6pHfXk?OFz~gFyZ|9mZd$LsWLU;(w>Z`0q4H`S9QAvPqezpdEu{lQWkofHfc; zPdzvSTUbP56)~25J37KrCFGPy+U%@40-_Cw7v8<^Sw$n->fH4caJwM79!G#86`T(F z2E_^{U6B6F?R=$;X!Q^f&$LHPC8Xc{6aUd9!mQo&a6J*KgI z{&6xDq!JwGG5(z_6{Hf^zlYbj!~&sGnAZUK47YtMNF}HzL}5Pv(wGWT39iLVa*#@- z;1dFqFK?GzF=*wJR3a6m5**i)`6tL!kV;gdOuKwE)0!M(Uwi;GNG0CK7ZjG^uLNbW zJz^x4NCm0Hr(N;rgyD#k<+5L!f%D&eh`7_5{QIPdlG>e5=hNs8vCfg1KG+N4d?_M zfl`*tNah4?{|%D>Vpn()RW0I;k3!4hz;Tb@(($#{AbOcl=NwT6nrrTQm(xwz9k#uR4P_YjFm@$y*@Cwm$Lqah_9%rRk9b!8G+(= zpbDu{afn2XO^CMy(vMbF7l?ZK;v*8`^8+36igGYSV|?-Sg!rOBkK>eeG(;=fiIu3> zs1~7Y9lpWb?MdD7X;1kUWtx~((1@zCMk5!nEz*?J74z?GWN-kHcQe%j=4QlM%2{>? z{wt4|mmqqB;uRDdQw(vHEyI=ZBZW3UPdV4TXn^4y3?v*T!L--jKz1FJ^8!9KsS?DO zQ6_nni>yRBKfQwY4Tv7@iPRcqX5^*HITC5f#JA9w^V)Fb6&UJ8%31^2)^>8E#1x=P zIg8OcY7Y=M`=||xTxyi_#MhSfAY@Pba%q24ihAXADOA?`kp0(}Gkx2l4pGiTOi&RF z|6CkWOOY#+)2nQY!<6$8Mo>=x>OGL@tTU9DoEfh&@5RuvMh?f+VNX=f#Td4{a%KU( z#7iPihF19#xZ3UM%Gvxr`W~|LeK}JYP}*mM0h+6vm;Q!A?FHg5K1v!=-rw-TPF%|& z&SaxTU{#Q7pRV)=ST+^XGYl!k!-9y1l@JdHk$A4~JfFiefQqm>oc{tUbE9(hPBypw zUU?|qQar&}Mzmi!BR0WQ2R#b@sDNn4CU4m!u z8*wR97Rqmzl@GTDUHCYVFdB2tcR;8D;EHhs&f}09EkZmKKY`B;st)ljo=javK@L>Lu~ z0cYl1Ac`RD?E|R7LXgFGzY^v6ztV}aWE2T18Dlk<## z(^!I>F9Ym`-$UKl!yAUc1 zIuAD~L8_+#f6+@~l|FtryCs^TjVF6ZI-&Z&5CF zi$05SZXXwPKKsEmkoq37UlVe%ZgO(aIXK9zTW&}E1qX+lzO#+=8-mVV$}L|#WCIfN zvu}ocOVH`|tDFB6$c{?L#d^twLFZh|ebV2nAzPb}bA4y;2s#D05JbKMvR%GBt^a(; z_XeHp{iyrxh`*0A)?FqN%K-isbf!IlsFxu8pdCP&@%8*Mn0jGEX4+Fg{RD*SSWk6;wC_(+Jw_Zha@4r2rQ!21u$0JBqbr|Bs|;_sqV(< z5hh^)-FCQR9BSAjJq)bL# zA@5C0BBSU-H=t}V=kixPVMqlI17Mt|$TIRpA?K15SIJ_?mU~L9=mphCzcS=3EpyXv zhV1-AdXcXSIg@a0OKop}Y+oY%188o0Ysfhj`*!3h|8dBkO{5q3wvh8TT+JU%L;HLR z*_VF$G_lvR8}hN}uW&IY9~`C;%vce?zL3)sD;ZS^VYLrAa@?9&$3#KNOdQs1rV+B#7br#$t6ml9krd0v5t^QXB$vgwMR;J23cS`Uj$s8 zcLDW8d!$T~2HDqk_TpdNqVofwer%6SOuA9A)^efkjC{*2LS_kwJ#d)TU|}r-y4iMy zeD8u902t8@B-O$kjEj!{cm6m2pv{BmSg8-cqu)914L|?!L`cR^*=rfpE%5MqSUt{0I zC(Qs&1z@HJvZC|5Kt55~{nAaJ1WtmCoO_8zR;Hil;HtA<2s@V)xX3*~(NfRvkatIb zgngDH;Ib5fr-1qgk^Xh62DGAdOKz9~?6{t2#uqFTE{QG&>xxt=;DESR8?8I0e(Eh_QNc>CvOk=q-^1EopflW56E=@hUHcRm2-(k73Sz zzbcCf)%iGGOz}%>`y#GzdW>|UTVd3L;#+Xq?~Bh;T(k5T>kN9ul|KX7OTIjL<`9c( zV=Kgoq3PRy;?&_`ye@cr26Q?7V*|S34XjqDYYRSdABLM-w`$ z^|hra$LANY9H%5*g#}W^93Icp|lkFHdKKFQ#}lL<{`XvTMS*()pzl zqEiulmX}iXruOhd7=q5V1q&(=@Y^?eW~r6M<2uGqsVdbUs~bTI+mD zB;U$;4!oFkRpdw1Rw@~~5oNES5lj^xs$x%d#}brLRxlKrKp@lZ{Z0l?erqNEQL4)N8logHYt%!R%ws)$43jq_x5C_-KL3rrb;{f zFHkoW!tp*ply8>zwBb1_vurM=Iw)NNz=`carUdhq^Yj*c?1AiJUw$Qvk(Pp+Y532| zISp4};6@1V@Bvc0L^DnQ_fQaEN;_Gh>ruz}L5%N6cy;W#a&HuzoTd=>U#R$jYOY}x zW_+wkOFIbz4#->_B2oJ&HsfP`+IuIXnmr+__vHr?^3&2Xc0)cIvMIj&?u7cYob3ZF zYbivh`r<>!$8KjVM!^F}bTKgMQKmNIV~=wJE`1hfA0?7+xT+p4b4{{LM1Ct+GFT)o z^gOBii!Alq*#wL`AythyJM~qZ-Ka^D1xwu50C~*w6+;@Y;JGhy^Id3n8UG>8H>a? zi<$dCawO+FDj&ruCK6r~)Qd4w4Ims>`MqbN8D9#frJse6x)7;$G0Pw)XGvxduLRSo zv9MEWKcokJ#4l7VZz00_Lrx>E*Ekct4ghKQjGC$NxuE+(&iV^o&~J#2q9g`H9xStf z4gWjj+3p1Tcu*d z2&82jorAP~8%b3v9$8D-{dR1hFMGhwu0`Jd9l>h6`+D9-Z`3*HMRV7tD=iPH z9HpGem>ShP2>c62ppk7dOv;~2Ku5fSu0@o>ohXJw0Or+@w55aB&o za)$OX7Z;RsBNasYAT6&xN(BB)vS|1R72E*A| zqnrm@+#-#GY!c;?LE4>DAjclC!En`5#IN#XimhM=qj#VrkHlW&ch_Gb3t`;!U0r8x zt){g8=&DbwH#h_EBlTfd`K5Y&+I#UybFJ%=4SKl-HKn)3;NUN$95v=Qg^fF!kBEnRJc$}J5uvK zv6p?#_qWmfKo2h7jphe?{KwPGNZ3v~5=ql%#=dEzdA89Eam9Ar^rT|>Rc$K9t5_<= zn-Qpsk^u_G?AQno6pq_j1Yr~YB3YyuxGdT#9%*&q{ByH37U3L}hrlnynWbYlp#joLl|B45x3R0+w7fcnV_tN{rr(X6Hz~XSy9PK2z(fYgGe?Y&*C@#| z$Br=XTMj8q?5}tNPRmvHlAnx%dF^sCnKa&k!u=;`|9Yo+DZ`gMG7hLLa@1yg&Cf-N z_`cSPJ!L`R0cEf6WZHrZdxw;Wz(k4UHLsjZZolAVWBQHCz7by`8U3A?n-8>NT`}{7 zJJ>dtJzUP0WA5?$DY5oEX6I2TmswDLlY??Sr|fTfn{v%Y5@{c*{l7~SnU9=GY`fqS zCF_b^ZF5R2TzWI79gvw@s=M;&H4{T+g`UhYVqvNXm)Z8YxPGpg2d1I6id1i|1OLJF ziTkpW`&LX!fVws&nKe&Q-!^qUqy+hpxh0UBzU`Kv3?&FLVeHJwC`P4iPku>Rvle1) z-AX5?Ga**o3L+<0v^Ka3qLY2mpLi9URA&bNgl5@J z5o1lNoOxHHXmjizF2i3AkHz1`ygU;v)o{v#sPGeZuuH)D6k@-^iCM$1xk^GSTe0cy z;8dmTTZWkW_rg5%`}!x+`&WzEO(jasQ@^6P(OvckJfbc46!5Ezq+@L4OtjQpt56sD zSR*IKE5=zlE7_cL?Ay>Fx307-PKJ_H)*Et1X^LU-V4bh-S&MrzxbZo^nZKNY7Jqma zPS+w)F!v{I{#63e&CbtPwb}9czW!n& zLT^)X`8WCo3+j_LXyE&#`!9wXa+t zS!YO*7MmiKX`Fqng`A&Gi^}3TkHlzp63+u@F{! zwE14DaoaqC47@fM|Nm-pz6-G8!fFpSpSMx7rX`_9{QpbMi2z%1VYP>vz72`ew6-aY z`2UxhCMk`WUw|6!uJbB&WE(Z&|6gh*QOyNvb`jQQ@*kA}RgtTptefymcN3oJZf|eI zauUofh`&&gXnH_R2Z92P&-B6SCf-jM;!a;eR{i)mXC2tlaL!Y!x+&7XH|EI zxUuqQPo(yXoYdy=sm|gb(A8=EuphUyY^#s@CIl4i1x=KC2f$d&OJwxs+2y z+=~{U@0@zT&F(LN+|LB8nxfBajgZmuan_QJ5Q2h|kAAK&pY%A;4st58{C*w?EEy$cQgU7^jkn^8YMfq5|{BdAZn z0%+M4*J6#A9ZchBu>xs#+X$8f^M6Rf8h;tot;7*n&L@}ABI_1(djAzoyBYD@J(;Xb zE%|1e(kWOyAIo@cS<1DJvcqcB&SiGY_mxz3RX`OG@m9@>Vi%M?u-Pf zf8q3%kB&ZvTXstSptHSqz}mufux`Q%7>6mGk+%e$@sP{Ss|RGYo?OX2AliqS3=29_ zuTVzGH~=PjAj`$xer+Q$wB9X>)d=F1?UAPVau8%(fUgPnjUnPzv*WFIRM`il+YVp&Kk@NIxBv0 zHKn5yJK$)m=?rR`6LcQi=4z?~poO3|nr2}}NWmV2QTO5_6H74zfTKN7;(5clg}i+-CUjiJ;B!vA&1Go1pAAD!c&d6T>HEAcoIlh=0+OsVfNZhtI)w!{<|c zH6&8~O!zNaW^E6HY#ilMIDhzDQfeMP z)MCg^@Z^UKpVP;?O3njdy9Y`Pp9}wOcBZRaAp4sqKVj_#Cj?E62s@Z zcEe{6KF3Mnon}mZIHd3@ZpaI-wD7~9_SAq6Ri+erWdJ2`1qA_PSDJ&$2$T0tHTb*f_K@zfBx%}cWj-?EuiNy*;h*4rap*kyAK>svZ@-j^bg5&mx~e4qzNUi!G1UEhpAZ4!yCB4JujsHu}c zYWUtU2-Hg;H+=tT2sB8bDEuu-QqxZYWno%RsOc|(-eFo#sA-fyeK;qy*Jpf&sMBd`xPOzR0XLo**hU}2cn6KaM_sh5Xo zJ)vfV1XhM=J)!0>orUtQ4%2!<&FJ)e6mfl+))Q*Rq|_pCdYIM|YQ{z$g|-c0T2H7M zpYkdKXNPG$p=N4wF%+C1p1^8P&v_q`9bsBesF{)X1p>RnAO0DEBc(Xkg=syZ=BOkN zg?(YI5SST#0QuY*ruBrHSyHxxVOme9IXdz+6u8zCY8~kkC&Gnyh?@;G4Jp*YkOKc` zNjeBKOKBQXsDmK|Mz3NtPq@;qL|D_1LLCe#>_Qw5B_|Fb560_6kKG3t%qdU@86^~B z4MNkLLLJO0FwvWo$;r)R6;oH{00E;4MEpvG6oVm4)2Konj4CihP6{KVihfpXUk3=+ z2V&R4C7|&TfTmG}Iv7=8xyWE)iZo-PLNtsjFj~{7LLH1MuvvwDZvczHkYW%m!Evt7 zyaq5BRiJ>R7p5f+!D<>+sDn`jmWIZS6;Duc8C9G(96}gXpo%Yj72<1~9d&9NRj7ke z1r||=_u8~*a2aGUsz4d}HKesIO`{5RFsi`3Nw;B2D4N~&qEUr9*Qf$fB;zpMVE{T< z0RW6DP%{}i6g_S~(x^fmj4CkU^^{33NoO*MN`E8z17^6{zI@hQIk>mtP6jw>E`jq|v!KeZOWV0{;k;Q0Kq0Tj`KsiZ7+Q>DH zD%8QK0^3M9_v9ok?RGuqzw}F*0h=w?0BJ`|VOdTqou(D)7E9)2B1x3aN~dXsx(y;C zIZ0a)O)Jz*7KP+1X{&HJ72YK!B85qtRGOw0>R?)drR_!8A&tg3^uqISE>*OxP;UZZ z+E%Dfa%W=NR;Z6kAQWC%f`FDlBuv{1^)U&=!nCbWpDcmYaMvve#3hg!rfr3Ka}&u8 z)3!o=sz?gMui=5GK1~8e;ZJrWkQw6*wk+Hix54_X6prlPR;UIgOn>}z)aEUz47pjP zqEE7Z-CmLXG1qGjZQw9;u?q3#%IR5G|En#YyXwnE(uNl#{%L(^;8R;Yt*1-9Yw z1W1pIPc9U<+u6D4w5?EgpFqh9lgP``w5?DF+X{RWv(J~&hYn!3=nX``wgO-IkVD3# z7DW0zDtI`f08-!l4nW%qb+D~K06B3CKrT5`G}>0EgKY(tfn+&S2F&$y@)7UaR-lXoI<73| zSzJVQ#gx`wPGta)>*Y|uWr_@3ScrspCO3=|ArVlLoI6WQk{kax;++VYSH`cwDJeo; zkfg{1I6Lmy#Hb|3lSv{eLZ%MKJ)4-%qga^IEJH)rEUwDLEJH)LoDBL0j6r;9J|79h zEJH(CA(wGtmZ710CdXE2Au26q85+v7xr`RG3=I`|yduRcLqpF3UVLJfp`mYjJ@GWl z&`^`nO8-1`WJ7JnIQnUpp`k8w2K_Y4&`_Tt`e~M-p&|1m#?vfAL%)nO=zkW98~SH% zqyK5ttzme&d0OKD|{IFc<*jnP<_MusZ#=}fo(JVvbNaLqjhQ`Sz zEzL4CPBZb(qMaM(W&Of3&@4ma{Olw&UtG*GH1&x*h&y(eW*M5ybBh(GS%xO_+!6`z z#D&;2Kprkq!!*m#)GC48FwHVF4Us@mm}VK8hDx9;OtTD4!z9oX_lesa0yHd z(=0>NL1rdfuj*%FuA_y1MFJ> z8=Kl<>@(=Yy)>U8Cr(g@0&EnJ_A2gnS91%aE^A?MdXAreVo3Mu?s~V8DiX6+Gl84B7H-?7!#{I-G*4$XW$br>0=V*l6#do zjRfA>C7_BB>@%>X$wH&p%yP0c?K8B% zJ_8kynMRVhcS!OGw7@He(6oft#sOFXjv;upOf2*;$oj+a5VL5 z#D{60VQ@@d|6ptKQ3xcb@GY2YpJ8x3$mF}lK0{59_))aa;6&~~oD<>8F?qwr7eO+w zG4^Hzjv9xya3XKfOMVh3@(H|xCFzi0UHc5J6Vq9c5aY|Zg{gH@oR5T#ylyL_eTLS} z5>rO|46WxFKkYLN$(Md;ZN+$$lPz zWL`48&nv~!w9n8A`wSekWMew?$~2XxeTLSbMFFXr5(?Zh(mq2g>@)m-oV^Ep6jc{C zK6hp}cQ=!eB_ttXLkWZc(o29)6M9hr0jUy@j&udFAfh5&L8KQ^1jT|45G#tkV8M#7 z6}zv!cmL0G?#%24@cn<^x4+-cE$2Ds-g|DH+lFEC4kz(8O$)s&_xiQ~yl(*S2LRfT zh!_*W?=y76_Ziq8@!BU(a^*4b#`hU0hPOZ&?~yApr0It5Gtj$p#ws}QeFokNB~i07 z`F)0N*9e(+M0vh1F_*3t-|@b$A$490LEZ3u2HqfL!syKJGjzlE8F-nLNs#o+?t{0& zAKzzS*t}pWK{M^I)c=`(Dxhu`m1Xk#4BZ}({NW8$l0TNq?=y76_ZcYXM|#s@!miKn zGxTUI9QFBqh8|7Ct|Po=C>r6lQ&F+Y_ZfN?nL!-C&(Nz`wbsL^)$`EaX7c+CJ+G4> zc)63A&Z+^MmC5fj^lBqBUA*tfka$CsmC5fj^lFt!2d{wgw8!r=^xRyT+}i@*8`O0% z#Kn348l)FL9k~y*&>lQy%SRWKqvIw19r$q7y6K2-6$VjP~prM#=&LBEXGNd z`wR$>9s_ojFa_NIKVUc>I>LL520SNLULT|*+&C4D^cFjxQP1b|Qc}4bAL8J@@5Z9Y^O^>T1KvaN)Dd1S z5#m)MI>IYwLbC<^nV?CFMtH}Aj&LJnh{uPck^a^AJS0zEYEegsQF-bJeL_6&S0}<7 z5TcP?!p{RpXz}av$t`L+(y0hQp5D?C9<2&-&t2;^II}ezqv%>0b8u5sLABL`Y_kV5 z51uvgw+XXqeT?groa$-Kuzi>{PqhW96Upl@1bM>OB*)Xf0k@C`1|%!Qz;uKMbwcIv zj!HzL5guNuBi>PoVAQkobVW46!#z48CoOm&r;b=L(FpGl&#gow-$QIP!ow|f#2eWs zK7>RgJXsKp@YqK*!lN3|NHaXO_=kAhqK*gQIfOb9Zr#=L3^`{JZ9KT4KExAd(FnJw z>j+P+g?J7u8X+wzn$!_)g${AYcO9`t<*6gwn;+svcT7B>3PmF?$&=nX!nN-ZSL>sZ zM~BmcyC*_iPmc;sN4UHh;%YJ!B#6Bz{vj^DMuk>K^fo(lxNX(%9gzm$2aFgx{fdXB zb}AAMVJD9I7%bo7Z`VOJRZUn|Qz9VrPK`6>wHoFkTSG;Wp~yvMUp559@fSR9`h}d3 zR!{JFUo&`j_eqM}ra@(^YVA@hAvKh)imT8fgWC#%)jZo2Ao*_m{ zUU1k5wu5hfm^YhGH*|)zjx^TM2pi|!@)-xdb(Hcm4g(pF(z$paJq(K~T zTk@~1F-?fyyj$c84WTv|vHbJTf>M5=;Q=^`M)L~|c3aHOs?q#HLvL8SRVn2c8dkwt zTKdNMxG4d)1?Bug!|$-+3k{=})JFcJ4gF_9IlmTB1}lS+--27^YZ0fBY<>%FQ{3*uWKmKN8?881^wPC|=ukLm3O}O8tGNuWw4pt=whj=T0s{}Rbd5PELF{XUHqPfaIaFC-^{V;OsX)mX01R`Gpv}Sqvc~;8lDxdrGMJ!Jn z?mr<{EtEJTc6*%13`H!DBCPUaIz13O3DDy*hUq&lWA>|DlWMP!?pJk<+bg8|RdX+6 ztmZt$aETXABBfgqj+7qqi7Ih$A>Rm@WaVstDjx)-t;g6Sh~WG16;ezO?J*g?MD4jI}eAnK491qYUiNj8-6PfR?@~6d3CFRy-M2HPR2R9fSpR( zIN9pVYLn9wtyXIY`gMsBi*DBwKM=lB1g0ewA6$JWJCIp?a!WAy9|M$q4j!V9#(-MI zB&Wv^W?6FZ%o+OhjEkTezNZ}^vnSF7N9!aW>angMqEwNe@%5VMSrN3%iZJE!D%qfcFTuxt3lEX8i82a_`W-doFPIm5GHM1gQl>zLu(5OH zIjgg7GeorD@>5%S15>dAr7x)I)k3L2=?hAX6P1z2u4*nZtcelMJrwaTmGRtqruGdr zmGRup#@XLg#`EG{Ti*SJN~oJx24k9BZUuf6a_u+qkOXf){`BCX%#0%E6xjn@%z$4i zSJodeuRsyzFEN%$I|r#387QmIQWnZ;4lkr^2+E4Z2Jf+9%-ajTCsz7#s@5ZDXULn& z8&=N*%ASgcM5+%8*m*39;YD@(u>mNgl);X&u7-K07X~s}ern5h_{Ky8;#3X?$a1HY!Z?U$Tr*ZUCC1&~ z%H?r@D@ojnhveEih#F@O1v^wwS1h2G)a5pfSiq?<^W*UOa?u3U#lC5DDzv?!i3{s0J zviYZI?qT-u0!(yqQ{WpDe%8~aXe#Hy$G!>=5%xEPNePLrtnEk%A;*n%lyw)(d{5pf zK>`lJHzp#G;DvB7!Hs92QhxwPme(pKa`JEZN=~ko5;DmoFc!*}TccRwd5v6k40|6& z8u%M*3@Eo9e1-SnWZs6MS^+Pw&KU;OHG2$GB4cCw;HA?fWr&xHZQ!G5gY31;yq=68S>h%Hb1F<}< zDJlO{v^KQh{1uol=v&ovHvKUt;9#KAoaa4xAcMbzB6#FZ6v3X#C}M2P^jc8FYe>}7 zK)mJg)iCVHs@MELO=dkt7du;^t-fNUQv<(Upo&EDVAR%c&m`e0}5H9ZtION*UbS0By@&N9x#ywgl57JtwT+_D<^@8hfHReUY z^&tG$MJA|3wzPt;HARsVU~I^pAdxbJA7jz zaP`pG4mj-9{bP5E*~@CoJCO5cV~z9*!;naE5qu@Z^CUBn!GqdkZQjFqiAHJ%04IYj zcT7vRUl4CK=Ix&|L73~o(MrfqZJF#*H~mq<-Md?nSUwZu!nUgTYS_^$J?rv_2%bv!ngmuQ~}UwbkhLEa_0ib7$jiNjW) z@A9&0Kp=1}d}G4Tu7bDv?|_fJACI7`ND@Z)St-go3e)n0p(&T2+HwrOG2v$m%9}vd zd1yR7F?6WS!_|OqQi{F)p)8aYwDFgtHg^Q-w(AW~qS5K&^A0uGc0?Fma1nQZvR zgpD#9LQ%!=u{+~&;tfY4H7ZicH*GzJF)$B!-C;uN{FAcBL^Q*BDUMUXz}VaH5UH$t zL55g`6ma!r%6b&$C)-5rRxe{9x1WV?O!z76scM$>CVcE~@CbyV!JKD>i|l;4*}9M{ zzu|yJCfbAP3ydUGO8KcRb>SPM3}^L$1+fpra_0gohsz7yK%45dRf$2!X!uHTZBUMo z(HgzVm5|oexzr%T(Z8Uk1pv+c&;;_cF%bI|^O9Jd)i*Eb-VJS4sJ?9BVg$PLYT{4> z&;8(n?w3>cDb=_{Xs<5arv`AjCDf?znC6+vI)Xqx$KU4UKTfjYsgB`MN351$eug^@ z!3suMutjlG90HNM88BT5Io05<AoGZjk+#)71tPrsuwWdoYl;8 zu1vKB?1c{u^S~hEx+gQUVQI{ju5s`^;9-#t`Kc|le5_YKtX!_5Er73e4IYw0l9EzL zmbJ*~eK41J0?|@<0w0ENjQk9^kXQ?)-~*U_JZ#4R`$aM~mn(a}5?^#-QoudGV4>4R zT+-`#^%^KaH)Hv7zI53fNwiBUPL0?c(b9h>34wIb$Cpe^@c0p#pRC6_fl zi$c-aKH($nTajG6e(}I|-pFSCCPMZM9l9L8dArko0IBXCWKV`QGnRLo&Q^Fmy`v{+ zw^w-=(uZw`!oH^p{n0ew(%HPBEhbWiK$ohrmY|QXQ5$sSt%3gI9!3Q6c4bNT?e4_; zW8O`fln_~_7+|dCL8w3PZoTUUyrRN?KK}OC2u_l2)m+&c<=B$ap5UOd#=gzc|+>t zgNE;y;+ay1vis+5fDT))-UK_YM;sqVFLW)`06_pn^OaqzNR88d`U) z1Mb#JubhvmGH8DRNLTx0Nr`$#V!9V9$t%T&b(-Ow8G!pLg2-!-tv_4@BtE#?Wup;! z1ju72qOI0LhXIJIZZD~7a_A3$QlMvvni1CI8r0*w;Y#D;2&*1w>PtjaXhzLVZtVxa zSf%%*V0+rh0B$1yrYgO31;+USK;kQT(BvqUiI3>cfHs!}0I~65<-CW2oHwf50hU;U z#&>n!x)l9pfEF7cRt~Sy&Kn*11vSt^FHyQ3bofbtmNf8zoA4O;3W(Df{h&G}rBC#p z{%tk@tChZ@Ga4Th<9Y;1?D?>2XRxN@zQuP}V>|;|Py9_Ksf^sVYLBc8`t?euLC#3f z<_7dYNRm2hzdarBol1X`jv+3fn@@yW(Q^>lygSeULFei&Anx^1R$HMRz%AKm!_{H< zzvYI-ER;883>{f|3s2Z;-zsm(6^Po4$YNn2N>@r zIUXu{GSDxTehG7Muad>| zv~{fu;WZS9NdbzQPDb^`_k$?w5+JS$Pz=mNO@U|LYFq!Z7+yERafgpG-J8R2@8oT? zb+1B9&64jK0ABS$O0w2~9dJbPl9p{0nM9`<>Z!{p4)_~rI zq}x1DTL8KSAW@S6#qk-Jtsdws044<>s>*VBXMG;NqjNn9hE)2?09fLKJUTAc`FyTd z;co!#X40hvE#aN^d3_vx`gV{15NJ;a{DyvpqmRw-_>Y11S-_w323wc2n_bc#I&%t9 z7xHii&P|sajLL|j5yfB9ZsqVZJb7b^FHeBSIl3E$Im9U5l-Pw}iJ8N%@Z?Q%bVfB# z*htXMCY_zAW$1GqeGi&Y;lCKP%M$!AfiG`?qc`{UV!j2m8xr(Gh(+FFN4G*7CJo?& zpdCuk>o75^9Q`NSb&>xzXvY$CeuXD*qobcc-J}0W8u}?O{`}ZL-VKi4KN@uQFZrO= zPSE*f_q>}Oy%FIHy#r`n5_Ddem3OAPcj{YMPvgg5n32DIq z!}Pue^)$X^)CZ_-KfTZdU-nK@j<^Z%@U170&y>(JOj+QFsruk4cv- zit;NwdA~V&F7j3V0sj;?ISN*EYZ?ImIC|>U0OW&M+XqFG9;3-s0Q@N4=1qG{pebW}tVG zBT$i5g75R>bqHy$lZe!Vpg&tts$d3$^lz0sIUj=lbwxQ2zt595CZx~r>VYCicqRNj zMGAdtNY5PX1ymojCZwCP&izn%=i~D?D9cQh>IK^A34Wnp7Sc_iM~Ubp(55H&c|%p+ zs*s+y%WEo@fVRfx_nI#OZ4BvRbluW?-44Kk0A!jk0o@SNmkjklM*w&y0GZ}XKzD@n zoGcIY3jyeJjc!fL^dp+nvN;`ST z&w=_eKuU_E{D@Ir_pq)u138$A@{*0eQHha~IT?UKVLf__C#5L>?E;WdiGaq1wRMLF z8U#Rj05W}pfG!H_yuKcYU-P~y08vu1-UPlptY5^ujA-L#Ko11)B)ti8b68)D(XAkl z0QF7H)xr z03?lbl1zc0nxeDO%Se|u2hc?o;Yorgrf6q?7y5NT-4P%~rct`cyd*`BUF9L40qVmO zk;zIGp0z2u)i#gkFW@s{6||6~S%Kf2qQ~9r!5abE;Y7IQ2=b8>{o5Q5c_vWjR74)H zk0UAis-2!b76H08fYau^iamV>6g{;D6>2;0O@|{x>)w03P#y&E`G8FV;KMS=+FGAl z#|z*SpuP)`48Q{wYyI6U59DH$6vy9G0EvYlqnEK`?xpqqX^2>JAlmpS%jvTiv@u$r zs!%)OYyoC(ChvMp5XSvS*3LjdIw>=4@|F|gfS@tC9vIE z*S^%_`HFb-QYM9g!pys$Ny?+p+D#rjAJEn(fhT391o4X2ANKZm`U5{c;0ctNocvF< z{^TqVz5vjTCxIWIiodiTgSJRgeh=_Z{|k?&sLY72gBC^L#{m8FB=F-?(Kn(){XL$X zD!3yC|Ko~+d0Uh>Nu#YZBYIF5kEajt<4(dON#VmUED=2nFp1kGuxvO9PvULZgflgw zhY$C7?gsw(lkiBZ!-p5nqDXe#8XnIl!2c2O1V|;VPU|@%P=;T`XP3asXl0?7Y=Zys z#U!Dz);(G5Uy0~OU?odWz{i|~C6SMd|AMf06J?=0r0bkz6ZG> zLEZ?|eMEBXVe&xy`LLqARy*(eh|Y&Yy$Hu!gvywSF|(X;DFFN#(dV6qjsf|gegxom zg3MTk-vZ2wMD-h}=0eZP#)2CD9{t))pvR+n&~h_jq*{U2Ez zKz$k@*_nHxzrx6#AJxxI@{lSA+xqc0%1sJgkQ<|VFS1%>HUz3PKn9^F3%)6;f34-g zhXXq0M7ZUM-~&Z)kZ%IT zk2RZQ9UobN{}R=ed@X2n_f_#f4sJPubW`;oP^Lt-IZ$N*GAXiEE<|LjrRoN^ddLw# zof9CFA}h#_srqjJMQIUGn*!wVkrjB~RQ=zjp5VQJK7JzHas*kPs=4i7BKs~-UkAvf z$PSDnveQy^4U7l{8GPYe>R3`_1-U9!htSRmvISJkeb2|K$}0u}-YEAYWoJ^e}#xeur(0%THT1$iu0cR`gEnePGhV}Lwf zvjYD%RX^?vu9SzV5B!fyo8<`7cJ-sBp5V4X^$L(lk^OQUBAe;z#w##E!Y1i#pk@b1 zi4`A~^8<=hUR_t;z06ECsue)350Ffj2fEDF6Bc-&y8w7H00rW_4pwAtadrL;9{hbk z|M?fVWSN(5!nnuPkI(iP^HBE+@lUA2i_DX*{?wP=34nnCC=nSd+Jk@K>MKTiGN%E$ z_+Q{A9yMbRq3wM^*D6ugjX>UqfA}9X(ClWAnLMQHee?&ouyEDYhO z&2;2x747f~R>=UL@3WjF5UV!RKy){>Set>o)kmKs04qELm6j#0UHmGvS}kGWH!Nk1 zO|!_A?L-fn8y}|J#WgXltopRE;he21*<17RGV^B{FtgsOj?wNMRbwwEx~0OjFtpRq0=U5t;;RKlnL-X%Us4JCc7ur5?~4*mLRgDRqb-$cJ_MHdMs;N|pH*bcwfz%iF=ZN>zHMo`?S(cneCfFD5+t3kLV`YgF1Xdgb6z zK+9#6NAXs4>}mk6RcYV0fPWhhyBr6&xHbUmR9cN%01O3jY(;>x@B#ofDSgX&FADPk zSV<70kQ8@k5%M#BovM@$e@PrK7ros_TF#gapzl+<80GQ+YOMVfXopE>gso_G^g;3a zlx~bf+aJRJYoDeFx17T$HP|Vrxvg^v1CL;+SP6e4z|bF8`j<2D%|6oWgVuy}(N>pp z`hovxrR&ZEO?3yMZ@?TCB32X{LQ`rC{HOXfQ)CSH5qz|2Be^dJ^{N1Il_Wq!yr%RW zgMqja#Jv>&iX{j0@{GlMN;gLtR?hF z2mqB)W%BViS#KmvVK`qaeR~f8T7cNm2bkITj7@1^>JpxF9q4C(Hq@tE(dMW&@t>5Q z$d||I@INo0rIinwY2~a%>%;n6UWz2?=TTbAy4=C~TiC<{ zCKl##FY;TqsU4Tux?Xp$0DXf{Rq(K?a@j22+itWJ4Tdu1ZLzI?+~&cn){kCDso@l)+MtAL71I9Sc-?7(#ZsKXU`b|Em2@qwlYv8$a+j1+5EXQx||{K1hkW zWU(hcz|mhX@IZY47#x5^V+MpT1MI!X1I+;7!T?0A;RTM>Z;qpX$2^l-1>*JqAZ3C1 z>Y=td`Y0o`ABaZ-l!$Sz-2^c=I=Tc!ie*gw2Y?RxRYPb$JNoh4 zytvl|tzm-Bg{U|dNm2%T^zNYbP0+az6_14UN3A^h<3T$oLFYnLymCliIm@Fj0&RJM z&V`nEJfv6l@fKQkf_7_y&V{OYt&m;>`BFlj0PVR1oeNR%x*OBes4(sg-WeT;osM%8PyoTgCYGzV*tj0I5hwm>6}oF zzZKGNi~)dO-Cp7YtZdFD=Z_E1z0s>z*MoGIPc}W6q(LT~ZwCwadC>?zY_Rez&=tD zABgtwylpJMuL_UI2mWRJitV(5k>u z1Ah}aqd5ZNM^kj~3jk;ZN9O=wlvW-28@IKdg0@Kw262QBu%hpr2I-%uaIJ2j&4T~= z30f=+KCD9I^+JFv;lI_VnSqdrd*h)%b<%qJ-9X&~#KRR(R>qbx1o2Av@im~o0@}M3 z>CxBFOXt^B;fv9x**}69It3QCCdt7JEJZM9V}+$Hh}D2-8la?)3m#UK8<*l2Vd5WS z6uUcM{VPDN=;;c8Bn%}kHr)S_tQTX_EuL= z7o95iPeTfUE5*MD{`QRISm+UkItr9=0aao_A(DPtn0}B`_;H#Ve^;ZI=3syJLnvO= zACIQbJ{NVTdS+^R*04#4T+LHcp8$CR9W_sFcs8<4Jxuvu8e!XEKX>*J5c?GqsI2qq zAc3lCpVaeySq69Zu+*&Cm|IfW<*9!I(C7m^kOA*kCUITVVDN_Qd}mQcY`_ewEWxYvuh(!E#AtK7q4UhRG; z=4!VR>SU)bA4ZgfY9xyijy%+2ogVs3R0iMie7x#Cd44)<3vce>$A>E7k$ zig}Y;BIeERFfn(#7l?VQyGqR4+&btLY}JzptTC<-H|R&^kkiaajfbM+Ms~GhWy#wq*rII{;Lb#@0i4CpwA01 z5{AKCs1GdlFsnh|5@1A5#+|o7&O-g|bjY|1v59Qx zSIdXW>#T}3&G!b>KLhY5L879$AC!TAqaKXyPh3fQhmp0^g`%&OHxC258n&u_5u~*5bO{=nGeFGx5|^hbH6nE(923Mbs?zS+ z;JOeV_D;sp(j#H-dc_?0o?UGL41%+^%?4-2th6WKSgkhv2iF74iB4LptnlV9kd^C! z4jzbJVX4~}jd-YVrTaOgh6=BC|G1pyDmU{AnycNWVqW9+7jum}Rm^MMC1S31ZxnN# z`>2@f-D6^IaDNkXqnombayGe*#oX);6myF^Q_QXI7BRQE2gKa&z9{Am?ssDDa5JwY z|BY@FF?YFx#oX;)DCTYMb}{$3Pl$P^`+=BuyJ|7{?s032x!3I|=010*nETyx#k|+O zO3VZ9ZZYq3&qo&;D!kuaDdq$2?P5OY9v1T<_bV|UcJojGLxl(3R$@Nto+;*I?rbq1 zcX>-vsPGB*9xlXO0r{Wp}=3ZV~f{`+#S@2eYuyRXNTITGCWbO|hh_oKmsG zRVAjSu&{=zL}eEi7N|ml40{7r$*`ZIDv`bEIoF_w)vc}4oMKFX za;lEuBWH3k?p5f3Y`3PwV83snJU<~4~U$Ir6rHdXq|U8dH}CIhjCVdT{F zthz0g{(7PzudYZ==ZZ|-_Dav`YgSM8lRk~?@{mdCbneNli_QP{W0Xaomwk|x{^~lA z1}gm$Dgrrv_DM3IZQ_u=ryoFLls<|<#kl~*AxF`Y90*5cbtfzRXbl4@JsC(;GfU|& zHW<+O03@?_REU)xqmC|6df)X%f0q(;0fMvgF2%EMT~)wM_nQ9c^XY?w0*CIfEPC8d zu;@B{Gb(jmoC;VDIUG>l>9W#886d`IMI+o4meR>H5m#^$nyiC%Zh7@_N70^=y;Z5BVT3uQ8pUsxgrQwqriY zZiShW@XE1rqJhMVYP2FEGRtOa}a~+PyikiC_VzzMOVzzP{V^|O>Dt1f6 zZ0&XzvyD4I%o6u7(h@3a=N=Waz5B749o+B4?BwngTxWNsm}Tx(@$cg97PG6nPt0!a zqhj`O&k|fuce0qh+&NLrjYBRJRo$0Q{`(Ljkt!g z&)q5J1@41lUgAC@=H>3&VqW2XFXkdQeGTO;c58{b#BD3)a(9%NE8TO%yxLs|v+2NW zBsp`5O5-l9ybWJtFXk$h&h_E+zK7s=KN&C277O6GEvPW@;S z^SD%!d7VmU1vKo>;P4GfKH0y+Kfx{^`L^=T!-y?&qe?GFac{yeVrOE#?LHuDB02_5 zUK3(E=TtL)!-63)n{jAI&;y8(m3{!q%(QKNKk6>yGB_aR@x?iFrAlX?nCJF_V~tAZ zns#2jEpY5n5vD+vzi6>q?z|PJB^xw#FKF)_1Z&W`8u7~AUtn1c+GVbRaC0uRL2<6M zHg45)P}*0y9h6AT5E{n@ohoC`z8W51@@t{hBe%kHlk*9z( zGa#pxcb7GMOEdS|b5zs5=1kPbS!lvf=~vJdA?PK5Py3=0)U~-<)_rhX@F5*rt7Q%0 zV;6j^A*5}Dt>b@M;W$YLoETRR4?}Dlj<8*IG2Br)8>|u#ZOt_XrJ91;&PS;B6tPCJo;Mt4r|*Ui%iyKdnShL`2)nTB zZlEUF@wd?oUHD5D9Fy%Vc7~RI4)MVu|1;cy;0`q!==KzIkQu}`8tIM~_jvbGF(i8u_s%x&w`1lk7(GGj`rKN$J7qozL)?>R zz}-1>91OZsYzn@+4&&6dJO#8aRffa3oV00_yRQz@*|i!9WNz0g*)XmncFJJ5yHyzv zL)@(Hx!tRL34`vn>Q5B0+&+0!b5^r=kwIDIX{|et%SI^~#V9Mw8Us?37O5k^If0HQE$ZHnc?mTL9`@VF9%L_rI=3%! zsY$D*1S))i`27|zn@&iT{xp<@W<#>xU|u&H>bZw` z=5R4DI(i@Ehb~9P7Wa;Q1>U+v`w?W_XAeSr-K`^VX?NWte_+Ey-67?;w4iRk;dphl zMqGz9HgAw#UJ8ZOxD!oIynh-$p6!0O31i?ha=&E6-40FR7$}ZNZ@y#4&(z-xK}7{p zeGiB{teOKMCO%9*I14L)AeG~9Q-TT}R?TWLV9wIB5b(L6U*Kb`nvbK&i;vbnY{&Ex zd^h+M;kGXRd??6cb*n9wb+b=GntwxD=RXhD-1x+_Ms(o=A84=QQ>w64jMXG9K27%@ zfVBYdeL>z|nJhz@r8}UZ`5V4b#9k=sZz0QWh=qC|TA=D6)jy6b`x(~iHK*b%07zYY zvNiXtdl2Hb-0k(TlM0fYApr>ud-yEq14D~%;n^#9x&@a%w0LzR982JT6&b!n?Ffbz zAD#lz4tVeJN$Pvj{h`H6aQuqDQcnZ$N=1-Av^Z@v03Z1@e`vwHZ`uyEO1j`b%h0a+ zU2qH%gD$u&YMcXVGyK)x466%li7uFOG>Iqgf*(#b?B`WrS9JbM7hL&VEd2y%25mwN zy5Q_M)DG{5ND8fkpr8vrGi)OIWU8pXO%{ zpIAo=j51wfe zW|Ar0Ws}t{0XnAaDo-hEO){w4!8+*O;nR5qqmbZH;+8VOV63d)1}Q7o8IU%yHypcL z(J{2r89mVEr@V&tWq9fk*e&K!3p@ie4Nv1dJn767Ey0r^9cFTUezkZ0R}O+gj~q|ZsR^eqS^ zg>9;HW^~FNM0^TLX|6NBQnQ{|P?3Z+BF3sof^(_ewW+dJLCQKx`bL5m$|AeqeN<2Q z?(-??_XK%`oq4vho&kxU`4&cHp-=JTuCi;O>;DX-9|Cepf_$yr5S_9{l&a!yxJfo5 zrcXxHs{e#JLZ9dr{*<9VBVmKGHzQ%132Hr&DXokxk)v=AF$4^U=V)?eGB88VR(krq zIDCT0UjWhqlB<&}Z*)#2l|!{?`nTqOCMQqnov#|;E%3ZEU>JM!KOk3E`jrW&noq+2 zdD0}T+Csx6B!9etwNQ9}>627_24?8>ls=2Rcq>c8Us%mnS3_^4bdy@jDgdo{1-cPp zBG6pvDbSAU3B(xzs!1Z0Vx^z^(Xu9jHann;`b{WpF)5a>ti_0M8v{0h=pZHEM>lBH7va-$g?@LFEqsHr&;UBvAbieD!&X)5=@!*Ml9zrD+6m_nre3Ei>mRUn z=mS<-k{+$7e_4Rfle(~8HDx`}#2NvZfmrt!jvs(;{=W&3_@sAWmSAe~HdJK7Z~7Ow z)rI#|IoQm*{1=3-9tQ4l{OxuuaczZ&slw-apj^KN|Bro|>P~>{M0IXb)mY1vCe`r# zf!)D0N_{v5`7ua8@7(W;7R%u0DYRT4#vrBGj+bO_3Z$u>L4}_ z08$*7s~)PVqu)YfuDSwodVmr!vf0$xt~x$|?m@|BQm4M7pXjIrspbNHvCm>QV>>q} z9hn!Pn`476G(wQN5szDl9?QUGYpH`9RQjQ}XSnKdJf0<8YJs75#irY~9{)$6eL=eL z%hprpM%Aon2t(r)D9)*le)JOqQkkdYr4oN5O}3soJ5+JQ1bVQeoouvV0I5FMO*X1}XS^@#mDEvj$h# zpaGQpt_50Ag3f7BXM>~T?L2xZXgvbD++O1Ba&*of7J&j`pt*L)qBsY*Q`fO3~##CQc0ZU7#l*QZ>h;!*ML! z-RfMY+FX`ksU6Z6d|{Ak9N;s^!U%eLxVJx2*f6BO{2cy^KwMQ3z*|h5GHgH{niP`UaR#GieD*=?J8S@@lp*Dz(AfnhWLM$6LrNQsm^v<~hQ`3!>zX>>|} z>Rk~j!5L&ctiQHBnPY)Ew<1y+NrP+^*1INo$dy3dP!XAEbmdkDXH8i5eb!780|36O08&hr*>CGS5!OFrc&hY3EJxsP(#;ll5`*cyAGWk3fwa$4ZMX!&0$i6_0 zI2rQ62$0x3I~XQoVb1|-5s^WIV6LDTe#=lGKT6RpI(W!kKqZaChX0rC?^h}M7O(NM z4-s&lDEZpD6WFT#IZ>zJ%5YR z|2&WEy$%Q-dXu>UI?UXFNrvRM%ndj-M_@quLD(LGdp4Om`v|a~;xE(ooUAu2QZ|AK zd@Ez{UgYmI{mEgJX%{1&9Q-9LI+DYZV1hRo*)+>hGuG=7TFY|=;iEEGrz^myKrU>= zI-Rs${yJTIh&%Z@-C$6Hb-J5z)#>H%ScAWPA+k}?ricmF=|rx-PM7x?BEAn~e&Jg< zf_1use=CcO>Qy}6BKcC53xAz1btR@>Nd5tj-vY9~PFMDZN6ti&a`89ZT&Lr(-O_Bc z+W-6!9@U?~WX4;#30h^}opwH;DIK;WoV}-T_h`zm#jx*hD2wZStIEE&A?JZocwi*^ zKtt*^T#R9eOb%sjZHilVt4>H;2QinJm5i#B((3-fo&=%PtHDqnN_&~1h~!6;Bp+%> z-5AM_HQee;rl*xP`7E$jEl>M4N%9yYndEhMAq2#~%}_}A|A{}>r2Y8+bF~+LdRk3) z;niAI-xp3B2|0QD@S0S8e>j_qxl(qx?r&wCx{zT#l(r)X>tK?uDyE35y?%8l0d5t@CGF;b}F!={X|TJ8AzVlEEgBpdKJ~tCJQT z1}cRmQ&*rms?2ljw0fjcK+^kr)9l6Mbs}l3QzpHkNEPO#L`5>SEaksAS)Q&#?(z}n zg|^;=7vj`VWue*8k_X_d9@1^!f}{nIvIu|sYeu}S&rhqobr>k4h_gGF#2GTvG4}Rfi&&9(1Z<001M8lf*%E`jn6!`H-jixd1GzC@Ik5-~Z39_#J4zz6CsW;NE;G2qh)4yp( zwiMTbT>|Ahs@3%SZvoFaSEcbv_4K9pqy5Ew0QFq6GTZ^4L0wbQBFjU{bf;~2o8n+X zbvlZ<1F?mRUV%o@9$M{hZx4YDZ^5L(Z7N)OnHdIO4uL_EWe=~FUh_jroE={JIYy9ZJLXXQni=MD ziNyU;N>r175vpAF;qbeYmG##U4EqUw0Ygi+ttyVNuLqm_`k}QW+?XQ-#g)#P)8_W34`>z!0@PL*rtaug_3fZcN7DZ>Jy@F zG4z_g?``Zc*y4n5I;e!}WpDL-{nyPM>GwVel|Sr+>ti%Uy`JW?(GjqP>tJ$9W>HV3 z`~3Q2p@%2K_v9;y;vC30SrpSJU>KV7oeEFeWeVeM0z^IkpIXY#ydO&}Gs91NMfg)j zk#&q*;qjQ1yl|{no}^GIahe+PSS^gg4u?N_T3PRo!0W&maInUSeqY;dArq&fGGujC z;X@x94fG@CD`iU2|DgubBWRhknyWA_8y7WR>kFx%{h%zH7DU<-QK%H*-p{{_^9~Eb zJ=Q7f0QpaH=E3OVy6~?b7!7_+oL^x6O&3=Fv#GXKxledI?)YaY|~xRcTw8V}(~Km6>2l1{PN68@}>P+q&goh0LbEqMwys zTmv668lDk;`d*_P7sVp{>b@i)G9xc}FAol(t^6`{BW}0w=zq*RU=wl$t(43SEV%s- zK$?Z8Vk;J3%8nyjo7F>?V0JD?x$F!tkgsIqsR!^L2!S05QI-NBqDR(FHlyMFZ5SCm31?S_uy}*ZbR~f+-esZiz?sR2b3*+?yDfb zhkua$2Frw5VHA5S%+xJ-6J2_hpTn_JY^f#z#R$cTucuveGVD$Fl}oYps^CNS8!%adW}6XUtex9#0(L`mZ-Pxx{q>PJ{C-3Xe#hVb4DT`?X`r5S z4oDf}(Iet7B=v*PyODL6eu;{23R*j#ZWbuyLnE=y)ug+~=45Sbr0#cx!Ku*zpF@V< zAWP9^$+ge1vTA&jQu2L{SgF~JYPd)1o#$HCJV4bpJaz}%v{`b^bgWA?z8k6RzK0Op z1pR$iFSr*0d5;WCnxai{f3JBHk99QbR~g*x8#`Y=g*RHIpqJ)&Q5y+I7=A7GlEqw&4%vxClM&$05K=`@Kobz*6?EfowS#7PXX(*zqRf|-9 z{2>JM`4VHU^vu6KlY5jK&4$Cue{UoX=8dUxNpm3EViOo5VD_K)uD1Y`ag|@r#r;S0 zO*Ad_8eId@#CU%M${Jelj&*QPi9eg?xzAV(_q6zMcnf{b47g{;?<(}%M~A|FZoJR! z#w{mgTeU0Z)@R)bahH7$t=boJ2XzWJKDX*nd^U(FTu5xyvG^eUIU~@jwD{3AuyYE% zRax;9RQ9e<&jk*9fktm(8UKw7=G z$CkJ>1SOkD)eetRvJ_C9EFh=Xa#~~yTHYRU$;^MyY!jp=;W0fxo43REj^64*`K(w= zK)Z@`iJYP1D*&aS%ZEU22JIf7p8WRM)6wftXhq0j0ABGy-rM8pj$Vn^5E1efXutY& zPl&vm4RmykMP9mixTQM&k}gG?_x4!BY0E*P_x3o%(d&^X5^i^Z`jdr`H!P04mEzL^ zM+&^arvNaAAnMBl$=hSOqkn*0k#scxn~swt@1bKIJ*b-}X)gc=kCP-*0a#eeMhnOn z2gPk<@A)9pC$LaRPleV3<&-KZ+lp3Cicj;YNySG-vx(wUH46eynS%O{zx@&lOrrRd zpvO@?;6K2pDS6QdiqFal#b;Q=Ak_tcFCfd?6c-eqg%yg=vh4<>ZUXZ5038&c2Q#qD z%kujaXopFc$OXmcSVwGjhZ5AMpndPtk1IY!Xh1{=Klh!9zb8Z{Cs2Hz9^naT1X>%P zeq8Z68uijO0DzGMFUD0|0*?C&@29q2Aa_&xq$Day9Tb*&{;=7K)_eL%n9D zq8(E$$ED2&wEFrM=yfMbhh1Ho`YEO(KLzhEEzdFjW#zC>O?2vEb|G0)86?C!{{JfG zZ|ObwX=I9Vr~N<1<`)sOX#mBvNjrmLypam;LGb%BvH!2WOs+P_x*uaairJVX<{Ko} z7bEunB}SV1EICRDG29RD$7WYjY{dS*#9YTjT{NZ^s(gq$&{q> zSk`?Ht-5V#hOt$BSr?$<>IB&>)mflp6m=yM(|V+X}gf0q&xS_?UbG*Fk9f;1T3 zqkWP}6}mTydZQ=kb3nV)r&k~fN(emAB*mC;G}pc|I(E`13}6Z#d%(e^$)#+}`k~(GJh;4S%k}SVV?H z-tea>dUv}0;SaZ+>yC)KKeS23_{ksI#9+@Fc_tHhex;=Zc|)6z!6ic*?)6UImVOJw zv*`VSIaa^uop~qx_JR8W{Ougb42s^Sjv&1R@BjEDl`nL!=%pd1>RZtM@aYwc9`}<6 zMQ_m(gHr_vyb=C(eUfPlie3}?_(iW(f_t=H+yMJ@09EC9ObNJY3yNMlVepFH4d|N~ zEwu`e?POrm6m9>b=xx{l@*!Z31RNrSY(deRGTKN~|Ap^&1TrN_8rLjsS)qoIg(Am| zzVa2XrP;W-WzRUPWeS|cUxR0fjm47oaO|8U-T}BS=J=_$}s>wf})p) zfo}51`^sxPw^#HobUe3L^p>L;N-lcU+ZeY$(B=mG#3uTdFJgL%MQ6)-e);IH7qo)k zw}{Tq_}d?@M{N97>-+{Fxv0oF_zOvWEp)HwO!*CoXb4(spI))($mE9KYK_0g;M7Qf zCz4?y^NF^g=*T>aUvy+9-GBGHqB<_E0aR_mgD--Ho3^0n@by1<_q%w%7u<7z{D%xo znxgH06rDrwg8UaS>ClkjVA_N&C_4FH7>TL~phg5TB~}Kvy~ozumt!VD@eALB@egKW zjWBA&%HY=b*eZMEQKpEc^30Zw&9uOB%yV4kX6#zeSN*UqjrF_}eSCLO;PP zU^7e+tJJw@Gw>Ih;zEeGfQVPXF+&g?vw(sMbctLrh93aBOwQd3+J2vY+!%h?R!osm$V&jc z?t>DqfJd;;K!kh?+8;jsxG{WWxiaa>KHsvqJSOQn$elKe6JsShhl z*0J6OfGd7p_H@{e+Me%}bR2@fWkk;+5=>oMnsF@C&w7Pv>V-*#iA_|}e1i2WM6^d~ zE5qO3gVZDnQ$}YLrXlb@+o!4f2nb#XA7J=FVfvz*5~NxN_$sm-6trKM?hv$Jn8siW z6hZ0$9uEiTpfJ^|udHXO+&4jcmvo6-P?*-&!(1!8)vtIs7{&_yxWaVV08dDD0P6Ul zL}6O<4OB!S9YO2m(~m1m^{@w>8c=5gFpVIlOVO4nOgkiTvKo!Tv;%YM68W_NZ6^yO zZ&-rDwCpu6@cRLHf}n)l;DvCijBqvLwGSz5AypDTJKPz&}}%Uzon1s4Qlm zY5+h}A7n*;tz=_S*NGl`0l9rT{DY)MV@pN?-1TcdasU{ht9?Mamvr4UIi} zhe(8%2}UBk*smy}x2}Uf-wxs52tF#p?TI)Bkc&5+qL97;big*yi0Pr|_KH->hXM&} zbkCaaa@VO)c=Gh~EPX2+MUikAanzg~haFaMhMy^b5ekpQuwV1^dXXJV#|X116f4=p zz_%mt@@E-?Sm@3S7?IFE8lg}>1U6#EB(#5R-P%y|c2%ogE^olI8;Ad9Keh4bN2h}n#Gr{wUhI_1Y(VQ-Yj=%@6$2KL5rsw#zFwrSTY^G62w?H<^R zt61b6-xv1QRnllbA2W9C+GOR@esnJEZL5gYJeD`c6hS_(dXp@VrzSLasW<@Y9Sz zBa!j&xIx7(nF{QLgcv@+c?FCeD!p|RkcZltGzsAyiUtyIRTZT18Jy|ijf$rJ z$IqkhBoW8^6+Pbz=zC6OruW0ZH&*i=__lH?eU60l^2J2_6w9-DFmcw6vY1se$f?BA z%nKSNQKpHHosPwXk_+uhR3I;HG=avdL474>IvFg?yu(p3czIZ{)a9UUawML-*HKs` zKr7aT6=J88!8mLtO&%<)1`vs`3dgRh2N*W3Q7ya*@_5*Qx6y`_baK*pKcw8IczmjM zsuHSqhMmrt*GK~s| zk0Rhs(eIo19rXPekFiWVOA`U88Y0d!PUrbNK33n#?L4RZDt{TxT@)uo4u%GB~RzjmusAf z#CmDTybAQgHJ5?Twa*jj)Wt=WIH}1s(FEO!Ur*7OWO0V^qKc$lsxc~IB*H5cBN5)1 znJUlv;*;w64}pIq!b=iwQuR^ka8JwUkTa(99?R-rNnVXvJ<7L-#(Z`&?JVk%F~tbm z*ke}8BGkZ+Syjm~I?}0Qvb&gk{)Pv?84{s}M2l{u;1XNv+3P;T}cH z*(pQ%9n0kw)lOMq8yslWmqJRXZ09FLDP=h&ress7?u$ptcMw<_&YJ{#R$EL*y;;^g z^3CNCxW6HWkS#rdyG!9{9c4a8+)G=)(MB9G_uyb4Dj!EtYQhG_OXSzS4Ybxt4j`Q3uXc@}-xGy6K^W08L;W#am zJ;$Z)ops4B+V7?l;JursT8sEtld7O~G_)H@lb|Wsie*z~ zH$&t7oQB3Wp^ue*XLS%SwbO2bNjNX=Oa{c3GRkk581Xhw6PZbqps}v+81GmSa2A6inx>g$P-KunKtWI@8B`_}MP;50Gz1!OMiJ)` z;}nCSF=|v$qj3UFJekdC2BS$lxk*H05|1YVHN(k0`QLY~n)d!0W6qy*@BiQD_Ve`q z_O4;os#U92y{oErZ8n}Qj^)?RWWC>17N2F>K$a!Vi2I$!@vKpai)yc!kKmJ4R6KfA zITXr9UTvz7;;KSbgkQ>w2a{?;Xo6av%sin`BJI!9N@MDW3az$1IXX?rpTan4C1#BI zh)OTeawF3(5x>}sOg z3y(#jbCeWM_S6KzQQP_35%*l7YBqjFPcd=?@wImxjrf7uAUtGM2ON>KG<}yl#v{QZ z(Rd!ds%)~#_?!xQ>V$J;4CQ&Op0B9OmctQsxkT}Z)-dY5nTR@F2=dg{kl=|VxKGrO z2e}5hYI~lBs1tNx{GQ9^S~g}F(^UDB zwRmVJ4?QY>a}OTcR}l*JuN+>3hYmH==^;`1D`2$CH_;a+{9Gz}12~q7MqPFw;e=%( znLP{@L?qh9dPZGtqybqYLj8`-r83g^`W1*jOY;9)EBR~xi1A>;>Dt!yFw@%Bawmc` zeVrwC`76e#311Wrhcl_LAaNdg40NA)NbtE>pw*9BNzmoA8Ax!Iu>M}Q1QAp1 zt+No{Lk$$q@0A`N)gA`#WkNxNd7Q7Wa;*8jbvqK2#lkwz`3+dt1YbWM2`V)K4*)Jo zP@odmXab%LtO=yEDTR(SFw?as^T=S~0akuVBf_^8s?NkOd-0cjT+_=_5O;4^{;+*` zvaqsFx{*fj>cnW#r|ZIEqo#Iqko&7$`NP~ihuBx#M1Q#xqnVq>6Z=|4O;gD4BVGB! z+&r~7EL)-<>ck)B=3&OZ%2Cq;Ksys&?#dtL=4pUo*%JNTPW)kR9(^2^{V*yz;m=+9 z!`wU(*_W+N)+A~E*oi+R!7X&20n@Al*efoL1*39nof1)H{1M}xiv=2Ux1EnO%J?#R z{e%}|!NzhbGFge4Srb&GJOUVK7FS?hxoXG_!x_#aVk^>Pa81osL(V@M0CF`9)T9RW zo5#Z;pVV1><-QAW->ClaG-&OlF6tBC4(m2~K*JdqBkzjoxIeNp_nVgeY!mJWcD{!9 zvmV0zpw9R5{=lQSKdSRG-k-k{_d^>m=KT-raX+l_Hs1dLIz4%K;~w76o`(BlIugy5 zjRbF#$JEopm5oM+n><$U$6(rR@^N}Ui|MB{$mGJ&OmBSjQA|Hg{q>F8t?vdwirxwUj4qRvlPMQ>9DwjN z<;l7;>8BizN0|wUaX#E0Oa||&J_$ta zb}-FjlIEfK_=R|=Q}er4w`@#3GUl0Gxw1#9(^8N z$M6e>F}wq8MbzhgT&R}!0wMQkOM8jQgr#uHxIGlTZMpO|Tq{Hd6*5nj%Au^~Jma?_ z6}8h4QF$Q%^z!Y$Na57_V z9T_QS_>l9CLclfEFX0|@eef)Yyu2A9*GkBcH_+rWuG9NInBh37QKUZejf37^$84|Luyv^{z|?YE$c zGybT97mp-1!52J+;6H0HPbfAtzBUWNKNT80uh=B6U4+m#RSS50u?gM@i#OwEO5@8m zIOZK{PFd8>X2#(O37262nRi5waj|3lxI1<=Qb#aKvqS`->M%0xBK@2<-IX{i0 z1ghX9&G@Sj;DO1WfZ_2VEW?c5$|FxwmSCL?BO6iey-=zdzt99%y9B&LC7xv^{^OHK z@wtNZi2H4dsJ0#J_Ld5TXEAGmD{p}5obiqZ&#FQG8RaEyc{a25-Y&P*Am|p6Fi&bW zp)a$QZk14;+w7|m&ARP)L_J+-+k@d!=~)k4g`gpETOR4G6`}!%YM*}u;ls6T9`o$u z)P4w@xh(!`jAVO6W?kmoj{ALLXD(w7CDcDf=oS^q-3<0kHsrA`Sc@AdIfm@{9PS6n zeMPzl4OWrvl`HohSESQ$P1BiRt^7Nn(qHd;DNuU`MyP3 zpK8b4Uw5Iql-sh>v?s3RyxkhtJ&1rpNjZbQhyU3OD4@RaBs|T;e}M_(i91oSL~aD*@nVFn zagozpWDHXmZ$ZQrHZq#scM#@wyCVD!gninE>t2&RaTUrti}~Y6 z=7>DS->@0LG6PbnNrkCN6GAFdUSWsF^Zxg8)%zjP_=NNefq-UD`a-XK}VO&g8ex|D;UDbovpUIWs{Y^My`={TL@LO>mw)AW)18?+)ON1#z=;@l61Cv#Kk0lp%fv;?~&ssOBMH&sjAURn*(92)^1! z{k9fSwG~Ur)!hib&qZ}OuN+bBs=k0>h*l+j9#LO%(Utc>d1tlnAs;oXTz45BI#e-T z14Q^uR69+%kEWd4Y${T2j7n2(uPNt(ZJJixiCaF89W$X2U4*CEym@H~wvF_`(-8a@ z7#|P+3TppY{F8}=DCyF64Sr%~j^i1)o^F$=5Fd}vWU|`!zr}kG!gQgwOj2)T!Vg{o zsi>R*sjyVe4Mr8hSDGfcFXz&6h1{m;r(w0qdAeyuI&31Z45&yq$o-{q+D*tz(HD(HvFra@r1ostkO;aARSI!d^)078qmUqQ% zMS8uYW?V(ev+mNAZ?BdgBasIYP?4Ssm!l%(;eP!kvO=z@gp~8llm00WfkPjY{5)9# zmgaO`wOy`(q84yA=#Cvd;D3%Kk3r2 zpr`})O_UBUUx=b4&9@Q%YBo*HAIQguvKE%}4&wgk;;G9~&H77l0>JTQuQ0yqQd zzsgf|T?=}54w&sy_3v|y4v#>hW0`OmW!_;0>(W&91&Br@Fc(p0`sg>AyKB{u*(Q1e zqR#ixtIkGrx2n!yRC3>fs5^c1t>{0qySJN!=&O%~AU=nvXMFUJQRwU*RgK_Za=(nI zAN%N=bor^s-K&vNY22X!8;43yX|oMQN#&b%V815* zy*#3tpQF6eGt1T>O*{s1Gcxfykx=tG6Rj`1nvK5*2|nIhqI(frdQ;gONE=^?1lQX{ z(dT4zE4`}hG>C?y8#_h(FybF~X=*-;8kb&B_MgoDRRq6mqvFxh5!RlL_$_5$BM)yP z?)NU9a*8@MpgBrEnSRa+t_`%T2LDDfHzIuYFtMLK3X}eV>dqc6PyGv%j>BuIvq#9& zkiw)EJ{>JjqY9J$JQYtP+p(#}7oLb$EnN`J9#uC8MJ_B%Dxsnr)0PabEKItYZF6iT zyVpAGy=NsWr2nTWcVd-uCs{@M7euEiclMQY*I0$bVF{lBk4gY{0mBGgfB*nK@M_N>*3{6wME?v&|OaaDMF!;d5yypvM z6()rCC{6V`4k?eVgM|7ETB=A1jxH7WO0+T!2^Zt{$vAC~L1!jzKOZmJ70KGl%iIt8R{yc`9bYtq43%3r)=>^)ekb!T=IpQ}+lyc~Ot zpN<=}%z4%65P9yS&oirE8z{#d9Hq}EMvXkFW1=aiuPbLg%E?v)hjR>|j*+=BJe}i` z>oj#om+7%E(-GXqh{V3)Z?HvHtFbxmNC;8b zZmO|4K0=>OH8#g1O*KY5xEO_C{`25SBffTLW4r7=B|g&?vR(?oAqA|7I|xKe`+i)l z^)sb?KklN>rnK+J{jAVNo(Srn1}%3yNDs<==;FTg2YXQFLl;lty&e`al1GW`W%}$1 zAtQNe$Zstj`tg>I+#5Q)H*|P}Na53lj)cn#dyQ`+{NZP{n!x7r7w?$Kltt%*R3H8j zWYsfnprvvR)H6QJH4x7g*=VSZaMZp5YJXq#u8BJ-9V5kSEL|hTYvLic&HmCJeB2n< z&AyO)tc@CZpuk*HZckTk*?p)*(Y8S8TsWCzvZ+PX`2JYzuQM%vl*_${x&JMOnL&%Y zvke;9Ta-2RcY+xs8zqHX*Bx<}3jEyp+S2)tIg0$Pz?e@@%GU4Ep z&Y>9aY?MdE(Ejd{N+X6NxOKg-ef$XS&}hG_q#a*?mrlkLQ%0Ij=1ol1X997E6mU|C zH!*xCU;vW*=e5dbgJX9TLdC>fB?YdGM)FvdB_v1rh~|nGU)$Ad@wFp(AC3GthN!Jf zYPWgz*nB-Vcy`lhp1!ijQu2CyZC9_y*N)(QG?JS|zilaTZ=a!FFb;~ATjbpV@?9+o6%_e^J2ai*`@P)F@G&9=C64%^Szcv zV?VknCBTpGfW+Z!AbgyyFF#koUf=U=aQqHpUc5#V_H*fLKU>5x)M9g^yx0Vem2+^+ z3GsnXYCf-ClaSqs_z0EQO7pugntoLyb`K-TO-%N;8EO#P5t6+3326Mt$5Dmv^$^Rj z?|j}5<9*BzZeJcZ??T9{Rh)>7rauQt_k+q$EG72rB1&Qz3?<&TLaA}%Lf}di%)goX z1G$ZSh@#J*G^8fr4{^2jG-Cq(5O>jMV*>sV_tWPSqk-Hve;Q~#aHf*>W?%_IMK`{B zx3)^-?uAkGi$^sbj+l|Zc*iS9SA2Sr3@%mc`WQx}qg1V%X!vM2_-|nUw7sKSxB zh`?!tdT_U2{cn57!87BT_4n9te+qs-ZwPypT!_#*A+ddBU3WYbwl9ntM@)j1FwJm; zW8!{9J9DLa{O@t&Ue#kfujA)cJgDGtO|Lwmx#u||O^=`^9Db;ePCIi3V1mVY#sEx= zjhQh9U{WlHDngoS04B!`)&Ml}#e-3%SoA{qi+7yMVv8}wU3;0e96sYK^h-#Y~_ z5B$7jls?aldh(3iYmoQE&nczfJBlwMR8(fwC$Xxx{n;&$Ky!qnbGz{v*OKjzGhhP) z22_4emwbw?saVLQn4WxQxN91TO>GkgR>ov`KYJEqgO?*c0}Plt+| z<-kgi+!oi~-1P{)lLz6Ti}F0ITb@>?y}kb=NEO?A2W`{}9~E2pFFpkh$eLi_lK2$u zhdQ6bAexy`Hy)4qAcz;ffQwoHbf_5%7OaZe_AKo!=VFd$>1W>>N591H^Jawb8hHSr zbwUFg`8Xa#Bil}cn`!ECv}=RY_F&K^gu(YOy2;79a6bs`@H|+b7Yeg@9;eUqL}N<6 z95?Wr7?9Wze-iiwS@GpWZtmgVApJqty9H&avhRy~cx7+qH$MmSyF|ht&pv+VSQsO zm*)eW?v;4(WaUFt5YNXcU-P1FKUg z86kC&jgIN9(4n)@5d8Dj;B!dh`mb2Pnl0VUAR`vAW{VlM7e?Lq>e&~Oq3~l|gpJQT zz35wVguHV$o)lkR5J!K;?>1widup-Zsp2v4Bs8EG-yp5+7{q?p2z!T^DfmxTBQeJ) zRXjV0bv~$08i$_F2S>{w_8Md#jpTPx&q2ny?DqI7>IC^lYBwG?wHm>N3vm%z@7{#r zN)DJB%Jl1NaS|JT@4$a=rtG~DmuPxdjGcRM_apoZGsWW|m~rDEn2~W%nCZq>J%5Fa zg+JpWrQQ;Xh|YC1o|K=*S#M1+&IbVT_~%755TSKK10wnzX+cCid9wBlrU%C0-~Z4b zi1b{9iY*xr)uah)nB0I9r+0VaF=@15QO`M>VgHcqdXss%%gooUB=ddX40w$!m(q4K0H34p^hKz%$25Ke`Of7egtj+n>s;E|Hm&jw9p{mKH=A?|T{0xl3hL-Rr$9``|aj@X2tJuf&F-SLSi zT8@#Pe}63})N2m-3j1GnaZNfXZR7(>+68F+Jym`xWam6F?h~tr3hJ}*tS8s`A zAgXvW?!wy=Na1Jfk^i#p)^$|E!IlIb!eo zh=0x!`0SRbk>6N*1Bj4+WAz98^Sr|Bxb~W>h?=)w#Z4LW_N%zBnw5onV|5(Mdryw<5Qz>vze*aJkTTPe=U2&a4S-ZRtx&Q*sWL-P)X1|NC!1l+>%t!` ztDMPqr!_(v7&U)dDkqXtD;oJ>ri&mg{-I3yi+9ZVyd4C;8+WmToD72BjgQo4g-!Tq z(-?hL*i`bpxPuOYZp{aoICHZMVv2%g_(`6)tw`;;c?>(c(ZC@sIQRfcqLU8RXeyR^d)n&W9*gl~X# zZPcl_`n>b3-zXOXM$Q(UCvAASOe<*IVjU`MC#BUZTRyyHmaf+cjGgRhX| z_doF8o0)t63oqZnCF;flFWWo|f=##xL4p&n$3vN`su}YEh#!Xk-b@{J`yT)`$K$Rr z9T%4`8pe=j94qu-r6h9uU_$DC}!^7Oia3Hh^JXQp@|O@e_!idJuQ`TPRl!dDEYR)af#E zgq56J`F6+2iegvq?5^XlPVH9j9I1~B8>+FQTfK7vvlOTW^8Kpu#3J3_grz`w)v2Q1!a(-O1M&NcE)^`R!+c$e-E zNOveV^tzJq88`I$lF`l$eHehOb}s7R6HIvnU3mvW5_LiqAof9oa)@cCEV}|4o|3@*nvk1O9S(y;cph@dA2yu zkWMyF&tIR4!3-(5!ofdG*2rJHBYxh%I!5PU9a?o;T+!Uc03Wn{w};Ds50RxX3>OhN z=j`BTZ-_d#E%c)8!NVdxj8MbE0{)D_kt=_5@!y--dpGdX2bZWPzdE)7cNe^`JZ+CH zZ(l@cpkgNiOf^Rp6FM0jwD>zF$I&LoPHj@Gp3Xx%=Q!2Z2}n%CpvY90;!59Dr-aq=((AA$egOcZtF zCrC%(t}q=JNlp~w&E){5t?3>|&G>!540*F$ahnlZC;2&K^MlJ*Af#|7E<%h$c0i2D z&o0BUFZhiNF+X;H1)+74pTsUgWBdRih1YQrV()_(#(zBa#cAe$!|%EGC?^B-hw%9e z9RHb(H29ImjtD6nj*HNs6$lt&@|(8e^l$vWwNt4;BJvmSI2ECFlApw0gJhQ=q;LT) zLX0{!_jTxf=NIGt?QTV`q0BNI?(cQ@y&eC(nWOh=T)@pJpb^{^p20;3aFq4j3}uE% z*J4E+zu(1wZ>EmAH6Y*XxGTJci^~@cWs==<;QZkCf8xJ46Gh!_#MoI$^W6;>$7fIs z(+*sNITXZ?z<+P1j;1_|OXu6GC*z@T1}>77qj8Xx$^WAl1drc!`0vfsQBUqixe0e) zIDjYoU8g^2j|*NjedBtu3nxyVi1DTLQ*wSrVf);RXJKbcT)JcW$BwFtqZdKqRs0ve ziVL>9;Tpe;3%0!B8cCY{xcdwKB~AP;?kdvva4nZ4&&Q;bqR?vmOPc6oLlD#jk9}>B zZrgex{{6Z7-qkEbY%{Enj`R70RY$FgN_WiC;d1FwOYm?O-4YHh zkOX%JeG&* zuzGY@;bxsS8XxJ>d)SJe+-X$tFYts7u}QALz6cewq@tfU`QzAuRCIa)e*{mxY?%@WdEnT?VNIaUyk@Zp}YA{*5yHa=Lvp&wPQ5SUOJ|Sl9$xT-K zkm%*#Yn~}C>s$G(6R{hqbbS{U@4|+0_;f(&`oYQsCIPseEBO+T@ViRlr?LLVJ8nRz zt2$-fFqx#z>`YP|o0Zm?14xTA&sW6b`@^l-N?sS#YJuagjMpJ>0cf4NJStsM{}k>x zadKsR55hMy9J;W)?rjO58C?;-jPO$zMWw4cbonyVQYFT=ol%G$N0QaNIr=2%`)8Pe z)Z(8a8FZKYrYW!G3?4glW+8e5H>-K`)02_qRXi0~P<*Loc@g(%%4<1;$1cOxx{ioi z&6{#GS6o3B$Vc2)vmBHxyp}TdBhAB+3K3|yq!_r#568*n6UXF_^w@jKLv zWGAYiq1EK3PVxecOvVG-7(2Bd=JZjcD~~W+Rit55Ig6D3N9RD!C~=5hU9X~A9~qjvx+$$CXd@<|0fE$ z^&L$B|4#nm9i6`x)E(WgK}sIcRXg-dtN|nIC?r~LvU-y@H=A|kQOz6IU_)+qXY#nI zcLNeNnXG_crqr8S&DzUl?RE;X-i<`jU!S?(RzhC*C(w(P2(5lxN z%lv|AxXJmqc!+v`Js{TOPFmdO0*RxQP?*ts5kPJ@1R8X;St2axD& z6ge4G9{8=6)z!6O3qtEyO3C&+x6~b!n_IWk{Y`Fe-cnbIc+Qm8b(EV+w?y5zIeROf zq95YoD%pcy_${qfzJ$lxZl1^50doJPE=)6to27-{+S!!4@>_eB@=J~?P_Ga0d){x9 zU(6oLU%X?;H^47TN2AwWC%<#+?vUS^b@$2djJn6R3gUm4jaOHIT_P9b=3V2$G&^pOap7{PmGeQcN;UdIn zB0aI8O#Vx}ad8WN@5Fy^rj8_d2F9m{@bs7qo+57)m6X4Tkis`{5sEaB(Ril%`5pM$ zJAQwAw{q20f6y~NKxmz016OHE3trB!>8Ina`kTNf_!nw_MQAkeQP3QTpdY|5;GcJ{ zCL&a{Q*-) z=$tC|7Og|dYa2X{s^l0ORZ2`+Yi`QS<(1v7Ys(4t3A;gWK5Z{wmvSYuB_Bbkz~6ti=|U%s)KqmQ+-&wp{P##uzuq@ zkAb8*gmjv#tzbH4gKYtw21_Ly5~&X*-8rAoGv9a^WOiI-Nj2WhJHd#rNg4+Hv0=Kp zN+E!i>NY5zQoppmhdgxek3yQjb&s%CtVYiyItry2J3G3AKucIToe; zZ58{FN}&M*J!_+qrPTTra-!}(L>hst9NvWbQ!$QkG+o)MQ3G6rDU9_xQro{9_#24t z@j}X2<{uOvRo`5#xdvN-lAj@260Db|Iw~7MNnaONYTQs?Z|arSeArc6V^oGL441rV zYn@<(R*I56TJ?>Lj*R1}(nm&trD!x5WM=6oWbzm`RlB&Ze0;<0Cy0{cP)DuV7{{i_ zCSY=GPl#_Y$~n#@ft0ilj2j*`S5K*@l*fD8cPQ=St*|mBp1|%-W+s%z$5pbU`u;I7 zEJ3@}5+lY*u7Qo(O=f^{F~!sqF-rPG@>*4subiXXItAv`=y@ z8M%<`$xtq|7pr}WC8;Vlvp%*RzFC@Z)^LDmKno?)Ts^$A?`w0k=VZh)mtiWArP-!B z)s!T)997AdKP}JP64fn?TB9KyFW7mOOG=1pwi?QE2HW0pi?^Dx#MI(CRh^%W)kQg(li)%Y!?iYfV7N&$Q z)Uv7KTJA+zrK8F;mE(Mzw#FP^5{@K8W%$?xYZ81b`Vnoze#G%De_OA4lg_~R-xhh602h_Dqu4brHaJK3-v8%Z> z{k34u^h8mX>ue5b467~I`@*HtnUUlMA8F)drEy~}hV6cBY^>@{KGFy>h`iZH2DPZ>MqCerIT~#dITVvmQ*=VltpsW=i#G%7UU?`*Rli8MP{HzBIXN30c#E`n8^{L)v zn+6F*({YHR*gthW2oa=Nw4YFBCwT!-L@EM0ADCX~CS%(v*5R9(Ee{8TIPsXacD0!8 zJ*PS9oxthvZtbZqqiLB8(8#$QYA4}uSU+-}^%l=?WKg~~j`1+EPSAYsLY`%eKgxwe zVOkQoX>QLkqDP$e@&%#uwlM4NEOKQ_6%>vxHcbzgV~M%Nn75QINLeonn=)f*mMb+6 zY*!R}t}8=pfS21POVAxv0O#g0KE;QH+`QAc+EP=ea!qK^qNtf#VTX&gHYw#o1)&bF z%h%ueg&)txSd$EA!iWUJan6ZQxYXioo6%7+zA-BZ>O$2xey|DUB=XLYQ70MdAzuvQU@rYKSCsy07t+jH+6Ldu>q+ z_7MP-q1=pKVXu8quDC8Y2s%`AVy%X8158VV2KOe#mx-ollii%jk2hL9E7JIE8i(a? zX%&YXgrDJ58{^j4P8kr{TX|V+xm{}*$SsN-rWaG7M$lq@ofJCWv?4WCVPfk#3c<#0BgVgi^ zjH3w-rM2$!nM4J&Pg*tjOfJ?r4fktA(4g95$Y0%Al~46#5K2{3Rs6hC4Qj0>i~dMx#^^*o9k_+h#NjjyUTP4>@i}q- z_KN$r&r>$_AaBoWs4)?)C0{T;v6pvn2|cbsoQwi)G_l<$Q_MGyd^6eZ_^A*U4`MPUyEqz*H4= zLcfD&nMXz+`mVjl;QT#vkKHlF?&$YXRFOOS0|e&#zk#SfMEB;n&X)L5(DxCI7f*#F zJ51r_d(b%w!$$@Pyc#qMyYg#>gTNa8M1p9Og1lI;L~!WXC|SeU&vKDdO{v0Iv4a~r zuccX^Gzq}~$J#RMq#oM6b&Lgy+D3ii3cG%mSs$~eL;Fyb%b#oSLpi@;dTaG-LcZ1V z6tA6GSE$bWEA`f+Zy$Pixz#a?aoFx1vtBJ$#&o5wA?)zVK<6+i{maIXa~(iQvP;+m zOxNUKjYx!bguiQD$()C4O;LC2UiEOLpgnX6#M$Vco=cXmeD-oK4vHf~y&VNtzBbii zbUNVahRDU1-`D#l{R|RBRr-5R;cyG^{URC|RC_tVL-->dH;5%S1HC&pDDT}4w$95C z>i{2R6hU;63OqE+ZfJalg$}^*ED~kOIcHW`JzD6|;){5#0*&c7>eNXzpV;Nw9x~`rDC419YMzC%BMQLm4b2}a8BN* zyLw7>Y-Q%TV5fK5DbEPS%tbicGRUqiGvE44XSu$GIGqO;Cz%=s2iZ;*F0c!%3yWdw zq7cO{cJ%^J3KFr%<`pBeFa|$48^d*&WuXLBM~t(qBPl6Ztgyln5W%R}Y@}b1lSl`R zRylBpa4fDxk7DdgDE;3^6&1e@Myml2i(X8>u)i~

    E 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 literal 827568 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

    d}4U7>GD6*!@sWZFgMzkM(7|5)>Kl z?KrjXJOer+UzVo#`oA4#nJ-J#%U*}|UW*m2Y4-FvM<3^8^(zejQ^T_-L$AeUt&1V+ z@cmef-Te!{fpaUvb=wdgP}mcWgzvZ+;emy>z+pK1e%gJgidpKg#D#2d(P?l#p==WE zK3c_Mb|?))Hl(Nk&aVt_`WwPSi#EcMaM@^thZPmUVfc&-#~?hqoRwTC9Nf7NFlIJobJ9pT`P zfrFc?5V^J74rr$^^eDPQ?lU?6Vp?Qy&3!(}{tKPBgwXb1?3D2BGctvP`*3I%4@TZ^a!GSr~9Nf8@gZm(WdlAfUfC+93dPoWfH|@EP#Ns1yWKf z&B1-Ghs1HX20GLBA!B6P&i}*H_ZhR4r|&a@i<|cu$-&K8 znH=1#^D3W%o2Rf(t|uJaf54s^g41=+4CK%!*AouzQbf1*Md~k+Cv$Kg2-zTCuFq!q z;siLjrQklVBRRNmn`D8<7y0=br>C#Uc6s_*>`PByi~Y;HTdv8z_IOS9whD4>)OwhfgHz~paPu<* zr2LzMO9Hyp#=XY4ywqqH!@*Mjk%OBjVRxKt`to{M5(oEK#WqNSVTpKQq|Q9iy8F0q-5UI6s>LBaf$M50Vv zgNI*>br31sufUXPyN}F7LHFrU0fQI8*yS|%Fw6(tM>x3eK>P!~Og%|}?LJ#lx(_+H ziB#Kg*iMz_1nqNhZ%*kxoT2e+jA z1wh|Xg_+kXw)>ESTM~ECK85%v*|pt=9Nc2*004Rslw`^8KD{0^mL>vlM4BbP`xNbT z95$ai6@Vo^NOvE0ilpwtTow8p+#dt#b8rVU$ii}&K@11C#2XH7JDa?S(bFmX{8J|0gq#(oB`lGra|?SARVsJkyuJ?v?n5+=amT>k;9ZCVTjU zzDVVYJeg^1TP2XL{^-zkf||g=d;P;5qn*%3#xWJ>i*d zjpze>k!m6GWS;3kkd5`_sa=mZ4Q$sV&opuBL>$hdLPv_}vt6$nWBjgnV4yuyc&1lS zdjk#|tu}qO>-7_bB%WzWZU-PgP=Q5L^zEnX3D0y9YNrZ+tszFJX1gAFro~P_fCdxD zk|fo5jJ>VU=b3JaS%O_|_5kfx8TV@A^2SEHC=Rykk!PCsCvJvqeVfPcdgPgYlCg5H zhX>pB$TKZn$#gyPOiS2wJ@QOTIEiOk!lvtyXPRMuZOOYV!JU%AA@MW^xzCwdT<6TJvalF9-IM756*z42WOz(rw3=i(t|T#>A@MW^x!Rz z!o5JB9=r_#mL8nBw)Ef(SbFfu({bO;rw2b85=#$$J_42=yc4WhdhosoSbFdoFktDy zheKlN!6zbM>A{&DOApSTVCli@5U}*%%-bfP9{e!q1oYr+5;w}hBF1&2xvRpl*4=3lBl_;;-buM12^~4a)^i8{FZj7^@MM3!F+5D3gOpWG}US zE^s1FBto*mkQ4X0z!~BmNiCy^G%j!gxOp-eV7b7VFYc(+SsHhE2-|eP1y znHW}fdWG--`xH(iehXz-^@C9O(&(mD97@DvmUvfT2A(W|C`a=T^$rzSFh#&W{$b- zx`APz|C<2r$8G?az6AXn{NDsDumG7ebk=!T{ z5r7>_xgho_wRu`)-}N5iJ2zcSzoFDV6{Yhjwa=qJe=aZw7F|w%_UG{TD!ze!L#ZwH z4W;(uj5n0pFVb%)wcnxNP-;uM-yR1$qjb84Qd{D8yoUJen~L91YD<0$rMBe3P-;uM z-|ulqsV!+4N^Qxrq12Xq8cJ=+o1xT}{7lAW1t_&YX5I{?_8$5TrM8Dvs!yq1MZclc z{uePW>H(D6`{*~6+D(Yri8&OM+Fj{4l-km0hEiL~Whk}9-*g@D1B%3d2p&a&QhPSr z!cb~UyBJDs@f%8Q@f%8Q(S0WZ-Kn}h4W)Kp=HWZkGbpu3!0%JebGND+<v9U5-ECSs?cONBPJu#z%x;YQz;a=pAwNqFfnxvbuJoeCQP`oyiDpOZ6n8 z&?oWchESixn=_5$lXx>=NxT`bB;E{I5^n}t`6S*9SQ2jrEQvP*mc*L@OXAIdCGlpy zEr~Y+mc*L@OXAIdCGlp!l6W&#HZlq0*Jepb+h;s+{AJ(vx$AXIlAXD1uPnO zHtSeR!OaU?ZgdXvC9{$~tY>~Mv=rQ|YHo(sU4h9smV#S4Kw#dd;ATy8zqDfVatJ86 zX@GmEB}Zm1^eMQx8sWZbJz3g|J;zdTQ<)pC(*c%(o4c^(^@jBFEVmTgGYOGmjPohD z8L|}I=TOeM%TjQ&!f#}(Zf1ZR!3E%0 z3U1a1_l4^fv&`{&!RAwNQ;(Ywf-5PKzDY&z77saRG=G`90r{LyIuYiJ^>R?pB z)eI=OYcvIS1ytQAZ@kD2HQx7;p@^{s2-Ii_?m_fw3huG+3YOdB1shOsGb1s^H><|Z z3Q%w_gWrwv?pm|k?nTTBiD_mixG8OBD7e`U2R;GdQ;576BjFTGQJ~;nPmH19CZ^e8 zjBhFNmV)~SfE2A+3T{HVPhZDc3T{So+rEkRDYzNUUHry|q2OjL_w*aEPr=P-Zt*wK zJ_R?U&-SAgeJDBW!cuUvzw=!H-PMRU>CHuvK*7xd@Erl&`aDwt3T}2eZO-afz1pBH~n6euOxWUiE`wg9?k)T{AFrP)t`LIj zsnl1O2or7pfZ&>WQm^|8$T1^8AB}=|rXVd5<3)LNqkOdMMUUvmqxN$zw->!fj(p?_ zj$<6%C?Do|Q9d$tqkN$1iXWWk;tvm?lt(wpXLca3mLvU*6I^pcvKO5oT6`Dc|679V zDj~QY;JTkJ!s8nT1{i|t?~ieupYRV+q6w}C7=r5k*;qcxE^2#t~)?hA>A9#zL*xVqk?-}n!f|_`~zL(r*A7e$_Wvz+l>uU-b;5KSAW|4S);Ee^; zKF!8ns%i$IuZE`>;`z%|Yw)gRXUPcS=5V7;@7*)-qG9hdKLi70@4-(iC(^s!H08vR zM{bhwqMQreD0f(S65~d>_sWa@f^o);a^s#SF>|)S^hlL2r|+)gF@$}CgQNO0{_Nk7 zNG>ia%kU31#W|+h@|f8*Am?aHx}JkORAvT8<2Zsry}`i?e6Y=uQ?^ zEr8ldzN+qCnyNb%Z4Q)J2qm%vd^K=45PJY~psBjc%D#n7Nivkk7T88Wo)2I`)m@(R z6kx_$L||V4@^t_cs_u%M^+BSpz+$M2eEfBy#g{YdO>?e;!!oJ%5OuNQt|XTT=S3rb zD5n?e3QXQ&Wjr8L36mORJ`9t0adZ+)8Ei%yN+_$&VG-(`7!kE3-!6rLRPt?h1*PJM50NQU zw~!NKv>T;fj3x4->^B$_af~r5UX%#*FZe5Eroh~Rv0*klFh^>VZ_k8l$hXJCtI4-{ zSu}v;+h=q{VFr+Vdk=hS0;!rO55>(<{0#Z_3xnntb~on{~uNHh#egIK_p0yPK>5K)yXt$hZCA0;dhnpHqPg zU5tb9skUAW5BXHNZOy5tktmYAAMU*->8>`3M-kgr^uZ1(*kQnafY>Dliz3QTt=^H0 z?Z%e{3Qk0=`P==Q8`f{GN17YfZ~B#N{_nCyZVWD>03BA!In?~5URh7huTGg_)-J%*O%hV@&_lHD4t-}K8T zfKyq&+o&Oq^9HPhKEgpP{5Atf*|^`4=E?f~E!-FP^sHE80^K9XbvN$xO4EAm}FRckyMFt>Je% zQjM(NOX04-zaDlQes`uzu7bqe%|cG{fh zVgf)gREdL4I7yFKvVQl3+Z+FuLg> z%urH=NdDC7HHZ~DVvY`)^_z3W^N0=^@H&kJxD|#t0rwE_$bqZg$MjTL&3Qstznd79 zGmJ_Y3OA~gFmi<3lyIKctlujQtjxe}QnYMXzt2Ov)p2echPWqiLi0CDJIKQVo9|91Kfs0+rKAc>$o^7KOMDe zCXiBFvbKm#>Q^Az=6Y)wVkb1fPD;n#thk0d4$*xYfK!Y*6CdP#t_hr2n=F;y()t6?ShvfQvvn5Kk#SRLg3-V}3Or&cheR^`15)s7eT z!m*f9YIP`z?urx0xd8uA>D7oMMqP6$jvAB3Jsex&q#U!7G`dK^I;F-D!Me!>~3=CuHgo1@GUWncUQWI)|jJdO#+cie!$-Gzil&r?h= zQA{FX^^kk(*Z9B*;+Nnb>gAW+DegTS;>X+{F6N4mqk=D%Y;+fGO+(C5KMe7cgbZeV zbSDk5(lo@BZh>T*Z$N)pK^<8;fkn_zO+!q`pM-^cL&bv%fqBpEhb;@ZTypP;u#Rlqgbk;N3;vH4^-}t8_?NN`)5ORxi6NIsM%*Tr=%fP z^_qtGb^xA81yNTcd$fH9UVJm{fRD7vEkN#Qh<18Bdk%mTl^bcHTj+Oyva?Lqw6U%q z9tg}-<=%nHX$zUU|6ClHC0)&3Z$1{@Im+!6#e=3y0MZbvMaq2{NOI4EQ&GV){buFnyoXD7 z$cE#ud(c$0wo}o&81gmBZGk~>8f2$fxiykhofSW>2K-LccLH-Vpf@yxJMJT>Yvt1r zZvf&kALR@bnNLH^W!pAirbkq*yh*vAuY!^9ApF$=B*z-?mU5rRB%$(f-c{ir6iF9e zMrRH6X^49RHZB8H>PbU=8sfQto!tmDIh#HW@zucIWAV24B}080;^zS4<9VH7fhOhE zry>3lh~F(rT7sQ1*`QBDoWKgSDgN5vOg5@6j88+{9l}8t5bc|4#-|}Z42by_#hOk| z%%>qf3y8}siisH%X^7R8A@`i;;oc6!dLN~yw=h3SpbQQ1QPg`CfPeTPB~7bAn=}ov zfW8CZR|}FJuR(@}SU`nHyE*>42IQpGAVWhepk4qBwjik{4Kg&u0y+YK`4+^ga>D#3 zy)rb!a?+m*z;YjCsH5eEhFJ9f2HClR{xZxcYAL?PKiA~^M#$C#@)(vE zYB}Vu8Tm%Yo)6@&urMpb?o~L!#s0^T?Fi)jBE7mk?0#~zk^cdiirf72i}UKXuzUUr zJ&~xUkhKovq#;&o!|u(m8+l*I1_g3{kzTC}yAv_+$|*JtvRPK{-nSC+jbZo9CU8$f z{Bp|d0z=Qf8ue<}J$4RIHvzFW1?9MZvKViN-P1e5eHOx(e1H=s38FGI#FB+iA=^c{ zG?7ahV)a|t-Nvf?9r4*%?FCtIT+$G$ePMU!n*cP0u(c0x!u(>ta-7Ao`a(8{ zaxq@SH^S7kUMDYv6XrX|sx-@8*j!`O0sv3)!Fn<+A`P*c+G9bWVQ7d6R5##oCpByp zIW@CRc2vJCw_Q(T^;yVYBZgVfRs}OL%grs&392t3|1Q-|cox>L%Fqx?Vr~vLpyF@( zs>lruF^j0U?Wr^6y07!&{L0V}i~b164hr-|ZfJ-_e?DZ#2Ku~ps|*dX3>C{EyUN!$ z!z4Y7boLHxJ{>ETO2hK5)`q#*vpg7okuAVWhepkDw`xu&>Ek4$73R)&UHKurN? zYe9NQ6_BAJ7EnC^hopd#mJ4Blf05;OcmSfrHLC5M3;mhDbvYs4@x7vrzHo31y08C4ye z?cTcGWU31Qy)8&riGU0Zu_QGafaw;b=LP{88e##R4!~s=Bom}$p9g#lhY1@RVu9Zc z=;IciRBwVbG{k}=1@R{-NMp{>5DVxR03!K*VUy}j%o!SDLAC;_lSS&DLV{lPSGN1m z(`F7D2EbGcl4&c+roasiu}pa<1G+2~o@Ch25KHPe1GU~F#ip)wv1w?C1^FsaUo=D} zcSg}MG{mCwC-4PWc?Kg)(%LjEa6>~Z@J@jCZ3uTXa#O_JwAOT!Lx5VCicGH$Lqja} zu?*0wEu21cDMlJ%wWtLvG!*`MH3Ipr`|>X)m5l(tVbvr79vqFVblrk3rhUEy>c1Ar z1PsW~5KAuN7%(gF*R>(J5Tr{c4>i(tf4l*1Hy{r5QBIgVylR%~PP@-!Y64{Qe0fm& zW=Ipbp&^z!T?**UjlctKla8Sw7R4u^^j-$Vq*Fr@Gc?4avm1DYDKe?OrPlOFDsV$X zEbyj))@FbwHKphn8e-8I5ByxKV=FPa_=bj9;AaDRT?Tl1DGUv<=sX1cD~;%wiZV3B z0^b4X9~t23r7$$aqEk|YYeoFix`Mu1lq*Ty@P|g-i>8={9|ioJ3_4Pjq#B;3X^17A zvw*)ggO2n^9!z-_Mcw-IO*#((|3(HK8FhFtI);W=()kkj->r^C>WQz%Ma$4F-if-+ zaPkmdRE)VE|MYGW)L4({?DqeNx&xs~mEnNT%%BpqV~_QmUbjWvty{Iq8Gv7GRRUm` z-|SXjN8P)QH|xmTfqH^SS>(tSyJUq2$K`h_)sImZ>qV>!0sGJzWzL*1X^7RIQFp-I zcqGa@8G8WujUc_2Aq}xIG{hn=D#5*2{Ehrp-tlP~bKTAQhLP$CS?@qTFk6B-aF==Kiw4XJV39qa61zkq@f`e!}kOAv_&RWnbEVnMD0>KThn%B&y_4Y44%0kzvA(=#h@Lqja^ z2(C#=@z=Fr;Z9hPUfeBgW-{9isCtV`$}HJ}m7yUPn^S>WXpu>o6{Mjd7UVLZuD3{= zx~W-#8yaGPKMd%L4dG5$kTc@$y_cKJZU^c+i%iNa*@Bg!Ar_l%86I=s-=G@^($EkK zvO7@2Eiyf`0yi|o0-p)!;)ZZ1EXWOU_trd<*%d(DV3A3gUCb+ULqjY!`AM3WEHbHP z1!-uA1^FpZdn__NvjYEb+$tS?Q1X(T0@#$4q9XGH>k%w zu|Lni?19^~&G7ebhp9|yT-u#!d{i$QRW%s+fga~;WJ*IcDp(HXs#xhXJm&^{iLa6& z5vPJ>AbJ|Q#0@~+>!ULy;J9V)1ARg$b~^jRYk+=AICp|%Fs^SXdi;1Odui=^uVTT8 zimUzMX2kSD>0*O$&}7Pq!_J%7 zaheL9*j+ip0UC>c=*Cr6WZ0BvA$pN7QfnxmD5~eGP}gplyU&C0G7GpnFksk}Z-eY1 zD_;k>63{ZqBzRFmyKy(;r4$4vaMCF!W~#~!Cm~xgmSPg=loRum`>%549EXMtW#R6O zdX5%(a3+&ZIdPdP%mo@(9NYT&}PEjEp?DzrE(l>u?&qu{K1sH zL3=dsxYr?LiK|skhXMe2E9jIo0O^zyt5nVT@6IgeNdBk1F@L66O4S3Jm-XnbX2#*l|x)kUy#1 zj`_$+DdJoEGDWx(J|Y4Do+Mn2^Lz^v?+d^nA7tc)PMOWDra?A~a;dF4(j6yWRqm|6 zAXBG9a5jakF2@xioVH7wqQC1lldhFy%coPW0-{R_%5nM8@WeNGeGjLE8VVr^0JRxy zfpp5`c^TFffO!xu_5u11e&SZ#YAhI>U7rW}1(03h%N_SWI9U@vEBDSgWNQ$Ax0U6S zPI<;PINy2xK3$I@#rEO!*L2E>_93rbC(L2=uyc!tjVvDa2Jx`f#M2s{e$;nD`s^@t z%F=-?L_nI+{)I(Pzd63$@tEl>`Ylu0`OL1IRcbjpb#p)yvkiV>%^KMuM5F~X@1h^evK zKQouQj9-V`OMA17V<0`$BK{ykoA@#0uEb~C)FKF%SirZeMk%dE?G3p%@k^%X3H=92%?1u5>DwR`- z*${tSLDr~KcOlA`=oNP7w`Mte0y4mdB|VQS@KpAh`;e1s@t*>~93P~ly5s>-Vq(~B z%E}<oD%C zZ-Ds8qQp#?mv)Ie!fscLiR@#bRKskKzwX23d=#A+8EX4qHkCZOO5g#dc{ne1&M!D#h z^U+meOsMcyB|7AKTmG~v>-uVA;_8m}C6x;h< zle%YmW^-a$U`Y$hE=XFIEG!u$Ne0Oo0YOm_B#8kD5(HF0G75?bK?O`GAo`w)C}KoV z%%Wm^2IT*Jx4L_F(f7{z{pXzNTXpYuZ^f>zuC9PVger`Cf5?W!<@|V+gbyoWG>ami z4%zIuoFA`}tbkd9`Xl!5hHQOY&W~3~$pP~`T1}BZ1=+K4IX})Ml@FK=@f76r6ZH;c zC*yK{+)By~m@nahD>dXlko^^x^W#-g^?>;zo_-?Fs*d#IuhW;rk5|c`1v^whO=zy_Dm@Rgr0~}%)Hjm=+~brRLD<>@n7Ee>vqlA2*by+7@R8UL!oe=U zkS`5MPX^2#xsY80{%lvKvql5ll}nldM{v(=M!TOg!^59k-?GbeQZXesjVuV7ofQxv&gck4z`wYsFz?q?p_a!0s|2 zNt7P@N_rt^{)kwrSAaO~q1bfl@0m$&2hGc}0r(oib1uLzc?5FOS3z@FF=S>No1lqPI{y`PsZ)R@9D~v&N%{--VK>^(WI!c5MJ#8bf)n* z5h=TU-!-e z3hU4QK$GSB42W}OQ0Tq(MG$WWvk|&4R10qWb>dlH(F@%LUUftP_qDGEgvDh5&W+3C zl#@o7W<&H#m! z4PO9V<~00u>IEgeBd@b9FU#zT8sX>A6~9HDVJC4#Ie(`{nDE)0?i(RAdUG-?1__Kn zN-O(8umUMd>|CKs?MbugUuNGdbh*7r=nDHSp?BKf3tefa%pq=-T}S9@yNl4f?1@6} zw&x4I$6h9Mjs2w1wf2WX*V(@dz1Pm0OFQfB5}_OI0YW$1Glg!k*9qNfKPB`&`y-({ z>;UeHK*~IJ%cbd_iA+<-Anak_o%}|wGCrf>7x#x1;dwdn}J_=Biya3Y{xeoebgbr z!+CgSTEp10ml#GqPpq`ky4#P!6EUuapl7TC>+Us_r0K&m)9PSx1pdApSXClUduuqv z`tZyK5H)edMj8*#Ow)&Fb_KVWC#lE7Gt>0pnKW`GBvUD^!pJ5`fW!3RnYV(y*i+OZ z=kUx;VDEHAs%Bi(IXv?KWdHW$A0l0jY3K0F(~y1R$?H%*Lr!JXhi5iq5`)l6!e1v? z!q6Cfc&1?TA#dnm#7+_q&rEX;&+G(QZ&&WT&PG^V*D4y}>)c*Jr@T zfUAdpG5)^GAT;Xn4EPLv20W$R@$chFr2(apYCHp;4%E?~7;>AQh#Nxw1la!?GS7fV z$UFo7HsBt_|1sLWymZJs1D?{C@qgWu{yk(I89Eu_Q12Nq+O4+4VrC;eU73Ci7Pzt4 zJ2RgCU2xZ{!@Ovjtk6x00ap+IV*GvmOUELF@i|JnW6RYqZ8s6V(sq{%_SHLq&AKeo64GJxWL;Kpt{r&AVE9(* zLZzW=f5%Op)xC&7WsLgvAV|W1Nb;avbPSD52ESHMToBnM>Ew-!+(e!X%Nxlvt|V`4 zWHosNW1YZx;L6pHRZV*nvTPh&z7UVsOZfVq?HpWw1VFVLu~7RMm6W9&Aj84s9PJKM z*arufXFCU%vkLx31!A>A9~@ks?HpWAaaMye;wZn2WIG3!^C{ng^5>~87mhO-QO=Fb zb`CBlr@sp_qWm_S?HpWAjajZp#)x$sqMIfG<1+L%}(?oQ%1yg5iCkFsdeTa$YtLF24>5 z)@AJ+T)vy|V~D4EM{bz2wYlr@IP=UEthfZBLhq{~_&t;^auxcm%2 zcMwEJ=|H5c-&W=akKt7ovd8}kBxUU!Tu#tC9!ScX8RC?+b8tC1KN9p6&`w$7;Bxj* z!{qC-b`CBlBNrv0vrd<_b8tEHt`$YJqmAjZb`CBVTT<4)DDxpS-(*a56?9p%%#1+! zOYBbDXgB*Fp*`$;38$x>Oqx?<7YS`-&s;=*vAr5J^xn^C|1acpMBg;jJrB)(m)d+f z<^TEtGPJ@Jo2N=OziKS9NF|NKdtL?S_~}QA4Py`fzJ-e+(<0~i=~uu$?uzthzrO6~ zRM5vyuZ4nA-vRJ@Sx`S7KV88&e%eO3Vq5oMj4(eD1}e_6Uxs?1;#~W@&|B?MOX$Dd zo-cH{o;?wND9MZrgVdztXNLbhUk{(0lAbLf6>W3tem9E%aV{uh5P5 z`$D(a-wEAj|0(o7J8>!P-EY?wy4~&}bca1f=!5ocLU-ERg?^t=PvY@&#-Q=k`z7O` z@c)x>O6YGHjh2!Bd&V!~|05$q{C{TjB&{^U?vCmjs5H|4Mf{`fNz3UUW6u>j)?O`i zoc)l{@%BNX6YTedUTL2bI?+yDLA^YM4(GKIU{(_Qf4Hx#}?+p1O6=VGfQ<%apFS#4A ze@Q)8{bgki>Y&xHDWk6FHBx3Vza675luyxB1W%Tt6Z$@CW%5x@{g}UycFV9u7;7pVe85r%-t|a zMa9#HcT;>d)1AS^G?lxU!-nc$)T4~RvtxVK9OX=0&bn^(;_uk~i;yE+5NcV%HSzdH*Q&TH+3x;Hai9v+<6 z%IBI99ssBjsD8P<8rp&Cz3hcTd+U*$>Q~s?#Xs79QRq1Pq|ov9PoV91Uh62N)9cW9 zQ!b2lJg;@GE8_!DWbD!!?RZ}6I#(REy3vG8AK04Q z60*x_cTZKOvlS0)P1Far)`qMV4{S};2eyho3oS*WKCqSk#fm4kCU!2zY)*cHgU>bU zN7h0zjGh|xtAESEYM#vFtF#I^gQfX!Uwa2e>S{E+gh0Gp+_j#19U{ror_s?VqArEC zYIo4nC3+U1{;UTzx|HiT65l{+tQL$ZHZ^#=co+;LasXAlMwdnh=`oh5&1foAWK1X$ zrm;KJwmR71X-eplD16EY)a;vJWRn6(S^O ztta(}+VDiqVx&0f@~k2zD)KWuy~JZ(#&LqAzUFFt9J`BwHDgqHG16pwb%41Jsece6 zId+&9ly||>XbvO~Ha}>njMsrVj=xVrNvn#_aY@6>$1raCCAdGi645sL^Q`rxk>-n- zzY;(UwUQC;1K3g}hpi`#jn<;qh_qlFC#15$OG=|GX_EN~27OyYu>+M`OMFG54_hAu z?ig31I*3^2P0TY}DP_!n=$4DbGV?(nwtf#p8(gt5f`_dqtuSpJD zN3W?X3bc726jHp`B!{hk3h>udC|V7f+iQ};)(xoG_=`w2qulK^@v!yQU?^1`fVyQt zZm&rWTW{^k++Gt4zv@bUR^Zc>v!}eL>j1>wd%E(l^{ep+4t`5NG+w@EgT-U zzKR*9UI5_LvLLr`tyCHK+>HRqnwE?@ED^mAT?v~PpOO>$&4D3Azz%^w-ZYgzL4I?+ZGPjg2Ao^9m z9sv<=A@0uUmCYzv^vcFY#J52CDE?{(!}=Jmc-hcSn8JT9n`zs%dKvk^JRBh5g!l zMmwW#oV?=!3{r*qC-iKOR(UV_4xxdOzHl3nO4;xX5|0(RswO;Fh$ktHI-w!H<14Tm z4TAm^f8PPdOiM=krp{M}4I>%&i$uL7;uck*IKg-M<;ti9QIRKpmE!)Fb%Xe7-#70n zqn#&ulOiL$1A&D2P7&%GZap0lpYjePJ}V)$1D?Q=uv)|zX%vL!`fj^l8B1Yh6)n9> zBU*Bc@5eF9*a7ZtSE4?Oix=bQKV=+&=uJ=jXFQ)ZSl^D?x zsHe>O(-DDMKoohXa6FVEWiGl-8J!{HW|-QFWU-D#V@#98Ej|IV8J?W_rK8#oTem!j z@&{mp2VyLg4(WU5MQ4n<;eOo>z;iB0w-;9z;=Mi8Q>BeSAsh97!`o}9w=(ylV)EYj z4Cr&NhMt_8eP$gngOqvGcx>m18!H2U9d~MIkoocffJP~EKzme@LLiDgl;op~zw_3O z->q^wc*!-WRav2%lzn9%jIPk}D#8~BBO(r_K^&|@;;802roqvijh^9)M(QIDJC*s? z%X)6p9z;P;^wXj}%Di%-79FKXzFjX<9h0Gk3B9*|sAc8kURW)Fr$R!o+F=c*W13rwt7IZw4ejQLaM?Vc7G%w={g= ze}Nl~qj^AL^6gbKQ0vqt;O@uYm(Ch@sR%I)+29!np8@}fD^s}y$js5u{VJPxnF>>? zb^gGd-{+un4jhFy5V40zoA7Bxj$eefscdk3g2X!9Aky27R@%;N0#th-`g*7-sPZ~~rp>b4;xpTI1!^J?*Sjcv-)8VFE&p(^4YIj0 zW4sLVwJt_UX33P$&MIUt4*<`5AjvNcI^i?t4RAp30r05@Vx07h(9l;tv)({N z=MM<&u5K$e+N{jG;^=yQbHD>iKHuUfdGaJ~agtvWY>B$4J^=f3isCVpIjEuas(x3gjNGOqloT*Oc@JGAAXQ=y z^bPPYt-^_@p$)2dKwPCtz}z=k2~w2+-jynhppy@IZ$hOYVD<;dHxk0hWdYozB-A=! zroQQfdmH2{h>1s4FueliWrv-B9)$dfvUdE#E2Bg)E%ps`FeCv-0eIUrWN7*LfO&d} zW8{0tesPT${xf)=4Nb$m;Z2TyQcv^*@Rx`<@;L$Xr^g-rx{x)ZTo(ry4~Lcn%pA1i zd@WHuAnO~~7y0sl*`~WPZl!z*WY>B6GVe9CF1Ro8UbI_Af z4?*~p2k0b?6(`1q4hPI3odI|a!na(2o*0{dQ?S+@PE&FgqVuj;v5C^5$aL2bwhMU~ z%>)}em3cXa#_-qWAxH^MBg+TPX}ARi*&3*xWs%ZIYGlKpIqw|@c_mPD%Oc~Au58*6 zx-)3rKFWcw0d!j#xSkptdN^o)Khpv6K;qZSfFxOZYHa9G(0rHA?@xjF-b3*@qo>A( zP6W+HsQN0@3mqE#b*Y=2VHs)^GT-ix>RSc;`mRiO81!w-8J3||A#=|@pgIE4s|?DJ z8I<`-1<#-t;2RI&4IV%`8QM$>v_bjjRj}Izpq2u$)k8@J$MeYKl+FB+zTkg)1G*2e zLmreU!~Yvvmi$M2!Pd9y*1`7?0H3-bEV^9|d2bcG(Ww!>3y>xD{)ckj{4NsrX2^VP zrOs(zK2S~m30Y?nkeKH>Y!EV%-H%>CjU>`*5M&X&ae3?gK%T*TUffKAycwucU9ii` zv;93AGOyu-m!>un&|S*w>;sUU51BWk;qyHK{s9Id%>{d{Mh2&s=06zRe6JJX_aOh& z!!Roy%u~ThOC8K#kSCyLpzTO@3ov^h`~7LA`3&Aks{+u#14(a5`otPk$u!5HbJG!k z{$)YZoAO=|WDcpk^@h76zWECeVn7q$nMR^a-S14&Lb%_VX2IG&e`mT267M^c(HFbX zf^nRIUyrO(bSYxI?@VIX{m#^J4Knvvh|jwk-gl-8cmt!N%0Q%Y@b}GP-n-wK8gx_= zj4FbtnJ0F?Gi5Gx#JwRJ=!yBAiCtqO%yyw*(*z7TUDX2Sif;n@vl-!uA;bzglpxUA9R?O{cnS9?=@LmVw zIR3u*jCdMnr-i$izv3N-_s&n0+|E2&NwJ?#yd zQ(a5zky|m+7QVl{Z!kPw)+G*Y>*PY%4|B;Y@S?0DouZcxz#xz0PTKJo@g3!|~T-NCob=myqpcs5y;;3 zZwOnX~rS@Hl#UZS>^Ofy$(*11(ciG({~ z3z{d++*5Xb2c@e(xC4w=tKy!Jjm*K@-xsd%(190kq4D| zHEu3n2M90s0Ft_RHjQpITNw#b8H{jS#3lLmS-8_8)1wmyxwT+M^7}Vp5gtseq?xZ6 zgsva6lB++YjP2k)?n>0p6zlpiH~IW}mOo@~dh$Qw@_EUNUx)k)$bR(XYK>?9HnYVv z49_DXnfOb<>f-vb(F~%0XhNwTFe*lET|c&%Z=rj`=yah(!i|i*89B2pCT)zD3x-q{ z;e{t5BFWA05V9hBqo=RHox)r(nv-w%wdEJh^wB!ZZM2*k5A(3OV37{2NdVz%BWY4`UQ2G&6JuB4R>a>| zK=ap#~<^OROCR_Mh_!$8Br_B zRxE|hdPdC3Y)<1P?FO?zX8G;l5R?VshH6}lSJB9Ee{u^@rRqSd3I4v0&`_eL5hwh~ zV;>`;2c&~MLlZz22%|29MW)H9eBaMYLfO5$()J&%|xRj;`T zy3C_Igz4pxB&F)-k5YCZ813T8UI=E)MA+UF!N}i+#?%V$w4WO0J~eh#=EDJ|6d@O3I_?MY`O;9n5F;Q{=UiV)>l z2;h1rN?${Ej&cdWyk$1zn2Y<$a%8oMqDsMEmjzRxD_i(3WxjVDfSM3C@BqwIW3`gv z#BSKnp(#_HA?@QK9wFi`x#hzfRO;r-oRXLV#LTj&yH(XckQZW3G?;~gu zvyGsSN`vz5c0l6<)KNL0zz8=uSYo3fmiTN#>xgm?OZlZiAG*Pv+e*+$u zd&A%&y+Z+@op<4Z=# z-4rOEA4d8argLHNSWTVI_6s0KTEeZWeHKXmmI(zUb*mZEo}vPNnKgKYyoV;_ucENw)Iku?_?ktdtZPUOhf zsH3c{AC^{(cdjHmPtbz&H+8>BM;)R5hJn=D<%q7;IhcsM zhZVaCKyts(qn^aYNWTj<0r?mSItRuTE`%QSt3Yn0m65>*&`M3*h7EvS2-BhD)=N)C zvS4KjZg}3Xn_UP!YBDZHdL;r{;MKv?_NF!U?OIPv8R zYmJ-hps2w~VB=Ei!o+AVLo-xe47HTHNLqy_;^;2KgMm~W@N(=;mTKKQ9hU+q1ycU7^|H-?vh}jfpt8Aa^STSTD+{XHfx^NB zj`;-&YbS7wBmc(_kjI5h?GxiLL{PsuzA^PMKduVia@e~If8SU7PMmZHm$ zP00&eXY-+_Qr{Q`g;si=veq7Eu0lbk1FD+g(%#di%aBdb3rn*3tWz1BLtZ$> zr6vM$BNdo5MVFqBnaWSEg)Q`#*Cb8^FTCD-{ziz`1M{$_Ax5ZXWbjK(;mzj94{D3* zC2(IQkSWoHsOL6w4Mp-ZU0|zrakT1q%s|;@8Ak1<<=4P|R`55tn`!rfg>YY5j_V(@ zR=fart1M#d96#Q<;lT2MBeq^f@Q$sQ4}4r9TQ3{<+-|gt_%CcOA6O$t z%U3+^|MWCoAeW&3gJ`JJs2y@KlCOUk&N}rYJn|#}+O4Uki4L9XP)>`l^-~i>CH*#N z*BPGr@}=lPqdFa-MLGE5vcFJM>x@c%wi1SZ$dz>;ycm@i9)oCX`L`d@tF1 z+|_AT@C_GoG4e5FXI;5tgx~$lUVgLp z)1Z(k6Zx2ezobjiWt8KPtXa|Dn7u3IuXrzf{cyZQXD8gI0JWnEBd=BbRo(-L2Wk{J zfe!^>0zu3#2egnW7>Xl0<~Wva24Lw$mad|uk$&^^Aji@U0Crzwsa9R|1@OK3s-}2h zVgRoJ@RkeG1IDZrcHkh^j37-I=tY^Aw7<)#K6zJ_sy@=~iC3TeY#6LG38%v0@7uEm z+Ftc(aR+40z;Ex$lyv&M>NBuR_4!XkBh_TUr%~kq&3Vww(sp}p#p zkcuz9&{t1G_5$S+Ij{N*?tu|MWP-lMb+n}TO1>5GBO%}$B0xfRG%cs#Ykny z3SId{)u(RMNmqLSdJ@ERDZ1j-hn?wo^;vL_6YdQF-AolmUaNT3r}K0t@bv)fASiCv z?^d57e>#?41mLxcEV9W{|7UFU^6}fQp_$@n2byu7kz5P!J|o5bzn+n@ygm8G+S<$=rOYh3F>XfO z|I3Ut^~t}s)n<;DGBbluX6K15?*C=x8i0-DKO1T@T)5#Ts{74xGvfYVX1G8T=kfiS zh=xYa5Nuh`DuJ=w3K50tpeSCyau=pyG|~t&kag<&W;i*$r~*O0{8|kmM=y`Z-@3iL z1r@=&9^zSqbX|o2w5XT4tU5$1z`oZNsa_&?dU=mrKyr3L_KYhp+sotH0_FDdo(w9% zsZRj@mI@VCLrj;~%d1L`+sn(R$L-~v3@hUgKviW#y%2w`O_$fpyF?V6Ufzr4o!~A9 zWCRtMG)33{=;h6-h7{in%t}v#X%jWCm$$q*rpMCGL%2LnAXB1y23&c76)Vt5E>{D# z(0$?>19qc!;?5+Ut`Js@j9+-_87NNSNQ3qg4Cx={n0 z>Tx%>8&$25<9E7Ied;)VryF$yg)7}EryCW?)PA=c#bp)Y83@bmBK1OOZWn0)+{yJr zOyKnihY51JNF~scE)v%=lwNj`%({ZA*Z5kue)TZd5msj|9_HUnG+M_Bf;lRp*-P-TKkP?6#BTkK{GL-`D?c#Kx^Uqc%g-5$s;BNDUFWQ+2k@ zf_xlg*SPYsRY&Gcxvkcwmz3btJpgZ|!VK6_ba_>0E;(-1k+}_StA$hHjmH30Cvf@L z)27R-I-E-2y_(iC0)qw0J-8YyZDOlMDnX%jWC>MWRyuV}P05|{A= zG9|j|==l(=Ey=e%2V1BzoJ-28^Btaiq>nnZGJ4_kbID1qRbYBm=R15B<%ANRMXZTEga_?=cOb%x`2s?LW!wBK#DxRNDY z7jbv%5*Ng{E!ZA}?6zS0;ZEK+k%_%NVF4AK7VH*SkQPibB|eY7;6gtvw7D8HndD9H zjTxo7>M{!?-c?`I4Q5|~&7=7H`k;#$@2aod4cTYlpL1nu7y({a{jR>qDDO@0>wQ?- z0i-H-gJD#{-#13koRh*gy+wj{-}IhbkFTo$sSdbw_0V2d{rQc`m8?qCw{GzV<>HSW+&H=!!?W7`s;KjICjm5i0aAa^5Uar~Gu+x8V9PUp1>W+tjmU)1D$7q4tmg~P1uLPBn0w;Te z1Ok1o0I>quO@)~b61pK5Me#-^``VQ(^NSNmC*AASxi>Ki09TWDaN)nD^v8`2>b7st zveh+s0QSJizhE}MIE{f%AR*cv82I{Gy17Z4HSo0OPC_Kivj}6OvO>@Nfx)Y^Oqv;F z)lX2%z`qWjse$^*{y}i`IDm1N`YEYI^!Ty{+^G=)j7T<~V)YYE8AOY4->Uj)!6uLd zj3z7x{w214qml|0030T3lL`dKPsV3e>V;Myxcce-Lb_MN-5`{{0q!t&Sqz;-W;YC$ zI|6s|z@NDhPCctTGBq-|F-BqU_RSa@29r&Z)LJkE<+iKkF8Aj@9s#h^K$#vK{cW&3JejR=!8(qL7N(r|pJkT%->r9VOONB89joi#myCT4WdG zMV;+e@jf{{a`_AJbWItAgwBmzTL+$Qi4#$%H$@&q9v5}D_5nRVGGYWgJriGnXF=o% z8W<3J7Y3F^8Zg;|GLM6Icce}lJXe%E1<%IFbw9#0SfaB%V*d)ykT7e(ilM(4U@P%AIU-0EE-{b1_K9;&=3?uBU6f`lF#fm4tZ|zjtaA~#~yEpl~g$@ zF&7-}hp8K@*l5I|_-&uC*OJW(6rTnx_AP}!`jTG&kAEc>Rt^`&oe?Spg70FaDol6m z^|zsNM%&}|nu=VFjxG2dvfq7C8i-;fO3B3u@O5ertpG#|jo@aSqUgl5;5W$HYFQUg zMiVWJXooxq=lY^8L1~^lcWPw~h>c-VPUv`XJ5L>@F$0jd#UE;RY(B=>iW{gz=JaF4 zFyj<`ieBUjtA4D;*MQa3Fzx`VbLApzY%kiv;%Z6~`x8;Tz{Ha@aT+C7+*6y#o$Hzq zSLxtrGj^0Y`l*g$39+Sew82`)zSgn>RL)GHU<$YF7bL&TPifB*od9QU{7(bZnwCvuiW@X?DAt^ z`!t)|{Kk{7vpUxF9RNZ~lEM9d|7N)QqX5_%z>R_b1{lH$ou~oaF<1lS9@J4QWV_Qv z-{9OzSmJ=j|JBOi-|UMX1ZC?mDlSXE@k_`yRUlz0a>rpEb=ozwcta+|%yw=>91qq= zKX@&)4^<$cHuoovC)^Rgm`O3UxovSgRYv+$#`nPrB-G|^#-+m+@s3OqYIBq0(qT6) zf%ee~B-G~K$ECv-@oSkR)aI7RrNiEI5Zb?0AfYyQN{)xEi!5C*zh;uq1V5+8Bj6P4 zaNZ$vRT@XE`I%iC(G~M1%J!-Zepi)ms|-mhtyeLT$41QF2;B3kQW!lY{^K@WocRg* zms?c9H@smsVm#ZjxQni3ant0WTyumIlxrpBTaB^~^Toijz5~XxxS_6PadTU^>!DYo ztSTs%N=fFHE%b$|(dP>;+6qMuRaZ(1q9Ft;>DyHxfh7BV>T+AvE85^PyvjA7TrKCSIcaG6f)=-X3|a?pwVbQw7>(Fx9*&oV>gnt-hOR?X z+axb@2;G74aM#FYq(Un?!d)|G5XvJ|9(PQW{4`eSaP9&y+ThZpRtCHKp>NP%Y*JW` zH+|^7V{q3l&)1JoPrOSsX_)dojb))5*`z4-Pr4IF!QCj;qMhI=xQo-$=w7`8?#8KN zziTQT5mrbxJ7Plmgb4)G%c^gnvRTVmZjsovLoE(bUfQ3@MhUMZrhRG zX61E!dLf?83$pq!Zk#jKys+FPy6;B1n%6FO3*G05sZ;J=y0eid&FhsLPPd7CXkI`2 z2D-Z=?adoxFQ=OeIGQ)i-a&WY5pXxnkU|R~Zq1vgO1dtLhP#D!mwyQEmfGEi_zqc8 zutDOT{P~Oc&N{EMiSMG_M?-M;)4H$IJy7#&AfKC$PT#{goJBr2ACqwa?&SBtAJ(FQ z#l0;fNQbYqC#nYGz*NqmP#M3Hr?=pBgi>G6x!VmCtvDiE65vfeiW#Z`>Iei^G z-NbWwWGOv8#M3L%03!q~E*DSl$mW*t^cGK_NXr`V3=&V@$mzB4Tp^x*kq>ELsCfEE z7SS_YJOd(^(Ar4x42-O&wb9}k6lqFp6UB2ym2qA)1x38EnhqPNGeSdJ0~7W5%?Zkw0UwYeT|zunISz8eh6mdLV_T8^OIvp3{Y+ ziMdZ>HWBl%#(YA|BZAqg8o>IcDf*%6>^0r0Q1x1D7`fB&ZO6#%oR5*T+)G;GV^{8u z`pWRb=RKXa3A|w(op$1}jL;%rO499(KEq7Pc!9z^ zko#1WTPl|H_oa|hoqMWkNakqVCnck$Psbfrb?wO9M(#K%%U9yu*T}t6N|n2>YHaN0 z^WZl0C-60%o3X~@B@b79X#u=(zsy%E>FrNoR&&EvT_YJKBlawAxRMz@sjb|^)iM7e z%Ce-dKan}jJzW*ESuRFQ9fE9)U*gGqUPZ-uq@Q7FZPPCfcT>iPe`&xjJibcq)ymuy z_F_QCW+?!)^vAeUtQ=NwaeB6^JY;CeRlXQEk=0N6F~MeF9n!VE4N(;5Z9qms+qdo~Wx0b~~VAm1%rU+zhJu{<{AUC5Jk zx^8m;Ml2^E?Cm-~xOc6736Q>w?suMi4uDNskF(I?FNa3#0~W$Se??9*Dlgu(d zSpeCTYOKketS0d>GGF)>+#}Ly;?%W^W0|?-2;{FyXNgnV{w9B#*)&t$BskSAE;ll} z()4WUt4%B`O1>0tLP>2RNh`sRe7Fw_Q=&4aWkepn4W3vchxTxbT?Nu6!B6!a%IuBt zrGkX^?YgoIc7SJD9PyJeM2>DbBcAB9!PCAj9`BZQl+J=QI^Ty=u)nz2R3lV^n6&Mk z!ia>)FRXSc7`G>+f^W$fV&Ucoz*#7qLLO_>c9C{-YHz!2snkuzp>}kF3Kn4%_Adgz ze0B?X3x6S|qHb*akzYyp9jDELou7R%?jEcd7P9MUu#O9Kwa1Oc@UU$At8Ov4wXg=q zp8gf=-!z*$4Ldd-zXt60#KwCbH?|9phPI#Ts?KeQ9UBF=gZ;j?5nJJ~6~Pz#lvWCt`!C0n zVRT&B7osP8G498#!|3=1?%=j{Rg7CR>jbeuF=AV{f!|Pv&Fz}wGTr{l{XgqJXjj@k zBw3cZ{si3nr77lq&Qd-`?4<~}b9A13Ms~c!3aeMe{ZLyp3hkHRt|RWC#VwqJR&%*> zE@#lX6j#gYhM0vjR^q#eJcZ>3Du!2XwnPA06F`n-{a&7WX^PjdpVthzlAj~Mpj<7B zI}TgcA9CeButAGk0|za-Lws^~$kQFqgMVO{p>FnOv0sQLEOXx{kZzE?=Ki~SC~zTM zMrL)iogIs1l#pBUY7sZ_H8N{Z)G&n}?$Ya&+takQHksOyRWA2IHNGX1r~OzKr>I!g1YE;(?o>Zk z!Z*!Mev_=M)rK*cjL$j2;tp``!QV%qN?(iMMYx}H6&?id2~Sww6VA_p@CXF2xk6*` ziY#Sx`U^Hrf%mn`*WcYAQfCofA@$Y6>O1rcIt5dHB-oc^Fit8Nk&-AN%4ArQlAx24 z(clCvUNJI{)CR4ts02aBy+qt==AgyV!5netSVx7!EjLl6aJ4L3@|~wwTNY2W4GJbl+?K^taV?97cLl9= zxx6M+=9T;$hfisaWeEQzVDi7n@S)dhnp{eiL{H~%a99wTU33>-`SABqVkDhG>2!_+ zzhnQn2iSvLk0#(}PK<11to{Y|8*!0BwdkA_nV1aGXJCKhi86B0OYfWAq!Js3ScXTe;@jOJVt+ysDH*0s2X=`5)BE$#%71s&NG%J_LdXwiwXlrmn{ zmK^OqD((;E%9#gfws1w4pdHJP*PzACF@xf^tP$d_)PYjEb1ZIR7nG}Iag#mE;?9~u z>ng#J6STO;9eM!Zhttt*4_a@75wtpX;gy^E<%lpSS4%iyZg`SoaR<1dRVe!W2p#4( z|Dd&4lEY~XVSXYHT9jE9H^s25k$6m47MCnp7B{sBbC(Ls;||ofZPNpM_TQm#YS3Q=-6ns0Hi+X zqsm%^8@Do?kEzVl*ufEjc6ty!L{%3zPNz*UGZQY=X{jG~MLqDwj~ihaUyj2FD1Os- zsT0|T@iV*^E?k(?>6Yj4R6!E*CbUSv_#<2m)r3>X`>)_^o7(9Cbn5F(F^pE7_CH`4 z!{C}Te*JZ5E#R6vclLzNweji(_k}s*`)@XkkA=;E@SF3vD(Hb(pcL!hoZYIA;WO@k z3(>-_oF0vC%FQ?uPiagXy2gV}Ezeyz2(3O4(CrZTcHvU~=Bnss zLu6b@@SA^P&lym|F_ow-BGi-M=7}0?)ZB)cwcDbF6+KM&UWwT>BXYP(IaCJ*S98Ds zWZp*?LyG`yI&>(Y-Bb?uw~$nD%ZQ^6HlB)M+AI>hv3$%iTYbhr?1Bb?Z#piLiti;A z1aH8+lC_{uIHpi7$_yXKK zQG<;JkD&@KzCjD);WSu}CxE+pw)TS-x}ziV*eyjeYfoxPZ#(TBR*@@U*|l!KCAYI3 zQ>e1?Q|pG&l)JXJB9~<_tA=pN?J_qMz9TeqLJ_wU1l>wj*bd?P+wHC?;mZn(np|pI zeUlEXq8I2dK*kqzmR(%?DP(#zs4l=N!De1zb5ZW~PL9Q`HQi9k+C{5vwT%kFBDWIM zT!cz6;BPiY!v<i%@gMBf3|8cVU)rn5CCTSbilI_5>tEW^MeB__Kvuejp>}vh&K)|YL+-l? zm%s1CA(fyTf;L(+gwL=P^-0iUPWY8{G|-+s|Bvci`}cR{cM339^dkgwHy8h$?Lhgj9b_U? zNbV+ZC9YGPVyVM@uAT>X_uq`KwczH7iRI(+8p7jS zKFp}|6>{=kcrwOoAo_yxQ|pd`YvV6F6qG8o{!(b_N2hV_A%&)Xl+OYv(u#}G&tT&` zF{eCg6AZ+*I)?sUNU-7+5==-TQQzqNb9W40L9w}$j%qquD3?y)N_5Jj$Z)&hcAU&D zL~~@nKBkF#fsO;}vk$dWJWaQ_x@}AA76fuVUGAu|6)28S@>fw4gv&+f67G7hjMmbTdH-1tejb+f?^V$e#VKG*dh_?v#cZH_(-x%$64 z`gOR?Tn`{_b@ZBf;c|_?#C55pv%j>Z;Vzl%TJr|VvCa-hpxh~7+TQ}b&kdCO0_Z?T zCeh7E*O`J0Is`;tM=zd1$J{_~bFsIgTAl;9@!zn2xmfpxsXlWU<{#XLKnig2wqB8% zPJ6nhznLx@!?dRQ1T<9rfK70W*YZ-&O#(a%d14e*z9NmIdIT-LGvmuObATHm{P}^_ zj29bM=}WQElAG<^0zntstB6m~+Cu%!(EsXh`d_&EH00`Ye+24xUOxkqUhc=dj5{t4 zHw|1Vwu!oW8r3xH(tBQ*p44MEo9k0o;GQ@4K;CRi>)qJjJ`QX@%c;s&_Od-Uy@bK>bhG zM43B&sH;!zP*<5AqdM}^h-^pP3UQHi=CC3E4BbGrF7qg)r~t#^E?l)3p0*63KKlMG z0Pl)_F_nu`d8vepQT@rW7zKgLHyIZ(I0=g7|JsGs@aPX1ZK>6KEnZ}Rg)tO~F$y0sJ z=s^)8Iam8KBt5NZ^0hzk#Mps9nlJw5%9R<=30%*3o`ko&f8JXRcX^Mz(?UDueJiw; z(fLd_w0}@Jg7-E4YG?vO*Mch*%xV9OI@}g{CAbeemAJWweayv{X=hsp(%iPP`i>Az zK>*742`*lmk+N&BkjqzvC99Je!?{jUY_wSk4aiTR0lY&NQ@!{IFUN5)>Qsafdkz^# z7wLG!TNiGRQKtFLu{ioulbeuy`<_N)A&dOfy61qFJJ{QHl|*%gWRFMr479GzW}4TOI=Cr{PnPA8YVdvQcMK6r6NY;Z1) z2%Go+OGJqOZxN}^9nJb85Z?@3q*&O1dR6~P^^{_7I9x?pY}L_mU?h8ZPm9pEyg%}Vo3ofFw6%Bv4cmEf zzElP0;(THI`G3h5;{RK|1g+UC@;W_2# zrF(gE7~C=~c4w}^`4rrz9c(oZ%XJxoWfQKSBpi#Y$@LyLI_Op&x;+Lu{=UMa+YeFX z<|2P98bkhe+jbcK#r`JR-@~Z09Rnt#p#7jc3#ojQ8q?mn`f5h!xR@4#E% z2sCoMr{Ha11d1K+7qc6^i~*!TTSs~8Y@^_2#4gOZ6?~P(!RH(}pHuH641cZc84&IS zdLa?S^4Z^M`PZco9>Q ze3im~HNj4UC<661m_AB4ru!6Vn4ZoDa4{dlm(K+{;_=ob4P3cHKLLa-M9sni)bJ9G zL&GIMwXPL#-7>#G5G%?hGbrEk-o^pNgW=`ri-X`R@uYX`Nr%c3Fm{ha46d8@6WsZh z&sg;}-W%K}D?kTt!4T9n(?((T`8}wFy<~T(G}XFeIxY8V5JtginW@{#u>8FF~hd6jcE?$fN$|h^Xp>>GS!EkKEc$8;aN+dS& z+k?oRi~*5^LFm`2jG+vbj!PqhLJaC!y zWB#mG_8q8d{;VZ-qR^#wr?&Jjvxf;?ZqE|B!rm(MPWySGEA5YkuCo6Uy4vP8`u?oD z?B+u6wtES^#~vnhjeVQYwe~|o*V(TKz1RLl=z2Q^x$e)}Xy*&vYdA3O#CX zaOkr_->^S)=$}H5+2t>zon!W;pgCDKYKb_aDr1f~Vk%>!ILfO8rX?q-Wm>ZpXg##^Q0h#xbPRTQEoyJBz>c4|Hg`TaO--Kf~m;q?EbNG zXya(4BP87@eUp)`A^{FF&wqt5MuI)wQ`DjnX6GXi%?A5+SESyJtByAJWGm}6XefA_Od7ci2AuarYie7oY;fzB^c^s$j^Eh2}5IMm><31U_!8*jK9tl zu~X&HIoO$J=HCk&d63m}<-Sg>84vEkpMA4=2|639J!Cyyxni)!^d*&{zbxs=YWR-W z3YZCyPa#HfXiR#4i0?5MA&0(ZG;i@lM&L!1k3YLp(q{1BXp&9F4S9H~X1BBUVRi;{ zLXl}?H>rYl&!;LJfRPr_x@eRSL6~p|NmD6vqJO~C$qZCRlvCzK&%u|+WxW_|SkcKMJQM)uMU zkX2KauR{$CP}q6&R3qmSW!m59T>p#;#A=1k6Q>zD4U{%Jz-i}#jA)y8AnK*e2P)uBgxUmGqzKe;h;Et$ z&~Rn0t&O|~XemK-ln&$r^e=M8E3{{ItHy>?Hauu+q8?6S*%qUEX!a&ZQDmv13%X*zM z8}`Mba>BD|KUX3vWxYyOp2EmdC}q77nY~y?=ol4<)e2J9Ta|gVsTQ9rE7oPb9mf;; zbXjLapvikoUrLqr6FAG#ugkig3v$Z(d1cN+(x}$g73s2;Nb9o3QHr(pA*}$-B#4gE zfk;`ut;`S5TcvE{KY^sIPb#wwvX`Jk9!ScX8RC@nXUhBq{ZDdE5mX;&r>s}2%IvWO z$k%24l`_Yp|3*d(C7`n|DrJqM8^@tn%(AXc5$$MWx~zXt=AmU;RhRWI%6zDkW(;r@ zbXl{^41a}7?AqN(>)K6(*0b9Qt#9`f+R#2Lw8;KVXd^p_uN(df#dfmLCiW8HH?{8( z+RWZ2w7LD5(3bXS!Ch*1724V!Ec_CCywEoGwL;t4^MtmyD+sQGoiDVbT_m)V-CAfD z`x(JqX1^@7t9@K(H~X~E9`;nh^|S|&RxGk-32kJ**n|FJ`y^=ay`RxUU&!gpiaQAP zJ=i@D-O?_#pJ%32nq!|p*WF)fu5DjVdaHf4(A(|hLKoXRg)XsQ5PFCGj?ks{w?dcO z<$6(XrQJyAYP+k@du*O#<*&5HzD4L-`#z!f+Aj&+Xn!emi+x_`HapUr`1|Y%LhrX* z3f*oG5xT>kE%ZTqmC&6wk9P7``aa`QiO0_w6EK3|uk=gCG2#Cw<6EJ>Wwh->{_hz9 zp?_pl6Z&VyP}1BHc6~IY{@jsv0C&AVceFiI=otGBp=0f>LdV(rg^st637uenA@oZ7 zg3yU}<$lzkWS0n?Y7Z8AwLM?xG<%ECYi)j>^ygk@e?eexe1tBw-vOQR7n-=rYqQg)B;ZByS98H##I@r0ZwA7^zO&FrQg>9%OHVf6|rd&Pr=h9_cd|)&W5M45@%94HM(>xy^e6=8JsKJwJ7O4%_ylWI?-FdL?8?}bh>V>B zqtWZn;B%rY<0GY%-YZ{W3wc*oRxkL_NW4QXtW2}BM~hhS^%Ad2kAiB z<+Qt}DwElO)2&n6q$Y!mq}}Jy(x$de-47!Etj_SaOXYhI{c~>Z0)OXn%;Y{J@WjgN zWhYF<`@4!wjeZQkTs3@&GGf<;M|ZeX@+iDyM2AM}CgU}BZ`fx< zM}`wXh^Y>q#pxn5@bVv5r%%a+Afrwd=h=@lf}X(JyQ)z?(g&J->8Vk_`nTEObpyjU zg>WOlpvK;TxvMoAUP7QUM&5c}!%JmzG zsaEj&X2O`dzb7r$9|wjJI)F-0qf4XN^ceHhW(+8((3nspKw~$lZFO+eJ$j7-Dtg)wduiy$3hdj&z zdx0xbD;QJ(UmNoK20z5`6Yr~y5Z_10-6EAUcn1a_f%bYZo`vLP&w$*A1p*lrT!xY* zWwrg&m-X^Mu_fVh5HNdH%n0r^vcU6Oo8 z2}R5U81o~r;LC_$e!FrUjcNYgIFwF!iv0~hEq9|J3{_=Z2m_W2&E1C}nh*Z%H1Ho9 z(4r;g`*R>#5B3gMr2K;*pRW%pS&?$#QkVcose?egUKTarP7DEs?=icshLuyUOgDx` zU?3QUUypz&X@QFVCk@>rZW@-fOvPBwqui`8X+Pc~5c3Pf0-+KaR!g{y?18u|lNPBM z?F1;y=C;{M8&r&aF|Cf{wx?~^>Ql<7D|(IWSq$(V6=S{b_c>ylbX=L|hbv>fhi1?^ z#3(mWPx?)nk9WeBr2y>c6&*&xm)J!vE7&u7Fbkd?51{c6_D^^y9hH7>Lloq||Hs*TKuJ-2-{W1AYG!*g zyUQ}Wqy?7D5|^AoNfH%F5+oxTL_`q~6#>a6lqegTcriZA;0=KOO!AXJs{b6qv&>A0ZL3mKF-hgKYzI|6YTYab< zAtw|@K$uk)9vJ(&H4;Ak5EDK>{hB{_|~IB1H(V zMNHzVBUq8rd-3SDErPpwkebiP3|>>|gOEKB*aRQvwPEpkN@v}uocX|3l);S>lK_~G zYCIPS*apVEK5KCzmS##XpQD^-fW7MDQvN0tEtHPp`ac5fXCJ40a#Fi0-QsQxnP~p` z_)9JYS0<((Sr$ET2Z)QgJ_s#5lBujKRlQXp^iw%cvc2{E0}+MKR(cPbEw7xBpkLsL z$ep26=QCXG;h{=jJ`r^fY_*S5!jQ6Fcp9WJN)N`9CZwBr(P1Vz@z-@InZYYZRb=t-Z)7c(1Iis1gN|p49JHCAbHF?@dDw z#mhwH)18i~xGxKTru4LVXm+XqysG#IR+!qIl?=6n7WCCnj96vcc?fo zGZi9gWd2gR?NgAs03nz7GCZ?_96Z9esW|IZWl20bp!3nR)n>4EmX+DUqA@YDe-GcR z%Ci}$5P3$rIG`&%3F!|J@|7=rJ5y=$*fO9$`Tzv=FVK_%n@6>S45Ok=Kwp9@SXBYo z&?iuZiMx&@^NfH#facZ}gdskOT7+aO&@g)h^wn1?XBt>noQ5eiWnvx{(3NjO%r}9? zRYOwzk~9;uVNDI_3#Nm$7mU|^*4JqAmgTZ8w_#X33#>1|_{n3L3s;^2*LgnN8O8kI zP>Au_UoQS8J}Ime&ZWZp0=n9ZmQ(^lE1x9gWk~M?^rFF*bT$Yhd=k^-WbyG$`0Idf zGz7`H5a5+QL0ST9)w0S5^_}R*)y-hs?z2Qq&Eb8ZW{Yaux(!p@9CriZT0vc5C%z5? zQ@x7Ao1TbM)4dS*ElSG_-mn`5_29ddkksE~;z?y-HzV&fcIp@>+zK`^a0emU3V{_7 zmkYq)or8MIy;i;ruui^w&4EnYt*YUX8cf^%2z;X(Zvx=hiw8`zV+HiN^w#B=Bp7>PQB!$-u8{1ruz zpApor&9`a)9oUHk9^(KzFQ~I0v3PzZEcwIV%KwkKSsc{uudw=C0Be`P!%W{bK|TH| ziw^=eJb`y`aiy*c>W&vG=>ybUV3#Fu&hNrE26gI#7QYeLCLhnbdo}RegZjJu)CWy&ztWfb|y`3adIyg`{-hy!{A@sIyH% z0kEpXO%bL(1N_^d9zNXk>Z&!cjy_)W%2d%$J%3Y`Uk!N%^cJ5;{Ain{Ku8%Ydy;$P2z8qRgo>)E&jh4~m*FO_9VCux{X!+Oyn z%lsUyKg%)`oo>pn8<2!`VZC&WrRN}HmGL*F!NfX-bZ=Pyc!?$Py<7J(B*~VO#rJ~Y z=fe733@mB{7?XS!#~CMUTVoL33F}fceYFtaRUW~~x|jV-X+*z02+el`!gqL>v~PPE z@0kx)hlqaoQLy%b@k$w%ll8-cD1N2FpJ5gdI0EozpCFSAQ^RdpN&l#D@6BMva5q*7 zf0Jn`;6xc^(Ik7F(Sh*qXM@@lwDvw#`k$0P(6iLJFA(my)btL4!61zANKVQNYk;4v z!k5|>5x5xGQV%yR!qoFE?;>+=MD(lInvxD|1M8vFF&j()^WBIZIn?x6fmgu#kWBwN zRqeW<$S>&l7?__$bW2=JOmE->Sf)f}CUpVVVT8Yn=viGXAO6m?7E(nCbft_x4A?BmeplyFvBw^_clmq>mFkk;k0AQG+M1mS6y=@c^orGJ~X?^kV zvIRPArCZCkzs=9O6&7RKW!*jlVHub;=HefCpV3#~S}fgDAIF_aZG<)@@(FYLEnz9) z<2(y}hdApkh~SxC4(!BE05499)j6;eOGubJaoW^I=|}Zk_l}x)Y;j;8({V{`D+Iz6 z(DPHMI&H)`(;aF?4yHRIc(s~@j##hNQ_q8p+6{>(nVg*SptVS_bvnKU*c%A`$b%Hm zoD$g+|C+SR;ZapCsQ^Xmv#ZRBL-vs&uslk56rl0Gw5*!YoAp$SI-(ppVK;%%@EJ(21NZ?yKA zNIBb1Xa~|>uSREP{tT7+N^ML*8RP_0C5GNgAHn6yT6vd>u4WVl>IZw*cwoaU|3YXb zp*l1J9~q#s($I6ope+Ocz_o;yD#6ZGSz$ca<8CbtJNtiXpz&KUsv`2+3!!?#Ds+pHGq`E;p_2aL!JQ^vup-;NO(xm=qk*Z;!#_c|a*B8%crs ziODc+u8q=H4?vr%08X(Z2jh;A{zY&KQextok25oYjr6}_dER}k*E{813XgOs4GLo#+ z`|^HbPlr?Q_pyE9yi&xS7;)R&hR!sqcev#ndZWgJRXI3demx39h*CNoMXe4)#W(l| z+OSN{l=R<1LM5eVTmXVfi#PF2zEf6wA>EAJC3};4uKJw6?Gy^^#5nN=G)EC%5;u1mD zm6rj>8n74Fpr|J!{2~ui%zq(#zJwTVNb6%POk&7mDJ4sbBHE>j_{Xw40{SoiIbINv+?yS|sKhY=ZTs zxSZHM98T>BA=6lQg>wmsh$J)}#o(yC2U9NvCrpE^dAsV$Y9G$M@*b(noAfXrg5>S4 z`w7mYv`WK3Ctc&FNM(;py&0mD?PARdsj~PIGx_x2I9ttoBK2)w^V3P1_toX(-DrNM z?lDg@1D*7TU#I2~slO&^9%VEGuGbA;h)Blbjgm6Pt5`C|!N{riE#@C8k{V9!?vWzt z;arli2!EnXQVd-tZS^|*Yw2^7>1>oI(btty`$u?-tg>dQ)Pta>cEiP#b&(4EfVKE6 zo1F-hq{t&~xl56Qlv{)R#ims{4OU!b+h;U1OgUW0@3d`j78D*r0c6!w;h!=45h1+N z@Jn7@!Zt6#sXH)v&swU&mmxh2=?G#Xg0vCcyUSygv=M!}3$9K|OzJR9QL^$?_@)IW zrmAidF5bY+npM4vUjNPJ$Q-F;NxCwKG8|Nl6`r_aCi?~P8{nrNvfyB+;htHY=dS( zSsv-hI-tT=*g6^o5h)+4{qNLl-GG>i!r}97HuH*2$uT7+E)5yejlj&1YG)ojZ@|m# zneMr4BkO_zCsHdM?t)LWZW{~R*~yAjL(T&~q!_BycRtF!zn4G8FqaD0Y&hq)m84h_t1DmjOf z+xpeqV0yiD+!i{)^!n)>kkX&%iBvRbp4zxM)|A~AML*Z7pdV6JF8l}1Tbpy5+HKIj z!jFiw+}eFO?~qSUv=9$}m<_Dx-0zx|pNCwt;`4}WR(yWunw6fPyJn^5mu{DH$p6aa ziqAE&XLaSbf}eka$B6x5PZP;d=R>6&ob;XS0vn7;J;3B0MRGS zY>h`?jdAg%TkEH91O9-NyV%1RXn+>$r#~V1Zx2!r3r_2&>4UXcKh0`|6%qK0sJS1I zS$cZ=xO5~{uAc((Fiq>Hi}upR`l;JEg&kQC zZqFR!rdoHtb-8}6@lWLtLHQ+DVO8v?a+brU1c>;Z!J0^?PPnR;3ovP`c zJ1;v3XnX;!pR&j6OzWraqykz$75|7|;Ga@J>!;$U^;36x0j-~kpVm*^Sp~FyO22%0 z>b7deWpSZ*5tpnRb6Yp#>N=SQ}oeVX7xUe}*E9s7{vIWWez0 z5MlFfGNXA=FUQD8lKKXRpL}-8yBmPF4(iSCDd!r_gWa~cAH&}y&fuMbdMI!iyy^lg z^>8I)K+0K+5QCAgD`lqrnnT*MYEw zB<4%;%&Eycs*Fm(7QH2NG<=$IZcslm+{U{fq&M)F#2b;6qW3@=8r1LL_DUlE4us!H zO6W~l#vF_Y>R<3|ONt>Il~@t~WKGkkX>?Ez=xH@I2cZ*5Nt$T*Gy`i8&YFdHNarEp z!$3ISBPH%S{CU0;Vyb$H-CQ=GogI>z5AO()nvdAcy$8x3qQbRMpJ+Z}H}?gEzv*FW zBME-<*;}Uh&~7f7>TlB98 z;{4`AySXxhngr}Z4?n5-&~C0MSp~v%9x2g$Xg61s+z0GY4?n5-&~C2e>rD_oCW-k{ zJWDj6JIgd5+Rc@Cbq92P_)FrAh~Io@H&-IB2SRg_5_;n4bdn~o`Ot1It54kw!d8!DnopVAL?=XD*Q)l*(C%RJ_NpGH$MbJ*{f4HhPli4o z@Q&BmzzVT%)X~QfqNB|e!i|mE5a$^PXNa+cRms={tz_)Wf<~KLm5h0;O2#}^C1V~d z#96_0))s7t9YiH#VlKpS9_JFjF`re*82=1SCt^%#RWhcu#uQzPp`(Sn8OX%)t@5h{ znCdEGaJP~%xLe5>+^u8`?jkU^6}st*t6=OrP@WmM-ZQ0}+6l`Nj454CFPz@HmY@|o zJP-AL4Lx;3`Fc6p+nCZNJ=3{CMZ-`0g(rSFEVnjE@pzvChE9~YL@Z8$Xy&UHu z?llnp2sc=;n|n9T(}!U0OS`%JZYpB!=9qR2GUZHDv>&a;AthET9Knr3A?$ZHH`dU7#VZ_?aErsXu$lWu5^oj0=w#AY2&xfa9#vypFj_g_u&)~GGP_R1E z1ozIcn|lPvjS*`%_j`D@M6BIhCg;wGwVTW8zduqv0GSaf`w-9WNQ=wh87XPo8!1E! zgWcR;AoDC1|NM&aP)n8QC@0<_E;evIgSi<98HoVXOSzuGTn1mnU>%{eplw+V zk82?eMis5f8p$Q0%}E4z9A-u|lFM{)2Md#=VV;p(2D_e-To&sha@sKo^eK8#5^U$L zXC#*ZH@z?=aT3?{jN~#k&yvLhRNO=ro{?Ot_|aD(XUWk~r|TKXWfHlUMskTZxf!{F zkz8WjUqdi#zJCRRVI-GvbGr?bLeXr?E7?dcS=@}nREHtBo{?N?<_;Z-C$=6vBe@jZ zPE2Y^DwAGh@>L*ZjO3EajXh4Lx}K3-61W$|Nl8_ru#AyhGPx&6BDsd-{@e?>hLKzn zxSNF`7zN?ifmtKD#JPz`67G6Na#=>~7?d2O?b@nm|Cep;<8DH|aN7}+SZ3VGp1Ke* zOp?gC6G47PgG-`#EN<=NQl2}zoGkAioWPP-8H{!o2~y*7 z#vt#CXL)8@`?w6}t}uzXur>J$Py_q8JAvKrV?09zFmm@88L*GbM?MG3GP13GT=I?) z;)&5N8eGplF3XPJStc;sWzU}v<*svoJ`369(RneiOZyOgPNom805H~Ogfo>F9iWMaY^8wI7Wk9 zawch>OR(H9CwmUTuQem%o8(MNO_7e+~&q6E>-Y}Y$5@+T0NV%d?LsvwML0)jGj&0 z^MUc^|V>ow`h(+(kQQM;l`7VVM(@}VYUn7^ZvhbXGI4>?=j_1}m zEpG|JYti$-I4!4fVQZY0Z7VbZZ|K6-I4!5qVQZY0S7i8hJO_etT3&o%Yn-+P`T55Y z-mF{~o@b1~d1<-6JP#kndGnlMJh#SaMZYypdojbUaoQ_+{>i!Ex6WC^^BSo*@0Km` zTH~}5uQg69;np~|Ye{>k9eVFIgIPEJu|K~e|H>mJA&*LZ)7^mINbB%I< zaoVSOZjIBv%kv}1FO1Xv#B*z$wv=TXLE2!PR`T`lSe&;t=hir_gr9Rh!q3c?inYdR zrF^V$S~<7IY32NNG%y&a6EtdoMD{yAEv7H@gXZm93w8m*UWH^!D zUGOHih1_XGBi1-Ak<5rSPD@XIq%!8VFiuNPmB<*}yTLduJ+&g%I4wO5Bh9`5(oK*S zkzUXbv><%39Vqt#G#9kDl;enIhD(#%am9**8v0X}j|jjMH+%h+;8LTP((Di^Vu? zu^6W<7UQ(VVw|>EjMEm2aoS>IoHlHY(^8?1-UCG&R3Fd8EcZ@{OsR>{s7;In=R9j- zmYxv0r}BJI7rqa)KAwqL?z3WKx}-DBR;H_XqE6VFm_1@-jEPyks4_CW%dwBPGJV7Y znH|p~p1$Gopv65CvxDH#(cw7GU~0Ini#)405A5CQ>mdRYv&5DX;{gJz;A|{wVwM!{ z0%IuI*2FBQMf(`q4i|}&ZB5LQ%N=5Ds5LRmd~&}S6Y5^^58{T2S>Ew-`w)75wRnr zXJVFPDtD_fLnyOn2@f_!x?y6L!raE@WI}t-#4Pu=k=^Z1&d+A$nV9{D6v@W0aBHZA ziCOyEdnRVN4UVdc5GUK3m}P;tV5p>sXQ(b_Jv)j{8YX6$P41SHAeacU>jr@Dl$j)V z(K#7+JrlD`0Jql>g5!E7W?3HGZO6=`W$wWs$NlIj=!J<{%JC&^;?~M>JrlERx_mL4 z^o}*#nwVuv=DS)GUA8qb%TT_#Jvo)x+x8>2S7ZvpH@c_b*2F9)<9ySbz@6-~zK7^# zIh^{;D+{H!UxV%(CT4Fzc*L5R<>MbGVol8QDHtxXX_(W(#4N?PcqV3tcg0YmqmLj= zNBM9}p0M#jkUU{y=)Ld^r-@k|{fMVDF{`6TaVlJHIwah3PPh|N0u!@LNQmLJtclsG zIM?#Ht(G-0%aB^u#H^gt)&xw;CnNT-vE<#~qmKwMjk_~Bz=q$|^8+M1Z9XImKsHjSQ%S;omdoJ<;}YhjS%dM0M+JM0s9hD>BK6Z`NY zhbCqz#BHCfX3xYd1#|E`)C3Qkb`RJvG0Wigo{8C}#7&R8bP@2i0&|Zj8`_z*bghJP z$Ec)oXz!VrERYow)Cu_ zS4wa4LvK-=Gm)0ykVOiTjCT*P(7ia!6ceo~s2MU2k6`-yCR#s0$d~vB$Wuc{Ku|z2 z(fS9%LZBOPln;uD);s`(9_aMi3eIa{C}1<-)00l=~2AImT?r(GCpZ>-Z2~|Hq1exR5c&0%j`Gv05ZBz5(pcw^VUAPf(Fk^msu~}RWm&QYvjPGu z;~yZ+sqzQ*V+vMG?SkdQyz*2FKdD~WID&+0~CZm9au@lWd#Fwuz!Kz8Q&E%H%wYo>81NeD3s^xba z9Ce!_us0pci$90RkN5|w;WAYXc&$bnqpG^66fosg>efTGhKi$;QOT^nTqr2OU-(WD z^@Ox~m!J1FL~vIRQj|6wD*Ha?c2$JvLTPFtmN}|N5u+Lj?gbv-^cYnhN1F>}RC)uE zas|7(0{AkIW13nhCz|UuwQYd56K=|c-=Wx2Llt8a5eF}Hn1T*UR4;+^w#PH`<-sq2 z6e^8ONJDzQBqk-mJfb8iRmx5I8910HfsF9Im9Z8j8v%ho(Xx}q8q^R4LL|qcENCsq z5R)Z0IP3&lA+#^tJB`WJ_BgF3opmhA&Uw3-U*+iE;cm2Z%)oKBbuzwS#);}c^Q&0* zgX!ah^RZN;6psnllCEg6B4izd1X8*pr*J_)RQ8U#N1% zr_w*csm~P#$Dne|N)rPH75S+R|Bl2`51JR;jv6Jm5x-l^IBf6)ug)mE`l3D9$c%!^ zQNTid2Wh|kRzuA*4oYJ@sQ$`>)?EJra={@~6_(#OFlij=i(hVcKj z*xr=IQdPc8Su9o6%ap}Z)zB-8k*iS_D^>Q79hi=3PNR;9_wQ{c!bJXZ(8~No7u2YN z#OA9)qXf0YCHx=Q#8&ka+usvnmk{|8ca zD1LtOcd9ww?ckZ>-&U1h{ZVc1lc=dvjo!WmYGv9mjlk$F*Xc`D@oU4^KR!9v&S+2V zmI8ieC~EmB!c?2rseVc)fO=BJFn|6ke^W8LRKCfzZKS(Y4db_sbeC#mE5>QWuNa2e zcoG${5%EYxP)>>xA1)LcB@>*y8&QI_lqjyLST7luC6a4K zw&wPFG_RD)4;;I0Gjf%Dad(Uq1&ZzYB7Q(9MZxbRPPH`K2UP!Sfs?+BFeMLLqF%}8 z{)m!4)za)dKe}fM`B{NP$4@R&ZHe^tQ+5c{Q@^S(<$XY-Z4RqsVBUa~AQMyRFX0A*w0)QNDvG@cn9pxAav1!r{J97{ zso1Au!D*bUOCj3Y6hDfcABWV~YQz%7&d)advOMYAk86RMFE31~!UnKcGqET?8p*v2 zhg0px{+g^)$@dqZQ59!J$@*X{G~M=kx%_nGRQs`=$NhKe8Ust#hC25uGXE)*Pe0&+ zp*ZBQdmW29cA8NitzTaT*Ewv;0=HK3QyZ2bG*iUb5AV%{-Dq3f<$TWL;P_uQw6^_| zb?+pme6furrTx7WmA)l=>c(%`b2B8xF60bJ70(t!PhLF&gF~Muge0 zQ=iTaH%qt(7-=<4|1H(dH2pzNK39)dgk+!|4w80uFlN1YGpekInN=US`)#==DvKWj zWs2;Y37N(4urP2#)f7#)5e|(}#QY^Lhx4Bl8T?uXl_?`hbXNuA?b~(uQM8YzT{4-%Jnr#O74oNA?d2Cp zQq*x<)UhZ(fy(9QOQ%}xy$tM=ax(=%r{pH-Ld^fTHeQ8;6u2G-Dek-F(xEPzT;But zRFmub5Sl4sXe#;K*x+@91m43zblgN8)ybmC^?%@=YH~d?2|7fKgDbzYs&AW69lun& zgX3R*asj0+sBEu7xq#9Zv@~8^jQs2>ZYw4+!+D4*{^MetRnzw7=3<=H-gf5ZVw_!I z`|_?YUx;h-Dt}Is&!xamLvP>^4wB&;Q9oz!qs$E0Je4)T%@{Flp8f^*RGX)%7a;ed z18wz1>S9aahLm-I>^*9V04-mBYC|`Ko_f)bQC0RTBb(11RtJI=n2duYss|d_Y&OO4 zl{NaX1E@|dEpY#}3hpu+N2wpj7KCPs3Z!WSJWNwAcf1{DxtPDpPi=S^Z~;yGVF%pK zxwa+O-_`~neFJ%Px#1y6mj63K%XAv`xgx$iZa}WL-0D8JIzojz$8Yt#Ma|vQ0Xej6 zoXSsamc2Fwr|e_tn`p95S)a3c;nr` zxpMZx-Di8k#Dw$!LNi4N3TzcTQi%2qhHmr5}LX*w%U-KLh&^nkg!f;YIK;!}X_CcAQV(In@&O z34}^bUMDTY%yh8(T%qg*#TL(P2UlVxEE+n43mIfKDE)iOH2iWJ$p zehcbXjCI9Tn_)<@xytr)wFPXs`{Uy(bk?)+xn&EgV1J*-kM5s>=Zmk5K%zQ7^kV5G zu?)Ib(b&0Opi=mWy$JJ*{J%k)YlTrB@>3g{PP0k0!l--5E?2omwr`FyloNi{ zDJT4f)5+sbNdutZRJ+>zT2pfVrIgyBsyor{b%sAd5C8t& zj3Y0V9Y6N{?vx(jMI%LzH+%wz(=li?KDpw9>Cw(&hzBq zL26@_Z^o8EHoCq}eQpF?6UqZN8;NRZicqOj+if^`+#GZOLQgfJI@05stEQWi_h}&> z!yxoj6ROvo%+2SX(KjJ9@FWgW6^s&nA`F4nQw8jn;K6`WPnF89)77ctSv*$z1nvi4 znnD_992C}{2+b6QYX)U*g9p~2Gw&C-n^T{AAXk`)&T@qjNaVN}p_1dd=Gu31&u)!* ziq+rO*WV93nQXbEny~+(<@oyC{c}2i{Z=h{3HhlF^F6h;OTmsC82!3`X7G{5L9%}Y zPv#7KR4P@=r;Pr0#nOOMHdQ8yt6U}zDVv%b@5rh}cxaWfsWU|aYlc<52T!O|Hplt# zabV3*Coh1y%b0}+VRj@-aI0HA6;hB*2_;~x0AW~+(dgILIV?V z@arxyR8*%(YzRKKg4@_C?B^@I4xyPM&!K|5`fo!>U>6SlP?4mJ^!4}v|6RD*RvEf- z`Kb+`A~aLv*@JQ?P&NB>7Q8DVG%3e+eCQa;@%#A2xSHF7b*j1T9-i#r^H{QoXB)T^ z5&GLIla53OHRlvAcb>Tpp-pX@8sw*)AB9VrY-fg!`9cSq(p2IeHXQG&Me8&~7s`*% zi>!3EFa0f~rN!_|a<2>JIa8SbO?^BJ1tU=DLR+ki#4pzS)cs=kTEp-)yIox1)JMbD z9U<`iArs9+KekH{nkfp`bbCOh!Z!r}2UR+b&O;J#vf=BU0DejWRjTBI{&odnWCEUyk3B> zfWZmyF|}yrwdYreQ=JOhbijAIa5pVA>bn^S9mR_X%@lbm`(GRxLrCBU9DHTyFy}hq z;y|J7Y+aoqKj0QN8~wrV&ux0qukxoh)Iew^bp+S!UXaN}Z^1S9FL3hsdZ7z3+gBwf zAtMng&9(Lj#EjnPAm4$#YKuH2e9RNML=U(hw5y6eRGo-VMa!^7%sWJHDP^&B;F9!ejP9K}EI4i5N|4M+7U z4%Ot;5zcS$ry^S6C=cJcWN(IDihAPkSMfN`s1XRN4{r-E$h^#XL~)NucCw=Z z9RAegDp4-l=p6(wqwfwZKcV=V3AHCWp?dvH-#n)FXn2P4U5;E2&V@7=0b>>$$-N&3 zsYKpJCAA2aT9*;n?GSD|+aeMT?gNBoiac6G9^W4Qg^=ezG0CgoS9FDoZP~X%wXv+L zs`-4oRF(B+>YQ(;T7Wjw3J>rru4}R|JC^!<(=`U6!z>s1ke}Kx!{gfa;pFoz+5&_+ zYjKbq5=zP;Mb@FFABJ1cDnw6V6+Vg3Ov*Fj>f{bVEBFNN_lFIqt#Q!8zE0-m^UdDx z2yu#0rGCU`=AeTK>0-XpJ97hek_zdDte-Py;(N@HZq0M2IyG&@z}g+6MTboUFBu2% zT!7F_szyC#DtLlx`bIL-a1vP4E3<;QmJwyx(dZU2yUj0s)wJO84MM5xJ@gBC$MHrW-W0CITv#A1(t1G zPX9GHNOU^~L%JCSEA>;(eQ^1~CVv%;gHqm&&`c3S&F@xSq32Bm)w|R%GJK+xBsH=~ zoCxYE6qbS<=ZtL{MyM-yV@m(3_z5m33)1+=Y z^a=5^-2W9Iy>+WVRs8z&0}!hhYJp>A2E{i7qTTTV0e&Vu@X9*mlN^<|8b`y~9609{ zES81;?y{UiU^_02PsO*TP|BHFrwU5?I#_&!N3;d*Ms{)g#SgaQ!y5J(58cyrXfZB?&NWo-}s=$p zPO|P)Zg~daUHT{VRBHfj@L@?tQ;~jD(>^UTy%R9LQg;G>K!ekC_&x|fsh{d&(1Sp5 zQ5yYD-hq)o&ucc6SuoW7I`6QdV9MfP4vcy;LFH6EiG8Y#} z{BvD|tlkWKtH*IF?_Lh%TYdJ!*y9+Xdp*Pm7CrG2-~i0k)W9Ccz&TBP_*G8pVt@UaIu5`|+p@rN02sDi4;Ns1GHj_1*%pgVJx~ znz|K)J!MIhHO$iDC%}Zk-FojCl?TE6^i;M}`s6|ovDIy)lBuD;K#GKH(u}eO@0Nly zMCn^mI5mN(Z|B>HOffguGzEmwO4p5IncL|I+(9NjS?TAW$2{LBNP49X8hrF32r#1i z;9B(aK0(fSaPqk6c6@l3-E6Uj4ZFIlcVZ^yv*nBjCy!fc$45qwPxRSWE8PIa`-RVz zJn-Ncb=SalQw-G_E|Whg_cUDyb!%WYw?8@`G~=2iN$PoUisHP|vEO3qK}1Cl}J(BR(os%=(nM~Gcm;l_2yIQPHZR2I({GQJ!z!n z0Wco%SWXMUb|c4#UA=BHB9@IAmke1fFd5MELGX-t7s2Clp6_$RVt zGB2I8p?;wBb!ULu3ba0_p-MR!>bFXtSOV%;&=&j$H946llwL3!{OiEI%jdIVPDw=? z%+CCY@V%h%dm58qp(drZFrcTQ$5dZ{L0jJ^UF*ql*9z!c4uP75LN3JLP|LGYO=da= zbk83_U@dg=30Jj3P*RL%26XT~1PuaXg3n?}C$oA6wEI1RE(2qw&thbj^$@FkO+YVv z8bP;$ai7OB!&~rHTUN^nQKYkgYbt>k``}BF9r0m zm6lWvaaY3Mlz?2chV(%|SNzqIT7b~mCrL3GQbAA$KDMOuK$zf@SX551c{&mfJ34!p z*vtQN5U%z}7RSaqw_~J`%lsB#cM_K#v?cenkM{`b($B2?K4ANOd4u;4>Iqw{{HMUa z^5yerhbMl1!^>Ku%z`w-6UQDnTQNG3qcYGhb zSbPca7cBlbuzd-fR(Rs8gL*A4aOOdMfWxN=oK|?^>#?8GM2r7TEX7ZM2N#o_TY`G= zGT`X!R3WgU1WwED@jHWh(~A~w1FTa5=Z0DFdxE+jI$n_<2JCzvkI_m`{IQ^(S01|O zBK&G%{shB}zJ|3wsHcnuYZDmT%dngnt@OlS4eGgdKzIt^a~{D7@>V$hNl@1xWs~qR zu+NE06~$f|3;Yl4d4!@=e<3`A*-(WJ! z8IEcLtP^ojp2r=s;zOG+7!N4OU7O;0Ax*nZlVzoX6{6%t@1fx|r{X#k|%j!7-{QI(cf}^S;pQA$B z8DdFM%vaL!Hx1w5lSBFh@+rx$1*`#a)7C%hi0oYy(qkrD`EI~^6K7(bpx~E>^ldL& z`3bAr+?Uq~;BTheh7(!A(Q&-4Jh)aOF_-e#6m2trMtWYQ$0w?q2F&n>AV2m{NI z%vdGEU{L6vhIH-!S^9KP7y5L6Xmbn``-+d9W|=pEbz2#xCE+91QCltPDG*-sNpjVh z981Ko9Q0UU%RCC!FFsRp9Q&BH*fp#Npf*$rI_6ybO$`_=6*=2EJFK^SXtk7p(8?#7 zA`#M(w-wEn&pPp21 z!n`@GyDhTJgJ6AFhKZ%=%*PIt+clPS90Z-=Wj3kYgt8uJ?J)db>3e7Ub zPlWY@kJ~Zm3=oF;BpJ4nbPBy!L^s)O=@)`}Wm$TX;_(q3pJ8L)4Ay->f-oe{m_I~zqkP}`hJcY?y)8_|33 zw9J8ET~L;Ja(Nt#=n`D~GVi|<)a!gY&+M&O>_QauaUPy1eLEu)`bAnVMF%d;Yaytc|AU^8w(+dix;sV(5!?fz zH%=p%RDlxNcCGJ!$jW?2K88q>L%+bxy`Ra-(^}vCt)&-&T6!9KQdLS6Z)pAHC@a$! z{IR}_Ux>-s|5EFYODuf>sOwKdKRFlwXgwL%u;lz9@b~|Rj4i0_sNV3FrGE0FU zoQs}OeSE5w$t#EN;qgDIDVV!qxsx=dH885L9%N;DfIsFmGLjV@yv7pMZ{=H=%fP?! zG%|_1VH3~fsP3@X$~*}E%cqf%UWW%8&y~^KM~kh@7vTTp%lJ$sy-w-XSD+2Q7S)Bg zcv!+YIT-8lKe?GCO00A^oBbP6SbQ`hXM#TJG$M(5EWMY*>pM~X_S;5e9_Y(_kpwaL zK`Dq|MfL5|>?H11u=bEClN`C5_uH-$-=Ah#RF|D674~$e(V675(=R?5j#&iHd zlCHCHGSR~mcl&ZVJ3*nhjOoS0EqyVl>wLOD5?bcqm>!8)t0?BjWKa0aq#_fYlVZ9E zDyFJEWr8uujS@jr>~1cm9Q=kn5$EC3-oisY>du}>z+?4D%%W%z9~h&5w`SE zpw2jz?gWK-e~R9cZkfx$y4hzYC3ZUQ%;Qg`=s8bX=EGn;=QEQME6h(*bPg_AN$kg9 z{o*rEE?J@fn4+Ke6sK3fqYwN~%9|4uX28{l&#{VIfYr@sCMEWfRY+_$nCLA!vr9T3 zteHMjQpJN4OhJ>1*KqarXU(HVbq!cI_)KQYk}h}koex^l10X!_lYDh{fEAq^T)pK> zOFs<*+pSix0&bP68LysQNbqv|P70f;OhnJ#*X0LC?BkBL;@O3@JQu()^MdDZ+eBTH5 zH=YF3U?im4PJjPMU{gR0ZTaY*8LuY*WbYl@B^>^`2v>EaNH zBIYBmRV;5P-jabn-xE1aBu)|YK=x2HiJQT^+hd<50vLqF{FN=P)xrJfwVL4Mr%iZ! z*8*9Hu*r2ir#y_@7YJKMuoL`oqn z%gk(~oN^#lz(3IcdLOz}1(ueBu?+;b^dL2e_-GMbqyi<_;92znIK(FmPbgTd0&_r^ z25f-{M9P`@miMuC-{7C8n~47*nt+n*Q!*fHa_&s zLwHqUms20rJFy#)u)=FqYV9l#nggVz?PLNLLpp`mtJLLbAPfRHx-20WD*)jpygO-Q zlQ18I6(lhUNofzh9RPE)N?(VHl+4`$);%863HD`L9#(oPF1g(^q2PbOULno|JFz(m z_#UO}WFRR=5dOV~Dbk(bum}ivD{yTNtPe8sXeB)V!QUt___KJ@pQ;>Iv#JHG0dXm< zPVF-xzhCK5CxEH00D2NMu?vVd3hhv&Y81jJdzfi5M*5)A9~Fb376V=BGq^>r6B8A0 zDZM`m#;pK%mLVv%9LxGx>9#e%dJ&BGe3mq=Bwe536$$D`{RqZiWmrz^D4WJnrK7kc zR2D9oLi|n58V&83+wYa`S^`32fNed3c^aRw1&<9Yb_#b$2i_mpAP;w9{Q9WySEX-D z0X7xkvwbXe#M#rGyz9{W@cJFm0a=Q?jMmz5Ts>Z}wF2%hm`qjY2^+VZu#)A3twBy$ zYjVOm?oN3pV6KkK1A1NDHlQC6tMU&{dA>F)>>jAM6di^#?QIEOmS8R|?X7$jTpRcY zu4O@YI`IbB8v{B6?MkVp09p~eiC_x>?+EC_xJXrBgb(#FwS|Q8e4$#{J5azJst8dd zvooMiG=R(%2)P!2(WiK31^N2DuvegfNm4P12X8ZG;R;r}!Fr{v%Nm!L$)$;LME^;7}I!;5R>R?;M{4QumPo+AYu0s9_VfkP@`VdqnCW0>hQW8n;mMXd`JnvsTb7N|1 zfY8t*DJd>_*;Cjrs0&aSLh1p+IX+2B%#dIiph{g!ng+r=pTtsgVtnLQcwtcQV$G}u zxWy+(TVTCf)~2Ao2mQX<1;*1pOVk8;n^t%$>?EL1WE)d_L;nd$(uT|PwQ^y%K=C?h z@q7(ch?f;lpf@K;(ZY8I{-#mOYpTLsc-exol*^_zuoB{;OOTZg~$?cp#|XbudJNq;9}rBiV9^mFIh?!XAOr zjS2R9d;@~L@X3A-hnL8fw8@L6!XrVw3geAv`yALe#6_FIzr~9x^mig3u8u~4zm?~U zsKVcZ`er;3khIqTRyTq3MN}bPlElz03f>i1&jijFQH9Zv?u7Ou`o{vhAc6BmRACnE zY@*i`{7PWU6F6VA6c&VZQ;dT0qUAPVcPDVZs4A=y(*Hw;E-mCaU@s+bzKANU5z^0K z^b`DZVBh$7246%~{33j25n7T{16jvkibnb#$Kc1pJ=qad0oJe#uB1Jd=ewK2GXl+e zV@jfeqi``54h-q5(VR$EgK!w`$vNfuZm96gK&v4M_HexYz(jx~brlZRkZmfEZ%+!x zh4i~1NDss4DDuw(d)b$d4P$Dq4C%)!AqSr#oZrlt9GZ(s2+Kmc zVjc)VJS9rU-w>XZtF2~5XxJXoD>x)p2Uy1=IP%t@@R5+-UIkbOg!l9?Q#6L~ct}54 z4TMnuC;J4WoexwC-wWx995F5jc(q4xa``N|;@I#JOg!Ye+zRLc4>lv1M_?yI;k|Uw;-H2X@E=4s3*xo0YLVFAVR-5QGxFpp%0Ec=6 zXwPPUqr%I0J<8RWSFC{~;JOa{0x*P`rO9BTLC0Q2OD;TL>!z5i2I63p z_$+C={=tcH;Zorxc<+H8B+wPKzGbLR?0pPQh0C?xgU&iI4&V%*ASISt72|Zp`@*B! znL#A54ES~Aun$zvN|S%|X~c4)*1J&rfx7`d<|~o*A~U3zu(oRbT???d<q_*fh2V9-{|x*C=K^$^a=Ck@&V}y}Fz9e<@=-|wm5d!RVvdY#NJ9{CPUn6m z=40glSIqn0lbDxu$LF}W5&!Kr$dN!6ebK(S?WT&L%$U@;Ny;7b7JdU0!z3Tqd6~*=> z^?z%WZNd4hKQ9H?rx}ULncW{5RQWwpW`F-IPVxq)%+P%rKI1v#$ODv1;SAP|*T+BH{@ZEp#`EdzCx>GWwUgSBZO# zyH(s3?jz!^bYBs7m3u_oHE#L>@~?I4ihI4=N!<1BaB**P=ZSl>yH(tc?mlt1xSxr; z&HY{6+uZO%>bc#`7xxagrMP#xgT>wMUM%k2?rL#&xQ~eYW8MKt_pf;!$58&ayf-BL z_q-p({Ufg{del(SpLt<%|H`W&?%#PM;jUC81~zu86$Nt6<)NejI=s|zxDjodR@@L{ zW;)KJ)%&>l@VE{hIaKeLc67c28&^cC56GMi;8I8}!9TDF8kNA6-y8+_oYZR+9)tnf z>cLLsNzH%^OwD;2>wgjYn2$7_(F4e!v(2Y@~9;r8(ZUx8J>LYJ%n zegN199nHR>! z_Et{#HFSf&+yK-+AbB-9xIHhYyTUyRt)UvL+`ksnUF~LHL3fQ?BJNtZuej^n$>Lt? z@+D}f#&zzk;$H7QE$$8Or{dn|{vqyqH*zI;H@Wr2z1bZg?gn?dxEtLK;%;(xi@U{r zP25}DpTynfW?x15TipiY-tL|w?sj*cxI5e};@;~%C+_|3C*nTnswI?r$So3gr`uNC zhuuNq?s8{|`-rxHH9l)?F*^bM8apKJUIM?*H6h#NF?@%P9YXTTk2<-Lu4f$(<_h%kC<1Uvcjc z_f_{9>wYTkYpz;O`PbYk;=b;-x9)Ip54iKKyFuK8?qk;d7;g0%uF4Bu!;@5%S6NQd zR9*);DNyOmOZ6I+R5}a0dX1_oouyp8Ms=0W;;mkzmP$9`wN<(iucOi_UXt?$npkm> zN)4j>X~0Jn#dVdw^nN_0YXXD|iqv=SX1Xf*D<&*gc!C_-(IK?GOyWg6tZYBlD zH3GvX&vuHND1H7q1FtCyr}2$UaciY}j4^Ldb`hUKaXE09bkevcvlxs2t8~FD280~& zNKP8x2^SB*O7@C)0|Bw$JV>5rn>3_todVJ*rEkUTo)e6wM5!KYZ7a#`+|AddC8B(yn0{U99xoUzqY+NYcfK&Z+Rk^MGoos&{h^!0@z3 z8G;W5KKk8p7;q2CQr2nL?E!?Z0y;qtJG56kJx19@W2cRCikB#zkz+*Ds-XoGFUKS4 zunG9X6G*&GaY`~%5kc`fmHGoRZ0dT0(oF~A>oQcnTEJqtQW7h5eVwX$kclNIb-e|J z4VVcUP62X_fYkM^O26L9!1K$(rmpW)x=Fy)^)1AgQ(O*7b-hdJUO`jWPk1C-*La-2 zD2fLu5c|}FOkGQ&Omx?FJkw{&?t@H;E7*f5{k)*CaQo1vWmkRp% zB&ll_h^^}{l>Y58Q+|_4x&drk*Vn76?4u(LH+B8B(i1UTW59ZnO|qq~@$h{Dij_sX z$J1k!nYuov^mD6?sHyAUl)k6C3HaO-Fm=s3!ydgQ?s3c&LNyz@LC(i&HgYq>ZR{3^ z+tjU(;WSjUncGs_Qn#zP&E0@)pJGg~d)DX8K$GJipwv^Q zyVteAv+aZEcN~>50XL>8%k(+x;Hi)BCin+jl(l1^6?zyR*Qss@9^gUdBZl)h{YhDy z-T!0U3_(DtDIm-(OB%jz14!%jJXDri>S1PHgRhei5UPE?`vV8@+N0eaP!p;>)~&XN z?l`wp-0^NNaVNN=#hvKR6L*rkTHFiVJH(yrz98-t_iJ%yxZ$6nCzBo46OdkBfVm`+~TO-4DdQ!aXMLm2MhJDO7ujTSeTf-4^05cZZ9+!o5J; zRqi6VC1VSa<#Jc6RIb9Rz|R%StyXD#Kb%Ih*5w{k`siVFS1r-?;jbQska`MdP6fVE zDYsmuv3w!~EAUlGxy>q#7oZV;L1~(rqd33GN{B0ZoeJ|A;d+%e0?oYvEn=6$`?kZV zhRR5eVN=$`n8s(S<^DjA`YbluL2xUQ9z%+pv^@s^1@KyAo=NCAK2(7>&gE99G>(ZC z4vYkEol4_7?F!A1&T{vvD03jMzj)#_(LdvB$vP$O#jWj!V0B94gU6A`Jqak zKDyIn3r_+x-G@_0bd`7bPK34Jy3cbs+_nYR-MSI88Jkz27StjOsoyKIi9lz zo{NvuvoW4?E)TaO#5tGPdYrZGh&jOJZD=w6S6nWt-q3)nE`>ivZ@m!#{lGy4{{-rB z`~%IHiP$g1Mh0|4bj2zS?0ozMGuL1z5gr}T%P_%Lssv~&kD*#q#X807yxy2V+B+!2 zjx1|65R_46Y4d*g4y*}*f)CIQ&5ISlGcl0E4&8~og!DL}`u*JjkPg)!;GQY&*=7=7 zf0#Q~{A1mP;!bdH7I&ii0Nl3kSHQ{-M0V=B2&ZkM5^VD8VeI*3%>?IiPTSX>z;o}m zrQrcx9emU9^#BMqSW)#+fSteZg@)cX`zV|< zp{sL?ci?ZA-2{&KZ`}lc`|Qnd=+`@__`zySQ|C)HuukPJg0q-df9id>8uQsXF9@u2 zxhy!F$=!>5Rp?UgF*xGSNAFOfYdKo&qyIW}RZj%;sK8>*nK}mdV!0zyOWUDW-u{4c za!1GJKBMGbiXU)?xeZ^h!8q~nu;^2A;Jud9uE@^1l#{aykAYN4DY;niP@{o4 zho_(|G&(ou9oBWDLDoOmxRybzkIj5?z{sarM|snf`&i&R>L*&MzFFT8}=*ZObH1D#ug2)BoSL}bFWi)WA0GTNq?7=oX{ zgzFZcO<5D8KLj8D2gQ!yCkTbEha!In4x@Q9Er)!_AA-3Q!XI^+-Nd4kCb|DY6Dns# zCsfY5>Cos`&R%YKUjyNF@eg!hY+mI|EC$p8!96`lok85IoH2NX*9!qkjRj$PS&~;d zx1l#si#*J$9Hy^N7ra`JtOZokosEap#MLT(H5Ea(Urqb!D(5b6-@#u^Vys7TmZ&Cb zj1WA1HBG{+W{MXef`quD_dlvBg4}iY*_1Ug`qi`&iDnwckTjhI<5$yeTzX8)0w0pf zU>co1gR{}Yq~g_fpN`dVcAVb5cop5`y$L7<)KU|S^W9&a39esDJD&se60{w_Kk(9x zz`R;|e*vH`5d4z|ske!Hwe)X$<$QnurCjLE!(ZeL$*ZNau7{GE9_H23Eznr<&G~>> zHybfS^y`KLggJzO%K6-9 zGino~UpEhRSB|6sX;xpcIQ+Wlx(PirB*f0QK>j84FEZs{LQHgn36Ela`-2Mnwpuwu zpeuF6Iny1|Og3e>Y;gQTkUmv`^X4jNT{5Z56_`^kMo9aeOhQ6NiC@|Tqj7SMK8ub% z)Gu{Brsp}^@4_rCG$_6Q8R+x(G{xvRB;{P3J8tDTJVV73b*JHJO=y^SGAmOiG(7Ou zTIC!=gumk-_>++uWOQK0V&$YlNqPJQQQ`H3+g5|%q(J}v%Bc&e)Q4Tdm-gxncxK?+ zcTq(?ltsvi+=WOq`_$0D*rW@Q@acz`@cHQtaa&SPGFFcqr!s-i!oZR{l=J_w_a5L@ z6-nFZ>YX|Je2*j5{r)pYmY5Qc-;bx@+Suz0-h(8Y(>KoY|#F>6h(nbe)W>_dVs(o$gF3nKCDcG zOH{JwQ0%!v&WQl6BzPFXvZ9OSs>T#cg8BP%KU1uUO1?fr3E~aNyv-Gu^9_~_u_~4P z`EX9ISzgR^{) z)nPc+8S=Rg6x{eLdS-6WN~ zA4lCkUR_DqDB^=7&Zu>1>3|mSgDNDZE8PhUe1#% z0e(y+V{a+%Hx%nP8bz51TxL-I@&LYxjD?F;XO4peaWw%%Aoe>=6Ik(k1caZQFWDss zO}_bxM!)uV(7nOgt$~Tnyhon|ty2#J?+JV(v#D{t1c*>!_lE#{6Zs!om|8>x*@+sv zR+V#hBs#2L562#M`TSt=B52N&Ig#?&iYg@JMnubnZ(cjIqrl6+to^O$BpwB)Mj_@=Af#VIP=!qp4ud zh$Nd{ikb%lZ9+p-!{6da^2jB?nh%T<99Adjz2>h`njLyoBspv>u+9U?v;2QWP-*-RR18%;L3 zO9`er9_XjoB6>4+>`GX|6C8HeX!772lpv{{z`TLj>sh&MEsfy>mG=%b)SdwBIY&*y zheVS*ZZYNe0QNUmUbddbcB(F|r?NI4ff5^oeY~&|L{f#A$I9^4V@kH3#;#Je?S1UY z(c}U+JVa7;xC|$@@FrVJV~0hP55R5;wR*q~CtOCTh9414J_)-ZZld!x;vRZHXqc?=bK>z=k`xoL&;UCYn674vH}Y z`9~1Owu?3KG{UZE^5m&N;9pIj8$wW8zkVf~*x{QCRaI93<9dtb$r&dx?CyPWh+*Mz zz@8;scL8_L#<08hu*0-zS04fPxr68N43zZX_yFjl`Zuy0jSF!o8(U+St8T}O>hc_u zSbi+|(VI#zRac<*%P7L#t+DN@=jnct=CS0i#Rw4qQ_aQYXci%ZMh>n2f+Fo>$!S1} ztOjsH7=fpl#0JHZMSn5%UJv+P#PNkGI1^*ZF;AI_o(KH(FrDbE8uTdk+U|yz!KSKj zaruczS|bI%AeQ_9dkciy!tv05e2qBwU{MxZhRw)VnDX5K>qWROFYuMI0la>zl-+qDJ!Z31kID=(XAV>@EW#eYJ7-Gco4 zZCRr$?~%dVV#$?oXVi-TzUdG)i?QNv+t^dF?mS~k@+QC? z$5%_4CQ8>LduU@gPvlvc2^u@q8(5>lm{Og_tcWLFs5&G8h^L{+^oRXQ|4YRW+zzbUf$@~X5&`=% zYQ%k@={b@3Pm_T9HqbtGsKoN3Kf|)5Z;iwUt<}~cq9$Py#Mh`ZpOB>|srV^IBO*0` zb+vF2ozne$%?zz;iwtMb^FiR4mDyn^r;5w=NxeR%_5|4Jm!gyD<4j{J{Ug_sMv zu3icEtfp^_UwN5f_*cM_lPwNKX>jg~FFN1gGy}X#2uBHG^IdfQi<8NRuxK3ygvky` z{3`wKjvzHnCJ%>mvk(X;g^{#3)#PR6rEgHl6Hf)-+ktT_z7iYYjgAfIW=L;KY#>_L z80YbR5RY`mzi+a2k(Yt{DZUc6XRuxu5#4YBd@pY=Cg${_Wc^C$bQ;Ri7+!C z@QqxFZd6Pu;<)E@Lf1a08+j=hzZ>8OYzgDm>AH_Z_=Vu_ zaQWGR?Q^=)bp~9BCY9l{f-xfKh}@e#ES$8b6f1o3#k#KLsd1)}FG_lpk;Zq@~PEulVklNO@-V-T>uUnlix; z{(>67f6r;4@SpI{XVRAc-_AGuGt=w*75k(5?s)bL&}nkeUJT27;w5~TE4sty{$6q9 zZr1fs_EoN~M*^}6w}?-BZHwY4EwW;!*LlkUtZQjB`+3mmu%bQkoPu7W7)%?Oe>pO} z&WEvcsxOXae?d%E>tlMI`@rW=)t5!H8)2AqAh95{2Zp06Ix>>ohENg+tlvA|1FuU} zM^o7xQ@XveR1rH^SYg5&Gz=Cdm79#E*H6dNpy*4)7qVgn0*f@dI|sK_IMwVNP+AEp ztMQFACgZ&XRufB3c@?m&$iK$I6jNU5rcY5gKUPIrD%!4#@^ahZI5765PA~HryE_z7RGi&!G6>g-hZ zZikeUDwRP{{MRc1Ym77XX4nCKX)RCs*Jfl}Z8M~$Qm#=kkm28|(xob!N2=$H9F7n!S8KV-VGro-9(sK{jRnCK^;mG-q~Z&P zX@X~fplh=1;q`KE*@Q~(QSmDg%Oc??faBB7o{10}v$JO&q!a$uUqgVEm}4zpO=M#aCIsc{Mp4Knfw6vGfZ@NFROR`I=qHR4Dh3J;{?^B@{07m-Ef zY?!6)v*TAIeAfuJ<2aIkVY@zD!aqMsiD)XD!?SDrd_4bqyp1#!ZawJ;D3;Wo&=#9cWgKikDrZJobF~ zVW_j~pY;v8_-MUKk-&wtC}-~klvu0cjbJvJGaV)VTisFzwa@)F8bA6eO<)bHv{PU_ z_5`-+F|;Up*ksO;m_iP3l&*!8b1LD6m28W~&sv6K3Q%e{zD^DOhb`nPpbUJR<>kyk z?6R~>#V>`cLxdlKwdy{u*6p;zvo>9z^i&t3(1uj_{Z+WzCf2!Uzj>`JGn>%uz#_Uk?a5O$2-W0_) z))wQ9D;6)j4ofvgQTHYL%3uEu7N3eAbCzcDIMCP^i#hMZaFbpGc9K%oN=a;B z<*@64(j`9V8I9r_F#&s9)yuadkkVMCIW3+j|B_Lr22E{>%M6g4{u>NWaf@`Lx%jzy z4ZOwTkF!4qAkC91i$Bd1MvkjK7dL-PK96pL9^f3ATEM1S^ZEEg<@=+5EVNBM!Oq~tEB>_yl0AB6 zUx)mvt5bNJs!zoufK{-(!}t}D9}X?86!J$S1p~`vx+vMa2*@*%x9`$; zif8v7$pSxvmSPHvL#zY~29*rT_-0fSiJo)G;04qqR0AF1~ zh_IMf!ccd?naK}t)D%@aAax-kTcXW5xAl67mm$jHhYkQO^zK=}u)WKkv%M?nKk8i$ zTd#Qe8z58LEsKBt5X0|(^wz)Un%{q$U+z)va4c@T%CpbH8|t%)o*f9xUf2W%2K4^( z(f`I6teso%a8sOr#9ZIBv|0BuKu1)(dMkD>q2e~byoURQ6(2S;_cP&<)h?>I8rcH> z38SudNyYXq=Kfm zSlhprTc~A~TU%HArwfo~2)%Yt?bApXpLH{Zusrt`659M%08SWmGzyC`6`9KeW!W)3 zXyDrjr{oqz)88(zYt6>d0xF{yY4k<{3y2fPbd z5)Muwz5>&pr(QiajdrV<1_Zr&?2ePscWF%32k3PyGK%En0dj7$Xg9t~sG_oZ#33{9 z!GaM<&BtZ2!`7?AzR~34IhbEjUabM_Ji>)J4adI#Oaq*{psoY#P74pN9!ErzPxUoK zo(IBTERtD09*BokfD4f?0sG0q4G~$JO^hZdJ!slh2su{aEA3KDnbl);v==>kvwED0 zgZA*%tV;RU0{;@)G1~&~R8iQJ=0y1=L5p zSzmqjD+j@L3o-ujjr_!Qgj1jXaJSTO}y6G;5CZ>d)o zaq2Vr1XKC-K)8!YK3yGrfchNvtD*D)5Z=h3WYwo9tf4gHJ0Sc!gOXLBqK^PW|Ee;m zLp8p-d&H%nQUuh8w2JR418$GG*(-or_4y!7*hk2OT_vV|p`OV1{DAx;b^d*8kUq+v z)Z-xP6~F(kCiBGqlnno;z$@OfU6V;K`X6%h4|7@4Kbp(r zXoKQYI%+bP1ju}i=2|k6{v$GC>Wlv|RFmO;c+1T-0d6GyM`X6MQ78YJXLri??3#)% z#vb{qEQRazY{Y$9tt&>9&r7h5%hcY!%IjHMMWjggc0B-x7q#kW>ne>)uBk>I|N6U* zD6xw`UprV6lN(wAG#T0T7NoKSZoH^le?x1I18kLrhrKB7y;jzXx;L%_PhA7#+gach zf|+t&)SJw)Uex=3>H6fmjgzILUVa$eLYQowjok5`!LO3>C;_)60hQ-9z^ zt!RlBj{we8SAuPmV$O@&*iQ*XwFF4V6Ok>^Gdg!>dkOA|FK*HXwBYt|4>sMOgD|4_ zn{R$kGrw2jx5E#0C}-WD*YlN}Aowz9>pk+;{TU6&m&}!o^1OJ~{W+wMUO8Czr{(_U z-nc)LJDGdq{yc-u6?e$EKUt;v-nu`pgRMk=@NQk3tj)e_laF+9w*(uwJa;XTjBE2T zN{MU3z1}+3K9f!BUO-)e>irWBL#zXTX=@O;8>Jt>H_{k1o$9@r1JFyze#?SXrNE8q zU4_=Ey@37G!o#Y^{p3#dBF&WGsTx$?0pCblf|+uv*NHh+^?LZF>yv-&qP*TfRWor} z=t?u?RIiT|Fsk=dPgC6npzL4)Hcc`02dekC2wLoD)%EggTMEh-?nfXc+WlW9k#Kjtm<9gSb4vq567aUegnX& zUU5u$^O-BJ0r28fuU~(oO2+eES!nK!>K%fS5cIsu+M0W#dR6W8y>+y?0bjgga^iJ= zbv{}H)!DYp>c_a`fmqKg{%iP;_(nd0qdVW&rsJ7Px*3WWbbD9f`A8)saZLUHffAKx7$E)up&x?MgG{RENud zxAq$`*;MyupuEKbY?@-~4^-#Fd1%qUfRh6W=@M+46mzPx1`%JO(;7$}h{%@U)q-8h zE4Vn)9+3pafB2q^uZzZNVw8xN$F1)L8zL_tl%!4v(xxDyJa%TTdF(7~izMaYh6^2e z3F>6=*?7D|1!X*gins~$B7Y~E-zUs3H~x3%g^N?ruMr?&tnw?=rQd6?3R?OkHuZp> z#H4g!%G$=h6OFcV>%)&-syum) z^)?Xr#LsjOAM)o`Mtk?4ips^Kr;51HrI(<91|7TBDAQ3V1(b;$wGNjJEb^&fTV=Xcu&pxPdpTYa zA@+T^JnXQYGCjHjFSt;+uLJfj;li9#rjr4eUA8{~7Cq6xGnDC^#|)7wAhfVZzB2u~ z%n<1h*hmY{P^J$aFzuQRghfPRyA)HtGF>H&s|Fw!%Jkz4rrwKyw1Y*+ye{ID>5)TC z<-36JB$0f&ZbA6zC`0KzAn;$ggOsc?y|&6wilL|T@C{P3%Cz6>c!h*q><5I-7RhVW z=0Q9iXdi7f1Vq$<$Uhigd6Gh<($&f16j3y)Pe9Sw1C`I+2&LH)U-q>Qp6R%AskUe4%K zb%_m=l=MplmPZYlRDZb*C3x{JR|D6f$a*}69Ib8oA6DSCR*}s$F!r1cQYjuLm`d?r zzt*YbXRjfjt3%{>K#oc^$C$%w00$x})jF2^5^$h>#Gm}+RafChC0YtfeEm+8Bud5);ZH3720AXmx7S-o^1r%>S^4R=SoscAKJz(p zkRL1QgP&BaoIkPH0-h&_^!46dDu?tD)Vf)8AlB_5 z@$Mw7_fmcOM&BvLgJ*!!i`pO{-LDZj^o}@o-XgD0f4PZyN&Y8Ep8@efK&#L1GbFlh zH0+%#Gc;Gi{JP9Axk-7+^}y*fJbs)mGd6nTQ~DW$uIIoadBUK}93(d=a}#j-jEi57 zGN}|bCcyv(*9IyI(O|m1wyF8AA}w=-aOG83g|QJES`_A^XW|UPiiO1x1w{|0U8r3cqKCW&c3B zw#Z}Iytzp4UzE*s{C%W*7MC%-`Ff;#6$$;ZO_1(gT+94_l1`tZK}>%z73sdkW0`K1 zjr7PusrL&kBKwZg_1^Lp(pxk?A3TfnB^AWELZwnEwm!jdVDf#4pkJBhE`etEYoa-- zLR0&dYc9S*%lcJF&Er_I=c(A?%(g|nCSUy>Qf?c~8;ZPCYBa8^#1QhSgSemC2Ti5s zA>&F_(DD-CPmE+!hNlvT7nD2`KUb-o7X1L87AfQ}QFw-;MyZ%r1<<@aMtXRnq8|Sh zS2K6MkmLD^CieyA9$CQle&lis&iog0dqi_TUjciIh^x<^qCV>j8|Uqmhgp3lMRTdm z?TJfnw23cxcmwF16v?Fkd1#}qwBQ|#;XYHMc~oYe;iy=>T)YDHBw&|Dg-@RAC`F_~ zuV4=c#MRL}^01XKxlma(LMp`}TyRGZpkdP*8R1conP}tt76M^FG>7Ly%4v$3t-4yZ z?gx~kBRM=eQa5IPyf3nzR6=(AifeK6w8|-41vs_ZtGIg(vW^q6cW18f#S}V?0;otq zkNeyvvOYM3pev|o9|8O>IotEZeZUKrya9N=Zr28j;1yKvhwSULRBmTBD^rr9piui8 zl*+r00PPB0`Y#TR0`m&qW``USt>)9nuL<*?Mpk@;k=tiUOXkE+GtKfU9{UQp&opLk zE1RpN*_66han&<`Ki_m6Ziej({vd^QaxR0Kd?p$YR>fG7KDC$;#*@RKYgBs-qEw1U zD5g?8F*8f9Z6znmRp0jN_HtR*03!p$~ zsaYSmbiS8-=%09&UtG!(^{IimYQt+-ft`*Q^kV}HqAig)_)mChG_bIU7zck2Lq4!5 zs|`m*x*V2sU|v#Wk>(cFfyMC%O2DdbB9)Tp4`3;IA<}h;5)w@ufJ^dSn59ASCi9Ul zKI8|yqcON^>gzK=@X%fuLER0(-IzrN@85|1oJzku2sb_DCO_Q|hG}pwxhYF;xf?gV z<)&G>-89_vk(;*Z&xhisuiSJ=|1bhK{p6-sdiN2y=`S~R=}!jZrcQ1~rib^%%^{>m}(9Q*bj%ZkDC*0DSQ1 z^lmiag!F{Ra5J`$Gsmj*ap>H^2j*?T&FSeIA-cf_rIrBujP&f;xEY_f3O8%g_mIHB zIq!hLhIDr}dwS`5&t9X>Awnkzk1+C!4SAnocm*yFpieplfC|L6gV87@|fah-N zVXe!}tOBgRhV3Lwsuqbg2T!3 zYnmgT=Bb&Pe=sCA^c|gDa0VQWq1~0(;x?;+J^gt~t9zCi#6v{?k`{e@T>_~Pq{8C;#m{fO!Mku(00*yqa|9M)eqJC(h z6|`edOwr^IB20RT1r=}6$Qyy26CsJaBiTQ<(sl5V(@fNYi^=L7O^fGpX0WOW=6s$F ztOq06@8g&3@_baEU5!-m-54Mprb+Q+PmLfP<-}hC?EXmhuPJWw?NFBmc$@Q%7e zc*v@ra75D57Zu(lAj}et=i#fGO*Yx9Sd8n?g))coJXW7Cui~3pfX)yQk7x~o(l7%< zrwT!y+8QL-7DIpN1EPjJ$Td)^;BaWf(7}3Qe9;wiJ*$`p`5%i3?mD$>k=JWjQf|^8 zU{x@zkukRKR^ld0Zervh-lb?S5N!;YhO>z3?XK|zF zg0l4YJ#dpRkjixN4%`&TO|$gwJ-8{(rYqDoJ*@yYC3)28E?(lVV6@_ld(oPArJ+2b zRvPM6JOsp{^F%T{uhy50_J}IpzX|X~B2=DZ>x;+0w`~M`hLq>|wwdJ%UY-y5RNdD_ zYk?rng`|RmkDXi5t~YQW5e|D0Rg_%1z2FPTVCacToTG6L#uPe$ma*VlVw|ePBj8E8 zy0l{3a!y6;Ivu%Nhf{0v3Ph?Mhs$SN4HW@l|6WoGq+> zAFhF|^a{R2TyC5uZ(c7U;Gi08i6MRYXli=nnDK}m;>}k=8?g|1FZb>HON0RlKljJX$BtmVU?$R z4%ih{{9*s_WMR!Z>3SNxy_8__u-6Bx^(vn@4yB*0;txyn9AdxW2K;y_!7R<=iTzf2 zmB*0Z8>{%k(mb^|Shs+$FXazQ^Dtw-$zElz!6^Mw6@OToXB-FX7VrzD{9$PxeH^U& ziYHL|=PLfNG*3kK>(*UXDLDTqDE~s6|0o^sN7noiD+d!ov{0rxW?RV z=fjLLrgs40Q6;|dtbHJ4rFaA|yjfh~>&jKgEYlm0pHSt6^yd&C|9gG2zESQUQhbG4`z2$nOJ2qL% z^uLJHsmT>gm&1h`(Y47urjzd@-L0I1D|t{8q`Q}2#Pml~k?v7`Gt*OMBi*Mly}4up zyp8BrL<^VvZ64D7b-LnaqzCBqWa5t~li)&}_-2j%Z{m;E>-BQtAE47OC6Jz~%f86; zAv(WJHq!G-?k5jlE=KzB#!n(${3i12M|Mx~sMqxTeDm$f0smmTp>wn_+U(EIpS5hRaRc^k@GOFrPHrZqyWfbL334+jedPe$ zOp=?)=>ctUGhJ?`q(9h-n;CL5HT@0=%#@pHX+Ay}IZJL1PIo4?IdXGI`f^g6CpXj6 zeMs#nxtWoEhtw9y&7oe!UKpj3C&{v&XXT1wiv#GLrtZEDuoaElBR`em$-3h>Wemct zL_%=v+MFLeZ`AhOuE^@L9rkb34w;|2e6T;#SBMqwGLJadXq+pEbBo6Lh&Z@tc+6QNUS} zQ9KZnYW|q4{LuiU-`R!z-`TR#@zS?oCLfcN#|0k(Z%0FnV{)U-frhtQ;WQ0ypL@`- zv8-w)@=__T10|5eHIImoxl?d+P?rTvp2cMQVkS2tDY!iPS8$8GN=Z`v{Ewh9Wnj_ol({99U8Q z9jX0DoNC=OQ<>jX^2aYjkB|K!lEYJn73=aU#y*IwzY6LYms^m7p*8j&dh+6t#2UHa zL0FlwKkICsP;6-2xfI!N3JsoDY>@AO6(9St)&d@1Y_i+0MfO{o#^W|yF@=^>76p~( z0HcSFPVt;$?c1>LO?`9Gq_IDWIC%cCUgFRv^9p*62I#DacnmxfIWvr;8@+&7zX|~! znCufUJSGbOze)4RlawV}N5ja5S8y3j_}KR~!WxIb6dG|K8}Zniz_>jkBZ7x78_IW5 zD4%Gd@GNGXJ^yH!&ar>j+2ap<9yiHo4$o%Rqqk!1X~^0n66Q(GCU*#X=|ainxy^nv zyz%R%0CZ0zry295(c^bNf~+nohetZ=2GIa`1v{@seh*zYk9qcC+J1;TbDH`o0<@b& zW)+vehV%nsXLt~_bdXo@bQW?~YN1@lY`@F8v}%C?(NRitNk5HrCrM|eZtl(Dxl69x zcbt_PjcY134y+}f2bH!mc4Y*8ghtPgk&92`oicDl5ussa%=gRuHq~ zigDS8_$T%y&V{(9Qan;NE5%cWvm~9o0@^pOwVth>_$T&6b}65EAu+o^S{1uK0(85G zoJaZU6(tY*^(tEJ2jrfz*yQQH8pQK}y^1yj^(f>G5BxRV_aJF)Enw-VUG7clt^S_Z zC_4Q#8a_Pa$igg{O7R5Rnf1J!ic2cR^HQ_qno98xklV@?!8c%MrMT5CmEyLnRH_Eo z1e2$$@0#LyStOcd){FQ~V8*BW!{!dd-8g(BL{!IIj*12NKm@?q$Xn!q%N_8HN&r^^ zu-XE>37g7rsN}yv<6`7pY4i17lbh9-sBbOHt6S99|3Y=~!taP2$@j>Udd3z2%gjhg zOR`K$Dv^_w;uUtdj_JK})#)ySnA2ZhmoPmF*HnsogR)ZGft5;ee^yG;Stflkafd_=~RmUyquM~v6Av-x^3z*q_a}53C1iYw~77qj-HB!v6ba zYy!qNLWq~Q2fZ^PEB-ZS(0ME`^f<94g0PAMqirwtxz3c&=lQk?2 z_z1uzWWa}j@Pyo~#(e-k0S2<8g zGtB7|3bI@D!U=*f*Xlul9&_OI-3PwzW$WplhRZwYYURR@89w(KgsZtvp!K(^rC;NC){2}Y zeiREUH3rwI7EKHBHuXJ-B=U>T+-sPQzPR}Mi2PeIK}bsx$rGqO@kCA~_n+=-Kw znulvD#X~3)zW}|hB(qXHSu;!0sT9u)Oz<$utW>`dL}5nTR2QVP%5AAAdnMVn>kfPbm`CxHI#gLh$HZnUQS z;B-X4i(R@6o6YeR5qQJO@WxuSc{vq0rAn?E1X+x0Gy_$MK^O|egDkSr^1280#iu8R z0Y}XRY*`4d<&}3Ak(MS-X6LU3!X^7cx)9L#mc#?VRkr})E{o*dA+un7Lt+#}!n zLcI+5>kcPxD_R^sBk?MWe~Ij$EJz(L1L4^Mz}F=1Cl5JLlrnsE$7|*3fbNK2nc8Uu z*A?)d76(rOkss|YcD7k$*q3N-w1?cajSOpyF%YelyDpJoV|cf}-1UkKd;EI{yk`Ns zsxES;S}=E}7wuKp=@hKvBg1|qnLasWaDHT1%RHd=O>=lH!5)1!GE2sPD#aaJ3GO({ zO8o+GD#aau3GOb-5*Qx!GlScRvQm%2!odiggbZ#O$`V*A^^XNib1jrg@g<-v$!TkB zE8p==@I;SPYW;L1dGtkAin*y2U#m{=eN;H@@H(?n->zVqFQR3c9NME)iq{0k0IJ8e z@88fFZN;_9O3{;ACB80Qn*)GyK7Q{~sf#eZu0Zl`Rr-M^4>Bj-h=p8!dkm$CSAfxV zNU4eENAc!y2jnf722-$jE~weh%6n9MIKn3(?>GHfxnTZmEKafDCC&-=s@KZl6XO=( zl@nJ#g3T%*+A_Ofd2^790E&>K{;i6(!wvq}*1`K<6e^DSNOs&i6Xrg^v0GD0i5G zC9Ys(2mb5i%of;@4H-v(TYd&A7;5m~2g^roTL`?2BMeC09e|O0V~TtGRGF@GTJE9& za^FhdkIQ`$)dSvD-;eald8|jZsi(E8XFKW%Hv}hnw5OtxxqhFa&^0?Xc4JrQ?O>sH z-1G?K+}9sLjcrsXU1Pmho{PeBuF|ETv+_~f23^5sm?L_1GnT8y^dll0O*59OcKY5l zW4Y>Sno)bkD>%9U!P4(~8u9TUkrxby&^lAecBup>8n7i9Lffr!b^AIFX)PkYCC< zljkLH(QoNU+R$NIpHR}1=Z$nGKIusQzb`}6%0EN?C7{pGVEqGaTtUnRhl%9=^DxM& zMwQWAxelsPEnNrk5R$ouTCJn@1E~Gys<&2^YC1-WYb{+P#kH!7?X&s~;Nv`1IN@aS zakN)H9rX?|_13t0yF*o+D!OfpGPrPz$#ByOul$Gpc%#$wcvn~YJeKB31?)?A5JDNd zt7J}V-NEzADCv?p1N3cu83#$p+;Y|W7FqexVetvwjHwy+TL-*M4 z?&KC{_Ov$mW>4Q6-GkZF_anW2JPT&EsmB-YX4E6XC7!e2y3l;DhDSa;43u%Epg%a? z3>FkA_qtrVv8+`yJQ3Jis%g}F9p%N1YcK=vU=z_L`Uk_6hs8KG5*nYwv_loT&YZaf zZ+PTsjj6|Uz7RvEA5WuMkGYVa&iV&bju0xaqjP|RlCy9+O)*JpLbGw(Qs2T9^R$|L zqbYu4b_4tO#>~<-dXP-hV`k|$R6SgC z06DEkZibK-e)|&rq!BJoH88~io9q^$){Itt@dGeB$ZdAbJQ3~WHI zNczjmbgz`(1Wr0#s_|}MEAdg=B5*t#9(5#>OU{y3h7lPkIZK8bKFThFqnUF|5#9C3 z#*uRJVq~K?d;s(dlo}S#K@tr3*ls?Z^dHr}{#W9KxG} zaS?&j2sPu@z~a9(dlDMv)v@TAgK=Cp@eJW=NBCUi77B@t^9#oiWh1Oa?J&eXwrQkx z4)xDR(GpHS)JLbC83tg8_4AAY z7^;k!F$Q3mk`ovqO>F>%t1@c<%K4VUS?EQ6Fbd_Pwq49>8@!j0`)xL?{yWiuTB6f( zuYL;m??!v+`*B_k57fN}Wj7mX>~$1>M6RgJ#!K)#f8%{CA%Vp_XSbSXzD76R#*C%R z=uB;oZoF<~ZL71eS@YdQVFzGDHiA6g-0OG~Vtt0Z&+t^_I$_JJdc@PO>IH1VG(A;p zkkc(e@=R5*p{gBU;Dd1BCmw`O*t=(xOJ@jD~k$+OfZD#~HvCX7Ohk)p86kmLGKOaNk+q*9)__AE@uAiN?ep zS7rPI4M?orPvU+-R(zAO&eYM#)$s`G(8~URYUV5ZV*WvB=hY}8{PCdVx318I7PzwM zTTEG;nYC={(F0mw(?ENBQ|Ry-5jl{mKOdew7Jg* z2Hjs(=i!%_JihFn^_)wd=iVzNhwg6o^D`HEg_%A*%JFb+nzl zpjJnUFX3&)*1#Ejo@S=T@zfK!g+c>*@dIf=FGhS(j;D5jEW372zJc{JMIdd?T#X zl!lhdM{R3!J48f#%=Nv$#LUK-!)PS62ENaDHsc8JjL>%}JBt?gL|gcw+qg0~01cYTL`mmFa-sz;vLy zaLdYE>B1XTbKQpi8&&OMV9T@+-MD6@ClgWnPF2c@h#g(~^I&xR-71epl9O5O z-5C)VZ5A( zl$oA+K8*L!8IUT&3b8%$Y%}$EKa%x4n z{EL(Es8FYT)V5V9t$BGtRoF>RCczg}2Ys*ICj7%wKYg#=rr3+BL{EZsUJd^NYda`C zhtbSWPyGXdJcwM8LmjMy_VnQAOwxbGL<`fA|Bmt&usRuG`YV{vY*{)X?Z;)Fk#Yp3xA&68XC(`I1Lt{4-)oV|z-*8w!2V@^_ zXf$;+YLQzg#W*wbOweM3)5+ni1&*7UonGlF`p@Ah`p^e}07`pz5 zx*NGcMesWEztLVn?%s2C# z#Mk3)EY)u-mR|U+$F~Ksz3TVi)GS6Sasn5`4Mt@N6gGapv38ZZ z4`7(*0ZYc5cb8WU>D{)eoFKYs@;iPQA_J2bmZw7 zk0W=p!ENbqU$VIL*=Xm=`C9uFgIDM9s&|3$-&uyPkJg2jq31+zsy+$v0F7sM<1 z_dVhqR`Wc9KLaoFAujIl0nrxUz3&ul%4T@&NpZ%>SoS@Dza%sDb#(PLMXn=JC{*FZ zzC!97>%H<=!OZ1Q zwob?uw~pWpw+_8}rb;iaFpdxUzWRm)201Vz^|*+@8MDKBYAKe=k><2LxS7S9T5VWZ zLDQKy0S3RP;oE}6TMXl60xn(+|DtRMQrmvfylqtaS8e+{asw(h63*0OFFmBx_(8M3 zHYKnXPd>x@?}RTns#r%krVT&rbKH(LP7t{7cQ5Ak)-)UVQLSY!y6zxUzy zaeP~_M2kys0XMxoZ#PnrJ-7$~&ayr?-B{qL$MHlQzyHLy1+l&AGL&mXdt8KzE9Z41 z%1bc0Es@<0-xfsjs?ST}ITTWn18{MC2C5-0pIy$t?`(Wq5ZfDhA1>vabC=>KauzO9 zl(Sl(DA9l2gBbz8m*Lxj*j^1cr96n#Isd>NK4#cMX|H|MjE%d*E{q)hau)Wh?3BYc zA{!^IxDnf1RQ&1#j;ue)^S%U$7z#wbMIx2r9Hjn*OIt~Lf>Qu^8;heVkjhHc;F=(| z_mCo;THN==SLk?0&P3Ko+)lJvdhgc5>aQ^8ocB%zV1i-2x2Hd98@93`Kd}^-qH#AN zMt}sSuC5Eb_|@a}bUC-{9Nf&{mLg6qkOa2~Jq5&*e#9Lu+2js;S}6!j;Y^TI{vmtBBuMDaBh+;Su<8g5{^8AzY} zplfUDYJE1d=vCYwbw(983$bVocUpZ0q`SV?Ww3EgK5ARz$3haiZe>{|_9VrZR#3jt zjXPGB%|8e`yOwq)8_|th5Pspdu38j(^IJ{iO-JmZFtPhqmQ|D3^d_3vZHCzN_L|sr zD_5&7EfG68j_lUw>n^Q3OVuOue9)SFxEG&W^f6M5ot&jMApctCLmiGNEW@Z}zF}OFqrqS8)-_)kx?zw7&<*PoY~s<2Tn(hTWHs+D6e7N?A~T2`HK}B{}jbT#|`o z4NxLoa1qL1AX5vpeLnJ5V;|Q<{ND4krpUhFM{VOC;X)}3%I$EYDRW!#$Rb=4$>hn* zU5ATM<{nJ^mAw_wV8&G%GIx zP1$f?$5PL7FXEGc8JabYW+8G5r7UQ^ZfMrDhwgU;B+KajOAh}6rs?4x)H_gB>Kjc(xxttFR3-x_LWARjnpp<)NFLPD4!+?D z4$dK2e0Gd+G`rrAJlyh!Q8wH>$gG3aCodY^sc&#di9A&xN{eH!6~uQgp?U$c>0$nrGY)!gh{jvQ|yE{<5U^)%9@`J9@X z{X^1KOpjeK7ujOxnk|IojF;BRR_OL5It*1FkKc7)=_;#SAMQkMA#0(fEo>o)3s)9) zmc)jYg?%NlW@X`UNvvAwRdbW}9k}zN&jk4zT8K*XHDAJGeznhIetSvxYC)V~+%zrx z=1-v1HNW{YG{5BNUuairP@nOo=C`Bcw;s8LtR0QfPc@#WKa2i~+(IeF{=RJlM)|X#QH+bwpp)*k zC)RUM;V^7uAJ%|I9dZk$7-)-0{ea%*92>(4!9MAWICLsl2oCJ7BGDm(SA% z7sK`;t|yg&YZfrX5OQE>u}9r62b|(`UmZ5rz5j^tCPBU(B~^i zu^y%3-l!s^`O~8b)VPxx*d&_UC*3#RJH0q}R8hBdzb12w6mVjly(ls;vQi%4>E3C) zqwXbI3xQ-~0Cg@=Qov0y(J0SLr5n@;P7v-&dDIk%`;nm0{cbs$M$Y8K1G*?xm7bm0)omBA|Unu04U z{bT#4n*B$qG<9%kg|4ufX@_fAO%Q8wuBFmE*fj&2^n*UM2(omsmSW3bUsDRLdSrA| z>oEPG7PS%O0rOOzww*RPlocW$`*+B<2ZJO$k0?9&xGfXR+6peF$=QLY~IkrS&v{}JR zz@ml$YyuGQci3n;O@M2{tT03mUNShlhc^O0bBdI;c#CD|&9&_5!8R}04s8ezXQx}k zeT1gJIJXBZ%v=zhA5#O;oF#n0FKCMb?DK_=88Zw*(mv8i6bgD&CL$ZTD4eOQTinU@ zv9-uYqXm?ZC!7<$B?IWesxZKy1MmB&m;&s0>=u@ zs>ivi#8{*Ae7d45qfi1l$%pErJPd zm0N_Vts-}FX@SZw#Zx2&l@YO##AYiR;Ym*fl^7EjTh0uxm048PEw*QnivT+BjCGKH zy405|5bTs@=ew;L(6bc=F?raQ0ia|q(|LjJ)kcZjW8flj(fBPs8+2XteKO za{|Ql+;K%lBRw3v8ypaN+QDhNZamnzvNBF_>w#(SeXJV-xl}W)hBs=efi`O4-lU9olR}_W$%KWz;e>UIqJzyh)LUcL zyiJwhir33IL77gqN_>aTHJrJAyHoXrU=To6^y=uT-|aV7dgUJ8r>u=&lkOEXP!?PA1Tr(nsd2!bRND6;+Eals2{2ww6ppk6D6?lk zrz?!RtB<9g4G5A$?K#6iz)t;HvN$sa%6i^^AUo_kYQj=?!!=uQJr)Z(=UA(ShXU4X zc0rbORmfQLM`kJru-el|FZ29WToB0`3Ef-%dM=|Ib27_l<<524z_<0~1^LzkJ>QK& z;8DH>)=4Pzeg7i6NG%SoGfIM0gt-kZ>9C-)3)iyXEUy`85?qSWC(KyLS>7vxT|m4_ z=S_%2h=-M&U8PiqnX|T_sdcrRIk@X6=d0EDT(Vi3&*shzH-f?S!haI-woc+Iz(8k`Tnr()Aqi9+re=I^6a*b{sN|x>rw;jY~B7YcInnN zXt(K_bqm(EI5%ihx(8kP9u2+9+Hg_L>i&{xj3tGrvwK)T(H#hT}nK(^i`kyYTxD{gMorr>g~%f9q-c+cV|LyHl1i%C^FE4X;KWcM&|Nl zveR3sXv)4AcJiJYhT6tVbJ?bo?7%xXC}!*|b3KE)bk9t;?&u6Rwg9V=Rpg;o!w|%^ zfvuS~I#l1#lbjWFBxk#JfhX&C* z02VkuT*~AgBmVNtXG;gG1mrL2cj%9v|kK3*_al%fz^zpxwdD^`q}T zo(%ku+jWZe|5gMWtX2P1x|A#FQJQ68hDRA#5~8)PhfWW9hi8a)cqaTM?H#Tbcbf)< zh7vE2Ww<(H(qqf2Ow^f+zOc;3K+AnA8CU{}L`M|`OH+<(#XZ)3?K<(ka)^TsJ)zYacMrOnfqYIPv8Nt7N|;IPY734l#CD zp|8x^S11a)T-bf>3K>(PYh#>VW>q}$2xHhN1&NnhEb>zpBusvOKUN=DjFU`-wW^iD zs%#6YOvAyS4#@l7o%Dt^@=b$AUJo}$>7BEHr_w>~Y95?X&BKfqI(XjF`jHL%IC9%M zID2UC20NatmrB=6^h4^COO9T;*$okqW3;WaG!94 zIGpSp)fc88dPg(dkMu&+`ulD!96cT4g1gooaQZVu!xl809JtwWf_1hhIuyuEb1=zYYD^Al0JQ~gO8eDFC4WAKKmwoFGfTp-O4hn*J$`;Q}vi;Ikid|+vEq;sJly#^6^f7mSAmtT&k zd{Fe-xB4%|<^3fHBJ(n#BlHAc%YT@nA3_9NEVBa9UY2yIuJ3poXI~y3Rt(W=!x;Re{52iq3>qT-_3aJ^`vwo@y@U4cCunZy_|SZUpUxMP7wi!`y=S>VT0 zA$`3TI9+k^vZzVs^5qQigzUPMq4{t~dUfEQ9$Ldy!`Y$u^BNmMMa?d_3Qub7KJpob z4^A|Cm9ZZFkm-II9lATt2}P>U&5TsjD+}t37P&RfbkBlN=bzG33j!#;jXqDJyPJGz zf*;Kz0`s<<@R+fzzK}u<3|rl^7llO4sy1UJ`%g&&L3+^#t4&+{E;g01>?J-6U{gC> z&PWCV_fo_kaDkw`Bjz5JWCrf3P7Y`y_|Be%MSQu>j?ks0az*zY%y-}&O8b_4j(tT& z$oxu8Hy})HDX$WJ&eZ0e86xI%e02tAdW>8X2%}#c3Zq|V!sypa82ttbqX&ZVXdNlg z2HzB-?3C(e6Gp!!ph!f&mG`0b)@_zuA*!|H_Rx~)4p}nYnXyp1%dc4aKDg9j(B3Yv z?rDG*Tr%C80d2Tsx-T?n^%DO6j8eh6*~(pkW!3}IK7X0@AnwH~!yr6l(^zsn+;Exo z2&!oiqJI>4*0qA?%P7Aaha!kkzTdU4Ra9`P^gj!Z+pbUP7ejTg3%2%l>D0lX ziA5j}9i7xf4{U=wg|kD>X=k^ZfQ+ax8GD|z3U;;bdNOB=-P(efxE;AhM6yiMj)z@*nU3in^uw`W!VFFOZ^nUUZlGN$)LF+= z2c`#Q2ImJ;&8>e!fge#T38X+BMxOeJskgrDCbsuL}FXIWZ*28XILOJ8$PIO9vJT_!fSc9~I zAz*SCK-IF2l#Xr(I>TR(WQ4W@YXLvHZHBC+cCf2R0M^7I&Tact`;dCEG2LIw&hXu6 zEVIlFXduqLul2-CA6>le`e2-YR?xlIqjL7X_;S9L9|ae#wFGdqnH~^pRA2|FjerAj zR1qNT{lkONFXZ9GpK*WyQv1#JB@NY!l%2cXllcmt~yIthqE>*795BI6mA7&bwM3 z901lu=90{eG3ntGgUYUX_t#_)iml9b>dByL2>90dlyFt}_p&fgdS!B|lapxRO2G-x zvKBjYKb7vs(=z;B?4YvtPSnfJl4oRiIss9inc-)yHV*7r+`AIc#+%?R+@ zfmRxHIzvvX4({6-+H@4HX?bv@>q(%(I?fIJQ!SkayYI=I@12SyEk{kAIYOPp^Y?K$ zCUlSEbq)QF1fu*VFyZ<{W3=#D^(|FP>a6zVTiGPXQ)}OIYhyjPwsiNf%|00SXt?yl zMvewftsnE3(q_P0TdLX1a961`&d7H1UBu4Ted}Vq(9rgKEn@#sfXINf?Cj9pciDP4 z`wJ`zx7J38vBBQDpFM+vnv&@i97~AzyB;z`a6+ASIk~e=Z|DfLSMvuCHYh}$+20b@ z{^)>Af7EQ}2uF_V?3!v&!&!20*d-m(&?OyeUD9D;hV-y;;vXJ{TE}ICb1u+yj%LLF z!G)Q@bSp;rF6(IDWyP)ye~pEm8o|c{# zY`_`^?AW)W54w#LeYbIv?+3!m4Z4j}_T@HC_0h$tm=<&!?amC5nYI{*I7P&u<{til zq0w@kVWYN(I&}l84$vNE<;TWjmj++4_)qs}Xc_rV)|{{e*v0TnZ6tf1V-Q?xujufw zzQGxFVh2v>p@qK-!$7#>VSz&zL*@_Aj7I~ylkDg{GF-|z2XtHATFv@)i(HIU#Ht?- z80`$(o})9oz$H$~uD!>&nxzpLBZS-e1C({QVmp73DQxO@G)$W*h~s=kX9sHUH9$)n zhu_(u;cv+}30)Kl5uU8KWWW`rQ}+Lcof(+{L+sBFnNhp1L+lnG5zxuu>}GvZKc48e zY9NMqZooa{*8EWLP&=uiEcTMynvagOFY0lZhClNeGqx$P0hr#ZuMpa6wQF$ttJ+E2 z3^Ez^@PDTxXdSDR^$34IGN~h%X(x0H1na|PTaVCp{md}Y>Kk(Wf^KG>qXtP@YWZPf zL{n7YED-S61BIC`;vetwu(qB>gF8KZpRhE@3GJ75OUkrCZDO6e@-UiZ85=snU0WIS zC98r?Dt$@3YUzhung;DX4HFyOET}8mp40?q&E}>;=>+N$Vvstz+R||-U0@rs@0}gi zYiwhcjslYXxxocs1EUoerR3IW=?#k9^#;4&jX8QRN> zoxH(PdRW+*Zh-Hn$_tg6W}Pk&_5la^-YT|yWY`Y2DG<0c(ZQjRhnZt&9)~q_4ToFT za71u0!ov$rjU+xQ=^ra-k~a1)62$%HURC|}KVGUTFqnsw6bi!*^&MI4$_=|yhX>u@BlhJ6&-Y7<8@wRs1}`*Ki#WA?JJQJ*Y-%fbl+!k3 zX?J%~P<3he7Ml#AgiW_p4ILS@GxL%l28$fiFoJn3IzxJs^8MWyq%fx6jf3ZA-Q(kf zhDp1}4flSyJ^-H~_xQw22z$m4I!c%M?(xYETL5AA_>?fvxyRP~6ZWlpe5xQD4G#Om zD>MAzRr}b<5Z<_J%R5_nI-Q*Waoxq?O(WFWGvV%p*TQW6>Of?YOQN$ff}LhdZ-BlY z7!5b`vJU*e6+A(_*N->f)=3yq`-HCBWHvd+L_g1M5aB$}L^%19CY|XGY@1nm+6d=H ziEwU`hyG@h2e~uWf=YFv-%{kdzPTtA*W4^|O}=xfcRFv$cz~a|c_Zi(dtPAohG<8~ zvIRD92r%R>lfi8PhgpJ`fq3fW;K;^Px7#%0sXH1v%vYeD4IJhxDKgVt+WK7uwBTH2 zW~QCU4!8hxef`18&?w(rjRegCS&s${8EtVatX0~K6En^!gpaNhOdt{(MhyCierz-_ z)To^{HtK6t+Ir8vBkX&YaDIJ@6o~H1{$~5!jYp1za!t6qwXth%op;~$&m0%N({EJRdf#U2fqn+j#y+oa8?MH8*7x%n_MLS&|9Sv( zTwx!AzoO~jJMA59^tcmO1Mu&I#=fDWjtvLevC~mqV?yohqJ^=K=&qY~x;vW=`H`<4 z6p5Bst@YaXx9f(UjvZiYq~F=o9rVL!Ost#U$9L2F+UT)~?uMQ8{=SnwAgCd9N8FBX zZ5&MKpst})KFB)dgM;=C4!-Mm)9Rr?r(6ej1ESO|&4}viOy})ur+j3lQ$EV@j(Vuw zqjBr37B(mZojUD&j|n^9W1YkUHr4gsfnlh&+T8Qq!1*4Bnq0*+_*e+Y`~;tSg70%r zq&jJ>nbg4Bo*eeJr?|?|IID3~q5tv*1#5+IG)u65IKa8-`4Hc+p6YgvZFe4LXinAZ)|fnCS7=EG?|Hzx!r>p9^B-|FgK^Op+3E{!>s3Qm~F zdG(SYKw6LUj138zd|*QYi>{PJ#-)`ooJb>bUydx7?i&&lwO@y=anb_x5&nH#;W`>Q)J zbE9{#EM*bclpvzFrKJP8_1lj%ZxRXkv1W#St?SHf3X+EFd{IN!nX%snu5G^#6}@zk`+`ID3bp z&o(TL_Y4~fxWKwMh&%_UZyc^@y`a$Kjbi|HG`2){jP54*o*7FX3Ro{h{L>Tvzvky> zM)Lpn?(y(D@_**%J6}ZXfHs_!K|`%=cjz5X1pMvuga0Kz-_0thn^wsW^*d&?IfLKt zKVWZdb@Bhze!g|?Ybhi>tNge9eCuBKaTAI79zm1Q*LV2)S%=?*@xu;3&P5bUj~R4e z&|=W`B8(rj1IFRETR6~{^sNWG-Ubuw?IA&@eyFg>d0kkf9ui0U`eyw}--wy+%nj|- zV}WHK?ktwG_eL82K#3L8$2Sgx`1oPZjE}Dl2s`!rJZr~W<&cRVM6GW!cM&(&NpIW^(;9h>~u4jZ=|NZ7CP+qtVOi= z;Gn~Ph*J+4cJwukA7K4@~evQ{34`87zid}c6OULWiOZD3|O`H8+z zezUDpKgX#KVA`pl+t7ob7xdr{*KP7W_gfx$fPbv}gDPU40%)hnt}~XoR!Scqm*Myy z?$z!#@4cU@UG$ZH6WGjE zChq-5zC91|*tciTeZ1!Q4WsGS6a|jmK*OC+zb537T?bS|3Ea<4l?GBJc(47m$*G2pN(dBPAF{i=> zjSFo>+6I{a(_O}(Y?UropJ$P0-7UECL1W=p|GOJXgc#iVU^6)96^AL=Kq~zEU3~{`LHkw%cvS91A5%`0X;zX2|1KE0_pJ`Ouh;UUfgzcZ}?MK0zSy!hfIE^r< zL7Og{OYD=07S3FtS~j4iAIJI~KQr(S8|UiK%4k1lAu+T`uAPlOx3{5U`zjj{YzP4- zg!uC_b+?mt0z#zy=&}(I$#)5QGc2hi%g#k&i?u#y#Fc$OcfS$lDOC^Ybz|_tp`hS9 zZ^7w{Rbw+TgZzjw8=Vn8sg%w#^|rC;K8A0g=*4;FiQK*;+8?C70oEHe`-H7$Na{9P zUFS1IrnR08+NU$x(EHRwimzJ3_w)n*!`Pq3&$K@H2-iR{-+|`+U+ldLd|X#`FFcyj zmPfYZm*hvB#F3rE&ciP~{6uzMo&?!W;?EA?gvT%*jpPZEMv+F6o${r(j!7w{-~ffT zq)q~bmf)n60xfc&lu`<`y&pd=4S`Er3U;9VD3{s^rTzHsz5lh=Ugzxdm>JC^1eabz zG&5)KbIyLOy&nIy_S!G^O3*L4OGAXQ#t=T@qZoFm_e5dvkiIF838xLQ1mg`K?SHcp zQ^u1ZWKZP-fb6y`;Gl=T=}wodWg@LWrZ)jf?{sx^Q9d0ik(T;EGmlOP2@Ijl!m*%> zdX2C{O8U`VSc#ZN+N|#Fd=nl2)nOg~H6r_8D~}19Du^=?rwgKoeeAAkL`l#9h~4)_ z4Ge`93l5F~H(hi=xCJ)2d8~*hjTjN_aPuaOgu-D}af`lbaF6{8(*W_ou3=?K2wJCl z0Rqt@iNuJ%`^~0nQ?57aYh2c{xHo87j9K#Gwo=m~>Y}bX0*8svP!mBT{t_exBN+!L zZ4FE`(+5&QbsIY&hKK8VNK6N@-$G@Q^A9wd5`mqY_Nbl{o6@g+#weIqr; zyA`|X0)=v`S4>E?y_a80_v*YMWq80(VMAA(!4_uu-q>^<59=${I2ws+HWVF-tl|> z2;izmn;#0;K##Kx^kH;KteR6kp`s&VzCRJNke>7(%$*HdNWWjfF8YY$ruYLMLRzx2 zWAdZ;t!|1x)bCixNEw0w3}nInI9?vOL|y#^KTjC}<@cV0gRuTsukxT!hVMDx&{TgK zC8P|U<}0MfB@&e8Ltt~t9g{pxIt)(D5L@jt`&@*B9!)NbQ(;o)V7frr`?*56Q4C3_gYyoanZT zyaL=$D~6uY=4wDf(tLc87!&Nd2HbQq*l_3R+5Rp`uImrf6>35OTX$6n z+uf^t+h?_!P;1c7=DAhv}o zQHQpZ6$2wjwDaDunYcr(LpL(sdkzLgXc{Jt!tOV^rQ+T5%q#@TWB4t%4zACeJ*n(X z0Zbk>%QEiV5+&W@k|DBuxRi!)dDkB3i<&a9c!KSaUibm?=$Nc3A>_T@uvjwi(RHrr zidZjzUi7d#!Y08!wHSe|6Hl~uPS7?u5YjI14D$>E%0pWsm9lyKNaXXdyMZ*^R_SWI zVdG65KSP!$j2!Q>eSkNguT~>MKzFOqiAMEWG}-DEG7_&-J2mSY5wG`+h@40_U3rK6 z5ukI6RMA7jutPFv2Nk^bd0m%jv*@}=N1xna;JD5%#JUatm|Z+J-#Y*jbO0EM9xV^25% zH%yeSSaiZ}xQy1B_ey7bB@c+NyGN}i$0i74_W@gj4n}gto-{_M(+S|=H&SyvW5U7o zxlnHPiV4y8DOXs_iI9z9O)EfjAZXb-cc@!M=^5Nhws4AteFJR-QyTM3T_ERDz5 z(x6y;u{7jBBVvk@N1cN2?es7`1g#3qho}O=8~YDNZgaB*TFb~;!tP^fj3jZQSZN>P z)!~~ZkK?zRC1fJ;cbE!Dp%^wxo?sGiEERh8lk_|*=Y=QzJ{u;%42pE#ks2ms2$5m( zhmK+LF}_CP-aXieRx@QvBwNU#R7#I1vCtYx1?7=Up^(NFXN7p<@6fo2kf66k4GvA$ z?rM8HJ$DDhO6&l>m9Q#~?Yll#pvMQiDt!8ms=`*ozr>pYeyVViOWlh;cUFtvR9gb6|Kf~Xj@7Xv%#B0T%-#dT}de;)#>U6G&S(Q_-=)6Pe7vw z^aOFaI9x=>WRojS={cK&EuzlL5`t|aIQQ0I4I(I&L1LO%hN1d~+`ip6gI=b_2x9$} zeylCDgBmVWv(q=nt{3w)6!>FrxzX#Z9WAj=sINSx0kO=P+kHh+#&VaazcfyC;*K39 zV(hdkoDA+V&G64CAP$F2SS9Q8JxgMqc!Mt8+JiAp?6tFp29lzv-WOgoe$sX>l}6m5 zO7}iBr2-xod33x9V!1wga;II+_N|nw-AZ%m*ei(^6vBU%YkM73V#R7t&zsPx0p?FjxKtUS5X6xUhX!?5)>_4YHh0otPXOyw37>nqI!gqf7MrtF*IUsg-rn&1kTTH`As76 zws5xgaNLeeo$~H*kiMq{hkYtEau;lNc11GCBjR&%VK?s$Su{59y5)hsVj|mjg)5Q# zBiqH=4W3jHrQi|Ac6l_A&ipZJxx9~UkN30fVGRV!2I&bz0BRVByz)lVYXaOK@AtnrCxtXaP0(kZ%_|Dg0XgaMRa50A5^W8NH`~> zVj+#p3)?uHiQUeV%H@wa?ik9wPNGZQG2~8BTj!7TJF*qQia>ZKa@xsF zNj*I6{3b_BC?7icTS8_Gxm#k)m`aWo=rT|X#@1jncH&{U;+vZOzj+toZxg&g3H;Zz zVPbr2LvbWOG|^w!kiYJ_4cijYOB)Uq%j1a+hfBkS4WqfK!qA326Jz5yqjsq@x}kLF zoqf^)gJZej;o`{PhVjG0anCCpDF-hf*}6Hqxo6!_ab)7iy1|hN zX^MSsq=_5)3x_5KR`K5j-N%jPqiKhD!OIcZa>ZoX^wC>3PL+VazY5 zE4iV;k~|-+#xMT?cpg>2OYpjhd|7JQF4$)dmnI8xo$t(+$8s14xiUId=r0TuM+*Jf z(x|;g51be&jugwq+)(kp0y-ORS{B1r$nr?~h15#AE>{8rYg2`SEf;NROUF zO&%+j4-XGa*OYw;O)Dm|(=Qsy$6l%WEDrK=_S<`3dn zcBnYc6@@Om7owNka~ZY#RGzxZ_m;*{iJv!|D<7sWn3aLj*l-rF%=Y7Pa?i-baA6EY z?9HnZS>OuVgqg-2P$Xmk@E!R(bP`+nGM>B+|Bavw7kUp(6o=@-POzNB6up+-IU5>x zcKFbE8S6qXgnnkTxAg7JNL`^!=Yn6vBP;E&waT>e@B$gwbrXJLglS5&CXq3g|D~R2YBICWnfbeuN$~6Dq)DN4ilxbyV}? zZO44fA7)_5dDC>-%zm3`Nl|GYK%r}?3 z)?9kZyG-||(kn4ZAc)i??ppE3X4$t)Q)e~o0L`RZT9TWH zc9Q9HriVUT(i_Z`^yQp+Qxg}Q!r$hW8H#c>1WWC-m_-IIn$Z!S%ixl%9`SsK0s=CTT-)6@b$^$HBG(8(n9mJ7=A}dJG>Y^rv>4~a7GLK#gJxhkjmJ_ z@a;rXGPlTVPp>u?C*RSu#B?OrwVTz+4NJ_*GiLP(%)*W~vpW6T80UwQi>NV4UYUto z?Gt{zN!MA6Nure3!gXZuz<=Y z`P&%m2SZ{~joHQwpgXnDD9+#jc!rp=}QXlC7&T;em2UM>D`3OwhR zsg!y7Y#y7vTKcEx!2I-WJl9M1m`hLdxAx;^?enJjpqaPVbYQW!eFuc_8FNXpcZpg2 z9kVd~F0*KlX@9^pm(9Y5(fuiNRU(KcPi62K?Jvui}7TyQk`azg~-D z2YggZUxEQA3QgW-8+#f9dL0J5dpEe&dZ7UkFB`SW??YT(jw-EZ%$hSg>Lh>$w8kSW zP}F|oJE8_he_+RT4lPW$uvJ@l4Udd z2{UVtbXDp+t93q#Itx#m%RB*0-TaA`euUbw?yT8#%4~&J;xzTnJ8V-wYpZOYHruoc zcsibPN~?T*1y*eOjm+D%5me!OS|P44Nz;ldSMRg0`5~6cl@LhH$*bD10td{MZ^y@= z^jnzB?`hp%0h77%oLOxZC0Q_E(9*xf0^e{N54yrm&qX|H|E}fFpnRiuD-Fl&|I0Sw z8(>jMEbaCQ)3zIYVS_uryR_B`)LL@dTyAy6c{~`e)Y31Zar5yE6TJJlmcIw{y5YRJ zWZLu`bBXhDt?+GBxcanN{D3iK({a+R^A)Z04ykj~G1FBxw*~6_yVm({Xy&5y^=1`G zp|V*?AG^(V`Z!})$ykqpNj4kHCuNOv?zdy{*Qq85?WNztFiZ$x2!XyuD}22bv~$^6 znk*$8T8B?-`M2gYnYrmtfr#%hS9}L!vePs_Y8D?i>GYs!{v(t8SDD=TJbw2bu7&Dgr<&}%kYtW6e0>A$DrEc12fFO=+7Q=Eq$DoOVef}{n{(PKFOU- zrtX_gwU&)JD^r?csdnX^_N7l>)C7IyE=>MoQZ5vCP|IT}?ueFFpt#4iJW6rXT2z(d zp3_>f6xZ?!+xQ9;*Q4c?DDG~pP=(@-X`Lz*_qf(+jN<-5Z?8mg+h1urT7lvo)bg29 zoJ{_;ud@z-uwF?D21^G5V{p1s-`!p=qD;Amgd$9B_eG6H#mwuAeuuFHF=07xR z-$a_vn%m5(@0fIQ^1DdM&#u=`T&&8E94;(A_~)IWi4P zq5Yhg#v;XLzs7dx1CU}%!8D(i5s}ihTKX(X7o0|CRQM26->Idcdl&IcX0`NrD7t1X zgtc-pk!>H=@{>(O9G+34oRHoy_qDclq4$eqTcM>7Cg};y--U)Zm|RL?Tm({CEBrqs zu&h8@$dvSe7JU`O(3+kwSDt)}wArzl^Z{(Tk}taZy2eOk*O zP0IwHl5Vu|Bz#j#KZ18(m44FPgl_WPq9ZTN+O|CenY!`3*)r{xZm3WyqkFrSMo0Ix zT2x_l->&5qNB5Ijqt@uIdVRIg?a|T-qkBlpD~#@MXnE}DenLxQMwbNj_qF^Hj4tfz z1$J(PJI>A}_#dq9CbRlSCV5uJp6*?%rT+lIIp?%lc)~5+rKNvsORb_KO!RIo{UV6> z%F||zUADpphqN@x2ZhN!t`+{{GdUTL$NKF^hsNU~mJ1)#(zjzC)~DZOfFCvQHodSK z*xHnJ_7klYVs@g_tti+xJaZArg@w;zsh%^*lV;f-v+^mk?u=PU(qU1rSug?Bm^H@a zfVr5oC{d?b?dV_6GrLik&h3MG5QHw%jCr|z@Ev-E$-_oj;2IbZv+saCVLQCR}TIms3-wPfv zZ3kt@WGa7EOaHdQREp&`t<}z7Olt2^bMc!@`#T;m3*YpRY5O8G6Sd$b*`7tA{0?;l# zT3Qa8OZS*SDrHfSex%zTa~Ev`PMvne}fXQDh~2 z7 z0b9lgHl!=F5x7AAQn6iGrKPc5>Cw{qyYjf+`l572R(gNgcID5&`R9PQpE4NL6`wMf zoq{QM+FSx?6h5In{N-Ta%dBIBtot&6$nq!pxFA&%V_Gm_-xPu`m$HnxN=x4Z>R5W( zEVugQGA@0YmIAZ^_gMKoa~b)QHj3#cI@de3&UzRgr_I#?0{Va!z8M6xDg6uNIa~&M zHHy&7%1cbzHXgTF@p6#*WxYbE)@rtO1*7gl~8aQSOy{J6_LXx5xE3m-Cz!B$^oE}b;%PMOtJZYR{W`DOIy zNl+|4EGQ{@-Tg=HM7VmLkoH@(=pR50OMh(414?ZKw|`Jee+){xIK3Ap^+|KJbsY$y zd`GK<04&jU3{ROjiPho z4TIf@G@HZo5_ck4Co?dBh`HRMA%yK9RIUkmpAZelzbSMMzrDyW1a47mmyOd&Vec(P z>`*irz9UwO;<8YOV)^h9j@?2XH*O3y+_*7JZZuL1w>ZIM_@!}UAP9P!A5ujPkdP#L zb>2pQ(N|oh@G|=qfnfL+h=w~%tw#t_xiCyoNG0xr69-0*wsBy%6$KOrhHn$&h4Dc2 zA3X-c6O5qKfG!l4Cq@yGhC9d6bcFaJq)lVZQ0m4J>d!#`{JRkGgc^}xL0k(5B(~sE zI35kxY-pAZ55#>4-^)*ojTJ`n6ud<>D5}waJ+5FJy@<66k!T3z3Pz&gf*Xm(0&eS4Yc-5!FZ$YWNWh zSp!K5@kpT)zQ&E0@HN~O3}3@rHGBshk^&MyEwd(GS@DadChTw!LxVSL@VH@$O@Sv+l)K5gJ2TzW43 zbXp@)e6|BSG*8FSz|S?x?X zsLOGyvStl%j^Vgq2p-3!xySF^P`-4yG{mGq`~qCX3v0$|rRoI^Z05Q|*b=~uGM58^ zZgB-+s`pM5Yyd5OBOH0Kkj>@ug>ee)wfESdX8dwOplz8O&x}i9CWCcigPKto$CX0N z#6GnmpQJ80(aW}aI0hP*g`q-1#YzrOY@tGw;Rmi*5k@bL7jCZLqW4t{ct)#KMqv%9 z@WCyi*k;s=k&jk}(itBEoAJV!cx7CTmvnfxm2~(PE9v57 zm`i-Y0CIYLxj0lTAEm}dWD-ayL?pQ43_9pkxUnaKJkIRM1meXU0sbE?XgVlS66DAvEA3_wQte3{aF39D@+1}p9Ph&tMF6<)Bw;%CN39U+N}`JZfKU9g zh_v=;8&gLH&R6Zl6oQTyrynyHC41Xp{6o44B9>wh=ax5HBZZ=prp=Ys#7LRBc*JY8 z@N$kz-e!>liKZUY!q%qbRg283XJMNmntPMQCtH%M+svx;F9EL}6tK#0(B#fvu`l!^ zI1R&PuhRlQf>R3a*8)F+vxOygua)E%r_Y${&LVho6LnCU0T0cM{EfgiL;#~%1ZXw4 z>}F35oI>;yH%+GA0sA_r%-dz2aw^qN4f`+M~H>SVE z4@&t#@;9{D4mj7YkGXbh3osFCgj4UjmXDjJcsy&O25dMjJ#DFiuhGEH}-UyU%KClEuv-k1T? zecW_CZMsjG)lZpg5S5HD|Gkfz%bqqJC*+5@>`~JJ2M86I1yew?Ct#SbBnV@9`inPuimA;= zD%B=rG>M>RzUz;?ySmd;0ER)ji0U@ICyjZ?bU$i#9W$#=(ceqbXh!ndW#+oI_`Iqe zj+iSjCQArgecG6FX60VfwcD(OCYl~H9jKH(+?!Ty6t0Dq)D0)FS)eKPnS`f~V(}8o zIH`*&CY}{OBh+|SYlLHJXYm6Ty~VC$H>Ose-K9kpV``<|ajh2n^;zf!BjMOLP{H}BRev3S1JnbtZXm{p?RzO1Ex519R;=gC9J!5I=z{R1uC zfH>9jW`*?vO5xnM+AjPVfU1knlU-t?LWqxFtEJJv(KNI00j=;jB6~X0Hy|?fps;uu zp?7KdJLWWDzrhCVBLL~ZnShTS>2t|T$T>KdhvC{^vn{DFC`;b+1-&^o`c3NmQ0s&O zXrwgxHv9Te2;W6mF|EmVEsccm$^6`;d>sA`NaXLDCFdYscEiWE9@y zoA$`S5yNXl=IXI`*!F}lTS0~YP)nnzuw4OKA-pd`idVnWK0UNeKqz6emj1^N=aDtN z?%lS#G0|hPwhn5IXlUA?7DYnSWTt*o%VTHi!&(}hDH-hVX@&pzgWbx=*SCJt4)$-t z6S(=D*@OW1V`hhS!YyD{mi#SSClvQ1fuJ2)>UvvbwXfHr3nlJH{M*mG*Y@X!@Q$rX zzXc3^V;~Uf>W6KGNHoDbR)h9yxw=`Jrz!S}qRP%mP?;>;cWb>DJ#<3Y;Df(y+ZoFS zr43)wI`zhu%k51k?JJ_O<>G9+TPs9EGcICPk3j`v4^9Nd?;y_EF zP1hr~l}})|?3L%ub)Hb7r|i>Gir$!m7+i#IwD+2YW%|3q2FxyDQSc_MO00I?=}=(A zd$jc9D7_r}V-c0HL;|UVFj^k9?Qk9PGLXx)D7u+IsIq3TkOYt2pwEefyvlnd1Nnu%;yiaJQDOOLw(g_3I3OQ3`4#3yt&>EwLJZ1E&Ue?9eK`Naz@lv z>0-Z@z8P&>ls;-!>_bd|jWUxezo}Iog?iD6xmtn!wp5ytX>S;Kq4E=H@-_=}GjV_V(MY+*ugBK7tX+ODCY z>+;GEYWW8-7}(Um*hZMhKt83V@54a$PMh6<_>=#trC$b}&B8$9<;jh05~w7Ey5a-2 z&Hs$pljYB0lb{uO^7dU?99`)`3?J1BK_7avu#vye(jXg|KbPD-h2|N$ecZGzuKVT1 za|iwG+&)#^IIh2ECjKFH`#7EjfUXR{l5;&}VQ=fcL6PTC$M?#978Hiya=ua=q|7mg zCg9PhWGR?Uu7$iH>}p`0JtV$d_}b&0@4yTZo#GXdk0JY1#;UeVYfm z0;)CUJjpF=#Xa{+Cnq&$7Puc;J z;ESCk56wIxOFm>r+r>wv>zlRcpCPhZA?~K7|5AELOFsc=MY#}GdwUxV>#YxKg)d>R z+-|e*y9h=DxKHujx1%31~Z2 zI))t$ZP-Ns_@j9*K01xrAaI8?=kFf3{WvuXd*e2r#lH3v5*#Y!>pyJEKTYKu&SDq8 z1ze>3J}v)u&=oe4U?1h$FNjJb6&}?J&!EEGrzkEk*=uG`czg7v+UK;|mr?C1Y``j; zUh9vN3eReVM-VNyf-;}TTVy(#PuXUM06vL(zfwzs03M-^Jz7MW8CLzsv_E0y@F=%F zfmAfujrmv5Iwr}*k(z6F&?FJ-+?xET-uOeLSfEWCDWpI^U~D>VciPY5*=&2lHY^y8 zDuq|Y7fOe>YT>`*1xZ9OUIa2m=y>Y`=Cb3a`;574+FbMp6g)0=s@(N4z3VSzK9<>y zY)OU)zM`ccLMa>|H=T2*>Nzca5Lri7oi|t6A(la0^rY>Hi`2+VS836ofZ`F!c(GOC z(!7#-v@~LZ%iXWjazJM0YOIJg04|`z@pdH{s9)16A*e@|>Z4kE9%+g&K+l?M&YRUB z5qMJO0uSJXG^=khb3Tn!FG~F60KMn;ZI|AOH}6Ceg)`=sW6BVz!n?G>uSY5fg!*Z% z@E5{#*V`cze)>%+>$>~*$#iDZ;|w8Hh+ws+ceTJjLOxd>w!;hGqYhkR+! zm^|4tD(Z{`dvQ&Id~S^LM?(FFhU!LoIX}rb5dBqhE<#%ksliaA9HRoiJj(&!tzJ($ zZpBz!SD(iuyV^b}(UGi;_Jvlx$1hdy4QdC}dujmbjL5`DPqOMgzFKR9vvb-?kXMH;S1%{8auTTlTa&lw^+io) zJ3=!&wT)wpv=F%yv71_BjFKFHG^T}!Vd|bX*V{YAP`KN2*~O*}ITybM*Ed|+P-l~C z7MiA~wm+AC*35;ffz%$yNMmS9@8~oaorlP8+H<{Wea;wc?mqktXibRg-D7%oB9q^3 zWGb{^vo$_b2RRE+ss;OO=_gdYwN$*@^w9_QyzmG9(4HB(MxS)itT%lJfpZO-c5L%{ zm1&xqBBcin@S`)D$+WnPOpB&e-ZL#8nN1R69@hU1VugSDnU9&r2L(#wg5zf^Ap-0a zbR6RSxI$DOqJ84Eo@nuYkR5PSV$eO=F0@WgN3Quz76t%+zu2Ad%SM(kWTuA`|SNIkYMW`4S zMI@cVyF73$B#Lmwogqvpwdg;CC<2Fi2}F?w$|e|5`R8dXUZw%KBwpT zvsSX*#MRcFw$;9XY8QV-G7oY*mEB~v)C+BH+@V~uUa^<4ED;lyvnS*-gFc=9{Lj6VPPMoI{B82Hm8T)pWaZ^>^;Ze?vpVx2LJEq95RTWsf{Pg&x8 zQ!6Dg*!WLoF*1w6exFX?g@K*NJH5{)t+q!meA%b%9p6KTmSUM+2Xa_{CfVY*=|QdX z1Fmu$sd~J)+YSCrc&n#owrk+8~I5y^{VZ6xL36FImH0d>qf($zDuB+LsQP zH3PgoU6XZ|%^F%Rw68s-ByG7Ei-`9^MM))6u^M)R&38SRwT>zI`Nd!c#wLn5Yd}yI zUu%X!BqerUJ*5>IbU;&P)FE)C<`%M-1e0+Uyr2pW?N9aIpBKPJO%HUf`u@YPzKm5B z(U);8q%Y%&JDg$wIo1X)aFzcA?qS#=FM$FbvS+avgIErsGs!=*@)}yLkIpdsvP_Gh z)B4y97p>PKXtWM8ldK?2eH-a|3j2sY z?7=?Qn_X$rMQejTFQ-}|(1)%$pwG+0pikRrcHm;u9hC6)yMapi`X&QFiv$1~@$}7S zSi0W#Q!)PExzMK5hzq*#EO%cgv1r@h#*j? z?;=pB5>yC|N{c{Afz5N`3c<*x?*Airt=9-xIAMeSfnENEy7G|(E|f8+}iyp;3g;Xjimu;5+n z@8E8+BC!oS$A8JRknsFVa;98+%v@YHoj9rpE)-v=hJ7iWJF)+EX1)|cYmj=3eJNzL z(Kczi=7`msf@1Z-cwfqL5v2p3C}m0YMjfp-II1p#$;wwBcdrt3@v=4&O&^REO|Ho% zPH*PAKg|;-e}4Qf0fUa=@o-|6KoW%ETyaFRun3!t`d5f~dZ}Bm>|ACl2)yrY2_$Mk zT}f{O77%Ecb<#LeO)L}l$w4+9dTr1yM4@NpT5)JoprGVu>Y52V!7hAXO(ahWjXb&$ z%=LwfPKq7;(!?kj{ukNX^K)dH22-R!S1C)16bL9kMGAfdEAW8J>EjIkV1RJ)A!SApfYr1ldlzxBVZgPu-1O2{rw*Vo+vp>GP#SX(&YLeHdi9{8Br(+XHD5}9P0FOb zk65S9GjuU|HFcUkq!Y=j+j%Mjo#ywPh9_p5|CTnqWj)?P1A-H*ZlI52CWDV8{H062 zh@;%h!t)@=ji!U1{u-)~rli!EUkoIT=q$`6J$u%t5Fkqr;#sjrZBk<~DO(qrIs9!m zPkJ+AoXw@UfLqto$0=Q6=GLA63JoWtj$t#=8K>F`^bs&e0d3|yXBKJ|5e&px}Q7!%0O+Scc)9DlRFgi|Dl z5AoD5o`CP9DfQKar;5U<_yWC%oH{9StL0ekd6VQM{;R*S1(i>zyYgvUCGLbearM1X ztHh;A5l`4tS|v73iq!d*)(NFa5ntW&S{e$}76;g@uh~|9t)(e>>msx5tjQoIY`w{x zG243i?-`Rx6LDfj*YnasmL{QVRH5sq^cNEm@f470ClEsZw%agh2aiAaeVH$&m_qop z;g{2C!^_A~DRIf4Cp-@SQooH@f^>Qb`J7;_EWC>x)7WEyEc~;ckm!2pz=p5e8!mtj z5Xt@E8y8M{h*B$M$&t9}C%h32e}Tg{q)yc=GrZe$MyDil%_^r( z2`yJjDI=woQpyOW|C4qmMCnrclM1D+42aMBTRRY6fyFu(5gXvY5^*n?9JXpXZ7$k~ zZ8y8k78^Dqg!@XZ@O=<&2X@`qZ3pu5vX+J%=5p_YTKXk`wXNxW*i(X~gDl}@7V?J) zwaata3BgKsB*fCH01UAh<9KtuLEMe6`?(dHMJ*ni}U>5TIqL#Ne5&)KBlF= zg-7(9qr+5R=1m7h6jjf>A(^^gf+&O8?7I1iw)WStg?s*a(`NSpN>BeqOCJvI`Ipl9 ze{aV-G!9Z)DK&$n-l-JbAemsQM>outbJF$gI8lQR(^-l0)!adRv|5Zx4!f%ScieJrgPsvp{4(Zm4-u7 zm)pHq(w#4BDIGb6{W-hrt{5r(wwC@io*d{b@!8D#ZFfS+2c%VrZ`o2h?xM{eWh9TC zuSGvZ5n`~m1YTNUD}IvUv$w~>XD?b%MWuYkK^KW2bl$cU-K`Swx41}N6yakRggp3X z8nzq{GzTCw21JUZ8hJ4~lsk&8>elHKz{+4a3;qRDKLCuOz(QvD=DJMqlb&Eb`vAqX z+>g?2mMY;?!uC!#%`q;8qXz8F>IsT{fqjyby%<-bP955eS8^QiT$I3t*Dm zlz?jqH5}IxJ=(gKq<~yY_-5ydzDBS!YHb8Nvt2mkL8`dmfNA&@@qy8^ZRTNojR0)8 zB@zq5GyQXmouPLZ2zF+dzZWqV8_vvO(xIHe5{$awtQ8Ch_@J2C*_26zC9EU_zFW(e zH&GhaOOd{RvhbQ)x@y#&@AQo>%o7yE$9X6{Bx;0kMg*;#W1 z;Te}ff4r*KEW<8%KnZ)zwRG`v03>st!4q&|Q3=1kgvgSj+5Kg+6L!arr_K5kX6H$B zV=t`v`+5OKw4ODqCy+&~Y&P#OtCFkQkuY~XQY8)0Ndb!|&C&t0IW z7^B{vet>qML#IbN>9^x!P*ONaYpNn#Ql%=wB~>crmlgZurteu2iDW|)O}}#f*_P_o z$t+H-P{n2!;%UrgmwRVovrEk*+RL{fGeArF4p`S;q^uDhrZwwpV&Y5nXSMoIFh{eW zqr5T5cirk|=aA)f`9IpR3n2m0_3GxY%uQ{JU+Pu0_$_SLrLB1@n8zxx-qm`ztt3Eu zLHT;gysDH`SMrWl%{M)trEm3o(^98WzG+F+`5NuxFVShF=;KoKktHhfpP`9w(emRM zgC!_$PJc}}sEp%hwER1m*o!T~a_t1cn_Ul>mmvwuDI|82JET38z%W@o%m2wzKzvR- zSwhv)y~-l0WH3ubUnRK15}7{kE3l+*wub`C+*M0lOXO84E3?dO93Dd0YlT zff*|yOVYkd$dcTfdB1&p2#TpAX{99JeT}v=m}szBdNHD<(JY42j!JNnlvaY1q_hI= z(_B5Dq;SJ;YQsWlLZ#W2vQ0|q|F8GPB@vY>m2yW)!z;mA!qF-L_>#)I>-%=%W|*S$ z)ypV|Y#nfe=+3AJ#FTguh}OVJPzhqw&Mvtb`w4_%yz|$z%8@VK&}LU=A*Vr`J05%SD;|fHEIU zqXweEE=Gn+F&LR25gZLrj-W60sbN6QURJ0r7_nvx9gGcEq8J-4dKeq#BZOC>G;pQn z_AM8q!{dO+VkicRgBU9#Lle!6L!g|+&Tz{GZ~~YE$Jkg<))ZoA=m4svYz$t2k zU^^LkTu)0yLQGp}s@y1TT&R%Lb9VSJOI&adv*dDnVkN#K0CXZ>&iWVpZ+e&|+F@&z zajI5=Z{oISfVkH>X|y1)wgVFFhDZ3(Zuk+2c5CQBuu%Lrn&HKN;~l|RHVVXEd6Shj zPe5Crjck|J?IKzEqDNMy*y8-VAKSZdc-OTsz&jOGlO%83P?(;jFY8I@^wJOj+v&jX8ErH?z(RAadVgeyoChX9Ud@O9izWD zprwatCp$toaEuXuNnVLN>Dw{0H%}eBqWNa$zEEsCkB3bkVo*%==bJDEa z3kdLpS%;IAerzu1gO%QimRx%l$;sE7m+?tWU5}cZj?qa?_`5v)9Qu2$e^S$@(8m{c zcGlgP(MQYz*c@fkaU6hDH>K9zM14GH&yxZGi=WLn&5Ay75EPPd<6AO)%3QnGEZJ?k zr8Z%UNhDdIpMLEX6P#dxYH!?&jEo#TgJ;uOWmKDjY5dyANTAQY_%@`S*nk1uXjZ1m zClE*Tb#n#&Yf9hu7zSy{vt|PZY5hsld5{|4zDGb%Q%oI2JQ^U^Vwyt3F#BIH{rsiZ z6zOGryjY738JpdLX~fmpe`+?Qj-J5NhmmcZ4(2+28|4wjj=K3s-1O9KbglI?{cgS6 zTmo`Qx9>e?t~iSjGa?xG^e!HVmgl_VxE9mf|3Rn;`6arM0qUr^4~;+iw7KVmx$mU; zzX9fM7vy)<1ad`gUPcG0H$Bk|-8MA_s9MH$W;iZZO;?&?mk7kYm_Xcnw zFs`iK1^*_ivHct$=_lH3m%X?Q$uDt4WmB_YG@r1Sm*Vm+x-4lC=l#1~(DMM!CA+9V zFvdG=!Ns`TLziWpSHp6f8B?fuB$)V)W3fwlcI_jD{>x?^s&;ZHgej}5B2Vd|4Z<&+9zR2D}H(>VF_JTKM70vQsty7;R%(G z{c7hqt8@;UocR)a4w@{j3+@~=nfgjl=ThbuRZdA;z#2vD!Cpf6Rq%JA+Dc~@$*VtC zv}}gp@%jI1X5j?jyUe^nI(3o5zU3`5I^0R-zRKZFQlZB2P13Fz9MMH?wiaD9ZjSbL z)|O{<6xlK!|4K)ZNmHsEMJ9t&=|CsBy%NMOgHh*!PK%iwDj(=1OSIC_VA7zfM}tX~ zT1SIPt*U1~E#*n5`-r>~i7UzWjl5XQvb1*q6`XP5DfwXM8F*n%RG# zC!5Ijjr5fZV+5EJhUvYwA0YSW(O%$$+qV;#omCjK*J<~)JJ)sue$JqexdWLy4s_wg zG#d3byt4-bG*&>!T)vRaO&rM#4-e;qFWub7sd02jHytVr7DqCZQmJ!OHX8^C?d%Tx z+=j>J`uoQU1Ku6o@EP=%hO_;J$zr~6a~Bn4C&oqw`H8tc`@RhNB@+dFwjVQ98p#dy z0uC(%hG_Nb;Ln|S*l4bQ6Jes|(!`K$W?3>M0gW+jVu zm2*YDZ(BAyI5NSM&>e6|1c@!Ps|S5JQX0z+=f>Y4FRXVSwqy@5ePs6K_wC6K6BUh4 zls!T!508S13(+vt?A-^-o2K%m39N=!=7uH;w!hs066@O+SRI+0sliMyL2{nTY#u6% z43-bmxHQ(0&Th>3c%huN4?O-dq|HBs)01 zyLl;3?z=O)YxIsgv2x{!^$u}o*FbTkKRc8gFK0^w=wW_X8&~h6whrfxfNgNwY0k6k z%;N!7b`)AQ=>2$Mtem;sp((s|1Rjo@pZmIRA8{rSWF`|kVl)sS4I+yKh8aXViM!$c zDvx!_Aa>!I#8}w3)wfUA(w+2B8n-9|+cHurXA2mR{d%<*_UlZiVY>R3u_GOG?|g2v^WYkc^?ilt#xpH}i_i7Ve$M4UK2P zSo`(_rDlGp@Ad=PPAsMf+dhC7d73C#Eh$UH#p&OnJF|(K@3>?CuD;uEyfc%%?Z$)9 z3o#|EW(CDTaUA=MpsbFTz!(Z+eS4r<9)jGX_U;K*jWl6Tz5(?wlj*k%ug23=ocW#X zc=DjXRtjTB%Q zZiL)mLjtPbegAeO>VVR#(=xw>k1_GWPOI}_#M z>~MeXs2!_X)~H>0G+-`tpv+A{1G0$=!@f=IsyuPr-&5M}AY6eTU9ZMPI0e)#sGnq% z+(zPuY`NPQw;)>FeOCwo^W+oH&j+e$D5YRyt9#v_ed;BoQ z{0-T133^;vD8^|;EExob!>47abVR`{Du?^5*l?azbzyF?OVCpd4;2Tqg^|+4;9(jv z=P|KOdI7w&zW}l;9d+R;OAJ*P>8AWpAx9D|yDRztD5?&;MWWi{FfJkZV;3A!yFh(K zInJQ%CSw+_@4F*ARqQXYAw=^&JW&QkSaJ^GL7Q{qWVB`WO$|>a20(sOtet@&h0WfO z*)d#{`9#H;tdQ<4u4z(TzN zl|wBQhCBq?O!OVtd*ki94rFh>;}y5xnSlO<=-`NXHBS?QR1-pV~eFUI&p>KHaaCcW`@9^fX9{lazwuSz7;!oG6 z&0Bi5c5m+7gdd%BrKf9K&$i85y0+03s@Ju-d-Jxgt($u`QWd(|v$3mdOZUbto9L09 zTlr6CS5J3$7n%VyBD?=iw&pA7nZ2xVTAo_(&~CAyeQiWB5A_Oo;1(cx8zphceZw;&-~v;Uj}r+uf!ZW6NeMEikQ-**!-5)) zzlARoJOQn@m)$@UBgD50{T=8DMv?%xk>dDIQ8c2xR(q^>#zyzXgSz<)4T&$vyTD~a z6hmmhAn<@<1{{Pmep(yjN5P=_A>+!2fvHjc3|46BZ5DZGL^MM6WZ#3wJFTWCJ}d94 zHwl4O$69i#SjUseUWiU{!j(o2O5>|)79KaD-dhI_-PV9S41-K!Z8ZQebz$^8z6SUn zfXyTr=2mM4bOyzkTK>@PEou*9(jmyQF(VkO3tG%jJtW{TKQTsP>nLbr_)rP>1mFb5 zGyOIa@68rr+_-w(+79xo?Mw`i!bH*kz#SSISD+%pbU%3#Vtft08p1XtDx!@s0x8Z* zYUMkFlMS`4vlFj^nsd*@NWScA8uhLhRTW9&i*acs#tM@pd^~-qI({oENKkhPptzO^ z`m0asVi@Ru!BwNn&8o?D`mI0euHMwA-X^$t>aeR<9{pUuJZ9C047GDQZQ znr%cTz*a3aMs#u8VGCkTjKHSt?;@%P?4G@m;KJ--P_*?ogfyt2Bvadei)vZ4M%Z>> zj!$Zgm5`YDkSok{vneR(+b`iMv35o*@rZZN6$O>XsEhm*0V9{)z4qZOpByYD)CS*5 zZ%~l+fXDQMajAo-<4}p#F|@L+YV&!XN9q$X#4eylxjy)3Ai5Oevg7$oexI5J5aH({P-M{>ikWk^)P(xfJMlecn5)C>x_lU$1(ET??9XaVV&EGW_M zNDXGDU17X8%b<#C;uXw>KE3J8!ljHFD6jnK$+axwmehAkxeT*5S)VbCkUKM z>-~Egak41;s$u@+C)v@#g0rfz2VDzO2|XFs4{W8e+#q1X1R&ojSn$#5glWanxNhPi zP|{OwC^{(Hm67NmP=4nY)=Gg#N}b$Dx$hABZoPhV!*kfV5X!z8@!9-?8ql_4}}ToLP67k zm`;?+b*eKCtEkLGA}Wn@m#5cIoW!9-_SU_3+;rpKY<7I&P_{3N@g|y5R|`5&Yn@og z#24lsP7-wDBNmBxqlRC>o+^xSj15E`VoP+HL3oV=MJ(nSm*;pwVXy?HFklMcoEYv# zOP3WF$tFhl$@GKRBhH^wckP>hs zYzi*{JV_9Gg4;$cm#)Ne6`KK8Z@m^_Kwrk$2`F-H26zUPxn*$=lJ8 zy

    c*d%U@f5!O`YOuX7Hc~9$>zfzUiQBSR575o2JC2A1SC7U51X*gV`7MH(bZZ!3 zV`Jn)yDd8k0#{=6{6Dv4kI*|UZ|Lj;OP3 znA2r1Pe3G!ptrv?0b_S3SQtUEVr+y4FQi{6`wM$R87SL|mtmv|xwyQ)}J`;YDnH83!**5%AWX3*|}`gfpaoEGj9Q5DE(+=rYhpi+Vd z(ZGUn1^g;ts%|iq)TozZgT*^~D|tqQX7h&&s>Ii;*lZF{Yt2<8P-!ANS47ps9ep)l5u7G}p}HYN6iEaVY8(B3{~j9vTbV|b zh&d`bh^pEUnHXSIgJ%>{s4iIf(U?xCfm=0TdTaK^{@f@;7Q6`;2K(>NbR!T?wat2o zB*)?B6wuFvT|;-r-0x#^+L@P100%`y=7y$nN5{n(r7cuJ9i#~hOsMV4t+}8FJwGHJ zauA649$8bE5bZY<1g0zwK$yt}0v|vNsuyC?69lZ0rM{D>w&`R|0f|o_mI=p4jrRwm z9KhqkN;7d+3O%)fdcK6WD^Y!PFTnYh9fxPO8kj4Vm1CDQfKAxY5ZVvIa3geFidld0 z3`)%8CajGPLbw5-H4US!O3>|1dL2h)EkUY!+lB^^AXpFXHK&!`9 zYB1InT!YXo0yu5h8|3sPxOu5T)M2x26;lWqHTlvIp^MNiJhlf|rqoZ)T=CQQ%_I5?Hq+zg!;&LCaOuzhx5 zxa?tYJ9daii{SPwB~h1HEb4NFrNO|Ii}@110Wys@H!&twiiKHMfJQP5Sctf*SrL6_ zgI6A0p_zUx5cQ?{n1VCUC}!1iDR*!Jy-;r3zz_`#T`4Jf!N>pPU z8|(P+u&~&l*25>^ea_xHQOv&qvD@SZ4D8zsGOPIE;+>deTQbB)+ZcJnFnQNGHf*v~ z?AHw%G$XW62G4~iiNK7$Vay!6yDa(C=%;Etv1F*RqV?m()@Ih-lulRzxbQ{`+j$DM zAF-!gFLq>H-d9W1G{Cu>{UM@nU^ru`T*pl5n*vx6v6;PdRPLjl*H~I&`HEO)h$6=7 zrO+ZMExdQi_ptL-GK6`rD7C?v#SkE48zX)x!q^dST)?tI2nM#O@Y2FqRF=z*v839_ zO!u54*d4$KQ>yN@rT85LizE9ZPztfeZ74;2JY1Z|qq}Qu2h^&y9f*#@A2>by*f{t= z@Z0l=Y+BoaDt=rXigC%0io@@%^q-s%_yG~EdJ zZ)3Nd>5O@^PAMcpChBNs531{Euh|aT5Zx~p6&!Y~0t_d1Q6%d=M3~#1dBjNq_6L(} z2VasHe2|eY&(I2RRt_K;r*m=gDu~zm&vfNqbWhlfAx=n6#^+d~1lWjm-9lle6~%5G zo({+&=;-~3(Ckl)PK+P6&UxN`(_b9KPJ_;kjV6lT0A~>&14h~qZ94_Krfp?d+BGl- z$4;m`@BvI_M)BXtPsoa+ zsjB6g1*^_*e6N)kArRWnX@D@~5_U(C&I6BGwhSzP9Lnf8@$4Xwrv{5?ot;^6RnzW;F}$1CMWuky-toiO)M8^_ zv2)pGB?xw9xER{cAHV3)k=VVhcV;PSC+d6z?E;a$Ig6bG0k0%pJ|k33Nnr+fT36?2 zv5+rJ6@kBa3n)u?J43D{V8iyReR{@Iv~RNsDPR~OFUT-lX)*JnZBo@DDneMZq8&xD zzuseZb#Hc%*%l0}D!yVDqXx?FoMBQKyWSyk^;;x)NW|}iag5!>f}mF4Beoy(&U*v_ znn-9iw&>1eG|^*%{U{WuLa+s^9WhZBWUfpM__oT7mQ$Sk_niL~BxxroIsz+G)OHnI zg?)qUi6rk3^J**rgeQ59RK(n4an0DN4!I zTO5-M!EtDew%TqUlHDp8J4ZgoXW-iJs2SvyJpQIgqcuzda@b;#0pFZwNa!VN3PSp*?g6}6cIv^NJl1QAI{>ohqvN@jvaL%f#g&%^h@xEA5ON&W*i6;-YIA3@Q`j$6KN@ECx~&4kdL@l@!;K)5!|-MfD=~ z&4hR3=E+>Zstg;-15 zQKf`8WI?L}Py`FN;aoKc;3|wEsZMn-8Y}}4dUUG-SsvbY$KaL)+N{SM!c(@K9ecb| z>4_d-qA_Ziu)r7wwT8|Yki-Sb8zPw{9G~XmW=$04sxaZL#V%v665ulA2e`O*Kz#^X zQsfc@iPtN3Gmc-S-h0&<7CVE8>eLYYb?!ifj64TWC)X2rNde*Ee$;L+h3`9_W5>^S zA;xsvOi@%e*Ng*NlP%zn1{1Ek)x7$c5V!4ui#MtsWMK+awk}9f14<-I8DSkgvdaON zM3bp^x}i0CJKH!BgwM<*4z&7aBCF|JK+}4f$p)7nDOt^EqWF>~p5Zzv|e+r&9sZv!5+2%o$q_+TP8v`6c zDhQznRqymOyVNoi@K_8swrZ0`K$x+leUNwv@`Q>I^zxUGh;A%7o9qawv8-o;6caO6 z6Ve|CRT(Xef|YI!0ES#DK{etUboQig?veFfg#qIpGH&uma!wXn${EHBO8_)pSDjB7{BOmVIm_=DoymsZ>-Es}Y&#Bf~WM^|qOv_DXT0X;#6* zy>za4QwZ`5(S%>>d8IwQ-HN)X47WY5w-1{J#*k`-2t{3lcF#{h-;05^LyQn&odvYN zIThkx0z{pqG^6KK%uf-@D1lBxn+B&hwxKqQV_g+3Yl6>_0Cg&gn2 z{HLm%;H~o*CV#}MrKl^!r>IjtA=(8w4t-Net|=aD*OE3VygYj#ZW;(&f}TcG?XZZz zc&kb8MJWkcM2%D4=t-=Wp5~88_3aR@bFGt|Ygn;xt~rjin$lYJf>?u#O=js{y*x-V zA3zLxxlDEBV+W}2&{w;4zY!LXb%&Am#5gJ8aTDU@eGf#`xJoHVN)2_u^)sP^U>fN9 zWCkO7vah(J=27=B*6p$Lz(nv5a)fz7E7hmh%Z189&JQOF5PKZM4N{AzdAb;==wvo} zt$vBW)syzZwS60#EjC%PL32x!P}W>sc!KQb1+~%CVOu9wI6?yWgaG^oI6>R2_$Bo& zu?EyDUXT8MGJZALl|imk1w4|3JlJF+P1Z>dant%u0A4%}-)oQ*ROmIZvcxS^Kl%7c zdZs9&FLF6i_R4apUp|;EH1Jd#aU%@WK9cqWf?y%1B= zN2zW})yC?;QuE9YbsM}moA)Yvez!#4NM`bltahVGVKX_FcVNR2ytR8Q;f0o|0N`P#!Vq7o9KtgRZPC2QQr5-8P?=fm~mTyU9%2<4q0fy zx$?VC`Y5TRiR>%-M#^^*P60%d<59*FL*!A$iv#vNQDfE=`p+W_J>Ojf?*^H zEshQq;nyRal*9i4l;%tQh5V#|rVKT5{1cDTg|RWfS05VSJ)4jRg|`y~radqL4v%&w zzjpmbqCr@ycoFxN$!J$jkbX zMG!u1gc$@<>8i~ke&s#ZJ7EY*M0r~*kq6XwCqA5BM9lT*6w%4KQ^fgIFJ-MM-vZrleZ}yhHy)Y$g%qOWk6fN=6*+WPUtNKU1L#Li< zQK=fq$*Bo=6ke|$dxOJRz?Louza9=z*)M0bphYu2)x@!;V?!xC%_$W1hCp#J?_n14 zykQg(UV7|X-IHcdC6n#gM8OVw3DK_Qj=qoGVvN?T2zZ;B-LiINfuI_zdM2z$)J~j| za3o(C}1{l_*Xb0tL#j zW;w{_vYjED)^b0ah5*JD(A#dCd^$!U2~8}SuCdH3$ZM?$CA$MFMe@buWF8n8!mbYK z1|XVHWEvS7H5^zWY$di;3ZB;xj=U$>i2T%(7^fU((~y`;6#$b$9EoO^cC*>=3>_^6V=@^XGy6S&?fgPgw6 z&mKzvx#Hv4?pZ8hU&c{Qs2AGo=g(~w)KGFNDQZYj)p*6EePVu`wv-~XcR{mkRx-pv zSU!>!)V7p{6!(a3WWddLFhMd2IU8J}=|1crUKql53(R9Ws3LPTF@P{~OE}8@!~KrI zd!XWRGE@+pKUuN5W~0%56cbChBxU2)Ox(!JrxDZjTSS;Ea1VHnJRX8I7M$={t_TA* z8X*fpt8h93R-`pD8xAvr;9uJjIIs|z(Qs}dK}Eb%y0Lf_#U|??Iu0K8_ypxJrQH~u zk{F@4G>UFsm;3E$1&W*n;NhuEXD2LMnptLKUf@tXz=pTf5&L8_FnT;cOvnTm04-pq zBuZPKWV_8wI%Zug8LJGV&4mmuR@U)Ce%VO(3-`L+zXw2?h{On17$8TB7($Q1NyVI2 zbAO?X1D_fHV(T|V%%RQ;`8N!$`{5r|3~g2*riO8N8g_d?LJd$F7FrP4^UAjhJ(HeiI^R5EZvEMebulYIquR;s3mp+GOX~fb^X9*4srJG`wb@EVs<}x9a@w$x9izQmwdN(} zEW%)xO5MO$zbw@iNf3`H_`-oeDG^szO_*By>CYyD>CkC=YA)M_-c!W_r#;nxR>RwS zNH^N1f@mgMkynR6IM%#DIF3*ZlAE0f-RsYGjkX~`3#>HMHexi#yAxLt*_ImH0?o_g zbIjOk)%VmB-Pg8l_wiQ4kPRz&IBa$k@I;RUy`2jh z>4rsWodB}Z>g_&aK1uiD<3RO@B>xJjl!?i4XOkY;zxD5pvVK>G40U8I0S175o7{yu zRD(}9XvElH>`=gGfZiJixPGe5CKoE7h0ANY-pSr#&z15f8d@uD^9&_+3a6#1uwyQO zL|6y73W;gqgx}$ zWi3Y*2A6DLAXRT~EN~EZ(goocgKC9SX)ykr{?@WTECtGB1fYqJX>_t)$#{gIfY@O{ zGys{Cp5s^?V)Q14OdFXV0={_DSR)Kd6=R%@1D_2*Zbb~jyUw}__hNx?X2&olUs<0C zaGvnC1E&!BXCJ|Ag?lHEshCa>wD;w&PKuENj+`&T6e0djC=t#KOfa{zCr5CLS%N?!hrm^PYB~G_2nPi4AcGYX zN$X`_+)U>UbLMLes0D#jUcGHztYBt;pxZc3$pJK9_;|4`?Bzm4qet@IiIEisu7?tL zkQAkJ)jU*#I$LYu2YTY$z%IzUe?>m@2OW?0DV&)06G;OUfglGA8VL-NHhok5Vj8M!LvI2fflP;;l=1fS+iW9 zosd?&2@_}DW+bMNc%G^H8B*MNpmC743eKv{2X`Zl*2j^@I53bSi=kc&j!Zx~;Dh2D z5$3|oYhm?DOQAhy#8<*Q&KeK{_UI{0kKHbYXXucGh}1(g5lAPAvKyngfXBOWjIa@` zh-g+K*+&s7g5%3}ElXxh6-D+rwM1Gz$OMwa}_Dr0Z0W5Yn*+efR2r9i_%Jlx#|OXtKO z-`k+3D{Y9IySV{JC(3-d7x5N{+9TY-x);!eK7LMdvF9i7c&a|)Ru_jjpj=dnnk0C zcNM^#N=G@2ijP_XL$SDC7@}rHi*ypkq$EM480AnuU>jqvS|YojPldjb6Wmfg$pIS< zF6N|IV2N^Cfu0~>qfv(Fe5~SlKMt*=BPupLcgKe>X~kpMVBRCXNM{2DYDHnXbEV|NrcFQ zjVRAuw=TF`tDu#VERrI3y_BbjdN%T-9iK^ zFftOSY`ND@(ld=5@-kLobwiFLgo}c4HffH#=GEKjI_ugaHe$Z5sAu^So0y zt%RU)dIsnuRlys-)Q|FzGZYw=YiNCY&S8px@lx-H`A$T$+G6*|fu)0!+c*Y>cV-m6 z0IH(n`9|1*HM0m^4tR}AP-J)MxL$*55xc%CAtowZSWAGk88Ji5;-ua7bHR9`>=u^> zcseIQgU^n`Fvb0M0rg7VkyRP48vxtD2yEi*j_CS0C8Q6s$~dH5xh$EBmGY%w2&-3rP-ecp4C|TNo*Ma!k&{0vC_X z6D;}iw{M4kaYBzn<*0BvEYxP^Xo$PMurLqu`OAL#%zoWL>dSzt8}Ti;NOFSnY2Y?; zO9OqU>>8wqGa8Kf?Sx;6QWcGlmj*%}rG41?gdwKWw7x~ZaKr0F1{7$$)reUb}OqE%^hmpuhS zj7$s-Y4R)COij&jmH3D--Rk9!Z*(bf@enT$_gwF5yoYaXyj_rD0fulf`_&KN!Iu)6m#JRlsfWP8^Vu?Dp{Q zj-3%k0qYvyz_^B5G*eYq_tPX?S3Smr8{+MF^iVB+Uyk0ZRk@gd`$KqFPH&}{h{NQ6cz0HC$Tj8(>n-pSd-<~OO z>jPPvd$+->S&cyQNwE8zChP9jJC1G^~&5>k#;jT8inTBm%|jRO42m2mx|di zrgbcY83dZ6K7K4NFE?fNAHo8bwUZ0n?HJD_i4fxiMR#8_0Jr6;~u=;|Yr zHnAiKxhhDlW8lHlu;VEEpSQzHPh03y?EvYotmaCPBITsoeV&Q?Mgxq3=^JK4cq@ZC9+)iz)jGx$ zp`zOD70%1z8XS0=ugSU1w!2K?ECHcuMpXTKbqwr;2$EdgP;E?7sL4Ikg&C*G;&>it zJuk{2Sw?eVxV%)kS9?3*>z~S~ZV|H0VWeBWUnauk8 zu1@a}=80xJ zp;B-eDr+lN?y$CXEK{(jEkLS=z}S%L07~$bpGZ}e-EhO(N)6axozYW?SgVJ&)DS)z z^E|<@NQK!N%B*i6qUcaw6IK0c2dOx*!k!Xu6-Hl{ z`O#l+D}#3qO$?7vqu5s?S+xVwL|<P(a@Sip0k_eY)|z?VSNa7Sb4aE2t1-6C6XvYnIJGnlGXHf^)qUX;}Uj2Ig=#h zP9u3bU}~@J*xc2FQ)D#@i%pJd%`|JT`+W9)GxsfUl2ygs4JaZ}SX2;Aq6_#yU}1V@ zc6Jwmu)EX1u&;4uKtQ0kccy2zVP<-m*X}Ce!)KIeG%=v@6?`FLG)B=VNqhwiYJQ1d zB#M4&Fe*uW;)}!t&G)aWf8EFFd;4(*zc2lRtvS`F&pr2?I#qS5>eOlDcnw83XkP6q z>AQ&AYn%mlhtdA9Lx8MlJbp0NIYPklP|0#s*$W^-QnF;};ag~pIX{YHGA0&k4Li4- zTNzL2+LqgDh!47(mlUuqmliWodf(_dlB!$f90*Ta3I{AEkfL*ek|{!6m>Sx#k=W9?#I>cG}wY1KdjGBzw$S*#rH$x=&j>uxSJSDWA5s zfBn#g!Hok$<@KknEu$PAK1CT-`iBOFHuY~D8tlW@Kn?cw_iq^J+pr!Dl{d=&<^I8e zf&TRaOu(-@M9J7HA;i^wdB?=s$S8pcgKMUpa!kHn~`86?BHsn_$a zzC*fiD6n0O4)PT-7_8SMeIB0X3&Y2bOCk|6U<%PZLJFIztMo1_z~VJDy}GY4RbK#y z8lCk0mn!c`Ej&fWu0knOGdF(+5=j3%n-I23KogHY!^LQF0c#}nTO*ZT1+N=p%qJJ> z7{M6#p0Pu3`;|FQr)h(hZ5FU`%;}P>|8K^dY9pj#eVHKkq@cV=oH6e4Kg^EIS=KpdF77UBi1WoY~ojpcz@ z;mXGNsEmjyEHlAoHzcS2vzCLnYR8NBrfG(dIjFjwP2^+fJ&sqGNsTX%BArHEv6Db0-HvH#o`Tc0$uz_g)oKZrOcJGS!fM-V zF70z;Ot0%P3Lx#I2gY}zTNHGj-G@uJQc0RJ`>LKSTi<4)D!H(+txE*JDqTq=K(w=s z?g7MhIR6Z6c0N+`{KeB4FqAty?cq8Ipqj^ zd1zR2hK%CuwQG+nrR$Pm+-)Bd@8=7O%v~Dq)kX;Q%UxMh_30W;PA0-}{qB~$*N<|` z1~!?1BI9pq88<11gGWns%&2eh)mC9zO2i*64mi363;HDj>1&g9&5YWGL{G>4r(O1O zfF-h_i>E5K@)F`4bsFlq9M`ciALJCjbbZ%N82%$1!iKJ) zD^&i1E+i@0rkCol4SAjRM=d06!#Syw7EZU9Ry8?_hPxJf&m3=}88H&eH?V;?dyQ@D zB8h6q=8vF6yKEvN4157&4lJPlwz22-oYEw`)l6~~1drR!M;B(oewIDt$y@i@pC~e| ztMyP2tXIDZn|AchoqXnPESS(Ou+d6ix2~C15Fl&^v13O#wGrb{@nX(5zlxULmZSMO z4Pi-LHmGWC@1}$(hPw3xNyw$5+XcF`?s=@f8E8R}%X3%HHTTa|121-_23{=c0|Uz) z0{Bnog%k$>LC-=5=a#Yk!wrLGSFc8A-%~EaUUda5sT>=El7M*mvR7R&{+h0+;|bP; zrQj4~1xgi-cxVla|16qT_4AKa!HR<(G-c?Q$#RBo%G8lQtB8_juh5;8NtufdfJ} zorg{%uAs1BUnD7X_LSnkClh~9CH{ul&{J4AH-$SgY69uVqQ9ZwMt?8oU83~=+ODnx z6AxD=BP)2eBe5Y(GBPaQ;Am}!w8=UvjYUh1TSB0ZXt0td*O)al&);UzALM4M#LAS-F|3;#iq%9)@scYOANP#Cl-?kmU>zw=!#Clh_E z%XC|~GR4i>ZC8;fdy!I-U>1RhbLBo|{}}~;Hcc@+zo*m`tu|lK1tf74_QG>d?qlgn z?KE4MY^`j>)AlJj7A>w5Oe)5;*VR+$Xa#JQf4x6Nk8aCJ^HJ<@+bWGI!b`+Asp7r5 zfrn-VNeBy$+6~<(FMD{mC&D4m$flSRyD;Yh2onjlCCVb9Umc|YD4n|ye|FHtgcDSw z==L{ZHLbT;t%8-29(ZG;rjT@qAn8Xky~zW$#I41$PS8iQ*m~$Q)1PHTKl2+ZSHc=_ zJ$Q5lG9ru01F518!0aAPB5f<8SE6@iJ88trlKHgAPL|Ht*PN}NF<;wXpE+aO^1|ZQ zQ%^mk*_=Paj#8~dk|X3Gs!y$B#1d{(*?Y#~KJGqy?H!KDDy!#ePaO)tAz@9huZfDM z>XS1v)+bAn0gMxqt9HXv;yQ_wj^=~J{u{0bX&0urwN>{@R1uq(E)^U5$Q(Ya$v)s! znw>{@&Ga0sC>Xa^<N=06~RO=lDB9%SbLdnY^uNZqkfV%3zWed(mA z-i6#yd{{?TW3Th))HN#%2d>}+>~Qy2ab*Dhuh*a*?zNPM9aX&aP-O01{3vuTchse64^?3Wh8=ArH&%J2)Bl)T?WZaOaCx@u ziZSBBaXlChDtmA=62t@c)a5}0S2bFWAf)9Vp4PJ0=*E|3TaF+`F(Iq%3ZLGo7gLCL z%nHT;Q*x(IS3b6G+*2?ak0ve&Oux8tI-JI!Kb^MJwo4bA!`545(Q!%n*y}yAi~AbW zOCGK-Dr;M|gK<;+Q^FWa*QEqj>AFUbAf8N+dUawx$P5t$QNWY!8mYdj z`66`@;~Ch{M7xmKY1?KamF=^YomAjt6qjV_{GAuAg-TN%T)XM?fz$ieuA5z2o~xg& zv6qcW6l)8U`_4YFacJGp;M#S2*RI=zI@7hqgL6=qn{&bM~nQ>5IVJQk&^@^-`Z)$dA=IM7EtI7*_Ts%kF9=D9Ij zV{Sg< zkUVdz4s|`I7XC1H??$BFSKST^orlT=4-$DVs|~yZw;3S)-@-v8^u}R`YHjkG<%Z;x zgv^2+V@eJH0y&Aip=WJ{siS$?+LNQaXJ?*S-QJwM8o57a8j}Z~g_ARyVU-}WryDpf zcy2m6L^U$&^IUVPepY&9PH_)yyyymJ@P0_$pYv+Ti%F8ko(?~QPN{ntnYYA(3T&z^ zPfa-3eFi!_XlQXBgI33$9ClWnDrLu!Skws`iz4eD&Q?XG!O;ypy-{6R+5=vRNfyH( z7Y0NK`y^A*I>r@yU5O*$Vv1~Oo!&az0@vYJN~XGyA~6nofDW2;u)42a1MO;1gvM41 za?wtjgOSTYWWmVGiFCxYw$S#-dL{1d$vN*&5_hE^0TF%rf5klgZQ}|%Q#0-5@ms8# z;@3kkE*&(h7hW@S57T*OQ+G1q3O8Qv9xgLcSu~->4jo(Q63cT-rR!wXwqH7(dl0zr z1P|IIvFi+tw54#72bfinJ3X*W-zlN5t=2^mGh&-?FEP7? z3>onn>}K(qsA{uXq+t~WF|+8BXU01i{e8I)+AXppr~oqWWG{js5fta+2z9d8w^f18 zJbj&ciHEQ56lNHiE_#~8vIGw!nfgpBKHG=^1}^1}oV!fM(kcBL zbou&tfn4r}HNu^DF*afR7O5=ZTSf>Za{9=bB>?rBLVgHcsdr6j04mH|CcCsK;}(KWq*Cg#StpAt*J8Y`@urBown zZxpl#x662Sb{SV^YU?d)tYwTUjF^rLMm`taO}L)s5vNC5+=Q&5!^FB}s4aKwT^Z?y z=cZ@0yO-A01=Es}p@c*45YNEeBG#HTm%sD_hL+Vf;dVHgYtVpd= zCOzpLh;zMeIJjcP@2tX4n&_T$rH&aT%p|?F;wQ7Nv-$I>OVC@!uA!C4M9yL)qa^fr zHQdwgG#8V>`hZN_oQ9v`h{x!}1!I-X!_^%ZO;j$a?%XxDWAk=-okG3IPTw2~<{qZM zF&D2+?gh&0FKF)HQJXus3zokHOk$5rDhkZTOLi@?l73_mVv!w~DmMG;wX1DkJ+d96 z-w$tgXsQ!O5Lb5EdemY}=sZoqnrWq>iflDoud+yPcvS_6Gz*P2Y{}D>*v`0W($ZTG z#Li|r8C}~L#f6C@MU56|Vy%pg?Hb#9L1pVU8Hso>NtRQ}qSuHb=!_ztHHzN5ui3mh%E5=-O)F)(#v3h)@&-I&^9l}N ziSj)@kJHBfELX!i%rvfAUtZkD9jV0>C119~uj4E~%9~Ux@O7wLgole$V5gdupWkFo zA&DV3G5gJ$vRY)^wErR%Lmtv{+)M2_k*g)cq0l8O7{I)zwhAeJ(qZ(K))~Z!@y{?n z(lY4hj`L1gw`3VOZEauryfwOITcz5PnCUaNN@}f*y-(l^`-P1nq;*klGDmsdh;&AM&aKtKT(@Xfx6y_mpLbYiqE*65Bp3Z5d({Rp8+$A&<|jTqzrQI=bD2cC}ZL zQz~xp^Of8sNg;3}GLXWV5Al@Gb}Hi=d$S9~`PJebfH_Rk?7su$Lc>mUvhA)dvT2pq z$GZjzlje1}$OQq{U2SgCb|G18(;b?e)0Qn!do%VX$>Qrf`LrG|F|wmFT-`a^)4NC3 z!<4Gq(I*%yC904Fswi&Zbq8xC?@gju-wLcHaF=0C1-(2clBrZni5VrE3_p%)4BhW* zf-F`Ax~V2StoM{QEBY(Wk0ZSajjb{Y#ikz|#02>iRy+c!l{IXVRS)C#bhD?a*S6Fy z&eU66<~W#FKZp@c81_5+$DK=NZl+sxhh8?%;5;pQMS6f2aZYg3u9{Cs-;PA=3QYI9 zSW-PPo|u|wY*{3eC5b%S+M(BTT^9|mITs7lLqat^fBUX2o42FkA<|Z3N~O^Ku^mf zaU{*A+LR4WZts3C44%qy96eJxj!_&zXxMg0R_uSrm*Sh%WxL?YdMQ?jd+NPO898NX zmIHP>n`aXE;4!NHmd*HUyC<3yF?b6_4bD>wiUt&@Ck&k(VxJwEw(pk$Ph%~40 z&`Mw3-BA$MPCKf}=RB=UEahhy6^n{=U({?FyzX^{LD|mx_O^hg5Z|SqoU&C9hj2Q1 zkzR(xIFs#C62I%-`YOBE+RXmi!Nsb&hA=FV=Z&M<)fBGkh)X-+pzf*E{GvKWr~uav z)Tbm^y?$__DNNwuB4H(h&_vb?!wybJ$M4!2ZYhQru?h)$&+~c5`y*B1&+2GEa{B0? z&tgU}i+RyzNmkUMp{^8TakR%ajm*tkXATp_RVtf)SPf9BYl!9*szzO!Lc8AK8E^BW z=)xNk02|vOwjb@$Q%t8OQbDukS8i#nKnn-cwRrWZ6F8>x5-pqpULC{lU|oFVFH zFZ3m%$c87{g}X^GZl*gqvx{Kiht6KcANy8IpZi^;-BPd7XPCeVFzeWe1?(8Ye2nxNs zit%_FIy~3|p=lzt6I+a&O}HgGOThwks;X-1A;JzlW}J)dhakiyRwz)fHVq~mqjR9BvxwyH!i_B^?= z$GCIX#N&Q2Y>3haqgu8*u}_7kF*Twh!di;!IF2XO1`=nYv%@R8(Pff1O1LdDRu;o3 zBCNeAhzi4!p4Q>Yd7CfVJ|X7ot#RzDi=f^(Hd3kv{Ithe00GNlQ0aql$o9|bO^&J$ zWa@&gA~&V`sWByCc*Y|ev!l9Kke4nb&c)T9+PS8Ka&UOHjtlo@;1fe0{2BsGGTq0) z<9pWRT+(Lvn0Ae;!9^BR#+cfXo5__~pRFDlAcn9T;-i*^NgV@^0IdkItSRUxTp+J^gN_@Wyx zkf__wNK3W$OmN0V9+mvXx?AnKMm?^g+aQuQx_he>OK#NdHN1zNw9F!hr?~8*ePDYE zm!%P_Jgs{h_zp9JS6e7PG47q-3aLpNbG}Zx9E#LUiCL@JY>nWqX(cHRUlk2F{as`L zC2@7x6+QD32V7Rhl#wLfzub>~A`%=U!xN4sjSM$1$f*P`!;K2|jQF>bjtNnmy@*SF z?^6$LmIvgz8=Og8ScETex-v{3e7r7t=wFw2E^Na~f=;rHi+E9tFxDk6`WhLvL*o@> z9vKts5ZtZG_+T_b$}xmDX*{J}11NJN0iyg#G|hr;9ai5-jtw`)&?o(Ilxl))$acMq zzIsO2IA2^)A>jpk8D=E% zC&0*8!EI&}nvX)vRTIneGYHc{Uc<9+XRq#T{j{rT$!Cr4Ys|+fg9Ltu9!k&U6x z9JLaMIx;A)fI%5dznKKOU@*(j{h>No0eUdRWC9ItZaGc&i zXl7O}#0PChg@hC)D&wVuSa-yPFG$*{D3-qc5{^$8l)EMk2n~r|!7d*6bf2+S1VwDGG*hZ`{FiiNw&!e&NK$*I}sCj_6tNOzm}AXG2Z+v z+%T?;OtH$p{MxQG18~-cUB*1_QHtC!txL_xIeK8x1=C+!GV6MWp@!furaDwAe$n}_ z^a;u*3$1A+WzXbhphu(lY$K`9Ksp&{i>%4w3oc$`)|`~>8Tr-%E0aj7X9i0CVsHxhRQPezG%_J#zO%HH*DXRIxgsDQ`6u|5rG>;^&lvgOt~rMR%aTx};X7 zgs39kMZKgyEG*Q@8xngMSa@U~15qm}jf$?=^gR{DWNqYNLGtLU z(I?nz5Q;)_??oI%yYoUzk7xB0Drpv>$)>|LWt)`L;$`D=>l>lS3Y@3%h%Yv6Xv87t zOpA2V(3q>dLOsS}DNY?huuTDdM?@==z{oI>s-O!bQXh_Jswu2bSmThZ`CzogGFRB|x>5{d9oZ0nCwOLI?rgszhIK=NPuM7=Pl%RUF%PY2u zGB%OPNhl}wG9!{x?84Euia(QYnK!LikCGO;7ISqnYh$RaQkP_Ia;huLq-;B$mKY*K zt25Ee+X)GfvBPqCi3MZ(tkx*C7PnD+|8J48RF%Li73IP7&fbj{#hI||o#X^6WN%{5 z3#{OzX~neT#5lGJ{y1L3twJ3Yf9@M)OI@A9RZaK-_5!knkdld`;yf%%!f`~nPr)!% zYw6vy%hqV~67J%CpDC)1y=Y=oI#5?@hJqF&FL-{>6eT+-23f3TiN+ZvTGpWGIHK32 zSE1a&bf8>5^US0%HqwE(EHl-kmL=;Ch#~;uK^2ozdnRAN=Cq|cUTH6~A@Adh!IRm{ zWQGziB}V3fI+Q0})N!}V!3uFM6S`T83Z5aH6NAu{`?QPdYw?7ur8j>s2Przb4HjK} zRN@u0~sA<8P<*uKhc6yKG3+zt-TMrus~?iwo|xmsgn9fvL(MsfDw zt#FQ&zn5%T?=&U$Ds4-8(jzhs6U zua505Opz6^6}_(#o$ZUQpwQCGLI$B-Ue$KH4;xI{F4IezQMz!X;8-j6u%+r&SYY=e z+j?<@D{CE6cl`vR4s(RB9vO`rRU9RNol^(A~3xIhQZ!O7+s6vIBce!$5 z?vkriL_d^dC9+L%$4v)PiwIFzPs~VH%NcM?-ksJx2te(!G7n-5Azi^<9tX{4N2o`(BU@BC^Vcp|B)(BhIVxhA zsyITkXdqe9^E3Ii9O!}-6 z89SwC_v*bHE6iMP;nRf$@R0gkaSy3v@>G{=N(i^r;4~<93RmMIW*b{IRe>qJb2w%q zH=Om}2E1BIUQ?GM-wm5*CY$@3Gg>iU2g+4nV2!lnLejDEC9F8aaa~%g0FC5k_oV z7_R43-aQTa>7_!e40JPY{tmHPFN$BNgW3Sct7=b?%8)Z6DJOA)FXf1rc*B#^9%2RK zEUJEws8~HR&SlXH&UwFrZeGXy}*|4VK|K#Z>Lc?8)tosQl~I8aUD^ zt^)hO=tp>XZa7cu&&aU=W9T59B=2k>eeO9T-`e`ug*wEty=Nb0SMHfTl?!&CfV zeO{*drp=qW{iWDctY44?hP^dBbJUFryjNg^f%9{?;dF$qrwlis9z98r3b*KFGHc6m za1P5d7j?95u0q#0+h@VeX(EYW-r0ON9QK+0uu9*qskh*antQ+9l{K)cqcuIKbBZP@BS1H}!>{#L)r2Nc+s zxX8m`cP&mK$~8Z-E45urQ#9%A?aP}Y{ZS4MUO1+EzsibQnkTAqfx0TE`8(2f23b%l zXw-XBKpucu%6gOKMk_$H6)eyiR)g&b3vyq)j`U`AuVg&ARn>wxiyBT)Y=+^Fj9J2r zGf$`aVWTiK-UI7$RwX(n)C{u3`_AXzx_K!%G+Y0)#6Q}UdTRHVmuEzER6NPZYAP)%6P}OGZ zBjbo~+gycNxn*g^+WlRj+1tH4-E@jQtF#OzlzvJ7p|tGL^(& zi__bW<%m*!VG_4#;3%2BYT%*@wUd<+ltx@p7|{S-L)4tzSlnCeh@|_$iAq(=Gk3{$ zlGL6NonwoSz2Rh*oW+C!uNT*AClZ8|XJd(XGC2z@eICBZk!$E}mR==3IajgkOBP!~ zGtvR0S(|}eLev0EoC{QUs2#u_i6lcOoecs+Z8#!2aGQg;0RKPIW4rZM?oV1{<2SUP zr``0X4LRqv;{uUT8rZXZ(4)uGN8aPJ{l=9nbfVY}Yr|xGFdVBM7po%?qov_ZP-g)) zH~1@IbDef#9d!GKM2Jj8=f2xAPK4Cq7MiASLd-xfW-{dL0t1KS$v0zS5(`cTmZHYW zs|wg=55h~PnIFP8|MEikQHIS$_O*%Z$P%0Y12|-27{vzfAvC@V3n28NSOoa zOySsTbFMZ+d7+Y^+aRiEJcE{eae>X%7ndjZ;g9N`1>9M-$a8Up_E=aUqMcC*8d=-{ z)(R?dsE{iT zl`scvxBaW(C1F;Z*osz=HzCw)9x5rEf>=(b3g^>Fbnvq}vN$elNS9qF{#|@uo-nf& zViX=#uX{PVp`uePM%@Lr4RUJIk|7}Jky$Wf=}iY3{Hh39?dsf~>=|HZQ?6R&ng5YX zu;Ga<)Wh@GTVqpT_AyLUc!ygrCk;HIoo$wjkxkaIEj4zHq;tWLXVJ$|c*GS` z-9Zap1=0v@*&8G*K~6J`ZPVOAn8FO@z%@{wVexqE6VB#aWcJ_PPzes3r6v|%(LtmJ zcS400H*7RQ!X1Jal2Wt7Te%rKvJs0$hyZul*i*4`1J!Cm&YaCAdJ{-IpSnOl6AcwT zNhoMa9|brV_S&Ld=*bcZ2XRAnp?QcFXF`MsLsOr#Z`b3%WynaHLW^{~HBLf057UXP zuEdDu>IG2QvaXet?UtW#_XR?mLXmFTnG`)Q@7c#&mT|(qFSb;9fi{vi%7GXeki46b z_YnP+xK-mbIgGAnt!*qyl$q0_o>H={e{}(ttV(hkvY3bXBhs-OiFwQVLECj{$0DK) zUA0y%b6|X2Ff8%zP?G7;WTShT>hcLbYxzn5ai;_ICD7w}<%?JQ?11+NaK8qwM zZUI}2HM(34H!qwhYu>OhA-)PMA8=bg31Jejy<=j7XQq(NMC6bt^%jrjYN3n8U)8y3 zOLou;Dew}rQ5cquE<@qd{s>Gwlz|ITvqa4;X)Z>!aFPQRn6Qld)3dD2wAK2;bT31Z zJ@zU@i062ZqAXS+k9>m>Nzh{Ibdc|_SR)zvM088H8W(hIT}tri4B6@$i)bjF;>@RD z3u?_+o$=;(iCoMLnwhgstn~7ROk0mCJ06FSx z;=HYNOj&!5QW0f6aQ)Fel*U5nv7mz1elX&1HPlzV!qwDfTVs8(VFz8OLkCTRO+-Xv z$Xpq*t$_#}ObX^l!*RzDcWLicfQiO>g@;Au>d+p~f(dGC@B|@JWi8t*QI-3ewpVGyzu3X1eH_UUj;OTZ`- z`zIDm4x4qCMj_R^$a;r0(gFbuYdtx$oVrS*fQ|soOY-31LM%B_Q;8;`KvUvSnq6L! z1A~z0ZEroT=t4FVu|KSrxHV)QAi8A>$lQo_tA#Y6gq4Qv#fLek|HE z(ffs3V`;H)1W-HA%V}#@nvE%pO^ZY4|CQCJFi&uMt=i}dw-Rv{C$IFTP}(gf|1``@ zwUb1I3pjNi`}HFY$=zZWKPj$OdzzeL?=!@3xnJ$x#7Ci!hK2ArgDl!HqR?frAJ#gB4l){f~1>t+9n>+LNF` z{-w%HhcRqrWeK0X--VzIl97K|w2tA_%>&O58b6IsxOHjt>(JBUBF$d|A}wQE=ce~4 z5;V$&h=_T=w8U&YQQF^dWCOnLO_I!D8bziroT1L35sgR~o|v4OTAH4(YOG0R4AIvHRi`pf&?mQc#^>66*?GCSib$;hhlPOB75D_hRPI=F;3CGcx%%BFik6V|SZdrP} zPzFmf@vF>eUZp4ysE-4CCt8J=z~V%@#q_c;>=ARgs!K3PWT^weg_tQ+IqeJeg5I3( zAk=8FV#=?-g~?>N>_vc%Ca#w%!sOEvpn;?3Z{M|L^LCt5S>96} zsYV%NQ}zNCy(Gn>HH*I2UTz8GV-9Tj*v4+)5r*tBn;o0~k$ z3(_eVJEhF$ykD%owK+`)>j2E0xQ#+}!338H)BLuDS%WoX9;6AQ=E;xw8rBnEwdirhVyXWdA($nX#R^x003xJ?+ zEMB!d2UD?-GbtWNgrhW0n#4&iTWW8~sNhO<`%UDst&C1okrE3b2=K%Wsq&o|?_d?X z-WW&C$skKmvGj?W>Uvxtm<$b*2~bmQ;+|LT?o2hL2rIxZBim#`9|v0wO|`gR#AEq2 z7Z&VOh1auZl`swqk&^P>cEh2av_U8y5?otDGKW*JNwnM}~S z2;E-O+$V%+j%@1JMNyxwEzc~e^tJmnO$v45itXi!pLi=IFNzSPoHOz5X8}TRW83Q9 z+R`$G3nwzdl^=ZcXa{T+=4=90yk zoffwNLd|52CwN)LJ{Xb=|EX0R4r^Yqq!H%EA9ASARV0X@2* z=?5Egdn3aPy;$Ow@`yKgQ6Z;XMhwh=Tx97n#cf};1E0!G7Yb2p;xIiEfmHF6$1T!6 zf5srLK&wmp7MlC*GBgwNkqY2C0Zj<8S3cwJlGei&Lgm5sK7V-PAUQD7eCL(kz>qS; zgxhu7C1I-gM@hGYqjvVb7?X}Nmq}D$+lMD8CHhm=K(XgCK*~~BVN@`Yk*ZRy^{cj$ zT$))T+ov#^)0BA(+KMNtv^zsg)C9t~{Zfqm$*U2>lGBt_1x_CA+;Rveky;Ha0~D{u zF^K{oGmWQT->3jnHOo+AalYwk=88?Co@ z1ZQHgV_E2x)nsgGpR`?O9eM6W3F%UQ$L`s4H+3U9TEo@NpRu^u*gGfPlt<$NLbIJla^FNIa5C z90yZd-3rd^FjVbF-1i=`uggE6pYYT~3n~zOe4_Qe`)3AP0(=d2eXZ?!pb{i)P2hO} zE9xZx)=zn27wd10_DN2;A|`V6B;F}&c@^K3>z&n@DDaaU_U3nS;r*kq0`r=+vUBKJ z6we45NKSr6r?E5DQ|w0R?Y+;@{=UOFtitAPY9}Y8z`E1BlZ{D4`cYDU4-_OPg7^>w z7J&>!F~*)qGa0S>X!l+=C0`dw(#r%Est)jOTzRw{uF9DQg4aDIde}kx#P+H6oV%H+ zD&Xg4F~QXXJZ$o-ql$Qqb}4OAwuBrtDRF4T6&|D<@*&AthCL=)XIx0`s#dA!k1Rm$ z7#I>-G@HdJH!F37Qi-UyozCC*X4W+}NeAH=VMY#EW6rD#M{i_BNCdWg9f_g@?}>zOcD zLp7#F6&sQD2(wyZyh5SHkn*jlYT(WZ@EH}5otS;AR+8`?tS;12FKF@*?<$U>R{P^X z@4zM+hM6$^F$RTxgprs5;qpFNLam1@AryGJvhaSOi1||b5(WziyDQv@$Tt~gtBBUP zY4CCcJn5p2v1)a0d$*ZzUjhW0i;9eYI+&EZY1#|B^zu}RAqH&`H_}YQFd&X%SjX`4l6l4W+8ccl0}lP=a{UF z32gAYg~aHWFWqvDg{ixRc6J)1RcP4b4$WySyc9c%BH*%pyD^*rHY-QwT zMOms9JB^mU#45JEjn!em!N3cp6=bi8yAnvRp_D0?mzr>&ELq}Uk-(^k1)Vm-cY2{# zCYlThw|MYUb?5Rd&Xdp7#k#+Aa9&?*Ra`&Tqw*#R105xI(d)Dj_=W!@*4PH5fCAQS z`eZsBOR2Cud1}0H899hfsLP{%&2nvKQ4%_jxCN|&gw}mk7~)3KsnH~*H4G}|uEl(H z9oFJI4p-&_In@0LoM;DkPMuIdM(| z?@GsOL!*T$ye{FRTBYvfnbl5y)+!q+%q1dYfG?+xjJI{UC&ZImMrteAZi~nm_miBt zywr`5iItJ1;fMIThfbDwNt;4JR3QBl#XWumN{=N6`iC z?74t^+Bn~whxZ)!!s?iS@*q=Br%fy3XyY2` zSYIhVI55|#xh>bXXyIrb8A~Kx6Z;qUjtO1m9n@6)dPS3EcjbeTwz}3}CRg@2-Q)}< zryN57xzyn(T&#>i$-+($ZoB$ab+$gcXL)*Lv^+S`n5|c)r|~W#%j87+@LWkaB@%(_ z?GwRoNGs6noFh+(LNg-FS^}ZABU=gr7pCeNjbld;T{|Nu@{6>9sh18`J}p@^;_H-sRc?&ay#1b~CT;kiyV)(ZBx6D8w!THK*$0vH&GSM59qr zYJ1Qn6MvEMo~db&o<`Q@K}*>a61TjHSQwNDuj4o(O}CM>OQH@x_E${|ZqIb*ZD6x+xc>9aDa5K^C69dJZ)5$kU!7J7R4 zoCVlEByS45mhfGwfk{)~wpPZ3OHlHxf;ir0IoHq=3@M_9g^cwzx@1d`U}JQ4$5iBf zZ2u-Ua4qLEbWl0ZVV^SIPCMW_QMMpPE1kG&Qbgm%3Y8C%5?M(l7Sg)foPnfguLJSR zl8f%K5$PkXqhsNsmv0iOhO2! z-7KjT_cWe91#6HdIS#uj8|;WgLyM!va>R_U<+pmvx9_S?INRp0Fdu>6GU6j?d0ePp z%7$CWp>;JwMs+CzLegq&OV5pHkeM&BU`XLL+ zSE){DH$vA4)fZ$)Cz09^hu;M({j{|KBKnDFW=TCUY#a1DUZ0s>9qAd{cTH+_ZK*rrofRv+8kqleoTN`9OtmnK?7YwMa&DQ1@E9@n4itX(ZVx2SYm zIoxMbjCL=DGDJepI$u&Y52$R`d@{-F3KB9Qm<6@AbVnZao{cZf)j`j#qPca}!2egb z`urp*#Iyu%NMqaFRaWjteC?JR55;n0;$LpScRO*}#AtMBV(=ghzOZYU6E`br`gl96oBFZ5fIldmb0B)0+=QjSvi);e-)TXGX$1enz|E&B{#y$C> z+Iirkxk`SCz)Ll|`lu-HzE0iIQf-?(GdU=FLe474I@7U|$d{?*$vTf(Hs*x;E_$(L zA8d+HRY~K_Gto-=KuFGEknDpXI0Ryvq4l&pn0~mtT~)Gq({E>>rbj|~_hN_Mc(zq* zKb*8!CH_f;7r~F+m6&$5+2Hf8U;Fb4Ixw2XHZ>dL=wgTYr*(j3n(F zrRwN6c<}gA{Tig{PMU{WFPw#tLIi*~zQo-K>A9j;&F+aVnr-Lh$JQI{HRUf6r?(gx zl(Ualz*Z6SKBs0B>n6k;n6k24e%FK@oRpLyDiRB~ z&}=SDHRfP6Sd2vL`tuf+8_N^Tb=IUN}%wsLuEOo1lUFWWgZvN(ezwJ4^(F1$<{+MGXf5TP`)I)8A@ zH9cig^(z@#!*QW0 zwq>GQReo!DwUj;-_b2Y@YF4o~Sd>a++G6qQQMl8aC^XX;fuKB-n=cNF)2fQ$0OAh!2FpUNZcwR6PH7_Lxsr}8>uK@eX}%EY2%o}J|J>T2_2>9 zG941H6E|E}XJl+Vn}ZwOLnY%F78oSmmx&~bvPr3C#U<$;4Vfc`tC4jtSl>e+LrsBX z)8Y5)%Ka3&-?d57KhqI5cK%ph5!K6P7RSb$W4t3gdX!SL^Pu3l!dDVg!)QqS;T?qA zRc%aB6R%+ zXZAB>D|iM>coKKq#i9KTJhb1!HrvQdwF=H3w3A1*v!-z*0#}!)sf58^SkzXuJ3xm< zHTfzwR~X%{!U(1J4GkOJ#vjYhZ+yP4W)9qzHMu+k`@-gy5cX{vIh(9(dSK5aOP?E@ ztXq&cG|H#t8$@e0__8)$*;CT`etL$TmyM24i0vG^9Rx@agfo&=h|O7IbPMxEOMvS; zHg>FkAZIM4r)lK@Z|w8fUt}Kf*1>RDoT$&Mu-mOQ97Vv6-&RsDSy_^Ha@fJ=nhUcv zT<{cmp)=MA!g;YyBxQ@p_BeG*MXuuHS`K=Q2{!Y0bq`E(3kR!BEc#@2m~M`Uv|r`P zl@pwox5PCM<0Jf8+{7T!O(F#pvfn_#_i>XWah}`&OwU6V!YRe_7=?LodIsE3ZJ%_N zC0cfV(dC6lF2&pNBbC}(A>QqovZ7k{&WI-{Q_9-iX8pMB_D>p4j#j_F7Pj?s%i{Ap z^UM}9WTI1{y|?gGf}p3FThrk2P-AK)mP2d z>i8C)u7Isz)tITS1CU&--l zOs5()wx^Ys3kA7&ppOv8W@UKC;gyzeEtVrCOx>GQo19#pRe|2kROjs&xP!D&I`hmN z!FKYq&OGz1ncD20soKf9RX0WDS(arHZzvS^@DJq{l^45k^Jr}ew<~hN1^I#dDi2qF z;MNHm6rQYP2K^UGWGnqtYY)e3E5*k|q^I#AI+SXo4ZUWD8APY%$GNy4csZ*LrP)oJf;%eL|3GqbvM@x;_X#aXvDU*C8xOcX;cr|Xy zQm&#eth<)hxfp|%C=566bWGfHuDI4F)CZ4mMfBlD?;h0ZE_UmZxh`|TYQ_^jS}fQx z>t8MD$Psj8*cF+kGeW%q0XF-q5DAelRyyWEJT}AH*U0y)>e-^~6RM?$m92>SUXZDn z{sAW6i1N=BHEziGxC)<3KhT>Q$%ZYGZi|(tfk?vRV75!dE_N2fZ;pOCA(aG;3{-n6 z_d)sCQ9GalQyq{aQ=Au>600+)F)}hzwyIR9nev5Iv1>mrnyrj-l_`bkcd|KRv)+=Z zk?LwLT_>%j>!t(l{3q`H)g}jpUXrQNyn~W~X-92oa-VgOydru7og*YW#@dWRQTvmD zTltYj6*|YIt?&Q>OjIMCSxME>qX&g+JBFX_VZ=YB(^)#DaYP96T-0~ zT8k$x{+=RwskwPdqkHtJL$=Q1aZ68U2?AZ`Flr|9tjZ)M)v1=9qqdJ;aaO&betAdUF`4L7oXdChrApr39B9jz#eWTBXzpeOPI_Wm8;WxPfS{e(=2Jg1*&vHk9;p!j?4Lz_P64mnD8ZpZzp^Q z;a?NpN%&2|ZxJ3=vFAH1oo{7_Pi1*6;WonUgjW;J5dIb6#|RI?w>x4&KXk~|6Sso^A63!F8n(#G*-yr;F!c(?cdk%NA?6Ar5JmDcbtp1^dXAt%g z)(NKxzfE{QVgFA1y~7u=?C?`8JG`G|hyTU$LxkhIti1`sKMCN!vh48WQLFFpR+b(9 z4a;{E{$~Im{T%!Kk%U_bhY2qZ;7eF`cpJ+O|2ND3K=^aQ|0FDr+4CIUz_P2>0m9n?_)(VcAp8m8PYDmd$l7-}$g;!BSa$eAmS05pZo=CL zzY)MQFShm_zKmsu&w8$Xe+uC}0lc4OhcCIr>O1@-%by~A+@~Igu4qwl*!w<9U@VhL3kMPJ^ zNk0xxW%)G1t%Spbmj!T!Wry!(`8LA0PFed7Kgja!g#ShO5aDmut^QL8kD9i!!^>E9 z_!gEOzMo}>N9?uVJM3rK;V8=vuVmTb5e@#H@VEe8&GHQ4YXf)-%MR~k+2K!E{wd*^ zSK0F%zLjN%Uu4-(}h19V|Qi z$gKU|;eWGSnlt%l1cKD~)SpD}C-W|ZN zuhc~h8@D7$8{yoc|C;UMG zAM;9U-{C1NJDg_O;cHp`L$CKL`~4||cL(r?EI&Ya=~jxDvn{ zS-y$z?f`y?<$DQ_d9^*?;Yln%jqpB=WsX64nM)N!zcc})pz(j zmMWMzkAEIYi3Wrr_&v(uekoMPGGAF=H4|FG8oOt|LlR^MTT zWrve2JNz`u4!^~6s4qJHA%5@hsCU@&94@o$@D`RG{w2!}|BhvcPkE=c=Wv*1haX_s z;oq?A@XIV)EAhWyA^!2V8ZMM~PauAPaFFn-0KS6d8wlS`cpKqo2tP~sZ-n0=Joer8 z{No7M6Als92=@@ak?>7~U%SnI|8>H3@3HdfgwGG)%`7|oYnJaM{5IkJgpc?WYtP|H zEI*BKfN+rT0|9*ed+qlQpU$$w4J>aY{2<}&g#Qr0pR(-maqqMC9iG7QiG+gzypm;y zuVUHZAG3Tj;Z=WX?K}KKmK}bKWrts7+2M~_cKFEmTYC;Su)LA*d4!h}-W0%pWZB{4 z{*3QWI2ge5SavwevcosB?C`xTzmM?80o?ond)^kp%Lok{|Lgc~-fp;W5gz*?D<4N# zAv}-p@&GQd?C|9*$4|1q9RK}0tn6^zUs&1U6)Zcvi{((i{WS4kCj1KF0|7kzFRgut zzrk{-A9u1>`|rNR-#eW7D{J53vp;5Khc9E<;XN#e_EX2-&+px?<@PMMD@68$d3%oU zPkrC#`#guf&+D{5>NNlMwD{j=eBAy%^sm$Kc$OWW&a%T{mV14k|89Z5cRz{yMI8S| zejoSL{(2Mfn?7yjGYLlnIL)%dYgz8pU$6IW*1wJL%Y904)-ge zJ3y~QYzx4BWmlL|3 zDbK#-b|kkS^=hy4=e&Z?yMgc%0etdz?EOOi?)Y8&KD76A;s>4hrMG)G+YkAjm=4cNa*z!bLxA&zh`}~_Xj!kz24LLz1Pd@ z&rN)OZX=hZ8J2 zd=tx|d~-iVxBiJv_GN$0x`(Vkp+CU=4(?}g=za!=?q_hA=WpmF?|S98p?nPGVJP21 zdFFnJqW*{{-)!UNeCKqI<3)raKMd{H@8ItrAiS8r`#E7J|3T;5$U#hqYEataNB;VSY-w#K{;1Mx2D0iOUAj3Fzot~$kX8Sf(t%%O z;U5R&AuV4VR(gDC@DW+~CzN&{mxVvJbZ;#Se_ZLnfh_zJOZR5tk1ySqiGNb*ffr=8 z^W;+Lx-9&!mrB=X;eVraZYKUWTgE^Thn1d^gMVrcer*o^gdBVZk)Y;brIT9f%iBDn z^rQa{zW_yH6|E`t1@nFs@w)@O^hE049N?vRNa;69qc5~^vwusa^Az7YU$boIzM!3h zTEBJPUk`j%|8Lg%k3)~r&lP8Y^yfK2e?H6lYgzvYl;!gP{y(JjxYEf1UdUDOeF6U2 zz{@ynJX?QWsu?IP692Jt46%{;pA!Ed@#Dl_aj3O3@>_< z^YRIf8@p5Tc^M1lHa?n{gnQ{nRxI2*&X`7;Sd}7 zaQr8N{`+&^`>ynJ&*O9dlX!pbo(|8wJmCYuO{rSRO>HZvKf7X85@ZO&+4OTW+7r6{e9#}~d(X>x-+OZ2_uil# zf8Q?$_@|;j^1fsLZZG8Tdl~Uhq*ZCReO>bR-A}x~@3&e1PU8K2W%jbx%i+-D4=FvN zbWhDWBp;Ad{|T!1x9Ycl_Co1@tA74WZNF9j?9+CRYtdsj6Cdim6WUIzzIqk#Ct}<@ z%E7lEFD2fiM0WADz5u*v?cwL?zh>>Yb?gFGI1hNyt}Y`VcFpo~;y?WjtN0`i-y+-b zDD6)We-wsB`st_L*0cRHiGS3W4DoT+e>L#(T#p7jmG$35yhlr%OZ)Gs35z37i&f9l!}f1ChsV||Yr^M2k>yn7>Ee_M|~$|u9SmK9| zw*L6(qkiIFO1z&|^6~jI;{6oa+gbmy*gDF4dGy<6j@$XfN2fYi{{Zn*oG5>dTTe#W{%+#^l++W6zma(NUif%^k$Cq~`MUV6$6Nbu%|4Iq>>~ah!MOdd<8QW# zPFMF5?@=sewsSx5LMI>ib3@b)HTb9}*mK>gi0Rf(8F+NH<+F|TJt_;$>ZeBhhktHm zUv~?{yO+qv;j_g1X@KXjogWkLQMX%&AH@X8`1|S5XApl7czLfIeqe~-Bpv=9>wC0? zzsuhc@6m0}Kkp;nqa(bZC!vBoH{=@^5bxGe=RdzkynFrn+0V}q@24x@Lj0j180r6s z_Zi}I#GeDaJlCzs-u^AbyBEdR(ccm8QRZ0w`neR0McVNwwQa<|3wU|%kv}%X=ZU|Y z^*!q9Wa7V0yq}8l@hm~$N;?~`w~E{zmyQBnp6jQ%UA~+_yhnw4JJ%BLr?LILZY18V zz+V6B#CvqF*FPE}Q=aQqU!TXV#Cx>X8GNr%;ytSL6yjg&^=pRscdnP8126pH-sc;k zVOaEY*ssetw0@qf_%)@cz01BEV3jiP(oa9l@BN=3-lMLb#`=E*{F>6Qm)2fS0w?}v z)_1G-Gl{>Kc#o0<`RV6}#QUjPU++))4eO74cbtE2A>O@C&S&-#zh}3#J7l1A7x5mY z?C3s4lzzZGrf6y9mIr1Ii@Bf+M zy+4mcgYsNIjWEaO&H^v(T=+n`o#(T@XDe`i^){`~A147GB<*`NmXFU_#Cz26+5FAT z#QSM=ALs8A@24{TeV@73+V|+>Guh5O@gA+|^ZrWW-Miql`aa_Q6n{V4`8VP{y6$@7 z%O}`#{gjFGrPmYhr#-y=2Z;Amk1K3vV6jwM3wjRiuBV@9?R%8cQxCBpj1&K&omM`V z?Ys;4V|3+N#YYhTVb=H4#pe@$7!+EW7x$8SJI^KlPQDO^T|X}cUg+V#3#<%s($7t- z@2Bm3zW$APk5YXW>;IDN{NO%A_`E+B3*5(wRTT^XFZ~S1{{_T*)bu|7=tga4P3fu+ z8)Ag`w-f&cKJX6W?_xWCO4a-Ded3=sVHF2i|HP+Te{Q(d5I#Pa5$|5m=d%6_iFfbP zB=KJ(KGb7>4FX->*H0z79K4ix_i}-p^m9A$9!=u?e=HcFwBu1|j=u_cna7X3)P8>m z>FNgHg`c}0p^xp~$acc@{#V3@`qIA;e;XMCiuze|vh~NKD!1~v`+@hqv8sX_6~Cr5 zeWzhTHu|{@_!IDp@3G^LBK|{c|D0DC!sq3?#QW(P#~%ZNl=1PXOy>`067Q$I_p<#J z;APy7{BuLxO8l!?|5IF#ARGOBfq2jE;d105;{Eiw>x~;AaHT))Wp%mm0^sGjqqkVQ zE|=fT`koblY`S!h;@OD=ctG1pAo%Aw*tp4a{j`nK)eP`i^Kw1wd$hQZ+Z%}YsA2!@ zJ;2L+{gm@{IG_7<)(`jH|4qDS890jdZ#d2R>0W7{mroGy(TdZo|9!`Q*AV_*KLWwX zcz*fQhJWE>4URxi3jMz(*zZgLFZFN#snsi!ZfAj)adWTmGwkcqCy4jcUOo>0O#Ej_ zI8KL;2VqD%p3TSgkUhkE)`DlU{hNvR=sbvB{TvEKPTKLPfKlQvBi>JoI=}ttqwT#s z%IPlFf4jGHzahMzUnSnND`A_Up9hKe>@ypPe-;>sj9Vx#&IDfi>CwkfBlWYJc+Xza zPy8E+_iP&8|8ElSQF1=ck1JdIo|VJ#+lhZ|!y5K=_d?*k4j-xDPZYn#9Av~ z9X~B_3GrWJ{f*Zf!u$DM*7s=9qgnr0yr7JOpN4b#IS+Ulw{Rc#Jl6M9%$wNG9|C{O zp}$@_BG8B5%KDyF>3^~QJ;Zx9sAm)Z3*tSih|BSl2dtkSt?cwxCEia3IA3}b@gA-A zVz&QYum281`1(Bwf>p-hn5yBu{fmkBtPme%J0B(9v-UiW_#Xi;<97Kc4Dkix9|cA# z_`wGaQ6c`xz{_(z`-0Q+F!3JkHpKc%+71f|@JZGW^~Q&Y_fy@|{LN-GD9`omI#|y7 zStj1IqWL)dp4Vps!>s>b#Cw#M&)0S=KxyBzGn~)*uOr@1?SLKW=N-Vy_-xr|VG!bU@$ z>!)xr9r~#NFa1A2c?UMDpE1_=EO^dWuO{BJFZtNMi+GPpzliO8N!rJHU&Hn8#U3GUq!s1Qt{`0j`-0PYv5S6^F!kO z6u9%BfvxsjKV5wi>#q>+Su;OQ{Huxg=ty6upCsN-bsxw2kA#4baSQq0df=TlSXIF* zS>Lk`wBOySgeLt=3^6L`f{gjf^+ttK}`uXdD7e0Ak=@4z#*X(;) z-?Mo)1~pAEc^39Bl2CF}dC z@Voity;>h~|0RZaBJn?9ea|}OZJve!l;?UjFJE_4#Cw#z*Z*VUJzJcwyDtzw*t7>; z!skA9o3%f<+YnBlmjW;2_WWB6|8Ca5n)O5b;qAoxX{*av|NF#ycEVGLKL!ezyqBMf zI!OEni1%!X-v2KVKack0^ZT5~N9?e6Jlmefv%M2|9~1k9{rmA8`~Va->5re%|9k#O z?1qB()ABxUcM|WXfc;s&0AAMVSE$cCitQY+%i6i>RzvuD-wwQtbLfYCGwX-){a=YM ztynv!vHd5ETKk^m!0EY<_$a$B>mP9ZeTF!i_&+25d%F$cLnzLH*OuPlylo{L;9+@8P6>pRdOPFZAH2BmG&I67Q!JeB53`yk~Fl`adJyv)}so zKXt;|_tP={+IeXPx!>*AnkpRZrmi-bsAOpEoSp`<6CX#WPs{i>x2| z4Sz{|Xs>?!Mb>}Mdh%Or=OW@gD>B%uey#;x=zq<(tnB*I@3a2!+YApep`W|7J_`wO zwY`>+80Z~MmnJr8(!-_Rdg)%t5n z6YSts{L%HS@7V~PZa)sZ@UeA_&p({?Kg0T-{l)3zOT>GYs50vhUTXab-|KGTL;LeD ziTBgUP7fO)P~^SB{nR$%uX}|((CL4Mc+Ud#S@!2|ffsuF%8w2470QusDxQ@RVDt0r zxqjMoj^Dk9_>iyugm^!V==65f<=OLfWe)xT@bbQ2z0w}Ip3nUp@WLlw9_VjhWc^US zJoyT1C-hHU0KBwwEB(=ZY<~jyEV_E9;t@agpjCAG{D|WNK6w}L(*M`*w)#$24-oIC zseQgq#(T=Vc-ELNu|LbeOFNzo3u=IVZe{%+pK0Yk;XK~S`ksy0$N%c8wG-MEZzSHc z&AS}=9PysD*2n+Y-Pz+)244EXn0>2E3EI?Onn^Qr}eFF^4~*2*wPVk~Ro2cco7S$sR~2}f-wOgg`6|};tU&(Uw-fKDfxVqi z5+CyC?-3vR@lUwg`V;DPlf;Mg{AS>f!MUn)X?I<7h`q<{tbZi*P5B&ep!7ZBJ^P*a z|5-EkT+ilo7VB>VUgr0v7Z}3zkjsfb?GtJIRf^}26W}9kKa5-ZJK&E=)bl?No3;M< z?F8P>ZNSUCJP^p!OIbgRtK3VxXSqI&5BMYEJuBde#DA6eFJgY=bCQA5lc10Yy?OTg z6NukSyl1t#i1-f^@7V;ON&FF@Gim2CR&@LZ;ys%fma~4IL%g4I-%b4A5%1X^jwb$l zz{`A{^#Imb)Z zczIvX<~Ypy&t5S6k&dvK9CV0t8MG4~$@(v1{V6u!de?2hKaO>h;J;YkvtFFa zFUwfB5>FV$U!4QI^wYCSdH=_W5B=8%ffstX@7cZA^SPg7ea{kkJMm}X z1=oPj?0z8`4Dm-UWxv;i;<1l-iB)_L>+b_z`tMoMyg#2K-m`POh4mi^`jGme{q}g` zJ)8KktbYaZo+Zo2{|&@@_H|6Rem+3F-%{{+;vXR1v*kN|p0SeszPo{!eh$CW8o=_` z&mRDP4F67oKV^N-uIJ}09xq^Vf}lwJ_`x(1Gc|=n<0xh35@bcVSt~bQziGK&{hklBCh!6eF zYku3>@84++_1QMHp7r)z;;$tBKkhfgDa5~?c+VQLp7=xmm+`}JzjhSx@?5_ahU#)@n0U{A z{1moxJ@KB!+WG%SfcLRtRR!N=eZMvAx%~2p*V{ba_CZ6upZGI~zx9)8d`0oBlmJ%& zFa0mwXGo`?w-fJK4v(|1OMgkcXHoL^dXV^VUpDYUYyVq;e7p>Jp~Eo#VIS*z7He<+ zU94aFg>?kmF8%yD>wA_pumAWL*>nB&G3OiGftTlo@n%=DzGp*q{`^7KKlCnp-h27n zyNSQyPD8lf^^b~Yr385Ti-n$%$Ka4d6#FQC_mv~8KPTR2h|dwIc zKD75-Sr%f9=(VcY1ir%dGywHw-_{ zcGd$g;~eS_3&i`aZcaacrtR>@3Givw_uCkT`Q5MmPWJem54=3rZ-4ReY~<8`DeH&v z631cyr5(Q&$K}ge#CtY0x5G>l@3-7NgZ=yi;yqhwnfP0XfBBV$7$W|cz-P_-Q(s~I z@muKJj`S+xL;LNm#Cw)rZ}Xpkm-*dyhduDAeD2R!-*4?Zo%pBSV9yQXt1l$pZ}o6L z=C_IW>|y@gb-!!R4bQ8d3B0bySK9-f4qrt4xi=f$`}1Mq{q{3&{}HdWcEWRoPaytQ zE_8q2XA&Qt-H#E%R?c2+v>RoV3LeBfo={MNBwvYluBp5eoDB|C}tTUMQ(o5cI=i_c^`Zy^4W z6oCE2{}6Z?pC^!hoIgAo^C$f|tYQ^^afrbe0WbAWBY!x9?fgFL`>l0k$0f<8D(xJ_ zg}#>c4}Xo}L%YEQ@lSuNRdl}e0pOiB*o1=5uzt8t{BNzlru5`*TI~np7tyvlIH8{HN<=NaHr27Ydf$%{K6W3B-=mq zCTquU2i;BlONsYe4@Zdq3*ukG_2T^PtHg)#hd(6VZwok%?Hu_!dv4gysl*Ql?bnFE z3H(4l{RT>JBHnK!b^dS%@qP=;Nv!`b#C!H^=L1i9z4hnAyRG7S*56Nj$j@&e-fv~_ z_j)JsVcf#s6Cb|UBmao=2q>Qu43vh6_bi$&f8RsA-wt^+>z|E*D~S)! zOTK~la9w-=cwftGLc#x5JocN=i{*0@*Vm8Oj^8fhzuoXg>rd!6oF(3GTR7I5E4`F> zzs01F_*;M%K5*qH4dHZnJMr(o%kVzGf5UeCwlW`|VGTXCw;_wmhq>soj(L#=2!1yY+LB z18^$w+kuzy3G3ge^^+~z-*>RS-`?C{mG7|q+dpiGi;0(W&eHx(92g&m(&WO@;?nZ; z^y!nOsro{FZ)0((zEEA7txnD~=jw~4YIUkv-8<9VQ=6$yEj1SwtF`3=rOD>({7ikR zK6U!WzM;PCO4aGcT%%fBSg0MW*5{TM4wj}DYP0p~)bi}?LHs09s-osns_Kr~{OObP z^QG!#<4fDio8}w!$@>1rV!b-qoLgL4SjO$J`qjp2wb7Jcqqws?sNY^(TWHkw%+wdR zmj}1*+BG&jvUBr9rMhEeXQhi;n-RjC+19|w`1Z{^hsUd1cU`n|LMmOha{&F^w70%A zvN%(lo2ra$E0?!6n+sEox!O{Fv9fd9MKfbV{1PKt86T|TcjHSNFg8=w#`MU}P1Wk& zx#jBQfdl0Y)#_YxVHN}3z#P;t*dwF-@%YlvN_|o=gOjO4! z^4~%+ZY@{FH~xkkF2zad?JmCBw8nU_HrjUx8ow-hEmUX;6{H?xo>>F zJ~y=ky#8RNq0i^TTROR3ep5#`8?&Q>6OGw=N&c~(wp7*%`bxE#$>zT1OisNGo9*ji zdHYH9yqQyR{Z{!BEn@kBQ3}5-m;3kB7BS`+-p1VCkx4Af^5ni6#MeTtv9vfcS;16I zf=|wRk0)d1tk0QVSZ*xkJ@GvG5>Fi4wwhUlkmEYju1}bwWDR zLWF!Tj43FiZ+Wh9&2qguzqBwiIKHnj58R+HsHwVWGb4DXN(C!)5no56qm}CWLQ2C{no&Woy*3y8d6c&t<%zI5m29V1)uT}oA(N+ZAn z7odr8B6gj3-Z*6L#O5vAD?%$fw;BDE`=K#ysV&w=7aBrb@>N0&8kno^uSVQ#M5eB~ z9cn3*qpAAHXjxfHWqKO=kWgr)vXPbRmD$m4+S<0>dBn!a8b}>0r?PVHx#w>m*|PPL zOR58>51!s%mj1;Q>m&>zAk?Ca3l*G^ZJ4VcSQ@UO8GU1t;6}W$GO)_5wbnl{TVGhL z&&}1VOZ!dduFvgl%+*I`x6cmrSGLa%^$+6TflV9a-!lH`Uq7^AaO1#Gc|8hc!3_3q z8r(Frp?{NLq+b8fz|f}tjYETdQbn+Xef|9#2KqLvmnO>_^`CP8;J`rt`hiLXYTu6P z-uhfsWViJ=eo^WlBJKL{qMPQI7xz{7)F!WnilbVju-n<%)%B{aEL&9E>RGdHdS|^=0#Y7qA8W3$Ss0p&(y2UJy&5OE5q}wL5+V%#d_n=1F>yDc(V#c)jxasRl?&b-AkQad^_^>iDoeO_z($G+ui^ zl|RvyO-pyiD4eEWelfE+Hr^cDW+KyO96Ob%`V!bGUOpmcjOSu~114c#vw3x86yusE zzVdqeaU}7$6y#^EOF`aMHU_?68rYO7&{}n&sNeVs)i9Gm@Sa?h}S=pOB~~yM?jw^)hS|BgP@@ zrG-j_w1j0>gQda>@7ba+QnH00zw>=YJLQl|2^&DVS84s43-3(p*i zSeC0FcvR}qGBH#2h*^z+E@j5a5hD7)ThBJ9gbx@Ckd@vC`h~1hk(=N}spkF7`ujjn z{uEU}C!6yJg^z}0tLwUgp`S(D8@-TVG-hca;Xaa8U_HYu{jXp|84GCVjRoPvLWFa zAOnjbf(VTWSwKjsU9YZ|SWHj1N!&ftU8-_Ala=FFby;!Qj_s0h9EnYY#6E0b1>yT&=XKA0*gZg(rsr1K_uP9P|Ks}~=RY)P?=1lK z_FXOQ=|?nmO>yb*U`gP+g9*8c`CgQcP6#FooZ4cd|xBIR#8 zjT7BnCyxrt$9fKvf66xL6A`7RwF2nHK%_grSiEz@W|Yi$AO{l!W^3yhl8h>PZbY** z7YgtQ?F88F$Qx3uym^KIJ2w5x$!rOK6D@A(+CGAIz@W}>LqrkpLvK97dOTbL{CC)A zSD1R6s~D@v`#~Cz5-(PRh_nh;VaLOZgO?EmrpjQw7Xrwt!YVS*R=st94+jMBD0-AuyV8}9j?LHE{ zcSA2_rDt{`Q{gstB1qn|4Fgf5IHwCSP?E;tuiYMkzC%u1THZR^R_4TQS)3R2Gb{Lt z{SM{cwir=;zd&rIJ{b(if!f%O!+@N5`YF7gr;k;QFt@Z1$(j7#U^BWDb4vS7GZe{L zOb2<|2=_vy3a<-jR;5ZTD^ONIy5Yf6Y~XKj{cZ%t;kP3jYtw%M^VM+K!Wb)sh$gNd zd%DW5S2Zm43OtzR8bIfydmRIMDdwyJ)`1W2n6TJxg4hV1&f&%*$*5?!jFU;v6NZ4V z6P}3mWVLbZTu0*IdS*jo``$AqDQ2$4Y~6_=7=6s9X!{Oaiu30aa(2o9BSLHMpF`O# z)&Lrd`TIZtM0Istsb0P1lHM~Rw3a-pM6O0=#VH2Klc>r#RR;lKC66=CaH8a-|BzhQ z3z&%}AE0V)z&Qud$Ac~z&OCii+SzTYaF2!vD9(*6Y)zy2b5QlLe@>ys)r8&H6E=qN z9)1c<;v9Ytm77QyP?p#Rk4&*o{jyx$672_^gfACfZgIPH1d>c)eFf3IS zrP`&9e#mer9Qq6SMt6A7hNx9&p+iP-Gq?GvqyoSSlRhw93U9 zf-+m457?uA*$f-%a&8utd5yR}eqt@}N4MLHRR_4&658Bct`;v~D~*NSi+29@ z0{Ovyj+6Xz?rjzt#uZg1?ux6f{8gQ1BSf7Dj%ctR>~G_X0!5FR)_gZjs*5R+hN5Uu zNr2bLZ0m(>Z4j0p0G;ojD=F$1_mq(bzeHml|Y;SG%- z8i$tZQ-Z{~E|zAyEy+WX0ZWLz_biMT)j%WFXt(rtv;o!H# zJc=o?k#HBNegBTSvz!A{5`vJxG3YZ7P%LV6`S#n0x88rJ+i&k3P$wR?p6z&q91bLSVo{VmSiM2bP;HHdu!&xBbL&!$hf(M~R&*dphU> z=PZ%o7s(4**F%yl7<|sbj*n9#N>`=>5Rrxk*uXxfu;}QrQ;6&{9e5EM^~5BXkX{m7 zV&a0Mh|;ho3i>W_BkWqW&y&AIoiB_krOWVVnVVA?)4OVaUcIx&kF0@{@I0 z9!;`V5Gh;XXAY5iW*5CI;DJblnt-jZuzc+7lUIc9z>H=H7^+?=-E~R{!D|k5(5$nW zdwe~gEfA8@QILq2_XnWfz-H%RZ#1Lf`|n1x@#bRL7hfI{Y73l&07&H{1DnYtdW{dz z`#6ngOnP80*}A$1yL!G5fM_d4U8{7?1R|{xt0#Ueaq9yK!%{?y=uYR+DbFijmxckk za~+P89Bephi15V~vd+5{COY37@rT_<2o}*WG;DHaS+%0{>qy?H(ZiPzL$J4lGt!*1 z10BtJ2lPR)4}gplwM{560u>VlMYap!m@3odYqv3l=A<-tT*5W!N|W2#tbIY@-bQf- zHSq8kp*tndf|f{D=-nX_77Tcl&4RwLIx8YSfv#!jM7h(qzz%0tB=c9%(I9rLLc+;i zdr^hlg^2M%IE=MMpV|{y8LK8m+JV|!$d7owx$I9?tHlag0g=1P$rZDTf`mg-egWmk+iks{q+jdfZKs!hf~Tjr2Pu)U8h@+hj-IC zx*5!_$=8k;woox8yYqjsgWut1pPl5g505FUu$ZJoRGmq|VA+6$*YDVd%_S#A>p>f5 zO!>pCVB6O1-!PV{H^U+aWNciB%1*L3!2l_mjl0FTE+WyC!U0vtXJs=_IFRo*jodU> z2sH2%lMqP+@4&8fqvu?r=Aj5A0(w-iHf%IrUZSqZ=MH+fM3t*b$NT~j?H~9pR1|AV~>l7XG z6qaVib7lb+ecLW8%jHEZ7Q4%_T>&&V`AU-I^oJ{TN~5#h^^F=Vy!O*i2Vy zd)P8VK)rf!fFy4$2~tih+Mnc2HrNq#Uz^NTcl{CT5!w7mdk|UR zq5Fv048~)mcB~f{Nuoa#IS~slPLsv8H)4dZ#l9dcu}G~tJ1R=u9vHSwRyJZUCnF1{ zpW6xXDk@ntGJHl?(|Pv_gvu^&ung7$gMovsXp;1KiBh1i^hj=NMi=bb;iPu9j38@i zd6h;EKnVebXj?R<(d@J^CaB8Nvl{9zC+i%euoK}Egj}0)o zO9E3NO4NCt!6Z|bs%pd0GSXgd)ybvuJsc?rx8UcbwLN_swt<%B%^>ij#Le{2Jco&!S<cmjij zS?A-F>;^^bgWe80v z`~W9D1&&YbTNutLSHqDB`U+X|HyoR|alu-E?=RTsQ?zc>00m)&my^HII8D>srJVfL zjZF&(yJ?xKMh?lKT2;|wOsa&FilIp!aDIFZYT<+ytmW-=le#m{H!~Ev!9->&-_Wkf z10W69^$YCem<+BE_Ms3swtH8JVvrgf!n_IVe??4jmLk|yt6H7Vj^JG(ACs(emPzf2 zDlZu(-vw-uQpRa`!c$I|Hv{#0SD0YNPJ3v&s<|y)ELWz;YWT3HvWYJZgCexDc^_^IEbWZj?+{X216ZSD2wsd>(r9G7)SGF7gl5`z-Q=*Ug~HF%_m_v z(i;$j)6_g`pS&uI=<1DUr*XK5p6jPT<8Vcp8B1NvUwOGUV09<^$s`15BbO=tNVzuI zvu_}d)wB{NENM%*D_y##vZc|eZ0VS2G#x}!kipU0GFqnrkYkY>^sNlYIX3lXtS%u5 z4$D2KB8UUd8nsL|nrq$l#W;%TCf(+0&JMrueWJNJx{p zcj0yhPD)TA=a`>BlzICQyNQ8y))Os*zyuMDq-0jT>B12f@n8lLA+7FOA#OvAQ8%t? zW0f|}u=pZKf%2BfNX2d`#2%7FABsc`RzUmMQrE?nDePxJQ534fg!~?$y$+B%*R?7s zm0_%=7H+vgMgkmk;?wo_?qylrNSycXz&&myawC3FPHh~%;zY)%HU(0h$pJ(UlGXQ7 z$kJ#L_6#>jKr#XYvzTFsZ8fr!BOs<6sn#qhcHI46ENQ}N-eL?x3=j~FXCF4xjMz#% z*yc!t&;*+&-u~p>syPCcRuj+Qn7$gYT=$Q{u&l*TsmFfr2J3d)(l1F|hiTSz@Y<&7 zR+y{+vZDK^BbH@ZYY3h7+qe3>clu7PILpvT>T)za>S_&bj|k#%801Mk%Oa_D2|>_X zRadntR#&k?vE(!^7L?`)fn5REw}{4>eGeKSwIO~Q*#-ceN`@*Pi49aAjWy?j9G+*` zT_4FV)8(LlLK3}aL0%Dn|F+ZUJcBVj)@fuRhdO5gOc30viF~BzV`DDPog=HnIY!a| zYjtTY9p4jiyfUfmz);S(MLk@$Yi)jN1c6Uw<{Y@=hm+y;a}<|CYQNN6XA~DClDv*4 zp?S;$wNZjWj6<=WF?>z+v-_5Wxh@eJHQbXG5wc{@aeSLO3N>BfjX|}((dF0r7pPe2 zeNKn8cJ-qWl~CfUjNWZbiU*;o$Soie~$<>DjC^M#%yb9!)Eju=m~rtLMwx zfE#OhPl6V@PnEfoISqN(o>)#eiB2zU1#}^o?G2q+D~aqW85nHPOm!i$QaU$vBw*Hw zK@lF&1Ggtu*GYD$Y+3Ov+~k5?LZtuDq0A;B8&)DKB3Jj5Fux#6%Ml@YyNw2@Hd|+` z5D*_kcaxTp8TQcW}pESxowF|l%*TC zi27+Kv~#O8jiZ@-kX0h`4Dp$4)5No|DG6>`BT{Pwnqpi}8z6bZBWwK5ndA?ZiwqlS zo;xspzkRMeP#vUA@f5cYCD{)arOdRVi|PWVa7Ml^?&nTtjF}T(L71G!$!b{sWAz+G z*{4Q^9q$35MKlp3GBe*aX8+&;6iu~^S$cqJG2Oi8;?VZ)`Ute-+HVi6VJ#x&K3y*t zWVz-IxPm_uI~mPDqfKdMiE;j)%tu4rM}ciCRA(ma4HhEZGfqqp=#Ge~i|UZsTU?)> zL&^o4O)`r#nMdC&bpX4YBllf?`Hcz77aqH!IWdxDm2VL)CE!VcPr3E{Omo#6we;c#_oS6;V*TN=nY6Z%va) zRGJ0T7dinevq&hk0z&`^?holdKrWh>)U_AyXcdyQ`ipfV_P!TK*KzS8n(8$QEJB9R zu{!c}As+c%909uiNvK%^1m~N{*Ig=BOGTMS4DYc`uYmAri{+TSmmJbLGjphPry z1(5%i$>U3>T?cgc;NL^4?L%CKjlbXs{=a!Xq*kOLN zx>+z^EPJ-^95!1A3V`cVg|)?qH7;=2431F3!HY70jCCms8Sm>P+nAgvhPY|_mkAUL zT-JdCqZJPd0xyO0khsz_HMMJ~^aBUDSq}@nJ0=0eG~1>V37i0w(`Ypp7c`$0gi%vO znk&R%?32~hT}Z&xy5giEyssD@16$hk!R|@YMS8HNPpJB&xI=@(xUj}}T-l*hWK!&S z=+tW-KVZAfVAPh;8-ky<9U2EL1yifD2|K`TV|-lHZft6rE8oe7W*L&ShjV$Y+n#cP zTVh%bn;F{$zz%OKqy&|^2m|+|mcfHKED;As%`#3Xt;D6AQ20qDckfw>vUn=xaGVgC zW(Qz|?>dK95VNsQ2K+o>1adGsL!2fww@lHxdk#^ff{% ziGm$L3sq-(c!EojY&42sV@@h1>#N84PYClW03koD- zZYS$U@^Cmcd}+4o1Kt?rAg7xSc;m#+Ue_u^_PRm70`VC3%haBa%A22j3^qwOyi3Qz z!x|*a4e?@mn2n$8%3meEs(Qy}<8|4U~(k4d(xY#NOe$Cv^sYDC1q+nNQsm8-oRz2%+Rtz>4Vt zb;btk$zc~&VMtR(J)ov6$wRZKZu_XQq!?M8{P(~e)5ityf6_ejkv9Q@pS#QWH(__5)v*{4|0qbk7xx+&z^N047 zyF=8h`eN>!Jl?j5v6mjCb{HR|X5&jlV2UPSCV->pG#JrxYz$-gZoej$ybP|>>1I2^ zb#ZqjB*=ozTw8vwn_9v?N*>XzT*kVP>9RGD3TuO&QDW^c5t2!C5L*&#Ou0%mJ> zr*RS1B8`*i8#^8`H`fEmOoouZfnf=9MDFSJ#>lCReQ9EszJHoVe*8_9ZYwJvKdF4i;xj#!HA-E zB#mszgO1|?JJ~og8)BEqM$^Hjyo@#mbDWF(MudrE{NmR8$BGhY8*${}vXZ)Wehp9w zTTy{u!&7|peiNUSLI$xa%5zj6^;NxtDNPte(NpBn#OZ^)Ajvr(fg1o`S{FlLwMK~U zdd}xG$C_eB-M>NJ9BpPj$Eo57J0l^BD&8Xnf=X-`>)pRD`2!#;3x<>m z3m@{^HV^E+h z80;v@)R=?pc0y10h3UTRrU?^*-0mTDIM@wCgsx@(lb|GZJarBjqSl$VlBs= zQ}Y^xRXD6#fOM~W_x^0OxLk0#S!bBU1$?=4KH)NYMK0}U^8s8oRlP&$-@Z z6>ccs+noWG=rM+XllZ7g!)P#H%%=#xcgOEu9UY)F!t1f0nF5V25NaaWC|kW9Ar^_| zy}kbhUw8g1VieWsf*>Ui6O=_Qywpwzbp3-rx(}<&J8u_i^(SQk=dLg7)x(qgS^7juY@#T63UMym_*nOMe%X(_e z!5hrhM^Fw)k|(0YsY#)rS;{h1{E!GOm!7Q9?NRyu6%Kh_qlN@_9LyH;NsnMJ>s*uC znX_%4P&nlT6=605n16(EoQjG%LPSl}g&Ugr(VN7FoZ|b^`~^x-_s=Hl>nk!T9z5tD z>}iEyP>Uj@{J}_0ITKov*aJFip9(W*e4bqgmJ)}XMw};KpkHw@91O2tx+7zPBU%fY zJ&?LYz&OU3l(#TIiGXH{Dzxo1_7nA&xq-RQZ)U{K{yUr*R*kTlokbTQmV|}O4PjWL z{LXr2bM8?JJG*=zKIYQ=E0wZxds$DGp=?#{oL$9R=ymrV3ANPq5|McTF(Lk8KjOR_ z?8>XLt#>=`#=8=!&Y zz0k0wRUN3j5#m_$y@>BHyP2x|aq7awGRFBr$!q<$q+!fVD6~rTQYr9_%rs*XSE!3b zd74IEa6Rqh+C%>6Q!EqH#x}cjW11!t3bI@9NV-=yTpC*~t?idn7v&Pcrp4B`Fx%B@ zr%XK)*uci?p~ z3aGlWp!sOUBe?&*+<@uZZeF1StTIx@83H9G@{0p@C>1)Ls~+{PK+&Uz*h_^XO9J<= z0!0b|?~+I}`7Ratq&S1d6;Udp%}P2m5_eugGG5;UTJn_vBX9GlbF3xz5z8Y1DHgRI z{lqFi$^$@u%1CgxkUk`7t+{VJ=SD@S_R4}k{pVMUxkOg`mI54$&xm@=eu;&sKmvB2 z`joJEhiv)Ci>^U%6h4&n7mTm+*gA0A5d;E=J|g$uBOB5&2%yEj;RLK>%x$- z?MoD?pFask2nQID&Usl>1_m-V=OQ!uc60_QW>4j!XHtxbmuh*9QZzTy)#iGD-Q(eM zk;zbIFl-OKto8($B!bf(ca<Gr*o&RhrF?wlN&wXEaPtAe;o#0^Dn7 z+OUoLdboukU6JgpR)-6MHLM3{s|KSkAMo>pP?MDAt4EQVPL5$E&w3M<@HowgB`cTI zIC1#AKBI^|h3#z)q|}O-QpcvoC4muF+Z66JV5jeP8L=kx2m)cGz14!Y8MgK&m;H+s3aIrj$9S6kh1ZO5F3#;}vLweXdAInfsJFHnU@-Iy z`<AU z{{WwV0{^W2ceTA;|4tjy7-{aT{ipCd{Y>$Xnppeq{5XBuYT5M{enS4X|EKf+b$s#t zp#OjKrrc@QZ)-#AzrDw<-^BO-9kf6FS!rO`f7bTYf9j|8Uq5br3%}5u+VkGhf!Xy^ z$7Aoe_BQ_C)AsM^1Aq4y#n{@uh;)z zZ&I~0CxiAMYWokhz1?RIu)pp4NwlXo+55k%?Z2z-->@(A0oKl* z_h~eyA=+)<`vyI&)%xDoa*{5GDY5xa*D0hD58!-Wlsej0z|+An`w6!-7gK($fwXX}3e D?0n;A diff --git a/shm/main.cpp b/shm/main.cpp index 301671a41..657e0420f 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,4 +1,3 @@ - #include #include #include @@ -11,14 +10,16 @@ #include "item.hpp" #include "cargo.hpp" #include "ship.hpp" +#include "island.hpp" int main() { - Time *time_ptr = new Time(); - //time->changeTime(); + Island il1(Coordinates (1, 2), time_ptr); + Island il2(Coordinates (2, 3), time_ptr); + Island il3(Coordinates (3, 4), time_ptr); //Show created store via friend method (zad5) Store store(2000, 100, time_ptr); @@ -32,7 +33,7 @@ int main() // buy zad 1 //No cargo - // std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; + std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; Cargo * cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); @@ -51,8 +52,8 @@ int main() std::cout << "Store size: " << store.storeCargo.size() << '\n'; Cargo * c1 = store.storeCargo.at(0); - Cargo * c2 = store.storeCargo.at(2); - Cargo * c3 = store.storeCargo.at(3); + Cargo * c2 = store.storeCargo.at(1); + Cargo * c3 = store.storeCargo.at(2); response = store.buy(c3, 1, captain); response = store.buy(c1, 1, captain); @@ -63,42 +64,33 @@ int main() std::cout << "Store money: " << store.getMoney() << '\n'; std::cout << "size:" <getShip()->shipCargo.size() << '\n'; //TO DO captain->getShip()->printShipCargo(); - std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; - // sell zad 1 + std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; + // // sell zad 1 Response response1 = store.sell(cargo, 2, captain); std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; - - //No available space - std::cout << "Player: human1: ship cargo: \n"; - cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); - human1->getShip()->load(captain->getShip()->shipCargo.at(1), 1); - human1->getShip()->printShipCargo(); - human1->getShip()->unload(captain->getShip()->shipCargo.at(1), 1); - //response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); - //std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; - // Store store2(2000, 0, time_ptr); - // response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); - // std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; - + //No available space + Store store2(2000, 0, time_ptr); + response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); + std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; //lack of cargo - // Store store4(10000, 10000, time_ptr); - // response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - // std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; - // //no money - // Store store3(0, 100, time_ptr); - // response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); - // std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; - // //correct buy - // std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - // std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - // std::cout << "store przed sprzedaży \n" << store; - // response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - // std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; - // std::cout << "store po sprzedaży \n" << store; - // std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - // std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - // captain->getShip()->printShipCargo(); - // std::cout << '\n'; + Store store4(10000, 10000, time_ptr); + response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; + //no money + Store store3(0, 100, time_ptr); + response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); + std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; + //correct buy + std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; + std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + std::cout << "store przed sprzedaży \n" << store; + response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); + std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; + std::cout << "store po sprzedaży \n" << store; + std::cout << "pieniążki store po: " << store.getMoney() << '\n'; + std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; + captain->getShip()->printShipCargo(); + std::cout << '\n'; //zad 2 // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; @@ -155,4 +147,4 @@ int main() // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; // std::cout << store; -} +} \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index 8c3e132e8..a5c0ceab9 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -67,10 +67,10 @@ void Ship::removeCargo(Cargo * item, size_t amount) auto shipCargoAmount = findMatchCargo(item)->getAmount(); if(shipCargoAmount == amount) { - //auto i = std::find(begin(shipCargo), end(shipCargo), *item); - auto i = std::find(begin(shipCargo), end(shipCargo), [](const auto* el){ *el == *item}); - // tutaj it nie może być równy 0 - shipCargo.erase(i); + auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el){ return *el == *item; }); + if(it != end(shipCargo)) { + shipCargo.erase(it); + } } else { @@ -121,7 +121,7 @@ void Ship::unload(Cargo * unloadCargo, size_t amount) removeCargo(unloadCargo, amount); } else { - std::cout << "Ship: " << this->getName() << "doesn't have enough cargo: " << unloadCargo->getName() << '\n'; + std::cout << "Ship: " << this->getName() << " doesn't have enough cargo: " << unloadCargo->getName() << '\n'; } } From 32d054bbfa22c5c6d22da5f8f0a4f52501722ea1 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 7 Aug 2021 18:59:01 +0200 Subject: [PATCH 081/151] Fixed travel --- shm/Game.cpp | 40 +++++++++++++++++++--------------------- shm/Map.cpp | 39 +++++++++++++++++++-------------------- shm/Map.hpp | 2 +- shm/coordinates.hpp | 2 +- 4 files changed, 40 insertions(+), 43 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index c0c44122b..9571ea488 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,24 +1,20 @@ #include "Game.hpp" - class Map; Time *time_ptr = new Time(); -Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); +Player playerOne(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); Map map1; Game::Game(size_t money, size_t gameDays, size_t finalGoal) - : money_(money) - , gameDays_(gameDays) - , finalGoal_(finalGoal) - , menu_(std::make_unique

    ()) - {} + : money_(money), gameDays_(gameDays), finalGoal_(finalGoal), menu_(std::make_unique()) +{} Game::Game() {} void Game::startGame() { printTitle(); - setPlayer(); + setPlayer(); menu_->printMenu(); menu_->menuChoice(); } @@ -30,13 +26,12 @@ void Game::printTitle() void Game::setPlayer() { - - + std::cout << "Set your name captain!:" << '\n'; std::string playerName; std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; - map1.changeCurrentPosition(&map1.islands_.at(0)); + map1.changeCurrentPosition(&map1.islands_.at(7)); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; std::cout << "Yeou are in start point. Current coordinates: "; map1.PrintCurrentPosition(); @@ -44,7 +39,7 @@ void Game::setPlayer() } void Game::printMap(Map &map) -{ +{ map.PrintCurrentPosition(); map.DebugPrintIsland(); } @@ -55,15 +50,18 @@ void Game::travel() printMap(map1); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; - auto j = map1.getIsland(&map1.islands_.at(i)); - std::cout << "You have choosen Island: " << j << '\n'; - auto travelTime = map1.calculateDistance(*j)/playerOne.getSpeed(); - std::cout << "szypkosc kurla" << playerOne.getSpeed() << '\n'; - std::cout << "spolzedne kurla" << j << '\n'; - std::cout << "Your travel will take " << travelTime << " days." << '\n'; - map1.changeCurrentPosition(j); - map1.PrintCurrentPosition(); - + if (i < map1.islands_.size() && i >= 0) + { + auto travelTime = map1.calculateDistance(map1.islands_.at(i)) / playerOne.getSpeed(); + std::cout << "Your travel will take " << travelTime << " days." << '\n'; + map1.changeCurrentPosition(&map1.islands_.at(i)); + map1.PrintCurrentPosition(); + } + else + { + std::cout << "There is no such a island on the map! Choose another destination!" << '\n'; + Game::travel(); + } } // void Map::addIsland(Coordinates coordinate) diff --git a/shm/Map.cpp b/shm/Map.cpp index e90ea0437..68bc51166 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -17,8 +17,8 @@ namespace constVariables{ Map::Map() { islands_.reserve(11); - Coordinates zero(0,0); - addIsland(zero); + // Coordinates zero(0,0); + // addIsland(zero); SetUpRandomIsland(); } @@ -61,24 +61,27 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { return std::find(vec.begin(), vec.end(), c) != vec.end(); } -// Island* Map::getIsland(const Coordinates* coordinate){ -// auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return &i.getPosition() == coordinate; }); -// if(selectedIsland != islands_.end()) +//Island* Map::getIsland(const Coordinates* coordinate){ + // auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return &i.getPosition == coordinate; }); + // if(selectedIsland != islands_.end()) + // { + // return &(*selectedIsland); + // } + // return nullptr; +//} + +// Island* Map::getIsland(const Island* coordinate){ +// //auto selectedIsland = std::find(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return coordinate.ge == i.getPosition().GetPositionX(); }); +// for( auto el : islands_) // { -// return &(*selectedIsland); +// if(coordinate == &el) +// { +// return zz +// } // } // return nullptr; // } -Island* Map::getIsland(const Island* coordinate){ - auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return coordinate; }); - if(selectedIsland != islands_.end()) - { - return &(*selectedIsland); - } - return nullptr; -} - void Map::addIsland(Coordinates coordinate) { islands_.push_back(Island(coordinate)); @@ -90,12 +93,8 @@ int Map::calculateDistance(Island island_pos_) auto distanceY = current_pos_->getPosition().GetPositionY(); auto disX = island_pos_.getPosition().GetPositionX(); auto disY = island_pos_.getPosition().GetPositionY(); - std::cout << "dystansX korwa: " << distanceX <<'\n'; - std::cout << "dystansY korwa: " << distanceY <<'\n'; - std::cout << "dystX korwa: " << disX <<'\n'; - std::cout << "dystY korwa: " << disY <<'\n'; auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); - std::cout << "dystans korwa: " << distance <<'\n'; + std::cout << "dystans: " << distance <<'\n'; return distance; } diff --git a/shm/Map.hpp b/shm/Map.hpp index ccc075292..832fd8ccc 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -11,7 +11,7 @@ class Map { Map(); void DebugPrintIsland(); void PrintCurrentPosition(); - Island *getIsland(const Island*); + Island *getIsland(const Coordinates* ); void addIsland(Coordinates); friend class Game; Island* getCurrentPos() {return current_pos_;} diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index b7a50a033..c855589b0 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -20,5 +20,5 @@ class Coordinates { void SetPositionX(const int& positionX) { positionX_ = positionX; } void SetPositionY(const int& positionY) { positionY_ = positionY; } - bool operator==(const Coordinates c1) const; + bool operator==(const Coordinates) const; }; From 62debcab70e1d201aa4cf1d08b6c4522e4892f7e Mon Sep 17 00:00:00 2001 From: kondorski Date: Thu, 5 Aug 2021 19:19:33 +0200 Subject: [PATCH 082/151] menu changes --- shm/Game.cpp | 26 ++++++++++++++++++++------ shm/Game.hpp | 4 ++++ shm/Menu.cpp | 34 +++++++++++++++++++++++----------- shm/Menu.hpp | 4 ++-- 4 files changed, 49 insertions(+), 19 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 9571ea488..9f56feea1 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -6,17 +6,27 @@ Player playerOne(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, Map map1; Game::Game(size_t money, size_t gameDays, size_t finalGoal) - : money_(money), gameDays_(gameDays), finalGoal_(finalGoal), menu_(std::make_unique()) -{} + : money_(money) + , gameDays_(gameDays) + , finalGoal_(finalGoal) + , menu_(std::make_unique()) + , time_(new Time()) + , map_(new Map()) + {} Game::Game() {} void Game::startGame() { printTitle(); - setPlayer(); - menu_->printMenu(); - menu_->menuChoice(); + setPlayer(); + Store* store = new Store(1000, 1000, time_); + do { + menu_->printMenu(); + + menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); + + } while(menu_->menuChoice() == 4); } void Game::printTitle() @@ -31,11 +41,15 @@ void Game::setPlayer() std::string playerName; std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; - map1.changeCurrentPosition(&map1.islands_.at(7)); + Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_), 1000, 1000); + mapa.changeCurrentPos(&map_->islands_.at(0)); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; std::cout << "Yeou are in start point. Current coordinates: "; map1.PrintCurrentPosition(); std::cout << "Choose Your next move!" << '\n'; + + printMap(*map_); + playerOne_= &playerOne; } void Game::printMap(Map &map) diff --git a/shm/Game.hpp b/shm/Game.hpp index 7f2c99c31..9e8143b70 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -23,4 +23,8 @@ class Game size_t gameDays_; size_t finalGoal_; std::unique_ptr menu_; + Map* map_; + Store* store_; + Time* time_; + Player* playerOne_; }; \ No newline at end of file diff --git a/shm/Menu.cpp b/shm/Menu.cpp index d2c65e4c4..0701d5b10 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -3,6 +3,10 @@ #include "Game.hpp" + +Menu::Menu(){} +Menu::~Menu(){} + Menu::Menu() :game_(std::make_unique()) {} @@ -13,7 +17,7 @@ int Menu::playerChoice() return 1; } -void Menu::menuHandler(MenuItem item) +void Menu::menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player) { switch(item) @@ -21,43 +25,51 @@ void Menu::menuHandler(MenuItem item) case MenuItem::buyCargo: std::cout << "Welcome captain, what business brings you here?\n"; std::cout << "Choose a cargo to buy: " << '\n'; - break; + currentStore->printStoreCargo(); + currentStore->buy(currentStore->storeCargo.at(1), 1, player); + printMenu(); + case MenuItem::sellCargo: std::cout << "Welcome captain, what business brings you here?\n"; std::cout << "Choose a cargo to sell: " << '\n'; - break; + currentStore->printStoreCargo(); + currentStore->sell(currentStore->storeCargo.at(0), 1, player); + printMenu(); + case MenuItem::travel: std::cout << "Where should we travel now?\n"; std::cout << "Set sails!" << '\n'; - game_->travel(); - break; + map->DebugPrintIsland(); + printMenu(); + case MenuItem::Exit: std::cout << "Get me out of this game, I'm done\n"; break; } } -void Menu::menuChoice(){ + +MenuItem Menu::menuChoice(){ int input; std:: cin >> input; switch(input) { case 1: - menuHandler(buyCargo); + return MenuItem::buyCargo; break; case 2: - menuHandler(sellCargo); + return MenuItem::sellCargo; break; case 3: - menuHandler(travel); + return MenuItem::travel; break; case 4: - menuHandler(Exit); + return MenuItem::Exit; break; default: std::cout << "Please use 1 - 4" << '\n'; - printMenu(); + // printMenu(); } } diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 74edebce7..21408edb9 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -17,8 +17,8 @@ class Menu Menu(); ~Menu(); void printMenu(); - void menuChoice(); - void menuHandler(MenuItem item); + MenuItem menuChoice(); + void menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player); int playerChoice(); private: From 4e8ded2aacc4ae2a2b4fed6b527272a251f85819 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 7 Aug 2021 15:03:37 +0200 Subject: [PATCH 083/151] menu contstructor not working by passing Game as a unique ptr --- shm/Game.cpp | 12 +++++------- shm/Menu.cpp | 10 ++-------- shm/Menu.hpp | 6 ++++-- 3 files changed, 11 insertions(+), 17 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 9f56feea1..4046a6587 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,15 +1,12 @@ #include "Game.hpp" class Map; -Time *time_ptr = new Time(); -Player playerOne(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); -Map map1; Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - , menu_(std::make_unique()) + , menu_(std::make_unique(std::make_unique(this))) , time_(new Time()) , map_(new Map()) {} @@ -21,6 +18,7 @@ void Game::startGame() printTitle(); setPlayer(); Store* store = new Store(1000, 1000, time_); + do { menu_->printMenu(); @@ -42,10 +40,10 @@ void Game::setPlayer() std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_), 1000, 1000); - mapa.changeCurrentPos(&map_->islands_.at(0)); + mapa.changeCurrentPosition(&map_->islands_.at(0)); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; std::cout << "Yeou are in start point. Current coordinates: "; - map1.PrintCurrentPosition(); + map_->PrintCurrentPosition(); std::cout << "Choose Your next move!" << '\n'; printMap(*map_); @@ -61,7 +59,7 @@ void Game::printMap(Map &map) void Game::travel() { auto i = 0; - printMap(map1); + printMap(*map_); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; if (i < map1.islands_.size() && i >= 0) diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 0701d5b10..5e17ddba3 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,14 +1,8 @@ #include "Menu.hpp" -#include "Map.hpp" #include "Game.hpp" - - -Menu::Menu(){} -Menu::~Menu(){} - -Menu::Menu() -:game_(std::make_unique()) +Menu::Menu(std::unique_ptr game) + : game_(std::move(game)) {} Menu::~Menu(){} diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 21408edb9..05702c416 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -1,6 +1,8 @@ #pragma once #include #include +#include "Map.hpp" +#include "Store.hpp" class Game; @@ -14,7 +16,7 @@ enum MenuItem class Menu { public: - Menu(); + Menu(std::unique_ptr); ~Menu(); void printMenu(); MenuItem menuChoice(); @@ -22,5 +24,5 @@ class Menu int playerChoice(); private: -std::unique_ptr game_; + std::unique_ptr game_; }; \ No newline at end of file From 02fb5e4d6035be10e94ffb4a1898a185c272574d Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 7 Aug 2021 19:52:58 +0200 Subject: [PATCH 084/151] travel working and menu almost working --- shm/CMakeLists.txt | 24 +++++++++++++++++++++++ shm/Game.cpp | 47 ++++++++++++++++++++++++++++------------------ shm/Game.hpp | 2 ++ shm/Menu.cpp | 38 ++++++++++++++++++------------------- shm/Menu.hpp | 9 +++++---- shm/player.hpp | 4 ++++ 6 files changed, 82 insertions(+), 42 deletions(-) create mode 100644 shm/CMakeLists.txt diff --git a/shm/CMakeLists.txt b/shm/CMakeLists.txt new file mode 100644 index 000000000..fbe2d74ef --- /dev/null +++ b/shm/CMakeLists.txt @@ -0,0 +1,24 @@ +cmake_minimum_required(VERSION 3.10) +project(shm) + +set(SRC + alcohol.cpp + cargo.cpp + coordinates.cpp + fruit.cpp + Game.cpp + island.cpp + item.cpp + Map.cpp + Menu.cpp + player.cpp + ship.cpp + Storable.cpp + Store.cpp + Time.cpp) + +set(FLAGS -Wall -Wextra -Werror -Wconversion -O3) + +add_executable(${PROJECT_NAME} main.cpp ${SRC}) +set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON) +# target_compile_options(${PROJECT_NAME} PRIVATE ${FLAGS}) diff --git a/shm/Game.cpp b/shm/Game.cpp index 4046a6587..0f60b2f51 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -6,9 +6,10 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - , menu_(std::make_unique(std::make_unique(this))) + , menu_(std::make_unique(this)) , time_(new Time()) , map_(new Map()) + , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) {} Game::Game() {} @@ -18,13 +19,18 @@ void Game::startGame() printTitle(); setPlayer(); Store* store = new Store(1000, 1000, time_); + + while(menu_->menuChoice() != MenuItem::Exit) + { + // menu_->printMenu(); + menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); + } + // do { + // menu_->printMenu(); - do { - menu_->printMenu(); + // menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); - menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); - - } while(menu_->menuChoice() == 4); + // } while(menu_->menuChoice() != MenuItem::Exit); } void Game::printTitle() @@ -34,20 +40,16 @@ void Game::printTitle() void Game::setPlayer() { - std::cout << "Set your name captain!:" << '\n'; std::string playerName; std::cin >> playerName; - std::cout << "Welcome on board captain " << playerName << '\n'; - Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_), 1000, 1000); - mapa.changeCurrentPosition(&map_->islands_.at(0)); - std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; + playerOne_->setName(playerName); + std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; + map_->changeCurrentPosition(&map_->islands_.at(0)); + std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; std::cout << "Yeou are in start point. Current coordinates: "; map_->PrintCurrentPosition(); std::cout << "Choose Your next move!" << '\n'; - - printMap(*map_); - playerOne_= &playerOne; } void Game::printMap(Map &map) @@ -62,12 +64,12 @@ void Game::travel() printMap(*map_); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; - if (i < map1.islands_.size() && i >= 0) + if (i < map_->islands_.size() && i >= 0) { - auto travelTime = map1.calculateDistance(map1.islands_.at(i)) / playerOne.getSpeed(); + auto travelTime = map_->calculateDistance(map_->islands_.at(i)) / playerOne_->getSpeed(); std::cout << "Your travel will take " << travelTime << " days." << '\n'; - map1.changeCurrentPosition(&map1.islands_.at(i)); - map1.PrintCurrentPosition(); + map_->changeCurrentPosition(&map_->islands_.at(i)); + map_->PrintCurrentPosition(); } else { @@ -76,6 +78,15 @@ void Game::travel() } } +void Game::buyAllCargo() +{ + +} + +void Game::sellAllCargo() +{ + +} // void Map::addIsland(Coordinates coordinate) // { // addIsland(coordinate); diff --git a/shm/Game.hpp b/shm/Game.hpp index 9e8143b70..bc2eed303 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -17,6 +17,8 @@ class Game void printTitle(); void printMap(Map &); void travel(); + void buyAllCargo(); + void sellAllCargo(); private: size_t money_; diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 5e17ddba3..683d8bf2c 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,19 +1,18 @@ #include "Menu.hpp" #include "Game.hpp" -Menu::Menu(std::unique_ptr game) - : game_(std::move(game)) +Menu::Menu(Game* game) + : game_(game) {} Menu::~Menu(){} -int Menu::playerChoice() -{ - return 1; -} +// int Menu::playerChoice() +// { +// return 1; +// } void Menu::menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player) { - switch(item) { case MenuItem::buyCargo: @@ -22,6 +21,7 @@ void Menu::menuHandler(MenuItem item, Store* currentStore, Map* map, Player* pla currentStore->printStoreCargo(); currentStore->buy(currentStore->storeCargo.at(1), 1, player); printMenu(); + break; case MenuItem::sellCargo: std::cout << "Welcome captain, what business brings you here?\n"; @@ -29,41 +29,39 @@ void Menu::menuHandler(MenuItem item, Store* currentStore, Map* map, Player* pla currentStore->printStoreCargo(); currentStore->sell(currentStore->storeCargo.at(0), 1, player); printMenu(); - + break; case MenuItem::travel: std::cout << "Where should we travel now?\n"; std::cout << "Set sails!" << '\n'; - map->DebugPrintIsland(); + game_->travel(); + std::cout << "Choose Your next move Captain!" << '\n'; + printMenu(); + break; + case MenuItem::wrongChoice: + std::cout << "Wrong choice, please use 1 - 4" << '\n'; printMenu(); - - case MenuItem::Exit: - std::cout << "Get me out of this game, I'm done\n"; break; } } - MenuItem Menu::menuChoice(){ int input; - std:: cin >> input; + printMenu(); + std::cin >> input; switch(input) { case 1: return MenuItem::buyCargo; - break; case 2: return MenuItem::sellCargo; - break; case 3: return MenuItem::travel; - break; case 4: + std::cout << "Get me out of this game, I'm done\n"; return MenuItem::Exit; - break; default: - std::cout << "Please use 1 - 4" << '\n'; - // printMenu(); + return MenuItem::wrongChoice; } } diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 05702c416..1c67fa245 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -11,18 +11,19 @@ enum MenuItem buyCargo, sellCargo, travel, - Exit + Exit, + wrongChoice }; class Menu { public: - Menu(std::unique_ptr); + Menu(Game*); ~Menu(); void printMenu(); MenuItem menuChoice(); void menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player); - int playerChoice(); + // int playerChoice(); private: - std::unique_ptr game_; + Game* game_; }; \ No newline at end of file diff --git a/shm/player.hpp b/shm/player.hpp index e59506346..edacbd381 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -7,6 +7,7 @@ class Cargo; //Class responsible for handling Player object class Player : public Storable{ private: + std::string playerName_; std::unique_ptr ship_; size_t calculateAvailableSpace(); //calculates space available on the ship based on cargo and ship capacity @@ -15,7 +16,10 @@ class Player : public Storable{ ~Player(); const std::unique_ptr& getShip(); size_t getSpeed() const; + void setName(std::string playerName) {playerName_ = playerName;} + std::string getName() {return playerName_;} Cargo * getCargo(size_t index) const override; + void setCrew(size_t newCrewSize); }; From 970c55f012f025a8e2fa0d0eef8003664014d215 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 7 Aug 2021 19:53:37 +0200 Subject: [PATCH 085/151] delete binaries --- shm/Store | Bin 827568 -> 0 bytes shm/ship | Bin 827568 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 shm/Store delete mode 100755 shm/ship diff --git a/shm/Store b/shm/Store deleted file mode 100755 index ad1222315bfbcd28565dbe029b654d360a77457e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 827568 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%0Dt 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.=10O$<--81KgqJ_#`j>=hu=qm$} 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 DFifAU diff --git a/shm/ship b/shm/ship deleted file mode 100755 index ad1222315bfbcd28565dbe029b654d360a77457e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 827568 zcmeFa3w%|@)%Slu(1`dXqO{a{iPj4!VnEP|lv|6QJBPs?(PinOd*4osfrb^pQLv5sJQ)|upU2A6VGkc$N5N)6L{eS+S zrj_5Gwdb;C&01^L%$~i^)um;p_U+Rr=Kt*yJ29rI;|!(5-srwX!HouS3hWt(WL&NOP(q6eO=k+uF zisB)IO#MFk?R|xEBA1>0v*L`MW!uX&4$JL0_-MF_#g4A6x$xN0N7v3isPK-VSk)KA9`YBmEyV@Tajpg9>6oE9Jja`ES7D)4x&Ox?kJI zs$a|;(Z|zxHhK*CWusq8C$iChlOzA_ z2qRnmyc~S)nWLULdt|StnO6>I%ApUx%F(Z@bLiXb9Q8btBY!-H z9LD9~Q>-wXe3s@I-`*VZc{s=TcI42vujT01qdDkrGLG5w=iVIs+BXOPlXB(H!RKo^ z`1yJcId95g*A+R&{f!**{BjO`J2wYE2QrR@{1^Q@ItQQIaCIhj{s7L6v^9((-p1 zayZyrhW>p8ebf9;8}cvh-5-J3>Te_eUPOB(D@?@&w*DCN@PdZfvyMDc=H6pt6%`lF zt*@(C&`>$Qp`s#IF=^`LirH23t1hZp&`>ph>f}>u>+7nfR$f?JW$tCabMBOe+69xQ zG>jZMtGaT2MZ^5cnuZ0FW|fwn1?`v%D;Lzvs;FPkFu$sD?xa~$D@vz~shAb3pwy_M zii(En`Sq7o)K=A9)KFbfHGh8n{PHi$-7}^%99K~>Ytf>SBS(%hbx=i3-9?jTWwtb> zQkpwuKnj%&m8IpMk&%%jsbN;-yvkWM4VRbB z{cK!}93_?1*U{_7Sq=28v~;2NOyoAFe*R^Z^JiDoFie#V^$5N4BAS`XC=_2$e%Q$|-Xgi}XWl$O%Q?Ar2$ri=Bp3rcIWvoahLN0u(s zgpfa@3{LUuK#%5E*3GV;i+V1snN>9w*<4iBu&}b$Hu9;J<=C3K1y%DKO6Q^|qd%*n z%&(%3g;oDX_s;yxjUQV%Z(dd1?9zY3T%@dHC&e}O3o0uD(#bKOk-Vjef=e(F)&kEaUp)L4pV8ERjrEp zsXKbgs4Nag?7=oLuW^1=#lo8T4ULtxriF+ai>H}WQ&(e@_{*Q($!Io^b-B%223L)` zd`i)0^y1dhF|CgF{ZD;kLq+|Z3Z|Tksw(EpZ9vFZd^Y_@%9AS=R5jQL=d;cf_)lVz zng#Rf7gVY0PH7lD3oc=5O2fR`+%ZvZJ=CdQC-L$xGwf(}u?p}rSlH+VHCHHGsxwSV z|Bh2tiQ)PyYfTU)R*R*L^~a{R{vx#S--{H9ttQCyQc+z)xQphN+j)@q_@Y^}Di%n1 zJTg`>t?sfKdUICQg2uU35SCvza!SQ9BZ^|Dl}$SNl!{R!Mh91; zMvO7n)2EYT^oUVKu~Vi`pK$V|ijgCZ88J3=Z)CA^&%NVbj~E%La3pJqzU-LwWw))L z{@b5_chzgbzWlGhliE%5^<(c-?nsH_STJuvm)ip;WdRlqM~k zTKcdzw=4hk(OiNDu_p4@f#ru?PHK|Z?WPX5L;*SU%v4{uJU3p+jOxzBPsPuhTvkXtMj+K0WVbbANe+KIlqAUlF0- z`3*x~8KHmpLqlH`p}+Wup|6h6UtMeHYa;Y5&l-A5gkJc9p|?ip7yjDN+amOb{$S|s z5&CUChTajOud?#-BJ{Ywj~}5=U25v-iO`Fi3_X@G3t?Z*3oSh_LO;RQGbBPUw(S;1 z=)>)}6h-JWZT{j2{ah>mk_dg&!-mgzgg(>K%Omt3Tl(|}{iBCWJu@TpQy(?->InUO zOP?2^&$skN5&F5d{-y~1B}-osp)ay>SQ(-Fa$6OlpYWLBb9ID%v8Atx&>yk%mI(cY zCrv%A5&G+v-WH*ETY7thzUxz_o{k88vmM9I2>o+bZru_33M+@62z|P>uh?~A{VZB< z+Rcm5FR=822z|As4~fvvZ#DH4M(BN?GxVVm`VdPmiqJ<`dU1sQ@iV5Lk_dgcZMQr^ zUv1?uJwjjeys2kqgnr!yL$8j|TP%HEgx=TIvnWEJWAisf=;N#(TOOg8Tl$I!eU7EC zjL@&N^i>i1k1c&ogx+f9&=R5hcF`K4|M>St4s8*-XX)(``n7MH{GAbchi%u3(0Bd7 z9|kI;+kv-If^y3bE_guck;pBJUu zbW?=>y3M~lLihPx8KG~r`Bz2gi)?yLgudP8Z;8XrGY-J$=FL+^0tV;p*?Lm%tVJ%>Kdp?5p<@eaMm zp-*t=1$KOd+ffdEh(jOd(Ea`W{?JZy=tFKW{pB%_wJdY9(4qHr@(*?BM6bbLkwfnn zP&pUj(4}qvuf(D6>J!1ZLl>U>zjBA}>!{qD?$8O~gTI*$okw25U$sLg6c7I9IrQ|2 z8_tn9bQTQ3Uz0=652&%&a)<8gl-yq7&<8pBS32~)9r`MVF6SBizts+XuulZnIP}js z^cIKyd57NW(1$qmHi!NNhu-ec_jTwU4*iP`z0;xZ=g>WezQ057cIXE<^d5&U&lZC} zYZsy;g#nQjnL|Iwp%*yxgB|)1hyEppUg*#dap*%G`e6>e$e|zZ(2E`VP={XP(2sEF zafg1SLoave!yWo`hkleppXty?IP_|VezZfM=g^BB`XYxe>wf>Q$)O+P6T#&UeY8Vg z;n0tD=qnw%UBc3>;J*_1uLS-p zf&WV2zY_Sb1pc=q@VEQ}K8!Efnip^G|J#Z_vG}sqhQ7V+@g*Db%*I*on73#2iEZmW z^c^7oz?kH(7G}0>`F(G1?+Q)J(rw$8jX_!#YTLG~57M$g+qUJWL0T4O+qQf!NXvq3 z+m>$zX<3ME+j32imf(8ZmP>=QEWEaDsSMJx;M%t3D?wToTHCfv2-32^+O}n6kd}qj zwk-z*X<1Nh+p<@XmWB1UEq#KtEUdO|dGBMtzp|jB|3O+7?({!M%fgEO2WeSQ(f=SV z3n}^^q-6m`|AVwFoald$mIV|257M$wqW?i!7D)6zNXx>A{s(DU5Yhi2Eej#~AEadg zME`@dEPUvHkd_4x{r{KW|3XdwK1j;~hyDj?S=iA3AT0|T`X8iaAw&Ozv~1AO{~#?3 z8u}lkWg$cVgS0GQ=zoxw4F>ujq-7yP|AVwFVCa94mW2!b57M$=q5nZz7Ao{VNXr6+ z{(t26Ult~ee~^|13H=Y!vJpc6gS0G6=zoxw1quBR(z0Pg|NS)9cGUS|Z4+Z^Z=~m* z8%|e6(la9IX_55gNV+tV9v?}MiKLH;qz{dx_m89pN78#n()}apf1MNV-}{mDUn1#0 zMAC0W(!Y+RUyh`okEEZDq#uo>e-cUG8%f_8N#7btCnM=)k@Vt7x-pWT8%bA1(la9I zX_55gNV+tV9v?}MiKLH;qz{dx_m89pN78#n()}ape@%~!eB_lT71d)LFA0Z6MtwJ7;hebDhcmr|LpDc zW;0p6&|lQ3&kV{2?MwMBm-#cMfJiVx+w|92D zx!#oseVBo_ zS?i5!y~A4*%T{XnTMcLfmbbl3{h3S;{N%FlBk?U2D2+cl$>{`$ zmRHlHk$c~SN>W=-ybw>kc8tdz0y4aT}*0o!j-mU|a^1eZNtELZ#X(T?RwQDvkCyGE_HDdMkb){K-vNev+ zYKtctVQN}S#%P&_uhp?A?L?@``+QA{6Vv1#np{t^C5|W(Z^je9^nPHC4_c4oBFNSp7-FTf}!B{sOEUUl2AmnHrv z&HhYPo^CpYhKT_xcOem62pJdjKSnAk?=dmB{w-9HA(=xB<3;C9INzNSmTcXjeAKN> zYgeH(j}q>Fx|F(AMyixIuoBBqktaR~ge0SYa0(Gl4};K+YM5z_s$`KQque~Xo4#^e z-R?A~Khx2(<&b}RLh4~cN-`@_e7P;2ETy>ewoLmi$;mygRt$rmph_7h$~Q8~(>iig zy<(UMa2i7}xf9mNuB@G*^@rVfokUm8Ox6j`v;hvtVkr z`V;Vls(VJts_Gu=9paI`s6bDA$>N?^{tauD7tQ4x1QEMv!|uZImebXl8A*MOK@vr# zMnCTeH}3&X-ZL}v_I2}alXmS0d?_>UYupZac)`j0cb4$+C3AcFY&l;2aHxNI(!V7= zyEF`ufAeo-(vozahI9G1Z^MyYUyHC`Z<^Uvy4rQ2&(F=$M!27+x*5m%886PvC@X9j zH#HXc87FAQ($1fmF-=EiqCd?u>=>oI@siKD>7~qQk-&@5El4c>DACxnWbsFR8b@8T z7&k?@IE;Cs?o8&1q1!2w9Q=hd2tbo#&Vv+h?*Grp07~=ZHoS0JRn|$-XBd*0cL$P8 z8*`v+&86KA)fk_bXxtoCc4XH)ZS#Z#=Dp_+pN_@W;yq}1%(8ZZI z_ggp;$s-k+Dtu2n9S&BzjY#yEEPX~g@!H>{htr-R4Q*>hKV8uX*JEsxUOR&^V-oAaOX8`dw?`zqT-XN+}l^uOEye*eYgyf3Q!$U z%9}$)2tDXu^!};TkscE%nP}Xen5K@bdD`|wfyk_RT6dzn-wJ0itcz%lWucYyb7CKN zFq^fqL;)40`SJZJgKh6;Z3$1~mWuRpD}%eEUatCt`x{We9hG0xf5-LD{)GFs{yV$om9AEx0@{;IPGo>I#S`L~d|Qp*nEsz{hfmcqfZp(NwUWhDZM zWks4wO73{`ts;|n^P}3CX052Kd09+zrY7{ZCzkD_*_Z8YNZwI&rP&Z?wZ~0~c=Ck4 z@#L+VrTI}|h8t!CHpUYyLQ~#Vy9+l#E#G=q^N1|d<~p?Npuk*%oO30oG0waHig7MB zCAIeE89k1TMRfNO7MDBHy;|YOT5}WEJIZ_0j_x;?tNqEGJ&cgFT{i|8cB#9WRaX$X zobR-Foop5Ez<*pUdHqV_rWOebG|s4SDyl(*ROFk0_#sDIONoa(*^Fk|6BixCsmK1s z^-nD_T{wO~=CPr;7@~nj23ewll=pdQb!=&S{7(t)Xi-iDZOW^lKagDyy(6*S>5Q}Bp!hJ< z`o;MA4|fsfl{O%r*k(tkF*|d6F^wh4olc=NZ?l`^-ziuTT|)%( zi^Ryx8`RokCD%xg!WvL0v%|Lhy-K_JXR;@G*;|1P3hJ&(JiiW2O?jJ5(e$hlv7sIj zmbR4g2C^NoBaJ;^NB4KyMm(p*7g)pYsKpN?Z$f0&V}}leqC?l^RP-5bWYC{KwT-BD zg>2;8k6*Oi*U94;9u#Uu5-T z)|Lq^I)q*_&?)Z5wiceF62)(V+viL#{u}U9ZeL85Q4ew&61*|H2nBsT0B}vai52p zp5e1fd6%%1w<{OfrR>k`9*r|3OlXP8?YdT#iHafm@@9#+Wae!bUPOQ2@?H>P=8ngm zG}Lu~AGO&EE|%>b6SDo4ZriCW7{SOKvxX`{8t#v9N@h%BG^rAtOmHnRb}X`L3ax#j z`$8_zUb}m>*%f`Fx3rHfdjZqNRPMpUUPa+PC|D4jaa3LVA#4K%yEF^T>9FQICD3 zPtA)ZnmobZ_4MA(qTQe1qxxz+nVWHUgz6G)Ef&+(NHj664Q*|O6<7*F$L+ehgF7K3 z?Gc(5PYQ|MX4xl&EU(#0C%R5D`kL}Kc8XHly4WeUTJZ?S2E1Eg!|Jv753a33AMlPU zba7;Fpiq3W8kF^O@>L~eAkjCTD(#l|I)2UK?s^u?mt8=c-FP@@8xH$nW-?m*x86G- zKGI&-v{of{tF^Zn$dorh>g;20liu5JLlwH;i}58i)U{G;O*J*~cw%03eU3(D#)T3k zieyZXNTMXqwJu+~gh5)Bne6|Sz0S?i_Dr_WFv>!6~m2bPOeJhdLX{lrk)v z9j5dBoA!D>?f<9j^+f4Y#9oWv`tT!mo8>%URu91XMYob;zvvXdIC)_t*5*b zX~L|IxTgzS-@hFzchvO+u_(8QMT`8heYLDPIzUxF=NX2H2*~%k^^zmVBg<6x1VOI2 z<{#pz64AKk1E?WSveWTszZ`SN%uTNJL{`-d^lBXQDk7bg?(C)~7fM&NtG?S0W3hGW zpy}#M$|<|cvf+%KCzw0*QlmW?KWa;Pw+aJ^(lvyY{8vitI?ujn$V^UBnr&-C-i6H` za(6=R1Y5wBQp?+7QX&?VDLK&DA&}sUc60@>N@lZEso8BG%eFI{CzqQ0DerIcWSkY9 zvXJs_P`NOSXt2(Dy5;etJaLd_mz1{T`6ZtSmz=64QHyDC$6_#{C9kn1yXyU7*M^Jj zpS8g+7%_w!jE76Uqmx&(!MBX~TfB0%8JBeTp|7$)Qkn0j6^IhaFtl0m>>^YnZbW`o zLHtN!1lgHsp6qA2MV^J5EQr6rUbcwJbKRP`IYV>hY{6h6!RBQC(%YEAw_MLZe)Mp2 z2h}cF+!AX%gshBUbdQH>R4Xo|Q@YNBkn&1|8yWP;q6aXfqkKY|$5w9n!gi|spM?1XxfZqK#M)ol(2#=Q|G&-a@ zpu_NRM$Vld+3P5qWn^_{Fmq(fIZ)t?%%>jNaVnG@k3#0io*pjspBUK-w93%vSPz$7 zTa4&cmk?LV`(~E%++|n1B+p$*TM0qW@&q>IO~N`Z(G<J6(X_PHW}}M*rulG~aA~;Y=~^;I$rdLr8EZ?X z}M&Z(n+Qm8wQ zOUlw&I{$-l$v=Nd%R3X7oI$73aY>IJ#*M}$+lA_DO*$_5CS-5^#&lfr8rL>1`6rj& zYwf~>#wCIK2;5I#$6^UXC92S^6WNQj6Ih#Spe#U;%nQ%R?w>bWSAToU%s|bd6L#q- zRMw{j6pKbY(o&pk3=ca(Sd+_Pk(FUE_&$f3W3T(rGT>~$NbmJYl_$xwG?~H+h>0ONp1-mI^QQNx z*tt;#zh0QlHSx;1Vt0z(@yx{CkUV9Qh8uQ5MNz{C@MM4blMmokkP9!Fc>u3TiknE< z*OO!1yzT+KshN3qbMv|f@P=mQ{T)xI10LK1cpu4Q>s$x$X6nsPaR9HuG!r?1w^FJJ z_fvir0Dery-~e8IX2yfvj0GmDO?jtkMmc~NjQDYu4@6uYBcN^DWlLf+s_=>U5E)e;2tM$wI(V(xHeDnw( zD(A7K-R7u9f3M?b*3Q>=a%3Upbr7heTQ%pC3q$H{Y!PKld9z^A97tBvoGKDen`Wsd zF->_|w7!g2a4^f0g}7uxVdyY1h8Z%U7fO5kpbYr@(DLp|%BFc!rqtz>_UKY4evrr{ zvUHV&52h)1CL;hg05}@8_MkmqDU|=m{|-~_@r_=*rd4*t(MltJYn|72&(QaB2pD;?Fr!r@h@}%zcDE&ib zokV1mJ`mz(9HpXA4|Q|O5u`6f)n8F#v^i6aeJz%mpc=uiWSgr^-lY89QK_5xcX20# z_ClFiQl!!aQ`$n^lWAc3dTr^A(w5&HRZLTF{_Kqz zM2>S?`*ht#7UAIn$-GzTYDvmJdlr&!PX5vB^KWj=f2>vBC)*Qp|Gg}yCLvl{$sXZ+;|21X_cmO)4GH9CqmnObNIe9G zkr`)}G?_ap*e45FVnWdv~st=$sB3*d*S;V$C(II867(~+_AlL zbS#(|GArR#7JV&)CwTqD8R#o4_nx6HAhd@s#%m{@T&FOk_F`D?z*XY*r?t7$s@YkG zobr~@5|jI0)Yl$AzO=1jH$7=+A8m0*P7!|pMuPhno9FW?K62orF8@@pb$kSol81Jd@4$-sPzFTN- z>RCZ0Ua$$=aD3Nj891rtRxKbcq`WUsr8k>@%+2S#Hf=-i{YCDz2}{wZP$K7G_b%-Z zR3kzYT!ysmGjQzJZuuQw+TI`!eze7_c<<10{q>rZCkm}5XqN8Q3UNtkM;`xpd0lIz zo0dUeGc#LNFF?K|7LZ=hTuD`oq=atT{8QoPyJf;P%J#V2vAO0O255VYwB2>QFW2$w zbs%K&rGKgjzvLXA*B=r3;;j*Jngb>`{NI%9*l^d5&}2lihntT5CnS3uRk@N~6mI^$ zv}6~^9V^)phJj4UzVl3mWY1)~$h!}T`;yHUtu~S!EtgT9wW~^1mu5X;5FamR8W!>{ zvqWILdo0b%wY{B;OOVH{>*PR!UN-k*?Pj7l0<}F7t-+ax^_{yN+I05tI~_v)p|RKt ze@zp-LH>1QA6}w1ylCJ7eLG?*iWrx^AazTtL-o7G;?DJC&dX%`h%?e|v4v&SGG9sI z=MZlp<8;X8vyjnJPc+2b<86_wzYR zFXoD@e6b`TC`hi@Uuv{$!&f&^x#6q(6ZwKg<*VKDrL{CI5qJrHX!;k)T$XspeXUnTdHMz6Z@~=m-)Y3ubEhuhKiwuYGa$}BK9?w?GO~T*=pAo-`vK&=3WUJy#GP?$s zG)Mce!<2WP9^UGZ%W8VreLjDUbZvjl(#FD z;$qUC#4m0A+YfyIR;&_9d5d8?oWBGo)5c`b>UtMFO2mp!o0QdqL`^AA&wwUaSlaYp zRc7`C!k_vO9cQIz1w7y5QG0<9uLtv#Jr7Z2>vth-i?%#2QotL+S{*SJQZ}^ zuG^XtlcR>gCqzDaIO4F2=nu@=$xS!TStBUJ8mG%w2#K$F-$gzm(vDxMC zq_4fN;8r{0`49SwqjnL%6|zS=wzR|SFDR03oQOC{%}&m(VP>rOC9Xm3>|+ zTS;|2raHSDGgFvll1%6f*{5C6GpFO)B}6jojYN;?n$~nz1vSCmnW7rHnIc0(H*_p+U~{+q`j1PO-8#_(k>5TmOP7;2bmU}npDDT zOidj~Fg{DffXtk+wS472h;|dy>GNYN_{)VuU+~_rXA?&B9V&X+o|;Tm(g$4)zD#Q* zmE!{~$G_A)ZsPRNX4W~E+MF!B&Dibn_ugK2L?U}V3`h?H(ydwC=xWK<60z2uu+*bP zw;W5o#H6E^dJkkQZj^6mJ(3M^$ze5&FgS-hj^_Y=o;Bp@dVB@ zq7V+R&zN+S*B;35dZN!qS(;b#ou%aXX9f_H4S*40UQ}q&$TZ(lzU#gWzMp(B#J5;P zT!btxk-)3P?SSs3;;Yh|VGn;OjfFMRKf-f-X-i|Z=Cz)Ct9HzsX0W6um9(Bd(HO2q zzo7KC5=C)Q(&Y5Q$QEC(+*U=@Z~7b{<8dfD=koPM;Y)3{#oFv;$CwAH&i-kCZ`}iA zGaLEt98!b;(mvE26C$ntb3OYUj8+dE@L$@KtCK}-C6l`GBgxSTTl_aDWUP%wu6nPp#L&$IweBdS+O1hT^~5ongOOx{@5cR3^>jm^Mi9=Kgaeg&rLClO2cR zGVAMCfW-2WgTKm;_GteyRu6?@o3g@@2a$}bRy3c<`N?oKBr@}DL&=#Od^*1? z18+1}pwK*R1-&W}19Noj(DeI=s^fhBOp2RL%?gIa8+SkH=$YwA93!4EB$vqj+E2L8 zuKy0>q!JN<_KY^TL_oFB^C zqO6mxN1QA9ZBNa>*JbiiDE9BFOy<$@*G#+A8;-|ne;kR&ve%{No`;U1V5)v!&r#og zq54F}hXl?^gF3z}p+zwx@f|5oA5`I({^Rd77l`fqiZFmi(|b4Ko!q-?7>V3>-;CZB z8KGXmIR{(?dlLkgI#QucqmQ6wso5Ff3#1%Vl4@*$s}Fv(*CunDJG|x@A>@=N_2b_C z$+y)G&j})9T~cbUc6q2QQ?^F<`s}hobBGC%Lx=QX9hdOgxXEmsN1~m~G0pW3)dZav zr3r$`&^uIP&6Eh4sLyPndpINK9jg9X*6#nZ8q*HQjw<>5cc>Q1lmmC!Hu>Vgmj!nG zwqe>I`}*KeGESbbzpBHe@{+?x3|HV=e4WtMP%xfuJZSYX)IvxPUocgs=XPI%Q}{7a z6TF(UHOF;<&?9?t?%oudUKrBWoNsfVlchVf=kUMtBYzTg8Lt%``Qzk{Dnzc4-$ly? zBVVcO@W{xI5MHy5yl+=&dvf^CI>I6O|AGaXGotpvmTP*Mp7klSzR&QigYJ#^lp@+k zdmB5M?Ae;h`qf3V1Cep6YpJ#o_S_HMlcoNQdL{1E1p@IJAx+wWmx@KHs)nmQFH~*j zkmGZPYtg`g@2|Vw=zHihp=Q@Y`IBQI`VF6U+*Fj+eeu89SY7jdR{}fZ zE%!0OFy6AXHCQZ7lUPulBXOQONHya<+=Po8`bY zMj_g)bCW5E3N)^SX3@A@{hEywjvPsT?QYsKPme?HMeQ-5L`~byuRJA#QQU55BC3Kb z*IO|IMszUim#)g-ByADdzI0WMTCZkkSE1G`-73@Xi2h`*^DaiAh$kU^X17^Y6RF50 z4#9aBV}I7%q}k*Sy(9XHDUH%d5q}@b>ow#~$e0&Fu06#jA(nAO%ze4u5xq|``R`)< zjs(LVyd(OCs!Z@M#u{-)%|$dVZ85I;rsw0P`S7a|-w&5us3l{Rgge>2(UOa8$@IGz zwc%nXWo_`TYz>YIm+YUlLD2(|khcx9jl7HTo~pQLPP^%x?wtI^>|BYs`R}Z3?}*+Y zEt?TR{4)1R?iQ={tyy30+=+KY>%U92JM%8a1+u0-SewOCj|jRUdH_S(jlbYoz6XM(LHn+gpWGigo1(#*aUN9IGJsq*uZwQN&_T(h8y$d%RGM4d$}gP3bIH z!hg(SpT3=zcgAAxXFE1+v5U5g;H4X`#Wo1l_w#9sJqXsl(R`g(OoV~@m|-Yx4@Gk}wnCB`Ivgd7vQPY=^hVZO=xyfv zEFa5jQ*1sv!N|RCUiW>LS2FWn?&fvhXZb;9-pOv>7i5WH-yXk0^5%MWx40P#e6BZWM)!Rd@pnTRTF(!>&5XeJ&1H;q zh0HBB$uudE9AT;-$t@J(PM=Md1DZ~Rm91s!W_l9;q@Tt|U+l?^+gL2b6GLQ8BgZy; z=Pz}{;l2&-TZykScehP!S{`(UoGI_GBG_TMPojOS-1mfwoj8>~UOp)8%Zu+*X)<%U;ma&E zIcNQzS6o;!-|;v&eQ|vO}&Gp zcv=ewX)?1R%KN&`Ktpu6eBJy|79*Lu8OT}u zB}(@j9xJAM9o&^5#eVWRTzNdh)fGq*0!H(<>dkDlo}k?{rN>hLbLL6 z588J`a~JyKhgo~((M0CA0K9CaK4GVKKh;QiAQ)cQUwezIm5fgo4l;t#zeE`biJ~7( zWf4KrD8w>(HC(1x$1+1Emg5z+m$J91f;BZ?Co!T-(Zlf6!55>oSsmOZOamFsW^9eL zP>cM9zWwnKjT5b+vs9n{_Q$vNWF0yimg$I_BMpURYBlCcsndB=ZTUBaecG^Zsx80C zttFevJMR;oMrDrL7c0NPZrLzRM&49AOo%yk-Iyc2jeav^XU1w2Rfi-U(vS0^cSBXu za3{w*J@dtHMpjOiHyo(^1YZNv?=NGtx`ewCL4|K)&wbi+Gk|`&?1^;;qn@5+ed~58 zStf(5>|V7ac00{D_c+Vn40a<5lVN~IWcI)qLbt(aESQ}IW<@bhUTGEYOt}W`C zT9ho~2~DKd713HF_a}bB{ZD#UUj7N?Klbeb(e#asUZBNR0^4%ggT4Q@Q`f*;b@{eK zd-v;f#i|Q4(kj%=?`sSs&^ytgI6BlqXtu^R6WL+rZ4Wxg_{zzKl*fr8QTA3ptv}Rc zKKCQ$)Q-8dq4llSYA++ZoGWZLRX~=dk3@-_XOpVzA&76wwHnSEF(HjxSASxsSmcv%x8sJQz@Ssr98pSt~?0RYCA})rL9}eMQ)bMcFW~PxT6Ao zD3iw|=?WH6!HN|ShzR{(3heLQPIQE`jEBBym+MKE_?H4Y;d`;~3By^Q3YAi6*b@|r zQM-eY`DAQrj>>uxZoET1JrZ-%EY?$CT2~R@>b_)__Vy+dWhAfrd@`i1;`3MuGcIAi z3$#6}uiNx?Fr!2)Pwu+DOiD&p21U?1V1xf?PrY>qp`O=pHbnfigyHg^e-k;UJozOt zZqZw#Xt!%xRwr~y4{R#M7zIk9+VWE}b**yz7QL0$X@u3N^YNd@gW9;IMdhiDZI3pY zE^LioM^WH1co253=u>(+_XV}X+0~CUV3TJWbSS9pSTp+V(&Ila*QU5u5y4o>n<^%! zF#u(GBUqDqG~o_ojL1}0M%smkA^DplfnQJt1I@`2!4~*k;H)s$e4i9aI30|PcjRt# zw5=VuNcNzqpszdhf!6m`QwtIfeBa69 zN!0g=-{FIvN!*NSuu`%%n^y-=0~?IBij4HDM)sY!;HbrqB|pX2!82{}i(^^=zrCn+ zraa?kb;xi=!4Ku^DLNM3;|Y(N9vdbF+ldFU#;bCpmntLvO;)Z>@YQ*xxI(d#mGCNN+Rt zR$(G497clE4Wi-BYW?+Vq)PEF?eRXXEI0jS`^Ia-bE3$rWt#cx??}lX!{p!;zu%}M z&D50~^QL?~A~}BT8w9M4)a9%8lGZ#s4IC}hd^xcwIG z?fGKhT(65;<2{_R?yMNtM|qJ^#F7$y3t;ViKQ@2%8$j#5U7dcp`q5lIl#-4eOENS! zhjNz;6$$Gmv4qG&;me#VMxnVEvh!$7{@8ce8K?aTDNVHh&EE)&xmy4M-7Vv`thJHv zH;JgsDQ|I5?RHLi6sZwa?FXlj%S*scnlB-`YuxQgY?Do5dABsSf?w@DLR37y|dpRI5o3`I=OMSfuSY zD3DE)s4t=^QUha~m0Fah%IFs3EYp_F-WR8$+h7w~%Iouriel5Rv;&Z&1FSA}+0|(c z=hUmnBxKpGPpEFnH6yPYF4t{b7lT~OLR)9;!935%`pfUfN`2-`zX_@(n#&k1=U|Q1O7q_B1 zQ=XwU+w2UY|BH_*$5GBrQMIJ`k;mkiNs~;+3*{kwQh!7;o=nEXPLhMi>P?OCerfK{ z)El>!D3~9SGy&NPX&_nJL}8O>@NVhCH)&x4yX3T0e8s29265*brpzyCPHxrLdhM=dcdnhS9}+!y=j#{@ zp8RW3moc|!K+*qbNiisYy?nI_BcQ2ns(}VltSO9y9R0wfQmQnoJ4e$-1G0Hy!2csb4&A>Q8Gm( zQd+Y&oh<{jEwnrNQdPRpAF%KXex@TW<+9Mnyq1^#scG?_^yvq)6!irQt!C*ZH62d0()C51 zxU_C{O9!Yvv+Jd6ZJFzI``|KZL!z4SJZ1Lh3;dBFhj?7?a>=c|=#=Ee%HVU2r}+2J zf#B@jUlDX#OJ71Vy?1~6zj}L#xk7z|i-ORnEd4n?kf*B?=G3SPFG*!V+y-Zb(z2EH zhJ|v?UWWgxpDK?tGzZl1yPv;l)XXw&w5d5alQaFQlhS!xNGdhce1mB#?cUf9FUc-e ztKB_lN4HttX;8tnwsf)71ov}9trIeTl2h-rD_f=EU*Q!)(W(;d%S*TBubZ}&66rTP zuU8gR-jIyiuFb5?MxKr#I)2J*wKd0xc11aRn#=o1OU)(yB>r_{gLHWrxoQ|}p|5M` z>*`PU&f0?wG7h=kS^Ed)y8J2QdC8d^eD;gt3S?(jqP!Lcya0z;Vy{a-9xK4u0on+9X3DO#Dm0DZGX$3E@~>lTHKZ?v5&d^l9A7EYDtQ<{w@C;TeKt| zG?P2?1#SGkQvT8X-!6&876?njTg4y>_S^{JZ~5o1S5jOLF`#TseA6iERsSEvyrO|a z(ZCM%#dt!0_4k~NTXM`j0*u)`3m6k!{k^W^FH1XF<^`+2#~D;-^(Vq63zFN3)!$dO z%9QuZOGULx?doqYs5@Hyl@Ooz(J?hDEMqLH3~ICUWvJKpSX5oXfRJ_&yLprhpw1D zN~|NVw*~F_xv5>1ESU28HHGahr`MU7n0!md+>!C7?AUo?p1HivlJ`V*CQv?8awZ3t za1aunTZ{{6X`Xh=&b%i(ND3Q2a~wM^-XKwqsGsp=Y?flYCtSi8CHQE?|CcT68WBfw z%;^G*=;_i=wX7zi{+-CmwX7LP6w8uHrNeHk(9fMPtC-fudZkVz>6_JB+6&Ao?SlhJ z>aL1!S3A3_GUMl%O@SHiJ~GMBKS-F3`hU9leVA~xbqBjDJ}3Xa-6RJ;|C}%((@rq^ zocM0o8UicRY$-38ef-_MNpPMvGYR^x+1id7Ml9u-LTKJVl{H62-|~L`rilH{Vx7%y zRnSG_#< zX()r&J8KQE+i6Ihp5=9l;k7)>>+k8Vk*kqrSgr$<|9^|u11+zs24&&(y-N(QG!t7Z z3|n4*_<5D<^f0euWN4COUM&_F{|B6fw@NDTw^2C3BIA^_dmplyF=iLr{BcNy?{c-8 zua{kJ+GSm?IvDwY85~gS6l!I@``Xk`r+UMb5Ps718#~BVr zI2>GCqq)NzTo!O(%))RWMk5`lig1u2gZ?27V!}bQHZx|t<=}qPDpE>$v1}Z?FJ_@K zFv=d5!8((_V0iKb2 zI`F@(aw@!1N~epyzqcuRuN0+E8WTJTKd}YI8o&{8g7<6E&pbi z)dL#8`>y3jQtN0H(wK{-A=;g0lD|2|Bu_OWY?WKL!@k4uDVF2Eq1e*d;Gy)DOwzfX z&+QM3&ZK$Fa6SV=>r}=xjbgbaSm~JS`RB*;c=_9oE&qoWol2u{ERgP_mF}wXhC^; z(qy+BkM0LcX&#;ycZKxkVzw$hOhF0qtHnkO-4XUZ*FHZDk8p;kS&Dy3OYdrCR&Rij z$-`D$N1EhMicEX^Y0`}FybGo9m>VT$a{S3s_+LUwxE+}zb768!lgYHdWa`jN@;HOu zro4QaB~`vBA<{s;C!2=fmWGq#H$P3myKKRAV6{(Pc7=Yys}rzHQDKTz0q%BUBS0r|JEhZ3b9A@oNx z>4SuRXD0o_3h2u+>2E{tnipyGWg(syA+`wd)ClqWLL3<(-XO&NBE-vuxLcaoBqM*q zeWF_IqNTh90`O+TJ)bx24sF!SQZv`nsQsQo4}YPh20z162AkO(5-aHMNs4+aX?I5} zXyHgc;^uGftYk}XMP!l6T6iTj&y>%ZQRNv_35iF+t%d9mtl@f%&?Ukqy~eczJh*orx)il=8kK*(4-muSZ<6ezHKf=D+oO5r-bvg)JrBeSwgSE*)mB zsW;`xD==NRDWk3dX4#4EoliMYFOcHRe-AS#!}di|Cbi z?)jP>+svDAc3E>$@=i|lOiXN+p;chE?pjPepG9uD*X4{P+&(?y+`3+OMCR?AePTGw(n|iw_aDCRC({FTJyGpTGwIPo_W!>&XPA1bT9i$|KN|zv?19swev)#E71J_)#uB`4h8! zpeLiw-6=iUTh z{p4_4em!=dJ#yFX`iK3OGZW6}j4%5g@B9!^f5aFWA4=lBvx$l@xNILSOjnlfRt~wz zBLeo~A7nV?tn$sR#5IQ-QF0FG0nr^fYCz9rxAGT<*iVXk0~ta@kgiqw5j@Am%OfoF zAvT8@UlM*kT0Tn@%u43|k433O%DJBJ39lzn!Wl`wPFu&0@0L(@2Lo5O!>Y~QbdMt~ z%Wc0WGk4t1c{^<9Oud`4oij|`>HGe3BRfku^3Kq$sHUP&t}My#o*@g02W|Ott43*w zX`2$0d0V^f)0$SqVB()Y;d|3HE-%C0lZUt-rO;kel!CF*uY$gRb;dhL&d zZ6Yk0$L+`V8}@binrU-9LXP0rZO|_nqhjp74Rg%;wO8BDzFLcHS+rZXc7?Pk?-r&> zH-0GHGJMF!1zA(x19W!j?;1{pr#4?!FRd1?-P(p{);2+F<9%OK&m8KpN8@FjLaUxr zx=!$i*XAxJw;j#{k!|GezUjMtxa)2D3c2m?=IIx{?OPiDH@s~uxTLknJu{qmR(^M= zJyE(HbiA9$G>%ML+~A%QX8uou$wPiC*5`gGY;wMwc|1}25;6*It=3zvjPgu$q*86w z9t1+JBB@XI?9Vo?!c;lF-dy_9k)>_RS}))2NeHp7-3>v0^1#Ze;9euAkT^rfnY6hr z_XOf>M^@f_MD_?wUiTEyTA3B-1mgQ^+r?dV%^yq)*yC$#(_tO1pk*>haOli@{{kB_ zGbg=bh8YR7YF1ZEr<)6!CzG+X%earpOaqBhA!rsE_pX-a(yd{qpKCwi<@;FMTqT`J z4zB+(3Y{FY7E-*q|5qf%$n16Ij`tG+OJdOR1L^O++bJgXJ*|Aey;7_2s7@pEoA2&K z<6D1oiEI67YH?1fr%&S>3G#$Pn{~9)|J|se*{r@pmY_4*;IvgbKQYk3-`F9!PJ<Cx}Yc$s6Wdr;M+#Pgbzm944bS9~+YobuH6YDtzQ zw(zlKed?R?HfnS7+Qi9uD=5^FUMYrb9tKig%iY3Hhg=@XsQET;8CaXXyC-)&Z!)>X z%bTCpamUf_OqK5m+P^x`#HV$r+RNL1B)g>}o8>_> zc(0*pGwnhndq~Aa_dLv~({(z|QD-}Tx7&Ksa_sNDS*G=Iq}jLS(9F$=OP#lI_Q+N_ zyjE+G6R*tFh9nHSM_Zv2udNd9bws}Hi#sF@;hH`*(pUDE^rsT!7;ESlxYX?Eukbd+ z@2p`U<=wSi8WLyOX(#=AOh<`_%>rKexlOZ)*CZQ4l_c|(S-}5@lpiCz+8{id?Es3H zd4=KDp7Z4isUocfX%TA27$oY9eCOIY{9%!c^NOhYEY7{=Da%MK2-vOO@?Nad^~gKoIlj1b1HLI#$Ot-z3e$lP zw%Os5eMd8b?tzU!&}-x<)3k&+t*Lu$0i#BDE#iv^7rUQ+|r6A0wwK7<{RTe#obo0(;Hs9ZtEO zV#&dEJSXurMHI$9l>f_jv{Ffzh{TTO8KGuNmB=Qke_f5}OmTSuAW=R~^E8)$;=0r? zo{liPMx`g7pw3H94cf?)Hoh%w8pqfq&6$;Xs29Z|szl@F#I(-Dh0q zJXx+J2Y=^|tXYGb9$7i*h{N;sWFF|Uk?H&&eW3lGaP3b$udM8<40=8RET3>2; zH?J?ww1r)H;C`~oV;rif+2v8TK1!tT$MZ1O|Lt(ImudxnDh;JKdYlouM8?lZ>#Wnb zw2``R8#3nANNaVX@ty?lswF1#Yc{1B4|S5I&xq&?rH16RXRra*E@QqZJJyhg=?E?6 zxldy&KW@`J?H(9kP0e||jVmT4{=u)@$nze}J59D8WcSiOm`P5QDoyp58fmTOc(rK8 zYO5JVJdNo3imw^A+%(FiJ8UZ`k_t>`tKi8mBFw<%Vafu=oAOSxI_0{yy|wijga&~w z1+znP@Z8%~TYCJJt6`C(D(~YwC8p1^pe>R5A3r5XtIqymWqAJZXKpE?FLyfcR;y;| zFE*KbM~Y+i=ZYd}#hn*JHQCoi&F{IQSJB)N3l9Y$7we=CX>2>Eg;+X_V+cA`15F<% zNd`H$fH~-$$d69xPW~Nj42%D3Q+W(*r*8?ERYrs${KV0|Ho}-z+*)+iM?0;w$8D9e z#0qiVf^mPHF57Q`smMEZQ$pBn^S#xBN|K}XXi8KM^3+e=c?Tg=c^u!l~js?6{Fl=uS3j6N;r_*?6`p7<73m``(i zqG#`$bSF&nUobI^K;0O@;P)Y~B~7tzs^LFm$fVgiiRuGuH-P zk};)G1~BD)Pqrz>mbT>IhIZvIHPN)*W;Aqs$Go7jZk4!m|0fVCtD(Vnd`n==VgYJd zOmlWCMg_5CaYwA7(40ekuSB{jLynQ_a2=|T@@B~3hHJgR)OxtB_3%)woqX7^Q)-RF zg7=-E)=pdN;kjyUy-j)DC;+b;DVgS#35}OF{aQ?_47fkDio#=6-vYNA{2Bo zZ3jp3JgIAjcsDsE;vb{fg&OTCk!rf*-=Wh`mL;p6}(K~+htO&DI6``d)R-X{m2 zvqGv6^O27yxw>2sSXf{kCccnZIyrb{x}cU9af?wbc{a~_i;u^N2t;M{opzeA@3!0b zmq-`c`^AQZ^5T$n`l}aRXG?S<7OFf5S@u zqkjEKH*Lpk0B?|+dPlaYPA{N&a8P{M#(3hz`1%ibk)c=GfOuk?JqR;JtxT#DUMYj~ zORp)@?|18thc+fs&_|Sp4f$r6wehs>i*=~Z>-WXD&i*TKGIGV@mvrRh&HlvXR@;Sk ztEl&UPeqN}HzIiHo03MqPzvuPlr$teVwOKY!e~`Be+5<}a)Y(iM{{=2unL*4EFesHx+Y)O2Cx zf|^+s3mWFv)Lk@g964sy*O6+R)lgX1SX*0ISKm;$u(Gyhw$^U{X`NnTubK|@uawYD zxF~;rm17g39u!Z3rOFFyt2AFMHgfdTnz>b_bLPOSL$+m3uB@x9yF4~w-aHDNT|fJh z%2>R<{*oQ^WQ^2LZ|K( z$uhgjbhduJW{@L#+*98v4+7IJ*lB;u788^HX5KE8&^0WHtoXt`i9ulnuf}{npv@_msM3Y zTpl|r^jCQ9go%YC3s0VQPGN}tSrP+cU#_{VCN?0Z3>40-udBM8o|@Exnk%H+3d(V~ z1H|J3COdp6xY$-iA6zL%xCdg{_Y-}c1TD(fz)s+d(> zHS3abg%uTbg+ni^u9;O`ShJw;&?_2;6`nXArL0+S)QKX+p~E7#O?96_uWSLp^&J0c zevU1#t-QR-Sc`3EN_EY=LRIQlrP@VzEA7+~xQ~2E}5hP+9Sjy}i@9UOl3> zw+Ud=c!-26_C0GqU4X!*S7JCV70pACEz*Q`E?jIV9{R+JPD10g_qx-?J;2QWi6Kn?` z0}D8&x{&2)F?btzKKKZDCAbN^1MCK$0(U*Bw|5hG82Ax*D!3p0IUhU$yb?SgyaT)v zdP_YtOb{X*MqNtYrq3e>Fs?LoC*1pcn7!@d=?z|#aQgm;Basd51PxsNnkB_H+VhxE_gq9 z(;3JMJb^<1+rfF@KKt?b6&wvd3r+=J0UN-9oDR7KJOF$IECXK!=Y!k9+rfSIryMvM z{0BG{Jd1NO4d8ddTfmdgLQlZ0;3n{6@FVb!DaiW(J;BxSKa5eZHunl|}^uWJ^d4;jq%yY;O&IjY*DzF-S z4O|Xx2Uml`&ZRtf8t8#@z`TQEu|{wx_(L!bZUn2rapzGUECW}ASAcEc8qfoO0p=YX zi}gF7^5DT>9F%tes=@QY<=}j9HMkUP1D^#w@QDiS@k`h9#)B* z!TI1L;A7ycU>mp{EWEI{cL?@>I#>)=gVVu<;3BYac5iP7I077UDD8vA;Cb^ z+yt%!2UcM};8|b?_yqV7_%65~k7@RrgWZGYg6D(RfLDUIfOmioflq-w;3lx*BJA&Q z?t_Kk_rVhI6>uilUXA^LLu#-eFpoFK+rTo=1MdL`;@5rw4hMe^mVt*|f*pV}!Rx`L z;7edzEph=n!F`6sV%xycVD()33m#mDp9aT)tH3g_6?_)l3|?7Jdq*%1^Joto3YLN6 z!CG(%cs+O@ct7|w_!2neQtTF-2o5}w_Q2ubVz3Ns1#7`q!0W-I=2IR#7kml43fv0b z3=SNQ-h#uy+Zrej-UHTx>%i;5e}eaedp1%YJRRH$eghnc-@hFk4z2;qz#gy`{GWxr zz1?6LSTF*=2o`}Wz;f^ba31&uxB@)lGW;<(5p1X2RIr1mD&=3Jd{HcR16TyE1Is0S zCFLc(nDXG%tI=Dq7JL;P(!}_H?chFaKE84d`UqBEi{6Zn#U2GWfxiITX?H8w4PLN> z_Gq^OECR0s%fYjkqQBrma3y#f*aAKVPN&|F!7ITdmZ6{E>EKh~9bhN;3K$!OAN)G{ z3D$un-~-@H@D;EL^uSf%uHQgkz(c@J@MJJ{4C4nDg74<3Cz`T{n9Tfx`CfyZL!N#qLt94rU(ZeSe26TubW8Q>bQ^qY)7I1lUr zuLg%47mNKAEC!zgr-QMZ7#FbT7UTx*dncp59W=H#a;x5gKvUm;I6mRZ}4>RdaxS2AG{NM349RT3Lfws z^l4lyHVP~Pr-S9-*TH$F@WDJ9r`(I|;dfh2TwK33$TY=sP$MYyzJLrcm}u`yaMc3Lc9qc0)B8W z`VOA@1N0rd30w}gfUChxU>hi>GCgp=AEK`l;1?VYmVss9i(oByoq#Wb+ri#|LEpeBPhjWZcfo-v5B7kaVEHTXbtZ8DSO`7>mViG4XM(>2o50&&#UFvY{2F;`WK3#K8rH_<2XU2rr&n6xO z`<;V*fQNvaL63Gu{2slgo{8X4@LVtsUJtIK{QYm^$H14st>6b>0rlm*gI<6$!Fk{s za0U3e&FC#y26ljJ!H>Ydf%|=xdGZg~BUl8U4_*LX3El$U0lo`91%By|_zmz5@FVa+ zaKGuqCEy8Q(VrM^@MN$FTm#+%ZUi@gyL!kQycmqr-=Zz>310AL>-{4Si6Icem`4`H854=l%&tv?%kuUgv*n9JMo2vhRe6M|mecgTCYq+lI;$Cj% z;Tki$xMmeXGS5>tA!SGiAyG1Ajz~g6DkP~SNhKkbN~Kb7mC&s2@A+Emwf5fUboTXm ze?OnUevi)Man9PW^?bfw>$T=#?{m&EgcA^6M7RuL>7S5qgo6>DM%efg#xI0-BP`Y% z{q-{ZMK}QAVT9Wdo=12X;R4wI4&io$qpqNS5gtN#5n;m5C~w&5im);GU;l#qB24@h z^@DIX!ni(|=YK;zBcxZd3Jfu+iy>~+;(@RY1)KTWdT6x_B9O>x%kl*xP z1O1l~2HRlZ(`mGt5iobCbkcxfs50tR$;~Z8yjmV!ch{HtD5F~7lm^GK)6Kyex3?(MjLq-)Y9vy!b7y{%?%?*)L|I zj`FZy{~CCYJaDRq?MT0GY4i_V2j9mesmp-sqP^?qTG+XWI`hltfotGr^T5du%13qh z@eIP?EgnDm&j6XeIMKGq?+eOr>N{~kjPrTacSXjlc+(oF(jon}z%TmfrvYCJKM2RP zXaukK_+hq{Mu>9|oYGY>1{0^KhcnepXFJkq0Zu(|oV?ub;>UpZ0G{ND?*!bhtWv{EGz2-yir{ z;55#;^>~wmPXk`8Cgy7|ey5xMTHtknXL)gt{|A77hdH`F;d(4#eacfY)}My!;JYnd zA84HLwAr{g%)dw{R-2@9s>paPTs!#~;riJY_!{WPYD=U)9QZ@P8+i3cyZUp0ZvtM( zi??&}O~6+GukOW%xcFh#FYm?G(m>YZdEnciU%`v_b@k)&q0i@mR|LKv`1M}>QLcVl z;3t7&dFYmp*+~*){(&dfirtQ>o({mjhQQb3I(U5x*9O(o5;vXgzO%SI?QiheF@4o;v~W4&1MvM*|-X+^?P&03Qh4ub#KF zzF$2b1AaI3{p$H5@F{uV1#FzJ0r#utOyH}5`_*$N;HQAc8n39HHz9qq4%hP?S-$nW z40fh~x7k~d<~paIcLR^B8@n9SpmQ4dAJAXp)u*+KJl!V6sy`H#gmzP7gPonZOqV_iGayfX~W9{~++$ zz&m>Fo9-NO4*0Xc`$ynvu|@s`^W$tRkMuKu?=O*?i!HD_#+vRJpAGyc;JqVo*ZyGO z8)3g2;m%yH7W0(;OyFmL`}L^}z~2Jy*C!7G{{(ntuYJ#Y`hMkm4)}iH ze&rj)2K_`H`We8F1NZB{*{omG>%ZzAa_$`roSuVD@#3C+{Y>Dm0{1JQ4ZwE+k2Oxw zICK^HBmd+$GzhD5-N!KAdB>p(u(PhQe>w>TF%AK55F~Fdh%wuRYZP9tRxV%2U>E9=ihn1wL%{?y&;vkR?k{* zG4KT7mB_xvJ$s5>z_Xh9r+)(Y&qe&xzXCiF`hMeaa$$@|!2Q+`b%1vOj=;^or+m8t zXbRk~{Kf%q47`R{f2do2i-C6p-r9@btMD|$?E*d)_%JW7&IaV9LuGs#oaeyt>+`<> zKLWg**G5m*hhjLGdK-8l-<7A@A8KsF8n?+rY!K7SsZ1>pG2VR0CoR{-~`uZqCu z`}ja*)fPB?L$x8Uy=6gLeZq$WKMI`2YX|r2v*!T6P&hZYHsQL@W89)GCh5@ghTEav z5@Sm6$-1r$8sqEAp+(L$$0(haI7cTtdLB^QZHZq5eh@f@02k-6Ck;^rFo``6{BAE! zG0xNrRfKLH%o;HIILu(Dj+0)G=Y+;MTw z96ucR%fNehann5qnFIV+;IYbr{M!WlTj038;o3L5IQ}07p3xfjPrdjcw=T{D&jjw* z{^E+`oCUaF{we~eA1c5Jikm*l_%0+N+duG*!2SFm4!kLFKmX?dp9tK~|4qPW0r&I& zFz~s+{ro=YC5p(tn&YWElc#F3Fb8cJUnZOaa<lUsi3_=sX;AERezbK3dOS4V-Tz=x)!pvOLH zpsarZcpczXytwBKKLHIn3pj=fSKqUauL`_A@KRp9t82d_@Or>w&6m_ia`4d#c&suY zd>%f=0*_S&gm1;iFE{(Ae-!u?;A6c0@xV>`7x2-#tA8CQAY+Yz#~Q<^-wlR-E#PnA zIyeKl)MZR#?MrSs&@;%V!1Fs}qi2)z!s(f1KO7^x%*VJkxYr$kA4wiR+RYEl3(g3c zJF6GCrMh8GmOHj2pjVq8Z#) z!13#A6M)YG9;=OzpOg>6J5w5~JZbPfAS&;DP~HVjU0ge5;kmbR2KW)+e&=FWfm46# zqqd_4D7t^)549Hr~xyw3z=q^6_K1CMA2)Ys>zwnCgNaHy}Y!L^eH zaXja&gTd+4&3~^n6L=5ceskXj;O+Ck4+3ut-0%G89P1-+ee|5a2Fs%F=3$?n=x7Q& zR$HZZn9X=CuYFp$LneGMaLRv@7x(P5W&+Ow-oT5GcJ(&^ztzXTH0T@zPX6ar2lPFL zL*V$8K^!*1hkeqZJX8d}7r0+rYYTigaKFAb9QZll{b9>#Cw#-7?9Tz7(cS+(;wIp| zfMnY{1Mb&eldm(3F~I%$V;$gwfX6Ba%Evr>Oam_Sk>sC`$*|L@kAIt71-uJzzc#mz z_5IG_&H!%;{aEL4Y4GzZ@WXwh#(!!PE!;Mdh8t~H!0|gb$O8U1@NC#~+BLUJN~1sU zvidx1;=;)3w$nczw@rP02TuG%foQs&ja_X%Q?Vz0r#8BHvxYWc&s)_c{~jKMc|{n zc~obD@-8=(;{|ZS1N`%tfTsEfY@oQ@a`xOquL|6NzTZ645qKhS-~JCg1GwK9IS+Uz z;C^MW75EU~er0$R_#ohZWBdi+gY&STfCJ}=z*~6pPlx}Isr;$}UkQAK7x&yp>j?ZD z@YY`3b8edhoc?WXm=}*aw_O0vjo|p@aXavi!2QbT81Mmk=wAfh5BMOj52iZ!r92iu zM}IsI{Y>C%f#W#EZ6luZwNAj70gu&A$^K~IbAd;cfvFzEAbbJv_kh>*+UK)3!nXte z0(goS_nb2w15W?n7c2cV=v)MT1bD=nH)_mF#-jZfaANfXvQY>4Rp5E`wI1NK9^}9F zodCQM@K}CQK9>RCfOEZAdu8%rH}Lm>$J#3cmhJTnI2l9y*KJoB_v^2zIE-qThkoO0 z;JvSbPre4e3V3CdGu(9Bn&-S?AMkp>{nn*t7)O=6`UBkld=+>W^!@NuYz*21f6A+G zy3g7)27Us#JhRqk0V9?DH0bmOeja!?uRgUk^>~`BqiNuDAMBsUwZI1g_sin}#{J6Z zEbvj#kF~ZY9}NuVbAUG&xYl`qkAd3mo;(Abjc5lq5nppmwScF#nhpFE@Qx9<`~1aV z;O5ZS{fYEv0*?cZ<)3Tcb1!NG@C4wo#`QF)Ttyxefzy~7d;_1_N6%jJJg4DTj&U`V z4}NRLiokzE9;YA;$G)i!*C-Edfp>=w10ry>$s&9>@JE6B_4hfzAMnA`puY+DWZ?IB z?NeLwtgnxPa{?T{x#I%xiz>1MdU8mNyTc{q!#2qk;SNmlK?RL$CfA zPyT^F1pQ`STs?9t$E0K={50@b`x`2sI>3(r_iIO8fgc54$ZMbPv622b;QN7NIqKGt z=UL3fz+VTBF6-i+=V5jMe?JfVCx9OU?za}d0{lDRH+k)Q#o10MyP`hnAiJ$+yo@F~Fk+Sdu-o% zfVcDF{QN-%;x59+Pl0d8b?`H+MzxRB*VS>bY|Ce1XDI5@udf(bNRI#>t1i=EI}P|! z;IZlwuuLNxoF${8&Pm6+{cSMt=YV6_as3?T;xmE24t%&5H`SMgsH`^tPrSo_yf_Hl z1n$=!&H?`o_Wkf6D(MFwoXWa4^gE#pcHufW8+V7iWxdhOM@QH>1D;=<<^cZ=c&s|5 ze9i-&JR&!@JFcBHOtrXAL)2E_?SXId;#A)&ln>-<960ZQGr)weKcu*J==(06Oi84) z=yw6)a{T82`n`ZcdEoRr0;#}bttZl8pMGCp`|bGt90Ne(zekw%s`4NpIr2Yle2{_S)t@E&>KM}gnygHu^% z056a9KfrZxP?5;8eA6w<i|Co+;8mb3j7N2_r3Wvk2qyL4)~_g{`MCG ze;#tp?NU8fEXT#(z)wKmZyuiveDgT}`d$TmZ65eO;Pl%w=oM}m@L2$r zQ!?@S7ttfOi4z*B-Kg_XqA*UzCrzz@H{RDn$A5 znCr(p*eQVa>*vQ-;QN64`EeBZ5#WC9@&fSp;fG&+Cp3nG(2rH$RGx#O-)K6%OOL%` z@J@^ry3VOQ|5o{+wnq6F13Qfq!RzPYwU^&te6@OkZn!)BXhg8FdI7U-bt8~qyXCP8 z{+vd7x4@>8mgl+qeZULMh&tExJX3TAcw69EUVZqg?_XX8J{&mZ&9U!!CM^{U;2hu> zDO}w1%u{3F1AxaGGik1;-$uC^_{&sY^aFglygEG`cqlkOG%q~EGXFxxpHg{FgU$lj z{B&m286%Z1`$cvyz;3zw*>1^e+a;Ye*rneKlD?SN)=7mm1HhZ+fu9B5*vAL*(ZD9C zI&d^u*FMUdw$+5E0dJRweiraXdEouoemAduQ#B&8KMnX`==-(7wZMl1$1=e6&$H)0 z0DKB?zw$W?d~zPRk%i|JfS2*w@9y@&G~g5S(9Z%sJ`cP<@VkNgoli{zeqSE?Yk^PA z13v(q^6%&WS;k8kcp9P%iC&_Eyb0*Rs_$_(Zp9cKC z$+5@eG}v4Vd>imsV=^U4ZRj94SLWsBwx`z+=t# zl#ippZv=j`*FN9mqy9ztm=3(SK%R$2`Wdj@^Uma!*grqOXQujDWcHKnP(J84(0;*n zuu-HP^Ss-4dc#idxv|e)D?)b{?3{ZLZI}EBd+hLYT!H+qPn%%tH0n53J5PfxgK;^Q zo=R}b*E5!00OwQK@N4S{**HG~-h=Ep?Z|ybw<_@0k?;P5>vG|ViORnt@bl2`M7X1` z4!fz`HX!|CXh%bF9c<|Fk=lvpd6dPl(;Yl)J6${cTvHmNb^*@;e!CYZ8*0le`vmVOyzkH z_oKXO(RdKj>40b|fhhOLsNlimbgwZ)PO&Hq*Fht3Z zxQd|~Mn@G#|G+q~9o8JVDl_3QbeO`p_3m9*TmfxDjQnSzr)0h)bP=V8C z01smXLPr9|*BmE}Qv&=>sECDa*HABmep4oQWhqgp3NE^Y`iOht?-$0S(WE)???t;N6Om`85%mVTudn%u+Lct!eBuBkdIz zNi{;_#ZnPkDU7GRPUo)71IrbOtzl?zXq_n|c>+ONik6~kfAoNk#_%aZBC2ag6ulEE)J1yglU}&{v zTnL6{T1KwC{>DNgx*{mumH$PV{7=f*tz+0ODDpK(ohs(3lIe=g6p~K50WQoGp$CPr zi2y{^YKvwzF7$NJSRz78g2rDN%bd#6ajwV51pW-r%bP47AXymw6)&k4 z78B@YUkKw*Nkpd4i}Ik<49zWO^uWb!p#`bN2@(3FnDMO$y;{t;4^>_aZ925NxUnP< znqJ&^IuQD{n6Wh&`lPt=N-*?lapS{a=&9ny^bqN8356alVeAQork60j35C8bZafn% zkN7Xc$vaCJi>z#1e`O^fDPb&$qw8Lve^H>^zLLhuf^&=DBeO=P{rtoC};e3&Df0i_! zNZCiihGKJrvY=wsRnc7{^gzJ)L4>ZD#u791kx8S5r2oG`5!FqNoaznj`+rvF_QN8C zuXwyn^#kSN%@KADy(bLBV>}a~ABFLqC?~hw0)jB6NbZuA6?BJKM{Xr3_kuztbCA~e%9-W4VOBaC%4(125e(v%<4F}Bp@(eoIJvR^vBKgaiEziK_Jkp3KQ=J4uH72ondjMK^5-i(B$}`EH~tO?8M9+Dn%S~CvQwi!t56$6~Uj;_7ztn}i$ArrX zbChOD#`|-K+cENWn(-`+1S&{VB@u?=1J?bpEe{i`);Q?PhX)XK~nx!~PtO=5QK^3piZM z;dTxWaCnTvvm9RJ(2x&Y;NB{SX&h#9n8jfy4*PRBn!{-vF5qx2hub+kz~M0t&vJN? zL!*|;c>xa7ILzcQi^EPF_UCXkhtoJ*z~NdBw{v)a!($wt?>TO!KY?xND+d%vg{atAds@JZbS*_;vcS*74 zlvL zDJ<(AwusM!4^Rrpj{J~N3%qV$7lzcEsJ{Khi zTB(HTpJ?Q(jS6&nX)NRBrhIjb!gE;e%=mtm+p-+yi+U_KW?4R&iMWm|%O@Hje~PCM z=v7$-MqGP!(TL@2mbE{lS=Rn8U|IX~1${my;?N5J}wLha-*8Z6C@do@G9H*bj za$S~(vOJaLuUYQMa;+QHMJJZ0vz*29t1M@*{58wE{;#rp3*%jHQWx@R8(eN>xiRDC zS@;c129ti$mS(isV7i0t0&t|z0%iUS7&hku_%d@+(Fs@_NQ6-K;L2VmYI$x~Ri)50-U)C$L}T>#(fz+mmIT-|12EW|nn+KWACzw_$f>U*~rg%R0Z6xgl(3e@?Kh{rj5b zHH^>Xh9aNtMck__b2S@akndQ$|9>H?kzLEBOvaIW84$Hc~?`OF*>z`q{F3Sb`sSAzQ zh>~w)S^L|EW$o|7ENg%Fu&n(p+h5t&-Lz#as}33#ByPl zH?pkLJIHbk#;>s4n&pNg)djm@tYcZ%-zk>MG5>d#+p*l@Hg%!>8NsslXEMv$pA{_Y z^v|-a({Gcb?CJC;v#i_mgDmU(>}C0H_GkC)>Y@$H#wc~6>-Qqdx<2dNp>SP)^H{FT z`p>hh^YbRlT0e2LA~s}xTb46e&S9B;ft+63$EdKF3XH=n>-O{!%Xc&0X{@@~!*cwc z>O$+6Wm)UjVOi^MW?AbG9;fslWqVgyF3fU)yVOMymak)3_s2#o>+)K}vQGaAmYtm# zJ5rVHRb^S1PbZd(Fg}E3UWOW*Sl0IUvaIbF8Lt$z{T3{1`$JjQ_U~a?+uzUf0j{4Z z6O}#P|K_o*cjy~g*5l8YENlOMj>2nAQuZ|e4wf~4I?LL>Wi0FVdo~K^Vse7UxH65| z|IvHyUzlH)^P^AZk{pf5i>qPMKi5?7p1tv8g-^0o7`-2fw)gyO#Vf^TPq56**l0aR z0Xl!ZSx#a8SeD;nx#R@41!y^$~*et(wxvwVQ%TUajoh`PvTxi`x^jT^7B{2Alx z7OD$fUeB_u`}0MX>oLFlB6X3(ay^#y`lK3HTxG_4u&nvRSgytRa+Y=aTUgfVpJ!Ry zKf7Eh>hd#JC|Q?R8q0}nzdFl${c(Dw0(5(?xJt>|-!3fc@>|OCMYcCO!xl=CVAD@k=c0^a`w3fVSU?WsMJFc@XO#io&DUljj)M>yfK0>+(+ApbTk$?qazn z+uz7?3d{Rg*81FDc^;p*UK$i9Rx{BrILg{_F zS%o*Tz3N-kg>IjdSk~pamgREHKge=A%U`ps+e>h(0(5y~u&l?kIxJ6N{hcfiV7c(q z>O$Agby0GCmhWNyE|zur$5}4R_?0NU&^85Vf6B6~)2qX>9^d-1T!Zb+kK(Uo`3U19 zpHUZDe{qz&pJnau8J2Z>zr?a0e?r@py;^L)KFhj3db8Y+@ue&`WBDY@dVVOhLjk&c z>aeWy-+;igjJ2%q9BbK0m@m$tUzo-d@d57dbDmSckdO+$->bqb6&TfC zR2P{n_hETB%hBs$eaBhXr@r&7{n2-zwXE+%YdLy7eXaBF)P2g4!|cyFmglgX^OCxF zm*qzL)kO!EXR&-E%hBhtCm7f5CHj2qALkRJl_9;~z1IHmTKlbQwFh?F3991CG+vsg z>-TH+Kg(f6Ua0oi_aV(M|FXi*U|yh?zO%3EN8jPsvcA)=<^R^-j+BNm(F$^V%zjNK zOFytGU(xq(#xh=s@#tU`B1~gwytcQB`K!5q=_d)azxs&+E$b%>w0y1n=qC`Wu_O9P z1l?bw{kwp2HH|N(YyUnxq!^DUsxbO~SM>hzo|B44za~VlYxR#grxZ`G|If0l*PHb} zP?vhEMBvHUXoGyOxQID+;6!?MOVf2;s4kNiZ*jhP?4e~aEf zM)%L?{&=nZ+eS`L`@cI%KEkq|&#tgsn*A&Esk+c|Cd=Ah3zi!(|K2G4;VAiWmb)?k zHA7tm|tH%R2q&{lGrPlUV<)DE;X5I@6rs z0_IiIxV}z^$G1;e|NEe#M9-hm^WV|06t6v7O!-<}=<%s)l-z=4y?%&3Pa4N~8Sbyq z=SR`?zxW%Ko-WT_EbIOe-QPcDT$k@fmi2fO-JYZScl3C0t@EpEomWMVCvDHG{B+{- zj6NS)#`sXiuQh%~pC|pz`gK`9`g|$6{r_*rmpb37gl^~b9%s1$%OA6>>m$1VUu*pN zf%SELAAU#~*8L&+d@K6=>c2fNEcTtUujkX&EbH-YGRr+Vf6?RpDaLjAN1r!cYkauY z_-X$~B|MSSj~@SKGOpLZ(dSvw=XufRhtcOnkFq`8pQF!*qQ|Fejn~oRY4rJ0)>@S@ zz5Y7P>FfS-t?@c~{ER-IDRx2G*X^+~%cHnF=beqjqsQmy@izMWWf|K`XM54-F?$%- z?IZg9<*lgnqtAbTVEsXCKRW0grt!Y`c0JyA`Cc*l*eZ-ZPr26kA3c8eeL&gKPbjfgm0x+TuXp}b7Zq5J9#5jrpEs;k#E#7Wh4t67 ze692U==1$+-H(VK|Ngi4C!*(@==mUe{J+-yhUoL<=<#qAmzSQ8qR*EvGOov$|Mq@C z^!PNK7WrsZ;!s85a#mI^W}eg{~~()j~?%@ zb^iX}-hYTbkB`1z5Ivv#U!T{{z4snacxGNBTYmVR1M{M+KiMVszV55%l(;ay3 zKD&rvluQ=Qi>BfS@TxR5j5PBG`;U@_QM5`LZk?M;6W@b=jdGRnnNCsWDl@Jfexwxg zY`o3m>+o#=;)s%K@ToYDncd#TpL;>x63O`lY{TwT1&ZtANy`{kISoH0xdcCj2tisi zPsyn(V-B|dX79}Dco0Jjw}RUci=Xzr4BCi4yBkK5F|mNT)hZ(Ji*k?k1NL;`FJZm+ zA2zPH6{dJ2qvb_mm_2H(ARA$dS}Lxz06wI2SqK7;&&!v68V;BnljUN@{(J?5Ckqih zZW5(eAU$yyqIOzqv4|go=*f7Sm)F69%tLwu%#!Bw)=zM80U-S962sDq`ciwZ^%Ir= z#D5m>9-{oc4pRNTui|pQ_3}*$eGkY7gpz$D{It4%7LODwo=Y2%2lG_{7M;0 zZ;rK-dE9DzEB-eavFU_JC#4tZ)+NZNtlI;IQ5R5FBwT;uYk)to8gE4QkdGdK`w~St z`QRR0eqnv}lydTJAhR3;!N=j8N@PNN@V>IjBC9KauhkqQefNVvE?8Zk!!MN~_GOJI z#ZoW51=ti;{p;{;Enw#&a8V4}Mk(49nk9vGHzuRsLCA-^xLH)BjGpAeE#*oA6JcUl z3*SUcr($oR3^P}MjO)_E`nW8fnS30@077eRhT*cpdN={q4!9qnAq2}}$c)4C*Q_V3 zOWO^DGCTzkjz|?Ob0YFfPph6pWR|c_p-bVnp$z;=l$S)hikVsdB_QpDRrMof@;xv= z|0mnX+&>M(&cX`gNP=qU50FCW^3pYBtmcQ9e$1Z2+JM3-4@{)a{q7Ng(z6fx6-aG^13wGLUQosS!;Ac;RSqkB@iJ)d zMp8Y#rkd6r7%|0HVEo~*WF=5z^rl_Wv>rc=r~)YDl6b2UNTo_unQ3WS9WH`U6JT?P z@I;kJGi^*O@C>4E0b`iMqLTI|*1@#w9}smf81o$#CC030smdQQt!b|yYCRa+G)v8H zfeq;G=5o`jmx(`pAicvNyst?@R;?l(Fs)5RnDjjezd0n?;uYyF)4KE!lL{g2Qk1?N z`(>w9q%)>f>Srch4?+uvB#TLrN(LdZXar(&B1_K#;a_oi zd%)_H&c=EH8{imI_}u}k(kRxy2iSeCKK<{uIW=IdAIzSw1h&q_^W6x1Ht;tYe-YR# zF8&5(Wp{QwVYf)U6r1nl#GRc!#f@F}o!gv%@@ygdY$ zzXz-jP?X{i#D{D|I4&3o>uaG5as$?vM?okFkiM9z8bcuAHC$Rj>p%6?{3#j%YfiW{ zo-rT=m%XmvNh4Swhk98`&>C4val~*C@6=>9`e!_!Xkxalwb9k65VTfepeCYNfsZFh z!}YJufN_S|IA~R<%~tmVf0H=mg0d<(or6~Xf^6pt;NM5u2@FU_J_iIXqbHNB1bn#` zZ_ca4bAs02_i#cLfK?-0wUu+taXCI{4bEZxHo$HmoSZcR5}zKlo;b?-!+_mRxY94Z z8kY-#*4zK#p<*_$g@nt@s^LqLmItlP+nKZ#gclr=8ongy@u1aV3X|Rg;fzC4!A@%j3wXH6bN`g?{At|3E=~U4AQsmBOl^i@{us1|+`-J{U~PzCGRX*815n6v)ZY)nI}XX2*q9j~vR>@O z%=2Jfc9=5937=6dwhCD{qc%i749v-Rs~S+{R*F_TT|?H|PuNOz5E?inRV0!$IAl#i z$COUp3_@Rrq~-=mx+i44hHfoM6F`{nkjRp^+$8k(fs?=E$wqDiq^HuN*7KkVXPsvL9rm!{tdrqPXsEz(f$D;yN9tXnKflbWp2G+<( zW^{QR4_h_R`Q^HQCa8-YI$iNrEZ#ZkqNf67 zVozDt_Gek=0{DWaNM}Y-NstaF@rq?_xxjS#FQd9K=$@*SNxW}a-wa@#o4_CJ=s1Pw z&Hgu*)f|gInTsi)E{j2r&c$Drm4mTJ>g)vn4IdrOMWHxr)k&s*4(gvV=+U|85NG{5 zigk(<#+en~QB6VZhUHFDRebk2YfcZ=X$StG7&}dh ziL%>!2iS1ahO7mI+=53BB$@hS*hqeRKkUmG1ucA z-AvpP%j`?d{{1+s8B|H7HR%0gsJQi*xs9gR58|v-r&>wJATw>r%JrK{wSsU-* zMcjI@b`w)Ba^!AaxdmBsuf znWw<|+F{DQt}LxU3vzaRK5NHfW*R9tsKQ$nt|xWLTn?KDm{}RDW)9OyUFOYDhM&x5 z)vL_(TR|Q1PdYPq=d*@lzapKT0oEdi>2dZ%I{Z46&w3gg70G-Wtd|_7$63kzHlH=N z3^P9f>w?3Kc2?4V&1X$t#Pl%sBq?~SQgG--Kr-!ks}RnGqzjo~WjRcbv-Ci-St8zA zc8Qri!5Zl>J7>pjE9o8J!fQ-_7Sz}NNjCzL*)QJO{17ug z0qc8*>2dZ=v~~0Lcxx_J0MZ2uLsC(^|IrL2b3wdSzXvmGg4Nn#MmsC%YvQfga#cjeulskGIw)G7~=-Z>(^b9%o0>?)~L>>+b!`+y&M_hv_L<$^0VTN=BEJ+4>Z$ z%MLTzSxLVbZynNx^B2d_2j2f^29jyo*4b`s_W8- z>fb(e@2Dgdx7k+P4XjuUTcvV%yG6my9I~zA-!iEQ2wfbK>kJh%(?7SZDzliL1L`av zx@zp{{jo$zdB@6!?5+oMH{QVqFhJ9&ujV5;{>zWAv9~tTf4M9*E;TlclVE?RHOL30 zA*)?}D2>5z-@Kgf>O>svnZ`$1QlnfQ4E$i|SURE5O{W*)b9@5{jJ!dyJWH!elhBH$nZB==j5um^qNg zp}}~pd8w5)IDQx(8F>G+1{GWh*$z`Pz31E#7+qLA(5@biT&lvbx{KDCZtfwYm@rB-u12>M>i2mH@l6Zfe;pD4uMggX@HXcFH0qyR z3bbYF$2TkV9w7HQXk5Rpqvd^xCjI)|Eid3&8sMTWJFAqFP#3-_AO1+DJiDD?JPV}{ z@cx8sKjck$M^lCV4CGG-{b$O;2(JKab)5vGH&!Drtchtj82-D&V%Q6(!IOJmUj^`B zzWn!&7>GC*nL`cd)6WS}?IC8jW@ zc0oF#RQvd%ufIwcQxkR|p6^+fx-a2LNFxf3A$93%S+Z1g!!wHeNd))(C~kG)PW=I6 zj7YvUzGyFWERozV{twVKrCG= zf2hnQS{GHnFs9WWjN1%PlogDZ)Et8{g(_MwhPZE-XnHX87{Va z$#AJXR))*%hh(_I-YmnF_Iom1ZC{e%TALno36)uISCrusc3l~6wA;$?NqdA0H`x!! z@G1K#8E&x;$Z)IujSMfQ2=s+enV(a}p;SX!cYuFb@FFm#nOy^>LM=vCOZX!ZHxubIe&5F z-+wC)8%*ZSH_cA@TGR0|0kRz~5&W%K)v>u#rBpE|BgC$wv)iCt`Oy zNc}PGf%M2<96geZ90PKSP@0I05;DR5)?eQtjsGC}Cr4311FiNL5JWf)CjodXXI^qu zhgf^CiW234)pYQd$QYX*VI5fqyfv`S4*nYHm#144>33U+x8jJBvN#g>T@FX4p*WMQ z&(Q28=ON(B9geh9;`N_k=RT{_YS`EYY>&p(t&kG50Z5-|)j$go?*RKy5J9mDY8+Zf?OWgoSx%5a(8QijXzPBL6!kC)*}d$kN#*?VQU+WuOGYitvH zkWksRc5xX#Za0$Qdb_s_H`o(oxY2%0hELfCWw_P;PKMj;BurVMvfJ${GTdo*km0j7 zofL%1?y_gg@HzW&89r~nB*Pcv!y2KoyY0(T-ebRlX(?28ul<1xU$lRf;Xb?QqZI#= zeZ36#+k<5IvOPtHuh?s4_?o>>h6n94GJM_sONNK+(#uHy4ZEof58K^j_@;fg43F54 z%J40Fw+xTkAIk7;`zIN`W9MH^`tR6PW%#b$fy0q9JZ3+@;U*crXTQPW*D^eAhgOjO zak~=23T17Pa)Z1`5Gf<%MShVoS6-A9iIkTLWlM`hD(nhn(?ueca)q)PB9V%>LfMKU zQK?rFiAue)NF?|^EBZv zkh=V!S=vaV+g9c9d_-C{9!^5cWlb`YXxm)wX58#YG-(vWvc*+ZJ|wNX9i#!mT3HQy zPmr1ri7s5Gkwj+}gu}W{j{t`B0H&J0$W;P=Odp^Qep_3Tw;Ps{9@& z(rZZ0NPX!LpzB0Bt<1s{pR|`^@GQlrzu}*p5b-XNWmzXJ*#iglgfcr?m=NS4XKFK@;YT_^=MQnkbuZ?i$p?U>j-QAm z`kPcP?@DiFWiJuwf04HY%F14g(#9-B9^FR@#8nEivNs6pSVIM`jf7QYZxU8*Q&sls zgr6jJ`QfST=Y`cVpep;UCUIpS5Ek8UCXG-9ud4DvRrWi=s=U`QJ_e~Wk?6vkh^*{W z!aB1=BrBT=ge&`NVg2%=D!+$`M30YgWiJ)!G)RXjURCyY z!WuEjFeqXlk!4w{%KkxE!|zdLcShS$#<;RC3F~!Olg4Ca|01lX+o_0rs7^(el}(jq zgfeQ_6;N5Bj7+<>3~SoWWLV4YAj3NL_?3j$wP(n%p8c>4ueVpquz_7vh7Ij|nQ%VMqIB8Qx&`li`i_Z8Gd+|0%=H_Lmf1SJ$?%h!0&?&%R+bh1c7|5n3PpjCnja z^-C0jbrUM8M2Bj$9ccFJ85B~!(e|!NhH-OfEQ&~!7#9s7zazsL_UAI3Y5yw2 z`|U#O$lh%GIvLKfo5=7%dyow0+oNUpussW5l_4dO<$`lW0-aK)($ky;7l{0{e@?nu z6vB(b`u410JXRTh{fxKR3nlR>u8dTAgs%|TQ-@7Ss}z&y;fI31V>CU8?Kq-uCDH+S zWF+l*50GhE3nnQ?$2m|cZJi6w7x`&IOnt9Ec#A}S+ViK@tqNhAh@%_?ovnH^>oQJj zE7Y);1C|fURj5}&o^06kFO(G;7TSqGJ+@k*ZZSF1*u|27G%9=)NL;#sfw4l^h$%x{2!ncTT^L^@t{nPq|FpReh=Dkv*hO(gl39-X#bT) zn8`F(8sQ6+l~Cm_b`R)>D&K5(lwnu3im%+;9x3G^_Wd#(Zm*T$2>W@2T|X|4Ef11& zW^(5o$mm+L2F^6$yEE`hj23f7*LPn+5tz>v-Ir6FXWD8h}!s8KaB&-YBeXbnkvvo=USj)l%5xh#=1NT7AF8m?_DHm%G zxmDr92uNNhW_3VB`{Gp06{=PW+UHSh6{=Pa+GlXlWuS>$VwLh&tBFlnfuK_%QAlwF1H%I*7=caZ zkslO1AJ8HPmgi-G9j1v?NqGy99fVQ>_~%Xo9V4*EmMH~-#n8CPzu?!~72OC|0=ej| zv;+#wOl*;f3|?pnmD%R>v$)~@0RB1?1VI<-T#2r3>(}pgi6Ih4Q&{iz>o-6~2wV+P zP?`?vCyQS=aoQ%Y&0C#B!(s+2|`E-Iz&I;GL(|2U1}x4nT3EVR}QQD)D> ztUMAU*F6T?I8Nh=omR=`T&5yeX#Hn_vfya{Bjf%yj9KErFYpKKg#&L3dwXreXm~CK zMlXwus+eBHdhziq5U;Q}+H5%YC&)ju+;CA4(l0Efy!Iuei=sH?K!hit1{xqzprZs&de5qE;Flys%n(NUrYD>&At*uW0Ylrx*8WWTcBjGPHm10`!D}gW) z;9Ze~ezJR{nbz;SF_2Sk``u1GqJn9)hfgvlp=S{oscu^1#{+)`2KG8eo2p?&ZQR?r8z$cjrH5(YlkBI)+fo`F>I562Pn4j{qLG&TNR~XN$rZ0|WPk3(<+-Y|%Ie()4hlSHLq8NH5Sj96E<`6}g~?>Yzr;$QqScyKv~} zEMO%OUtVLP&f}zff|NUiL-(Epp)tTVnxJMw)tsA$OVHPCP@6RTbq|LYJ*}8rzdggD z=>s?>FtQ9x_6>&$byee*SOk;H$!ulvNmcLgaH#E3)_4}!9>S&1b7VmT#)d;9UPh9~ z0DP=Lkx3Tj$oV&LXE^@Y$6#Cn`d1{Q)Q<&_(D-nCsq^?RAe2%myrp@S?NVK_{tHY9 z$M?#>3J6$}DBMJo3QP>gmne(L0$2}?8=1Q?_Xq9?7c7bih6-y8pz$tjhX79w7u=Gn z;01t|y6|8soO{CwmmXGy^9-Qp2$p3t=>V$FFv2tjrIy7U6etzGjwXR-Zx%#Ou~q3; z4_lSOnDyMP${i?q@hfcnC6htlb+#%8ivubIl~Q<{WvE+MCR}e-KE;HPNwMO35L!f% z^j5|00>aH2(_58ykXV)5P5`1M{hQarVZEfM<4I>pe-VdYW1;*Q-l86*wF6h~lAi2@ z35>m@uQ5!ie;J`JNc36K9~+I8Hr!E(QPL_!XGy>DXH2_@u1ciFR2HC$IUs!@OzV_kyzC`aorz`2 zGl;23D(tO1*xj@VvfLw3GDgu~mtg%G?wqiw5rn5Ulh7k^N`2gmpiUF+89xKphFzuv zgkDmJv+t+~p|=zYq?1m#uNjwxyFH+0;BDSW`BumvGkH92<{`GFM#QZWZc+}4Bh8mE z_}l_$pab_K`1X!B0v>C2XpJgzpdkbq;Zw+&MGYd{J>N6;!tv3k$?8qZ8CX@+;7(V5C=qv{ahpBZWo?s))|Bu0FVL0Qc+BH;RWVL z{qPtppfV0T-GvvMUtx@?4X9-VtV|5MWP82D!FHn3YJ);yZF09vn zRm4+>JmVNlVHGY92kr!8io@FMrczf}v(ZEs0bAqXviOx3 z_3^zb47ASzd(FW~-|K2Cd_M`3)M*gTJ0!}AP$^wRWVpSs24n5}7p~*bO=NymW!+L0 zBW<{|NPd{wNapWFA$3K%-(z!$m>OU=)EYvSz&T6~;a>QTT9#ql1gxKflZGNCyon`Y zc(Aa(%s_H?ficZtNh@+4N?qIS$zd8Lvzr{Gjxb%=-P&SDLKi8}lo#ZPyr4YD3u;61 z;&y%U5-x5gLwI&J9)%a)iZe-AqFv?RP!mNf0aMU(!g}sC1rjPOt!PO5a_`Pfe7FH=gDec@42gZe?3xXJ*IV>wZA$;ydsz;%z=pEv~i%ab`;2 z9};2o!-9BAOuRyb6gor-KPgI3FB4%xmCm2SYC8>44H47c(V;6=q_d{*6QTsws|XX2 zAQQt%dBR~t-HDhvc&o&uBK?{wYtxxfc%>*RXNEBGly-U3T7C;yI}o$a(SDm;RT*ty zS}7QSgm@q5rw-$NVki@hO)FzK7*_xWn`#Hhgi5=VbhEW-UDpwNMG&exB(fq&sumTq zy=i@f47CKSM+~N{E|qd`(;7^DVH9Xn{z+y3Mw!+&EEL6JFg7@>o^7>%2{u*edeb_A zwW!z&#_O7;IEo^RQ|Rk*;SD0QA60_ciuzq8b$ic-}VoTrT7vjQw1J)PmY;7K}g@j9M3Lh4* z#5S(98|&cm zt8U?q0V@Yf88HX(iwL8<3u-=wBJ2%VH84brrvUDWAPD&z%<>Cy;g15=4TZpZ7mSmd zWymkYg})3~pUz|#egyV2;i?MgJ8j_$0jtG5e2SBVvMz$R!b{K>=Hgp~W_%0Nl@VQ+ zAlJhb`UYEgji~h^^#J*$w{U@=)nu|_iawwZk5Zwp$%P*i*T3Palnq(~KT}Mx0Q8ll zLJo2{lz$&8Rf5)>If&l@a9<>WzVa4s9<(mK!0Da@ewH|{tCDkb&|0>P6Z#!^5L1XJ zp}+uqEiT+QXx)o(l(H&HgOEWa)gmQ6B4}+r%to35%hpB=`L(z3xS(|c8*ZuJ7uaA| z{~Ss_JT++jyqNW;0GsLR)1&C&`9W(7R{wHszXsR_S6||f1g#%`##8!KKKp?kboAvH zy25LNR{Gn(K0^FgT9?}jed8;1keFuAn{H{y*5K_S8CsF~H)dZtF zea$C+dZ=)J9!eSk>Y!mEM<3ZD<@bTY`109%wV62tth*waGC9R88M0OfnfWkSk3}-& zAgP#jLRP^t%-jRkJCRIx(3M{S3NH#-S=*R?9@NVbboCXW@V1au`WGhUZ-oUd-m2Zm z9MOmRl0o?OkX2$filsIfO&u0ZA?k~x;SWOAqU%BE3b3ap7zx{GoT(SKI+lgy(TJa> zG1FY_%)E%<*8&j>W8gJD4AatwIxcb+rzx9mI47 z1oc}L1Dd}G=DD!d>rG}J2TPTxT)+(|iJXVO4_iHtGvNm!TzrD+>wDxm{8!k@co&v~ z*t#U)t@2LmO`|;hGDG~9(29ZVa7Ey?9S#*Gb9RUBe}_38f%lH!2uUop_Z6g;Y*`oT z;rs`L`y7&7SILF3B9*bMgwAw0KO+F%do>}ad0I*zIX#4>q}#}d=*;6ryeG`Zg*b@3v2 zui$MKf-~-h=3HTbA0YkkPl^ud?4pgh|hNf9x zu(H7D;IO0_XG1d?4cgt%RLifJ;!e;fY87`w^Wyyu8ylJ(m@$YX*5TtxV%Md_oej;p zEo|)-U~dpEdx5i|+4URie-7*$N8j1dJV=$`Y-pb7uSg>42CRSaR@R&i%>tK=4Nd>= z6-hJ!vn8>mZ_bA1bS7Kt18flC(l=*AbIWwrzZcjHS6^>vK6{USUkz-%i|Y-|#E%$% z3D|2ct~WGWF&tAS#3%Up(#7?LhW@Ka;(q}PV8Out>kZBKE7d?CN&ze9;(9~#aT4RS z*l6kC&W7gWl1Tej#1AHn@-9accSDnbMkpo$oEt$9s(sNfe9(qwF6L&j7L1LWRDj~r4V2e};dhGxh?#7_q}Ka!v~G@oNNNgj%g_}D=l zw=ngFW*xF36FLI?Byrq?0&>HG4bAUgvY{VA_*ok=6pjr|p(oi$QYSPGytz2#h6Nj% z($iSK2C%w>s}`*{G#5T*{hNSwbM^Ix=3S&OA5*^r*j=u^-q1W%6Eg^w4&q^8OB{V? zLvst3s$vV`pVzwFR`iDE{8kW-0{p-sWXZvbzPwKxnufoF@IAoGn&50`-v5J#l7!AU zT*q6LvK)P6i*zzXo^f_`W{dZM$p|2P4ZYKeG0-45hOv`ayK;Df5FFK7c5%vR{5qW#NE)`R~Urr z09MficSDm1qS+kroi(Ob4XPXK4b97y!5Rj}*a()pp`qv1%{c&F@-CU`@09OE914(8t=1aHQLYR-B?Q}=yUer9Q4 z)io}QPN;g;8=7jDnAsMr94b>7c$>8_Vj53MYT$#g`C9^t z4Dr1*Cg_PR`C-fz1B}3@Ve`Yg4C6)Mcj7&fcumO0TrtoHd=WNZw-x#bkVhS~)ho@B z_z&R(`8~cst3NA4{85Q<0V5m_rh4Y$?Qn6KWWt{fK>00f6+Ht7J_G(0S!+va)s~pB ztlifG`xEgts#;HjdMjzxL0*em)|%;zP60C0K?5yXz;0>F8dMLB0^W%=z&1E|g2c;P)*tr* z+l%}-ez-XFO7#bl6zo_+hrPDaGo#Ugk~VN!p=^-&3mXU_4DO>o&od*qK|7x%pzPr zv=M5Fd&^Wr;sOZ2Mw0YH8}n!$h(o&4Hs7}nQx~Z+<~$&JXoEK0&O;kCn>!C}+>aGS z1t@pLTP&oshT_V7XoKv835@;F#=4nGeOZLMAkpWcjm9Uj>T}qXv`W!=Xk%PKG&@9p zPS7$c4(FkbrOC?Cs}AHmv_WHo^Uwx4T{H1+^*qMfi`eHO|MH;?qRAnu8Dc7u#JQGB z9Qn_KHFFB9r#)(8ni=O+ROLfVqvntgl=Y=(c29dr()wz$E(bhUM-71T9!AsML{WrOk%X3Q#8pevx4Pw8yjC45PmTy+V)?K8T#@r#-67@I387XDBsf z#%d79dD^4cDtsv(R<@I+H)Qhsw8!IbU>SticQqo8yYM`7>|X4E0R7;=r(Jk~c{BR4 zi8S-$E$xa=U3jtCK@q!hRYVl^d!DuT%sC0Ze((D~zu%c%*0a{`Yp=a$X3r7QBrX4Gk89C* zzau(4#*manGs1t`qYilUL2KaCX_CdB_Lx1{vPwbgSB0*H_)mKzL4T?VK+Nz_;aDno z+T)(Luonv2bv|9H-+$U;%6M#pgZ7wDCx3ia@wCSiJ)sK#*z1E>6s1%0p7z+W!m_>r zfE$Za6}qwfr#&u1|A;;9asN#0(;}u81{L=tg+u8Y@SgVgc)4YD0d0U!Cx-_4PkY>b z4wxqaG0R7Z6nWZ%iX%3X!&I+5y7b0nZbMu?Lk(wN`zl0cKA!jy*qwTZu{HH%6TYVJ z+|&#HEyZqQGmtW$D&`F%hd1Ohw-zU@gXqj(^j#z?`y+@}na?H`VXdLXJQpYCg*Y)U z7IPV<#q2Dm@)0qNw6eGVrgL+SFXn&FP0i~(Fe)hvJ*EaAy_Nu9EQE1 z9*2~z_}dS2EVUL|9o(_QOr_pN{0AOQ(Pw4d@CBGtgS9A21)8)}mfHj?{?jy4sqv^` z{OxTNCmSGcUNC15vY`SwAA+}e(D}7cgH#J3+s4pKJA+=slYR3&2$kSeQ1lam)LFPp z^3j10R)gLy==4SZeu-oBGSIFhU5cXVU4qVv26+D+c~@&dTkp~Ji6nsmOr#fX_F{S# zAuj^3%L7@O-aqK<09}N93fgxb-3Y16at+0O&>IZML2=XZms(KtSy>!oZbq>E!x(%j zP_PD}5kY6_*(Tji0QDjZGp|_!=TYvspfjwGk&AaHtaAur?HUk2W#LW=I+44Kq$L2X zs3wV9PwqKEXK`&)^BVwolAxHR*a#1^q{YRnkVal&B=HmAbVo~yWXm8ZUV%1|(ULH+ z%4neyGNVNd7pu5MEg~^m8WKrSx-*NNQ@rYGQZZV3kxF6l)ZzaIm7`@6sT2^W;flMR zBritGQV{&nLb)wAn72a z9Kqk-&F<}wmIgaOJBfIn8z(eHUu?99Dd&$CzDz~BYJp2zvh1fgf3$R(0-8Tso;#>P z>MS59#n9ep(XzeK@-@^UL25ZJl|I@ZEtA@#1nfNzg7z5cQWSr*bOK%0xNm^A*P~Y( zEuT*{LXHCPiwBC0miJHq5t51u&BtHYi5vnH@J7qY{sz<*fHHzu3yQwjX!#SN*l4-o z5|i#UM9(7&Gp||v(J})Txg>r)0JjkolN<0x%k0OEq{jhxwwfewwET9+)cigGKCLQA zMvHWjFcZse29ut1Yf}{c@8(lNz4??~Gsa(hOo5dHtpdFMK$G!P{ANee(8*`|G)xKQ z5GI{m?D_0-<}&RY6IV0sdWSKW-`@7qYrK4{Zd)6ENsl*0tm5@pM2O56;$?0EpUAuj zbCi|+!x>uU(Kwk67sq5yS!87LIWsG}YhS=KDiY_TXXGyV1b6@YC-4w?7P~d#PxawisJQ8h8NuEMf9kHvNoaeOzL_Dk##P(@43 z%B_pyXTB9m{TT)%z+(vhCTzeXHvm!|9*idp`-b)fpyxqG8CzK_qb&25AjT{rrA*R| zQnC>1UKI?D59z#arP#kIcdM_kbC7XuAT;BMW&Ny$&lchSQZ>k3K&~EQC&egk2w1s) zeSkV^5xN*lI3}GvEx!Jx&dOV1@q^<<$%R>J_ zMYC7%4K@GNwOFsPQWh*mvDODdKVguwT32{L2K>?Vcda7rFHMs&uQ6`K+Rpzv@c()k}!=`4gEn~PNF2~yC`WIOJx?LtPFdey zXISzQTw8w+PQPlK8_7dC4uo!lMcNKS>q~HnE|K>t8KZcyav#AZV_qopIbE*>=bEzo zqpC~!85;!|I|8BP%QV|0kL~}^rn!912uZK`LD$YIPsTs$%al--PWs3Tn(ctc_J63< z+>_s;c3uh1xmwpw7`6C!wKHq%MNo^gL!2VI03+jtf#6;L!k3C>qZS#`7YXXo)9AR2 zo|Tv5nLJECBs+< zMyy#M<>(u_0x~$4_k#?nNe0v_JCRQAq5lZvP9#c=ILm`jwW$U#Gb^uOhpeK=1 z>Q8uCsnQKauuO(kr(UhT%a3CRGkH;{{w=ueN&bKL(ZXVS-b(rHN}bSfSO@GdHD{SJ zSLt+;kYtb1vDsRQvMn#Vgd(K_bbLJ95UG+~r$I^{`SE$Vj z-Pr3ru77H5EBB2x(vL2M&bx0nj=~0)ypHG!7?f(#B&g&`p800 ztP~9CK_e!pwO+l0?Zf;m<#LX`QpuP6a#Z)z^KtnL$)537G1kOIZs$3$47y}NR{H0O z9P{pxR1m&M5jl%h!Sx7z?VQ^kdtsoCz~4^ZfW(B};rwSoK5AD)wJ~rJ$V>2-{=qzH zEPYn6W&kzDYAb$VGt)~^iN6Cod?l26dYVd?!fsHHV|q!?RL*wLUd7*T#pHyzQEmJP z#5`rQR7XJkFaCaK)JWEzRwu%9otmBip4uwJ($z$9Mb(g|h0ZwR0?>a6jp>OuA}P+x zr!FE6j@;$y10~;g11oStsqizmP~5|=K0xwwS05nxg}XrFzjS$!FR+>iLW>(DKlcgp`7)!Ap z{AD=@;FnDD2qP<0_jgyH-4;}?KD#ZXT%O$)N@|+S{m4*Kvt({1cKZpHr;<9kGw0#{ zQVD83X|VHY5#k!cmT88+{T+s%Aq{Z~ZUw0aq6c^+^{dcZk#(dq_8{mJL7VB(^|q^g zn=z?dp4ih3Zh`Jf8sj|nw8p6$0lt$Ae?pd`&yr8&Bz4c@PNI@;8YY$L18Ow)c;{wx zn+E|^dvN*4=cdn+PxB=8$cvJ@0S^yKn(BNx$|Pr_tm*hm(G-1Z1+=q1MJK6?evK=S zCjcc~;5>gR$Zde>>2t7b!e%w#15!y#oKGLr64hA%O(Kvb(PNQ^s90eh9+mxUKQN+o zw*ld`E?drPUGe`@>&ogp`vMs8szphZAIuBUZKB;x#;sMX!#uaBMI|Dw+-qP4w3v|b zS~p9M01kswpGj5z=VPEuPTNt48y}37gQ z3(TVbq|Rlhy$GG$>e=lh5ZsJ_TmJ%Y_b4lnCY#fC;s-EW+`56hc|#zv0JD5O{Outd zz}Q-74FXQT1E6(6d@qltWTB_`g9-yBL&pN3_k&vFYf|XhM5>v%%p=PJD7i`e?o1QyOq~CgBSs;8)Lp_5$gWIZelx(?)ub`z5TGl`!pv(Hz0btYv7zB4@ihRfCnzRY?+1;;2i_JLNiPEM zRy9eo4?8K~92#vTeF4Ca)g;MQINmQiuM-|VV=fZW9n$gF%_EZrJ4G<~5~d}T$qF-9 zJx{yUbf3vEmi1OWx{s`YV%?{49t55RVUs9uCCtEB_v!L4&@Mv!5|5^2h3R*nJF0Y_ zU!xkSHUa)PSyoe=-+fk8={|EYZ4snC#O0um_PbAV2F?xwzxoX{>q0Mce)l9Dz<$=t0BDzm1=ptksXy%@&8vb^59AKVc1g4P1lS6A9JG*Bfkc780WI9 zD8^VScU&8r%f$ara~YTER`#XMw3s*J#1x_qy(v-r|0G6KefDt}YRnA}KJjw1CoVVQ z|0gl8GdJB{PJ z4<+eV`#7d=wF1$%DDMF&P2hSZeVs_BPr=i(du_O;`fYSh^Bh zhXWbQ#j;++dB#$CnK6Ehu~hz~2^(YS7xjSIA6hRqs||NS8-(~#9!(7=z@OD#IST;aD7yQQMye|SUrLs<1T8noU=%$q zXwN8me~SjGM}gepqy1TJ!kd;g4g6|1XnRSQ%=xq0?l+JVM608?{O-}K&1%*kMhG9W z&d1*f@r`eL(M+%07oMc3z>bgu{KHnK4D zn#G^h1`jZaKMugN1hKvhNN$qBD0;ZFk+cthPpe7tX0=DIG?GpN;4H2x$(z+)fThFc zQ*{7n=z*-PdWT^i*9>&Lhs`4<61#}ZaeUd&3bU4b)GdelTrv(2sL!*m@O0#0XVPlK z&4;*)DRLY}j;}uFL+7d$h`!w;sdI#G)aSW2=#PN*v`4S1K4qK6Q=gyL)Hrnz;BUw< z8?qFAzWS6qL!SDSw+}q^`ARyD$N^LpT#h%v@Yme*`RY^l`@F?u^AwZZAV9{EfkjjF z{e$`(|2oK*15@d9ux!HStItDUYKdwiK#vm0lHl_T=ZjWs`vMp~M)Y_1`?q{VD>7E! zSkk$X3X;1^d3-t%x_8+$FuQ1;Ec|`u7~0C?6N=EiKeDyU0U8nylvEgN9@CaGODeMU z;=%C)V+KyjJkK;2<^5p?mFZ0!Oj-BxcIua)>Bw447aRDkd}V9)ziHL zM&Z^WW911~*`M=tZ|+K?OO5XBQ)$9R_udTFc-`CRArm&b_v5p5*wejyUNoGCynDKr zkDYqD_fE8lr+e>%KYJMz7Ip7jG8o;PFw*E=?nA~s7}0aqRYv!2fyZA_uqN^FkGCNG zWF{nX>~6;2{uX01rhDsj0__dN@AYWvI03%y&6)y$uX{(mqLJ!Pz=KO5?hiqGx;H9l zPxlVEO@mZZAWM9-uY2Ex8i{Ox{QjVwLAqql*S-7up(2rxngQAc9=)3GePpWu0Nm?= z^ooL=LbUDl3KS~LD(Tq-SlQ1AERE|v^2}bW`^*{*f!{;e&lETdEV1qrDh4eId#ncj zLQ@wJ;CG*-u>knpr?9(5sxE++lVy>hz3!s~?RB5Axf-O-1(G+QG}`YzHoDg`@T=vZ zRgx~5^SjSex9Y8I^&n_lJbJb6bIX5>klg_6^+2)i^BOj%YeM8`x4AK zQVll%u%?Sh;->rAYm+}9t3 z_PQ-JA9X?PSiBUFJ6^*5-{p`fdt|xqVk`pkHufb58R$W{I@9kmr4*b2GvVVv=aW-!@O$yz7uHG{W*7(tQ zyic&H8J{6T+;*3`s<5nPI25uD2Q!2xMEHTVga|)&)-2+DxexJN8#hytx(ndg&cJDK zg3foK0Pq=|ROjA%;ixe8Dx2A%@)}&PBEHM9iLS<~~ePv)X}f2Sm<+q1YFTv?>ko1C{)gm^-r}Hds0* z$d2}TbEnL-T6K{?&~gp{)2eG|4q%f~Ta^cv^~HXl&(kwm?r~_IUJ{5{&T?Q{ofcZB zc?JX?du6K!5(D@Hft6slr1kpd4Maq)8SJ$92B_ z3I3+J%)WC!)Kf{bd{&in`gicRNv}tI&T;tLX0)U~WitHjGCI>AItYLJ%nJH%*#Lis z43R$oy0)Za<`l;NPC1=2=Fop=IQ*rVm(gE85&nvFN%tFc){;It-G|ZKCAaDP9C{7@ zRr$o=BLoQ%mOjkE?;J!Gw9e7F3r~kXSLdh}irP9)=i+;mtaZMm+=rZJgRwu$7O-l5 z|1D~{Q6ObL;u0bk<9fYlVcv2PQ(4=~7zT)VM5WhT1^f^@k#+bmF}#5DNjQ(Hl%mcc zkFe9}62kA!X-MG|^x0NZQn=0a1!HA{ws0L|r-?Xzlg`Ax&De9(SYCdiPRFJ%`2(?S z0?9l@xhtb%nPh)fa$(`D$K+04tD%8p_U6&VGBP^9H&3t1~5FR z%Z&W^H?RSvm~mQl4J7fKdh!7}U7%R09#;)mz316U{M?={%Y6 z;^+4id$m=#c@m-)NVQL5tmKP6G#V?QFoJ&E>QSj{ex)x4&NB^ zXMX^CsxH^_9>7Yk*%;C5b*&s?G!s+eV~LP@5Kj7m=Kx!)xp}Wv!&qTf`bTV#QGo(# z3f{ksyA@mb8Afia+4ZP6cuQAuWfi{oJz{rdF_t%YtLL@w-d&)-RmgM7dE@sK`gT^< zCCS{;`3R zu#P^5kUqz7;a^50RubwONXltrwMGw}JPXrv8%tVo@)np4+8>I<`w-4~V$$bVs1Q1XA73(-G((fgJa?%?NaqKyA0l2n0Gw zpppAkPXtOO(9%8D8-dOe=-}=-8-XqoD07eWK%h(l74B&m7#+JyV6gkITM+0Wfe~*1 z4G8qintrEcjdvHL#yg&tc^(4O+%rk3kX+Ap`Ic?RJ`$MkvVN*aJEP%8t-H8(sI6dVm1eUs6C}3n#5(KPtTTe$|boNS6 zZgZPwA}}WR4g~IY&xfw=c$Q>mz3U!FU~B@L`cbzY#$m^CQ4XH1Zij^kjF-GU@7Ao1 zz{JQ}2zbeI#-bTIInpHQJes|5~chMGogQDLR@ZUEw9JFzQV=7S$Nj0dDoWtR8p9Pz7%Iy19JqQ*);*3s!# z_C=tz5-mN47+*mv22px;==6r)0MZ3&_W>Z;-=8g&juvZ=4e z$v|9VC)S3``Wi!&XkHCSf1DL+2c-S^RY%4Cp(`!D30q>A7Qc!#=^(<*APPx^m10xG zW;^jjeVqnB23Z}N&V7T@Nm>@aUsx@xN(82Sl?c>!JMkb~W|!ZQjAd7Y(tqj?&{!?1 z*av6ZKs{&{JkE z6jt@>VjSv!JDe?Q{!FVwXGa3=AuJj?Cm3aWpe6!Q2?X86O%ZS<5OLE|5lECkqFbXe z0!b1`b>D}1(>YlJneK_#5YTf$j{9>P1X6`k)6Kjafiwx!cJ~}cATyChQX_Xn8Ui&^ z*r!`s;X>rF@XDu9ngdeMeJqTw&u0NFogy`JoUvjnN$(P?pzz=(&}T}e@_V1L>e04T z;p$4z#|S^a16rLwoe!Ru4%cmc76H=M;)@@AOtG*@M_`|m9P%5Yv9zr8Z%_xN7b!8D zZue>Qp#hlZ^dE^>sKi#_7e_U>APTMfK>I*4$&Zl6Wm4$r>UGdJDY3c!sKRU1;boTr z@R$;#tKhbH;l?QYJ_~?rBi25kL1z*u(T6b;}PRJ8;dY|_H%O{rk|>5)R^Ph#8AWlUqoD;PvEFnti*cd z6Ng%e?u=KEwoQrA%!d$TG}9SfjQY~&l~~OW{tX}+;ipogk=eK=n5&L?1d~HF!f$Iv zBWK~7V6Hl5H4ISaLMW&%IeJBXQw99FdKKMkDg1eQ<-8ufwoATVEf4t)Yro>0YoTbI zw8`){&0S0XZ5!Zkmb;DqKZt3byNCX~V80y~B6@j4=IMeNl9?)&H1cteXVD5AqBZ1-W#}qJ50wdhz3`~%~NVf&0O_IPU z_fATiB7xCvCrXSwtHE+R=>{f&n>Ha?IfzYga{u%4f9#vXoS!DCdf4^*^kQRSAu+cGR!ZT zMkD;-X;dPzyJ0>|?Ga5K1cLkV)4120D2o)!efSy#l2W)Vy|7y+dD+uC`^eZ%G>0gK>L9y3o^! zIw=AMR}oN8#nJz&psh-#^l_~BYzAXc=M&hN{Vx6x@&szTF4UuMpKsb6it9+EmM zymKG?&xne+njBitt5L)*(v@-#qhn3hu6_~j?llvRcJ8b2Hy3|2@@5kb&ky9vC#j>6 z%WzGI3`W+%??6g(8M`uqenL=2TM7W>1TZEc@>@RnYA9Y40=)7Qno)^wF2JZ<6C&%1 ziC@)})F*LGi14GC(Fnh!8Wq2@7L{^Z13l5agejnR%e=|=5IG)ASNQa2pxz}_eidT% zVvwIRwF>Ju2DrVf6Zy)$Ch?1>R$)Vu+N3kUPnw!W-A-9|q>=kgKX#k?vpG@=oL-6I z;OA__FQ_p9#4>oq&_N%fY!Jxx;SKNyCp-{s5R)%ZsN5IjyGV%xuMnm1kAo~|W z(o+0wd0s+VS%!rMC5Kj^N2xUc@Xn5a@I**o2un-h$*O!eKy3%<#TdDm24-A1#YUrgbEQ5zQm~BvMqa2@!s>DalB!_yYPC8T+ghaKoX;JO^7fi%ro?xN0tg?0r4p8hWKWDliW*wehz}vhrRl!?_<9e z{1<`r=-^el+dT%x7kp+p>sy{SnwgH>m_8ZN2kYZ5kVj_?{em)wS%#=|&1i(@&Y!XB zap;1mTl4^K$vlkiR88RmJ82@xLU7v`CS(FkJ`A`6G}dd6Zz^9d;|O|D=BuVFsRl@O7my?Cf!G?F=j zS4Ko5JTWgCnIKm_codB^z%?PlqtU_}0dFqeXk^AH5*eKk;Yn6u9+4J}3_~?Gmk8V% zfFHL8a7~Etq^a=Nk}{8t3-g?@XykrDlNOD1>_Z$MF$weVfN10>BBGJAp<$X!bX2Yh zQkP*KWZFE!lij0{(}dGn2+sb(`K^qe3YMM^EJh=wB}DkFL72}$1}{+MleB5hL>lG zL?t#M!pCO9d`c-A87Qgq!K*MI>WK<1A;S0k!pR%R%@+Zi%QYJL9R37z<=cW`zIvDt z;g^=fo#BnjB$5!}$DtDqrTRs3?bW2x0U)#WI{Gtd|O4bTqa=R$Jk1rK5Ll!*yr zSI)>>j5PeE|9r#uW5!yK+SBapPv=QN}dROm^kqfk`WC6}&FuD=e$%3v`@Xm;kRh zB`-XNMC3eY@&Xl$%5ThbQ&@}qrE3S}=7A*sbB{=JKHe4YKoKkjtfR>|o#a+o9DCA|@{oCiFS6W=gN=1~u$7iI5_j^@wEV?{@Z^)KmBDur zb!9-t1b$nz<_%II(-5A`a06W<;}^hRVyXlxr+H)!i^=m=J~QdWipgVAq?lCRx|owv z>DR^Nh)m-NEcc(1!&|`VKQ` z`VI_T{+?IbRjdC*taOUVy?Cmja{Z$E?t8$mRN1r#?aGS!FJTa-RC?jTUD<#s_o_5n zmPp}cc|D8bZqqWYZ4e36xmL=JDuYi41uC~LDm!YDzR;kwoSRj$mVyEAT8t$ zEyS)YD_d#+#$hVR%NkF{c!*BpsWq3Fw8~9dYW2W}rJ3Unt7(N8-JN7SCHJkNd(Vi0 z$$jgX&I4UlRF1Jd6WFOnW^8OT%nh(Anv@>8qNcqDG<`h&Fuk@Wk4I z@7!Xz#htvvLx1%fFJ3#)aze7w4t(_mIu7knV?5LZu!D`vSUcE{R?}-mlYp&**ro;> zYlr3@_DQcD`XZlvb(FtYJIn*F+Tcbz=)oLo2OUN`@L-^I3$&0}JA4QsqFZRHOFPix zpJL;;gD!Ba9dvlS-wu2mN7{i$3*BgviM2!WV{yrN?Z7vxIQ~cRwoX?d`~!nZjh5kF zLa9+P^y@>QM*Ri+FyeXYiNwnrooPHrsMMrALYEZ!YZZ|^K!-|7>#t?Cw89#p_1Cht zItUdQS&H{CjfgB?#9I{MJ(rpJ zN>-i6agaKU75*}`gKTy|tlt2_#Emo5kMy~uTT@JxTPxMmB~W)Ssn7(lOg4gU^#v_N ztgkN7CeT0^;|7e%xUiMZMA{!yENdeS82+|t2O0PZd{R%e<^1DKq{1@#H((@GtyEY> z|E@Y%miaQr;eb32ORCV4-|j_tkf*1tG@jeUH~9H8Js3&NeZnL~K0m40=x6ieP^Th2 z+AEUS1rRRP;j$!2bweQAOICNo4S{A<2Z72*7uA=1JQ>K*9MBIu7pktwNV?7sGV%a3 z!Y5^kOR8TR`YuP+)J$kuzAEwxAW_4Z<1_vTu~NzBivpTvrSTZI!E-erR;gW|G$p06 z>>uUgRVpLnDpd#lN@at`SE}v+BdoM1P?itp=%iwm`l^={aeh*4k%@?DP=C zv^4>Sz;%YdiO+wY$IsbH+uA>y9s>A49{Ep*D@LERVQIU(OarG+1N>zT2YG4ONJH6qp;RE6H5kN@a<$J-qA!zGNEw{HX{sdzE`AL?3#A&lglGW3dzw|S; zBuhVSB2}O=u0=~cJwprq)0h1L6y`sjI+wH$V++UBwdcnl0+mY_VNRQ9rJP92Y-((G zM9jq}5)yM8FO!ngFNG3H`BMX6mxDgjO8LtRSJeM@1?Va%ja$=!%G(yze|rKVY%k*O zMfJyig@}L`v3^mRZR*4*d9#2BCYc4qql>tLL;04Q^0n~GSMzCO{%|3I`FsKn&&%Wq zd3t)Eh+sV(9B;j%7L;J~&B#dcWu)2E<;lyRmE#Nes5nN8 zmBzOjFE#81KKl}|Yb9|)HQ@ItXmvJTTgS4d8*EH7ZDT2UEkBGq-pZeWJiZS| z55w5dPvqpOdBhgT1$j>|W_sfbbY3xO4r*yxC(xGsAszXt)$O)R&$!SET$5y$nsFDShW}jFWi{wKd}R9Ub)hjvn5p z_8p$H*vX_6>pQ1EYf=(z$LbXiw>!DBpCq;k`i_pMCe>pMCe>pPyR%|CvLWz9w+ zKTp^766-rRAvR7wafXq;Bj+x}^_|8%>hUGR9viy*z%C1<*wB5Y>d<|~AG&Eg$l!h> zBG&x^JL0-uXFW$*jbBFhyU}1{-LC_%{!~<;i#yG@=zh(ho`(Z6!!X9W-zA8xR!r%B za{L8~sf#h*TmU9jU|jEF z7+XAmGhzyotP{kX`W#dA&ekl@lkhYvXCs8Y1(JOj7pXhiaf6r?j>@aWJ#1^266WXe zNVtIHUIUUhLt{%@-5YOlJUM~Z_@im_aN&lFi* zlvbeaKvY);2s;Uqo&JKUE?S|bd=nx4>)LWdsXbYjHpMFrfRq@)1(yD))u$mgLqwp$ zLI|+J(gux0r5J1zAG;i6-?r3hAGTqYeOTCrdRBrEo?ZIrRLzaqLw;(t{US=jO#|Zm z`Jmbg6}F)k6SECtzb{J%_%J2j?`h;kt6$KMqo-tB7*W$s~`5#&w+O4teVeH?Y)KA0<=DV zN410Tk+jp~wG`MYHYdLZ_s=$GV<2dA=I|B!d-P~cW{J}$E5sQZ zzARg78oR}2l_U>b%BY0QId*P0Y!t%#R3^nfK?57@pPm@Hc~|9)hpIS?Bs=qw$# zwX0UYgjmTC$#K^8_I27$O?rJXQhrd?y%;(oP`PqZr9!Cfc%TbtX45*h>eH@|KB2N{ z*UQrVL=Qx4Rw?}6I@_uKPAK*0799cmxPBol&FE8_1Es6~&Mbttdi25dpSu^~ZJvPj zi>$P(G1<*9`A0JHQ>z=iY-*M(GbzY%zaV-r;-*NIg&J;(=y}fE6w!+X3`N{^ABXzo zp}(U{I5xxAs}-GpWe_WRx4Gk*8tP> zYPOXs*WvMcHCv**9kT+hsW3eGL64^)+}?wW3{T!5(8IG%ut>h-(VnRnPKNyj_qJ2Y z5qcHn5E&@PPRe3AqJ404-(cJM<(LkvWH$VwDmaN@h6a_)BHTiUb!HLnro$s-=^fsw zauSg<=#&C}6H^Qc9(U5lq|w|@V;$1ao$(n}J2o@SveKSWEvABn`7643Gz>x@>l*%8 z=i7r==|sOjAo;V>`1R0j=&k%s*ACjG)-IDy_`7i9(ki-hb(_0l1V&yQK8mL`ZiqhBD2(j2%he8mJw0nXJ?a_owWB< z-B_`4WAZ)Kf(NXi*r*m%!+WZ$u7(j-&bY;Be{k9_;UewNy&9`MrG17O`wO@OO8piA~r+VFdozHZ;4Z83?|mS%U?4(lD73QuF&b3ZTIF1nO+6oB=J#&Vr_JTcT3Mo z`w}A4P7%2}UgWu+Naji5|GyH<)4e|$E5)#4!^?f$46iC{CI8lmKfLrZDK@-xI5xbr zsvA+DS1uS{{JK;wgxf7~k?Q4rAAfj#z#_J1>Zk9(UMSohCU3ENoQ&8Ek%8e=7XcYw z9ii%%8fsgyJjrd8Nh3DAf^WnPub8ga!|O4y z$nd(ZBW{@iSz-8N!>c7?Wq92s>7oC;a~fv96^_SfA!0#j5+V#CXQ(#kGRbXaux zYdWmBWKGBAmX$vc%uj-`z$Aj{P=2`c?}@9nGd?0omT``%s~2vAleki}9cAvLRaj{} zxxP;~Eoh7{u=88UAC1+&S-{gg=4zvgB}~(yiY2UViI^p<*C#Pc zSkq&cuoeJIIR61;;5#JyBBoIO25Scz>NmtnMS5$gwD~CK5`*jFn>LQ{@ys-2;4`|9r#0o$WN`l53y3CBv)HoV3Z7u&dQfH1XpF)jwr{} z)0iKMc-KgZb&vxPAaft@;d|Q=-u?Xi4B*3iaGI~-+vw+@9I^hlWTavSiUl=7cKGr6 z=cY7^kva`>rfu19X(kLK#-g!%BFbR2%V{9K5;dYG0D8&`g6_0vp*dyF(~ z<7&S`lrKJIUPr#?URkE+!B0bZ1hOw^JM+^}8y$iB$h^}WJ{(HajgK8>egdPDNisHq ze?^kMsqKIC0_kB1`(e;LwF2&ok*h;S!I}<_UNZC@Z%%$&<(rgrR^C=kO}7*KJp8um ztiyUoA^dMuLz}#1R(=qwZ5||TH1gZ~6|xesQV&O^GWl=_ZVU}oa@xMAg1|tW{{qw% zhPR>5yWQh0#jumL)&0QkN9?FmuwPck<`)6${0Anu!8Y*aW+GPdVws=(mBJURV{vm7WJp=bF^yAC&@V72r9!;{yLgD^f^v|bTD=~z(tr3+AnH8nIN*USJ4Zj|GPrE5VVP}Ma0hU@mD1mP zQg3|O69! z>x!KfU&#qnA5G(a?lhniC zD4CM(c>Zc1KD%vr8=96;tLq?EczNqul+1g;mLYcIDcAwkvH52JI|H#x3^t}@E~<`A zw-bJE8t^ z-p7bA*qD;(h1hEKH`}6;xv~T6V#r zVoK%)#AXOT2Y0lCW!;S!dm}C)Y$)2oYEP8g2>ZWqcNrNaB8kr&>_u#buu;aRZSl!< z#Ms~CA~NbzMiZi5y#mYi5Ackpkr7ied5FyrHpn>t(tI2;ftaEApSqM8T=rGCNb2veh2lICLDcH(J)m;$Z2|&K^Jx?HV-h9j<9h;d@5jG8xx1gs z3qSK>>M>U;-A1l$AocPHA)NeADz@Y%oM;`3Sk2)Q&F zGvbFBiuiXY2zQfEF%sZUt-dE-c!s1`IU=JOVqtD&bP~5Bqqn$acu)faWe2nae;u>~A@YXZ zDPPDEwStdm)znKiz4?J~8yy}m%dy0HDQVtvEbZ`8d^B*77F*^^AGjao=koAxo-p@H9ktf3}_5q=8qBUXm2wqYvpbPlk`5qol=1`YSI!H=q8i>58a{s&@@7;Ft6 z+tR~&%des>zz#y}iw0ZI$Byx^T#r$8re$3VJI>(Bd>p^jC3Q<}CijVA&l{m`t2}Rn zy7iwo+S?6Jgn_rjNHqP5W8X_zPkgvfv=rE5h&?huCyUCEA8x08Y)bEAZ-$^ch@EP% zi+pTX53AQqoJcOT!gmLYill^CGk#u<-A$lc8eXU!lg`B+uTIDCJ{m0eS|%3oo`xp5 z2PoU{HuHI(L+szJO{VF!NoQ|u0wHX&1Ax!&r@76muc(wJ2TVbA<}0u^nq@`Hv(1X5 zY^UL9r!;3t7c@t-Po`dMjws6XInX=D`pGAa?9A#9ZK`I(k=7h>$4xQGlc zOto#RoZ^^mtDH_^+cqJ8*WKvsa3e-~sW1I6#Ab*<*tY8tpl!QZTr3Y-V+Kt+h{$@l zNNTiV2Z;&m*u^wqttJ#vcR4n#fjQ6zG59sn4(fBnK_nnDkU$m!NWjXk(F2EmBhcTp zVyt8CM6Bp4W2Sl?(^#oxcNvcA9aBFU=yyzGD57J2hQf9>OtFsn1(J#Dn7N%{UwV=) z{Zp%R?(2&3A3~mM<09o}uHu^iFNoo@sO6yV=&kvT7?iy~Vl#xFP4{IdEMX{YrYDTn zR-7=xf5}3pgge6si*?LZh|Lgw3hU7hZw4a9ei|3a8BLftVT2Du(LaXU-v}%8OLhdY z8NyFt>oIZuj2Qb*TtwI$2(y|H``4pQcMn#x*kf=J8MFz| zG3Qx!l3kakk2V96?6%shA%EdGyb%QVGW@%fy?b|F2I7LXU}HR^2%mi?E+R7P&iFF+ zBiD?b*b#uc8UOA?TRH8)w-Y}5EnIv)s~;h|VMiT+dl>)j1X(%PJGlP|pB?%vF6XhT z>__aed+_`a=r!^0PP8>;D=zje$;}XBmwBu-o+=WgQnUc=72~-}utYR=*D>6NWHXC*&7na<6JpeOu_pe}h<-!u)u8*9T z#y9u_l}i>{qxnL&(0A;EXy$y!`TKic*+dRDNbcx1C_rnoVsfUUI>=J(S=i6C1by%8z~1D zPThR37x;1^O2K#Woy_nkq|gJ(g}+B^?W)z^#itvr{PNL7gXd1RoU9z4rV*@s{;@@a z&z>^NaFdfP^Sb6tji^>u^YVk9@ ztfQ7|ChxtL^plS+Dr;ouy*xT)Ms%IS{?X9?o7*1Gm)kBW^ zM`HgMZqHNX9Y$=1@Izh^j}r-eg&PS57hB(?B36bQk1LSv9tBSe#u{vGzpnau*nt|G zdEqbUS~cqO7!{g4MLcxn9Du$r*F3Qvbai#sJ^5hGjIr`KmvsQWZ&+hFe7qW~Rm78F z_8|5pgU$4Fc%V8qXA-dABGyj++EgPmUn3b%AwY%_v>NL1{ASMZ+R2{IAQxDad z@;vUNV}h+?#AW&73iP(Tez! zV;E1EH-EC#z{)Phei}dB9nDnTXTs=hdS0tsi=UKV~fDv z>M9545G_yzS#=PqPe||rWzTJ;tZNVfL%_0Yp#+9>sj{!lP}V(&c*rBEBGM-b>*dOB z(NbAzCt}|A0gYnc`=t@A7ManhG{f?P`CiU3sKT9iLHUe&#} zB?t*DM8Dqw3QkeZ7rDy12}QSiB35;$KwhjVO<}|YuUF}VD8Y6=?gacwmAt)?!E@r6 z$Ao$l?(FFR`VA`4YOHWG0`WJIHh}Ud9%nr=V>hY9#%TcXVdl-%09HK!Zc&NLlK^-F z#JyDkZbCi)w`0}T*<|4;0G4gC5SMp%uMOl~D)~kx?kvoK2c7W`apF7Vt|j5o)stSuyUHCebgi% zW>rC1&R6UjUnwVo5uuiVxWWf$30+y*@0HW51pwi@3);UP;hEGV&?nY7sSf=rR`kT5dgIu)LVSSWkhHZKiba9 z1RyqnxZMXFt>>k!QO9lPPBfx=2Z&F76cf@ptS^N*X*(ZagdYbWG3=F}X$eS;#w28E zq!n;3YOAa|K(+fDWU^=|k?97UKo_LkAFwf}Lao|YqkO^k0q1P!5T)h;ve1L+-t6A@ zA=g!!G{9Qv(V-QsY`LWf@tZ~n!Y9A+>5%DVY3>vdq@{) zU8l^NYz3bSI5R_re>-R|`uv){E8rwxL<#>#pndA|=MH0T`q{01liaZ0f_nna2bL0$ zibi0&;IDI&JDBLccDuh~=nn(Vg-w)zR0klt5-oXi!^eUCEa0rbe8VKw2++p*(lq_s zfHN5Sj)|xXaal;Z=3i15{J#X8J8GJ|-v-*9F?s@anS+0!Y*33*wymJ;h|ynVX(B31F?xvkOA9)GKx+#9SJ3{9(Gz!qo*#7DU>2O;75U3az~&wPCVyq9(_rnO z^C}d&Xp0V@b&b&rdV#-w(AkOEPv|2+8|%{(A6$w4eI(SoE_%{DL@y+X%`W}T()1rg z{iq0T1nu4`bS3>UcT2Ku1y8fvPKHUM+zFhJhXtLb=uU*IH*neG@maYOVD$xi+nr{| z&|`znTQCF&QYUcvi)h^dhoQxTQ-jV2=zJnAH)>gh_?ylt^tnN23}#2+?+98q(uLm{ z!`xgIbha0u1ZN_CyvM6EuK~+~POU5e&Ij>wA8@UVwuZGJVMEZlo>StjAg=KMmh%a7 z_f*i?P#d%-5WmBt8R-Jp9&~mT0q`z}pZEYRy__BF!=N*rGsZCxfA;`Zjb7+np(&xy zV0g&5%ye-R5`W!5(%qy1TmpkRAtx1jR*+qR8dw!6$!TP9$m!GCAg2L!VO6B)5S{pf z&O(_LrD&599xa7-V*8rdr#2M0r`3rwB-^L+!S(NK}8DaFaSSS0m-y% zIp?rfzZi0ULM~MlhJFqFb*ZUeE$3bgm*C!z(;suXDh9EY2e6#$OF{cOH_Pr5^^;JI3XhA1|%tOh#`Eou@*rVe+bTK%DIXET?k-w52LE4OOhJMtr45Q@Z8|2!0TD7DJ_| z2S9w>2k1(B285vPIF&S5cY*k}2Y~c+WbKFwE#r7NjQFo(w1=rH+d9r%805BvNhuZo zm@+aWYTIQ%b#q{JGG&G346|kLEpq8^AlT&cH<7`8> zwm$&zun&+Lt5FB@bm)=Lq^^1rvHt))0()0}7l6o5EbDSh ze-R5wqt-gkcUW)OJ%Jcn6(!b@Z)`V<8QXus6t`M)(ToiUD-bSozlAv;2w(3`6nBOD za9f5~x-W}c>GDaEK==l?MmxGUx~;^$$sHo@&F*>P-r`;-?yc@a;@;-IBdKzOxVD()KhY;o^&uN3!g_jYmbakqKJA=Q4$>Q{P8u?co@-7`iz=1(doMjq}LGru18W6W2{r0ZCRjy1=`O( zJ&@^(p6k z!bXbPs#ZS;DNJmstb|k$Q!}>$kO;E$Hyr=7@VBo9(JJEYtAz5J`-f=i0#GjTsiGz+q~W-6=Su+r&I38M{B)giLXCe& zc^4W9DPPkEI|N|bga1CtzAirH#}FX(2mFuu)KgPNfo=jhIP_u&9oS5AaS5ISkn+dn zBD;00{HgF4HD_IPO;a$2S_3y6|FiJ7Z-~!D7{)iL3-G_hr%Em;M9NPO%MWt!qS|PX zKl2zh;N{hbeJLSn!1QVGq(_rdUq+Wx?xMs4fVOdhBY|=+Pka}lG#)2_TZ-K5`J)8B z)cYRM*eHfV3~M12kNrikZU5BRc2%%Vt6_f->{~Yio7g`(8q{tKB=#@E}1aPR@w=gGy&x%5%I zMMIA7AxZsAaak*RgH}(~*@f~Zkl1d@94onna@=qA@c57n#A=3iGv-^#t(7woxnnOo zQI(t&tqFOh%IQ1VvbeQYkPXh?$SxPziB0N!8bE!NQ@ba2X_4iQ9>_{6e;=eF%Gp>8 zPnLphtVfbfT%CucwKD;lpqx9Jp$Ofu$3YN1@riuY4xs7EIjxZft^YfaRLvaaeEfk1 zz2$>s%Ze3ZC0)llx=1+>9?|vpB|%{%XJtM63P|-;9Tqi#@kviJW)ZeVf5n4{h^T=U zFxkF&8%S3wrw8P)?%I+>Ia=7@Dd$bKlCM!t3dW4cD!LX7%droO{Ut_B@EEL&C^QG# z%xazrQyd%3Dsgz8*Ve0*(`J}u-As5Q<)=$#rLAvPbrMiB2_#Be-;K(?PG{&9G7zg7 zq^<8$&hAc{{CQQfZtL~RX>IGaj^=_hhwO5RYwIn_=?_zlG4(x=Y3t{eb9n^!a>3Tu zBk8u5OzXCO8$01oqcZ_?9zpcPCn9aVS2-U&ra?FT9Z1^xfO5)Fy%ey`2T5DALQGp9 zQO+;V==yt?pn5=?w!THxp=p`Gc-_`tD`z_Nn*h-Qy6Tdot+C@g?Gjygbx5KdEljud zkIH#@rDjc%w*Eyq4?*)%)&P$|w>8_$3Z%4f3(M%Xbc@Ap<+c~M#4Q)Mjr)nXZQXCg zZRZ{rx4j$aPQH%rA_;eLmy28K-YRZq_g-HRy8jV(usca`r@Q^=rnYs@6Stka zxd+4T-Q945A0C71{;TGdFyw-R8ld|7HRHq*NL%E-T26Pd`@6VTyAz>P0%_N}i^aXp zy+hpV-N(fJm;0)?E8LI8t#l*MuYt6i-1_3);&v8yl{-S*+uix%-r?RX?izQCxOcnn zi+iv8t+?yl6XM?QCZ0xl54g?5UGEMMcY`}q+y~ty;%;)+iF-7wh2-N{))&R(`z7lI ziT^e0V{uPpwTAKur2UrllZ1cI%8>BMtbugXC%P-!(w*e~B;hIUITZ{~buSb5Z1+ZS zr@0%&o$kIM?m6y0anE(X7k7r6ihdVJpXs&|caGa%+_~;tap$`?h`YdjLfrG+_r$%> z{Z`zI+yKnZK>9*ARopAxB5{|v9mT!M9V+fMEEy))0ie;UG#x}!GR72y57V^?CR z)fjENswILBgEhw4&SUQ&`hFlc;cx$rv@GXm(#G3P%gaG~5%F(%G;L7U7UoH|v#dD) z>M*E3cnGEXK|~LlwlyZ(N&DW0Jj5s!MXELMmozkL$PeEkZknBc9lGj}gnR_1+nJmQ ztc1%U5HA^>;pT!nkTt|j5_hOx$7YRjizPh8Jx$zc?gVkCyBEN1v>*Cn84~kng=X*U z!dqFKyc)G?fgLc9MlB*V+67jle?N;YZ;!^=B#!U(ud(Ip(W>$VADRSnXjvVKoiS

    pxQ7PPc~LG8?mjU(pLS6ETsL8P2WIT&vb0Rr2T)KeRq5m#ryxx-tEmLn}jsN zaUmf6VViWKS6qzDK~lOmu}lp=^A2!e_fkt%`(!G_WV5!**BAR-p{ zy`N`x=PrQXKYsUm?M`{WpP6UM&d$y=yZ12smQlA4?y%k_(Fcm508?P2jPpBJ6bHLw#S0g*gXRyToJn|85gTf~xl~;+n$mdYLZGaBoFewG0Pe$ra zS`O@%sW(G!pc=+$h9Qd!&EGVjFbyd?%s%f$VJ3^472ff z8vc<&7*hbvxdUeN?bC7_Rv}jcTIa$>%hGrz^R5hR#X1)i+_OtVcx11Df{P*}>~_Ur zldXUYA2X?eSmG-(N1jK?#g8EWN&;`9a~lepCqJO&M++jcI2aOp3GYM$M3F`DgRpdY z2oXY*1)*ww(gTa}P*P->EC{QQXzXHY3^F39?JF#ywb7JWB8ql^B+aUcf4f*HqR&G6 z=zlOjOxYvk@v6e;58*{P#4*Zi9ehR-*>F?l3hqM@1SXMjHf5EFrutXn$Arwn9uX4% zJfFCrppi70GF&F2mo|X%-$C0HSoja2R=iM0Wk#|p$7r(Rq}&wp#=od`L>DE}M^qir zyG{Z!O=+QflP=XYlthogDf2`$S$>nMmIH5#@KbR^HumBLZzCl%&M$~AwXq^n)Qz*h zC~9aX;^*No?N-3t#u-!!&gIWcPF#AV%S8=wV~~zUnJyTpiblbb zSEe48$BW*e;C@)%%5A}DCX&DN*o#YI55Z$F$t3^iiQdv0v33C0L-G}md<<9ZYZOx* zoVqy7T?iTW(=P!3-6QK`-FP42U4ix1cxPJVO8&9p&>5M2t#|J?gQp!fGh~MZCY1gNgS;ggG8-cWDq(0anOI5VUk?$ZX2ulqoOc z;u8(QpgAsQp*on-;hZT)knOxbz!5G%oTPl%PM>_)luuyTJ%t!C2ZX2dljH!5x5>Yo zvJ{O{n*i?61d=iAB#em3*wc`OF@)yY;sgkv6X_h|d1&Bd>|{v6l|=Iv@hh-DLUWSI-Z+UXS$qJAk159=DETzT7I@_*GCGSN0Q~NP;um7@BrtiQw_uwHVO&Ry z5Ct-@0T%}+p;&2KD37PS@;c=qvVqog8BSw!PD{P=BK6gF0DHIu@i%3p)co8Vmx)`g zco^WLn!qcusyF=Nl^=t^nk)rjttP2d9)A>VF;syIm7ttu)St)#P%P{0i+T`XYW9Vbm;wO6OEab4y-HgZ*d*z$Kax zP5Sax)|q?f2uo(8>8W?V0@6+*QYlpD%$`W2)FdlF#Wb?Fmq%!_RfPJJUk?yr-6(>( zRnf`l5)oIBQt>!ccx>tb+ss6#A`CaCZD{b+DRIRyhKjVZh{s_Trt}|XXqtQ**$7b+ z@l9Mz6eWU^y(MGmrq&(U0F9Rr*x1!zQ1i{hw%zq*&cTKSkZ$(UyCZGo(dz`6;44dp*D2mU&RX_dXe zqJ!|)4G<@RK8(cM|2%O=ZS@@fg{_{yFWKt(`x{$5cVD*EbN6?4fOT@DHAv)Z<-=Y=4moc(6;s^NbPK4U;bsHwObcCL)x_*k3V| zFHtpxIA-y(n0kq{>h?2PxaKQilAYF8&cf7Kv<2LWC@0X*9jLurSQ5}fh#u=g;&aBc zNwkaHO4H-Hz@Bk&b!SPY2ZppdL3&;g1)mv;KzI2j?nA^AZ{hSV39M>~5c!N`+9Q=# zFZd$GB%kaJfx5v>6j0K=<$2ueJ|*eDaI&Djk|v*#Onau%>Ib*606m|iJtz-hjOXk! zL8(CkR5U?8L5~$iGCh{0)e7>OY!p3Yq>Yo4=^oVsoS|BR6Cp7yvor!}hJ31~;1tCZ zh<%cXR1!6@qo)ZYf}Z1I3)56Ay;3ASH+bM~!}ABZqa62=y z#o=DRBRn*@BW|i3roSssACY_%jmzPyk0ShVa%3SDX8T}z^{Vu!6ww}ed8u*I>sI{? zxp}Fo)9Y0|1AlBKJdla>aWSii^vq`f#@A~CDIT2Z`6T>NDvtUJx?UVcWVh=rrw66? zA$<~ud67z^p!V`~G@x%0{hJGk?-+Nw-deKm`LfaFaj8@wBqU@ZmcLWo7QcJAIX$J{V(FFPa zkFNKli4uJQ&i7h^6Cp9(^}Z-4I7J~)jS>f!B&^0GsJC_e2v0lI^{Bgb#$!UE1h(=t69tGMozbzg2%G(Zr2r8 zL3p*wI$L|eR=g5L^ z*xp+5WFZ>v=kwh@8 z;1~o7NWS%3WZcb2v?c=a8d-Exp(B?x^%(KOmkDwNMNRNpgNBWUlltYv~&ZX*D%%->>Kw?herSk54GvVau46iqS(5|Rtdj!} zsKtT0*0=Q$sLO$-R%6_zGV5`mtu_A{1nP63v(<7V0u7TkA)VgVR5Vd$TIy= z8wm7_puX{{m2M)?E7FU=POBP5%*@`b+kUG^8UlU%myp0=!`l4_#GA79K+M(r zG{cBk3w8akp{2?f5e3MyM;pZicMX4k=urN1lcUd4G@T&$FKGUs3A|>;dG13;!6EoW zf-a2~&Evh+m(L>`^7}vf93tPS^l0CipjgHB&-x44UuF~~(2An@HT`B&~B_#dRAoKkwxJ~yRO!!D@X z^5;~ve|mESDvJVC(^rW@6(=YpD2Q62uJ14XKhQE1jkdUEHcHuE*_?ON=bZb>r zv?)&|&nY|gRVD_EnPyZPT&k~g#Ny^q1pjubP}9Txg7)zV>Nie1mZg^Hq>>Nf(hjwR zpdboa1mtLwl6b?6x``)C%7eE5-AVO7ORDx&Y0-|gJ5*H(M$=Z@@^6_@7vNG-v~w_| zt|IyA##+9oN{aTpDFSO0ZJhwN%Z&QxBb5McH4MZ34H^S4uNs6#E5Rr3yH3;7@EBus z047F!ip9AIXKX%S1c68n zc&(}B5U@Gmx8h>K(Hw}izIX?L7!D*_H;*BpZZQGt_bLd)GE&4!T#Y~+ z2hyyQ-yo0}MGp@dR_8bb3KpP_UD1eG4?Sb1zlp+}=d#cSPA;brvlqnj{kdXjJ7=h3 z_6_CG9!_!(x@VYpNywBy#nf|Gs# zwkCxfsy5n$t5m0S4F#_%L@>1z?ad8kYXlFEf%H2m7 zf+I=aO)2D11a0sQ&zs?mg~%ak+V>ltceVPEK9NEWNz-=V@Vps5UWgo$rd`6J8a0Az z4nz883OOXbM@xt5Q*mw-A`T@%3sNBkoMz3VD`cujq!kfbs8TAZj`Ij;(`}_rQPxtw0lc~>78$RL3IbQgSqgmo(<=V9r@}*PAwC3Vsi=dT|_*kne zl#4fGe|{Q{H`YEwvb5*0dT*TS7GHw9S2de<5Vni19vFu>=tBGC@Ml6e`<%0ixn79k zX=hcW{{@_V&RNA=EKHN-Jgl9SEJ!m&?^ukqS)~dsCBJtN{H24Wly^~6_%n*o)Y6-b z3nr^fBK7Equ5}R6U=||ECebwC`_nb}%N3?;-n$;xW>)!Rn#gsdDgr@?S!ED^&?zB7dho@K;ab zMx#Z~N;MO>T(|qfUrYIuUxB~2@^>VDlK?lYMSQ1zZV|t^s;eOJTPXhtAN&s}*^kKI zRmGP^Jy+^q@E6kI3hKGigGqnGAA1_{y(?Gt)21sM~Zfx6c7 z3lV6}fu>fy=w6`j6LZBT7I#@5D*H`Yq zfsR(~(g<|pKqu?s3Iw`y-~sC#CD4llovpbP$m2j4D~nR=%Ym-eN=mIi2fA6+DYYRS z=x&{()P{1PhY|DZB!ni!(A}PP-SIHQ^L(T08yf&kPCAQdpMQ8g^kiaPMUbDAv8|); zb?k*+74tQs0;|xCtE}b;NZ{gq@UP+9bf7pv11A1B8}=x4 zloOY+g(xkWMhu^SB@%kHnm?z8=UgGIcOqmBMUCXtSiI61Yg zRiIUi&1vA7gQp+M z0m#sw9ObmNBxp%L{{(-Ar$AE#e17V`-AMI5@bEH~TC4J>F9WT;y6rzg7@Z(61Gb>jIUpK5?_Oci7y$?4#Up_-;Gma0>cN{0V!Tr)WnOzv>B?b1p9 z+(1Nk@)V$ord^nVYMD=lU%Ufsxrg=k;jGyG?%5xRO(sppa@ zEX=GGa|w5yoDu2Nk;yuyvWq$RGh&bOw1;eEcWN24_9*ZVdAdV3w7c-PsG277vjExF zLbwsrijsbmXIq2vL$P)6EE8KTGWIFNTjzG;I*sD>D8t$^6M^Ugv@C}!Y&gcYYB3%X ze@w^@SR2ZWDbuJGwZVGCVUmQ-!OMTNGR1=$#XgTfnTohW`}`l0H#3pEU%<=UYc4mz z@YaVWxgFw3kqC+p&~ESC*)g$ANrcw_0x!Ibm^mC17?=V7T;->)YgZ3)r_S04Vq=I* z$C%m~{_4rW>Ieq@AWo_pFCU=zq8wj#^kk%S-HfLFzJl^Xb-jhC&zMTPe^snM8uz>0 z8*0Fy&A?9dTQ?AWQ$^F>U?+{&9!B(OPJ?y|JLK(i5qnv6b=o-WL}$)M^cj@~{r4J2 z3-Y1lR2P2wKw)kbb*a-1W7XAY7;y6Iha%0# zvCZTQm9{-QDZfUQ@~x^A+6Aqm8xF^OCif?2SZMtr0@4#ryP{b&BWCtAL@nYPrajV5 zYy)bgB^*mTrbERr%FgKoXond+K<82RB(C7xiXxgeQ!9OGKr#I5UPOEql{am$4qa)8=Nim`2;5jhK>U zK+fTHHrns3Ale~q#LyO!T27Ox@DRPiLP$sTg)2^4aGn(_y5a475H!851#d;~YWW?$@wA!;cT2 zP|R}73TsfrcVr2RMJO4ENj&jcTjb8*9x^JG2T)CeXEZpSw)Hdz(AEWw8jG;?rP(d2 z0>lk<iql#7X?td*e-)p}>=^0qg|p932CYaxnGJn@GAjDmAL;mSA|}#LXCH6gjP%o9 z%}Dn9{B59Wq#p)uR4@5c{4|4$^wS>0NPlCTks37d`RVItK7T#t6DNiJK0kd|30Ec1 zNdH+com*RUruY;mp3oG3U5=MH7ymv9)@;0lzo9h@niQxVVfBXjTfB+;z+N0CAx6|U zXr0=T)-N>C{20;aTu9Y-)VFECqasJpcBHGo{&jId&1^({YygjrY=rH0A|5HG;NYYk zya5uf9TS-Z%dnuYpI38nBWep|Y8QxHOB^h652jOhX0JFx{;k z7gYkgZFufA6VN;jTR#;CoR~)SVOXWHA)$7`DB=ZBh4g=BMbm%AW^I3bNvc!Ytm$+7 zwC^d>KdUsIX)k1?pJIIM_xa}`#^_^UvDe%fW}^V7bd zNIz|mN^$%uCJHg#d&BaaR>$TmX&*XtDeA4*Lq+j*3RqicA5=f|n9(@Q!ytqWXNpwN zilPf|HV7;4CJAofnW7icGm}IWY(W$`pov{L9d`MunF}7m!$qB<5x20Hm504^z%RKR zqhKETZ=JNLzY98*{trP=iS;sOiQPWn#R{fl8)5<=T#O#hDjl3G;(bK=^GF=^E_Q>M z_#6S1uOXt_5U$H-L?w{Ew(m)_o#+Q__#OCf$i$5IWl)cr0c?rJsd7~&jgMpBTbs z@pHwgAUWh3>G=!P_t)^W}NC(8^;$Ds#`v zbRWV)Pm`5+0v-$B)Txg)Z4UP_9Ji-5>HGq&ZjPpm@SF0a$b_E92v)x-^TZ6)eLNQK;YKs=6|_=PA?h6FQ$uP_MfN&4&{!a-115lIl)|aU zj1u^`46^NUYdhYjfDHbLh?4mVZQmU3GfpO1I+ON@?MVsHH#VPQ^0zSKk3-COhm2b- z|HN}s!^zF4gRDYKZ-<9RBZs#av9(-XkZ>>RA)cpt`+8AVr0>QyquzHGv?`7;+Qbq5 z^A6#fab>Avrm8CFXEe)#XrcDl6g)wR;1R(Qt&G_4d~1G%eT1f`s4KciJkk;!AFOgt zD-_VOEJrsest9A=-*~7u=AuacCj@_8v-v^wbI*#ov=_dwkR)<%+)F{W%9u9v6Loe<#E%#r9pcz&Th7J=>+ zcRz)+2S{%-#0EA-T?175Z%q0M7z1MinfHYeFWy8NEf#UIY|F87G zQ0Zez!$(oG#P9Wi_fN&>ZwRNO-?qPi0)h33XeX$5aXA7n#S`66Ms|FjAZ7rfw#(Ju zV@oxnC*d$px+OOfbMe3z*dc$LP2Cp-*Dz~QiKTbT-+YEaWqu9tE~1>JGFR$(5W;WE zeYh?NJqhHLn}88}vNzBkRgX{!6!oY~x}Yfk5Y2QGN~{+T>c_HX7p#{cwiqF-Bx{i< zuLAyD4#f?xDxkXg;YyDj0(?%^T#q#(RCQ;-J&B@}oVyF?*Yfg4rQ}#3Pv```rkYTh zjK_R9a9I{dQI`W>?Q)F7opXWwBs;u;&ubudpNlBL)V=QmHifKK5^FQSzR8D+En84E zsV69nWFg0*v)=?E0%ZvmQITTlou0r0C6a*&A2A{p9YajpfM*fzG0&fYKUK&x#j$w_ zde;S^v73wo7Z-8?E}EYK_X5%@aVB)p^a;H_2C&9dUH`~a1dn$-g}zcqOh=6x zz#8LFJ?Qs$2+zgcIIu>@R1AULfQ`|(PK2x4>9zE|sKAS;?^xX7L0x_~-H@-Nt^-?z ztR$h!t6=PKSw?lncA~^o{tpm;%Ei=ps)Y9odEprlt^oW~6If$Kz-MU>;2BxO;JPb; zBUB_+cpjS-^(;Pr+Zfbb&|2Sv%JrnEKjG`7801Ai(D-YbJep9pp(+hm^OlfPMgv>| zKK+q~(t;Z1E-j)>S>i9m?*ol&8DZ2gU5nt`tr!!T42LlOiR1r1_OY>JGvHO`@tY zJUKB?yt+s3pXprw^qq>CF3G{`d*piDDflv91MDTjc?7LOUl0hdwYG=;o1YaCah(h{3p!h=a>+#L@>w19?@q zhsgar^2J(;BWi$HkI1Ze(Q7IPBo1}sk}rtq;IS!S3cKM~lpkUV`~G%y9< zR_*6#z5>{q5FXJQ_)Or(9DEP310kHgFB(|rk&AGFQyIh=oGylN`o3sjnMa--1@$q>0KVaR=>sI546v9>Fg*1A z)qwQM|6wtZW;mh-uzG}Z;<2<_JkTxYN1ADQhTtj-BzfgvJWCKq(8o0&cFAh=kEOll zfv%O#ha^gSsx2JPFp>d`!c`Bz$f*?@5RB2ME3bZti+Q;4qI`vNa~j ztY;cnnVPA3N~6}OmRpwG{+4qOY6L=8P2$^DSei_4>64XrI`q+?&d5&>OL%}!21h!% zuLNt0W^$UU(mBmXeX`DRhj|pNukU7tS1QXq?UM)H`}05G)7DGX2Aq0W%`$z1PtLpI zWRVGKjl1cFhnf3*a{mU0*%7S4`I&dt$HzXIg^Qo({WCyaqUq#w9>pTYprVJQQiYlx z`etyTfRso6aB|rL;`>^RGoX{9n8l@xtKejC8LVG5lQM8f_{1#z_YrFmi2*Z+L)8Xr z!AwctWezlz^6GLZRuPQ*T$bUEQBarOgMMcz{*`hF#v+#44*t9U zA>)(+yZoN}%%NWd_3wMo?<_?Nzq~QbktvvfCw&}ubOrS^%ukZ4;XC=|tj>;1Gw}P~ zLxzh&Cr7tDzx*uV$V>+R*?Y)@o`zLEL;SMtbVp_z`0w9ChDRMbIr%*9FSxsuBXb%2 zzqE{I3LbT`X3an!{>U$}cFi@MfM?k9IPUBwp&HBTN!|VvzpMjMYLv#H_r8Zns2#Jm z(CzhF8(Iz$^m)wO5KbRg3}i+~6H%;Jdw2%Ac<5=LFK5HU^xOzJy{AKe4Ae!MPQ!aR zvrB~R-QQtu2J0=&468Cub8v(#j{6&{@HtrDY9`&xoiyu{vg0D;wj~aezONaJLsf2A z?#x_E}#y&n{IeG;hhokL7&5%4%TAL3{&>gVo>%- zgnR`LDqO5rz}l;sVahV|hX^^UsKY!3)=!#wr?O1H5g{L2?9hF9CP~7fYC+Qt4>RpZ z8IN@#R-qzTbu}|g*?FksKrm7+z3MQ#f;Ct(!<1!atw`y^#mZ^U0Bf0M>fD{0WqJ#! zaLA#*2I`@^>4t}yy&~ny^BpGb#=D}KVagt(TiVb_IR`TURzYG&Dum;%Zotfik+NE6 zhnWplW6iu%S*EXyl%H4*y*H>M?xq_aX1*FJSI0QaIbbc<%rIp~;K@9&FH(+u+hNid z01j(rSj{r?>qwc1OO}gu9;|Dcd8e{W|20w`aTAU%jHM48cXb11nzp>q(MdQ5tR|Wn zrtF&wplm#txQ-jpkdz13NX=xe=wx{4qppFHw%mAFEj5a{U_GOmR4j+|m@PMKcSx^- z@Qx;MSAXZwzXJ8vf6%#qIh~9Jx7f1jI!7>oN2L-tLRH}?bHtW~e{e{( zKxn5)A!Vqd9r{IEWT|3;O_k}_K=vM%U zITrUyK^)PJ?wX3T$~-j+UsOPB<@}sU#BuF#B!!!ZV{hBM3~7YyZG8chY@Tszz7dH5_JVoSS-64Z9K8XpOx zCa{+IaIpz0h3ssd*9apIgpv0kxpubcz=V$&uAS{V>QLL+ViyZz9rWG+!WK7~ke%%x z6yRmR?*jUeV6FyjXItK17*ybI0sY~^ToPsQN_FjQEj|>6jmbkA4o*XnNLDemo$cF( zD#=_ho88S0+1aMQsamKHNJBNT2K6OvXG`2F4BAI0(y3_(Q`M~PY)kGJ#@2fgTsvDj zD&T}Bu)f>|+RpakL&Eq?6WB*5ZD%XE9GPl6+m_Av&|I3U5c}w)?Q9*M(`?w;dJGjt zE6wII&?#hR`|wG8t1&L)V%1lCv)U}vi{5QMP+=jJ1*!t>axsIarmB}LYNw&NaDt|vu> zovq1xpnd?_xBo#6R}*%&iATZz2i!Q!1XWGw-WN`Voo&n`pq2(LCqFezSJ>HlzXet+ zF#2c~w*+;@@C0FJ>xzp~j0bJHrtY9dRfU0_Z8zn(4B$ph7}X_zGO)9)c@?aEV0@%m zRMX*^!Or%{V_;ndv#r|$mR$l50XVoi?y$4%I46v^NUkCXHC&S5rqy<~ z1E^Fcbp)ZeCUK9~cD66)IHU<6Jg!N6(P}$eRn!2dv=3YHIx%f$+ltNpl!v&4(+`9zd2MIIt4*xArzGw@I2=5pH6~-QvwgYC!Ak%u z6T)3P+tn#f`VD|J3*oMvtzAn8?+a{D2zTvlHI}FwiI@&-b_lQ882Q7_Rt`fWUqWkv zZ4BYAovmzJ2R{Vtn8vl8Ep`_A^jC=gg)pjUHO6pH({?t2>5Q;SVT8vKVukE%pP`yX zDS+i%Ldedx7B^>Bu`#fggmV>ZJ6i!%f#`$yp{}em)Y6}}k)7?A4IoShINK$J>})-b ztNW)|3v46doVaUeJ4-VyZD;d-DVW0_*F58rRc@}G?L(aS58FE#Edcg3 z;apZ_M}wVh%n3(+E3h|0@~)lDMm87OnqtDvHodOH6lJjI6-S5} zva@YMwQ_Q$K)6qn^o`A7!p>&(beL_y>ZX}oVr^%;@i2P(NPv?xLDd`Er(kDWg)Yze zJp;lTO;T0DB-q*hdBP#>0pW-yse1#HU}tN9%bHWV0K#=m;u|EZuj-BIu(S2Rh0OE< zSiUQYBUBqsy)hGZwx>UJn7Lpz%*PDb*+#tPka~hJOq0Uujgy0&Z9Q%;oH2c4bFpTs zp2Bt|*x5$*aqdB{fN)Tgc<>HOlj*RtHLT;%&w~0>etKBKu(Or!=j86o#H}BPDmJI7 zDxK4Wo$bOQhglJ<=65s0J0r`$&UU?%BhwH3NAk<)$(Cb1gPrZ|wGMqTsB7=0J51Qw zV)Gp4Ua&sS&%CofU}yUtU7e=@KY{v>rjt)Suf;lcHmcB&ovmPBCzlfC@cfS>ta2!q zkew~zGbaQ3Bxh&MqzpoKw$r#5uok00cq|`DFjL#vUOR)!WGNUcT^0t)eYh#Y&X$J< z3hpmEfqm%Wq1tzbG}q2Hcc4T64pd+HyUM`ykhGHz>}*~Dt+9FLh+z1pfmq!%fL2)oYm!J6qm^4*gqD zjS6n@L-adK0Xy4xx7mZ>XZ?qaQwrGGUS8#7(G1kS_n_Zd3fS4QG27eGeJ#k92ZmU}sys(~&8hgK4%hVSH$`U4mHW)HqiQn>}&~`00`Q4SdXYYt)#Mt z>}<(c6yR*Sfsp5>XJ|W{*~Y;q0-F}XT{~OfMOYF@H4L!=*qRXT+SzuFarE5-?1YPl zp7xy^mTPD0j;ACp#*d)>rRn-k=vd@nXRC>JVP;}BUMaw#Dk7}PTszw^jO@&;4OVN- zq&9PMckOIRD;(xPu*PdB$%4pjkR$}$snwhte7n03JFpqY0n%XHY;@-{m3 zVW2*GH$7x$yMc!?u7#ywZP3gxW!cCDJ6qf~hj|dJk2Nz)S!Tk{wgtCKPV*V8{tyB^E3hs&T`Vb?t25V=~ChB4Cx% z%rIqLJ6qNuhuIjcZkluAQwt77CcT3aqV~8K$gjXPekj z81KUzAdZ3crDn1)og6b1>}(cRLTF3BxCYiO&7@*EB-q(fFu7(@pei;&;83-slXK=5 zuAS{OEKf4M38)YL2R(d#;o8~0KII5bh0t6rNHymu13OzxcZc*M2)i{Yq)ZqccD7+- z9QvoA{`?vshUFGuOV~USp8_^!#^>-RXmFv3c`L)= z*8;x*4znlG<;iNm7l|kXuOgdW5Z{lmev}?1Z^)%kEVx8Om5Bpk0>H=bAQGFn< z!wTXLU)Lgm$ZA*w!odm~a;yNp3x5$=0IHNie71`Tq8py>J`k|ty(Cc>gDLYCAl&bg z9Q-ie7KsuDHM4jK*hs>;w(8f3h5S(=^KJnXvjEK3!jeI(me)p=igk$J>SC(PDCv)d zJYNa~aRlf|%@~2)43z}_O6jN{jPC&6$VU*=a~#%JLe?q?Ry6v03J%p~+_l2e`UbDr zpnXJTFly&x8It}lEBJ$ueq0iw13>z?rbMq}{Apk-T-=cKZ(G6ZLcSOYY#ZX=)L0b#f9{_cH7v3L$96}Nd3>pobHF4zpy z&S`|tV3LPAH+!g&*+ad7J=ALK$%dyM$)l0@>UhkQi-S%Fs#F~frB6nHUcCx7Gs{)) zg?QE9X5xh#yhgzNtt;rgahPMNqU+!K1nlQcSpfY?h;abuGn?il0;@Clk|{6XA{C1f zztY9TV?+qhOL@W8W-^sf_y|=pubc8#1<1UMm{VGYe2yT!!5M66CX-5d9f_2{8!-># z3KoBZ6;Uk`sK4Z#S7~w=NVj61c`Jpm?Z^|cgK@i=5 zKByT>h@q0WYRZKXU`zt|q$bp%YUI)?)(umxL?en9z}T)?l#ybka$)etLSNzve;0(a znnZaqNfhXSTon_4G4x1PJcEPftLc_H#H`LE6sKu>q^A~gE&^J)yQxO~Cs4j%jz>s83@9|E=h28u^}UPzegscGMF?Egr%CqHKs^?Ju)rR zA#Dd?uO?Bg8IqQhf@3^#2er&60555RZdZr3(j#BNxG!#k;jQJ?11IC5N08t;kIcfD zNPSGCf{;!m?!y6kH8I%KEY*;EJiW>k#0xKbF`5%ew8W_$vAI+8t4_fkcwq;1$(PL# zV511<)Yya)+=o|PEJyxHV2iZ8!tp9h1gp0%d0*=g`!u~pBbX%owekHI97;Dfq69B_l zqnDk6KjCF3jCYiYXbP-#NS=%=!9P55MG;5$fxw1^a5Az4VE~B0u*hYb1#Er@CnHPH z@0Im$t3rqkz_x^NGO`5Yyz*a+nwV_R1=_3(__T@jbAgLpT{>f@xm) zE(Ub&A^tijKMtq-WMm1J^vXlH`!SvYtb)d4=w+tlZ>=W9(UTe=nm%yJRm0^vW;M`8c&7fYB!&od*1-9#R|SmECc7Wci4?u>avu z^0GT=^SD>Om5LISM0`cUsPUEZiZI73Q<6Yv4DfzUSWTsqrBjf?Mz5Slx5NPehq?rV zSHy#FdgaD6VAByl-^HBNzasVC^2)bMfUpkWR!vZ;)2963X|EhacZ_!czV8x@BwBz? z?r&Yf#DlNPZvg%7!s-sj4Ztrh1Ot|g#W>5%7-XA@Llu-eCTFLZnU-u;*N|G73?Sd}s571aUObqR*7>B0PMmaqn*ibW^H=ed|rHAjTtmp(ZaLy8y&@G(tL zm9_^!(3J8iny}K>AL+B2>T;De<7vDR)*QMXUPt`y5VnQJO1#N33KMek1mZ8aSZGpX z$X%1c!gref#*k(H0fuPkRtEJ)Bj$%r$l?<#h}_L2V8!y|@|W$vOF{))*JcjDCiw`? zg-d^f8|))x70gx59$<{pEbhDdWJubS6P$>5XE1`8vp`#%k7~#>xH$#qO1TSzwYd@C z>zcqdmQ)P)>Ex|eUo09?4>3Ok{snPp3>53R%kMsbT$W0?1J!T-4Dgmtg!>E6kR-F# zNO=X%8)hN~|8yK`6krz5j`U=kH(aX8_D7hC8(ruVC^T!1Puz)&i{wV_f%u>wFmEqX zqkI7Op9q>x7O7dD?nRY)Y(#wRxW`N4F#){kIA-H8Qve#3K6?gegCb|zD|8Kzmo&;M zP$G?b^}@fTk$~ZA3^=~Q{VM0GjsK6FkDlh7XEwuH355Q|;Q`+)5uWol+$IT422xC; zcjqh&-+s^{I!r*Kt;@3(6YoR+r1FPpQ4xu|vYK*Wh?bqpSrb!sRCql^<}#BWZYcyA`A;A5Hehzk}{o?40o0@$W15ry$kI}}hPHIIDg=fm*CcZrPe zhHF8@_lm3sLS{NnXn=VIDXwp1M~dT}#zy>vhbV49Bz++>lgOCxi+@2ZS}EF_HpR}` zf=OuFRJ$*`PuS&NrSNRK1-nn$53)PYp2Y5adl9<}><#QbWq-o%68l$npRwgOl3!+* zV0XD)huszSgX}(U&t!MCy^-Cu_Fi^hwBKWQy?u_|mu&h6E^pcfI~C>hrfsxqv%AUe z$nIu)61%@9JVB;Z4Ujnnun zWa-EclJBhn{v@zxHQt%zljuVa#mCB+E?BQZgm@MB9?juA6la3`>Y&5<6!=$~!|BAl z^BdBcCd)jJG=2wm+r^#b2l{98;xlB{Jm87YtSAmusg$iTU(73p1Qy1=neM#(PM_DT zLnN-E2?aX?UMA=Mh*dArlfJX5Aj9_*>e-9GW~WMqCpSnD3q+|_5NYJ!{V+bO1Vm7* zk&s&)*Rd&5>LQh#sEQb5o(32nLr?6YTjXH`26Lci%(rVHwHFcQVA9d>t%ARC@ePRW z6HI|aQA{;$3%HM*%u9P=V7|~-Q`olVA(Pu~(zXw#Gpk9f(cI@lq&a<~5Rd0y} z_Wn1>U1*@K&j zvb(|#yh-UiXIEwSc{`8YmG)$ISKCY2eZk(r?ppg4yX)+0?5?+ixaoLHY_#jJyV>r~ z?iPCvyRX{o+1+j*VfQurJ9b~U&0Qq-hMmIh4!at=Z`$qI-DwYFcb8prH}Q7c?bzL8 zk7D;Ndl9>P?d|NoZJ%d%pM8_v19tKrk~?JQuzT2kfZccO@$4S4m$CbZT1G^vEL)blT&vM+C*!{>p;<%UDJz;zIlKcs~1iL5g`i`5& z?#K32$6W_Eql7Jzj8@i5RNoj1uW0hN?HC zM23h_;$=jP5-%%aNW4tqC+K47#YI$OJc5^`rHb@SA!$gTfh$0i0!Ng?$w*j$J4AZA zC`NC0_y}y%f25I~C8Yh6y6WB_0pcowHbX`m>6L}-vsl5O=7*!n+K^sD$madj8#p%! zuSDW}qT8eqT@&YYd_XD<^CF5#Z0+DiG}$}T+v96UDTYB3xh}-(*-D4#HA6wl6LLj) zd~_3}o9>gW+6H+`$> z?+}q{BReBu?-4*HMX`~up!z62dN;-3V^in<#4B@%_?5_9*U?X-bEo6WQuUDz&7)$` zIGm13Y-s=C4;tw+g)ES$M59a0hQM4bNn0wSrYjJ7BgZHc8--NT7mKJ$_q%QVoRC#I z;UzetH>7H5&dPFIKP`$aC1nZZwqA|Oeo`s4h6ISK1h}o&33;Nrg7@c#Ra)XTFZD3Dex1s$6yN&JQ%xhv-V7IAVo!w@3 zV|H8E2btH>KF)3{`!u_)?Qhv_Yma5#{WiVdU8YtG+;Y?L1@c?%-M;*zDU<5r#h-Sl zj>o_evv6|8t#f8EvMBlpwl>% zn%fAUPvU$E>&y5+^ziouk6RzOB&RP&dgLD5>`CG`7gBwhl~#Q@!6O6M|FQ(6B$QH+ zCp;7G%SAjg<6%XraW4}0<&qwm)LxN#YZCWmst~6ym-oo+^;G>$B+_zZ=k(>T%wp6U zK8ja;IUAqS!fs27*g#~ZHuvSKSb1%r>h7qUj!I1R0mm}=WFecQiwE%n(GZ2dna*ph{ z7=ea}Z;rz}M8#3iJlXvapk9a`>_Y0}W?gAYD;LGL`wCxbr0NzkKvh>pN6=%)O~i^0djNf8swJlW4}%lw9EC8 zZ?TA`cVH8$mP25R@KXuc)XA^AX3J~1ac5-N8yn__=)I zf`b3idH2-EJD*TTWk#|pN8NePZ4(CRP>M+XsJe9LeH(W!(xsk;bmyf3Rd-(6p`$x5 zm4G`hd5rAJn+12?{#`?zm-xE#PC?@L?!3!@=+1lYb=ZFqaSDfdkP;xDAdc?5oUYq> zA32N0xC!{SE1^5@U(--7k`6$rR2=3}D!1Et-)#bO7{NJ!YH8T*ygnE11gN`)sq^w} z#z(E6ll_!1ayDaTF#1+3tY9mGiAzA8c!L7Z2NS!{X&PdTE`*JSuU8*TYRi_1rX|<- zDcB(q8*CfZs~gsZu8={aUEnw=XicKn0MHNht_@!smu*F}{a9TLtgG125xpjKmT}fb^Ezu=ZRFu}xisrHx^O2<|Hn zmB9t$Lg=^~kcI;-7X?7FwA>TrpdZO7{>v9c?Zn9N1m43USQZsU-CZ5v`EgRcRgGR>&- zP&3iqAl*z}q^+CjV5Ts-fjbL_Xi2#)hcDDjl%kKodpFZy81_m0gM8wGg8$J>K9ue+ z%_douqi&}8P?~fo2%SYcsuPvb5Z{4vH9u|AFIT`CXeQsp zta(yIG6I9lL^dh;x`S$X%eAvFLE2lcy?u(^4r)oXTzC6Ahx^;HSU&ZZ8)#>;JIJmF zxA~dE`0g*tdH0t}jON){F!;C_JxB8nR9YD`nt!wxQyv$i*^d6giP8MMAF=N3V)^AF zUg?Xyx^s$62fRe|9W=}+R5RZ5sp3bphhX`6#aaMt{Bui8aB9W>0Otz|S38Ap?fA-Y zIJ|Bp!gb=pGckir`=mq5EV#kT?KId9yk@;VzEbmEG*q1Ca~{yUe~A>>hwbXs~FKs3Z1 z?}w}0ozYTz=poLA;?hxcKkIAH;5&y$sOth@~qm~XtVB^b}Sz4WAruRo5-BkrwQrE~?@Z*awK?J&S zz;6%FK%hGZViQTm>S=zq2=hNs%iu6?Q>F^(YmS_b`5$7Nx`>E;pWs?0AUN1;*G?GS z0S(Y_EWyKCwgx=P{0War<1~~+kl{Onl0{HYvN}andM;COinuyw%@>(4V=AmFdDo|DoRYjbT zKc5grF4CWi$froE4rQj`fN9kgWu) zmd0uB?%?Hwj9ZH90a%}WxJpDRkd6OwK(`j-!I-XD-9ouk#dlxE3S%j-wHoK@S6WoV zCUcBRJAob5ILU{r+6aGyvI%1W2v;OD zL3rv>LWUU~SqaH+7V^_$7-VqI^bCS}ya`A_ZwUF&5Cx?Y#5;eMil%W8!|M=F(AWgA z0AHuii85Tg=y#?7J}9L3j4&!fY$%D6C+w6*_0Ksa@U`%)$fE1OM_iQv*5JxaQweOz zFUv`B0<2Foebv!|A?Ea_ivGoa(2e?0rNG3i3&SU%*NI=iyN<&gKs~NHgD{L#-V4wk zj0b%jjEPZ1;C=VjOCm^DneY*+Wd6n*6Z;@j2Qh854EY>ET41zZ6hUfN;UhqDX3~@a zbZ;>pG4t{Zj;H!j+0sIwwL%o)TZ)f(O1hLOQ{RU44#XVL(vOm=s-U^1JbxAh@deOJ znlXbIDv6q=oQSJf+yof$kXu?xLgk&xYBo0IN%Xl?5GrdDrNSgGO<8m~a()=J>335d{f3$Hp%Gv$17o9R%|*Xg`bnD_bgd~HwE}A&81K0( zb@B3ckfz_aSx(_|Gm!aAonXdg~zmMCCn)C~n3Uyio?5PRd9jH|uRw0kvfWcgh24jk5aWcHM-dZhcO?wF%^VWGQ z!y^m7E|@7^0{sNtc%elf-9Wo+0)^%A7aSTlmkBuUb2)T?h8J zPEFwrJaY9GN50@t?0&O=jv#9Ip(C5R*%;M9!Rd`f7w*h-IBu^Xd zt&tx2(PT&WlfX`e@CdrePVmV1Hy!*pU^hZIZM3(hd+;S^C;hl#cr?M`=tmpvttauS z#}f{o4J;>w)1tSv*dyzW!Pl5@Ns0S`JrKgl5MV9!$f)fOJ`&hCjq`Vito0t*qb@qe zJj5?0jLI%3IYSY4d*s9iK-dEC?R*5G`WO8xh=unVV$fB^r(m3RSqA?rh=q33iJPJg+Q*ahx6`#9Ck*L-LG2<&_QE2xA}NhkzZ^^89Xrwc0C(9YA}1h4>#` zS*NdjMGCy?l~XXCfqfZ|0XS4Gt>D3m-Yu|>cxBJ#AQS^w+9jxW3!)yg%FcI&lDdG} zy0D-jO69_D3|ROw&@l`XG}wv3U`@!+62@!X=`Udb_}S$C6*t z{ks|%4K$1HGwSUE>y#z$L)RBw0QPbThNMmE)_p$td1rLrF^GTM#khYvO+%a1t-3z> z#%{1yfU!Ow3$H?M$F(Sg^$lhL=34+i&;*`osL`NSYq0(mR_j$@eGSG9&Eg6U)sduK z?@@hC>(36LMn8-x500=)#&Z)ROVn1=syADW4rV0~s<|Y*U;h;F4#Jw`^a!&Zus$xX zdW34{7rsQ{KJm%pOH@splfZiNUd##@pDny9(7T%&vCQ>g?I5Ne5Y$&md)C_n<~MjH z0v8jN$~*;@s!^Uv^-QMm_li$Gj2kZ#t`T7kx7U@If&J@~GcfR(5u@>3i9?m0=9@;+ zRZQxmHd!w`?q1%)snUQmdsxDi4_<)_b~L+66l(3PP;ct)H@%&)kKgWh`z=mWuc z*rih-JPS@;Kke}A1pIjKdmaxl*>esn!{DQsLAX|J9_d`G_EIEwZ^PhrAlfi!bi&JV zi1-zU`4Zhq$R~)S4TGGnYZz?09E!&y*8mQd(1yX=c$_3bkqsz^;8&;*xrV{YO$BEo z+5+mNVb?HNXpRF92Q)^*WEkWnARmoyIco-E<$QQsJc3uly+=gUh&m7I{jJssBcgWP z`jLp+iikHz{x!-yk=~VvXd!Rlsp}YGKP6-r6?7lLT*2>=&o>W9b{W*GKVrOHd_2}x zP9CHzCPow)ha}qIX(eKEBuVj7770PQ5eCT_%fw*ZDk2uiVLc!tDnlX{hxyP40Amj)l4StVs`hV+W~Ra=Ge|9E@v_$sQdZFu&aGLthWCq1M>5&}pIHFQGg5Tq!GC@5V( z0cm2nMNmW$L;(>MkRqTWUKU+hk}WaO>=mhp&sWBNvOfgtGhaH!H=+rvtgl8QqQ^-_Hi)FU zj@q3Yuw0pNU+!mD!{cXNbZ8eh7s7{;g4D%$bXOTYqcyHHjQWy0>HBwLS@+D8R#*`2 z1C;})_DzJ3;vuJR$`$C%$AUW5<0wYYI7`@Pr`+}oRL%wOHlP1NoZmlX5qd#&KX{M% z{7>WR&$CKi$NO)v4*2Ysha>ei7Xq^{!n`zNvX%a>&axkYQO78)In%7g_vqYmkRT=D zwq4sr8T^h!h3evkwj?rK2ZD8Lb!Otbsc4U@u%JMa5lEB}`Y7x0b2^9tRP-~0(5$nR zWnx*0Nxqb<-^r?;kNJE?f0dGmzV&*L=izUjBx{)x-nl9zgvH0zpl|eeI^Ql3{!o=- zeuU^e59aGWK$I_+7eF|_E&Wk6Xh!7=0Di0r(lNM5S%Z-MVWcMoe~Ez#u{u~|P+c-M zDr*WFmstnQranMY7tf~Q<>*suNwn3eMPN|rx(kNNy+asIU_H@^w~Zt&jr`T246H(Kqd zpvb(nLgxlugKUDn+BI?Pq%l#-J$6VJ98 zI~q|>nB;8r3J9-Q6Hvl!fp|5pL^!Wo6Y*}OBREHVCFxRe_N25p3+La1dIEp5JJpXD z&c2j^+tB$UzD4*8M@qtNu7de6b7_gk;{wPQTAeK z?AG%V?P~q0yu9lLERY!i=LyU*I}&cFPA&0VoUuQU(jK-_F>tc+H-|z(iI_$l!0}~x zHK$Z#aNGKb^Qc(XNiwzst=<@+MpN({0EYRXcMug9v;$wPW84wYRRGNKL9fE4r`Q=d zo%9kEu38S#y*_|4#_6eMI_plo&Q0}ufcvSI$kqMwVe+02MgR7BFN8AZLYv>m8%@@u zd$bcaIUQ$tlD2yL`aPu*vrx^)j(Kn;E3O|A+++_Sc zW$z$ePb9Ke!|@-W2dcFKWrDJP!zi$k326svCrU6oT>cbg^}urABjgVOZv^=gy}RWT zs)Xq(dHErCpLO(IHqc-6c#0{| z)hFQ&WgXlPz(FuS_W{gQW2KVfT&b)b=$zDF;99d>_38;CR!JjHSf$eLInynPA|M)8 zMfo*nwTe# zlqc$Q*+7T#WPMJxB@_~&29Ief^P*_@+IT2qbtnq#?SG)$5K3>b|F=-M_0|jJi5+ez zBpP+UL$9pzwuGWnphq{zt)UF=S(U8gwr3;N+`_P)iEi`5+EFP*Rr8ITTD^RG#tVx? zqi(}7ZdivZhs9~Nge8v}b-QmT=#fw~aGe*SM?)DtNG9Q_`!N+#skcR&0;3bZtn_}Y zu<9&cQToOGZX&rzYt+577j;ezLpk=(lj(L2bcuFBlzcx+QCmzdElqflD<@=m0XupS44uzGJB=kRY1c)* z?;?PZ&l$75q*TpY?v3>Fwj111TSzqOevA2^%7})d+-xEGGh(3(jym}Mc$`cUbx7=n zF~Z!9Zq&Ad&g?mOR!lpFXR$~yMPgxETN2^T$91+hL+9ntHv@n3x;G%$MtFrmYasez zbsOj_J)WY=$Xfg*gp-5$)TILT8Y7%~IKv$48|159FkYv~0;-c0NjoQ)wG`1%(rwx$ zLF+mUPXsA$G5RBpX4AAYJl*U!?WRGi9~No|QbpI}bsGL!ci{aM;I{}`Tc_hCB|=l3 z!0SQ2Bt`Sv2d%N-GuPAz@FsYCHF+~480gJFx(2O>?{t;i2*3gl8bRMZ?G*Q6EcLBSPzY z;Ja-M0$)?ro>gcu7>weVmMST)>>@0VroItM{x5U`9GwgBH(?jN4kS99v*IjLiFQdOo ze>M;ryHSfB@Whxo{${vP>iu|T9#JKSCBt<#mp+PYE>xkcdzHaqE8!-{HhE2ZP*#^p zaVvT4D4Cx4!`YCyNre(HE|F3JiT|r=T8`Fk{}c#ax=Sm#oI!G)Bk>Nth~q8CBDyk& zCazh5=Z~UL=z`_?k?(PU<712eOxbwpQe`{{o_^ZV4~5x0SibSR(A!_=a{rJ4F<+~e zyODha;Q_br3|*eVc`hzqlyn)1^U(LCH&LN!81@+1o*s}b#m{lShU+beek)Qs$E(dp z@(%_>1F)J$-gGGOMcVJeW0x;sWZOBYg@-~s^o><{rH4JGh9{O^jY2`+@gFR*FylT3 z@RUL!SsJ*MWmNeGHy zp>v1mD8B+F(n~VR|6@wC$D)-vlS1p<3Lm@~L9_8vDzxerJQOT&YoD(5;?+&r*@MUb zH$n?B%p{|Kt3y$C4U$I}e9W%l=(Wm7stCQ*0himLZC3!|7p}VCFd#iTqMuKk8M?GD z)_bVIOK!XiG_t2WA!@d~sSHj~7kO&vQFov|8#*1ULi2CesehTO*oyuw9Y*#?BcOO> zs3ltX*%I z30OW~l*xSJ5d`R*pA>p%f{yNVY7T~UbmN*OC&l2?kCA;FhO|hR&=pwN<-3ZzM9S+S zMEpNqDc{CRW$JkA%%V0@V*5gA_{(Bz}m8-r2jz^snHIr$A_gRq<4h31p|gV`4= zbquBh*cJHu1){M`m=VegV9}bXyJpstkoq-r6COud%Y2SjY6J^*J9j*YoxcU|Ir`+7 z!;U^V=7^(DjQQNrC&ql~=#yl=a(HsgJ!;gr=|;i+z~`T0uLKmlj;N@4h?f{f>R-*_ zY}zuKb}Kr@^|pc2p>pSdT_f~6+-I{HY5 zpmOw)4k6`)o&_h?Aja2?!C1o>pKhD{jLt#D+BoYM;)Os{bY`)B)@Ll3Ph2Mmt=UEqi0{$}a)_Z)tmLe-0u?{)Xzh^F;0Pqm&k*73H zy$0~R6nF%>6kUc~eH81M!^cyVymuG`%JqkgT6&mu`#S8C0#qd+>go7vX}S!#YAMz! zhYy@8lOLJJF0#Hl-wmz}AQco~(iB}vHiOI8ma+DF=U42@6_C2zdhTkl#{+YUMyZ6Udb4rlvoBY!8{#XL>;prTZfgUg@&rywVl-zm={$gQQ;m zKGZa88mYM$1qu7lbF{tPwHpr9etzFte+`I6_Ki1SJJ|3v9<|74`7*rv)!#Jt;DJfa zMx{Jk1M6R;#(Rd^^Y(!?CimTk^d9}%e;k1S;@r;)T>nr^#F|aWT@NywR_)(b!apf@ zRb$ux6P9+GP0gL0sr_=2R==hf%YMRO?}Eq{stQCtEM=f z)(@m@1J=$&>>q}_`Wd|6$(P7!ey4yn2z=HBm3ABYKm3JX`GK{2z}nT;RniK8G7scF zu=c?=FYralAn-D)4)zaN1Gc;AngPIEf|xEvm;1n4J*X!VULf zfS#rZBd0759p%9`ZScVxi&bg-+b z1_1R4s-#I)AFw6u(l+Sl8H+9eRCpjgCa_Y-NYxo>GQx~ic{lWWQhin|tyFzv<{7U( zb#tKbb|_m;h37$iy!y0fH_w~vw|hJ#&li66SzD$0{1(wjbp-IE6d6r*e)YMdO7)p? zM1xf7?ZDu#(SG%brQt&krnV_~t;mQo$P**B%eOFCKMZW^H#@8J&V2_ajyM}c27wdui$S8yAy{`CV~Gpc!xZG)rkYwf|NILD8_>>aVm(wlkhhikxiFB zao{SFKXH(c$i0a}6U-Fz09Bn}^!BCc@+S^lP4y=ZqaSyJn+nKm3NUGku78<0G^jv| z)&sM}mykG9%%3=XfEPldXAh|F5XhA1K}>&m&SFXp;^C1ae#SCAvOhUU+gG~wQP<|7 z0QE0~#~<+v7AS)s?Keg{(g!1WBmVL2%IHPvASQ-};f?rBcIwHpH{$19N?o?BD8{?&hw*@-dO%$t{LMXR z((x{P;8yTPfqtpSQ|}PqciFF?$BU2n)3E4Fq`Cvf-4r<}Xj!7hi2sbBy%B%hJY11Z z^h+>a^U;2nJ^XU)e}cUF9K3JHm&o~DwgEotf(k81oyA}Hr*zrV?sApX1E8@7ig(#> zV+mW7RDgGm$3LaZ-oM37*QEelMG(`a=!$pQk4WNpho+4Y|I+ntxc30GnIeq57V*36 zSFw&QfxisEK7!(U{VsduMpx6f031I>lh3R@=Z3Ho0imrI|`BD<+RiE3Zy5W8b(6omEsc(hfq#Z!#Sr45=&_96pr^l~4IPw$; ze{g&vqy(o55qJaq&8;tkO_x77ZYRZis(yhUZ*V-6fKM6$RYPH1>`T+-501Mo(@&JwSlL*Tj_`XGG-oW=0 z+^J2&OyK3QAQI>ed`lrE10PSV&@Yym5~E4VNyHjeZ~8r6{px2es|^K>A>9Ih^Eal( zo0lC-1gjUw13i{HA$+&$twrk8CE!i>_*JVOPsZ@8o>_nm(!i+|Fz%y3glxL}s+UZP zSM@UE(!;F%jd6Ynr4PdR+?S@yuX=eR;8wj|E#2T8q%{|RNt&YTU#i|w6DevB3}5AH z35hes{Hpg}1ANp(Jr}_kPasoLDaXUCZK-c6=t9-&xmH)T`%oBMks0gS@4Gfn@2KA! zhF|qIWa6tPl;Lg$B4?R+RWCiLjKieLfhIKks@JZ)Tb10ZH#61syH)Rew1mp@vaB;) zzdJ9>uc!UqG>k`y$ec-z14+GcDniBb)Iy}jTb^pX8E$v+QQZHwJXIH9?80lP)f}j# zW(yvRJT>C}H#M?)lX|?1R>PAPyx5Gd6dQ5>o0`##&06(W63+XRO*vhg*j=EkPJTqe z92`a2)tQ%${dz{2fvi(Mv{gpe(tLuXP+K^=B-h04V^D@2=0#1Dn;|B^n2wjRUzahyB z2d^Q?J8!QKU$Imfe^a{Vdc!EeUrW>FHzY2O`wuwX&vAnr0LUl`Flmaee`!dcjYf)Y z0A{H#A#tXd-;m}`RH9Km1nL$7nGz$$a~NWGnDw#FuHFXu5dQvqXB|9q#E9`MhS);0 zHVVT`4aD7R{5)jC z8*+X|@ZON~JKU*Hjb~ynk6lgycXhP@8seD}-^)~f@?3Ya{K|$(lVvHs_+8Jf*`v1uVRdy+R~!)mqzc@R*x_&X5VSX0 zeo4^YWO+W`mJy_yz-Z~C{mJsGgE#~W^6D(`&Lv+W=TDXggD>yBCWCji$3JDV{K!C8 z$x;ATc%b-XxgPkUWGi^jd;C)-%Z<9b>G}WwZdsFbDZ1j5JYpWPLXN z5_v7+PnHkd;s)LffHH!ZUoJ?t17UUbzYn;Y1_3bg6iwb_xqmNL(+mLSo}$T{Ecc$O z4B2;b4*>UjAR~)gAMLzA>&;BT>Dvm7Ff*up%1v%%YPzXXWs;4S@yfKU4=Rj$0GmMZ zH#1oJeq~znIC%M>pW*RTfm9E!E7(}7zeIA7TXJnwrf<*@5vlsY7)X)Yg7zxYP(gc@ z>4}xNB9!QBU|jE`{mS&*YP^VN=B@;99r+SDzcT#?eEIbIS@2%*_@`8+n_qC190uTP z4-~IVe@%0h1n}A^hQ9=IN@e==X*XSG0MLverc2QkuT1?Vab9Kmb&nhFV1O>72qUjW z{K~ZB0ypqk0L&*SuGfF^`m(31X*~cBpQ6dDOb2GUnqCE9|0$Zh%2f9~Ww7|v_W=Cj zfefn-R(frQRbqS8@SYTz%g{Mqm5h|7C_sc5V|@{Gp)D@K?lkj+q=-x-?ry?#4& zKINCchzE8|Rb=atk^RmS0@)MMkQp9?GZ_6DW8y>D;$VLi2<3Oe&Tcf+hln|S%M7EU zBtD51*Jz1_1Mrdyaro4es1iw4@g*c^80%Gsc@UY8-C7m8Pyg2dj0VbFT8LC~G>F)| z&nIH@Zk-0U_0<8;IZFeb6lE7(2FtYiAYU2;tz+N=c9>SOwRSBm6)qM?X#P6La!z%x z3Wml_oMwb4!_&YHg_xy$?+iDbkPMwqD;RqJZg6`sATMjKdmFo#w!cn+Rqh8AJzyhbbM7_j%L8f~(86OFzsr*v;MrlCPWpu-`NJ~RMb zmffOl;G=5T?});2Ce*>hPP+ug(71HU=m|!P_TmW|35S4bQ5LcQ8=2gqb6{Qt9KKAK zn7l#PGF`=EW9vFFExLu;YMI`Fjl1;gdmT=nG`_)i!|5v?$ZP_pMZeIckcrr=F=4(N zKz`Ooeui1g5)KW=h*T@%LP#e}Zvc1gYHjHbj)S{S4l_GpaSyo9$m>LR?!$1`O=qgY zN2#FmToCGI_9XM$pW$wh&FClGyASS$xy+@6vyQ>tJoPE!vyQ`EnzoDXBn;;*Tcquy zJM;keN!G5Z+>>A$gr&!6g!L%70Wt&Kg0f87RGp|UJ&RzHLDbFs1o~z6l z^N-gi=|EFHLKAK=Fp$K$%v+QcgBQa{Q7?hFEFkgZ%}OF70U9Ys*dEpgk{E|!J1vOpqlXp;MkPEFM&Rh!v+shP;jn{;9(h1!Dj zk`lH3XWR$R%PNtVIVo0ZBX0|4sVy#(Z2yf^i5FccG-g1ajcVNDVaaRW`4k7}0P^aa z;6E<6Yw<3qQ~4>A-UmNfr;C?F3BX9ns|)h|I#;HX%)pemm{ACQ6?5g#4#3uEX>J74 zFlLyM@*xZ4{6KZ?^Wo;8O8b2B4x{0=m{iPu<5fSNWHZ-|ytTW* zf1^e}c(|+R)U@RB5v0X`VsC-Z-9~Y~k=L85uSw^-JKj%JiM3hPM;nURi+a!;jGoRG zvsfs$OJ4>$(hT!KbtCXutqopaF>2zk*kx--S&iCyqvsBedh;0Ftm^itPknc?k?_o) zn5(5%qr^zNZA>jZfXArE4P$JuZA##4sOmhJINK&! zk{1rYu4$VddKnVv)E7fb+l;_d@FgsPyInYgO2fPmDdEsWoO>3^ZU}ek`M=0r0d)U^&~)zK-y;6i>3#4*gPDEAeDGcS5kNwRj4gdU#(|)xr>%GzJHK>?r=56OIeW*z(_TE~&KI5FDHl%yP%etlahG(pE4mmv}){~qD1L5f@o@vgb=o!i?oI8+&E1a_dF6*7j zfn%0)SqVISk}ibjI%gxYuB@-!AAs4;h!OCdl{6Bbxz1K9I4^N66fAU_G1-HwO$6so zrz9PoA=y{Lv)Y;dGdveabnbVYk}`ka=W?F2(kQKQ^?1HkJQ--4JE^n`S?74nMPvw+F;Hyqh+uO=ha!20Vx+T$_I3ec%PPz%%t;>W91)da>{J9 zukvO}`r>bi@w;I~FH+A6ol@r;z|PPxUcq%rU#zhy+pYkrSa+?Bh@t@%c~tQ!O1k_k ztzxjRLR>67FF1yu^47b+ey*d)o4qRMWwYhreWQ82?Mrw@%AMDP+(%~>FaOdp6wPja z)r|phqZuuL&HOq*l=QC}kn$)q)C@@Z^S&^}`k^x|r5;OSpjIyzS4t^~G`&dVB!Cl5 zs@P&if3Ky(;5B3MGEo9exr0$1sde#YtW%<@QHftif!c0HKY`8Y@`kc_bX`?Hp9#=~ zS{3is(f|o2G4vLA+sx=+Z)yd+(yS6crE@p%8|nh#HD~dWM3+ULF#v$!Qsd2S;L9-0 zBpZ1XXMuIGjG?>{Egml;@5fTGW($j#q*Z3|@SyT@MIrA^tE})0H2w0Yr5f@owMtSc z{4Tn@lO7nC_+oy^D$9zs=!E7EYd%z8ans@f0|FkHC{2 z0lcSsC*J6+|X z_y&1Uex;JhQO46Ak1iAd-gLV1!X7oka%mrTL=kl_z{u;bB`Lu}U-F`aiG9A?HRn^F5R`043tdafV zWsrU;pBANg6JR{yE_-J+vMC*W25i5?jO@vb@5X#ul;*vGmBSYHhHA7Z#Onm(Nj9=u zb%OL;`Lrm_TLvqKE$ltjXi<8WFHNwKz2-$o|DI2agmu1jJU=z&cr{|Ef}7Lh5pauj zI9tUmC3946TGvs~mGL_Awkeq!b02%0=gt-!wEFVrl+2CgUP4Ai#cQi=U*DTE+eI)j z*A-J!-s(d-FKM&w889QRsVUq0VFGytI;c)r`muQlrpcYM^`mmvxp3#`$K(6=!JVrg ziTfYJ(`Egv8kiC#q>O^QL3T^J@7w@)!|c9v|4mFu_87Wzj>Fv~yFT64CvZ2-=}dRu zY`B}{45s_=xo|hnnM(J-5pcK3jJS1fm&P70;pAwz+iQ0&2%XEc`yArCXUW<^ zho-5#KHq;_2b!{{&AjiFZGzke)NebC&bzba?uR=WORz zdisf{zrz*2E@z8pfOAh7JOjjYj#Gw5n=XUJGtl{TIXpwebFT9d6$};6AZI>3!^Lx+ z(}>zeisyW1CAEzf&tRtwwT&0g5a%Omn;@PGjJzMNhVLp_E@+F4lm;UcOJkPWazA)8 zGJAj?u@55udvPeb5MEheQAX*=UvMqJs#qV8N>`y@?Y3IRz0yxxz`aIBhtko++^aEb zh;V@=E0MyyY(^pg>3f*>UZd^a|QO07vMdwRglPjIJLtfyxZ&(+gD0@cbImmDx zyb+$nBt8yeRqj$`M$cFv1lS|WLRBlPAM4k(H}t@^!#Eb@}@Y&u<*=} zF{EO@KzVPRrlusKfm9sVLtD2vc{}=`ir+Pvx5~LX9-9jCLD9iG=3E_*&Ik2#U6#CZ z&L!8s31nQm$P&5NBP+U)a^^)!-pxQX*K1e2n@-Psh+}NO907wt&GtyQtn0v zU-5|sT;c=hLL!zk5icAB;t^BoH80F_Q~ww<8Hj ztXmIya~(FX=F^Fl*{0;VOm=3e-%P+ZOP=MeJOKC8(p&KIK3CDp5m0C9OqoS;yvRyx z)x-mELy;(TUWU6w+_ud-@@)HSG5Ng@I(wKAyC1SL{4lf>OE)hqXfM3d+L8e1OaLhn zdsi;yGSJ>_J0U=mSC-g9FBYIJCYIQdEfM>E43oCK6K2Hb)@j@32K9)|R}NwB^o$6> z76O(KN#+hdTbvP_yN7N2yg@Xzo0p~8_Pt_q53_CG2Qy;7hnN)$rWchjh7xyCI%0Dt zX~d48`?Kvic{C?ir+JN-q!$auc9FbYEMoIIwTQg|rY&Z~9yORqnh~3O-E5mX3L`dm zzeVf-GCNG?wd&^@ctd0cERr6_W$E=l4Hb< zpmcgiLf>;p{2Ju{dMusau`de1k47e;OjH6S((xBj#bP#M`wZ|CBV8Tv>w?$(6nD%>;Rl&&n*oz}!0}TC)}I zYC~&KE5Talvz>2?z)mk&eKgRTtovvTju0XYo2HBd-ow%~R>= zNR|vNdE2RLc?zY^^{HFb_~D2}p#LKDJ@}32xsHLq4C06%VMOeV5pZ((G-7juP?-CN zY@6G~A~sJW3G+=f+B2Q>w=Dh+-$M%^%uP_XpdvQEI1cmWuPx4q&AmclUI}E|^+(bq z!L~0E_Z4DtBM-PRBQ`Hq37-VKSe&*!do-COM{M4M5#|Lewmsn@LP#jKhr?})8L@f2 zM7RSWc+)c$&I&<4BWUs-~PzfL!+~W`?2HAnS5wW?SCd|DWw(uf0x7&od*U7f;5(Kwzg}F7z79OhV61q7P zjoAG35w#nXh|N#p!~Dj+*sa1{W`l4Y2oakHNQHUakZqG1vH1n1Z9j>*TEyn(x3*9s zHaE)KcE??$-?EZ!QqZiH(OpmI{CEeWKPcC#>rdkDp0l!LhU9^D&wr0 zIc&HED)yiK5Sba?hTVv&J)pg-z_s4kk4*rY5-!{g&3G!N)}a$VTKtV79AiRv0K62@@P7H z8xq3ISlKtgDa@Imo(KCWW#5irv^?qe9e6e*2}!#%Hmc2fUlP9BS{{fUJdbj363Kn~7@ zgct0Y1Lo|&_Yr7zwWqX?p>#2uZLX$#GQ=>3!PzBkzyk~LN!D7ddkuK{0qkyoYv$yY z=%9|kHEY&2Qz{x_^8nl@XFjVA;W_f|8xbx1vbBY6`a9IMNJ2lC-rJ{Nz87b4T)r7O zGf%S9Tr@s^7Bu_bu|~VH8}JS9dM%RbOKyUszdb3bRsjlelgg7lS&PORtv1cZ_ilhZ z>I!D~g71M^?fRNHU*-)IB(OO=iK~l?o9N@p_u);if3DZ*XKy8Kv<)7(lcmEPlr*7C z{I#^dU(!pf#NR~wdl)%9&8xZ_PHjJ&%Mec0gx~N|UTUZUf4>F}7CcsJWp+e!Tuo4~4FeB#%Ok^%|g`4=oODX)diQGpj{6l8) znX&03YwJjl&1b%*k1W&PVfoC~^ierl^&lgsIVx4mRXxU69et;?6dq+FxiJZ${?w4_B%K)2dnLo0d633Q0Kay7NIE!1aY5cWb7*9 zVabe78INET@5 z(<5$IkF4EjJv`3MeAm?@bU8&KhbOlsyHPLo^JhGf|3fvNT1VI0LAn}G?V!E=bTyuq z>*mrquV01=c0+0w3e;S5sZq$2FRy}La}kUTc2{%JwtDkOO}j8yQ;xjs$$%g4jgOgN z|Aaw+zjzV91Zu9MQu^_2P2R!ZqVKQpl5Y0(ldpkZ@qvhNtftbGrajD3-!lUjQOpMJ%J(?{ahE)6%PI?`|K(^WE z?cx8g=SMCaKrYgwc2CHpCX#Mg9}v_=dq}kx_2v7#X7OjmT(g`D7o6= z)nXB}{qF3UJ{^yzxYakSK;P+PyL@>ISa;7dc0<|$2e zUVgl(&MT!G+nqL{>JjSgf-ZP`7p5F{R@ZEv(YM&s6mP8a^5czlUMby18TV2@;%Va6 zS5K3$b9jp1536;?#LK1Npc_jzMZd25ADrmA-b8srupT3tsLs0O4wG>`y{SL$yJJK@ zBZp@Ju5*JsQ-_KQdLe@ImHUVLAp_Bp4+iBRW~ts~;|yb>E8W7E<`S^P2v;Xo=X(KG zKz3O0H`0C`BltUL{~&37p`9vgxHN};4S8{lxyUeb_z6+D8%BvA#tDR>$AYI-!I!!f z!avbSd0I7^0TFf_?RZGx{P9{SJ`{EQz)f9zC^}SiC_3a1MMb>yY#0P`+$hxcqc8zf z=>(Qalre$hCtSCK8g{X1KK2m_(!EXhl%8V}zV%A-+a=FRyaPQEe+XKBYDM;kr?pGA z3IDi2J;GsPr&~&VVyFFXyWFapXnzl*9gkX^-b(hiC9XQ*0etWm`Cb+yDB@@LR;%1MlSL8^2T zqi)0{p<Nh&JFux%`kwdSHI};{D|8U6da`o5o_0Ivdk{(WDpy%=&`G^stfF2D78STEPz@*+4 zkJpK(AnrHihPncbb?srsz#DQ5<1IjfhXA{23^br4l2P@*OXxJ3|ITOH0_mwfM@7kg zvl-p0VRyrrt%iRJ%7G|f4HyHTgr*#5>Emf)Pji|k5(`{SbpL~<9G;YUzMGIiem=ZJ zy_`!h4StGF8HhW3vnzKX?xNgzggX#-RdNb8@>~zZ-Bgx05a&FIK18{}p63T!__5c` z>`}R1HzM849@RkmwQk&~+D`km?$DbmLw7UfMiFnEEr+I8@79W2`uh1riWF~G-M*!J z!G*bU1RlE=+vcKB4!?Z4!Ih3zzDFSa4`R zX!3O>%0s#MJ8o)Qt@r~}=}O72)Rj&^8wo7Bb7s=3vrtMKRT0lU4J=wX z^Lhne=~AGjPYo=ZJJXPA8GTGuW3^<(ZT5R7NNrI`Y^JQ*&32-YqFXhA53@Cr;D16( zAgi10n+X4t9=~6+9c$s=<|(*;rjf%7>^HjcZ?B_|Oy^m)eod5wGz3K_L|4quR9=;e z`I)Ni4$gBFuCH(E4h`u3Z2Q}5@x06PbnkKlijSmsNI(N7$!euMBqmj~V(6?9Is6!5 zj4RXBkKAFfbtLwyqAHQtuNv`_WE3R$nB?qNWqOh`$S54O&MN$1bTP)D~QU z+m4Um+io{3uv%lOLy~sy4m4IdRkZ{0*FLL^Z($$Dzl6w={V z$U|i4RuY*a-a9w~f-P=?D*WQL|2I&j(vV%LYy4ko{}P}ZvXA`#t@gM33d34$H~#TL z&-(%q@n+V~sp@ELKP=XXY@sbQk(~LX4C67E9B(;1zPW1483T&Wg#W{qqlXD;IWM#2 z@EqwiZa}Gi_d{{mc!6xy2r~be}Lx&JR9(bp;CToMeIwr8`Gun z)bU1z=ZWIds>wcOOhZ~nMZ&nZLvEJN=9k zkK!hh&CuJEDm&t!ioBzEt>y-ptPEez4|?yG>dChFu?Wvqie-PKXU*RdJYToHqgR{J-i zy9Z^Ii;LHj_d%5mY9P%M;qh>TFF`d=z>x5AE7y|(c#NJDduuOVr+tI{$F9Mf!FOBFi@wKXB;%nZR=&rI1GFnYRN3$Lp%+nI~ zD5#Z7-e|Q5*u9|sus{bM&xAuBw%==vD>AI*M11fI>TVZX$B%F1TUW2QI5DsfhQtC; zyWoHN_Z7*YVQ zfG!woL6KlOP^$WM%D5HwGW<&@P%;^YG4N`{=V7?s!Tq|)67d9fjqS{_?B^FsL8t7Osgr?I01-usiB@{0ChQ@IiM&TSZ$LK)ObA~J94cH&yUqa!MwKN`rfv#vUM$xjo1yK2&+wt&(a-@D5 zZc9j(D-4RdpxQWb5>|@(|SPr-n zZ=Sv}(8ZPexcR{SPb(Yq1Laj#Hf|2I_E$DO7>{EFARBfy_VYD9;f2f!B(sYJz`hIW zQ}Z+?63rs^H}DLnr&M<))LCOF_qk#J2mU1#FKI!eGYq5f*cdzq!DZeCLsW85 zk9Q`mDV1=(GPc5Q>c;sjKYcqu%@ui$sxkC+Z-8Qc0z;H>RIQ|p@VjorPLH3k&)-#6 z!&epsHCN=RY%_-W98k<+7^18QF*8~dm2n3yy@CD3OGM2zz=_>2tE4v%iT#=`;10hU^Krvr{A;AHu(c5+#qrFbZ$Q81yY%=1CZ$fMZZRHXSH1ekW$GKVz>2{v|{kg^eIr z46j)N!5;$K3LQMkauRu;I-i(vTitP~8fzubcf5bPQFmk@1CeG*32 z(%3EVm}_8&DEs_MqJ;l-1W(JbpTxg}Xrt(iH}TakTufEb--!#lEKS%*MwyliTB*tvleoHo{F$Y|};D*wh#*o}8ln!>*pM z!*(lM_4;mQ(?M5n%b>AnH|Q}}-#2bH=#Y!tkjElq?%aD8Vca`QLm((WwW8p7rBq98 zlw_yY@oM9sS7vGKVr>~xV(ISV*8gD@Dde8V5(H&*gdy#dH6q?VTQeSo*g-i8_H;MI zMsA4M0|RO<<=M6bTjxq;ECivIi;XX!+*KJ{$jzAdfnw~3;Rjr>0=reicIsp_se&o* z(JfV^;Nq(>aM~?o(_U+8I)*)Kzrk(?27iAAw5?X;|AshGHCLN*9~Q^;GjsV3Q()0= z*W~UN2cF*x-y4V17=boRVMrXk5b41#@)+lR*omEoY~iWvLwPtn>h1;xA) zhUnmMXS62j)m_S10sF$!bgTz8SHz%WY7giL&4_IU(R>AlsNvXDsT?TLWhhqrV3(by z?-x*WMIQPpPGT>4BRtP^rz02%g)hb)$RrRv)iZN15XYS}bH|Be;mq92#DT)SRvfctBI4Ze z8>WU<+u=(60~2UBfK06)0n`9hdcE&}V~uUa?WAR(c5|^AKDO7X*h20tJr7j#Mi`PI zR3kMukP)x3fsA;K4P>}AmfG&a;dl?geuvLN_)XRp;`JJ+xuP2L_!01!i$>*66njwa zRbuxurpmWC0qaBhzknf8;Ab&LPb#Q>7LKy~(=d3@4uARDg8EcYb483vUidOTH36l8 z+i;S6Tp6g6JygobuH|qb;NVJpoA%DDX-EbXOf9W>wThBh^I+9;#Y=z9j< z)$#VXq;%EMNX9(moNAaIndd1dGl;86n|?;$6csZYpwn)?tq9_i=UCY6ewnI1xd6U~ zgqXM$c1javFmD#%Z(dp9v#wU=P56HF9uQbbg{7`1e~O4+tIS4?(SUY>f=MSI-^zgQCp=*A-jAAgB zs_6Vg*k6MAQ&m7L0Uz+1%am2Wog0OyiD?P`5`{`}kG*RGxk|-uLlH~jS^(9~L*n*1 z#$}7LCgQz*%f?VJ5WFGeGr~9~Pl3NpS@n`&PXT>~$5VvkTDdS7&nat3x-y<+8t(w$ zZV%-0UsTrZQDv|Os3*XChJ4Abk`Bp`->t0SC%{whfN{_lP7vlB$|^&asvkiA)8pyd zq^0*M>ria~RB8Zi6n~xBFG>PL#eQY&Mm15*!0cQFpjfF49niaQh$RUKx@^-lrj|WHV*Ve2lnGiRD?n#$?gcF z|3#?bS>_q0^9TB*96DIJ#lb=r2Wx{kSZd;68F!()Vd~a#ooU^c<5r++5UTPGqsX}o zu%2dv^je_n`gWsfU5c;Tq`ut?_$Eg5Rc3U_iMQdr+q9BUuaw#e#w%p*C-WR(-e+2$ zppmMNK|kv8)F%WKoe$IOW9Bl2$|hIKJZ@SiN+6RK!m1PgqEFG~3i5_K^Gq|BQBnyK z&U2iYhFa0fJsnhtCY2A$J zu~PSe`>2oji3qLYC(~M(0K{%E-}3?4wY;!3>bPmGL?Np0fH>i!7?6%(LrKhEII9;e zJS~i^68P)%Gb{nAOL7saMj8R@%2H*t2kPv9K(3JzTAt^|{c-S~it`itfPWHc zL$@etdk4IOasJCpjUBW)q5g>e|AO~NoF8KRQi9gs=rx6(o`5b4e>eQ-PB?ReR&$Jk zFSSGbnuFIS&c~rehFK7_UPgy5HDmyI=g0ZgyF$KJ(AtU7Px#ZoyUOP$Z(NA_{Y9vI z5o*${ATJ|}#V&o1q4__Bda)yT2)rFt_)6+y5zomsyP2h9FeOp3;T(_$2CccMPK2v3 zVI1@1j3VC2X?8c;OpT*23|ensB0!MJh+txhzncL^(2JWF1+Di{`9xbOcx}nol~edr zg4Pg>jv{{!c!PcUgdvR0oS?P6I#Mth^s7Bt9eE9y7qoD#u%Q-%dAAQZQNh+$Cm$L% z1g!-e5+4I|n+GrwK4$Em2wEEoz)DzB`~c>kK0s^l%nEieXpQ5D zk>X&ojlWJ?URPAE(CE-%OgyArHU_KQW9t!23Lr+HnH92<(a#F%A#&p#k%-$Zr zNLbJoyrUs&SWECmf>c{eZ2#6P}qGW(# z#NA+9hOKev-xbdx`o1bu28K$|im=rhU7QLfV(lFNN}1qml?c14uMS(sF*#GE!1k?* z_f@<2o32G+^irYz$O$zX*hxNK4P%}(<)eT_Y>;a5~b^-9_s?bv#dYSWtp9T=v@V6B!4{+LA)KxLFncP@FrB{ zCw%`X__YuPw(Hqo-c|+RHrzd^$>s>lYL2<8xdDi0eU#K)-!Kw>V!i&4Wer9TV!i{| z$5o(4!Uq_f%=wnJjn(=WFb&LQb$LsU~8~Rg|9^Fi_DNTYK>(b<0ITKASP8s$?T|T`eAVUn>G8^gwEKJ&*7V9n&G3k z-0Eyl?t{#u_}96<1S=G9obh{4L_x<`oC&{u1)0f~-G;IU0Qu6x(^DBQ86`sg9KSR^ z$IoTkY0u~Q=5Pd}+8 z*ta{+ioMkNK~&5LvF~**6?=oTMC?t@Q(`~pd@T0E&YxmG>g2Yh{9{fhu^)FX5POSr zh1gr2+r)mtc~I;poma%(=G@VWa!)y%#eUj(L+tI&F|nU<5?ho1tkYWT9nJu;pLeE< zz0+AN_KVJ=V!z~kEcPzPXhXS|odU6UJ1xb2#Tg{_tIm~Tzve6x`*r7OvEOjs7JHBL zy=%wXQqP-CL)Si2?6;gtTzj6_dz}rgy<6;k&X=z3U{;e8byQ{}aYR*SFL5NQ%&FqY zRWYU|Ct6*_nAtheLKR~!=R}KDjMyS}MR3>XMc6LcJn@Qj%)(=E+lhUhi{S|wQ@}VY zaT6-2F^HVR{>js@l<+2`4&ra#2dzrj)!!Ko_Bqj;6<&6O^2g(%vtC^T{tEE!^ZDB-pT~!x#OYS-Jj?@`#OJ_&&BsU> z8grHP@e3~I2>9Ro7}1mb(vQ${tyTAK=m;X@B>W}q?h*or|HSL9Mhn0%2CtFFR}9v; zY(XL97bZVZZ0I?05AgdCBRO-93dnV5U4UX11BuuZ} z8xmdZr>5eaA{dH999WL2S(2&pmqSU5Xk)C?tpzicr}L^<>u6C1X4+q)kYa5cz79x` zPuj6|4LMEEykG<9Whry;fVB%kNAdpwfAavCM&|yd;C9aYpugtY&=kX8bETW4lEFiV zPL~9thHPfYozK!CulTo+ccYLH@{Q=R%Yhq(|Hah(QRR>yDbw8Rz?tiFPY)Sst^;;( zz*SJ%ry*kzys`k+5iqsJlE%?hpuD*4*z zG5ETtPDa`d38V+eM(VnUG`1!xWE`6fUuA4Z!IpA$4SM@l!FD|b+eWZ&+y-pQnUQJW zo=Z>4ne~6fgOHj4f|=c((XgrL@;|Nyvu`PZ%DCWf#4@#MV$1Zm;Y}-2(f?%Oy)d82 z)9NdWmpDk%X#)kSoLaJO?G9eCD$HyOjbxUMo@}HwQkL_ruA4`xnOH4QHh!9s)=XI= z5GfXMLbWPvCz1z!ZIx9q3Ts8sSwem{ii^R;AH!+a4WORND(HgA87MtHkl}QG53K&m zdLSP;3bBbEOBQZ*9Go>102;2W#WMzHy zz6O2dgJhYC8Dcm$GmoxR*2XV%{{2SK*$B?adS(|`wNxRKYLo6fMaoPphyI5377%Ko z1l(xfz74F|%IX9?%)72+QIA%3;pj^*GSY5T7JC!XRr4kY%*WbmNE0S|0!Bsz&6Z_m zwB+-LO1n)($K-fry+T>d2V!p`;e)9ELW!)D_3f%~P;*3yZ`)({4s{v9D`63}j0FI9z{*V&}&vOcP;ap+t~NI?nctaGHSvC2I5KRWN4kVQROnJ(*} zl=ad=E$T>F|EjFb==P}V0#87fHOtHhq&IRdLB|(JZ|qzyb`xi|*iD^V#cuA@??8U3 z(^BjfPG_-OI(@}%?Yt(qHqHUD+d7BEZs&Y2cA2wQa2=faVs~_w3%!$bpV*z9$Hea9 z>=3(~GgxrloiSqfaHfjg)0ruDFXvCeo#|NO@9m_C-N&gRc0cDKvCneupq)|bJS}z$ zM|GsXrIQCcc<>kW*eCPeZVh+e+UTfzHDs?I$eiiCMO@}AC)kPh4bFJ6Z*t~~eY10~ z*bAKPV&CHI6Z=-@E3p?jX`Lyz#Az({Qm4DvcR3@)Ugpdcd%3e(?7N-k#a`_k7JIF8 zTVd06ZpGI_*wAoG{Zg1WSS&3s+x zzh!6hl?R;=Un+?|u&p2iSRjP~U9h3kr;1DhJz-P4ERe+B%lIwF_4RmX1mUuL7J zydpRZv}EY{$?0$%}Dq!dBaSr@wMRX1N|e9r)P5|B0SQx=HX#d zssDm|(nF{yRb0h+WzHxw@xUI8zo00UgHUVXFJWlZ@b8ZSHP*~sf+{;aAs3!;W;zD~ z!(If1Mj-cWrx?|jLn0$Wc@v6!NH;=?zdR`&b{%7R4 zi5SpR1Mg^fus`JT78LT>&${28iB7V8>esL$HQ;Y`0RFPnX0XJ+ZYBI3QdhyEKe&l{ zAFatK)xFvRuT$FPu)2|VHuY|)$z;~$d8kh3v=mq)sP{Q^vQC$@r(uads{;P6X=$+N zzxoEOKR6ZH%;c^kOcYA@#Job3)J(kMOE&vO#~0wC=onYz&d$0Y8ES-np{Kui>>je1 zH_%#&74qMpPCW>S7)EtjWI4}TfyIg_l;q)WQiJjhqxzFvO}fDPu(>iCgWtl#7}aZH zP2L=4J%YuP3Q*7SI3jJ#7)SOxoD_aqVYp%t*VU{^2+MGTk)Se477pHL` zORi3yIl(%Ng`YK$yN|MuGg+E5*}4_!ej3zW9!KpEw!AyN)+)z~!GmCZehOROe%@|9 zfgNn?dZ-q`raNNgj(8vfw=H z5K^wXg5HY)Cm9LNT424-)w^LJU*fS;2<2&vU|S0=P92ApKL-S*<^Zs;Drn?wD*(F7 z%D_t#wZ`M==8OwDL1?*zON;hg73JoNEV=q}p-S9~C^)=p+kRSEdrFn@9I(gmS1AnZ zBwR)oUxC{5mDC}d%q+g!v{$J_=D!wyMOlroBZA^h5I|g9(Q9PQK(n{+Qi-cOV$${{ zVr%0C`A+1@P#;ZM9iqcd-~L@$$NxsQgM1Z1)tDX5w!L6su`*O0uMfbw-DhR-an4?# z68YjZtF!@d4=S6*>%T9QFZN^ z-JO!1O$h0Qkc1M_Nk|Bx_uh-ro6-dZMa2q=id{e~C?a;Sixqpp`dVH)))y2DD%dNQ z?|II>GrIxxk8gj!nYs6#=bT&T&YhXF^DMx-FRFKiQe53+^dClojRu?_psA~J3`W9* zC^XA(20461C76RM z_`r3$^D%m^CyeyR7AnOR!k8eE=bTlanZ`t<&hjN{I*c5}E`O*EU-`O}WzFM5;1`|O zfM@&yY!_n-)zMl+-swG=y%*)rBJ*wNRp*H>OhMca)FW{uPyWyo*{o^SCD$VSrnB=a zQxLm=`Yb?Zy@L}q^p5lGm!{DJnfwKbg*vJ7E9p*WJESa60VJiq)Z`taku{v=KX(SB z1!nf=ap1%KQLzl<_Y;n${Ohml~~(-PjHt^9{0%);qtUmv=ztbLKo7 zg*4?%X4HtVsiHN>9FPj%+j)Y+3Hs^S6n-(=zvb67H^4a-;&u>q@Wtvx&*C&59pT)H zv-&vThd_LY4>9Fw-W<+f(b{B=V|V%7*-MS+A?ZE$!mAAU6M`LiFFLUqi|mGFvXc>+e+R1Ow6|;wd?KHRzBC4iUKW&DP-p7YcV%MMT7sC?|H80a6NIycQ zKX5j}3**I8&&_szsLZ_l|23l?)$P7onaM2wf0jl)9b9z`&2)-Qp&8xghoM9LHka_f zwK<wC^$3vgznS?(dWvtOSQ;+m z{7Sux`*Pomg#XP9Z{m&i<-F+HUA*;`SXFd@WqXu!HkL5vSlFG2E%Y=`6D1n!tZoa@ zkw`wl7n%PNc`a2ZI(Kjxb0K8weYu)u+Hk_Md*;biti`2^5SilKkJSZn=405sK!wj> z%VfxC!^?)2j5c%)vHRr7Y|(=2 zNPCX+6c(Y9T{R#*sKBb344GX18Ev?Hw7ciYW2jUv2JPdWQ*hxlX8^M}&=4b3Gg@## zXrJM%fzOH9IR~j15y+aTNsV)j;j)|3a@)aHVTUN!cVQf3nD2Oe3F}23d+0dVp7mRi zXymUt3orF&rte6_f6bBbC2Xtp_n<#9H5JZkJ_Hh*BU2XP+!<}peGQ_y`IB&iz$vZm zZ*L>MAiqt6j!*vq@kRNEz)w)*zidQ&asG4YT#0{oD&oiFN8v`txV(=j?9!1-TK7=o zCD-)AUL6aNTZBzr*t=tEgws0Mtl;q}*AjH;n-DDPeJ!+Pc9+Xz!jiW+#|nntiMTWN zhu#$>Fz_<8-@q0sV{QDQ_b%R}n|qM_gD*1cMXrb5b*P=0ghvAz*hIDI(Bnc<51uJb zsK^wY*#+SKROnAJL&4A+#T0+&am5-8y*F!2V+^3?GVE3c+6)ClZ;B}Bq4x|tNLVa$ z3wGP6z^a)H{man%0?SqNJz%~JG{gwif}yvg(iDqk1kD)5CN(iqxw^DhhYrIP(Cmcd zf!KnDqO35Ps^70mY2qu)RIV`X%R)b4QDDvnY;mHpDm&2${pxZ|r@dlA0Rx#g2OQ8@ zSTgYVHr6RT4$^Thsp}u+a>*ayTj27*%m0hWN!`Qv13V)FIuWMI@`t-%fOqSz2dp08 z%dzT`0jvl3B%E)F13U+>a1#f3LAi>{a;mUvM=q!0%amEexuSBD+Q&*T|I2+(Qe#8E zVK@o!4Y-MDo1`wz1z1{`%Te7kv4zG#XtWejcP9&o^+>(mm#F1b*85m^C-rhhqK)}h z_F;&h^dW|l_H$Bk%fw0PT}XCPI-RDoxS~oL?zyT$G?GKz%5J|i_k4*QHqmiG81Y2iV&jA%NYI&jM z)|rJ38ySlD-euA%Gh)p@a;f1`FGB9-)|uglsJ0H_Hg;xvq`Pz-iIBUwt(7|gVa45C zQtR?5uSM?Wk~*C;xtmKGlDc(*n)MobtfZ4fQmt$dm=`E2_)`gcM(nlf_EOIxO z^vk*r*QFWOimwnEknu1g^DJ^Vmkg3pFSaTVMP#r>C6lv1 zfaG$E+|4CZaz968lSS_4lBrUh%@(;o|FZ+2wwR;yPq=E(M!2UkuU7N8PG9WOFVBn=_Lu zn9Lm%he6RHn{z4HoW~%In<+aE4j;y6t{D;QovV-y!_F&jK?VHIv`3#Ilc@^rkl(o! z{LVD6fyuJd8BVA6^a3Ej@=OFhj6_kFlq}DsV0osDUPnqs6CDhXEYGDY6w5OKvH+C& zD1b930|2l*vt0C1Qbig}mgiEiJTuu@iRrTxEYBkm=}in9&ScDF6s^Lc?~vuW6fDma z(5*?e$^lqs+cKcQ^32klK@@i|F_0$6@>~j*XPUS(Fd?DD?4;w!@>~j*=R1I*9k5bBWSxfCqV1kl^)fTAjc-kumx zn&p{DdVR%hsb+bmoNi(Xa;NVA$iec=HsWk$%1*|v z?t0FTF>*bZ&Xn_EDp7Jiu*Hnnkt-ltAeqzGEM7VzMy}`5l_H}1S)zzs&!ywVAU)C& z4U+4*^dTt`ozxPv9CAIEg6o;3{W?%%Ore;DURaB%_-x^NE^{Pek?XlENl(rnwm>8* zk%&dE=Q2+su0^irvY13-R%RI@$r4Gmc07$pibOK3U!O-rU1V}Bay^%&ill{=u?dmp z5-GCC^<0(_<1JOGHK92onawz|YYg{C6f{Pz=h6?QGW5QaDi|?xJ(tdwmZ2|Ryk+Es zG-Bj>E?p#zN*}#=^Jw{oHIPpcefsVlsPB;LxfEQ_Y_&Q9q{k&B4XL}Gof{+9bLnFO zrQcsXFT?o~ZBPoXXWo-94rC0W12{aK?}z}`GjIOsC8)Fo5hK@g={r(LIu0fjQsj>L z0_5O&X4`R#>zW+JSa(?{jI9 znzHDpDCfN4koUP1ywA*$Zj15itEP6y`&` znE-k~DuA4Rs%YeWE(Py1%RtviDFfzx-W--{-e=0_E~#btC+~qw@jkN`=|QQAPP>K@ zE8b^jOUKH1wnqN;W1+2hpQ%lM%Xr1LSn)nnn{Jr#S{eCESYE~ZOl^8+Cgv?-#rsTc zI&CKA&4*8=iuak?^yN&n2A>o0`JFPN1}1r*OTqih2V?Stj5(Q2-+^)^)gJi z75XhB)w%9E#_TqXg{<>%p1FK9l#yypLb)$EO_O{-u6f1}6^vVHeCHA)7tCVkZxl*2qZ$h=rsnSvv^f(iU7-M)Gm8l$T|&8QmLEib&tHkx-t+MSkR~?-8!d<@p}D z@im02@_D*PM&lNuyguzX;&XmRxMTY13^$vFa6|fq3|l)9?v!x_! zJ7?U_^!>EcCH*Oeca2B5YsM=Kw~Zk@C{6PH5=;N`!7AU|(R}5XtMcr^L|48(UobmS z>53dx9vc;{$W>)1K;Xt6``fE1A-Bp-O-c>zR_z>a;=19kq$-7Fo z51G8HhN!k8lXuln6(*B+)p(^#Chw|AD!m=rxoUQ1SC)ZH-c@t51|qB&x2x-1vo~(B z$hcjtZlny0jN8@fM#{B1e~L&Cx!Xy#$hckIPa-*1VF4ojB~oOOal3keL`tn8G%!#i zH5M7Ss|QJ>(He%KUp-hNy(}_rR}YcMAgkazM25;e<0z|`kzo=UZIN-idW1yASY+I; z9wm{nR^2U#jFHGVi;UaV<0Nv3)dP2~)srQ1s71!@>M0T#Z;^4kdb&g=Sm!Y^Qz8>B zGHzENE|EzV8MmuvOJuS|#_j5b5}9I=al3kvM5Y=sGHzF&n8GW43pAumL9)m<=HI&+ zqEoU;k!-tk@2VxL2cmMHY#IfJ|A=|=>Xd3E6_9Yd{U*5@6_9Yd{WWrlE|^WsjS6!O zF}EuW3AfwdA(-=oaJxMSw|Ry~{`(0QLPg08+wP69eZJY-t?e5AARC{9LeyG>>eO~i zl38`g(X$sBwcRBW!OQ|oZ4YZRV7*go`-acO{R=(Jluo}Cj#xwK^p}WhM9u@Ic7XN1 z(itAU6t;X>1EjajdDLMV+#R*epD3KE-*ky<-j7F2YHQ~eXWfvNMP z&FCDbQ(tE45z?-7l~bwC8Gj(PKAgha=k&fv=CdNTlck;P`T>uxG0d8OoKZV2oWi!I zcbys&(%R0W81l6zhGe|Z<4&9ZU>=eW4L4&`(*e(9JIl^+%%>r{A}r;kQ=X{k>*;QG z*9~gbPDed;!42*k4QDH^p|w{jWqR-(2&n6t20)K+GTr**pATYL?W8`d%@Q{3QK4jd z{7GGm!B$r!J*~!D-6=OA@~oLm4?vTb6ny*qa3mco4c>vNQX+=XT|5b5?koWAlvbvr zU>u+_h*g9jzem=cbRaxX?ks)>@>EqXdKL=6a9Wfhd9!K{IvT1KxGW^pqVL1U0Jui! z@kL(zrp$2OXD3Vwx8z!gFZUAO)5SiCmTY3uY{1{56tEb7l z&|D8A=}m#s@l&Nb$+%qA{j6pT`hn_Xemkn}SCve+P;KMxW03r=*r1cB25&tNsh_B! zPM=YoTyYMP-%~a+2kK;#A=I30;j}m(h8r#a-esxs1jRg%@zqGqG31_7{B0p1M& z451QHRMsK+QQci3IZ^5Hsx9BmM)_1V3LRio^5CPe9I5+CPYWYnLc|Ft(;-%hX2i}p z4M}UIh3OuvQ~R=))=4UzW#iSrz&RA6`$EZdo>h6&y^1rquEtEJAFZkoCltfE{syGi ztGwx38<)wHq9)AwzhGXeyG@!bw()I*ACjq<&bQJ(hVyI`smoQH>|=7g#|qlEhO20m zXcTzQB3vzDTijTqE%( zJztF&8Lc~Yl4oRebyXrd#~QJA6xF9OLho1IdStY2xUxC5FAq{LHa8Z+!#6x`jR{TW zOLxhr>}_{R5zbdSMwUy^mY1bbm#?I4m#`imEW7Tt2H56_>QA8)-w}Le$oF`FSaqpZ&4j-qgHX zG%H1u3AW46)VTcHuI=)_tuDV(5Ose+5VwpL_e7M7Fe>|U`6vr$k0EVOhWDaI$0-h2J@jWyl-KqQaxMe6NoD(T)EHQoDM$d2~qro7lrCEa_Y zrh8un+1dl-q-Qw=!9$GBPq$u2*2f*3jc4oLh>R5@bb&dQ+J!j zZ#SWU_~ohto?cuo#JsoZ^x;AJas>Mve;Zz?wF`3&0x@r&705n_&NE8*qIx57Ta_9f z7s$`ta0^nC`9a&EL#R5>$XyNW3rPL$E`{Ow!k@WepO0;?u&qhTV$aEw7w2ncRB)}! z?-=Lub$8nlXi;sVpRxcGBazzlZ8vf1ZMPIdnVtaCi}9MgIbWvYBdhC8dv!qty+-gQ zP{Zg-f4nQT@wCABN-<6f4V?L~a5Q|(viM?}_3F!a-HWtNb)fSYbPD;cV>mPy(Q_48 z#E)dWJsn8-{kq&|pztA(1GGM}m!G*Igyu;o_&inc`HM*)h*ni@6Urg`U64mlEt~3$ppqqYzVHDAgaR<~xUt*Wek;77?lY)W1a7Hn6 zTYy*WDWmXTTV0l(L0Phqnl1XMW6^e;pKXy68iZY7YytZtT3^Vn+hCG$GFo3L{*}d4 z-};eh9D(DMJC#*Dca@*H;S8i^i@i1Tva1n6qhxoHBSs}ZB6b}jjdvA;bk2a%mLfxV4q^kq$ z^+IaUF$a&L%bMvmZZa2`@0)mW@Hj&(n+f}wN1i90bRGeWbPM99vLnZm0&?E3Ui=0`I$;b?^*|gkP$SEUqTquca1%3j! zlGL`L<3mx7BYsP_as-?=Ld!xWye!~Ly|}P!LZ~bKTrbc?NDGSaDy#>tz&Nd!!tb?_ z<&s&FpQif;k!f15eV~^-_Mpn6T-(e>`F7zNoTZ;&aMf$Q@<4A4^n$^lMj6=Rnv62A z#RVgRAHZ7zl~xB8{L}*qU=(eu!owY;hAzcUPBTuk#&9B!#M!hB$24sRT_Qho!;?tO z7ByZL&W{+zE~NZ$o07*z)jp(3Z~qrYrE!+vR7l2+(+|=qIYjGlk>=~rmr~k|pJW*a#MWC?CNqP)E=H=H4-_A8KH!q8s<6b# zS5+8w1isu-eLA4QHM4Ts9%OQi6IGQ$hw`(ITLG!pnVlMB)*N?J38(L%IrO8q`WMMc zeB^J}VQL&89`?w2)I_b0#*p7gW@HWaeuHUrgzY|xz{u>+kvKF-jox{6L@_+?}`3*o^P>ku5<=sefW!J7KXbzj zED3^hi4*e(dVE>K%$EF?6X)g1^U;ac2(vlwez26QB-ykz(oE%0m1$bYOGo($n5O4^ z0gcfr0q5f=PZ#klm8((tHI^5kBu!SMeGnRWTNJBql;tp8LOd3gpSfW}VhPb`m|4+= z_eWZ@fSf6cZo!FgGf<&Nu#?flOI~~^7SqH4tjTxc*q}402r}4%)NIk`P~?BPenv_t zIx%4=CKx09KX4PQf;>wbi;u|$q-KjgjUA0l`XMDW!Z)@YB{PbNx*Xn$OK|*Rvnolv zKqn$KThw5q8*kpiZS4(6oN$wZ;)Il+xnT=ZrTbdT5Cmy2Zv(@H_J1H~qv3S{d`D9_ ztn;oioNfOG!HG92oURiF$8fyw46O44JZinh9HUKMWrE-!oSVYg5PdP41PAbx3ium! zYPRUZV#y~(c;ADRdW~y9VfZsQ+>KNjs}IUhL=7$|!UX}Tq5ohfHK52SCh|(mQ2TJq zI4HlLk(w=P$nWaJPp0$U@8D0SSE%K*x^KiM(~07&Wc-SgKVnR3k0%;4mi~b7Is4Qn z(;v@5DfI8lG5DuEKbhXf7}pyMI{p*N!>88nF2mKeq6e_4ey#WOW_@@qNy>=U`fa=%hd_nHP!ngU+`&saUIvAzn|&FxIzd z+LKUz)Ol>AlHLW${k{Ps_0<`WPVIOm3$CEgIaxau>h#o#XZ!#ybFzE4lW4XcM+PS1e=)A;#Q_}Q4IHD5chG8+IS#GR4KZ$(?v`hC<7IV&{2!L<4w!?-L! zONcuo)jJmG8E)~w0DU&THjn0gIzUSuxHFWw^G)ZsB&@6h0PC(=Gv>5_IlOkf8A+Te zY^)Mhzpx5M%RHXw8%-zn8vN!UE5W8l&@A+}(Xw*}%oB$s*S0XeyZy%DT07Zw$_K7h8kQlsJ9t_ zyM2%;U8_Kkhn&rs8uStXI|7iL@(T2ykn`Pz8uT3ie*_>oX%*=GkW=uZ24$mwt+1(9 zkY-Y#{IC=Hp9XaUU|;}ZQyCF{``zjib{=1)Pyd+!%=JN9-Y4wbh%1Gh=BGinigKAj zEBWnrYe?8>*sb-if$XM0U&+UWoq3zI{u7Wr8|bI<+waz4HMe1!G9&!-yEQrNT!X6< zG3Gw(_`!6kmXXR&zgsgqibJvj&k8#?;7K+yWOIlk&Y8uO~iyF%7Gkh}8b_lLsHiP)(IJ*hTaDQhtUgih*0oVxP^*+Fe^h<+mSJa zQob+LQs+bG;(Z0T(z67*B;@o_v2AvPUWdTS{Ujn)|;tV}igYE+0;Q*wjF9F>V zaaQGN&|3iP3P5URx{Fil(-G(PjvBNd02_~*RKv}ZlUP7+MVt>l(V!v#IyM2RD<+4u z5fS)D5vS}~4da^rv}xqm5oh*M8hHXxXEZ@-5C-AQYcyyh0JjIA_-Ujvj#|z` zxXj7*;W?mQ50Fx0_kZlg{+2TqyrG00}(Q~bB+Le)Ul-h;p(9u~u;W)Q^rQ!Pl&BPTop}&JhRvo0O|GMLRHdE`g z2fkmRBV8#wHEN|qpE*u%EdHbx(*RxeH}C^%@rUCq#9SmgYk|M%A9Qpr(p+c5n;QNE zpzr++JYhgev4*Q({WTNKAN$Y!-f9|${p+sN6RPZ#62N=?jY_;9Tiwpf>)WpL)>}$tBH;4_ zl{hfMj{{quyUvYA=|$X1pe`p;7CF)f!8kNre(llv&UJ8M!B-vu+ZGsQ$&AR8T#Ehf zIz4W}7ZlMC=Ia2wrGsB;~3@V3045KRl7s8UJA-ymOMXa+-!82I$cNJh&2SI)0>3HAX(-q5&VUX+7_N)(K$0^D_bXD^!+|;`KqeISjbaq`nIz{n+=vMB z0-&x6kO_qqtX=E3mh6Koj!V0o`)Zqg*u{jH<69VLcg%$Wv6yYfi=jYR} zI~Z<61UWtG+d;;2WdP>z0Q10(8{Da3dnfJEP8~6pdT})QJHyp|Fcx6!x*GbKIjExelo717t#B z1^H3b$-pTq)p``D*8}8%Ei3SEqRunE;k|(VaWLG72r}e3I}g!@vvcwM6Wc+<;QotH z*fbz9TlB^mXZ8kabbypnac4xLeAL+1bGB?(j~dM*fI2QfvRWE+y60@(szIv(xFG-q z=JfhPY;N$JO`mD_V}O465AekGg(%+cIfJg(ioZZ9jN7GnH|xSY<2ku|G^hZ84gn}$ z7&f$q@A90Avow4dpmY8KuFlNn{7yc*zT~y%-~(EN0I7TA1yK^4v$GKI+92Mg*ZOQB z-nB`*duTphBz5Qs$Q*ui(FXDE7u^tRNr_i%G6)YjRz|-wpgWX0(lPm*l#(PpCa7nIf`{cUcK)C+^fYAm3pIo;&hHVRM2^JzG*R?gdt`wmGfB^)t2nl76 zkX+Z+%4Y*~{iG$UdW7TC0lWw{}3T`zHhuJi^hri_j<6%|m)yU#3Qk z(hkUVyFofIK>SB4ASQfr-Kh{RY637ha12*aKDq8nATAD2GO`kE?bhVFTY$Ky3CeK! zfoOY=Cf9ud!Z!nevOscO+b7rk62hN+fO^iHOmbaElk0jo|_aWG)REGCIR+w9rcZn zIy+8Rk9n8fWO6pzRHFcf>%2r*WC-j_Y}TO zVFz-$+CI5%5|$Pj*hFT2K!AKt*ao>SYiK4>s&ssE-R?*k9_TQn73B+pAlGG)Ojq*3 zb9y1yT>{iuO?5s-W?GToShYc}%f>a6h*R1=x$YfEc`(r46R%@HuKOya?+1vliBKkd za^3GJEb=S5y_cW2LiyynIY5*KC}yNe*itH^$#uH}FeU&oF9DhDIvSXn1!*X9-MK)W z{5QyPGD8W{C)ZsI*tG{kjVhAs+5x%lHbA!fu!OfJjwaXrk)`<%fIU9Ql;)Dx7`7(Y z6;K$<&=hQ{=cUCINR#Uds1$&@0K`_qUq~*&`0>eg2SYe90LWNiziO0Eu6q;^Ck7}n z6X6Yrt;uyc#>{m9TtSeG;T*m&wLz}?JTf)q1&gi8bqO+`#O^twWl$@*CfAkI<|D{H zr(CSb3lv+E>xzB|Yeg5E(pPd#t}FVjAS?}|ET!Qa7F(0+5@e3T?ogto zG&y|3VuM`w^*CCS>k?$1ik&dxifws?Vrz0;v9=NN>jP^_uE}*p|53=cQ?B%B%GTt% zQuYs#usbg2D;8Um>x%qO$Re!+eZFF`HMy?XZwXnOxSX$8Y)!5!@*a@&i_7^6!Pexu z@(N)ZWV7OOzJjrfB0{b!Bji-b&WOwTipAFCx+32Q+4X@unXgzJO|H8Q$=fMnLz_e! zO0LOu-+^pT6S*nlF-N|r3Ub|5Sdy6XCcxI@x`dm}+hA74raMr+pbB!`i{ofbu1k>F z6TALIs}A6M0b7&ninZyG&8A!pPLXSJUD00-*_na9OLAS?C)d3a={Neis_+Wnlj}YV z;j;l?znpC(*R_3e-47uA*asN$Jlyulb$>;Aq^;k6>Qvi%ub%Ny%iwxT**IfeP@jd{22wfrb$#qG=eU&d$O{Okjg7V3A?*`(jrYMz< zpnP)OcYxT}6eSlZsh!H!C)bU%!vh~|@#>p0=O;jYa^3cT4Q>hztm@{FQuyS$(}6vq zDLyc*@%;C(pDKU?wt_c=K~Cv+_{cVuKOa=-}YsuYB>UIpImn@ zgues;)o3KwwL_X*H>DJdAZ+S%b-Sf;z5%l>N??{Fy(TWZ-Nq>P$#n-H{ZL;flaW4O zx19o%Pp-QVh~t}}jAWAQ;%S1A>z)tUWliNS$#or{T=zBzA87*6*^u|eK1`GAz7E9a z0ZPVhu)`-JG4^erT=!4FlCV@&Jx`S3l3dsJ$#n}MEDr$EVi_dYbriWSM@XnIpTNb zR>JP}UJE(i==GK37H^&$Z}l#eHTj?Z{I%tAdrTic#xdIk%dIn+0kGV* zmH=38he`k}x2#LH3zl0pcD4(aTefnx3zl0pZ?+4TTcr+`Tcr+`TdFIT+oZ|Sx=K9W zBg<`)X1T3ILTDKvIB`-CZry4#LW<><;6AZA{QqQfMKzu#3(IYEq*s85Z5$23=;W0c zpvHVkqGN^S_H<}nK&z+1swv{EH)cYtSZ=R@=q6umWRc}Is#tCxLh2KNq=+oHQN?mg zBkw@+KT6MFVUs1p8H(lh2PFR%C@PU=xouVj8Zd0CFz3cqHOp;#$hrjb!KjxutyykI zLN+Ooucm$meYv8F<@Qom@fgTY4KR|2!YGzo!CVG8zn-qjA$F3;bsA9R5#p!;?P1HcO&}g#UMitBLW)?Fm5E)71&|2Z> z;M6)+I2`Sq$AlxuavN1Fw`>WMiAH*7tdTsh+#UlX?Z|SQbSQ+1 z%=3{;5t0qXatrKRO|bl8dLlMgupR$IzW^JmNwoXR0oXLb3d?QEuxLAAM=_G3S#FDv z5c)>7C=D(A?PLf?b|la=7VX=PL&3!8A*8!))*-oG=x$R%ciX80T9J3jshaNgSZbtB z!7d9sBmJU*kb&-&kA#yb>4V5+f>lqwyyX4TGQRmB)po$WtY&`n(me<-})fk*Ladl2UKcg)g`K`GN``Rbho_#>Pip; ziJ3@WYr0#?X8avU`dZW75_Dz&lD=kx=)Tr;w@leY&;X!yUxV(J3%n$ztG?EBw@i46 zU}n_JZ-e5Tn_70KbQ14a24f8&b<8W_}97lLR%5ju; zrr<_@^L~}%4W4~C?cC_)%JC+ziySw5ljOL?J5i3ecx&W%tG88--(+=@a{QRJ zrZ4q>%6eJSf64knj=yI0n#J_rvJ5%y&nlAR?^%<1%skAydkl|%t+1~kbJkQ%INA!;zFY?~N zv3_rCInHcG1vcQnJXD9wG(FxE0v6(K`7Un*LjPyxZ8fSqa zlj9?a!gRi%$O1zq=N_g0yy;9HsML#)L0sKr)JP{oW)>JSkHy$3ASqH7-g524FdPw} znYGF>#wVFsV90E?9ZzA9JfENxl*ovYAu|gMnX9olVp+}zMCn`#W`QA-%YpP)kx|yg zW-?zkr;{!-3v`*RfxL8*SH^|T_qar5xA!)8#*xp-vm5fn3&0*%fk>CMCs}s+cVBkL z9GPhCoMw=8O@AK}H_Hek(xdr*F&#u>5LYVmrA zt`5Zc)BDSNb0dkp-)`j7*xj%R^U;GY-cyY%?u{Ih?gxDMpQ%U%AM@vkjQ^Pt&@^}9 z?oFf^T_}4Fp`$cc^8|1;^G{vXz55x)V_o39_2Wv`pIpt`5Oo<1xSHD|r6ab`*{qY> zgsXWd(hv1zYD%gS<$$Ys5v0p}gn1!NEa9x@b2YC+ifLX9#KxwmiC^yp3S7-Taoy1HUe z9psr{RFkW@y)WY>P`nnns5Pp|)jZUfHSuULs>#(n*OxWbvu-;auh-8lrrD#()f`b= z&4gQHp$D$!pHZRK`-b5etm0~330Z4$HAfUzv&6~O98p}&j9Z$knMG<%uI7m1YJQ9| z&DG3mw$8%nj3}<=_ZTNvb3}19OFRctMMQBmGky%Ynj=GU*~op!)oc$;<|8P@)ohQ7 zeS&GhCRejPCZ`+?idV*rjFpJnjrXLs;%Z(3q*()q?2IgVW~aEC&xGg_Y#~}OgB|`9 z%7>GRt9c9Lcla11i(Jk24B={i3aKyq645r6lB?NPT+JW)B8(M&{e6;fHQRGz6^t1+ zxti?->6{!=vnaC_S92b!S%fXrz-lRp;%cr(YENHcb`!C@ia$-bn#V#k?Eta7OjlgZ zM?!3WK_J2kL%5o;!YJv16~<_EMSO)JT+NRHyqyYV3n24X7{b;3 z4w85KBC|c^{tAO!%^i_ontuY21lyvoK>i9txSI2PnZLqd-`5LQGp|JS#|f@PBT)L_ zN<^;a&QP9%&Fsp&mLU|s646c)g@1n~B3CojZ*HP)GWri!B62nF2+-73IR;lEay7FI z-&53^%@JIQ$koiUq@X%V6kLh;9zMAEu)1-NheF|MM&~?*62*taJ7LzFa`)(qUGSx>nQ8yX=hi)Q~ z^6~&pU6o_dO(arg8LlAcHa1MqO(argS?&!)(itqH(Vpza?Z|H2zBgW0v?K9uI}-1v zJ^ULC6>N>A;}U7D!?L8{zKVRTA}lsY!Tl9nKv{ezTJS){g)`8>89!knK%$Wrx|gbt z#6|?FPb8>5S;3WtQhlmoov$jsaqTj{HVxxg(#CqAjg4SEGhRNH0LIuZ9(FTfGVJd6 z)ZZK)UV+$)&I4^|@t5R6z!tdW_gLUze`=ZZC(^)vm`KUG0 zo`t=au!T-WIkaf3)ABNiK0@+dUu2#x@>;4+bf)cuJk$pY*hEzgCHZjRQ-g#_5Q@%-1*h?*#l=ckglIwB31k_xD-N}JA zLwJ~yg&g|iu?@`(E@lhoIG<0_*))g^O9T6nzk_{k8z z0nF||gLM-%BZI5b!ZVzYZc!G^KOhRDDWxXr5gRY%MiOu46i07Sr`SXwgj%(zOa7k_ z3$l^9NgW^7$11E7 zna<^T#WhGYTC6(DFp6iUKaUfJ%jZ96anlS)x{*Y*cvkaA3$d7lJ@ZDS%Ff6oiD>cM z{I~8<|BB50?QO&t+f@$o4;Xoy6k#mjncgt9y>m9C86EOhSqK31%)(!*X0+~@R8--~}ZXN8-~sUC9Q zu@P+*&N~LnJTnvHBp+L-5vy^dgUCw4&d?7bt3`S@UuO0oKwK(X6^1+f(F=eG+09$k z;ZLSGVTd$mVYh%P{RGX4r&Uq7!?%Ja!+9%sHT~}b1v1wHd3k`2kmI~n*RbUR#X~JL4YK_2PrnfdsK$CPPLJXV_LP!;POv<@m?UR^#!X>Skv(-=z;#&Af&rn)DX|C>j)W0;^$MiOmx9&ni+K9dJ03?G^93$((i;;ekFEdLB2!>B1a*Ge2U!n?WUI+LVs#FTvA3l|W_J_~W zyA{ZM709;(bTE8U(oquD_FKsK$#hk?VE9bMTqPgbXg&xt1vZf%FnpdpQyXajpqmeh z51&-X#mJ$M&GhBkh(CO4V!B=@0dN*Ute449eE1Ye<^17u_IjP~?Er0~3R_mG1jA>@ zGM)MB0DMSL+-@*@rv0uh{Q^K39hqp!A3mKp8={HK0su-0O0eV)pY)G$Kgd$_0br01 zQp*PpiiF`qTZ&S>XjbedK!sAhXs%o-gi^g|fx3c_QoZO1l}<|aqJ{CRiF!%1lXDQv z?EC+kQSXI>QXOVG;>7%al}5da5=wPkB2T6nQmW$;$q(TAmq-c!+a;2(!!)Hj%siD~ z=DP$l68<+cGSw?eb(rDzz5UX>g{i^YC@@gJ7n8@dDFET zZ@)}`twu_9;>`bH_XQQ2FF=f;V6B$T6o0K&z=*$ABc=M!)aEzR`Ehim%}}sbYb^?T ztwu_9$!-K7)2P6znGF5QT1_a`R{*m*&=4b33)X6+R2Ms2ka`D!tckk7^XAM*VmB#D zb*y%H8^%@7nLX5TfIi-@kGw^!;FrpR)etGwc{l1oQ{4gkt07XV^A)!#_sZM_t07XV z%W6ljhDfO{alINMrF!COh?MFQ*Q+5?sx$7dhIr?hbR6>XS2_cco4?W-jVN2FvTBwOXAuy98#(uP3_CEyDrdX zC>VOji-I0{q*Ryeo(JR|DzIuML;o`Lgi?J!FdkY+X^0W31w)UN>SCu2K;;CoCJ8N` z#L+fM$j&k3IP5BWsbRMl9m4oD9p^1?#cS*(e-TcibKbe04!i0BfIsX=bbb|6_~JjaXsuvbS`nd2q)3G#PzTv(K+M(nw$6E@q1_^vq-4GGZhthrlJDR zR8-(dBo(;0F|>X)oAY+2q5@B1`1n;{;p*MSpyNV!GJ&h0(fz(vemK(omAwqpImhiz zCU6x_H8K?w_%hdeWIudvGqP!=hg+hEz~4h;M5Ls7_;CappRjS+O-m=DaZfvh)1w3! zcHXgwG;?IVYtv_}zEkp{dZGrWdj(tx+K zGsB~CV$!$HA`N({m0O9hq5&_fb@`sjo{Ia8vO1mdtK$%9Na9U}Yrlp?Oj#$1q}qH; zSk@?!9Q*Qn5$P@Y+| zH+ut-vu)CVmrYFW2m`Ba(twvu&i)@Hm)oQPFPoD41tObl(twvumEvr+NdsOsEs0~} zPP4R{4;z-eGHlVztftfThy0w6#GP6S;rMNyZu;#bH(15O#; zGL?)bN{tw4z$;cL8gK&sdjKFx8t@9xfU{h5;#5T%NE+}8(10^Jx^f62paEw~XO07g z4QDcDGKyB=(2utJ5-`w!Q$W8@)hY*IquZ7N1sZUcW&%;%!9+ey>{<;WXuxUWjKGA1 z60?(zBMo>3Xuw%Sx|1fhC~3eeKm$%0T}(x0L`ef)0UB`TO^;JmLb0sdi!|UBng*OG z`lG7uP=F|Dz$-ulPRn#sH5t(TNE+}8(1261J7qF(sAw{ZO7?^#7NQAF15PM?TMvXr zNdsO18gK&Wj(I>)mBHAa7*Lu9oJhLG#*3>!(eJSwssIf*0d(k804Y(7G~gAQ2Ap#G z(I&{FeFs1e8gRCeJm!;~j9uOJoE~KwNg)?_#Y{OV=zgn8%-S0%N3MWqfs}wAx$z_KHeGJc+n=^HfA)5{cQQ0Z_)XcG&>{ zsK8lWI(;8xm{i~upaLg=-rxrTNCjR2DsTemCawT-3aX-2{t5u7z*z?Rk4qUa_rFw( zbWH_L8GXvNti{QDAX8M}>_xhntD@7cp~Q*`oY~U*Jf5x5f>huYiVB?CbV`p`T#FSI zIJN1k9RpRz%vyScoLszWGW``OvMDAshGeWm!7;Q zS7O(v)jB-fX!PipJE2*ZoW4jyDd=nJxu;|A=)FpLqL%6OPW0R(v3K-drQBA>wen2E zsA`+Zg`!0w@T!vR2N|ZvMOC{z7Rp*X2;tHekBvb%|4xLXaqEQYO}2zSa@%Ld>YQ-_(@6wg)g^sB!z2Q)>Y8x_!);>-4@#4KzdRD*!7AU|-$VFvRi0g# z=Bn1`3uY%OU7e%KW22(gxvC5#0~z;Z=b8m*&lUppQp-3 zBJlS4syrkDuc^qni)AAbcui&Q^9+*+yrwF57sDh1uc^-cmEk;;v~$hu%;qcuiNI^-WECK+h`?*> zT)JY~Bm%Ehw^D{Zq8}paR?4+Ie~L&CS*WDiTb3cxPa-*XVF4ojB~oP1qJaStDYb{t zz(9%A*dzk49VC%Pdl-g(?O=)Yvaec=$PkGPvPlG9JJjW>Xp~*d$S{eFws#$e$Owsy zu}K78J4zyBZ4!akj*-YXn?&HX<0Nv3-2=C-wUZ@ssJ-h-M5ah&yiFqT+UXLRV3P>E zcBVuo+9U$6JzOG_Y!ZRj&X&kzn?&HX3nene{(#mNNo1;#LL%_m6H~alqc5vWKMrtr_xch;e7w9bVj6e;@3JOB?2ANhS!g>G5|~8_Z7mR4L<}C zOxD;>VO5VpKpse`r&3X}hS!5NoU*eh;|>bv_`a7kS>DU|x zs0>m_8eV^otWfFje4sqK_#MbW8qNaH6IuX9l%(PHAPr}G&@o!A)n&<{mWLz_uLo&3 z_2^lk0J6@Dk~F*?q~RR7^fpNF97y>X7nu6RZDb&$=qkGul7`nmCuTuI5BSBmg?DooPw zPI=M~H7^1<7Ah+-eNMoP)hR!3Agz%!yi-fT}~q3>tvFKH-I!;20@UVLelVtcO{ih?HWwd@CJ~E6HFg>olMg3 z29Sm`IeU&yHW@gf2yfTqO((s0#q&es$uX>+niV@|5? zC6}|O;A|mjdFQL8igfT+kL~CJZlsX3yh|r}qDP-^C8C$OkwVh)F7;`Q@TNrf9!bkP zU)h}6c|qzKW;QMwN#R4*n9yVi={M}j-f{U6x?EkvAoK32d=_z;{c&8v}ib0AzB2v@?t*?bs+Cw-yO zb1nWoF&J%bzJav=`RVFa-I?ZI$C7rF~CuDAiz@ObdmQBA~=faHJx* z0hRD1>^+xz$CbCGZb=WOs4$&pJ@**d^DQQB8)a(d`!UbuTS&*{J4#2wo({i+6wl?} zarr6?13>l+BNrJ$v+~)z3>UlndL9;uy|~ZA9uqkl-w}R$$L06KJi!!8*m3y{GRNho z5>- zzVv=b9_fozdnbR2*Pz`rU-~S_j`HOu8`MZ9UwSvqmwpCh7abrcUwSvqmwr8DH~VrU znSANpG++8-NPaplB42tp&6oZzl6MB84DzLSQ+(;1KFnVs`YRCIP?aKd_t`v6tf3 zY=PAR(kTubKx>(?^I=VA>IiHCAkzX^Mo(JHiv8fjj)&-!KwL&gr*O<|31chR6rogA zP0}%KAxs*G85m{sgbSy+W8>J6;SubH1^W|lCNh$`nrE?H z&X!prTy75sn6rWa3n6MtAPZpF<*Y_a85q5cBqFNYAZa#)=a|Q!L}q@n!vj0pG$&H? zq@%Ipg$EN0lO30ONi>LCJM5F#FP=-8=h9TM%$uIec~WkkIB%5#y#>c}P4^O5 z>31E4L3aFY=)5YqW{1`+?6d;e2hn-P&_xcOf&v$M4ZAk{ir7G$KyAp3P7h>b8jbvj z!hMY69&FQzHddSWVQ*cUvLCTf%3`fs(o~oD-*=-qAa9FpI?+Zs$4oy&C+QL+Q~8-2 zMia5 zpG6ynTjx+4%&x{dv#Tyfj)q-gz9q5=97!Bno=e~Ta-Kr_A(^4gqPyj1ZpdEJwAh{I zjYJ-4t$C`E7qOftX#+qVv}#qLI_7UxV{ui^PfGy$9X-My&PDl|8&36ARsGSKoCVKE zs&O@T(wS_>cxMiyN(0WUCvkjH8*CpK{0~xlQJ*a@*xhKWeMp$3u}25kpA)g=oXWBw zJo;V*$O>?+kt#jv7qXnQV;`hWIS4!QAS@@`Bau4bAS~yDCUzY;^^=%Bv^Q$K4uQ~3 z*hxE_#y~Krhn_>NbM#1XopKpf*#fTY7WW)^Jltz?$EVD_?PMHg^V#J(-XYCfadE%*_zrPRMXJLKzt`LvcpTXCQgeH(;c_Is?+F z9e1X zuFWI=L0mIpJ`WiQFXM9aTMmUbWW)?1AvrQ`k?KHF94t!F;5Ku65`HC z;~&>U)B5#BYnuwK88OL>tO_I{?u;~k068?nU4c&1Xw8WEZh)3LaAzoUnh|q<0ASr! zYbHA_U`{h)a{3_arRo<}!DvH9%#dcptbvTImui@SOB?de8Hit_7%@jdMw-inVHotA zYR)#_ZGc!aVlD^tqJ!c1l#L6J&xm;g5V!a!qr1p_M$9LW{-Q54H_bwUl=9=IV#NFi z!o2}NN~{1rBWBpfJr1^bl~m;uZ263sWW((HH&AIOWz}cIoCw%4{{T%arq75;Hq4Cy zUV29wE};}YBj!DTZEp%qK>3WA?*j34fD&6AjEQ;sjF^^#`5K#Qfg{+dsxm$!W(kB1 z0pKeP_e3*3Bjzw5rUWRqbRx=U#5@{^(*qPU)2O@IpnS!MDWK5+ObI}2DnmZV9MX)Ka?&3Mz{x&H%QYjWoaUE8wt;e)K|Aup5FyQo zDf;(8_HdxD_5;Usi7HmSRj#_u(U zW_H{Y2Wv)5V$2%s8VHt>$>*3unh{fsje_h@%Gr>Hl50jx(O(SNadCZqt~s<^F=9%| zS3`DbTuzttkY>ab`JIs67nk#M%^}T*Dfa&h*;{crKi3@6jF=+-2C|>xa(=KQq!}^g z6iJO@5r9qCkN^8e%PJK(D**7kSy_o&d+*-=^Sm>= z=LGP6-|v5Zzq3=`=Y6N{?Ck99K4TyoAIf9=T(kRtWyG9|_=S{7CkxL=$Djg6%u9f{ zsu9YGkrC4k7%}gHa9aRygb~xVjF@8c70BMCT$(6GMoc$g#QX~JzXrNyJdW|(ye>Y8 z{lRl+-yBQ;3-Pz@$In^2mJyTJPgMz7E#+c7k8fhS6TACEAQDDQ*D_)fqmIO3Rsc4s z4c0VAes88OA`U64Oa46|UY3dS;Gik&wgf4{LE z`OdX#88HR)I{^us7&x`?FXc%gV!=*iheK1`ls|oZW%E}e-dQV zQu6C@TN>!w;Y&c45mP{$0JtRtnc+)7mJw4xy8zf7g3RzGAj^m;pw9sK zF$9^BiR_iGWyBOvP7>FD{7nOxAyq(@5mP{9!yMKKWUiR(evS}Rx|R`B;4=VS5W>St zn?+hiOhH}@)VfAU3&Q@Dshe;QF&8a<7XW+}Hq}SWOxGlA88HR6!-=}ZwcXP^(IKmh$+ZjK<#dXbc7MpwTzeo`V4^ILQrb>F-XgZDaa<-j#G-i zsbSMo_{nnDGGfX#h-{dnLy!#4X*LCJ88HPu8_?4m!_y2~ModZlQlPF2kz&(Sy4bXg zn1Xx=s5kaSrdO)ySVm0IAsc39PEasF0w~UwqF9o!6UpPLH!}{2fDU6tc90t_n z#>lBV_u#B}GjWQ7_=OxH4EN-DPlxFb}P1bA?S5!1Ddn3BLA zpgszbOu&LHBc_1V0A1brs&)N{Eq$T$f(1E)v=72qO%A1uR@&=sbtjYvg|yR)G}fc?&BV| z74KvJvfaCo5!1Ddm{h3;eB6FiQtjAJ!BOrIlq$YT1HIC*AU2#4CJz|kUDShwK2jiBc{Ml1$1c$53ht4X&EsE zxe2H{LS$N%iA~FhDadDmdMiZAy)NVN9WzlE6!@!v ze)kvf^ifF^EhDBVCX2BWh<~aoY-TJYrhv$XIXDERGQ*m)aLb4(@Tq{F`4@20*_%$m z^u&9?i`|JAWP#j@zqcF%G)H}NJqoYEs!tVCX*%OmNWP2xe!Am41N1x8xDJB-X&he( zK^vywdMZ|kJpg|Ip2SnCzfy5xMXv#Uf*U(+A)2T&p#2EvHm?1pAd8P4zn;lHQTg&y zxXVE{E6EHf&%WaQkcA<_>zM?vXUPFr0}@`(BzZln(0-lfHvn=fc|DWh_2kYXrwt)V z%jVT*okOcUCV=j zP8Tbd*RyRS0KOYXUeDwd)k+@>%{U8j6nQ<9me+GEs@@muvwra_! znGAV7--O_uP&p>TfYsbWvWtojL{BxJ)1(>DnvXd1rQSfuV)Vkhcp66$8k(T z0k7v#K+FqK(zDWReQ0?-&jVsrBa{>4$3&B#T3*l15Z)dFj0N&~CIep2T@daL0A{s3 zi@cs${i6+8*o*TqWS<9eC&o{aCIeni7iXi7ziFmsB$*g@9L{#0y)XAcMa8F~w+<0r z&m`zPmvzKTg!Hg;i-(OY9`*+Du+_xFHts`xJl&GB!}5Ac2Raw2s_@{n;A5>Mcs+l| zaA9~ola|+0;9CH{gBg99%~4Cn$YjXt`4j{%Q22KWdy6pO_52X=Uj;J7uQ)g@_`ov> zUQd=##VIv90k3CKDIV$LFZL9DR*?_Ili>AamQ+mA!P5re^&A1z)W$j=A~CDTFIy+U z>&ePhapH`2!0UM-VlE4{|D7sh$m@9vr1yo0uZb`w0$$JOA$&UosQy9P1{Lsneg{N^ zvrJZ%VnQZ|ZKN=k*Ru$KE+L3%2}m7Pi&PB~JMB)dQBHrL4%-j%AQ_>=X29!t9AIbd z3&q}We5NxQ@_McX7mP)uIAk&tX7}3sGW5cs-Mr*OPrr%?IFQ zf}{_(;A7t;cs(=wLne=jl9tz#AaxZE*AXq9+Q==hr<^tqLAH}}u_lj!l8;2ZjL0GSQMZc@UJeyq;q1bjTJ_ZpxPV6RcTYPtjio*)=JBJ}63BUQfyUHpm`H z$@!otiH8_542vRv6S8+way}?ZT3%1F{|jXQNy+)3C~0{;Mc%9pw!YzS^Unt%Nz3ag z4?^l7>zk7EK~l0bLwG%P=xZpF4oS3Q zQBv;ZOTkzRR61<)tk6{Dyc}CLmdJ?Wa$Kl&R&uPJDH%ah%ew#vDUQdD) z$uCRsw-vyr8%fLSDb{*I)k!Od=fY);bgkuAM6C(>|GT`-`h4|9~nW-{!0TWcf>v=H{S2sqP zbOaUfdfpAh(~VJbfiig(Xu#|F4q)FmhRT?q1`T*Ua)>v*lDwW-0k7u@2-gGvCq~-Ntbo_^M#SG4$dsu$0+Io* z=Ti{A5&}%6k=GM@M!YpXrhuP9_*DRab*v6&1-zco4p<4o-<--Z@_Hr%Ue7YbR|PUN z5i)t-b{0?pujgPO#x_DZS>*N1vb>(hKz3qdd5pZCSpl!-G6=6|1hB&bIRcUaujj2m z>`PuIx+HkCIep2Um=WQE^FFbYD{=Nvkb2%dx+Z-@(#rC zBBtE=?DE?mMJfTWXI}_Mheo8o$PCG#0$$IVK%CqdC9|V&vMsmDX0lz1bSHm^>4$r5 zvq*F7R{XLjk{*62l6Ho2vuQVYBH0ak{y4fT^&b#LvRCPjSbvCQuh#v7ub7;oDJmu&`eEZt{IM7Uc4!JVK3e?_aCuv^T~eG+^K={|G2C0iVbJ0_v~%pI+> z5fHl1+=G+9vhSWjNv@&$TmY>_w0ak;DiJs3E9<$2?(ejrF#aYpkEB#B-DeqOokKY( zAFXLi_t_7!5uyAE>I;=;uA%#UmPMQi`SBq}(l8i9_bHg=kgp9fVke7qpShOq^Jd8I z4&?S0pO@!cOZWLSWUmHtMU&2%E6bp7=sso6`UT`9uQW9@m2{uEhVFAWv+1L7M&!f~ zLTyEIhvu|pfg`zf#f(_UZ=vQIx=+@GVx*z_%mdx$jWE)kbf57d5at%#4@7=l;znn|p8LdO^ejqjhIzYF zzhFsXJwgW=-cLzw2~VQj>u)pI-HotM?u9)=u)_NZyMHvoezzC)B*6;rXOj`}R#>*3 z!ax(t`&ohr_XF056Q`lG$otu3bPa)c=}UM&^%3#hiMW<4JvlxW@ttaLKxS7qVchii z(TtOIYbW=NV;Of${0znsjOPS@09RO@tSWc~G6l}id0nwQR*i5D)#bpY z9w*7IfC_ug$r;L+UI7TJI)8`Aa)wf4Y9NwjT9bz)IYZS{!x>r#&;y)aC?jSB3QqWlz^M|>PzBD=2{l1m zTh7oc2yaFE?Ip9TSPpQ8YIM{%h0@j=4QD7b^fVQSH44(!*Bj1Iia%*AHf?P=LsVD!@>5<}A>m$VNrhgE( zMyqMW)#{|U-E}i@>-1$J@2NM5Td%i@+e>c~w~szfaDDYSar^0+65n5+AnpKtmbe4; za&ZsRZ3Q=2SBX1B_ZD}kVYzHNTt6YW5qh_{BlX+jj?$lsJ4T-__=ELSx0RGt+G>)91%`9i=SAopTBAhs% z(M5{E84C4C@nXDzOBbA>;x5-0i+hp2S=^QS5pgfpuZg=#eZa zn7Hfo(c)gI&k=XMzE0e$^yA`g)E|p`o&Hta&DuMLc5cwc;@+t1#l1;S6!&I*rnp=5 zCF0(q?-CcBp^}du3cost`ac%FDDgiRekSfOh5Rr@r1;lDCGKy9W#ax`IEik_G@XAK z-RWA*raM!gChpOCg}BG)P2$ed_lrAQzbNh;{gJrG>fgnkt6R>Y{&BjmxF_fd;-07% zi@QK?6!&EPsJN%-55zr9|0?e3Iu{qoNXgl{rMTznDsj)#gT*~xPZM{kK3UvldZoB4 z^j+ejeZ*a*UxQmEoT1G@0mgk#LIKtsoS}S-o8&&QRuIBSG2R6p$omXmiUM%Dg-fiiD}HIXFW(9T3jY=HLwF<9MNMYYxs(mOvh8 z(c`oi&d?SI>UVnDSFc*s7R$y5;S6ojGw&A|H}5~Ts40?xRyadj)aU0z#c%3F@CeCp zhW10m!T7tUvf}7d#F&?~T68ydvqZsihMolR>4Apf3~gaJL#e1P!Ql#u`Dp~h8QQ{d zhKlh!Ai6IUpUqc8S{Tky5x)e{>!G+AI73-0PModZot&ZFH*dsvM9$EbhBGwI1%^p~ z<{(Azf*w$hE&JpQbwL+8l!pXjoS~Hc2f#(-3_W0Q!EF57L(;e3K*#wRp2bQ?LrX~- z`YpmS21_Tq-W@NaP{$zVIQ-q^EL7}!%BHwpn<2eDK&VwT zu|#p)E1lsc-*^GH46J+g93XErhRylv3!uOndKCKK9I}R%f;E)aHYeT>P&^15t8avM zr0fvAUfe^?ib~ley-mV1^{e8}(qD-?TSt#Wxyc$jq8GZ=KKmY=zGMxZ707rIlsyrg z);fL38hTzJYqVd&=}Xqoje)GOp0I|ty0DC9&rzfeO&Hox;)OP})ylF;_$$5~fg4&w z8~PB#qzz3N+E59THZ);qLm3v@&{lW0W}YfY8=5e*p}$Z@+R#?_v}QRgNE@0kw4qIU zBfR5Ggbi(|go}nDY-mFnK39=9G%>6htND;=E>7XWNiK2aF2WP(oaC5983Mu^njBly z303L{Z)oxm3HZZh?b+~#-U54yU)_*{(^S?34R7cUh+e|qr3Dop@ailVKMijvIWYen zV4SAp4NXoF-q1f0E993c#q$)2Lz9L$RLCzSZ@5YVd%hCp&?J~c88pnH$vOEPB66Bi zmNd+vhoNjo;_ve1ddEl%bLa_(T^LAIZxPGG{w2a3x*DSOdx_<7yXnq3*XuhV->(OZBKD-{0Ih6F6 z*Ws^vF|B*xOI?p>Cr;u1uSaAKrTV`bsVfHm;(A2p&?d-^NsPKC#qfGW=1}ILlA!*q zj_`U!=1}Hkcqj_5M|{#BUV>QM)Sim=!W@dmar&WgIvos)VdDsM=oNrpjlX*~QwthL zm_zSE^uvKjokw}lIAjjJkQJu>4!{SEK|$jPbLjVhENC3&uLqe!<56U(N|;00Our)( zHq#W?4x5S0p)DXChQGRrsZN3~)l9S)r*QwxMCMScU))GtG58nFMCQ;3Lo{_wieWR6 zIh1*LgQ8nmF<~>2Ih1+%HWW!?Fpo|TGKY32b7+r#cp%fA%%R=M9GWZ4q596mr2ZHT z+kA+pBzJe@a)z*o>U%ql#dJcLRP=qFIHeNq9({kO<+$2-WD#YgQ}yMQSX<4%Cz@CS zJNcu(R!;uC(I%XW$lA^gKs&iYHL4# zi2e7{?W3f|zHA9Ep4JJ?F)g}z2*z%}vIZcFFI;1?Xx=bqW)+L)6t^0M^q-IBe2?)T z;3|SY%e3IW#}hJx_AZRR^0Bc;ip+3_V9K6TJPF11r$@VgubeHXV(bG>O3hp;lePD6 z6Uday@wDSKJo^qHtQaM=ldSs=JKn!)8od@S3$};J1(#kg*m4-o@szw*EK?t&`f1Z> zEgq&&waLK$gQ`@lsCpMYsE+wxRAmw=n^=?QAvHHz6wQJv86{6oSCyTsX8Y=7 zDcSC((Wg;C%-;W6DtWogxj>OxHV@RYT*a6rpCSRP?9e?BBFm>Ib!~S?UM1 zESLI^Cbev9P|LRIoW%=Qq)nGBcI5U#E!(E2J{I>+S)`V2W2t4^qBnNJ-#u{#GH67W zTDAev!vm2zOXTE?YGbKor$BaWAU9);e4C_A-(u-*LO9mOP|Fgh*5Ig^O>qR)|c zM%(l&=2@lW;~s4q%)HuYPZ4U_o2mUG4tqjv`W$&jwN3wGo->A8wvC~dmE;_hH3xqw znxaqfR>e&I+w?A$$$u7aT-uy!sAa2x=^tu{5vm!^s5XXLR_shf>{J3-64U3+T%7m( zxesA>q}p~*+y_L?W=zN1_AGf9EtwPj1^#;DC&gUbzRkF5o^#1#@HZ3@!!669Z4xcY*5KjfmMu5j zvZpdObzUDpZrO6fEz4Q?0i?AmH{7xko{SNw+;GcEn6y^qhFey`q_rwH+_DVIvxV}W zHM~2FKZ&$tbS|&2;Z3G+%a-@5c?v?|mM!mH!@EowRm&S{nqWi{#x9pji2#?MG0uK$qEh`rQH%9*0b^*8S z0+>4kf47bUX>XAQ+_I|?zdn#D8EIu(PdjkS9)ywDkb}0f+_FTfoj5#Al|eMuf>Ww? zrIG5Mf+jg=JIgIgkopFPpF*^df40L%DfvR}aOkUC+?zMW-(=3nEw`+Eoumq~UV&Um zClv13c9vUKjEo0hQUEgKpzSQTtQa{3vL%7s8ky@Mr+gWZ|N%sYS-lPg^)~E)8*W*##Jic+ z_@`SUIcPh}Ei0CK12BZ3G)p80ZD+Y<*?ejm0J8#6YF6Nd+_G|x4H0fxcAxFIe+#>h zT!vEJN4RD0g0XEhSO)W{?jzi?FCujk?dzaf4JY1|lDSw~L^I?sH|M z?sMXY2Ba#1tPRm&_sPn4oUSbG7|6y`E}09v54mOKb2Z09c4i>otNT28zBO_g0P6!# zs{4>zR*c*O*^WTISN9>eENejR0pKHoST03hs{35rsQZvxRx+PN)feF}nKvq7_ZfzX zi6mYPKyQLlcEj#NZdtK(7y#4uvJ`Y5a?6UPg#aww%TmyN$Sup}Q=0&|F#wtF!%mUb zeP}E9?jm5@&PZgA#HHd>%p=+!BbSOCxrEFymk@HxwmsIw-@gq0xv9&Ec@QYvvM@99 z|JRIp_V^*@mCViB|6eoaap%&LXr_DOEt;{{$g#La1=mRN|F>)8aDbiMg|2H#ypy0F@ zZdpv$ig0EHleJ|naUbw9?EW2pcffJL1(UVaZ6W#s(LV8SNAw*v|Su0{pFj;HKKrmS&w=B0BtA#i$4YlbDCu?m) zfeX}_tdUz*lG_T%LsVeV6n+0?vL@WJ?*Q{vs3AtE7Ead4Eh~0>RwMpW5_5s)?Yk3a zGvzjGhuXuehd1h+{XB*ne!Ayc_j~I$X~1k~76RdHh}^PVub2bdW+5e*4Ut<`2=L~dCL+u0DgWhHE9L*$l~u$>K&TbAKqHZ&aBiob>&1T&o>NG+J@ zjDkP68Y>{2>6D>>!A$3HXvs{63j$8s+J$h-qU&8cHt1iLTXrP055eC(l%)x}o^Z>~ zLi9<2NKFvA?Rvs3y9}~R19{`F$3=&*>ycZQIJFIj$Ek2M#q@<;Z!Tkku6JTedx~(& z?xyxn)I|1;Hhp2&J53a9*CV&AB-b909#mk_6n+1t>j}5)1YqWb8e)WMVb>$Ktk^jh zvC9c$Nz!UudRwk=%c83tjrL@hn~lbx+tIq~t;>axPT4qwU61^-^BZsxgl)4-6m&iE z%Q~>9WUYvYu1xvA4L>GL83?t$?{Jr&$n^y{DIRT$1J_b3>oF2XGSj^<0 z<2Cu#dV+-j)%+}!O77Wsk?hQG5*vEgIA^MbhD9sR1PToWY@A~|{AA23G&EX;hTAjF z1^7b4m{n*PvkDERR-6NQp`jba=Z?O310h357w6bqXh?D6y!ap<8D$jdz6uQuSE1qQ zDm3i6g@#?X(6H+kmI?tcLjQ!i>>+BuyD3dwsJ?jx--Cg#`avA{uaoN=K7zdTa}3-a zoL><)g4DYm9DeZA8FBB@z@IVV#V_b5#2-QGUE|MjE>ebcw_`z5Dvk6zWvSK3>>=Z@ z+>_BMH_`*1!H?nwrc+)%5raQ%2Y-H?07po7J7s%vBOs)^oeH9bkYqU3tlH`DN;V^o zkn4785{V&7$aOnsHlaAqovcEx+a=oUBKUJB{D4bXMU~G7vO=y~(bXnEa@~sB81JeK zxo$;w2^ezSiXIX$V90eVhDfdrxo*W!2^ezSieb9NRBVVB za@~rNc~vOZVjsCx``Yt4f zT(@FUv(FGPMHs>>}U+-z(n;F_$um0;Cn^x=%=!SVgYXi?2iPgH_ccM;`Dx|LwkrP4!`$-yR)NA1ZifB=&&5$_No*${}2Am~;u?R_JtqCX;R@m~@#h?vFNE8c!zON-*g%T9Zk)5=^?R z)@j5Xz+@Ow45B93&vm=c00WaQ1>90?YGN;}CX;R@m~@$&%|!746KB%Id#fP?lP*o{ z4o!$JJvrLcWYVn!lPW~G5 zWzr>zTfI$l7=Y$GDwSZ;rDg8_R`i%k(;a_-3{1LIypS?!C233sQAiGLNtY%plP;m$ zHoiAh|BYD%lP&?=>AY7~l^9HtNw?B6=@Q8u=c()(kS3FEC75&x;9hA1Fb2q^TWOhe zDeu)-t_K_hIhb@=N3yCZ2kE=E={Xd}8JkTe-O8zQB5-HB$uUdsWY1d+(HzMEH@l~@ z=wy>gxAI&OasPX|h)lYbhlxRMiBC63Cf&*hBwO4ipQfdcUI-DGbeZKQ69cudkrm_6 z6!*hfsYs<;d z>mhqnGRZd=(lbd5npC=#pweaC@s);@t{t~YpIZs~T+SuLu`eSU^tn7?_^w2%$fkNV>2oVVpUWchC5n9vlRmc+^tlA^ z?TUQ>q|dDceJ%lf?ZN=$yki46y7MmpfIgRb;QJVo2MqYnmm%KL=TgRZG_0(6;ir%p z`dqdgU)wNQr(MU04SgJh#>+{LMJ}_Gn^0?8f;kreoD@ zn{e_bgtyh@O*2pkA-t__SIk=mA-t__-<-2OA-t{bP{7_7KOVUd!rSVOg`8mv;ca#2 zW;|!3H{d*~?oz_jQwVRXyX7?yU-T2=Yw}0XpFIQq+Wf=mkG>0k_ktPpUw$+EJ@Uo= z$Y$`@6)a&q32&===C7pxJv3x>eZe~V+u}-DJtR-k{R}r-)k96XB)qM@!sLg9x7F)P z1oJKm-L=T%hlICXo0&Y2@V0BQN%za|;4d+0k?^)#k;(JgA@Dad`5d$i{$i6i65e(z zG5I+J`K;+ww3&G$;cZRlW)IO%!rPiI&0eFQgts*n&Ay<&7_ku)p` zZ);-}Ph z^|_B&2ybi6?TsUZx3%W>#t`1t_K|xKLwH*|Py&YVwsw#N4B>68x3z;MU-qsG4K!Xt8)((?^A-t^}?sM{D2ybggNWc)@){c^ZA-t^}BLPErTRT<)hVZub zPze~q+uDf|Fod_YlO$jWZ)+z@z!2WnPL+Tmyse!s0Yi9OJ5vIN@V0iY1PtMA?Qs$~ z(#a;_ZS5IZyc%;OwhS%iQ}@T-a}z{o6@H6o-{-FFYNANrDL1LgDJ9`;_iM6#2BP#D zbmQ(Dh`CKLs}&h|-<7%Ayz!N^Vizg&vq+e&rZy^v;+PYpbnsyE& z`E6Zq30U&mI*{K2HZrHqlHa1M8l8bz?CVx%kOVCGZQVi9ca4rEzYTRp<#Xt^I-@0E z$#3gGehZk8-`0`*76IR%h~weR8uyaRikVq9({0wF%0Yfh*#(sG0ELU-T%wX>zpbCG+i8*ddx3Ofutvgm4gqze&tS0+y9oTPqH_Scj zseH*L%p8UQ55l1tvrlpA$bO6Z;J$X#nWVDy!>eHj?6>Sf-0N=5ll``i?6svh_t;8*&pC)Q+IqD+3f(B zNiO@bFA@8cOij3BV((mLU-uN`&&$k&J1O>&ll`{tOqru|heb;6WRv~2?rfP6o!VHG z+jk9~0`-jNT!VOFzwMcjr6I$9+cTNX6*9|y+cPUd^~;3)wxUy3k3l2Z26rP4Ck}A3 z;>JZHyD;ecTM+0`i7T`3zeO+EZ+-t`cm>Nh9RzFHZ|e`uV@BePFD3hJ{qn4qqRpka zQnKIHUnnu9WWTLnVf{WWViofW-GC z`)xhgZ~2miVp^!K2NCs}KsSZ4n(VjrV83N+^9>9G)?~k}2m7sbf-pLp?6>uMB$lsd zSn!=I5DWHOg883W8LH65vu-|e#;=3l+GTCqI!G23Kxma2^(c|Z19#aqYTSoUB z^*jP#zpbKNij~ceThw17V!oJSV+XL6)=Dg2Q%M!W=}Gq6da&Q}wH1>_PqN?EgZ-9o zu$Tg|f*pPRX2gU2mTB{?mXyqlzjFQ`OZMCPtx{##WWTL{K-!0|y-52wn(VjrV85lE zZx~IFNxPKnx4pZFMyY-h{tEFYe7;?h@Jr>$Ekp_b6&!tGzm1p8b)0g!3d;$^uLa8q zlnp>XWIfIpjEg1IXydvO4H62|^b9o!qY$dU1DP#pX)D?u1j5gdIXfi0J#@AFw{ z!siod-{;d)-=BhGoZh*@ejAB+j7iSJr-MTF+j9|fG5#)bs^TOhAwprl-H5m?p|D#h z6!zPPAlMlQoraM8_BF)48^oK3iB|~w?I7x_b%y6M#eT~?sZ3-_vVa^j!k2<1Y(XX> zCgJnw`+T08@TX&VOjtiRfG7Oh<;dr(3I9E*1U@fL_?<}(4HdyxCnUEbH$Q7H}$s+r0gJr)xAF|bZ$;p1(VA*dsL$)Q5J6UAE zZLsXOI}p7qB_jK6gJr*c3(@a|B4NL6FzmM+KGd%eIVg%LkFei16qK?)9AUq0Xp$hV z2vz62wAR4x?-5?#S|0;oQG$<)>@{(P6uRB3Puv$jNF2jux4SN zz%~MMLkP=S4Op~I=4E`0`~adK4Mhd5e}Jfc@>W!>d@^SbMDJ3}>UFYipl0XHe^B!W zL^~%2H7~W9)iU38G796%U_~{7tR#>-S$9#jCbKPypehkvABfDnJSzi9Mtf%NqUkY^ zO>8W`QnAT1nnjz?wmK2g(*lH(MOieezC^**N<@?O()0)^g;a(de7 z7-zjDe0JT0MEK&5v!|5Hz@G3qkjw2I2iDF|91eGbq37)h?^Qz2%loW;r01P{AnLu} zCiIp!;ZsMn}nWssf|Y}@>3fQS%5A=dfsSnnN)zDw}kY(VQ`jH#-;>$ zk>f7Fp$VCB^H3*E$Yjc0+)jTQA(QFf;O@(0x)HIhMSsmKgC&vaPQ>m@Wcpk>b^u=k zx#)D0)nenIC{0hsmWkkvkCH7uns{0{=UZTmEjbQXlK8YiCOBm@-vV*hIL-jRCUUkl zl@*#ANK?W4Afvg>m8`P|@->lqi1@>^M)|1?O9>9X9c|LRu!TwJaFgzZH6}R58NiJp zZLNvI(8L2Y5$pyjxqBD4inO#@ck0hX89xAGF7mkXejw;9)n#OjI6nT(P)0I1m&MN^*zMDk;sQd@(q`D8ialbqwWA4q)AW1 z!hm`2p&e6O^00Cag^MrJI7LJj^~M3yROE3fe1({Z^Eb{oXqN4W4Zp;lmdC>-kM4K2 ziN;7C-S6s5mWPbycfHv}WB8KvZW!sd8TEo!qz7c9j7}LpA@B~O-5+p}tgc5^2Tqn{ELWo%5tE$5I*+;96~*(9U%*Gp8XB(RrnVX~NuFJyn>61EZd*2AH)*>Q+cGp==mxIIK9OSF(nQ6r}brvn^ z%v4brQ)ih)ZA}=1A!%3pLB%~Bhg7#_ko~W1xjU$IQ#8RyWLcGfZrb9Z7egS-v?MMOJgXG5gnJ17 zMFcrzWM7>MpL-e(d(}^Sw>9&NH(nrn2Q9c9?ppkds8KWr2d9iQsn^2i-h)GEAT6I% z_yMz0SpZ|0<&XD1{HYDxN7-8R zF>LyND+Fbp*8q=M`wBN%n*B2ea>FJcXz=$3dLn;n!%M*LyG^sC06EN@Uc^))YrZ}U z@PS=**dU?EjH9@1E89S~Yp{NlxbMY>qCGHOtPPc-=}M<~F+) zO&nRX`s|79@|p89f(W!EB6kpIM_he{acIHpT|0 zBd7iy0qSE_al0%(wc()ss@Aj)Re8fP6QF{9RF~{mwR2gZTF+aVjR4(wpGj@18>D(` zx+?3#spl=x^N5aH@J$Ab8s8IuJDkMg9PZTfUho&h-py`--+1Ey+hmcg34@(ga@`%M zi38g5UQ}v=x18MonqyUmhN@!%RZeNcN-PMA(~)$I9!q>`vZ6)rz0zO*A@K?v?s8p}v^a{|I;4 zJtq0Pjf29MEk+k-GN`21*TRjg8I#%iR*4wWdb_v{t#^sw{zcAwu0mn`sv2r;FB~Le zTo7`uQ?%9cVC77K%RRUJwJ;7+n!Ok)i5^a-j=bqzhM3F;4WKZ@U4~fcn6^2bj=Yb) z8?j$Mus8P6eXzVWe;2WP_Q8I!50YmM_!vDws9UlM-h7?gZdkHT?vbYn#a`Ca2P4`2D+UA?fxSMn8P>u4&;E1ooIf zMGgX(M$Dt6p5uZupbQFKtZ_#0r#8F*6UTFOz_>7fG!4LZ2)q-mRMzSbF+`Y{HHGz)K-Y@N{KsBoR|F;Mt2cE2hq!+IHTVdhzsJs zZGhdCc+${fb5W{je|N&NF?AomcHhrh|4$bGIQxlQB0evKI(}AmE zQXHb3rl`COXZ#>E(9zOBhoExVK;cb1yz^%`&M_w~nBla?Cv5P1if_v&@Ga#D=&x-$ z^>Lii=t$k61UEsQN?|B^c@`&Y?G8XmokB)MH@H3qzmpL@AAdJ72e~Cit(bUk6C{<+1QO@^XB1Qf1Xau-)Kg9ERBF z&53Uy>i64to_*tTqPKXQ>-E28GGtrxTfln%Up4%<<}=>ByB^bwjD-pOck0^f*lgTN}ItEd9dK+=Z9*yV|@OQfe1$GMSU^aTM z_sw$D1w^Yuu_WGBw6}ZTWa6PL%-sa>t%USoCA2;2F(^OmJu=!zcR})8V8D@gcA`ht z^k&8l^eM0KT?6?Bu%ALhh5hni=w+|h5qMmLDRPNIsTEC)#EQ_ zthkl(Rwb~30pdd;nn1BsLwmmh+O^92_I6AYk>p7bog0XyB#QGdr?m5H05&M^b(~38 z0I;<&NU|%)_T>)&iI1pu-eXMe0`m2J(N6n^7Xx^(@-kbR7WxXHUqhf6D|-{CXLN${ zu1B#;GEf1ZW4F}9S6(L{(}ev2zNrIXuJU&6!tfFTQq^1b&u0L@hf(jm z1j}F{Kzuwnd1P>j9yRbv)V4Bcd@FS|W*N7HXz}r2z6lqd;=eg0L@xse6smVmh?X+& zfZG%%ev$Hije)p11hDL;-jiN)0M_7BsOT>oK1!kxN$z=YN{e}-U#+~v%XoAHSv~%y z2aQ2%JEe66kZ)36ON@MDAe$4)LnCR`S<3J0M>nIsbFkP7C|8KmI;5oO-;KJC-ln{2 z4|&-P#FhYsJs_0bj}oti>`}z?4$@eVVbmz^P~N+j1MohCUxWb3u>pX_>rt#?;A(+8 z9{f{9GKEjG^$*a6v1uv*8?YZ}TAn{w-k+GdsUrY8=`WyWv^Tl$2{*Bg%Ovnq$MHUw-!cTYDn*!3c}A!-B=lR^}0Ivq9K_4JpBIuQuok){%}sJqy# zYg}*fqd;8&#B~A6T-1beDZ0+}YAcZrtv>|7Qvpax(;CnY*So2S1-%cz7a>Sac>{XZ z^}fB>f;^<1hrh{`44ek^57%q)g9UX4pnC|CYBHdbi08gzK?egcDFm^q9AR9F_KbKt zmfF+*6aW?mAS=h$F>b(>LQeC`A=^N?jG$HgI%9NL#H;<#>fa05gQ32WkHu#vHd_7H zA^S(DpU2mvqthza^+cTsAybqevcT1e7!|>|5W`=}?&Oh>DLS?0>J)fJ#M|84U{oc5 zwFFDfgpVnDT*MnwW{r)3Ys-3*)a)sS7Dl9P`q zx)k!Kt^9V#?oG+b#}r*1@h-s$&N8T%aCki>Cm&OEUBvsxY%Bj7vL91&@-0QLjdbuh+NIbFvdNxbqNqxH9|T5?<~d(5%08)0Ne%PwgBK{49tVh`;F!8RV;q zdKunlJ5pNeWy8T|B06mPQ5!96Q6>PQ@B1z?k!e1s`Fp?X|O zqg{r#9s@OjY84JwQX{M)rwY%mqP;S_c3rL2yC8p<7-qp(70kgIUNYC(c?0tI8`}{g ztLW4WkMC_sV!soBIg2gp)H2k=+zju}Gi^f6A!|js>FXc%L-9_{@Mg@l`n@3QPdPK| zWQhEn3~%#uR(}#?(_M5H$nb8hv7nqJuK)O_=Se`X zXLxUaWI;6m3~K~3S4_DKW(fTK46nnJ7Cr;e1tC1Vv^fU(RfacnzC~UP)VfAU3qmKH zy2*m>0$^tdN}Wc=Ts-PMFvcR^2I`X#DJAybVJi-bdWT$v&hsaPv8XfOA3+Ev46+z*j`Q ztXnL61E9Br@U(gp~{a&~r__$bvot;I|NzR&RoQD(a2GBw6y= zBpb6j{7ok?J!Q}+RLh@H@6HG9HK->5qeGBfw$f}0d_<<#^?nPV4e05O;c14C$@Gd( zu&G}P)O8_JY??|Jn`dWweP6K1hk$xxUu1fviq2)3-ebY_`5WLfbAqyo^|YE5_)VGK z$}emZrGQrM3wMNhExIGq+i{ac4g+d(W8~iT@p7hjAWnXn_n!{v@(@m+y%md{jEbJy zk`?M^{J^<#w&(5o(WY`cfIC7pNq`5(AX|A}ZiP)?4^SV4NG4!GpycXxodx{|(b*U@ zO-oBI1nCdpg?WhQeS0M`))t6P0m{jk`UqrGJ#XR`o2fyNO$g+v+P5<@fuHJm%Q1jU z_gVnxrGEiWY1?#Gd)`o79Yk>}l%Cv=Vp;=AVmEu(^w<3=opUE1vhSsaA(q;3GnvuoBaY|1Zz$hsmGh=p;Z_?gzeiDgN-h zxfqK?=SJWk{0kjhiag)j@S26c4(QkWfv0syDaCN#`)QuliRWV}3IDyig1H-(J4w^< z<9%=0;Z~;)@Q3e5M~cEj&{=%%wIZu?BJdaOM<;bRY|@$QdkyDWog0APu^$~7b$GDp zobNZ;UT$^v0RL5}6C#z2I_;O8hd%tG?_r~#)Uc0x*jD)eb-TAeirxMd-|GuiHcCC< zx96*$dB?l-~a zHvFx8BUgM%VxISeSuj%VA*)EqNmUc=6!Tm}Nxp`_b7UY--R;YH<75cDF6Nzkl!c!P z=+Y1#UI{Joh?qA8vsN*@38*_lWLlMp%{eiz6|QfBd={v;LL|>sn|gm{_SBen$6Aa0 z0jOwUP`PQT3vwN7?y$%Mfa(?^!_?Ca-x%|1J6iZCK#$rN?qrDJ`(xhGnHG5(P|HGO zT4rA@L*919ysfxNkz!p7)SV$REwh6BH0GUnfJHtB)O#Uv@5~DPr2y9;mE>H3%?1_`}c)A8G@V~_x|T%i+mZV_d{e_W}oII?YOviA!Y!Q1%8|< zfnmv1Kw4%6xjOFkINT!3fvOLYduLYQSI50qq82_5(3$(foeV+V9``n8S>z(1R)xs4 z%pQ+B^XMaS@05ov@@Am6g~+tb3iAE9SAbJiiuDRmpM=Q0Gb`|~xpnML!NnY1%n;$nzjcPGa zD?%iTWkKg?@1{E~XfpuYLr`eWUSP%M2JLP9mxaFy=y!hsm;PltnJC_>y&>0I#UyT( zittZWh0V+^?KS(6lsgNJ&Bkz(kHRUKo@Bn@#ZcTU zfZU3IVmStAj{4?$B;&svzNn9}W6qb)T`nMTx8vBHVi zR{=OTW&M?kli(I8wr}T`pTd$?6+GWujeQ-puoPnh4;a@J-_rArQ2Jjj@nEC+eTGg{ zS?(V&+pc8;Aal>hLqG3i)$(;L9XX|hc&94.=10O$<--81KgqJ_#`j>=hu=qm$} zT0;48qPj%62Ug+%@9hvi5CWE_44kXnQvi4gvUfxIO30Of=82W1%KaR7`QJ1G;A;$< zx*&H`RI3@Ik*gRBG5$Av+{~M)yni)=iz;;a+Jw4>26=FXcSfi8R;s*SKx3xg z449*j!#|=?^EUZI3v^v5H1V>#zG&K7KCYo4g}y5 z2(JnNX5~9;BbMm={?Udk$nS*g{y^^dWcBcVP~PS^WG^88)lgP4`OxE?hGTJ}^Xy&H z2StiiptlY}sPi z2~pv}Db^<=TSMK>TQFQG)8Cfj!35^50zVb-v+#ExVntW~`3lfixn4H&}S6~e2wgk za7&ma$+5g=X+ zQB267N~JKryWX2P!#@Pzmk`9X1f=pgo*SeS@lLM+QFxi-w8r0*I)(i0Kp;)ZI^soo zBjq~4hVBb>sxLtKJbWtr7>prGO#$TC0G9R~$JZ))#(ywhWp2&~V08deQeE<3#XC6S zm7p>N^gjUH6N0413<#gnF70GNF9NV91hLi}pUYd`$r0~fw#?TMI+zIV)vgwGb;R3> zabFbzQ5K@aOa^a>yz3+0ffy6n$5cH4{RomiT+Bzf-VnF^9we&dk&lN50}thbjsYMw z8;AKsOQ$ySd+}fcbt$LKa>!OuF4p9cj`s*23E-VM(Z3n8+d_RK$0LIn&M496)bhnp zznG7Fyy0%ucFE0Cxb5(EN4z&3B_Q<^kbi{MiuugP8|KzNl0xs{(*`9V#dlmg;cxOL z4|Ti`BHk)oZWn%A^dIm_)y3z&G4SYfG%f#TgW=4{ zGIS@x)%`d;9Oya4Q*kfn4R(7DPoa;(lLkx#2vQ&8@Hx@ax#UTOcXWpLCOV&3%WR8_ z1pc-G`6R$UxU*-T*Gl@LJ&8v1&Sm z^FqMCSUSI53s|^0!&}Kq;&~8W7yukuq4(~~@NO=JY$M{g1Tt&=9cJ&r4DVsE?5IZ} zd@ckS>s-9__GEaodBu1i!cPK#Q@|Boe`fRpOg!YgQsvmLg}-Sa>2A^hvcT&VMZFx1 zvx4jdRDENlBxjJFqTbN17C8>6nT?S$hM2@pj;_L-QcRu=(4~!m;ibkY;Nq`;d9)|y zdxE|N$om?h&5EvvRsLP5NCE8z;Jrp5xh$JCBk!@O_Z@Pnej=h>P->2^jywnSUXOYs za7|Z55Vi~ej=!=V?e*`dH>Epd-4H)8keQ3Vxqu1kkEr(nPE0ich&hc>CLKW~Grciv z-^D;&))*z19X5nbwtJ>G8{@m$0@#kmP`NOqL5F2}br|B*>wtaT7#do&)gif9nCbn5 z$(hP*?>MFSr*(qRw8bx9g8U3u(L+!ZsutLOAzu26KLfqdpRb}_G38Z!*0aCk&@k-iBkb9{wHEW?tX#zKLS~5QsemB&H}2B=lzBu%gyhArpG^h$oh0V zl6WOrjMUw(ko9RS_rJoutKSw`z9`ZY$$>?oXU%dN7R zY=7Poop>O3h<1Y~5^K<(;iftgTdAjryGn1xqCq6KT0buC8vUNQm*@hlxkO@@>Pm6f z>apTprss)!xn3de-}EiwUZHo2yH39(?v?r{ao6h>XtzjggYGHrRr+Xguh!>?yHT$b z_gejcxYy}_h1h>n-Bmsh<`1F8!0Zck8^v ziN8m85%*p_MBMxIbaC(3XN$W{k2r$3?RuKH59o8meNbO3?nC-9aUa%Siu;I;O(6bJ z-AUY?da$^U>tn=yLa!Bfm%c~bC-rOMKBYew_i3G+Nd0GYg}Be^(c(U*j~DlOy-eH} z^!3)=DejBK#=U)pN7j(ISlL4-RV5ZvqH=RQo=WO8~f{UlryAyAA2Ni*h130Jik10!7$mH34I9}wmi+z&*uF0t@HJk$IX zjg+kKvIG#}fJpZ0!Ys8t@@B;M$vq#ls#4$v;y(<3_aX?Lwy#|d>44^M9b%-@Aej|P zWtgOq36t?|Gd<{`9>lo=uyDkbe?;IfQ+^7Kgp`*K#R>s%599wh{_Z8|Dc^y0080OX z|NEhI-;`12B@jmsJp)EZbzv^#OZkaEi?h%*CqA(O@sG!n6KBtYCoi6yG!{seH7uU{ z1bTqVT9lZ8GsAAL&svfggHXS`6Idom?KiH4=%N49uIO<_K5f!kRHZB_J~g33_{#Xh;UypRZBxB{<;vt(KQ5u+49TB;p7|<&z*QD zJ$QCfg+<$cLx{|-Y{Izd@e;<#VzZNb23I+9j)@=0ID#>^`2)Dz>SWh~S0Kx4r4p^X z;+C1W+IgLnxA1nXe*mbyLN3$~%u4>M!H~64Wn5Q|Q8;Mk2~OUD%F~~lo_+}xh&2j> z<}PsZx+-rPO2&S2M`Ll4tM_^J${RMrthB#Q`EOL01J`t%B=_&-VWW8IKwRh%^GyIk z5B)nthhW!p3v7#lT48m%s>wrg({TVzRUXG8brk0R1ksb82p`_&%~sw)?G0$k{y_t1WR2fFWUwYc98dn9oF3!6w!_`cGS%IM>}~-m6u&$RFkcjLtzD$RHG)M8Cug| z!)F0b*PH|*^Db41Y>e)vtv4vI8>R{)2~W~~zGPO~`Z87Kk3(iDl(yc8%D%{C=xizw zYZRoduU8&v$C=-&8jDR^-=w^*u4(JXC~rn}Ii$7qy~-OAF>U>J0J3epLwQSlyw3wQ zw_CcZ$%AR@7qF4`{NzplK0++jc?_6L%-{-^Q=pn7TGgb*Zc%?hz? z{ju_Xe8AM-MFh14+P3xOs*JP57~@S_|66&pF#s`Q8^Kc7rmeAfJnKwTcW(xEj4{*J z-zx8k)kf8{^^eNiib0gNqG(Nnm9}P^Ig$JWb?IcfmAbRIRl0|`)q0?~-SoTS*67d0 zt<^t^+g(0}9LcZKizVDsUnFk5zCzqy`g(Eu=)3fJnE;$E(6#9gNk7WYbhoVe@t#o}J2ZxeT;-YxER`Xg~S>u<%qK}ToO z-i^9k+?(`4;@+%}7I%w2OWa%Z)#83#*iQ2CL*dXt)cdh;yTt!o_`0~i6m~wE@xK;+ zF5%w_IdP2?{$4nkZqsRc)uD8!>(3=TQ%^sJ;iL5_;vSH2qZ&(^Wov~#X* zF7A1{THN#XNO70yDdH~Er-{2lUo9@$N8D9<2i&eROVH#+pv~S?hv9%+ibY^I=L2A& z%`SRCd7r+E@2B*@`w#f5@1dmjz-MT)i&m&4`$vpIq0KJ3MkP7+81<)>H*v60PauJm zx?<4KW*4nf$#LjYWhAXF!lSZxhoa|)XeMn^6x!^fUvM#b9QPK89!Jox$dRGVE^_fi z1H%^ca(pNfcJrc@D#__U{_ZJA<5HF6GjyRkFS=FvEP*_^qQ`0DeTSD+njNUu_Qa)% zi|x&7i)C{|=AoSs=$Usb^Pb0NI?ZZ|WT4F~%7&yqpG>WOA>N*Kn)S(j3D=h&5s?Wy z?zB0`D}9O>^JZ1E?#6DGDD=<$?gfb315*)bI0alHZZ_Dv8z!l!217KG;#n~06m-u* zQp3F|7J{*pX_>fyo~4)#FXLhE?}Ab?yG&Tfy@j^ z)uKGz^)AGHgi=R9IwL@+Gic%zj(W{!xXCwAqw)z;wFrm{8>6Ov^#xF~+>)W_eN$s4 z2+Vd1>Ba0PjF;-s!dyy80=nKR>)U2npn53_l@J#)PxU=*gacAqV;dXng89vm7 z#KI{}xV^#YR)s;n1m{_J2^1M8wNAGeAHpVxK-OqmgwySre`DWwAmgPor5D{g9Sdm} zmeK5~(`V0fGJ54jUN!LOA<%2Nvg`w7r^A;c@Wi}#-luTp1KXj;8wmHw>k3E0*I$ir z-@I$!FdV&wcJFM>EOl7uLDoP2R5)8G8%w+Qv}Q3o6h_ZNn&@LiSWSu2jED! zXc)qS^7G*^eA)%W5gyizl{{jai%HbrB-gQW7vZsUjyEQ;yEppl7g)md#ugRgp1{fc zfq_FL;2*>rTW`E~IiA`a38ZQch#Z_kS@=7`+kgeM6ChfGze@`$Jm6hdu5cdd{i7S+ zyM}yyfN=_2<2jKx#k&Iwdbc5Vdms^Q=k(bWPxp3WW5qLp2xmwM{AVn|T6U3lOrjk_ zPG)araZWx5hnzynyyLtNuo#(%VkYo+Td`P1a)P%CxKL{!Y-q8LyV6M7X<5yglB#2heSz?|@2 z!GwySSFh;3ii+vVcg|bY)iblR{QuwY`Q~}1E4=4@D|S_NcXc0mo`1euuaq+YqETsL zc_M$E`yg&CPlITVFLoxk!)3O+y7U3ux@5t_XIT-(x6UXyR~Ur@FwVws%^s{UK1IpZ zy#Q~ZLK6%dc7^dK?fZqToC@++7)|gXPeqWf*!EW# zZ2KP9@^&|8q89ZSn*EumH*#-hqPJ@m*u@=ZBL1o!)0zWcFcZ;EjKa(_Q5S6cq56sx zb;V#KGtrBGXQI9TL$xFNGm1K~I&z=ff*A%g5nf}KjQ(y#b|&J(d^`ED zxWTrG>L&YO361jrqI)mFINMRam9UV*4=M(`{KUtcJ7tw)k@dH-6F=bz2f!N%<|h*c(%}R`=Fr}< z?0Gwn^3wvr|gRdFrLlMo`G+wpLQxn!@)@fQc|i;P5z^>UGY6!+~$-h@3RS5 zSI9>$O4Yz2IXIL-Cmj33)AysZl&9}UXDjc3qi|PfA9B*V$_rN>n8z_TT-hm)bzZ&a z6I51ZZ*Mc!9m3~YIo|!E3UP~J?;`v|N6kV>v}lss;(CZ~MD(4$Nbwt=P9CXVE01ue zeGd6kkZtzm`m~U*UQ`Y!m%0(2;L0Q22cOb7^)0}^P~imFQuJx6*UEwA>;RhTwX$9> z{ZAQ+hOQb=##_6IYhHlAzLc1pW?_AY1=m=wdivVz z15aO*?ez3D*)C6Ci+$zUaenF`4EJBSETFsAxMf)LGR#Yjc2^+MDO-9my3ov`*Dz%BBz%+>FJsAv{e_NN zJ*VK=mYDw-E7#J}lbbKY61Mu7imeamyCThh$7-s2e#IB9On5p@sOsY@?nE@#md!~- zTfMO27Ia$)|9CFKr&OF&qQi3kySjHRuV7-WkarnJs{7RPLMVI741oLAo&#YvFF>mM z)$&S6&j0HAT4z4|+@euEur>mJ!Nu!X31{Rjr=b<^LvZH6Wl)y!MVd0W@EJS+Cr`9Z zQP}$@28_`~SRJ=12^X-BJE7=@5dn>o{N#gz?vsFAjO3xc%kY;((z;LA98<0y0Q4t_G&rufqy|To9KsCpK}a?nY;e4X7uy1U05d3%y<7+Gy0L-(o<-rXHLzS zV2W&l5yzh*#lOEPlFtX7f<>LQnZG5Oc`M0``1fZ#fwkI6WBmo$c=r-+^y>(_-S7`}J`Om4 zt+t$do@lsOxYqiI5K|`Fn9*5hg@IQ*_vum~R z0>sECzAEd>V+{CfwNGQXK|t;IaroS7(`VOe`J!OfYA@otSCWgMtR?tM(G-3AS*x9c zD-Tr%%m}L?MyO`jYFGEgH9qak#NikMSrR?L^Fk9}D?zpj%G$veRy(|;hQ4-$BDqCZ{&VIp$L@2`eNLGmeM<+`5-$6pOi!959C-I&!-^+6_V zRzrt&Hes_GdKHbEyc&u()nR`%#H;97XXM>q>GVKq{z|78`~}@{t?j(=zZ#q`;(cQ|AGu6I{4EyWuH<5whp1?V; z-{&}OS7x93AH7`9;aC1Sy2|V8c#PI6JODFLlSJ01nB$scWgU7XoM=`#7E_390!Oxf zwA<2@Lwl2``!y~MV)UQ8bT@909N_R1io;L%#lgoP>2-!bw$%4$4S(l5`njPgI(&!q zCy?!Xo|rRs=ihdi|$(T^c;XjX@U@J;XxdOpHW4-^qG=$m%%7sUy1 zBITzcknhTpIKu5E9g4Hhf+Wj1h(+YT4|5uJny5%efMbk0PnmCLQZM@&B-f!ycme&_ z!rw8{n_4=?S=Ron02iHAKM_OywVR>K5g5wa8Jpi0RbBq`U<&oeqle!Xp}a z551yOPYEOFa$G3crSRU!YVoz=Q1|%yZor@7TvTQ2?w?>L{+)gc6?$3qA_5ve;DffJW!%fEWi-**$sOJn!t+8o{o&I5{b_*s(Jaa~oiFZu z)ma*M1nRcSb{!qR5X;*xJybqx`UhfIaf%_uAZmqOKi=+Jzz)zbZkE-xl7@{xi8Xqc zY9)o`eiy|9OzfqJ9q1EXCTJ5gtO@N)N=_Q?-L1fWsk6vExXCrz<0i&JRp{aa$3PgiC<=Wv-_ z?j;Vgt3mNSV*r|_O>q~j21t%_v)_g6$xzOp?`Q+ue4HeY4;}`2C*2@&D^L#7cTLlC ze3W4%-$AeFGE+_p?pfA3X01KY9^FgTf-a!>ZXvR*XYa3_k)7&(x{MgN#!LB0I2V?;0~B z^ry`bh)WmN1(EOE z0ojL=N$yEcDx}Ec>UGHPR|Tv){sUb-GB$~3XCtK;W$|;)0r){ByHOv_0M7ru1c0Sd zjQ1%|tJ3&)Cqv#!k6YXVFDJeepZFf4Lpqu};)CML0O`bge*i#4Nin!pzJcL38vyV$ zfP3g00H(1+=W75r*K2^BgVLJu1AhZxv_8SP>t6DJ!T+t+h+h)Qc?m8@2kyi-va&_r zK(?ki9kwDj=j*J~uA{}bG^Lmo!9DvyvQF7cr$Kvjb2`%NumTJUZp1G(rI^~>;UARB zDLaYzy{|bPYIEa%a@r!krzst3^L>EiwCe^z``zYrsLj^|lG7IP+fC_En{N*!r@iJS zX#dun4z>AGL6Ej?vNFN!ZAynG_<$zJfN9p5JVVY?#c~tmDBp)>Q1 zypO5Nea{!FPjDPlc`cT;bso1O&nW0!%3aLJ1~=S#(GzfV%~8j!>&|#?(e$EIaCFU4 z$J~H1G5gb*xDnE(3D=6*r=w)u+BRKDf7Y?^w<~9^vacBd{{hXoxXiA=$NG?Qz622+O1RR`-i@VVw*$*~zGvU{9{imuxR%eJfUAgZHH96CFWn1&ZBbA9^XI^S zP|;xevpPyKRaH7|Aq>|e2zkQFV*>pprGB$bRL?caNWywy5FNL-79ojXQE)zW$#h0^R^b{?NOogGYR>u=~%j)c`HB}YYr@1OaDrgtEN-gCi?$J zOy{x>=r2c|)O0IbMZb%BsOet*2>s(w_L?5$Z_>XL<*lhH-$nmnv*7PtB8?V7-fH?5 zNxAmTg} zY^Sy3C2*9JPg%99no%d;S4-}A!-kTeRzW57RKzK z5qV4APDHi11>N|dTV?UlV#h)7uaPOb#av?U(wH^Gtk;;G#5^FFC920V1Pb+hn*HvV z*e%v7muI^hor+#`5x)Gv2eUCg2==0z(K@aiJt>7J*LALJcZ_lOuovYfV^1PRMCNbhZu5;CkBX@48>4Aw{K<2%4D2U?ER0FO)b-E49q05xre21WW}p*0Bn+;=})4J2Pm8Y=VFyx)feK)p+dS;=Z0ks$)AfZUN=`( zV%)y08#bR`gQ=S*&A`pfCiZQ{9w!aLt<5?%zT|(1tqJGx;+s32gM8^rL0K5~0Nz=u z_~5$kkZ>NWn!BNOXOhZ}KZ|pv?(C3sH13c#=C{v7^kLzA)-*RvD^{}{oVeNy*^Obz zCpS@xikXOav9<2h%YAOF)-$!e>U81{VVp6T}b{|A-)*ZFyId>!Qipu4VZN<6B$$u0zQFoeDcq_(Aj_5;k@$AWu z!dBe|sby~L4gflV{Ei{WACUzsH+-kd;|o88JfX|Qo!|m+;?3G4dabSxZVcB;cUghx z)#9hm0kB5vaW{en$g(f~2^(QbxCM6`aEC(DZiD=tm~HA7RHH; zxP>7-m-)B93i(^I#NpP42J)v_O@Gtt{}j2Ce=tp-D=Vy7siJ}bSL0bsuXth^;v?Ii z!UOsoxfA6?)-OdMH=j4;aEhIXF|Ai#nCh1*7Ym3^9rJ339?Ukl1#xba_vz%$AMZ)Y zV8+-L2-J4P%~0@hY) z9N76el*_I8ifN&`o<`LB0_8@19UITZJlA`#9x=FY-$XyX7tz1zXl~;-HXc3&(I1Ho zZt6GShb}|xm%6KSkH3lTcqyVk);7ZEI1;VsL&;ee@n)9;QKL_Fz6_wd8ixUs-W(LE z_b*Z%d`Up}4xTAaybdF3?~6lnLBgJjLg=eG}fUn4cl*BMOgV7Ah=63dqxf?_y5mmLPtW1(EW?4Z-=xdmr% z@2)DB?>*=OaX@k6cif5i8l5)Zg$QJN{FU>6)~^^>dasiz%U`_>{*5ve^JNKXA1D4w z9I=aaoqWRRpv79WsdAjYokXLB_X_--#qUM=PJ$PGUyj_=<3$g|(T$Ep&SE5Is+3t+ zP9T1yT~4-q00t7k7&l73CohUktT>W6$BTMl9vNRLKu?ZtbWJbf`Tl|zeE>&X;fSAG z?>+HnuR-VQ*H*6_U-|=&Sh|+4mQ;?xnlb;WosixlHO>w0`ZnIh@HzQy+5_BE?(lKX zyB2Ymyp!LKqMAYmxDDR4-qW;oQvtOj$N90Bsc=6OEPVLYC=PyZv;tvIj&5`-{FQQa zqkMYlMfr@_jq-V>8y$^fjNUnWTH?zK1F-K1fnV|O%ZPvRVcZD_orQmhIQ8~IBq73$ ze6DpF;#OGUKdtaW?C(}0@!sX?JEZp|_0<*XKmWrZ zm0h@p;84P0p41P%0&>gi8!?qmxZQLj%1;n_(cc6UL1)82 zj>>nV{M@1&%btNJ@T$r2cwC5oh!Q7n7h0!2p8cQp5Oqa#A77;FJMSwzI<3!%FGQQD z@sJ6RA5|5b*~xnki|zW{_)u)VR|_Hko3C%=gJHNnFJ6L&(`q?nD}1?=w;nq6`SDws ztNRfBU?5WH7WIkv0(=oky^QELt*E#acBI!ArmN zjzE(f;!074dls-Fx%0(~a(;88+&1M&j2q>KDlhsY1}-h#gN@=5)_0n)mOEW!Q&++JcIXD+&Q#)e;&S2`3Xb+U+wT0v`ZTXDhx+hLv!)$ZjOXVMUS|1NlT^ zn0;sNdYWh^J*z%6_i-YdOK3#MiBX}Z8nwCx*yZXJR9vVc*Jb^&^C)#44Uu15x2F?h zG=>W3#c1D)vZuLnjImr^ln5_MgOxHGdr^+Qa!tn3urtu#!o6BWufrMn5xm!^raSa^ zIQrdp04k*m^4)I@PJt`oQxmx9dfN~@9>wp>zpHKKj9o6~G3&q_AJ5TCmLzAN|SAI*4w)4jH{ta)H(S*@&gx^lC{MTGkM6Pi8pGB+-?5b-2_DEKCb z-y!5utXdh}l&qCKFeWr3Q+ni`R$}%`bcDz|J?K~bPQ&$TCYmy`Er%-+r!6{&p{Hu?@UfBv)hI3C<6R?jVoZ21)q&ZKq7LJPzV#XskE#5Bx8_8whB%tH2_ zUXlg*%5Yb{`gtT2N8X82;dPtA@)~Gcz8F0p(V_Ejkjz|+%#0$vdy^|FWh-|Fs>|2_? z1F58weM>u`>g+((LuV>yE?mBG(UQt7`|vOv2b`v5=sI0@;&3Cv_U#f_ITdeeBxEOh zTe91&g*fya4z@FlBtLrgCUwAgWWnh`ee$Ef3-@FETT-LtgE%;C`Cj=q@P+=w!B&4# zajCH2MLgv_4R>|$Z%MS%mMm?p5e(JfU=vQ#BlhRp&{yD&#=j-e&Pw$djvzlh3Zc+K z97LB@m845NiNnu_yA=PHL_2jHWAB1*@(T#zhv7zkYSqJt?Z{K%en801dxPTm{|`j3 zeO`k$Sa5fo>H>a7z$5yvc%M^48;<>@a z$wsMx-K=O?D1E(X1l_2P^VQ*qn`R7-w0Sti&x6Tuf3i)7%Ug50A?IuzXT)m&>S|Om zBFay#TAxw1I8fzm{}w<;Zqh3M(2fJ*ZeLZGe4f*m3yZH2>->R(GzBvhG{pd_3`faZ zoPljX#$Xp~upMHnsLwhV>>0q0LhN6d0{9E^Jt-O6mMfl_h;bgq!6w{{1l-}QN-j5= zNtI-EVU;u^0e3j7zxd~)UBX%8x%6rFItKo5)=?7w85=0;B>J5JOl>!WTj91fdD+Gc z;RjZ7%$-$CK794s#Z~jgbL--&)5WuLan%LlS-!aHO7UE>xavmnoVU2@E_gz?N8-wq z8l$DQ=b+9yb2=V~gA}HM9y?|XXocY4Frm+ZTk@#RMNo^!BeqKPS&PJe1?+OTyB^Wl zZrVZ4Z%D@0ae4IwVmjjl<*!6Lz->lsQYWA1)N#eO3$djQus@_@S1YapbI(GF8h}%b zI-J$AobBT?TIQ`4|CL0-Cp4 z8Q$u-km3w>!262Xi(ol8!dtBjZ}l<&mir(_c&nA>t;XA_cr^f`2Lds9tCi-h7V)bP zy=}$9TdfRl^-e^8?~5X%nN{JfR))7ajF>$9b?!tiywytcR!?B+cm>hPo{U3e8V*>U z;d0yZR;{D4ZF?#S1vpevVM#o99u&TeO%RzC_HuX#XyN3^5(2GbQ+`RrQE1rU{G{#rwpa z;WT0Uj)f#N*|$3kBBzMx>tKtd$R`_Hl8V?`g4kkF!x__LJmRiFOo$xFk~i8Y+=44% z6>q|7E{%>^lxta(3l0jIX@D<6p;Q_Bo<^eD4*b2?+^MGGiiwu-7DxC*> z>9NTAJCLf@Gb|>J2Ry)B12pz#qD8X}5BSj?T4AAb9kxV35+X9R0xM0_6yLf55BNH) zgVZr@)>OnA9`Ig&9EK|%=MbLO8E1vor93Kg>#~p7sKy8F;{Hz$w@=1Ja{vpJc{0Gy@N~ z7|O^49^@h;4|pK1J`443c)(vr4O<>?oyo>{z{S9mtO+S<$(b0q(s{t8AQ^eUgXA;w zfLpoxH)qStJm6`d0=^8Mkq7)2)L{w__;bj&G(RGqm7Jm3Oo-i!TihD9~t0T&c&IvLe~2izuRP?>qaiPDpr z=G-{Q|=S&bM9Eet5veSb^aI z=NmExoRJ4yEboU0T$hZL5ZM`dz_mUpAu{uTYkA{5;9A}|54e_-5+XAXxRy801Fq$b z^MGr4<2>LZZ-fV&b)&}^>1mDdfLl~!Jm9*DhZLfS8F|2U7BcgICmGMo1FnseGQ;Nq z=lmJ)fQ#`0e%t^&;M=*<+7Ayn!Fu#BAio88z_$b%8F|2i{58%49$0Oh2RyKoHM2FA zvl)57by-E8kq2DLs(HRM@_=joT?0`U8F|39KA(PM8y;{ODi-D778w3|(2bjE%$nby*$nt=Txukj%q~QS< zq~!q@r0yx?Psz*!E+AQ*CfO8tMjr40o@ChYfJ^Fs&o?~aK|Xb*i%r7=F34wq6dv$Y zWOAj7j^P0p9m@kA=p@ywzzq+$z%37WD%?ro0T-m@0S}Pr^^uVWT;P``(6Oce6~wr> z&%^^RsaPKH)Kr}P@POL{3@9THxCJR@#c6~GoG2%S2V62`dB9UMrF65+#4Xxv!vijG z%LASPp4@h#Xn4Ry(ei+&DJC_b=olVw(Xl+>8FWlhp4U9!0#9Hz6&~<3cv4eJ5{3s{ zbT|VG54h+^Q_3N!_=X2u;FbqG4W3>K!viilmIpk8jwyxV0T;OC0Z)Ucm%{LXi;m?1 zPtysmBvW|6MaS}hr|C#hc0a@PLcXT}62N1%Exd1~nX96KfsA z11>t22VByzNF}3A3J*BpmIqwWQcuA_PRtY@aH?1y@HCa69aDI~sd7TGqj|tZB>?V+ z2V538(grp^jq!ksQ6}SLCG&twGL{EiuSE)Ycg^sCi#*x{x190U_iTjpE;A3f))x}) zj6C3yUt2Ocot^#gfD4=_N-{Dd4|u9!V>2TUxFFeP#%AL@;OVJ1&I6vBda~h+Jm9JD z{qcaOXZD}1(J~o%z|%7;$c#MTsi~XH3OpkZcq)8y<$Bwn~?`RJ+p$$$OE35 zy2-4-GxC6^!kzu_fTw5nHC}6G6u-~dt4cL zz|%7;$c#MTsi~XH3OpkZcq-h<5@bdm@bt_+eibsCkq2Cm!N8Tm1I}BG0S~w!^^7U} z+=d5SK$ZtQ)tp&h2;A_13*7R6XMjsBn5qy(!vijgx#f6-ioXnk`sS$4vEcz1kmUhS zv(7Qk(Qv~9E^x~Oo&m1&(I^i%M}0lx**RFffu}!Cqdef5G-h{zM&mr-8C3MgusMLr zN3CaehKEeT@*FFMt6XPL3J>`FG#>DI*s|&z=ktKK>cjLi@_-+L=V?Zi&I3-7nnL-4 z%sk)%m=PFA=K&Y_(X=8U%_g4A18xEMjGNB`{?fsyap3_!G?@o{K}STBDp{RLgFHB+ z_QL}%c*_HRF5!*vfG?pv!W-iOPXc7-0S^EvJm8Xr?Z~q5fHMn8c~9X17o_C@m&~T{ zfXDC%HsAqga*gqTOI8RsJl~r%5BM@BZh64PfaVD|Jm75QfCpSM&=?Q6PCYXZxTG#U zrZFCHK`fU7Waa_40L6~e7!SChq-Q1BYQO_-QH}9{+r*q`W*%??^qud_Jm8c!#se<0 z7UTghn~&%EJbT~Zc_=*KgZ}S4;C(a?xIQ~B&^+MMfrLQS9s(Y4etA5V2VCHm2b>%K z8|49CMPcvEJm8e6+X%2c;4Go$0oOVWc)&$Rh*q^CA8?ZgoLOp&2RzW>s|Y4Vp9h?k zyI&q~(O%D7HpT-kh)0NMga=#zzq1-8(~adBC-P<2>M6-Z&4qmN(7=uH}5_ zlbHux%aeJ)<)KD)HFj&^AJX#1dBC;2aUO7yXXXKC)$ET4+{)#Zr+^3i7A#5j#{;e# zkk4Vr1AbqC&d39<3&1B8nR&o<1ByH&54h+z!UHZP&?l1+g*V^<7XV+}YK#Y5Qg4I@ zJjwcJ%zgtN@FeS*dBDYb<2>M^FEf~wVLv?J0a6OHA0F@kDPu_EJm3K^7?K+20k>#< zM>jJMxCQN(2V77bIve8wC!jGN@E{32fo0|a4^TRt%sk)$infx;x*PC-2T&RF_s0Vs zK&{ne(+zmQ1H3i8UmkG5>pq{E2b_S$c)&$j*IZ^EZ~^E_%gh6AtmFQ3LmqG~%gh5V zhJ&8g2oJbLIe8g*zyo9&kYo#LXFH4^AUI;1=2#54ZrN#v11V=NP75 zmUemSd5k0tc)-Po^cPtnHNpcPpk#Gq7u#~FtQXtzrr}`j5UoKkI80b%b4JArg={z0 zD`y8T%@6+u&s$=BI&Hz-5c#}rtZyeyO4TIWjcKyoi-5Za{|E37ZH3UOet!j|nrxTS zSMYz!N+mBeGMQw%^Z>j7;zA+YMaok>Yy^2OEoU*!v7?+B9Z#z3}v1j%+|Aloe@rLFSD#2%UIH2IdZ<{+izK3yg z6U8Y!`#9o`iMt0Pj$pjPN`BkC?z#B5i5HrL9n|?(cuSCCIR7f|8QkCr=P&pEDel$Y z58__ql^)9Yzk4;}Uh5qu?seYD;;!(n68CyMzn zy#C_e?9CTg^KuH7|QA z^*;k+k!!*Hhdr-eJZ)P2Bgq zYmNH^+|qn-wtpfXaJK&{9&omo;jPlrd~mk2ET#G2Y-eSc=7Y1HwOpDH&URLBX+AjH zwK_Q4wK_Q4sjeB56JSg}xGP?-;xqSzVNAXZH`r8fU{pO0nlU*6#$?`si%~cPjL8YZ zn9Q^JX(|w_6^4K@Ibj%+DgHQBEG)VS!+B4x_ppc=f9plM{w9nK2bUNVDiB z3}Z4i>V1*ixzc$M7TttlOdbQ!T!QFHPJ}GF3B#C7*|JO^sT#wWOwa=s#C$1Mh-T4E z7{+AAyiU+Wpf!tb0*uKlYK-y1qMI;`$&A=bu++7%=q3zfGV87>8b|DCV@HxPIbj%+ z#TFTp6NWLF5rch&;I64*Oiq9?xmS0;tqo)H8H7(}wM>)DUNs!%z?l4BW|l%}>svKr zGBdQ63dCv!X=}rnOz|tJV%^q;F_{&xoANnSmqSup8^&bDxZRB0wDl&P%alNs|EK?{L4Z4Jg` zj?pp3>$WzG$&A=Zu+H{%Pol03V>0V5jK&c=+L&%@!x?C~kM}DsgMPj?*cx^?HhXkT+P|p58cddwFjNuD7>M+&MQ14)dl8Zn$@hxFft%#2x7^7I(Dwhv3F| zu7nTvio_l3wG?-}_kg$)yzAkP&N&*>XH70yCaUt_j~0&ezDFS9oD9K)-1AZO&WV&1 zPD-4L=9$z3Z$;uCdLHUZ#3lcn3Gtyhmn*#S1JRkj*eRJ`3&~+Q#cw*!<%qq;N~%em zQaCxcEPnyyYHT0J! z9><*vc4ze_+#9?%#l6w{THKqw*c{rq+3O(gt=<@M zZ}(=1d#B;*zRNpL!gqUX#9iw>FYZ0w4sq}EeiiqAuWT;u{kP;c$>+}{{4^msxN9Z; z*OCe1{#J6gxWAViBkmt1OU3=O@o>A zo#(X>_gJr1-1**UagXz6iMzmCBJT0to#LM4Z4&on?<;Xn^&+@52sb^=YbWmM-biuJ z^k#^AmUo7@=Xy)Tz0kW}+$G*RaWC@tg{*MXrQXNlUgGT$_cE^x`%c15(LUl{<@JFZ zaBy>@kfqe*V^T}0`OW88DAZxD#$TNXC3P5l0i`DUO^iZIsma+ag@c>wm!zmG1_MgX zZ*c;paBx3n(bUx`T1riFa5E2EC^`)}3Me(n!Ogtvwj#@X$^~Z8mKj*Lf`gmSuPqHK zOCV2;=y9ri4(>#6ynSRixMh!z&%w>_YCH16AUL>X>h?Lfhd`3T!F@6!F2FyuofSu) zB1XT}1P*Soo5I0;2gLXK8YvvyR8%kG@EXNCS?**GZZZA^L|3_IL!Q?PUP;+k<)NhZtutWnJMLZ5Wk#N1)JWR3^o? z$#=GtdeW*|B=iBb7(m{32nrg%tURNe^D8~BH)r0gMuQTa2-zw|LFjLN?uHVfGZ zw4GCu7?q2C5vpP?pr=|!Wri%HGMhSuQF%P{4x{cLl3n3i){M&Y5qp|1QEEO*lf&=8+@&VjekmG!nA&h%hSu1n}=v z_@0^Y=MiC4&WB1l{vuL8QSQ$pWK{kg5lYnnFd!A=&m+R9Jl>c2^9b8MU{vPz2s^G6 z!J-{k$f!)F?^XDNLl=kj@CD-v?Zha|Jg$&Ynd+aXs4E5=8CS@toQLe_#Hg!NwBrgH zm6?b31VxaeU|b=iGV?OTitM<;$D(#9VR3^8&{e{yjK=v5(S3Gd!4Wi$Fe+b-`0Mcx z4Pt73;|Qbj{fK_t7pW1H`;9|J<*}?V#qXtkk_z%0M;MjA^JRYHFn=||sQedv0i!aX zT-#=)+49-_w}hM&m`eYpU}qd!qLBjk2HAF_FfKgE~ns_!n! zvqSDOT)!)|4ASd-g!+~y&fpTR*_=@Bwzom%f*7SX0I@L@HRC_u0W~jF5y5h1MyvvX zV?)JU5o4tas1t5J(F-3>capakR>I8>(Kq#)AL;Rvcj4x9y{_WU^G1t%tTz*G?Z;*K zNJ~AsZyW;=rvq|!u<<-z>)ABs}UYh zcnchcv+t+fhpL#R_KRG|1{IwF=M%~%((a>GEN1(XFl2*^3gG<8@TR{ZJfvtN90`|> zLU?FV5gdlkx_C6gqsmyxg~Gv|`%uo(fiOxA?%YQ@@Mf!UWamEC@i;6bgu^TM@s3gE95?t^Dm}F2G`u@ zlkC6HkxK|||HY08-##N#IJl31cJUyj&d-1`brl?#bIrk>t2ww22Dm4|{05ldwxEZk zaB$P!bVB&yl)w~yDIDChPsIWVI9nhkrP3VSXTSF#uC~Cz%`Y}glMhUQetU2nhwGp- zbssWDrtSPcJbj-rOL_V}Be=MEpOGBgoR!JJ%{s60Iki^yT_&mM>0#gIfyj^E#4)n>ck04kuF~YX(B}Ir1i8 z<-l@w041MnsI1qEKcCl;9NZ)dSNv|*2CGe ztyiev;Fc9?3I}%-wNr|})(|69v*dbT+@~$7ZUFTpkR{P=s27a9U@d%RG?D_P=M_Ns zT%0$fC4EXy@f$8qKJoE6xEU`T+;V@G9NhZa>;q31(lnd3Vb- z+1DPg$^Mqa!A<>L$c0)D({gYMeGYDZW`LA`vvEm4x7xVZ8JCwD?P54s>OXRD^Caws zlTBY<4^86W9>dsns1MzfE0$q4FdW<*hAWadxFtOOC&)Diw}g{8xFwv#!OgJGI>{@T z*eayua{=-~D0>Ui1qb(U^cxOtUJ3cklz+qW&}XJRAO6CN*CC%^rp!Sl_{@|MEcWGe zl%@-3iGuFaz8nTGfw3!T z@L`w_x{q*h-+}lCe3^QZ0NZ`Gq;wy0a1*Jv;jo=5&k5S+;NG0leaOL0kjfs3o1pk> zwCz6R;NHyAwt=i8<&rtueaOKr-yj(Z*?3=`)_usqEk@=8u+Rqu-G?09Vq_U)*ZK0a z?n4f4DHoZ*pCX9mQuGDg=gE}rLk@09_X~i&qY5*xRc!Ym2e%~dqJ0YSPqJ&f4>`ES z(t!Z=a4ehq)^BIk-Ot)aT$1 zW{~-1GJ_ZnZizP>+;%p35u>M5`1z+u66D#Hn4JDkW}X%^J_k3isQ*u99;KNopJ#dt zRk9;i(Nj%e%+|huXP6ZZC(YK%V zi119W1ZJ((5F=Ex>k;xyi=F2Y`wD?9iJruG`R&BmOocwr^sa;TOurEq?40oz8TUKm z@+LsLnF!b!pFGpN-%tfjeIvx5@yRpYpRsZ`ga^l;@yRnSGk6luw1mx!Po8NBC-F>6 z*v$CknP%9Z@p*3{b|upCXY-un;OAz?>VdU|@E7_#(;pGUk9}63IdB5BWH#poee%5r zpJ#f^IKO|5cZFw~Jm5L_he~17c0J*lZjI;zeUWM*@?@Urfsl>y<*8kdHw|ppBhNH( z>SP?wp+X0W>9bw0D`WhwcTk``LwKf_QF{Xp8?82dw(Ip3g(RM7Np1%qKTv^1Q}pep z>j}?v5o)Ijf2|=#sAjt!d8WlqUw{S?$dV-0c#OTR(C3+MiCKbOZdQNoRvGtNyc-g_a|1vw!Y2dcRlhw< z4ZFAD6=YW2D7V;wj;kZVno7{{1{%I&-hoNy5L^cIxsTv5niPV0bzTP)W_n)lQf?G; zQYpn{FB{myS&qeqF`Q4UhiS%eUd21ZG-EjZS;OA>&cO#M35gEdVf_ivc3ZA+0*Cut z;ruZ5A>;~w4xWLAE1ZadhAUjYT<7S^Xb8LVp|XcdT?G7S$c2=EIl{_mL8k|OApR~r3Yug z(t|T#>A@MO_vyhIu=L;zSbA^Ux~20B)X4 z23Rg|=8HQjb(Y2+5yCbdaDg-0a)Gm2e({!li0w;ib zBh#{~4W@8`6UjZQL3TCBa)A@T-IW?3IZELIr<|KwljN2QoOQ&3!Q9&g(re==(M zT;S~g+zYF7%xbe-;7ozrV}mSOE^vytV>VgjorK`48v&LWx#TQGhn&E8L(X73|KC31}qmi z1C|S%0m}u>Kr5dMoU^gz0%!LI7x;Q))aL?c_PJqL3TnB)Su@-|98|TOm5$E^&Lp_4 zIH(>YH(cP<=XT?Ceai*TWOoxFZ7)8lNORh=aeXdu#&fH3kd_noxxjhh+uq9PLjy2z z%LUFW?9r(Rp9`G0<0zs>TNewK3!HVwP0)eNjN3l{Hz#cFj!p;o{NKzvcTFdyz$nM^ zf3qIBomx)zfd8A(++7_MSy!*+|7MQ4?YecnbeF zwM&omwPgfI=Kp2{H<2f&oy7l5ZSE~kPFo1RHUBrYx#c`LZ4qn!Z)$TVdQhW|=JwY7 z-_(A>Y6tb1%>PXjd?*xTz%;AR|IHgPd|0HjpgW__|INn)e0~(jOlS0NMfGh`Ef)bG zo79;VC1(ZO37@&={%bF~5=Yk@bP-@R&TNp}hX%|DOEq+6(Eq+6(ExPYSpgTp^r=isD z!#sS4dIqKTaQJ=7dG1zqquiS8$+0rZ7*CFF^uSt5yUFnfJPX90|0o~X#rTL2OpUmr z2E8MWUX&{XPgd7%ln=dPB{LYoZK<9_6#69I+z{%Mcyp$4d=hU4EQvP*mc*L@OXAHy zE1$%h0ZZb|fF;_~U`f0guq58hw;_~U`f0guq56LSQ2jrEQvP*mc*L@ zOXAIdCGlp!l6W&OPN@Ea zh}wXlT*WG?IRf_s?O(G=W#V(U|Ib2K(O zAbRn5)N zx+^dl$5L=h2MEmj6x^(7?w3|fUJd~THw|zPwdBamg+2v0S0mh4ttU%+vFBI{ZYp!b zbvnROaB~;7yxx#ro~4$8dj=s=jIlliH$#?!`#j1ycUcN!(3T_sY z`?>>wPQa(&<_OCD-sy5n!OaYCBe(z@OTo?h;J$FZVwO2xFW7tvZt8I}LU1MJSPE`- zU2afF+HBxcaI^Dr&w@_Qr{HERcQB;q(x>3&VuL#y8psU=H<#Vq@es%@1veKt+fzk_ zJ_UC+?xOe<+`QZ4_!Qi{=@n3LQyq*7xS9b4ca5gtE{Ccc<&77)p~m|@G88ek0D&4! z!99>(O~E||UcqvEykG+gZe}FL_-57ESpf>}CGfjZ-d$^U+r5ZcCNa$n1vjP53xnTG+{83HobfFs-coS?0Fa_JOTkSj_v!0cOTo=(ZreA} zJ_R?Uxr^V}FcjR3<(_^6_9?g-%`N^W+Na=V^tpbtq7Nl!U04ck_IJJupt~CJCcQZ* z5-7M?0KOxjTc2l2K*7yU%l8J-&rDrtL&41eUn&R;m^}Iv+)R^i8%VSsS{UWTZytdh zd>+bSXs`v)heDjfLiiNiJW=_Ag0cMYWl#hKHx>E5f{q^RQ*bl7=h(M^0R=bTUy!U> z3T}$|HiL;Z6x@sz9&i~fq#i5u43^VbkE zwNC2Xr{Jb~A1Y`&uf%}>1vl*+&S-jc+RfTjq3?IfBe0pF;HKY;@|6THIzf)y(*xRF z91R6GnT#rBsU;^6KWr)|kfq>e%>Nq-ZtmuHqkMhAi+04(jdB~iCr3BRPt;Y)(T(!4 zsTbwLX*bFTscy6y#~8h{h2Xkh*k#NX{QFsg>){AZ#6Luw8oUtID?%Z-o`bj(t#G6j z3c>aH5G?hDPCrXRnwl=A3C z`OFUF)pDf2ae`}ZNcN)RMT_r3{C`VuT_pt9{ayF71$cbJKz~DU{rz!{^Ar9dN;JWB ze?xE`LrgLLBGUCO1lRoy!F7AcYJ9n3Gi!qD{)XUsBxHxA$w_eC-w<3M3)zXjToYXP zHw4#95WOrAk>I+&A-KK;(RW&r5M1}y1lK${)w2-2WW_>o-9MS&x_^@#;z)4)CW`Gw zxmDMTa_hDy{%jJ@4`{2euSh&!-?cpdcp@J<3UdUB=Lg&(CpI@o>wCs~k)S4?ukR`M z*+*LucUf!V`TCkd2Dpvdj9Da}A8=Cvwa>7zm#dnA=&Rw$hIsx8)f&8O*;z7zxH;Tt z(`)y1ylB|#><_^J*=x|#%8B%9H&r=tBim$4>m!|5DMVkX97D9?v z9B8WU($a5XQ<4lNvIVvgkmm!KP<5B(JO!As77^GNfP5XmgsQtdXMK>UE3g>qA|HR9 zXz`WIdPUAkI4qMo0HV%T+=b*4;k;<%59Rb^U4hA4tc(L>3Sm-%%!gs}E{;xwDT56O z_HV#loQ4%9@5;zl6oSuh$>c5AyMcR%SXPPZ$9geb+?^ubnN@Ic3-Dclw)#e$NE6Dc zb6A9WCq_gq$+t^jAeDTZT|uch;zMK#)h*=280|)>7h{RMDEke@L>yzxiWemU{R{p| znJF-LU~HJh4$P67V)GVOpyQIl`~W3!Gp*v8L0 z38%P_Z+De70LZro2>G@joaeOR`ExpOp-XWPKGoI>;US+Yx2-w#G!jL!_rtx{B;Ca( z@hD>3iayvO1v?bj4-mV^U{OT*sZ~3Yv0eGHK*7nVHGjK*bHn=0^+r9@tq{OTW{#&jg(Ggp&1}H$9p^f=q(-Tf`H|`h6+H z&k#b^Z$?X%tjEyO+^~L&S+ZM$^_zbA1aKao&KH&__6kh2N$FDI51Y&^%ec zzlHk?{w;}Y`A;02iDdoGIR)=s;4ci@4YL5&Z<__MeoGeQo5EfBvgs%&j__H(<;BxB zd_{XQqC+R(Aem`40|eb<{Vu+uvNilp2da_vdokQ)__w4&%b7Sh6Uq90D||2E-!M-j zeAaJfWQ5Q9&4AOjDOQjlK}*sC>$jxUrZp<(Ys7~Bz`<5d(BnE#g{r{YOC{w;}i z+FXP~D+EJ>a1gyK*epq`-;xekzlE5y169fTJqa$~@n}iqmhE|{#R22Pb?Aa!`HILT z2;0{`VC7V@ez%*!RLT0i0^-m*93)kCh7msNw|pVH1NF)J{Vd$q@NY?tmbc*GwBZ}> z+u#fR8wXqcNyViCS-<~)t4@O+(N3ESTucB6hAMHe2`A|hOV;lmaC_n3lIVc-o5bFs zX*k%bO422stluZXJq`bsL_2jH(yxVYgBePy5XqlfwFa?5N6gVdvwm}~cplLq174@G z0Jp*rC*bY^9x-6W`vvP5a+XmEL*XWM3Pz4_noY4G@)DH46)6av+@BpE>E^fs+Fm&|{Fq}h`gW)ox8jMq`GOFeU zs$4j11n6j^8dTG(zN#)c##gRiwj$PPc7|yRW~jL)-)_kTL~~8PeIRqzT$6A25x*wi z9>ax9^98J%tRrMSQ_obkAz}bbu0qe@?=|h90Zo5}J z%NMr|0~o&glErQF#j|8F=0;ARF+_nOV$>#N&N~$+gxuAMeO(n*oo=b)rxDl z6A<0I0XW5|GvPtrM}BiE=Dl-;d$=GR(nQ-B3H{$i7_S$Td$_C998<+Yz8cm9UzQu% z5z~}#537T{-zzZ3b!-JgYDM0=Q0;JWPaKOGrB;Qa=&m?{oQv=em0XKBV$^k)bw`SFmU5CsEdbFEWf>?D=&W{ka z(&WP@CDi>c-lulP-@L;9mYHkbAxH-x! zQTD|@KnB!Z#bcRpe8-Il++9d`^a8~M6U8JFRu8$ievJ>DAbt`4p`L!(o#I}@Ab!mK z;Zm*$IV$*K$woKP)-=Q{^}`T9Nys49M>og^)ilI} z{7G2IH&i^Z5SaJezSy#W%T=c}C6YqBBVvV)cdlHw?0EoAP;R7!ZlT`+%FZ%b)5f}dcn~mClzRs%r!8da{_}BQmUK0DS$#abvz6O1 ziU&=Z0Hh&S3zYjZ#+!K-Ao-Ox=<@070N^`l4_$+Wrv-?Q2YkV2901dXtV3-pjmBfr z<&WUCdy5ty4^9zjh}DefZeI9mw4ovX(xRmdJUAL~xpIGxp;@z`5|mHsJ;!Z^$gADrBcwxiykh zo#j8S0{l+YcLH-Vpf@&zJMJT>Yvt1rZvf&kALR@XnNLH^W!pAirbkq*yh*vAuYi&7 zApF$=B*z-?mU5rRB%$(f-c{ir6iF9eMrRH6X^49PHZ}uP>PbU=8sa&Co!baBIh#HW z@wLF-WAV24B}080;^zS4<9VH7fhOhEry>3lh~F(rT7sQ1*`QBDoWKgS0)K6A1{+lu z#-}0f2H`*pi1tY}qf2Z$>yiisH%X^7R;A@{uJ;oc6!dLN~y zw=h3SpbQQ1(bRhtfPeTPB~7bAn=}ovfW8CZR|}FJuR(@}SU`nHyE*>42IQpGAVWhe zpq>B>vLLA@4Kg&u0y+|aV=RbO<%Ic7dSz&c<)l9!fTcdj$PEp#oaSpFyPI+uL2LNw z95pKJ9<<90AJ0Sfiq+ThiD7r%t!BX30olK-ei6S(uV!_1`oamniaw#HhTS!oorqC+ z7#E81m$ExWq#;%_YqJBep&=$l^}%5v!IHCZWG~{554+=A8)H);n@Kq*QAf)S4YBC| z4YKnC{Uw-D)M9*%e~!udO^~e#KBmV<36}S247w6S&VfVsidLmI3khKovq#;&o!|v+Wjl2(J0|Pm~NUzp~ z-3b_Y_JS-pE@_C>zOcLV zO#mt&Z0!S_Fu&NZ+${IoIz4}?K9CKhT#Og-jW9K}=c)7Ig!#^~D#>!^H`f?755QA= zu%1kdNJFfqbe|V!7#d;%)r~mZNex>?PR-0y9o09>ZP&wCeHQZ9h+!7ARl!Wia&rrG zg6a#%ze}|fo{9CVGBm`Jn45zQsQ8<{Dsn?Z%pxjod+J2F?(6(GzcMt$qCXt6g9Ck$ z8yaHKKL)bn1AX4QRfdLGhKi+-UE}MU;Y&bvppb7xmT96)61!QQ51ym2fp(&uGLKh0|v)#YjV}7PMf6hQdFuLLlFDU;f3U zvJt>HtePaigQJm^u3OOAw9l77{nsLyfB_jAV#!4u17mwk2k{Y z3dBJ^$_bN)SIu=@=SfQG5bQ?`2R- zIyEFQLqjY&yMb4jB9q!%YE6%%0yi|o0BE8?Hl74+4jTuJJN zKP>8AGTAizNZ@B@(2=4f)$mMBLoDf>1N`+FbfiD>V9K)~>egRq(s>a0H!|qRsKbNN zF*L-I&X>UdZgnhDPkh}kS%PlyPSkCNlZWu4V$AjUr+1T}#=1{qxBo}f9RO9T3d z29=;4yRYZ;x-IH%-Ktg20{l{|5&*;eX1Dq}>fUvtSx4Ru)DuL?B1f*+B`Z8QF27T$ zevGu%OJj8qTEdIj>qA3$zsh$UZ>Ae-mQgAr9uXD2N1UNQH=X{LA=0D6su+nLZH z4Gpmvz8|QkEi$Rf#HOJk7UWi-zOqQU)|J`{lU!Jx5py3z)d~eCS{gv!OGAO3vwM$ z&sbzqW(8?zhy}R~sNEKso>_q#8e)M*a7|Kzzpe!fcfx}7;%;Fxli997)mvmzX2}+; z3=Of^oC4H*i%iO_APo(%AeR7jgGJiZP0b42&=3p!VL)GO2zSDQoE~@Yz0zcMJ5b+Q zWKw3y7OV^nvDkD=@t6bu2HilAhK5*>-GCZqk?ENgxS=5y_zXZ7HiSE2L2ihK>un4p1i&gMMFa@iliW}!at}AlNm!pETDb>OthdN zGpuL>H#EcoUjXREjlgwhFP?!Viubk~d&qHa2l5I0J?={2sITWE8UN)lr8`n7{$-D7 z{MZ+79svDsUxRtj8q(}?&>C~TK|St?{dpE<58S40hQD_^Ol3;r@@`Dyqk7S(s=>ey z^jKdbQyQXC&T=SM#Y(2)IXB>oe3cA|IOQw@(NobSZUpjPADtlq$1Qyy=#xURGuaTP~KB5`CgK+DJM== zd7*carw&I90_J40DJM=-EfS~>r<{<)87g#gH{}ciXbk?Ln^stnVN;%o=mow=t)YB^ zsGhGvUAkiKz5v22Ea2|IfMHX<4YG%!OUKuaW(;6(}T#@&pUQV^KHNvE8cp(;0= zf^5ZDiixCCPRv#Azsi(z0va}yg}XEAIa=hwnM69}#1*PA7ie5@Z0`;Ha+UY=0S4a* z_#XI&HWTh{se}9)mE&NGWoRVg525T0+M{{LU5Sh(u2nhh3jpA)pwrR-q*G3;P&t?7 z0&p3GD^daBSOow#;(1G7lZ6ccY$AwRNXmP7E57KPxJBjt9iK0f!hHnP=RVR2k7r&U zRqhE*l=JgxFz`EMP79M^$30y^{-km{#3fWA`rMBuwcbs@txikNQOq~hAxfHUx99M*R3eg``s;))+Ext^58Lj=E zazAYgfO-tl=PhDeVB&q{z8VE$8-)K#0Vwtylh9|%?bimV{{fMU{;u0hx>k}cpH8_7 zh|Vb}$K^-E6W`$VJ)9D12!td6)Mm5=(kYYYWoQ=w=0dp82k1NaiCb~2v0zYkeIDc& zL3WuhcijKrWKI06+&klttwH?VR+djX<>}YqeCPT5bUlg`+lSL%(!h=;8vp4Ra6rM?r=XNRFvmJU?e3JqlsP8lDyB}Rr0(OlRg6-tH_ z7C^Yj0={K6N@+D}Z^&JZuUe^VfVj<~n2<)5OJV*DxgX*Te;j}}Er@9eNS)0QT_c^a zdseM-b^!HD2ISXWZT`Hl8^)KbR8A#kL;Q6GS))$f#VB8*XV^WaHOtupkp4a_>3LLv zr?Su9hn!rG|6~AW`yeINB@c)a6T)rGF@gglx`Jcmac_yC~j zFM{j>%0*wx@#rIlGpdsMt023La?vm2qpQT|P`954GdFy8mDmz?KXjCU)ayXLOSD)k zOjtiSBZiw_kS2QMg9b2&jxZnoJmw8-kc@(206_&zs3`iLiYR6g z6tk#2b3p#zcdNT+7k%%X-+#`TzE$^r_g3uc>goy!){A)HN)7oHvcKYTe!NPqmS8=H zr=Q5Psv-UO>+~h_<5kLMW{1kCNe#emNf9$z+8#s8|6_JxL(m(tQKjTc>SI}c?@4YS zC|rUri3*Ou&6M0P!CHjsM7Ual%SunrC_5qpQNnS`cf`@|amoa#1Gqd*v@QUCaY-JV zV7-eQS**Pa*+-P?$|-X9IAziQ4YCWqzQxm$lW$6}p1_F;D!n>pN#U zg0Qs@uy8LMR*mwouq(k@#z$g*2#0t8L%uX5KbBza%7yGI@aK6loi!TZ9jCk+!c9Iv zTjwBb@_Px^1U@nLLwLvo7#SR?P8nlSHGyhe8Yyjv4t%D$9DPbL*%P3#rGYQ^1xR$_s$0@%H><^{! zzG*iqw_cCJ=%UQt$O#qBL(`9c$vV&DlvA!$W&?D2RV@hXdH}=XX~`*zlsTTCjN60X z(~~Kka|9&68?qLlNm1h0c1axonp^1w6TAM<3oBc$)w19O4G`m;aKWCcD0;#?^ddawNu#2aQdLJx#$!HvI8 zJnJiZp?krrhA7~^4%C3Ks1(4xae16_@<_{Sh`wr|D-a`nl+<1SVpyE)lspIDO0czN zfS>OdmVz4A``G?6d5L8mKw}-a3&QO_Kyoaj5}wm351FG{>W4_+Nyv{9!!}UGq{<&W zj8MGeluttVt#3r?i}a8zL2a?Dvv}VKB%sTjhQCg|prm)?cedqanO#vM{4~1aH>or1 zB(5qO?9>PoKAY2h9fU?7PKL!Gfsv5f%DEq`gw$nDuF&Pq4 zjtkxIoE7@0W8Xmi$DArcA9q>`J>Wzal7G;tEcB35Ec6Lyq|hgw8-zaPJSg;O=Ov+s zov(#H=U6vV|9Pi|&?8PCp)WWyg}&&l5qi|wE%YVl6`?OX-wOSglXMgH|LxQj`ij$0 z=&R0Xmo60gnzPlVhlL(7=esi4E(~I;ciuVC%)n6qYeok!NW7t8pfWw#4z%BVx^td-FXpij?~Uh8cDtR_gZXk_{Ti1q22?HSKqz6b}Jqi7S- zIwijV9vn@w$-u53U7@0n&tzUGa*fm`mAS*LDxVB1`Eq>bR}iMi8SoiRq7(2gIO!~t{(nH_y-1*j713J zbCh<+zppQqSkQ>1pAM#7oK#Xwu{0yExpMlfoNB2S;Rc7Z%%8_U3 zm>)e1lkOsh%zJl)-!H7#5iV zeyyIkAhOHS$r}~9fjk+OH&SL_LEgB?TJi|SI)U@Rm8~DElJ*8<**Lg-F&?j%@by32 zJ-GZRfNCFNp$;-CsmnV+hJ(vF+8w5_FAgrxb`LIR75t3~#A=1UIJi99J-D3WtOljT zQGOZ8b`LJ+Q@#b|&rn@19A`43oEw?#9$Ze&01sqD`E54aJ-D12b3Kua5$iZaw@e1e zJ-GY@fVL7uN6A3=VLaPCxSX;V{|O{n;~rd2&^JCvM#PvQMs#ThSaJ_8C&xmjs(%BG z!-HOc2nUxlsbTV?2gz{{E+?ZQ!IIZe9%h}5+4;qv=_!$YJUiOhH9WXH+da5kY*o1x z3hu$>WGwI$4F3y-Q6-s^^RjVp`PE3UE^GJT@_mFKM?BR#5?Lv099(`BU8gXGQr4UG z!R0K>PpLqxR*$2XdtOfx?X8-3=ev;~PDN)vsD(kW!R#u^`+j=0k ztT9A>y^X;Ks7>%hx~wJAx~$!U%g+FG8$ooG3`ENMEoFVM2d}b_J@QW=DQoxOa)RFR zK~mPt5Vx$|gUiYJfuOH|cFP(Em$Qc&CSRAedvG}!xhMghb-JwGgUgwBttg@$ZA_Q7 zdvLkflCu6;Sr4H3CS#JPpv#(NW+arm#QAg)X(0a~!q4k|G>PkYnhRzP5h0Y$K zjhrWi7CA2oZQ`^O+SKVOw3#zRXme+R(3Vd5#k6y&V+w8Uqzk{;sU)&K2xd42r!dMGIM9RRO_d0cj?sR$x-Q`Rb zdcSjv(A~~Xq2FiJlX(1;F?a&?e$IGa_`hbH68c+4qZQ=;p7FEz|H#M?|DPE>Nh^+Y zx}&-#R2=2}EdDXhjUg4Y*I>{-sih7fshC-(~ z-GxqfW(u9*tPwiXc~t1t&O1V9Io}Dr)(PEC{drCqp$nbrLT_}M3%$wdFZ32?qR>Uo z4MLYVJB6Zrgf4ep2CXut9O^{wA{FKI(^MYNl)FO3cH>PX$|F2-4=L-*Q>YM4(GKIU z{(_Qf4Hx#}?+p186=VGfQ<%yxFS(nre@Q)0{Uv1$?x5ALDy6RIHB#p?z`Imz80yp| zpQ9G$;`809PFVHeqZzagG0Gv@+~1Uygnk9%@B~E(t6?a5;B|-s_{uU{NAzu9l**oL z?lQ#lIt2LoaNuyv^hgwDYGDC94=S4}kgsX-H9Sv_nXYt+^9Qm-)}mEvluf*f^uZ88 zrKYLr5a^|$l?t<@p^aoELDH_?#CU=NE(Fzfgv(}S)L>+h{XE9Qo+$*b)iHiJ0PjB(qmvNjR zxu3NbAII)sV9gj+UW_yuUma*|K{D+;uEUldZj*CdCne+ux|R47~vnb&KQ z!`2O`IQWZ5HKW|?HSw_Z)?g@A4S>3(L0+#(4qI>S$-G_@3%|;0epcYqm9wY(r|Uq( z-haCCu=U|kUWUKwz_2#K6@R+YPME@fe!B9ob*jH!N?pkGo=7dH+$$U&w!VfLrk(}hmC_)uaOAM{lb*~g9LBG`9Jc-) zTva;Zwvl4uycWNhu7GX7n0VN_1!+V4)guhGJzVi(qQx+U|6EKwY@O<}N~tS)|4T9P zu=RUOdNQw+E+G06guDSoF)rLBzK~`569c7sL7( zu6WtdPME@fE}I!UwR#!?h^s4l|4Z4NAEAt5AI+e3h<@2T(n%SN!w`ZVVs`jt(+-a< z#$}c-@^7Ju0Q$EOBQ2#yhmrE-^9uX5_l$N%-#BI0eHf$)4M^D3j(*?tBmEavWAx4r4cQ;De%KsW$XfXpC?ft#l=f;^q(@0LiC0& z{xmLL5$N^0GCqgsKfd^DiU&xrs{^Sg@d*%7k{}gDO4N-|%Rz`&pY-XokQzq1ej<~b zqO5O^As+#30cIPj{z8LVoUW{*w#r}xFNbI(#pfxOSEf*+%8(jKetphA3YAsXJC`c~ zE(7y+U!mu@rVy9MZWV9gF4zVBLzGEa*&@S6BhO%C%ICp;%@e8MT?kCeYbfhDbk9Kc zoiFDT+?5w7E9Fi+`#U15@fXv2s7j3J2-H(n{aJ`WEg%YgR5%_=p|X}-t&Gl)aWhP9 zMY34OqA{jP;ufC>*=%1<{gP2_hpk)gNBIM=$p7q}z+> z1$b`{^;BsiQOHL9-|+St>Z7a!sF=JrJ_Gukr=ch3W}n#r%wT2RFag_n;>OCrU&oyq z8f3k67@*P08rU9{qyUH_A0_!H!H9^1 zX%GkNkT|M(ju~(?XQO8XqLKQD!)|50`I4U7v>#E>6aBPkzp}2Fq(#Rll5f{5RL2yk zVM6cCA8J`yxfeI6JV{>k$b5*O#e(+t(ON;RBD(2{juMw7=D&O}PnCP&4s{9dgD|n$ z0ABI)uGa>J|2G2?pD5R%gfQ&+-kTb}_`kr7#?k6PV)E^kvr+5R7U1s1KakEEcc}<5 z4B6mG2%iN1s3%jo1jx+M(7h^~cbN)Ps&)RroZqLRa}FGZHxRLhNt^I#MUG#DcBpK5 zrMDy;D_~`zW~*vIH7%`Eomrz5Im8fJuQFK;RG2ueT|Hn`cnaF1z?tG}7ciDOjZFg9 z$qxWfH$l3>N7N@mn`j=e=HLcaJbU<2A3zg2>}-i<`+)U2s@uN+IOT(AML_PHP(gMM zSc`7L{BNKlcpcPv5JyT$>5wlESQXbHrlQL0_*o9i za$CS^*A=KqKwRUY^nIJbx3s($%r?m8#*Fa_$k%%qC7C5tLPO66tST?Np#1 zH0bSsb^SmW^d118`XI(h&j<~D6|m|JLUjIs(CO;sg46_-s*B1DT07B>t4cr=_$VJOZGzV32VMPVAv@~p%Pi5*c2#$LKgNx-L_?Qh$}JiQg4Fl8 z{7kgmPBKe0v`rOGj-&eqtqCiXfK&xM@T%gk<0i92LqmhsAvBp{ttDh_DHm&6J}zh- zL6g8h)KJJq$Mrc&G&C(}y*Ag4`#i{QjLSJoG&DPCr9S4$H-fP}F6S)K(83^=ox1j) zg6#RYoU=qjOEFLRW>i>sg96FmX^ zB_ghTeuDMmBd&g3$Qn_ui-U`YL(3AZ9JJ$nEm1un>lfD-`N{;VO?PG7O!-vEuJ-k1 z-fL)cf;HtZ%4;e3cX+yPUHOO+d^o|HkDiQr0K&(8KqqOeI59T#LV`84GXSqb_@)QY z6JzskFl*iBHYH~vI`4@UnjaGw1~bCO~+t50FlVHq!!aP~LfE zcH0Ehav-+*D9PY>9$B2SnKvq6{@Mr7gMc0Jp+p(M-_Ww;Jrpoo->O@Oz()Xl>VdH6 zb|vI}lzE+7BLWv7OX~9v<-GM>B<_un_3CP!(}6son*0;8&SW4l&vp1q9`E!F*oaOoF@-s1jYUUgg;So()-7@xe<|n+fPH<#qNx$j*nX8`1Cu z9tHm}gOKKey;dWG(@XR2H@DvHM)*C*KlL%pN*D9EIeEE@`3v$y^bE8e$!-B=A7sBj z&9a`vJ82aF8u%dTElHnPgDP6qSafbW0x+O7NP1KL3xdocmABq-cf>bu@$(qa#CN7q zC{yn{le7@tcc!_p_Rrs$?tsMq&Sdn%ZnR*WVBpsvs}x;|82>wy*!8|MbzFzc{RQIl zo`(OO=>p!ssHid!sT}+RbD8(vccum%l?0;-A!_D}z3)t!i(PRahz9v$erICW*a)*- z$lo#%Lrz!rz(n4k(Ppc}C!-Gl8d{B_PduDIr3h}ms3bm{&sc}JW+L&q{FQJ!X+LAm z94)0ZrfRrZ^e?D(=(-(qyIQ8)GY!1gz&L?_U?C%(#@T7%F4ix2$Kk#6BPF*ok5*Hx zCr{B8W*qYJP$YJEmQy?cLA?GfgP0R;-XF2(j(3Cb+z7RjhV`9lY!XMisRs41ul_`| z&f!(olp)Yjy`eD>|G>a?5GIT4b}M@`WIT-cT2G|t(i_!=m&SOcu*#TI7KZLh%|!=k zG_=(waCdkLh8C|&t%Uv=mDN+YJWugN29;5BH?-HMZhA-=hY>^dAw-{0EHTmI4XK|D zQpQ6R|49+js)6lIr37dp~grNq#jZ3p{4`~&Y& zv`UGrze+JNoc9d)|MFxy-+GFCm`VwJi0GV#kY^8zvNnFZd?SsFQfYh97BDIy#5V>1 z5+EIevC0~N?5_@4JzstX8iq9v)g^MjvZmwa3Uq+5mk*HC#j|Nlt9i;ul*(X)+afM0 zx6Z|#7MT^DG}x;Jvs2!`4vX+$Vl~Zt#UOP3n441V0cGq2_YqH`exg{{j|C~`H?sU8 zd&8Ii5tm<|vh+2`zkuuqU#`~q=5MiD%)szGB9e)}1gtKuADb-`{X+{%^?*?^YU}#3 z&3Y5v8%C!KB@%9A+>OYY9WiNR{9G`kvIs9c84*cohKGN7nv4>z2*g)$BO>{? zH3h@^)gVbg_}WOCRGe2+8ui536}T1f59HJQRU$c_((iyW>VsSCNu(s)+f^_hqSGxLVh`Q)&C~_-AtFKz?&+jE=!4)?1^Mu@0ggzPJ&iq3c|8Wi9HBI(G=d z7kq$ZP&~JFonv-;6>l1Hph}|$5xI=09c3$)%4R(yW@k31@#1zvSRiwQjyV)%LAaqB z7vWVjaw3@00#vCw&}xEzpd&PtsA{LT!!k4x*`Hu_#S^MG6=wpl zzz6+^G`OIrvBDA09Rcxp-5owC3vtrD+6ZW51@`=?KzL=t_?<`pz2!) zf5gAdu)g&SW(6GerM;5)8-LFu=1P^TZh$WHs5-**^GK3X<@1LrJ8VX~__Alsj5!F~ zelt7J?#nr zHb8i<2hih1l9yo&N$;Afj8)V-48XrVkhY>hXmZQoVI-i>066D^WRXBH>pk2m1C$lP z-P#Z`ecLg<=9j<)3vN~eCZWrbELH01^ z61_FDb|8GUN?w1`9SQgsgs=O6;N(I?c`gFD#*Na~ke#Dk0odBRFgbjQEGu2qDq&Tq~_S0y}RA)&0`iO^!xI=FF@FrDe>t$|9 zOa)?2Y1Eyn${)y!Hv&)M$N{wu!X5Y*9{Ec@TT4XAuVZcEy$)8yD(eE!40jGjKZa&% zhd*JiORyqEzKW6Z#P7((#J$nH5oj-~o%QlsCHkI^?+IbH_lbLM)U{dr^fFM)L4smnMIK4=ahaDM{i;~UfwhhfU+xp zxTJEt-+3LCb!RetH1lJz`Nn5DKfYv?yiI}P`C+7=VLBI^$7||zri^xR@g&k^gu2{; zZ@$x=%aN~Pf}+3RE|1hP&E2=)W8P*w=D>_6s0KTEeZfkMKXmmI(zCP#mZG<#vPNo} zX4`~-aS%o}mo%cp$hwP+$dgTHCvxO#)KS*f4@)Y>J6DpOZ_|SGH+8>BM;)R5fO_`I zR=g=;l=PygCxcZo>Jn;tFGSbwY$oCEVa09&klZiysK;H@BJ4Xojkbp_URCNvrTg z9Nmj}Fpw%p4g*>Kw?L-;LmaJh~!i} zko3hmNAE@HlFP=$Z+zA8-N=jlSxBUDmpZ-&1(2bfg>&!%FUQ_wsn&hcamj~LLh2um zUbdN_9KCGQR1TMIUVQ;~WquVWp`ajh&fDWLL{PsuzA^Q% zKCS}ZO4z#t|G+prFI-V?tHK=+?FRcXPo$=cydG5tT0>7k{%^?M_T;+1B)yn|OS7e& z%UFw{x`NBCJqI;Tod?)P1Ol^QOVMS>rsM^!v-!|dWnLc+g;si=veq7MtwBMi1FD+g z(%#pm%aBdb3yQP(tWz1BLtZe};;R>r9M=u-r+-bCe_%9qTA6O?x%U3uN{PZ+lAeW*4gJ`JJs2y@KQm%Oy&N}rY zJn|#~v|Ce6lU%yMrJNRD>&GUDO8PC(t}~*{OP8Vxjp}ri7UkfJ%l<-5tus31sfrl- zAy?LY@M2V2d>o>2<=%Qouhy#c``hqOEcbD)>mP=vW1Y$6c7V;9(3O7O2>;Y_o9ep$ z|KPb$=c;nkGPGY-iPmXa_%@;yZh*MUz+IhYg#j=^tU7g?7oMS;UbI z!pLg4`DLk2>%wHXQ*M5MnQ%?wHX7pDX?13`<|G%nA*C#3iiJ$lFTV5xR9ve}(D{54 zhTY4YMQ=4Dn8HeKV1J|#yp@C5S7B^hor1Z~@DH3{2jQh6s~)tvoP_L8@U1IcnUY?B zd>^wa2J4r>Q(ehBg4F=$0UXpwbqU~wR0*@sAX6%=++cl6(0oa-uualOC}V=u5L`z2 z=-|5>Aa545o{J$_&{uOITS&P?PRnuj#Q@0V_?x>S+v&;m9s|Ly45UNQdZC$X>eQx@_u6@N*WqRS}DAz75D(PIcLN^=z(j(WUoL1dQ!oribj)`x-3Y+)i!5D9 zOQV9;>A|k0T>$L6$WpDk=nLR`^Oa5U!o&bx1>j8&qz8;yDV&7ov1SBm!ay&|ytw@x zZuO~tWr^w|-JW>$$;*bpij#3F9R7j*>!9sdpBA@4)(rgio=i!n&#yj%N>!g}pPhuH-@rAy60_#qS22atX4 z$uFutFW%%DQB#o7_`61=dZGFxLoP-tK~~_&FRDIuqi(v|1JIKorc2QkuRiQd$E(kx zyWDWE1?WbqF!EZ(uRfh;xq)v4U>8AgyFst|4E@u!^c(=MUS!FuK1FB^B^h4;@WVxx zyy{ct6HKgUEMlk*W$@R_#u6TPtd6x$$}Iq?5$Mz7^Qvq_sVrv87%MlT<~EkOIvN`LJx`%Ue_dylWtyOGwu>2tbQ^TPvzTv=h{9fM5 z=9nH!I}hOU2!TwA?iq090amO)C#7r+*h2S-YYf(5?IIOJOS(v0%TRLJMGET*s$S!n zUj6D}t*Z_L|AF?e_y>kDHD1+wF9uO;25t@fMWn`v+^u@skUCWxvc{ggbk(~8V87}G zaxn)FI5iZP2~?OyFdlR754TR>seU!JH{f!wuT7U<^%jbPTlHQja)WyX zkPoTAq$#@oN7ef(fD~N-CJ8yDH6+ed^Q+!F1xhTcngG=ykSQsV<6+jel-Cq&p{jA= z1gl){Hkzin^d^^bO-HTYSW;dOepiMvxHMxiZ0i*+Ue!xWP{s~&Wtj^ve${KvyZ(AlwNhd+=E`UB6rP%Gc6r{HnvL1pd2ehrVubHqx4fza&l3^*^f4 z$77J9roeReHJCP0^Q+FHDfo&;JEL%!Kp<11tB#%z!P=5?%hRxhD#N*?tUBM}$w&II zODmxlPCu8N)LH|kUv<92XHiZl;aS9b*^O6qGLIAgO?L|0vAfyBG&>$<`0%dmM2|3F`KG2>nJ z)%zg(4E%GRObsW%@2cO?4;kgZ>3w|=OFMv6Wv?}iiueb{3Yv3L_@=i+(B7NgV;k{x z6(H3Cm##kA@2WquSsBxyuf{<(nR1Do-&LOjxl9Yb1+rD1{GzV<(q~;Gy8+nifeimm z@6Q>ok$*$>wkN-+tA6^Bo33*JaO-YQI?gqg4DFW+w%(L2o<-{~QX-=N{Fe;$J-=#t8yxRL(mV*+^zV9pSG27! z-bOm<-l)#Kfl&asn!JMx|1G6IZfsJwe1n#)uE7Ja2Tl1Iv-!no40;p^(e8vnubriv zo3z=3PW$d;M8Z0YFg7bY^yD8Hyh_WYnZb7bM709^tKpfJP(LL&7>*u?G44`7wG0tG zzN`UvnFs+!BpXk$`bm}yqD8oGRsA%x2_y+d6P5%265F6rQHAmW4wJP-C72VY;Ik_A zLaPv5{q$e~-K*hl5K7+!cbK~@hE5{08=7U0!ksecCvJpO&+d*)jSOjwk(dT<$gd+; z3mb(wAYez1qf`ou#FHFpj)Ahm#^T9}+_@i~CgRDB)EWR!Q}NV{e2J#5u$g%3Mt44&5F=@GeYEj-2I84$T_7d&k<9$bNy?~w&4 zq{8-T``{TL=}SpRiS^V-0q)7dPU4vn*$a7LXXh2XPtJ<;dKR9pse_Tw1(BI`;OUk$ z359w?1B8pMINPrfw6aCU`3<>lRY@|1bBBw>ZHMQdD&C& zY>r(013W_{Iy)oIFYpWvvvxcjsTzQ1SmYkmu*V~f5p>~jiQ6-g98}H1k@jaW@VpTk ziehMFNs&|xSlz}W&u!jOVOI9oBMq^VDn}*dg2VkVbz>D9gE$nu6%h7%vU!2x6M)6O zrSOM9%Cq3{ujInY;la2wLd690U5r$P>5jej7F5n?d)!`Ak*m?MMZZJ#dmu^!QH(?> zxwrwoM(ttcfoP!-+>BEc-I(V823cDz>*C93qJdcs5aVn`4O9|ydJi$oI7OeL7rDZ!AFJ^-U^O+2JAmq3xdm)FyHlcqYVEGC10d9b=Aus-sv;Y>6CgupY9nwQQg# zGh%n%2zED}RdamvV%g2FyhI>w2}E;2nO_@-qD(F=jM!dgXdo!{;&BRDZ`^XM#ggc! z&A&^TR2!5UNejYv;r4HV|OsBqqMDB1V|P0qpHMU^vftvPXwZ; zKxwKwk$!YFDE7l;01efquJ8fcfO!nE1A*wDuW18IO3Pzy+CyGj7YJJ`{qp5(|oN8m{mPg>-+m*CM)nyko=4dF=^ zNlqkfGdwBc$&I{z2A;Gi2X|^l2Bg4~p2X^1*9cEUL^BsYhSZ#t#BjG-NvM(eB!ER@ zBxksHZ9He>t~4@F?S_1^WGeTxjc1Q5->?$$%SE4i-CnF8JB~)OsJ|}uodihPi>u^) z$P&z~)dbk5C5GH5Hy)M|`x<#rbgfF_=-{Wmj4l)at4HiVM9fo(9EP-z2U=SYnZ|a= z-jzt!pvbRJO5`#1GUU5e3iFQtxUOy)E83=skiwM3=FSCpkCJUJxlQlI;LL9`0Juex z!R>oXgvJybv9lQLDazID7Weg)8{dfaIu3R~v$@T0Jo!4SV@=-yAfzN2-2eA)hO0dc zfTIE282E31p{&qJ8o(WcH9+n`9kl|sJ6-e*&aH$c4ru&esRaIwf#~y~Y#m0&W$D*_ z3E7tNBrHYlIIN>iyM`8T%A}at&W(uU!5Zn$&xH1o@+8#e{>1TwyW;0EDW*2JEsm$k zNT0^|-d~=C+T6{!WY{9!l}SQvZgN~Q?8e2=K31ND+T8oNWY{8pHIsze+!DED*jt{5 z_HX4$sLh>{<6-L}OBc*9nIts9&*||9xWzhxcgO;j#u00NX4gh^#k_&C11f{xRpr|% zLy}7CS4`xw5py;J_l&9-Mo)?VxD5|yeS-ewHkJPkZe@Cpw}rbNdL_!PjB=@%Y;D^{U#Kd50dvWAC~~N}VzP;b z5Uk{H*MKA>JMUAM+p1pP2A2_)SK~dcvBQl{XP0f7#XV9H7jE8Z+9zMrmxXHS>@bF|MpN6Qdgf5N6DGi2Bb$*5t?CGO&78p~k5D<> zF-`K)Sf#_ci@<1uOOsj|?CyuYL4UDHL0R7Pp?i+QUAr7#KSDk6F43f6>i0C3g>Gb% z!ZLr-oirNmMrCZ;F;Br=l$J*K+FfurE+h84mW8`XT0Qdrpq-{=TF`yEKitjII?-J% z3U|j;3HR$MaCg$-K8W0Fa;J{Z>6hTXtDIm?A<<2t|m}cXy<{d4uegbaMem^M={G=0cK0Q|LzWb*NxYjse-YnV=T$cGU9|gH2=4w`_cgi) zX?_jlbMrCj`x%F`$mix`GY-R@@*eoZTQsn_w`FAfA7~i#E0q!H))pT9N@Yiyd98b6cA+oYqOEwcA{EQS(@s3Okg(V~-hT1D<& z0Z(V~bc~e$4?JCL_Ktc)D$#S9czQ-oUky(;@$`x;r>BQ_dPf>ygrG$)@$`voZ3#~w z@$`+ftO3tp@$`$FUJuXZ;^`mxkOqc{XFy~LJtM?3Fmeg4jS|nG$VOTlBc8#LrnELm zJeNm4q_xT78DeC9kNCEjoyf;MHwTq=NRK?s-M!8j4RAF= z$3DfFM{bNwhHa05p&iP$IUy&^2|%XJxlguSP00#V-Vklskul5-PE9+rF|VBTG1x9{ z7UY4Z+=(UH#JAtTT{D=}86Mm2 zf$MmA_QN5=$a*X}R`o8xdh0&J9Ljis!u25cs3^BoEFKU@C8av|RMn8oF}P2P$4H-! zJFM#3k-3B1@luvA$GNYPdxexLcVE@m*p27GZ5T}CYdkk&jmJwKuKLmfc;jA~uTW=hON3rGD=45Dco?yvjb9FxrwW5{zH^yalc>^bDDd)DrU1>jF>tC*}9;_ll#1i ziu*`E!_wNJUmWhFj1T{kfW3Hp72mCuxhd?$fR4>l0caVFai>^0tl;AG>{Qi}p~Y7Q zV%$VlKjp`o&A>XMYkSAJ_rmj{ig8m}#Rr;^xqlQ`GbO`okvo#nq6@{vTQJie4Zy>a z%iMc54$uK)<_93(CtY9eNqez8HuYV|lXbdo@c>3FClBnMIzPB~t$qoRzKrg7o_rdB zEn1JW(BdzLM(hI?!k}OUPBP=nv=WodGCx@a+0?46$(*bv@i8)={TAG#(rMzhf}aWd)P8Ys2DM6+b5L~36oz?^-?fyO)LYxEn|oUTkivBv2Y4_ ztWnz~+RdrG?Xsm(HyMxG(FrP8gjF!05d3o4E#NKqnV1T?vF%TOMd5dxF&B1z3dFd3 zuwq!qt|!1cA<(rxHx|Rgvh6Rr#o*S$8XSA#7qEZRZ0d*uUQf8#a_-Clvm3dXp{ zvP8|uycM^8+f|ao+;Q3EwqYr)7B2T+jwi$DxVRrgj|O7gk6DM&@pat6ZR@HSw`SG} zVuNDDw(kJHp$?ndHOFPT{gwNF?yqQ9+CCszmbvk5xDQEF%>A6De2mzO5pd`0Jo$|5 zc!?EMtAhKXwrCVMFT!0%+@{SfoK3sATsfE1v@gZgw!0x_;f&SzE+S81xq*t{m76UI zfYt<%W81%%qh6ZgH5}wML$2iK2+)+PZF9$A+x|nY+y~aQxizq9(;ecIyF+!|@qGRd z3^UZt-YWJB(1c|k`~=cXlGogSR}Td)hRevThPJa~k&F^@OI|JFCcZ{y4T>73(!*VP z-Ew<^w$`UmJF>>(-mfOKM3RC7u`Y_g%R5YCWVt5v^3Ax|HaCpDJOvGfZF6r_Q?9n1 z+=|KM6@2KJHmCjAHm9iA_C#F6bnaF^RKz#UPC<*TthI(QgpAKQ!QwV>?!rGnph{nl z;6-?da~19f?@?b^&KEAsf$%5AHUe$FzC1ZBB|?^=mYb+jxZ1WO z`Oed;ZJQ_Bnu5s@w{7!OT-)a1U8cPum)FEfypo^e@+r-+4dK5COx_n60rYw;i%Y4J z>FFFchnvXk!aMNFhkt+)Bl!$Ur*p*oj{V~vU=Q|0I=_=Y%Y{4|nTj$|Qz4t<$rX#) zNIq^r9*eYdAYTF5`itakV7PN)Bm)zU)WeWH>dB4d2cgqBDYBWd`WM)*$3+U&qH}U& zQVK+$f&Gmy%E(18y>m*mN@MIYItS%#A{h?;Iz5qZDnp!>%lt4RH6rk&M~TZq7M6jP zhtwl)D8o!(yAn)^axzHnOPEJsBd-YfHXdZbT+NK;ToT*_fZFyPz=n}MJ`SEJn+#J&sw{4FU zcf}5r(w$>-6FXC`w#`lUY@0i4n)a1~A;+}2#~peA;D^)EZ8z<=z%cEOU3lfDemNpE zTu+t%w237|Hn$WAbMFLGP-vtFGDNaX(KcN-*MXb%_(3!xYr?s8K#n+V zo6F3@Tw!n8>*UI1_&LHhZH8vLZmxkg?bDa@%0=a-{V!Z?oBS{rhUbXWw7FtB$L3l- zJausmbA7bwGPv|NJWv?d!fD&ZOa*tWFm1|ANv3Ucxn}r!u}Y^Y4BLKuIM`hCYT8^l zi_DiR*|yF3xJc(bx;dHK6iyRm+c}kgv_|JNNOZz!(UF0F?a$2})@4cROxTXNP z2~Li*+NRA$T3+bbXtn^PKIp^BUV|IA5}bQf=4tHUh(J5tj~=3`iyNoY7MPg>m+G`U zh`XX5coW8tG>k9DV+0hxS$oyn*@p2GycaH9nBVE9r}0!l5~@#Zk%;j}xEiX7r;ztw z!P&MfA4Xl^nm=LV)o3l?TCiZ=#Ll(x>IV0P`4a|gHH?pi&4BQm z|A@-(fmxsw>)-r+s;?0+MxH>l@GGkc=G^U9*CPq(F2AeKZ@U3=n6G&NU(S|Gha#|Y zQtbr@-uI3-8q^z%V;Rup;)(A1TJFZ zBid+9RDa~eN1(k(zTZZ7bYyjQ zOOedllUvf;PJ4$};0joFts8L3?L5~Ms;vCfhT$~jt*x!VWf{z>pwqzo>xsJ%!8OHFW>S8O%Zppe zZ*d{r#!$|(n&=s0Q{2ooCSubrKN`bIm2s($Nb?sj$AgvbVqvb%|2k$> z?!LjAW!hYbTyq>Q|N4m5O4^H{rug+jiM`)8|AW1nW(6+zrM;S5lKjBmEDb1W>7w<< z9Uv=N!%#c?BIgbrvmg)LfXm-^;*d(v4M7{N8Nz2+iuxGnZEpA#nH>DohG+g!y}Fo2 ztn1vIZ5UqwGYM@xf7n(+eriKLo(9gXq!MsGCYH27~v`C=DX*~6IhID%>oqcc6jELTYg4L5VGO1*GR(yeIj zQB}g2QHNVwt%j9TY{u}bqzRI{1zd^iRJT~_aG$GZz@7THqTz~e!47k=rp=EpHMvB* z*Wb|Px0R?8x{5`?`dbw%Q6;JkMA-QN1zO`GDP>TThYg!*gm16NUX9V3cJE0D7^6XR z+)x|&>6r;`buqDWeD#L#1Xd0=>U@Qqyc?d32^!ef#~%aN!C!VLC{btwq|nq4ZsXiT z3QheWp9N5)6_%o(!Nz$~PC3*j7>I3m4gI~4V8t&an2Y*kHAhBG~EITSB$E!?_OxZP-u?Cr<&bKlU_Ky7t(<9$P zodW9qEzo`J!mW^#}H4*LW>IBHSdvw@_V-qRLmG zaTK{}^PL%Au9*Ye2;p(pK)l$vN?(eNmb`4|76`i7UO{|JdmHt)LjRt>>3`wr(~zgn z{Sm0&dE;zMdbt<#GH%l`j)$8Dt`yrOUFD2woK9XD+&~jtBr^s>)RjA!Sk;5II1$;n zf@;TJSH|U_#jeqKJ2n~I>S6<#kPnaC_uX)Fu7Rh*5FLqly?++mf4uLzu~}7?s_Z_+ zyRm77-+iigG$vgKqwhfdPtQcDJARm_Pwp^JnI5AW^3sUxMBEB+k#y#;A^!~BK(!(B z7^J8GBj7GrvlO1T452>y{w)CSihmK6i^}j)5f`J{W8*Li0#{%PE@E&p6wCd!7pvjX zA28ZdtND7o!hqg{e-Y6}wdjMZ!+AKJ*uA;+Ohh#LR%SiD&Q6!50zs}w1xO>Hxt~_ZReS8X#c=Hig!EyYG{H$ zw|H2${WI!t3*~3Po#oB<_8Oq&&vl3XZoZ;T?U7yZbKf){NVM}KN^6O#Mh*D=9D7Wt_SPXi%$u)pod z4d9g6afG^wY?VuF)-eU!ePmT&SizOw&vPALc#c!^Di9xB`HsgqHm?F3h~P?2o~p^6 zPQHHk;)ry-|Kf-^;9MLLHt+wJh!FqZB2w+t@q`Ei zEAe(vlbf?V_qMhcFQDPOFV2@L;9Q(9Y(M`m`9l1E%NNt0hgPNmw{h9yMkn6#uJfY9 zdf~O$jH9&J7tjhHfMRl5i}pCf9p3 zcG0bTbbAbR{C$N-xBo=(@K_RTMPta{ZaZFpe`&CZ_V+OA?8Jb{80emQOPfLw$WLvU z4z7f+Z|IIjo$W(UvNcotxCLGKJ)fp2l~^^CTJ9779!0n~gDaDt3#%Pg#ugEvqe7r&kGE3eU(*q_kdE&^?V ze-Y8flj>1i)!M}F@C8QVBD#Et#C2N}|K}OB_f+YCKYkT8K|SYknChaBr?hRahF6B% z_QIh*Jo;;8^c3rwT!j;Crw!otk)PVo`XQ9u-&WhyPD2dMQCSQH&C6U=vMGi+x;kwJ zSAH?K_R&U=k4a@q7+iU3Zj0`08_fwx`ekU*yhhuW0WhiTQw((Fig}Hy-3VBMbstsFNT~0M-+{NjkHxP8|6B17`~;zq ze_}19ZF1i4t)*MQyVsY-hV_|h&`7mm!>$$wqS_wf#5O&3$eh*nUqe3no`if$C)9f= zoyQ*o-bUaLSoA~Q(^5-0ldO_2{d>r$gU>+C?1Q#Bty^u0#To6}`rYNih9|qh){BOlS5QET0)KZy&nZW$_;$`}<%3V`>y=FPr> zym65# zSm+w(FQIE4ZlfQ}y2EKM^iHR@(7T-BLf1LB2wm?yAasNCve3JopM`F8QjzPytj$iI z(5+4vq1&8ELbp4Mgx=#kBy^YarqJEa??NAR_^BZWp+}rDovHtV(@^M(P9LF1ohyXCtxT{kQX-&{rI*3-w=h zs<^aR=xfdhmo5-`%-Q79r-Z)leCX0Yg&udxT}C^{ol8M;vK-VBaYR+dd~w87#%6Jp zQ;AGVPF4k#$jr{ks-zN`%Q;z9RU)%D2TS`CwR)aP)atcVBGnTUYvQ&kJ2%(jM&Lz2P|fGU-JtSLd;uDnT^@ws(b2KkfxKaCU5HOGxb5uj&Qf?n#&igJ z#-ga8#u!SndneDRYZ&LC^(U>q0;@{IW#1eDao^}tRP$sLLtOZa*eE-(5R!h;w0~no zJGgayN&YnCboPK)S+sF9(h-twl)k~pR+a#VTj#$*7^A?R;45m;NUQTvh~|NPt0z+L z##P5y2Qnbv2-z-Q{y5U*nx0_2yan>7AbZJ|e?v zv#pPwbul4WPQhPiirA@qk@P}RC~yJdUC~J zjakboL4QT^V^#4Tu@x{AA)iW&jr$#s=5pN&3B+`lv^PL^7H4>3w zp_q0laWs+xd(D*9c{FkYX{bfHO?A0EqY!Acd3%65DJ!=v-txg|=Yfo9n|C1Ut*raX z<4%OyL{Fp$)NzPznGDbfWv#D`ya#AGL3ET1aLf=Rx|Dfzt+MX_Oy}Q^1f>COWIy==MAcL!CN+Wl=s|MkE9>O17>op?5=y|0 z_L>6_EmT%9>@e?IQ$#!3*!VG5jx};_QC3o#R*hD<6$;q3x+QKt+M4VsU`;n#4VIZv zkQ{}9oZD4&l;f5424ywuhehRtXVZSJL{`drjjA-2k)=?|dNVS6sgBTbDiEs`q^!3q z>sV7QK37_-%X%k{Ck*Ja&WJ#h_n5wvDC z%Nj>1);fr^0yKvpI!Xp2W&M`2K0t4kvd#YllCnOjtTxDAf{yqgDQjkkTh^Z`>u2;o z$vH((eW2a4UaKmx$C5z4F6*z9H39uMGGZtJopn(uYaHD;9=&3gb#01hM;p^+{U2o= zS)o;RS^uo82RdoSKuC zpyqo&p^3hb(~lK*FzUP6y*j$3U1~qWOsP2Ec^h5#V8sQF(~IuUwG^D}YQBDHx`e5!DXO7UZ&TT@+IopMf zcMb`i;2ak^(fLB?70v~rlblNZsXy5%7COxtB6Pa5Q0NS2o6wmKKTig8uXa8YI?FjP z^jaqkkK|zPJg1V-g-%1EH#(h#-sFrCdW$nl=ptu@&?U~JLQy_Kmpku(&i)HcT&4Bd zX;TyNqWB9vcW0+{wJ47YSc~fbpnihX zfKAa>sWdT{-KHv|1F^SX#q2?Flqv^A_0p(`-<<_&e4yNVRN0B)a_~$Dq_KrC5?0Y@ zuxc--7PNy^dpi|`_R;T1RWEm%i+_yMU+8#ey3h&EBG5+fm&Nob1m-^)8XiAt7)$sB zYgF$NY^LnV*p!HjodcuMYfoZkktgFLrG(zgUttS*PgYvbd|(vbAs1Jo*?FTTOfkwd zPYu4Q;bw2>Ra;hRK4cBPy$r)_EmFS(aZrd2IR03sWoiQu@o(P<|D~y$KtY{2Q(W!jWU0U1TR&!D9()3(eZ5bQr{0{Wv4&QM|pY8ucT6 zq1lg~8uhDvn+;w!FalEvHxd}sxZ5yywMN5B2vo+XJ22N&)#wmOoHc`vPLV_4Csw_U zo-WaQ;TgcHSffkX{-ZF}3jV+x7*qH5q{aH<9f9f0}3iMHWW#q zu^ZHmIyh=_YUq*|;KN{6&3aI!I{Zp2UEWoYyhZsSJV` zl8%l*;lu;yB5o2gf5A*XF=Iuc~ z-os#xJ+*tAt1KMyFc<7ao=B}?Q2Bgq$m?f*h~X#RSDPWehmbo(DrfKxG9QBWMlha& zcT}0-~IRzl7mNV+&I}$y}bQAvGYb zUm7yt6=Xo(RI^KRz$m7Oc>rTU1ZKX32+0Mv3H3c^s8$A>Ur zx!Brw1fqrD-%10&(ts8%v)-Q%(MGU$c_I}Y4EaKRP|2#)3zxzKI7&Sa#A~Hd18>I= zQ1~vZ>snYj<;iqoXe0~*qu}e25G5~C(O=WhJ>sTe$tzTh^*qYW3X>1vEdnvWKr9d{ ziD9*b%g7#tyE1u+iqTF2h1uLTJ9(3eu`j08aoqNdomzcrDRo7!kv*3I-lbx!*Zn_7 zY?DtY>--31Z1m9#T89|rChEz*DeI9=*s>IW0|ccrKcWX-hbVw^n{i_?E^qpxYz{gm zFH^A>kf`j!0^lB0HY07HLwiMsk@zKck;^iBMxW1uXV-mb{LKN052T~gA83ez92D6L zw-KtC4bNcl*r6+H!gINJlFL%Z92z*WN*P@N?Tvq+24kirqXN?wDq|eD(>;l*FX9$e zpg1wms~65&g=nQOZcOoj%eq1Q|2TUOC@G5Xd%SB>&1`RGciCk~ONIp&2}{nPB#DY7 zS&)om5D`VpfMhU$62*ifCPXkIh7V@J1V$7SW-(yI|GlrOdu9Q@|8stG&UAIxz3)}* zs_L%ldNTsw9#YO`A8JR)35DSiW|4&l#=dTih)+Anh|f!3l81UK32RJ_Q$QemMPLD5 zA$|jopQx#e1TV<7fuF}>eLSQx@fSq(Nx(}2^)6IS4M4>{d~O0>5$KQA1f2o(_Tixk z_=Z3>-Y{MOXhs=WiHd8~RK#uX#mc$DLv8&Gw?lb_&&iD=fgz@-XFBsDOX=_5P|ipM zuoIq7P-+}QGjOib&ATXvv40!T`-Eo@mg*W#S9wxh>ECnH`_NaQ^ub|Dh!IryRQ!#= z5N_rkuB7yz@8A}x2LC$5B&>RZRa1HoUfs5ZcQ+4G^B9=HYb$*KvgZRE@8i5TEM8yf ztToD+2W)8>+$b>-fa$2la}a?oU~KnUS0_Sgru5?3%6S&pYd$XdZ(`9x=_v01Bfx(4 zampu0wX4!C?nRf0>YtClq*8EYLi&+;(F0F_xS1P((842`!n#(~Uk*Y)mGczqThBib zQ1~3Bcca?!&KUvvg`S8!89Mbo!`&Vps`OP8Q1-x9_&6mDDeJ{&KpL&|V7%Q9+zG~m zK1(uE-rw-XPTb2Owq(6#qR!=quTt*kHSqk+ld~WxCya=kFcEUXN+c)iy_4^7(vFHS zI!tMdIBZk;truaGvjc7d4ARsjJi#~ydPM09CmE;*A$;|MJ>pb1bi3i*N?-S(!D`E$ zx=z)VUS&>JcGaYmZ66#lnKhGI~`N;To(RJ>8W#3?Nl7RLi_{ES>?_a5YNO-o&?w& z{+&Eb-9kcb_6p&-`cmA%sw%)nK7lGs*!3iuX9o0sRJX1m4Dm_SA|z9QhS?*a7hbEJsbF1m z8m5$#33*sRSGfft-vSy}4N3M()J({RH6@@goCek&Fy8Q4U!%%fmdmo-f^P9_u)YA} zCy!-rTzLmv?}cz@Wb;EqA;x!qx%iv#B(qXDmJ06;=;|+7QZWdve3ImsA-x;WR}QwM zb3iEdNsN<|#n(6CuLJswA&AaJ0I&54QWIFJmQ_Be??yweZUy5`pCxK)5AOptn^fD@ zZ5ZR`cp3=T3F?9!_&N+s^%@Ruc_L12_afl8DJ>&-!#*RZ2j8QFr2ZxoZz==37*UMV9>}=et{NSw$++!{;Hp~moXV}%luS_9?=vL$XQk>g+w59-I!WQw+3z@GB8864&% zo=20wK-57TJ|b@9uc-$4=|TPaJRA4lft^U;F?O(XgF5?Bi|1Fyl0W>d{QsDmtAo1z zHCBHMVC@oknDJW@)Z?zR_#j}z6L<#~ck1e(?s$=sHbBh*c6kEl_%6IAs8b)Z_!?jv zd_3#k6~ONd>hn9GV(ftb)5MsQiq*$4gvWyV((^!g8{p?<2+Gv2zZuQn|`A zR&|&HN$J9I`w?VOXB&k$utMS{3sav3{%ueXA8uN8)f!kwAFuZ681(L)!tGEO)j)WU zB$S9@ZJOu{Z%~bYYmH!2Xx1d08PZ4I!-xh5-$x*R@>lyFs5^eFfzMO8QhLb}%r zHlUio8RS18R38tmVt$P`gB+JR-ykPkGus(#2MU{dv(Py!rak92F2I1YXEQ%n}*T#s7*m@?^C7yN%;dUOTGI8;f{+; z>kt?WLa9e`QeIpM{2Ud&%+`p&CBPPWxTz7QoNqgX#Jw5OuiapBI<^tLaxIIe;3g+yI4X6 zjwD``^7@Vsxc@}-HE8$(jo{xJf0IodJ33X5p#s&rH+Obs< zUc|V+&GpaWtw2$+`w@EHVh$*ZN-9VT5jm#_7p=07Lz`2~QE5@Le5o&y{0tzi%Vj|% zTHpk6(JspwsGRoj=!1XYb!3&|nIgw2=Fp?4xzSrq1UhAPy9E_~I^c^v38yMM#-g+I zzjy?rpjv^$O@!ZO-dE)ar>LiH(hU!`gzv}U5g%TlIA$s8qsw1!@z;U9?c-^sT^){% zoe&#_wwov7k#%Zcyu56IMqBCDvh8p4vu}sRn08rrPKRFxMvb}n2i|A!1zd}zd+OtO zQmG5yrbIqrO1~v6IeeUFq3;l8{rM5R)60RK*zw?1pvCGO*oh@1OrAJx>LT}}dX9Tn zZM?SFznAg2G`1N6VG8JZDO8DNUIQ{l7hd{W#C(~3s)#n zqpAa{OSmS3s#<3oq;JjMc)xNk8wTl4fVw551zwkZWC$#e5*`U?oG&e_CiF)A)hI;t zGI%fWBvm77k6edWZu+kHIJ~S%Gv&V+QNd+P0Y57k)w3*LSfuY7xD zwZKcgH=*(n)s`ZBlp&EmS#!`#vf1FMt0--dS$frNCbw1) zk#HMsK})1M;xbzIEX163C$tT5uV1q>6Mv>keYGxzp!9NrsS-kOrH|ltWvLvZqJ<2? zK>c9v8ZT^^JAGm?gA|=>)Dl3fldfct0k%yUl8zOkA z$_jjl=$r|#pHC3w*UNj_$S9Tb5N>-$#21@}VeCUDd~N}KwzMZblS45RY^5eYXk?i%FG9cj`K`MKaoWf8y7 z0VFZKHTs)qWOwSBxStv`SDbeAcY;RqvpRQ-2{Q#vzj`eZ<_mh^ViRT!B5x51&%Xy@ zK3z;bA$pfrcrg@tQBOt*zXwL2gc3ns(Npk(pBp1g@Rbxu#d$5Oq#xe@!S`zX17A@6 z7(otX4crau67aptL!>0^?JArPvcB$v?0y1-|M?_|;$lh>sk~R$^I0JCg6_lyC=1eYmp8{#XXNc*R$I7At%lSF1{q}IEMkW7ZZK;c zmXRy<2+%z~;~y%Pw-Av>Li%iUW9bxp4}{Ns(qNof($gXR5BeP;{R{6D#KeR(4`*fo z8~GumFGS(0s_-iE36ycN9{dN71HJ%$52x zuYxS|Xfb5{Jd&i;|MCH1&xBJS@Ugw&yb^?+=yBWJfyOkdx4GpTdA-I%h3p(Kz8;A# zL@Aw)tX7Ai;v4(}ZI~x#N&Igkp|aA`F9bm~L>q~}5X`F~$xDsb&s(QqPJ?o_KsduA z87+o{Cbt|qBO&z!VW3Zv#fmBU?_mHjNa+;Zt!ohtH4TK>Bn@CxOuzg{8aru~BBp9a zDE%$^KyuW29Jcu6PUFVRa`bq#qJK*H7Vw#@^zZ01 zhBF~Q!1q^5Fgq+hL+NgKH8+}gMlr@e_?zf0QA_dEq-U$lTR*Z7{fz*Y_=J?n&4ABC z02kXR^#wMNxCD@O?d8C+2JEGk$m&V(zu3bRQ(!8az8NoP-v(hRz%@RBnd&T6Qk)x< zei}`gx*zCcK4T&o%jA~V8&$d6dfAeA8;rwcS=Fllg{=5r>Q|h1Jpn9)deijz6Q*l5 zvGr?Li^O(vUaNQ zJS-xh_?xH3h%a^%F_PE3axkIoN)0&K+f?{IOybk~xEGpFbW*QnTV5#~-VK)n$9heY z$|*7SoO~1Opczn>M|`sOtME0pj7CC4@`q~wJ2sowA*5>I@cFlzam9w@kP-uzMhs~U zFw>>lkw?#)F}Xd%J&$!{bui#W>V(5x@QKzPV_-WwS&?eQao~rPPxQ-5`mI!n0n+*n zngUkss+izT)JcEnBr&J}%*H@E{jiNe9mF6+!PMhuk0K4j;cW|)Gh#em^OVsh(HKo7 zNzstLyyXlOOLS*Aj=Hc61gYL6DaJ_-Ryor6Gj67a6EMsg8i7z|@)HdT5L2TZlIN|9|aI`FvEzXpit=Ece)f+olVoBsRxF5?(=K9d>2;D;01#d%iZX`rsBUS!76m@h| z_#PPbnmQHB-n}prIo0w6o~_be4%gkUoUZ}<2~M;ce#%u0x$LBt!yTS_h6;~IN{AJs z9Xd7r33>l+F{`OW$#V5KqMNcI+#Qc-(>w*7l@U4mMnB^HaWT>&lQnXnzoMU0z74Z; zRJbwn>Y-VV!^TiVWhfy%O4~U|wzEPVco2PZo^p?N@IE=q=O<@4+y$Xv{$H;7swAXb z^HoV$x%{f+Tn=sDsKlr{{*iQ`@^0lqM`JJY&Jtp>Hn*m$3>0UY(}2n zNi{alqd>eom-GKC&-pIENf(>VQ1e}qnt7cPYUKR?QX{MG)5T^p)HH3Gh)tKI*vR?+ zrKYXKMr<}i4OiEBi8?X35Ero7ycx=BiOuF(VzarHvDqAAAgeu_ z%_Ifdi1pL-R&K@Ccm>uNH($E7e)-!!>0>pmpGt5Kg7ORnm^8&R zvouoP*QU2MiwLT5L0S66TCATQ0q195LX=RHvSh8-+ZQYEk>txjIc4!ty@L^`V+p$?8&eO&Ese5rc zYetyXPu)2kKY<3nS4diR(~H(mqZ#Fb?nM{?O)2*sUZmv(vshc4K-QrME~^DAJiZeH zs3}l43;)10KDnGNSgoM`041QVhyRTpCL>cv=1eoH1RIaV@LkEnWJZ&qeyyt#rg{?e zXDMga9n>4&Q_d2OgWa}x9>d>6 z&fuMbdMI$|yo!L8c({^2AmwZZa#m13IM6ET3&KE;ANQtKof1K}x7^_}lH<#6CM~9^9!zY5I>LYe@?}M_3sc;q4 zC#sLw&3zI6Z+VznPl8{4_LQkUw3|z&`kVCj_-_$5pHo?Vc9f|;w3|zks)s`(pY2zl zJ)4xXovG~stS@nioL_xtH&;eb6MO@Br#ozXNl@_cbV!#ySWms?trEbe~G*i@v9H*=1So8L1<1=La$$aXg60h z^#ftpNt(RsL%X@6X*LK~o}|gEKD3+5;#0SRu-PM->Qm-1(Fsx44XXY1sCO`VdtDFH z;`xuaennF?CP5z$nBz4zutIDbb@Xxg=x8$qe`BLI#Bm1v>0>NmRW>$3D;xW=pwZ@5 zWn&(zvN4ZU*_g))aa3@lwFMhu15w$Sm;Th!|5^m5nK_(X^jc zzJ#AaKx3V#~TiF=gt!xbL!ZWuOn(0fbqVL>ao(Z_gGo_o_3Cj|U zDP0aPoZdSZpcXqk5A}W>Ep;RLdO6zLn9?OZ)45qi!%zN&H-0(gN$lg<&>ahOjiM3V zo;aIojp&jx^(dxcU__S;n2Ndx7a3Yw$cQzfTL(zU>B8X`|9ustg2-Yqq8p-Dcop&$ zc5~xAw{~-{!g+{$4TL|!0~YM&-i!0}AsGA8ZZ5x@ideh3Cb0eIU_-Z(*kxy7pdLAZ zAYeC_7nu=jHq6NWDS0XeAeQB1fSTc5_K<6!{fL*v;idi^%?QxM(XE z9U@;K8nBy7q+7(=&E-Ykh_#!`i$M`5{D z55z@xxtJBPc5`!k;}hyg|GhxY&aQxzToJK$b4ze>Rpj33K>9@YLEF`l3ogJ#zl?*p zSQy#40vChR3ZY;{qzRs#VK?^(kTnr&H}`v7Y>HUBxs1-;5o#s5I0MgTIUDSHvl zu1Jf^aWO*TwkJ{%H4Juhe}T+%Sp4%V`a>;6qN5ymhq&0l^$g}_z-I(JOe^Jj26O3s zF}-=fowgCzu4gcJ1N`_`a$uQyG~Oq!XC#+8_K-$j!*D$#xfJ?g^%7gM^l5}Gd< z$tB|i84?YtIId?Tmsea1VKAy_Rn|x@32jayxMMLgqLEz2i#u4DC=K(BB`Hi^B9X5FDPts;RBr5XGS&5rC{Bv15`|@q z1Aa&OkJ=?!* zYae$5%7xpGn8-5WPWF^55W++WoI8;uV&`OA`?w63o0B9%F4_p#$E8BSSB{xJ(&$YDwgbq|?bhybU=wS@N4ZxFoX2;?_Pc<+-!V z$@1=j@yvOZ!C+^SASEtm^z!a_=4ZCGk4t~<3X=#6Ta&*CHL#Dn1K0yT#xoQE19v_9 zxP0Yvpe!TX+Q%jD7$Ke*?V`c;?Bg=;_?=|}vrYEAc?cdhaoJaMBbt*5+27-d5jJrd zb#73T6au{**RzSsa^uc5a-Tb{XA_s++{h-8WRtzFXA_q(<_HZi38gDR|_F%ZQ>H+209iKYq!=WE=!Jk>X@ig zuVY|i6PLkqtDQu!j##_3HgPG<9e5H6x3IB^OKEP*lSsBB)^4p$TuO7lp5(BTY~oUy z+xR4hon#Z2(%juAIqW2xxRmCmKgnSy*~F!Ed%`?1orUD57{hIDY~oS{-^eB+V2jnW ziOV;Fd{b+bn9Atc#JvC*U*0A#TNz#4^)!ZC2L$f*ax&o-v4V?%NQgHF_lD6?ZUhvQ zV|DR~S^t;ducO>~rQbXpVo~lC5{vG|QQM>OQ8D^+Cy7{eJC52Ojn8)}9GH&8EBuJ<*T;FS^5uALjnndxAiN4K4~)}t7#Ft2X<4^I<1s@Qw#I2Wj1F7lw7et3cj7$| zjMMVw3tQu~Ey&M54*zE5y6`+>G|o%P_2qf^FwUFj4CA>qPAmG)E`Wc_oJ;6$jniJs z^H0u$f9sr;Jg=FG^KRJ^t~E|8;acOg;%|-9%K71u7#QVeOMI+xT8Tp?+?Oy;E8%|s zGtT4XB&<2e7#OFOINyNGfN@%hr!`J1akIv0B|g?T?Rv(I`=i4+?IS$5#%W*W`9I&m zzhS}WJgKHC>vr!`K?F2jlR?t+=z7V@MKjacKfL^31RI4v*oBULcAg>hP5RE>!#FLG4iRgdmKWV3);O&^s6`5ofz~U^i+&MnoR$~; zBgYzn z8zr$*ZV>0?eGP9k5q&Uy zN0!siF;Ak(sbh`P{s=}LYn+z%XdP>umPJ{|8mAS`<_FLcZkHiK9c!GHoLhb4w3N0x zPr*1XH;kwy#%XJbaoSp9oVJ!2r>!N%X={mb+FD|qww4&Dt!0eUhOKd0D%8>YplF@y z?+2}qXJVH7tQeUt>5Q|L=_(gdCu~j3 z9x*b;#4IPOj7;xxY@@AAAGv_cwiggi-*9=*DtIPl2jN0ThvPV%vEjBZ@~+;zuy<>$ zg$PW{5?e%!2M8>Ov%ai}SyH$QjG<&(6SEu^?WJ!!+$2u6H8D#rcZjjR*2FB+$^BxC zuY1iu2pcA5`NYfZV-oR_zRDbWg70jQ={lO2Wma>G8B?zqjN^JHW?7rK?Tl6LnV4lx za~B%L;N{@Bo{3p1;LbE6VtYu>#4P(%?p9;EP$th39%_ns!^A9wxsA=qg!Z0^S?+Bk zyW5?do{h>gG5ZfGl8j;D)=&!*v%G5WnV97^II0jnPPR2M%M5QpUx^XVP+UxUb`*^? zOw2Nw+$|?TFacy21%U66ktBD~IT?376SIr}x7QJZ<9a4$nIGJ3$Bd(8>_IQb{pe}v zg^5|paS}H1Xyv$`iCI=%PRu6Fv1VHnv#iOSt2M!8TNAVN<;?BLvCQ7G523v(LlDmB zo`PEwvmA_brZ<5**=K(b(aUo<^qE^0N^ids%{ffW-Uk1OH8IQAKTgD&nB`kA++tHP zriF=Fif{5v%nt90u0%&4g`bY{<(Rx-Ow6(zx^zK(Jr4vd=dClS z8T{iFdXjHV%#u^bnwX`3d(Xt|GF&KXLv}p@J#ULT?tWx^-LyIIg^5{e;ATkH`w8^^ zG%+ic!1vC!CT8i&osulsGcikVZk%Mjixxo#Ow7_dj*)_RE1n_c%nR2uG0XbS9hOX0 zBj2dVwkBqo0PehGN?)2L*E2E8N_#aiwmV68rb)ClG0TfBWfa&rdM0KWCiieMag?To zUXJUTnB~=BpTILDB9n>Oi-{bXn57W6eX^Q86SEY|!TV6-J#6ZIV8g^Lz1w>xW}6Z> zE$*T#fv*yndqi2^&Mc)H#FslpCFMhV&%`WukTPMk-;X<(CT6*rlu3~E%#WK+bF!_WSH9rl zeoqGC4pC0FHT230ZUJR;&l-BA^akJeHnlMmaS0AtsUXR4cLNJ;$6V(1+9UAx{6tqFni)qnxD=alTnc_w$t3ZE3Jm3n9dn2{B>m=qn^}9w{cLTK0np zaqFE}lsojq#3L5vRx+_@OF44dJQn?2!s50nq1r?7W+2MbSd@Fk#N=E@xd%pw+pEN) zYw}2;NA)PTZoqRWjylS%B|_XvL`S*hOlXF%zY;dFSd@D_=qMLLhWPn#EZVmMk9+0F zO)aVm7?Y!p(kH|Z{;EfJ2<1+Z=NDgS@oVzPC2Bg_t`>;=dP_(7X;p}8?n-E^bI35q zsrpz1J4F>%7>s3EvIesNo>lMEd}GL z1z6fA@BkljLJUkt`Jqmz6y7n3NG!^am#T|*Od=Sw=lr@N7Ujo1Ix1gU@PnM{a*DT( z@DB02m00u`)W)LxxTU&yqxi&!lvtEs7Q~`w;@K`1<)<34Xd@i8_=otpMRiNzcL>#^ zT)L~}7z&b%x8uIvt9OFBb~p_zT~uMm-^|4)OE8M)2DF@^NzD`i?%l@ZYI~ekm&Q64W#hb6%&)Td?{F{b zIY!_(+dK(hFylmZp!rp-`@!&W`~_I5QG(Zm_|3UT%&&%;W5fdUs~u>5^>JL(8bR}` zffjf>t48oEqwYBEQm(^2OEL9_(+(YIe)Vab%`e?B8&e=SgZb4FJy2>9w4wjbFQxg_ zjyPp7@|%CJm|s1curwmWIKV<~g)Qb7lmXdui zzgl<&f)9C@kxme|~v4#bcI1M-Ax}Lf28-ISI zTsLRK4|{SmuYL;)(63NA<5GD&-f6%U2FIXs^fD6yIu-e;b^ngQQV*IJ+=>z<_Y8iw z`0`YULL z;r_kF1ei!)4r-Yn>3Gemh-|*9Xq2FoxP*U=jclPG+5Vmo1NYZhh&0yrpUGBBvY%`2 zri1&L4L0A`a5;P>`#+GPL-zBNzf;ZeZUxU||CU02^+&b2PobnX95%Wt`zqfCwF+&R zMqu=o>-43l__g5@%T1)(8RePZE|^!cm&O~LF``6ku2 zlI~PB&9$whJJlJsV4O4f6+^xaClRIf2uBKna*~z!aG|16GTzBsgRJDkWtZDb%+B;9 zco@Etl@FM#M0QQVddUj1L~`Yb*4$o?=9O~!fn(P#MlO+U?r6yhWZMhX_yM701;3MM za`Sn=Hy|cR#1vi^ zbAv(JzRP=q7d99h$XU}pKbVg zdD6EZHvltVUYJ~k4PdWiVo`oHl6wyhr`nJGHCd;U?=L>1DvpYh^}$$Zx^4Ax`RT~1 z_G3Gb{qNW{29~T1W$qPZ{?o{xe!v4mamZowItFFzG^0LRzrGyq6NgP+;L%EcYTW|( zW{Mcw;XRqK8*Q_@oX>dz9RJIP*0z1JE*jMzAat{>L1>(<;_~AlbTn|%p00)LR#HdR zviDXYdzI8t?abwfLUt;tqh+ZxZ<{>s9ajQHFReFf(d}CG1K=xFU~*FR!Pa-O0-4n( zza<9$Bf$z>h=b%u15ll2l&pHSa+blp$@WdS<*eSD;hQO9?8CUoawmK~TW;`dpZ6?$ zCHw_mX>tYfxSI?ip)X^+SJmHE)e=>G8aLc5<|1Ik)l~hrRXbDl2RZp%Jzfctf%-T| z+}XgG_2SK_vOY#uec)bW^F2{m{1_-xWLJ*Qtc43^1|F!IqUxT3Lt|tye~H`S0gw{6 zgH+v(@H(aH!jv*UA(B>upBuS0>`RP7v>Jg4b_Bs%kG60mzBJ0<*D@$f=}DqH3(RHT zuEUR_emvun$r$EwkB36YPy5)YOT>>~AW2qNuvs08@)M|Be!kTI6!zs{pOl)(@H!nO>&2MQg zaWnF>t9QOOqKOgC!&LDfH{;COwlz05O}|Y>Pytcn!pVyi-27AwMhnQ zzWmg>Zty+zrXQ`U?omcIpF6A$1S>EJ2Z>Y-+)*AZNggX9;3^9zv!X{Q;LcUY{PJ#hEhmM}3O-4EYP(SZzG zjteP7Zua>jE)Loj77dz>YNg3GVTqP|8aE`Z#QixTE3F}}>zYDEYse2~iXatehl50t ztziz0#PXvsrx{gtoP?ds;O?^lCc3zZ@XZu?-lyE_c@BI6%Wx27C!kDfNNj1fpwtjb zC_GC)2>1J=CgSysgH~=Yd^1G_5_}~tnBWFeaZ`VSi{C#o#6(G+fUlI~jZ#C*NC&&m zRg}G;SmU{kT%{?evu@oAz9RcnvMj7y`?B0RXE0cY*P3t>1;ei*MYhPVLH%lBU2$PE z?9XdcmF=f$6WH?f$JbS8tY_hK%NA6@_CAjv-9L?s+pJuoI6w44=_H{H+OBBqT+df2 z{KQ^_`9=QUpf$C^$Pf9cbxo(*C|Y5ZJ!BWFTqE1JqF${uzx9+8e$^=_{D#xX<4#Ef zpx{)y+WcBmQvRjn+MvQ6sQ0>OdDGeS#XEr@1}bOpd(TttYHx+GWCVLElM$mbO|ONF zcpHh@2S&Cn=E{Cr-u41DX#w{eMDQ2*{_>$ACAeyujiA@1<#UUY4EP2LaFA;GErNGy zka<787;XdiYunj@DnGRj+cP_wJd()4+T(%#1+3QDI z^NT2XaN$?2C%!VenCtwhbrZ^;@|=K=T#M{5PhKA2y0abU$;*S(#wy?RErV=u zeVqo}2)H(s2W&DD^|L8_rA%$J;pB01&;js0{Ems%AmbomPpw;WGB=-lM&AP8z*9I#Q7}lfi7*6OU&Yxh;Q}2>eN`g6PS>E0=kQwX6S!+^ zW{vej_!GXFqHyJ)%q_TpHR#L-#O>xZ;2y{YGtgKrH3Eqg*MhI4c#gUEo!oO;WA4N1 z@9XRD2c8VJ+>uS#e$jG#1MdDg4ZuFD7OjN*)Vg_|THB;x$Bhy!i22;$BaDMg{1H4E zGw@ZZ6fNH}`rj2x1xndag(&WF89bzHXl^b?6jsAatCS6$DH2#Ytnfa(p-$OYfgc|S zRt|OY0w}wTnRpRqd$L4oD#BM%ZCXn_1nfZBwTACw*PFQY@}t=8WNtn;(H;ojzyuup zvP*OoH7F7rf{(4>Hns};`3i4@Z>GqztKhEwTi_GeiG$x&Bq<|(Ek3|M1UK6%ON{M4 zg>R!CYWVt6_-2a2mE9gxskj<~|3fMrN9SSjSbfOE&8ucR1Y`r}L@}+HG@x}Jr1Yta3oq|qLp%AU^kUnaF^L$BB6EOX~i=|HN$x$ zj<0~h3Gg+wXyv`<7l>1X3fgqQce-#lEHYWy%{VCSm*ATz@>KReJRlu}Pv8d}d}U}b z=Q!b7fr_%Tbq$LAfJfMDvweE<2WNr;ne__Ej%wXne(XP z9+7NhM*&!86PL&rZS)QTn9+9|mY-03<@mZ2oKXFKrfnWwcN8v$aV|&h2j?Q1i-0kU z_2fQ)gA^hkqmpU_bFE7$b~}XI&en)Th5G=$nIexGk;mDizurLu4}R|8tt>| zXZC)Fk5dap>IZyQ4jPz{uEi<6v({lJsgQ2O@;Pe;zQ+vd);xD=P}62~tlc5{(P0z7 z%f>-Xz7W2dRE=`XRJaJP>>J5U!%1Leugn5*F%)vpre2Q=T2kci4C6onCzIta;^ZzH zc}&lP9HM^%&PG3jlloRHk-4vVV(W1t1;MH5?{JZK3ir>GxtNkihJ@&!uTTQzE`^R} zI7rqwIFalKWMuo<5y+^@`r*_F16_`69|ZRmJAUcmr)D~QGesR9(<m@iya61M=x)}v4_fyXOaQVR|f0c}bOxgwCOc6uL?^0c%=Ph{EzsxW) ze4^weH8M+_)h{8HPAjzj(FICOe1BignE3wDds2jC`L!6LD%$vN7Q1Fo6gu(F) z_@fnZ0^cJzNxD;|<(YtY>Yvb3aShKpAC_n|73s$`?b9;RI{@P=btmu#G&oI%?}hMF z`sqFfJpcqZrP1%??H>X3{ANR$1Vi1Y^9~ydhAa;D5VDG@bVNr|a6r=%U3vIcBO;NM zSX9x+0KcOr2l37uP{*=x(@UNO{Go1hCqDc`Ui0(DQc_GL7w-o8ss4PciR8sV7WfMO zWloqt=JWvXb6pKdy%qRokKtp)5(qG&`_L-1^FBe&cyRK#>2|^JF1uJ`4I6fKSM0#|#y(rlcyRK#m3G01=U`N#1}n zwgY)xa6jxlX~gA0Fdp?-P7A?yA;kz?y$b(>9%dR;BfLlH!#9EOJ-|PFg2dPmURC-T z41rVz?z8WUlmCdIX4Ku<-BslEV%w!Tlg*OSAp6VSIE1T_np zToHdmEzd$ViRm2BJ%0p&rO?SIT-OR-Ng%<37??)UJz9E@c? zi-B3z!z}WZ0e!_Y@VXt0`#qNF-h#K|ZZB9H&?Sw~`BUyi5Z>}gN{ZHy_5}3Zxt8=j z2!Hq_squ#NazGzjW=Z7`c4hoc4#-VwNFM}rrC%+n1qhvel4O%1#e+KVu_c`k!g!y= zta5_Q(-Cpl(b==W-u_pCu+Sq}92@K0iJn4k^V@*kOgmfX|6phr-bd}ihM0^8@y z8@zu|kKbhFKLz%cFP}#{JOvjty1X^=EJ!mv1=s^;GkPa-R0i6GT>K^NP9Dwh6pU6sJ-0k`&w>9!V*UWb^uC6*FQ_Mv0&4>pTg$MV7_IaaycX1R>Vfbyz~?=J z6Xc_C!6!l8V5E)0$G|=(E=3f3bqw%7u;&r7QvC)02u6E}C^)e#jgbfc2KA9wK&S|? znn!SgH1SiQL;4#GW;w!9ZGd$mF3R(`Lsr4i=JUq^3Ub$`g1nHXT_n3bfqr29bF z<&#YFC8XOzy65GVbO3}8eUfRugmiyMFQ{Ni$4N-@f-^1CgKSct59#gAEU6+0wSAI_ zlaSsC=?_1*q>dmAEJHGVm2`tap?@0Eb^mAS(?Gq#r~6%-W0=@ie9TnKyalW~$}lYn zAF+kVc2~T-=z_6`cb@sZTO}gODx_>t}IW3yIdem-!@WO3pW- zFAnSUZI*sFsJnc6QoafE*0An&rDYxf>%%fkEKO%Rwjtk^SkiG2bcUDMq)6^82Whyuk)(<^l`=B#H80wRx+e*?Y^j;C&WS6C11nRYA=}C&mMRbMf zHuQ~P-S0C+r^$5Dd3i*)f6X#q1nbDD%;ZcJnHwW|uh&2S1Aca9nOsQ9S)tz@(M!Lx zLDUDe&8c)JD9k+(z2|Pr90=BhWtk`E$AO40#?3F|{%b+K(WmpwK8nRILPk%j%nS_# zX^E;JL+clQv!Ofz;w!$G1i*u1nANn-YG?!a0<52WCIhgfW?Hw|Vo5F<%sBq$29Q_? zGuD|Mb2qJz-GYdn0Y-C=IZDBhbMC1j>v?5vDS;wfJ^nd0@RKF zK~G5Aa8_vD9le7H?uO8trx8plKnZNC)(<>vWxgXHU8G5&pJC?N&m`p;t?&KT(kp^m zavFM4QA!YRYW?L%E7KSJF}{qSiOI?TQtOTjEPXzxYfnQzITinCJqh=)r2Jv<_x*>A z&8Y0CUiY@8e+uf~r=g#mik?w@e2SIHD~FkP{75hroa3G&0ia@L%%x$B4`Y{d!*{K@5IS0^(Ouedkm=h`SxE-DJujN1o>Wy6eQat#-k&s7A-)sMkSz z&sWOCIKjOfiv1nc?e0Ryz-P%{K=_j+GZx7j2Rs_ni*cI^o|B9D4g4)mbI=9xnAXpm z7e=ZnuvQ7Y^FiQ6F&%)H#OoZKOz`l;)4tr!PEhDAWBTghmVPy;t9`oP6I$lrm>z*q zt0?BjWKa6cq%0Gi6Jxp>`Zr;|3)YuDlbyK@y%QsQaZEpmtP!Tl!?J$-P39(rF3h#i zxyLe#!0O;L{m_#Y-xbp(^(=h|s1r}6J3&#rE2hWdc}1dd4Oln$%%sS^Rfx#G5YzYJ zK}DF`!FtMPCPh}5M`LY>dW> z>z+@_Dq9VNz9B`w8MgG1piV!P?gWMTK#Ja!Zkdb0y47bUMRppV%nP1Q(X*ej%tyd_ z-e)F7R+yir=p5X#64{Tz`o(9SoU=mzF-5=NDNZlIs}KB7N}CfDX28{l&$WtMfYr@s zCPntq<%n!Hm}o6Jvq`!DtQkI2V#R|KOhJ_@sOjph&zV<^Y6)03`%EUwlCE;~-49vP zgCM-%lYDiygB6|YT)pW_OFsatR~KDp>61ZS@E>#&k18WDM5*wajv=|XgSi|3@FFzOZ1qilB<;T( zzOIi@s{Hn|NE~Z}*>kYJ@gx`rBO%2u2O}{W(J%Np_V*>2poyb1!auwPs!kWiK?&o% z4kA&#DH?vT`*;$k3qvHTF&zb3#qx$?mJIZHp2%qeajG#5WDiA^xE0KMJ@#n=aKb4V zzp}=)IlLQSs*kANK4zv1T2Ph;y0<(#c3c6 z0ywHHAsCB;a0}*6+Sn+}17Rsij6zb}gYN{u+^Eu5qaY=5cY$@E$8>^y8J93SK6$`SZ~?_r8`Cpatu0%iqn$bt1i1|F@9_doa>1qOc( zZ~9Y}!(vu-fHfp8xz(wCCgk@iJ@N!F)fGTbf+lnUF{989S*k|Df0BopDr2M%DE(0_ z5Y*K`m-!5Ck?X`n#oJ2ni-K`Gz#U}>iZ#cwK32MIO|V`9<2|1xRVzu?XP6>E`KTYk z_^S-di5+FtII46Mw}i^VEmIMHQ?f=wJErz~rMnh`&=_D_k6_-$XKcc2!-}249nyjK z2R6vVofyA9ivOzg9Vx)3z<-vHrIwyE&B?nFtqRrq9J6ifzJ*2i$29OE6C~hc&|X5QBpAp2eTP7aR;kiV7*#a z=1v4=1;^w=uyY`vnX5E;M*97LZi^O9{l+jbxHKVdOQi9ufL_uP1eFi8y3crs45Q*$ zK(B~_(Gp;HpRkPCD5*89;{m+^g{VrwnCi0_kYQDm#QYu5hj52q1HxLL#IS^7Fp6%5a#+M=9&}Z zE4TPXLA{eDvjX5IpCEOCZ=fJ)pF4_$KEheha-ids; z1}XvmR-O}4@!x{_R=g09xYq<$l)yO=6~`n=49%k8U4ivX;GBqxM?<<3>W}Cj1MI>C z&WWga7VK=I)fD_%V2cwtCtBk1kZy`zP$pXL0CsNz=R{S!YDoVN4Z75j=YhSPz&Q~W zuNl(MqW2U0b70^2cm^k;Dt-|@s~T#OQxi$YU$REp9>?Iv!adm#R0YrvH3)~{o}5#jb3^g70N*^jkZlT( zvnTPfA$0#&{Mg9d~ulVw@VT{eSA^k*Uq~KHd^P3ryLUS_- z;rfuSlm|i(Z;8_JH-x9;ZmV4h8n%Y?Qg(?o0M_#ej?5aw9}VfPRe^PYe@_oHSz`!K zg!EI@K^O^el20(&`9d}RUPw=1k8u^ig&x7l<-6pHW5P!;@R0j*GoS}O*z{nM26^cm z&kyTNw6nr|8LaoqG9@^}EDG!HO)T?Qu)?*y6iXGBHpB#eQFwWQB~}KhNm*i|Ny_C5 z>54anTVcE>5$FZxd1ctIw%ZH@B!I;=-D2lf{HKl3n?Wu^lY)<0o=1UIJo6O5EPWir8p zBdoND?#uG63P!WCEa{+_X*SsA5j_FzyXpzrh_Y1a7?P+xBDy8+IYk@awB~K9oD_hs z)ns%lwXxz<6>fqduR0F! zACKU~+5~|ugwZ>+NUB_2yad4CM9$CF}xbL0^Ry(c#LX#DE7>uXN zu$+ve0};fV;R*;n@FuX2%Hpvf@H}0yCZd4*I`9j?5Jr|Jfr$zodkr-?eu36aF;)#! z0HfGvN!|4iPK*ne;+JCH11(6PD`!s z9r=T8d06I9)X_^=iO=Ku)e@ZK#i&_!94)~vmf8acTPE#&-uhhBX`vVL*oSJ-8qCh2MN=s);&xSYz0q1n? zXF@(k{(ptM?>z~5L3ezP3*KY+@4-KCesahUwlnBKARqbYsUc(cvw46c=gfuD-VG!c zmzJP@GW{5Cd$E`Z=0&?Kg@&dgcpdOR6aT=}>aFt#u&jTLIiz>Z}e(H*B zdy4wMHOe;OeCD5*0qoO^MCHutj|8gnJyK?U{~S(o2dCr=#l4_%OH)pOQ2!GgPykDF z={G7Ry8-;Km_d@!OOQ}UalJT&v{sFOS;%;*v75B%y{SxnA^E!^E{BL=0 zivRCA zojw@Pckob?fzR)IAEVp&HBGzpkdc!p**h?n<{<+*NL0aaX&O z#J$1gBxtC{jqdH@-sC&_>JAWhojXn3_3k=xH@LgR z-Q>P5?rrW*;%;%XucQ3!ZbNbJbk7xct2ME4y5EWWlv}WfyrW%D?E=7xyLiY;j+9r-=KCyIkB? z-Mhqn&3)FopNjjss}@uKb+@XxZ@BHPJ6zoT?mX+R6Ze4oxOG2mVm_mCm%(s8Ly^GqY>dC{*dpEoHtR$ zYF1OJK{P)N`KqF3k34wHB=$r%xi+f#!Po=7Ax(3Ywo%k z6d>0K44X8|so6y73sxI=Wm!0lGcq+>E8SzXnLXJ_d@{x5z;4n>~*X`B)PBiau^8NO8vxp?;6X#Ge>#$s^+!r~M)p!c zKc6IJ%?z<+{e{xMJ#O-E5=l3MZOi&5Rme74)8CZ!*Gf;oXpJ6gNjA}zvc}8z@yJ$Y z?QTzxQD(~en9|R$Frucce^dIt?#APDPr#Hl%ghPYDt3=!tPrZz$PIElR_hEmL)^x0 zT->H^19YdMTFu;+;+D8w#cl5P6St-ND$)|F)yh32Zfo~*aoe~*iQCS-LwN1orQ&vU z*NcBAcdNLa-ABaj;yxqpneO?*JIkFQZa4QLal5-$irdruM|i#5m|UOj=8D_fEflw} z`=Ge}+_iLTH*=p9x5N!D=XGf!46u7P;KM+Z;~yZ` zW7FIlTVN*P0NNe&z2os<8oOSfyBZe_;NJxQfQ!6#475}a!|OWL4c-Gh$b7_bK8HWC zRoUDFt0DxHnhe66vZUdw*MYQF&qZOWMIL6xHIC+-W~j~u?how5>x^=@K~1R67`OUL zx?|lEamTs6#2xRB5_f_-SKNv23UM!V?-F;C`=Yp$-LJ)+?uJ)U&kVOn+*xif4skDWpAh$Q_eF89c0UmJ8uysE*ScxQrBIy(ZdGv?x-G<$-qse7Tg z%iSyC7LSP|$=M54Dpz3@@N>oN6)KJM!)Y{Yo&C7dM-QX9YKf)~fAt82)YCY_n(-dM z7ppYpk0w~asgmrCDvdXw5q}X=Eog2j&Tq03;)<6}!8``IR;87qx;Lan>}<@p9Y!%! zL39k8vL?hdzEjQq11;)v*k}jdtw?$tF>=y&?*|mXw8&f&(Q|#MfDg{uOH~^C#De`J zz+0`-IHz6E4Drm~uA)qVOn>pjX`+9|*OGOM-Ah{A55ek|R3Klu=b(btZI!(m%FTC~ zb(`f&Yvbl;0BK$BJ|NL54jRY0?XuoDAMXO;@eTfg>Nh|E&lEZ4ld-zZjou6q=#=&I zYk<=bYB~Hx!pY@(=DKI;9Z*R@RUc4e!gZn0$>kJ6-JW_xsR>5)1k}%m=kP<7x_xw~ zNfw?6XqpeFmUfjnd`GkNTlaY$hdVametZl~c)dP_oe_dw2>Rp`naHkNE9C6P#U;mi zvA#mic|6<+ALl$`YjM`LBgOz%wV}oMUvayrqM-p-U54uzFN;b8`oRP6{t49M_y?LX z5wTy0jR@#QXo^)D*!lPiX70gGB0MUfug3sisbZk5Jcepb6{{8R^P&P}LeyBR*)cGuxczvU~t|vTt6fm1}ri{k3SWanbNjtR4TOU+T&ZyX& zXO%ol@dNHKx8dtG7$^P{7O#{X_^jo$t7b=Ckll&bK&oNml%bFu%ZrAMYktr7)91h= z@BxYk#mk^(F2l>YhE0n}RIosN8(IccJT{V|r@-fCbq6Mbi>F13FA+S{XkgCa$*2pB z&dYh1W!-3yy&i1cA>v+o0B?KEx82RUXMP9Snt#_-IA-HLr>eR31R_!MFU*1jYj(-T zMg=uz;ymmOy#Q%Eqi$Mh2V}_nbme5m`=-)(w)-7k0LT01f6Iuwzw%;$TtvI`89P2u z--J1@)?lh*pvb|gBCkyc>vc$BA3&w}2dF{$2YkKE_rvGw51J}xCh$ucTW zJlL6C8_)ak4f*%u#V->cJkN*Fus1})Ikfl@p55}NILIAuXz>wJt`@?783n$*5tui$ zc!lrdx4?V52dQJky`jYfyvzR`9!l*4;mxunZ)lMlhmy}c%o|#;?2B*UWC6S2zdNE` z^}66pX!N__*P5aB0BwZ7I>E3y;VjVwQ;#Ni`YyN_tEMPEtBknf<$rX+&tkxJo6n}K z3DNI@kN<;ghxe0&LN`H?-vx(Jy&0E-KIC`7Tngd$x=e0j(Mglsf1wG5v$PWmXZ18_ z^b2PXw!Kj`;a`M*paVnm3THwsKpo)S(}UER#J$29jVZid@K9b5JznaKUkK!y*Ow_0ep1znS zVycVu~Pj-F-G?O^ALmEkmRkhtVWWW5)Q!vKN?Ul0w9!j~;n}@&18quEblrd!8WLjXTOj`y`WK1vZy`py;rPcezWqT3ep{iOA<>dhRrb zG?Pr}E*l>I5Ts94;QTqtS)EMkat+2*SHq|M5=J2*qvTrZ1cPyMjy{KmKG-jH9ERsP zTkk<{9vqb3|4g*`yPKk=9g=b$&KNylZ)<|Xz{xGUD^n8{x5}z9g(ZIZhPgor zs6;_PxdatZ5OWqxC}4tBL`5;@oU^W3|7%?Hx~_p;b$88aUETHj{i?eAoHG~whxdEG z=Xt;Ho9CG`r@N}FtE;Q4tLyaXF~J4C^f`$cFPq?FfWG$N!Vr9JqWoRh8L-p>UoB0r zl2~;RSbOY96LfGutNeu{=7Hx~%`QU2(rnPKB@{(dlm6@_ND>6*A+v#{%2}C$o0;^$ zF(x4MM+3Bm;5ve3MVBlw%_){N^LOQbresT#esh5l#OslHt1qzRODr3bbvVi5b&S8K zkpDZvq^@=X!yzP(F2tq-WdGfPOcz$B@XjXv3d>G_+Ttrkb*rnwyPI^=ttMy-Sf3bN zi6{eoa4H4V+KdOr43E__tYv^nZ#=>T`vZ1}hl}{NmO85fC6d>63hZac9GU@xEv>Z1{ z45|`*qY~J$4f*p;`lRJ}vI1B?4`&IxBly|h0%@s9?==q3ohJfgmdBzG25W%*owNqw zNKVsA)*lLut4f|^a=Yw_=reEr3XbK5jK~e!AUD(@xv6(In{YFMgn~qIwl8?N(WGB} zR`*K1g7Ug?P(gQ@^Z^Gd=u?8^S@>2np(%=CgYY`oCa%F+$T;0*c9G^4Ke-0r$4t85 z4<`5-#fD8nQQkx@{V9KW0N+x^!uh5b$3dF7N&pdvT~1U2$Nv%m;ivdhb_qh0Z@;SO z*Zcx{Fsi5%FtM5UpkttQ=3(GHfp206HExgq5i0EW5P)wZ|IZF)#u7nxq9(5~)f{Ce zO{kXn5qpRqL75UPlv?2{^bGH8L55e7SD9*wIHU<^B9)~R=_;tV8IPO=@q&{nAFY;Q zkmNO9VfYrcS28^RTR!``?^4BEC4!t6g9y=9SX942^hoys89*}0AN{xn? z_a?`;1OAZ1F(NG4XPSHrN5VX3k=_8p2Ode}rATii(kJd^k$wU~da4r#dD3mB$-gGj zedd9kIskik1W^a}s>N!NOkWFQZbk!RcaJ4xWV31VQZxJkOb5}H$@HZ+ z+wwaA`>QW6TThc$n%fRlo+ z<)0zHJPz2igliXY z_iPfod-vH#O}qIJuunX^lxLu1N2NwU7tOzs-DFyfL)qAxyu|c9LR6RMm?X;z(jUH! z#{j@IeQ+6;SA@G;liSU}lfokH3exwlLWqDxmf~^{i;zJphfcpok!}U)xj;&s3g9_$ z1fF7&tS?Ac{NC1k9pHBoClsdO%q&PxdCFGwJm7D}=_D7mMUP^y?aS~oqyb+6;UA7r zpz!4d>G!d>K)5ZR4*kd1igO1RWy!;^8Tm3>zAs>d2v?03_?m+BH+R_bGXR?#mT$U0 z%AZ+~u7w?!tqO+#c2rni;F}84qxUeuX846>GhkbNdD%>xytE*_>bK~xn~{H?D{FP- zPh{}cg7g}=Gv-AA-}VTr#8`2+ZStvt^gfe-@CAV1IRxEpn>{Jj^(<>jN@u|7##g0G z6Q#At9@-?%6L}V9g2v7a2G+zlrc|exHL3Jr7=nVi1Xzd0F~vwKX8%KPBY?kh~O+J}Qzs31GJrj>3 z@YQy6p3(ib$v0BzU7`A>3xGWxLePZUHj}#+reB{6^&Nx!Sq`RNgAQYE+f0ruOy6}s zuvP%$@E8_e4!Rv<(U{Z@cmaux0AAz~#M4kR!(qR&|1zoFw*%`oU_9lqM8Khpns6Uz zc1a@jk6A!{2WTI8RAL3mA7ELswa>(x3W%q&cT_*!-56SC|qlRD07M4~NVeH>gw zXSAO$e+%S(UzmR3T$OZUGO*_F472A-U}E!Z!+f<^iNk?)Dlxr5&?6}3)jt5t9oQs{ z!9;!&R|6~Jht1=vJo#xMq6HS=F(Mo${q^bffc>j5eF_X;;!Wg#$STBK&~*)(anEY@ zhScR3TZVrEJU!dtP?Q$u-qgyoElwN2d&h8$Ahx@o&VOY({SX$dV}UT+BZ*(7@9qdv z>vVcQI5#VRa7-LYy{VS3m>_$-NgsUz_}&hTTkw_G023M;&}K+)OKc!n-W-3a`hF_W z3;({!)+Js6?nn4a*q*_9Eh4(%1NcGd7nqo{E7J{Ypwl@hOLKgsE+(RNNi}{2Bb#RF zHRE|bYU{V*2?WjYoUSdr0y(e|&*{W^x#x64L2l>I>1G4spVI|?(E9lqlM=} zMVsB-O&+duRn_dCZnXP_d|{;7z1=9+RONTNc@1PR&PJ~$ju9rx8VbK>6%8QgT!4LiuHGuzt zb3x%h;h)c>9sfU{ZTV+r(CahyN8Meiq6MJSa*r?Y(BSS=Gd|1}-QjcppfYh6>w2i@ z3SZYF5n07s#HYQkMJbdPSur!{wRJMkz8mtqf?i-4Oxx|_i;)@h+J~J} zcYdp`f0}@4@2_=EZ`n}iP@VZQ0GE>Ac zrR^=qRIr1E72X8(V_{)3#p#0F#`#zpRD6mBakikTz!FXFDn_ynr<$DsN^3ynRD2Vk zk?}zSYg>@s^L4;3LjKhbW_TC0*!&R+mlf2JmPvN)ZGz&iI1UaI1L5WcTwZ07A4pDI zx#H@As>i{GNmjj$vONpZCmn1A$^1mjc^;d}THMUhKJRj*`WB?8afSnu>55BlkDYvL z8{oSZr0>S`S#Sy9lK`7WxHLuK!wb^O02lkS0lkMc`cGWh;$bgr1yB&((Mj}fkX=FCO5DJOYkllBJd)H=|EVJ zM~O~!@rr`+D^sU;(1uu!q6Wo>M{a_yzVAf=q^^8W z349!@gklYf--KCg-r1zSUZ^-t_l`1hJ~c)fRlNHhXq;T6 zSnXn%rM`<(S0Q}Y1h(UFl7C^l9xf4{A7w-|we8^9HG4i)_6^=fngh3=$bW-tN!w~_ zFsg#u50(kNhKoQ8^qzF|WLHdhQF>oqBlPCKjsu8*{IR1ac&}f~_7Aun&1!2>RacvU zJzu>K>g@9$nm`vHq^lGOT&N(vn1K@OO{xjZCUfSa#DA+>Mndh2ze=VKdP)hL&MMs$ zm@0Sz+w>S(6g_OYScVr8io&B$W=rc_&6&l zUVzwT^D2|N5UvgpzKzzZeO$|TbNX&b{r)f7S#=A+823Mj{QV`U-N8=Skb0$ycEVVP z7s{V^LGj4rP$x9_*hf{K>wuUiDz;LzMr9!8VS{`iq-8il4^pQ2B5&wG7@A z#WvLyW5O3pm0ydc8l$K?lYQ+^e+P?Cr4C-FEFKOTJ7clEr+@j?$&7TZ%B&r=D0Mm(o5za)#G_7K?hrjt^4y@-FB!f0u_ z*me*TCUXbH&|)J-?b`*ZS#WvD*a(NiIcUgJP&UtQF!A4rmzDlUY8O0dTMazVY1lx| zvbL@EgImDCl2ij6+&k{Y0>Dw1oucA4UT9|GFDObbNzqq$l~maYsu_5&!raumrHSDB zM`E4Le8aq;cn8c{(Y(^sEh|+xIjBXdAQd6PwnP+#E_6`)8%!g)F{z_&)HPsFDdnt` z#0J)ky$&e7Q}xd%N@&Cc99(2xxeZSenwuP_#iQk4GOA4doL0Cj0J-@;!|+tJ&ox;J z@A#_I;VoADx#$xBay+TB;-gYw74s2z<%I`%+lpY1Z`hS{`q~_X;{NWXq$P0oxw{``BQ(~ z_8VAqE%NKG%3u*Wq~;Mo>QX=8eyHC6b_4ErYdM4Yn;*md$f`SVFHCaJGF}n+F{iI; z6qua8s*y4|zN%4B*1d#5lY+7yC0u;<`}!SJST-a#WIybN=nHFEHZA=@d*pos4*rR6 z;$y63ENEuB6;+{hU(AU33dnpd@IEZMS9+iK0Ph9Z5C_)>6!J$SWxG|&bkS_fN+2&t z-*&&^8J^vD01Ny8T84L+Ag~fFtFPut%EPoz9xIVus!>w`t5pzS+(s{!x0PSD%`YnMtuATq+2GT2PK4@dp3*nLVUs-b% zvN?h~{{y40|LU6Uy>0p{2(|yAH3v7>w7enPf5-rCeNK-6@3QZq|Ih*4L0$NA1CWOe zSPWnxA0+l4KHw4NQxE!&9Pr!U;GQA${`CW%#(m|wn<#`MOKv8iEw2G^RQ*9HEXGu1 zE)SGt$8`N}?;xB~T#?LuwcM>Wn#ch&(`7WVJ z%IXn^%=`%!j7Vk~E~`AYt`3JL(~lQJxF~N<2kb1ug*k=eUjXI;PF*n90(OUkM^}&I zlj*01S|ZN_;r9;7t{!*C!z#dq$ftn)!@(^PS)0vFre{59+f@!Z*5NDdGQ6{^$5zQf z^yuyCaSjgJ$Ma)hek_otu?U&hB1u`5@~;J8>80`&KscO8l$S-4)#F0^S-~1h>1-fe zm`6$0p-YnK_vc$mcLL#&JW3J@z=JjF2^S9LEg<~KA?chzrI49wG};uT$yNP0SUpjn zJ_knBN4(ikeRin^!LBPX{_#z`#C3#MpW$$~%sAvvcQ7Lh4X-|D#?n>@BxpOOkZ=0$n)G+@sYF3frL*?Sr`yF&=(Bf!3L@I3W- z`czA#=m4kyzLtmtC!juMfD4iCfDLr;JoV{aWZN|z2n&eBb{XD<>ca(Gs6MA(VCy{v zNc^*JsaK15^_g^(t^7J5+)1R6t_B~VKKuM+DZK!MxAG`C^%)3jD9!j92>;HbH~PE7p@oyd25i~IvL z|K8Jae_%MNr$98QeD7T)^Thv@4F9JfsNAt#$>di454rhX$eea4$qX!-K{D1;;W-Fy zE|dFTo6F>AgUaK2D47c)WIji89T~a*H8NuAE59G3WVj#RadUNq8@c~AGTYgxV}B}j zJLPxnlS!?@9{IYg!F7HS;yxWWR3ge3q*=$s=8K^w*mXc1krMs7_6HnZ)Y^lbt28Zr zdMo7dufInUrQkf!R|jim`kamc%|>>E1DUMAtrvC6&uGozfUR}#xEIB}*T#8K_oR&A znX7?(8wt<^)_>y7xi9Px*`2;6B9fPRI>w@&wXj$c`xcOQowpqkJs4hnxU;7 z@s*|--u;Rfb$kc3csy|C_!4ZJ6!TuxreQ`Xn$)QMorNp)2UT=-HFJ#mDHKndV^?t;|5a+;O*a-ygLg@$aO*98huX=A61N0KI z|KLETR^V3ku0ZR|7l8ff;BnRCesZsRi8e;?Oj}gm9p6M3f_djvuP1Yy>h%vxH>6+d zZGyo-H4AZB;Y;(*tKJYPU{&v_fwsDHfO07duxW;OzoL47O`t`O0p}H8f^CyxUiIGW zZiJ%w8<4&vB3lxXc$(T)`Jw?Ws2VqxQ{}!xXYltP``ZOh1Jm5|-hCT;%BkLU%}wwV z`fw^r>Kgz~^(qTYu#CC#8UQa|^@a_%s$@OyHRU#KRc{_fLe%rF>SEJY_3FB6+Bw?X zfG=J#ISKl`z6`B_>TEmA>BqG6?pV(o{%iPm_$EGt_p){w#3fR-}06RY&41PIV-b?$&;7oQ{aE(CGxE z?nGou@M^*Rc=~&Oq8lO!hX3$A8($xdRbrG#P|B_EW#=SbKq$$a1fIEr z*cM63!wnxg3ewcc%G2<8hYHGg1{HBL=0*O_w7*Z-UvB*GJ_r}Dpr0c^!dT^Js7v2# za0=SuNo?u?J&8$aV9MFXp);+*Sp_}rT${EEdc_kqZEa%(B8pMl_{V9QcDAtw%jxu9 zsLN?AUrTUy@+pYbEdhUr`^x(dWMhvkxs3&^o$LY%p-{p-#q~eW;p0Xu0h32Xe0b@B z(1(BEZczLT(z%;{g z8OT zd-k#QP5{zO79sOm#QX4XoMkIt3527FM0r^xw*>qK0b>!vW*}UgN6Go{GbdY0_W3Htuy+X;=Dac;3%KmE{Rd#lqb)p7na+63 z5~%}1dxsP%(@%$4BEtcj;NW@6^!@|3U5kORl1OZq;a#XqS4iXJX*87SyBBP|=K<+b z79sOm#4FPyd)vzI2f~v?3hDX<;YSlKr9T0I|H>Vu_`nB9@T7ryc&g-WH>$>S7JG^$TT(bxmE&)tC4^w!j2 zpKA#1T$aD+2|d|f9+U>PuihglFJu+v9*4q}lkONRz6DQ?ivO5Q)r~STWIrJepMS)3 z+mIEx1jUn1&=Tj&GSV+KSROTI(p-HjO7Id~Vs_hrA{+4-a+2EgU#%eMWD;B2!q{^* z$Ygk!U?#(Z{W@jRAHRWot`3pk9XTe`4r30l0ql;bRHuUUr+@?PL;jSduebs~rm%yc zq&8lOvRun;HwCHXs}2j&Hz3g|lS+ZdG=t-~$1O^x=JBT>^%goV&9~P(CCWZKk6C58 zKd|ykQTf8>$U#{_vmyA&6jbx4pkVd_Je_EFZV}%1;@w$T?_~xLP5!Y39y|k-TiF>K)rU19hr#}b?7K1;JX{h5K_UN> zWblYoJL43lQ2E z(z%+#F5El;_g!j_<9!X(VaP6(Y*o6$@yHmBXvUDP%}*xq?_cA-drPukc=ao|?@>ch z6;A&Y_x;PiVTD!S<9o2)`_JP3f*RsnW-^%!Tc2h) zu<$*IU}%+cSBPd0ZK)j9p{YZwm5a~NvY|Cn^E8$mcmj4fvu(+sV-h74AP;TSO3VI;F+6zBWGR)IXE+*G zFPEUqJPFu^N#T>{I!Y0#Feux>0dZBblssHSm|Uo=ijc{02$$X7A86RLMn-rPWIo#T zq2)jrku2u-85VV4tZVABel(RjL-U+;H^;>|KX}ivG2tirx zF37%CrE(jyS(%YL3JSHqMX9{|2+%Im(!cj;6j)I94m)ICvK603eok2UG_vMHjNHMi zJ1{48qHR`C^Vny|eWp2cJGxvW&8F0Ynk$|G{Q1@!kQlo&_=6PIu_X*@@|kEvST$2g z`h-eG7>|vEt~T8;h%y--p_s|=#LTQ*yGTyf=FdTXCc{G#uQ8_qALq1u0y>LUVXhk% zNM9|w`!si7u;@jY3!p$~nMLpW`?8?$p&x@_cx4NgXvmBxG3UI271&95LBC)`(_{zS z?DbnbH5yS~L5#gVfgvAJk?qV;k*kK~98oIsPLSgk)e)7c1WLfFZw8eS&63}OrNVPb zv9KA5rYGZ4_%6)S$W+T^xUZb|E#A?n@00obWDwkY5M0Q9mf*{nMe28L!hX)=Ua3c7 zpd`w2!(f=|2T7tTxAiV021}w%uIpSRhDf4I?vpV{43$Lh+_&SA7$%89xtI4xVz?wm z=KeAYiII|+kQ+A?iF!#)%kken>PJapZf?qTNQ`N|6ob7Xw-yqwA6K~oiDkLjgiH{w zSLeF#iNr)n9G1Hs@cK!)m(hfyax)%7Vrn^Oj-QFRuFd7X zM`E8Q?CM){9TG?^%yNj_n;V2)t8WnA9?jLZL1J-c8wflR6z+p=7?qYTDZ2xfWpu46 zr9SbPOl#)$MUA6hPe}GI%;tqUcoN3eX9RwoXi8hfqcqhTiIEhvvKL?B*{hxsSQzrqQyQ#xk%Pp(}Y`DU%BuuK7;aAq}2f)TCjOTMI?6$Q*FexY=-wD9A ziJ}qsB{~o8j3SinN0#4Ej(D14idU5TO}I%*v}XAScp|3fgr zU26_o84MbemPGD-tO~|7vBvh@S|qZPD9EktjzmrpnOxH{B#ID2z5;_-D<-X~UM43QpbCs7O(Nq#`axd>dqOyptP?y}?rbsj^rB3$_(yxKh znv?HAYu=TH@`PGxXi)PI5J>lHqx^p=89R32NTE5%85FRGwoSipRpYZ329Ol;`=j z`Q^)ASqAtV?dyv5KoI9b?xKT_om~E04=%bA|N7Fovcjy3G z#BUCJ+jZ zu+DRSBdjaoj<*6KrwBX%xDmoWRN_)a;K{&>AcIXQbf!-iY% z<1GkgX&z4;wkoJSnEc*Q#~+sFsm0N{1$^)D9Yj(l6EVhoyPOakOp$ zztDm|EX|{jqjg{Q1WNx<#~+sFiO6By+GVwZ^L-2ckOa5Tg$&qkUBpqb)`*YFt#wL7 zmGLCP?la;VbGKaxv&xve6bO$R@r@Vl1R3Y4I z_>=Yir9#}#(Xub{exBxcF2eo3&F&))pRU6Fe$Ai6edXK8Zy4V%!=qkv%YMXpg6cX4 zx!uPgp{{c#H~23|j1d2}EO#BelksCDQI%_5hs0P(w8040mSyBuPxj)qRD;WQj6N%e7@DFH&0~ ziFvt8NNrz9%+C!WwF4!wAooX7TPcaXgPJd3l*S(;%X*%bD~c@+U~rsr8$Z{7|0 znG8?XoyIAn9!ZIW;Mlb#-y#^iy`&GadT)pQn{cVjPrcvY75A5k74N+-ajsUJ%ZPKc z;(SP)TLkAi(+_rQLb;mXgY=caiQNs4&Fpv-b|?fLC+&imYsX$Auw|p;b$#)Ad&kG| zj6di&89Aoo>I&v(2Qa5!KU{;tm;MY7xlJ+cC4vbU4{2@>#c114MjNhKkwI4CWEnY> zHO(`Avl$)*oRy5q-7u+^P0p500wDLt`w^2Zl9f)7yBRb2LN>&E^Tkmc|{2BKvKj!SjkO^6jwVQ~s=4z~hT;cDMD&{)5tZ z++`cyq2-iCS?w9X=&#W!o^!0e4g22Kw-im9@|}o-=O615hdxk{HI@J!_V zFp@TUIkA2c0z5D|Bw%?=HwFAg<&h^TOSVSC$VO0hF--WB_Y~oDkH9-L;$Al5vA2P7 zTS7(z4_~&F@1RirqC(+W%$mLIAehc6f7k5kyFZUaI$6xKnRWEmtUnQ1n?=GrsoCa^ zW-py9xjeTyY(_AB!=3=$ohWX@d};Lbmmfh^Z&S=8owY$U072Q6S0TT@*3Dy{LzvnR zac536|40DsCXrdqC2!#V0kJbY2wFNQD0@1K+%+ncimVO>oy2#j-5%d|7GJ;BhFq#O=$z-0cVYz0o6xmER z$!iO_GQW!;X61@;IfVE}4<*jIxMnguQZ}36DZ^R0FT4!ew?`+Pt)BQ1W4Cwp!gGn) z8`7$||3g5xi^zGDudXP0*f0LCZxfK1F>CSl--hKK~c0OO=03WcUC*51dR@)?iMVDm+#8h5a0gZ zcWqX1y2yPd!~eg{WcW8-+061by#7J1%bywcp1$8llbfbo!6yDkohoK4fnDaThpD(}+2v;n**yBd9BIs?|%!411P zD19XWyf`~H2l#lvX5_&~gYfi{Z1W+2?+@5Y2M0l_#B#@ z$#5S{n%iu$8E%ZqWcd11nomkIne0~FGCjP*XE<94sTsVv_$%A7uQUNhfAhk0eTm? z&1QIFW>)Sq8J-20{#DMA~* zxc&wBjEZdQ7J#1u*x3$lSaHyd+hPjZrEf&}b!fY}7VtYf4lBYgH2?~Fr3ZnO;QS8o zH{v*@JIKd?!u?s#-vRsH!>P+b>6d-*-hO@IGlUmigeU>NDo@dMttin1%+?gOEK2CW z8vvxCMC?bIH=740XVeyL!BH$Cfmr~}3&B5R0In+kb{qC<;v32%D7_o?70fFf3mh{HuqiRP z1``RaJy^98f4&7nQYWc0clFo*sX{m@0crEG@I z(OPj|>8(rx;$r;XVKV1o#+-)RJ57uC19>(%^9HQV%DSOLW?lv!H{j09JUfY9qur6W zd@iiOs->XjK5OnW-Qe3EgS?;hvu63S#ZW`6VTp6p-R6yIxVcCIyk_R9k6`}^2zOdB zyd(&2#$A82;=KhJ1h^ejG4pz?fpa%; z|MQxA%kPpIjCU zTL?y;#`=Mua{U3t>rm3~Fe>TT2K&WsG_|s=YSXfy$DQb-XMl3ME!fN#d=0r3r?dyR z=$!;`t4~G+V=NwATltu6!!O0NT7PCo<8w7iZpd(_vZ>NK=a#G-A?c2qo>uZCDgwNZ zrY8i|JgK9Vt*4W(=MdBrZwLq{c_Oq z$Ah$?-1{!>#D!%W%DnI5vGQO-jxHF;qeSi}KF=$Vd^sUx;8x`S)zRTP-qDeJONaM* z=*U1GA(Ftr5;~GEFYHx+jQk5gho4dU18tl}%tq&fl>E34WYyMG(Ng&iYHK?94&u2Y zOD(klp4u~@_MfZXdecJbSShY|bgdNEo8GR^8qNV9XPNRD$C8hOf@+>lGTPSL*4JAI zRq?9mcOuH*!pS7#Y%7B5Z-?V0P21yreCb6j&BF)Sm;P*nDt1@pl1|#e%c>~p$|WN- z*-*tnQn|F+HYBJ%4~&&q(y*%XG27k%X}_u4@1YlE!oepkqhdhXDvyex^5SI9ilHmd zi%4u5IebOXu`Td+#YLmLJm zS4_-lQsJ^-Adgj9LUNRkXs&4ShPqITHw@r?Fz{eZQ6~}AZS!n%=TqF^*-F7YedQ)c zDb(W)b)g<_7{L2rAUBKt&QaptK1WHw)jXf&e2AZ)(Cqbxfy&c8_Palf#hX3VhS2P3 z+Ug$6o~9=R!+5;QskWX_xXV$G2$y)?erus+L0g{Uun8#BY{77F+!QS+QZBnhy0NNb z8;Jdj7D}Tb=)rd}UITXFrEDT#`hyPQ`7d6LgvKXuAfO6;7A{6o7#X~H}IeM3B`OFip$^+#r#xU%uj`4{_~h1c*=^ol~Mu+&x6D+ z>>&I(TPOZq1xJ0`k5T{M0eK4g!%t`Z0e;!FjW~u{99b;o@0Z6kexuEK_Iu|6H1C;2FiwK-Xs10}fRs6M$ z96U3UMNb)pf2bjzCEUsrZa{9ikl3`Wyfsla!AcAmi?GKwMe6EtuL9VcE7jxAO*Q`` z2FxJ6nt!hnIu+SPSXo=8oa>3y-hh^H`k_90?aVU(qn)2;4Zs*<&5ShwV~rfD2x+PT z7-y=S0jTDS2aGWAgHb3Svuy>dZS<-^$yY_#`1Hr*ZYt5aC0AjND}FaQNYm4Twmc(u zJ<4ve()hwtd=|N)GRrT(Bl=DEu7Lzr1voml6_0UEZn~8jhccrVwLQ7%+BE|@uEWi{ zh2`CWk=O+Cd>Jpe5#c*aK4iEna=ozS?K|S>+jkKwHdm*LbL7BEkUYhdom1D9@8m%^ z7@~Wi6TY}qnGWs!1t8Vf-h0Zw9s;2_FY#N#~|;*gOAZE11@R+ ze_s`ruJ6wD+yQ?cj`TM!jnT)KBlq8;MEZJKU2k@Lyk^>kd|=SMW_pcNK12nP9-(~A z4O;!-5WEM1l8I5cNQcnH2u6}x!8Q}@i{H7nu2NsuD&&?+F)mEcg%0(wIH5JT4LE-M ziUllP)7nllVgXCn*jc+FXvJ609zlV`>$nITcY3|(lJP8fx#WO&m+$aC78ukv5@%W}V;c|{r#dDKb%dd5j#;K>}*MnsedlRw`2J(MV z_d&r~9QOEE)Y0-EsjYb2)PcxO9E*$4`s{2>S8~8qU*ezmFiv8_@A>$)CuaM@aS0~Z z)xasn-K+QtGmYm#FyrSzFeCGzFw=^!dVYX{i63y0S~o{U#KmT);r)DJzHTLjuK;JzYtg;p`N_6zPz1{xIIRqGRr4jU7Pd6BR6b_gKT%rj zG1vFu8qe8d5@!^^*<($^VDj%LTHY1}kDjBH=6H&okn8O+jb9JGb2%2dJFK9}J?;#L ztGq+U?}d&xSegwU?reVA^RP zp0nmYlfA(Vs0X%83&~BVuL)!#%HCmGa3W$y5BOmeI{q$GN+Ze1Y{26ik#VAj+6IAo;#w#zCnu1UlzIUuLlJ8GzgfuW~zFiM_9$t3uK>8@#YoA9Si!!)gKQ}RXAOeevSL0kT*)ghq77jpR-s6PPU8!AO#<$D8~|;`bR_A#`3oX4_iimP>j1-S0xR&q7Xu@3#oCH=$&~NMg0Y`N|LA zcZ;Rb*VA|cx#d!fH0~aaqd<_8cn24uaUE%NBi7G&|Nm$F9${&;_B1kggN792%*kFx+cerEPgolepJ5uc*}!%flFg_|4n;6Ilg3knHKHylx?BR4Aapa=i%>>A{L zai&%t;@;_S+uM%sQHYNJJ#wG1xS^7~=Wv~pOx~jgBNMsR_n;*lnz31Z7MG?i)21DB zXUVjlHa2W^A10{YC^ePK?EZ`THK*Zi)o&1@Nytsi!bN1=6#0VFUJB-G=+EH&&R zcx-_8!?!)LgI0fnQ&W$-#AIB2xu7pmjw`_gkKe`kwkJ~1>NH$d<1Voomps0=NBG{} z`AxJ3!Ed0=USxtR@OuZo?OC|}(Y&0B3m!L(oeQI~8VdU+(xR2M+6OSqOUig3RR0Fx zPrk<;J`HlEMV@>gq|PNHXILr8C*S@!SyAkgOIqvvtD)VJO9pDPp{gC8=$2eEnnecj-O`wgKCdNuBf|n5_<4Jj4jCBVsSfo+$$U| zeKy*;YQCwyr^OrT@xBD!FD*kiCP&7Wp=Trq`(^0$aLCH;hc&bmr+JEX$Q3T>0Eq9f z0Jy`Dd;bPS3g?-Ljc_lYfv20uJ@*X7-Qww<7R8m>?YXs>%zl%qbJ&VU3|s=d z#9g>Zc!CqPXiMnc_e{2CGlFiUxZqeU`|!J;t*?i#@2e<@a-j+*_8R1Jim84Tn$gu3 z8s-a4djRz|IwM#nW*jAK9W-4LB5h;A4JGupisqM=ICra>XAKuw>fuWC6ruhE76X`v zs&-w=gNB>&%wXwYo;3WK?T)a_y^YKCZsE$b{b)A+;0zdD&(tQ^xg5%79<**9!Fg^S zdi4~OT~%WpAM|~z>kHu@qDZ12E+TNo?6A&0G-z3zXh++F#3CjJs9|9Rtrwya{POtB z_AK7MikFVK1a0}RV~65y*guuGO-6sswnvZ~QLzbdrd9>n(JibWwD@dW0=w(vGj8~m z@XaPxYLsK{xP3lBa*}m|!2Pg$AkR)T8~B7%?1!kvFUB7*{0Gc0HY?Ju`U5$&x+n$v z_YhiMfs1c>(Dz4_z6kr4Iv~3%zU_$=w0aP3%^=(*CgURL^kPDD*^RhO=9yp>e*4-H zGu>BrBy!88Jg02_;qs}-No>VMh;hn}5F`2pr(ynQF-t6*yPsgLlqa#{;HkWVoWwi0 z2(fQL4D&yd&CbXCkKeznS5CTlhB6Ox{%0}L;GZ-$M^0iFT!aR#K!hQp4;zUy!SQ>E zB?gJe$84L8+;S;TVsApSOOTT|1{WblotiZqdf)O<)1~RTDAkumMq~NA5x-mTZO;0^s)reA^Q{XjO%B@8B-+7hHU~pf6Egg30|J zzyHFwJ&}S|XQi>Fo#wk0E}qXwHN^e)a>VWdAAoOrVh7{z#iiwzl5t2R_QFMqayE_> zCHhZ0FeBi1HNNeM9kk_sl(TWSkDZ(Bu!lY#^QavgXNX;xFz%HswyInt=Vv4~%{u-D z>})Xw+a@2-a10i$An^vii6?QvmN#6@OSoXm8?J%i?7-bW@f95N8Sb)~Z*WZu%7cb< zGN`l!U%?3uSct3|Bs;k*-M00Rc@5^A^WJm-I#|{R2l~NEOzDmTuwvScFc`RjR`pqq zz|eG^E|>OMg2VzYOE|Sa65Jhh0T8ErhZH_<=no|Ew?`wA;DoVwqs2MV;>_Onz@T7r znFc2t_I&0*{IR)6ZSJ0Z;DK<#ie=WGcU|G`VJq5lr&0E|nE5O*c;50c+d3gv%#w_tJr@@6#{#;Ov- z-}uf1w*uur-UR=^4$~`HfYi*}K!fg*-%N(rG_!}l{7(~nh?@g>bHWcO@&-}~R%F&{ zkwi?gx_y|Pzi@7lH8O_S$HGkkYFEUrxu8gf0i|srq5^Y)wl@d&ycBY z=(Y}dA3?F6#qZ6QGK{`_%r=UqT*`v-rAR1cN^<-bTnY=*Uosa504U`LNLd8h?L7ca z#U`%yfbD51b9nM&wsFsIxs(Ove|pN?COp0ZmsC1E87PT)jxzV|>Q3QqLy$KV(l{Q! zulz$Po~%Ehd=_%cr7S4VLV`Sxm)-Qq^me9i#zo{%dmd=Y2KtdK^(=PNy^P;mEzP!` z<_E|vm$IOFEfO+{lF)sg!}8QuiujVpUxM7Y?q6{mw?cMuy1)1nTV}H@BX(!{f79-8 z@99aX>WMFvit&T*-9`)?4Gk`+Z{rxy!B^kI4Zd-O5NN^ZEFT=>fy3fj%in&EKa8?* z_9^B_m^^Na{TC|fZ>z@oPCjN^%cml3$MCC?ng`VBfSwlg;I7+2Kq|CFLz6cvUUXTX zRfn&{hTPWPF&Cd8y6!a$m>$smqrlTkKq$6)<)M zEe6OI=x!uB7FCV|m2sbIU3I<>4?}J_Ye{a}x~BYVxjA=D`Ok85&YE(*x5G$jd2_j0 zyC!JG&Dkd*75p9--^ey&%28>V@+CZ$wF-GG>n8Vu+7o9iH%kk@Wiu#s<+p5s@=K2X zg?4?1->T1)-yWXd-p_zv){agu-zdMc%FmbIY2{bQ@09Xe$fr3=wF%fOX?^b-<6FZRXzaaZMq;B!qN_WcpF$B%Z@XDAGU%BZ<{& zIu3ot@7<>4n$UWs24xs z;%W?X#cHxzjE>Fb9iAqDC{Hz(#-+XT%u%vo8e89(jb@PO}5P5s(sVCdWieUmZwNn95>xJUeV~jTVlv zTpO(t2h{tr(m$?mTCx8qmDV0EtJ+CR)uPU#JYb&6)1{Xv&n{s{*($pBG<_;ol`M^SUpFspl&65ZpLUW# z2k^E>2k6&`ToQ|to};X)^{NGVs#tH&k4TLjp*r0s4p4FRwaxM3>KDgihb^%L`U}V^ zNqoEv=o#3d-43S<-s}(TcLA?*#1JJCRXg$l6)PA?4eOT zMl2z!#qi2|%h0TaSVn-En11h;$W!N$IAa6@2w`Xr5fi`)Jg z8)a}%j=C}~6adAgA{ehcwQ5POCP0mYiN;J6t1}58;1Mv{35xwar7ill7jmb1PEe`x zvHR&z3mubqkIG6zgv9q;wavbBrw^eu1C$CmV=x2|j^>%FK;(NC+ot4kYJb#5QtTT| zPJ3rhE8P^{)QdMBdp0br5XZjt4_1|omsZWA^0P(rd82jb>HUJ}xWocn>W}E0vbB$A zOEgB!3f79Eh7oK6f}p`;qv$Cm)AzBn$OoYXl#nO|4aRCec13MS>);Bj`iF!X%<{E4j=4i^hZYCHVfGd(aJW@O z5W#~%%0;#0NV1^Kr(ln=S_icCMkcDGTX-20;h17;$d2_5l3ru|cogL1uVz4v!105@ zE}A4&pWus$6luPsyYV&-TjjbF@e|V+Q&~PS58`Y(U!=^}Ffw(r2^m16u%FRbHo=h_ z_opgRD|($FwYqgiY)ML6KpC7CE00%tLxw~aRE!PAn&tJ%Q^b!UPaDGOy!f=bjYek@ zyd?)5Cpf1bXPRc#8l4r=6rO(+mbNdDxZ*pkyxAyh!(|Q6l~&+QD?4AfvuAoo^3m z*#3!)_Dk8E2r->IF3W2q-ua1%L#G`aee1`An=5Nm6vve@$RLc`s|-e8MDwmTQNKf3 zy(W*<&?C5(U1JrG4ZRMSE*)ZBAIYVfsT$s(R3mLv;ofMhcay z=@UBssJq9k`dfRCeRCK@w6NZl#zAHvAIoA(oTn7LLqJ6yQu?6J6$otGFnVGZNZc;d(Bw8;kSHsA87*Y~Z{4N~3)1 zKri#75O|btQ|BaTclP-*BQ;CRm8cCE$OhJa|_q1=q#@cw2Usr=o98G;ySm(UH~#W_S+tcCut_G!1!zwPe10eN;?k8lCg(|4(b^>S{1 zZ?|;o6Sdn^;J(q?R+U6;O24Qp-@ma}IUrtCS>07K?F>jEYW6^3LAiLdGm*+*T(mBoR>y~K?}X6pov5C!w^{75e=^+hqcVh-|2-kA^MkS~^vY*ETlU!*!7r-tA zb$mDlaKL5pQr=%#9$&Dmu-+?3OLrdNCE{Cf;Lg0pm2vF}f>oX_3I@SJ7LG)yU900f zvBR(~RO6_zi$gpH3g$QIP!AMAP!YV692O1_4uQi3wUHlqM4W3bkdO3TCdTzBbqDj; zkD>c`EbwD)*Kz9q9UpD5s{RRdDc8`Ww97(kBqZW>cW$p_Pm*0Y#z{E25>z;(Bq9)vw(kK3nKT zZbVwVNO+ECxO;e%XEyd7vFvN?JD!cqFxJZz-%di7oAR=)bGg};^(GQR{_lk1qaI(% zxjZfu??om$7>X<7LhwzZ4hll^&LwOdns?sNf5mmvxmbO`Qaka<@ZrQ)7Oj%~j^KP~ z{hdaYhsvzJLPgZ&3W7>s$eI$Zjd6OJRq@Cpj^Uyd)P)ufi~LkY36q~+j@3sN<0Mn# ztZHqvD%XNK+i>uw0r}9oliqMfzID{d>u_U~-a89;q#V_*cF`HtKFnyZ!SfEzk8I?} zk=stu*+ab>yshjU=Ppqvc^5ByaLTe>!H^&F6k0dulywgs?jCM#>8TOoUS2BFUdlx~ zsdpHw@8gX$#Kf9HpU#eBSEygqDv^a>i?>IOql$D_+XCMk1D#Wi@H)q?AAjUx@J>hY zka&YQoZK8W6s8|~M>9N(^kUS8hi)z$Jq_`~ty3Gp>PC7gSb5in9(SGx7n>?Zvz^X| z9MgEd9UFSy@8fCPfkE1A|H8OOuYvi<)UO>x%tbCp z`CpC1N1uZ*25+gVW!k^-0%=)1?7TeMe;iRjK0I+ za#1~VOOIpX4RA9L_8f#o#YJ`DdeKC+Q^&`<0vj;$i7{fZ#<~4)$0CmwX=3S&d2<5k z>ssI>!^O+Wmifzr#g1<00u&BWZeQjaLn)#p2JWyAZ0_*)aaRekb{i!bc|> zU1e;9KNPwH`b3&unH8Pr)0z2^YIao;@!nYF4!cBiTN35oPj0deH}`OZ^`G_m*s`b zFITz|VXCFPLi9Obo3G3hF{k6J@;K8ma&;t(eoZWleyt6oUngPo>m`gH3C5#!q(B>d zV~ny_s+(*W{pN@w5&agXW9zM39lJtQwdA(glIeC?GTo84P`Wd$So%J?)M3!xEwJux zgcn^h-IE7xykxpJHfVJTe_vjyXx(h({gGwX1Jb^5ne`yjE?EDNyT_92;l|6XM^H_p z5dEXTbFLLUUq<=;I21ul4E?U1t)ik!rT7+7ZQOOW z%(cs3_qC7uZzR%qcT;q-bxSDha0(l4-Qv#S3de113fsbh+M2Fz!PdH=sW5qao>T?hbk zQ$jCwYFtOHkaoA+dv(|&R3mlWr@7V3bV8i;N^sF#>z}^BD9>v&fia^ z{di)Yzl$AI&feKUq4w_NJWnSg>QnOk%u}rcyN-KTBHDOb#N|D`kuSR5daVqNb88<% z;%={so373fmpHlwicbXW>dIOLH?2pORuH)FzD+UrcC)y*zmY0wn`Pl7v!m|r;F8J3 z<+r$d+0E2wPX|^>jUC1d-0D@jhO46S6%+GgeHS?-@X5_f(FubamqOK0i_4`>xKTt0 zQ)Go>yUhmx|5HcQD^)}>)&EIFZ3XsgM6CjcU)n|MWBW9s!FRV;BU*>+p`3dL5IUol z168>&&@W92O?~K^0^q3a%qfksFM)pNTsC$_qrO<9;C|HkZ5H~fc>#Vm&{{;D&X|*` z!F@MF+m50&t&Wa#odjx}g^iD;Rj-%Gz9HCC)h5I->6WZf=T|?iI zK$PDGCVZbLM*EP}&{B1v&Z;lp(cN-9bqYPV&dzh|LU#|_?4xmy#!EkJinWO;z7`mK+s#Nk=z!Nyj*sbZnd<9X4M4oHM1)8pt(gbi}XE1HW#L#7( z6uPX~wGpnduu~)Yc)+^WQ!Vo#ZT-;Q~oG0!U^1~vEaM+}Y1b%Bf8?(NkL zs2ZT%$H|Y4$1V-NV)38u(NGzMPS%pR1lYy!OkE^PPS?ndhH6I=6Uex0*jd13(W^8k012DbSP$AT7b!%|?tLh|f0hv5|_`lN;bdFWV zd4#_lnbgQ-&I=s_!TE4S&La$6KRZlRePfPa)XgmQ)F4Smtt@VgXo{M83j{p&KzY84 z`0KkooULck=uVH&Cu|YrL?0dzxk?RcOXt*8$I%?i*w7L0+S;fuSr>Iu=}Y2O%P{29 zI%@A}nAqSpQC(4c(l$D4wzCyVCs3CVgVgA12hX8&fpaByzO%!5jh&s+vCXnSH@X09 zHRV|#hAlQ&vQhlQKzMudK< zyiln$M{0q%4_F_1tJw09XFJ%YNZ`^&2gg7jc8;NW9NXA69Oqoa@zKGE9UjrCk;ErP z{oP5zUqrCVcDPGd`bRUTIKt{FPR;jsV;es-x`o#;ZS0bI!rCQvsr{%B=gP^r&{8ww zesCDRw8|3e<1mIPP*n_W0&zZ>5atNwtC?PgTvX3>PMUi$6YufO3!UEip~5Sx3&NS- zy10ACU0ir}@ueKOVXGJB1IUl=`LJFP4VZsFZ;?ljw3xofV%G&xzjsOK_bv?`S?tP< zyHoo`-QfLq<_0edON$%4Jn9CouvLpV)xI6zWehge3LfaS4O!~$u8gWK4c{u8A(XJ` zma3tVK{qq6j$*LL!HpxBhoCd0H!0s=j6n)xx;Fuyn{$tkh#Dq!j~nm(@O=P2WA5?M z`4IL@7<7~_3*F;mJ+=Vi?(uPPpm&d*_b2Q-_xJ=swi+Dwhu7r!!)tf4lOeuw*Om9S z@+3Mt5#rj#@l7Mt+Ed`}#Mi=X{;843B$q_%@`9aqOK*g}4vfZ|d07YknF^jD-s{Jk zZyO|xs6L_ZHknP%u+h&m8$~$JvJpXq4gtp8Wiq%e;xJ3_ zG7?X{1RS||>UMXJc&PERN8y1wCHWoVRd zt|p>pfvhK^hK#njAg)zv#)+BY6v9W>g}gx|G>#bc6T{eOWT;U)U2HVes+{wlLq|CD zEaCiy7AX?lmHo}`xf_ohiOHw&R_@p)1kbjZlPKH&PsM)S%HjVAmp|-{UyA)g{x%R= z6?NTzX-jv$M;}IgNl51(>Q`NKQghCItEelWmJ$097`O@JyLOte(cO4=tFde6ocGZ6 z&mR||({EMSdEa*Hfj)!i?4H+miB}Uk>$`*uht4{je;vRaSJ;OTu4uZ4PJ0g*J?_cX z0Q~!?v2X0CW5a~!>;PMl zeqm2{)DNREac=sM&`lreqQ^G68+X!&hfey4sD{uT@jJTJIM~p^$i_~2y>rS(MeQ9N zeBbZ3)nlSgxdwM5qSTh=MRhgPd;98?Psn%5CtBW754C#|lHO`zgF@7)Q|Eh1-1(mB zB_6Sc&pngsq*^npk+(fN?rrbsD@Ws; z#!-d-%NrD&6~@sl(f;88=RSmap<_Kibd7N~cHFVvJL*{f-?S~k$qzzT$9jodt1R`Z z1DJZ)vCRkCi~EIhusc0s|ER-kL%d-;Id9iDdlFj@oWp!Tbd;*Yd|+I4qQ|aCcSM%q z8pyT&mqu#D?T=cPaD?W)Zx?r%!>F#Pqj$>kk7toHFLYI4wazJsD%W9o4)ft&s$gCl zsDWM2wesOLpPLgRlyy!xDzv)VYvEEs*rhSYQo#!oncOK3gQuP+l~Z%oggzA<0YbM-sl_*C(Y*NJZ&@!Z9RC_53q9l5?6 z*2jF~4dNSfdx84KXXN?Dc;_xQyTpCt{Egnu{nZZ4-{>7JOIbuVC5Y%{X4IU)?++iacXGP;|7t(qIrjr7B%M|M z+kU=tuZQ@FM0}5^$ru_s{KK5XZ^QU;hacx6ilxU4x?9v@(DovXAGHJ4;dfg&teqd_ zdmBu!w?{{v`Z2;H=XGI`dPp4g_3iqTz7aG1nH%cVV}a!!?yQot_a<2WK#3C!eSGUM zh>sul%=q|fa@?uk=~)}zwaIh&om0QNA4pOy{lh)-oqC+J=$v}z-{ZBs8LHfDnG5ZM zgbkt3iaYgTINyqi)wATDai^QXd@D8eTIjI5vlh|fy`m2LJg*)y>>`nN=hq`2e!a9X z))v>`a=0Fc24~guR4IKQ@^ya2fuIBgWpfv z6ngMGd$ThxByx_89L}j<;r&pET7BLFqHJ@OcA%G>bVtOgUzrb~Yr86HS6$p10siQG z{=e$!3$=)Uto=b1u}=ZiX>#j~!+a~Hj}Omt{EzUG_d+<*^BYk?KRW2+M{3u;&3iW# zK7QP(*M|U+Vye@5;eVZ*jt{-}6Vydt6E=a(Tx;XrzvkQX5RaXE_T0y7kKeGG?o3hS z*bOw?`}C*BeERj`({IT0CHRX1I6h_^-Xnb9?KO9}*h7)@#T-3PGR^(iO`9Ixd49ZUFO7uL7Qs-{L zm5&;Wu=-!zP$IJcIj=HK$pup3-$yHOeB?!$U1W&kEw<6b;a5dluSVckPKpyz zIu2y(i9XY)brIpZXb3wz*E@`Yw{fmc+vqgHpayNaY%Xz6Cfa**foj=+4q+VY7yQh~ zJ8Yb*V=JRwyoJQjCb_OI`rOThiruShKyV=hoDdSu&(z(X>IB3{htXv#Ad>GL^=4R7 zBg@`JVvALu^Ww@OpkLSs`;@A`^tv^8@la6ooww-p#j3HHm_dHTn61tTpHxb3nFhPq z^bpH8P;_ygeYBkM|7}^Brm41P?*Gw3OQ-j4_7oBViQ7ih6S6FnFH7sbunx4Y3O2#mD#G z?2M`MWC+>2d>dtdcfY!$B)$OH z>3eTvFmGG2#=!xI9v8i@S_{13=1q}w8VwQOaPytUNnx3DahHcngBA7`O9Si=jxMaM z3c>4iPXS`PM}lBg`1YGUuFYA!)&CcJ?*bp!Rox3qGuraV&)D)SPU0v|V&~z9-hLoE zFHeH}Nc`CWobVXNqmev8(kRkMvI950wGE||LIRXWNu2}=l;BWGffhMXN@>fZ?bjb) z8v<=<3U;8ql$&b@N_+e3{r+pMz0TR^%sDffi3usahG=Ha-shbCSbIJGYwfjtjmugV z_XaJCaZ5hjR%%+Ax~Qv;z+oaZ)I`vTzXXZFNXEe_TLV*zWNcAp!x5f0I}|~NbJTx4 z8xHrmhQsUKR?2#R1I8N-qD^UKZh`yDt%P52tpweQ=9>w>$f}#@$iz{IUMX$#F>|3&YVfL#p{NM+C9hWZupj1I(DW zvN?k;14zNcKIb4ZMaT%Quu;vE{5GwDU;Zq=-5&^^Xkf}Z0Xzs)lc40_N)I%MQogyo z$Y<^4iA9_=8cyg54-&n}OQHcBI`GWk_!1=TzLA>a-TIzTq1@^f6H;yO<=4`^I&VlB z9`IAx&=qH}g;~BoGF`_*I>2}?4=~n^lV-&0B> zjSpJ?hL<3Or&I{xL+sc1F#9z=B7LRy+exQ){FXlgxa!g7M*}v{V{8L`3|$hd=9EvU z=!lr_kB2OzkNXei&IT={-;S}1KH<12eusyUmaOcU{3L#>o8ou%I~FohhF|~#S+GBi zmj^CUS3kqgQ$|4fz31T+tKZkFJSddmdmcD6)t^BLDMP3E3h8k;f{d?`rbKzX!%hw) z`*6rfGj>?;jM9F%v=%D<0^ag6L=I8j4{}pgLEXh9nSCUUnkp@71Mk8Gs3dz(JQ5@xIIEKG}@+B*2J=;p&|7AlV~6qLNA8hYTtwblFqt;SKp7F z;Uyu=NVPj`CfUUc#gzfItzU{MCO{jHlKgd+P#+45;uGiYe zdJRDEjLTMaOs@AX+dgQ)dXE6mUmD>J?qpa+XQQtVZVKD4Zt6t3Rc6-S*r_&{=1R10 zm&SJsd6Vkj6C4$Ld#`T;Yz}t7QT@002E^8ICF;;NvSMK5h<4r=HWRn2b?8RMd(Xk3 z2u;JpQP}+^w^Y1)o|%O}c?`eh*1`38izk)6DS*kNW?9;uTcV^}T{1+L50}yqF7Mg{ z{pF?%ES_LHq!)g`JUS+;N(gz6H!PM6d~}^_x+2yKpcg&tj<89vPc24Z>%~0_pw^h0tZP<8I$Ip=E2_wh5Y#-pw=PT8S5YXK! zbfQtc8cnu(g^a{&)K1O#M#O7F+Ch1*eO}jP+AO** z($Ob37&tCDsX1^s$^xh!J+H&gVJV9@2EeFm9Ekl&$r5Ss(04uq}J z3VBDQjS<|giFv{hJBE~P1TBeQb1VpCW<)#0ze>-3kF_%18_KEjzA{VW*R7@Dh3eo9 zN@x$UrSThVX%K4f%M8`!oIE19&szzP1T2k5+0vj`e6cj-KqF#`l1H6_@9p$3Jp`=^ z&4;K0!W;V!m)+)O3$&JzvxMEp(ilnNM6uF7%B#aSOCG~-HA~1u;_omOkU}wRmORcR z;8-g3?2ps)teh8~^xJHh1T!eoc}HrPkRe2d$?rOb$*1@liF@~8BU;UrDUoa;hf*m$ zqQpXLBo&lLGKE4KTa*>zjlVxjcBAY825) z+5@JRZ=WzB=$#zt4-bs%-nm-skhQ*Tw9bAC8dm1hpQV0cE<05Z~ zHbE@cM^Emw%h|q_aE)u|IR<&Y+a@Dm3zIXJ}Notmnu0$F2uAEOA_ z9gZzl?pg6z1`jUjHL*Sx5qPpHY)FqP1?2S^@u6L-e%p|JUwbVEjS?F0v7mpYJY}G3 zhpDB(^rkv=$y2m(nXL_1neo^7RFJ@B&Z*(g+x226kVjCs-0P!`ehLNZ5PyO@#^agX z`ul?;r1=2@43G>CHOH_YSG9jTC}e7QoCVj!MhkAib@I0JTiIjLdn14E5#TZF}K2|fD8iXXSaQ9Xn0#VTYETeN2X4BcQ{Dj z(}Kf36(a5zZFY7=GRPz1b8=xf?+;ltHt)LSfxcoQ+joU4k^Cdu#o7&?R1u}%VaIlP zB#_ShQERz;fNhTtvh86F1j`2L2}A&D7>K;`M*YLqp!tYD`z*MhE0cyBl%5Z+3Ec7rrnd{6Ststu{gG=c<7#duC$>zUdWG@@&g;j#*0Ja z*^!aL=+LH#!y{48%O5EPFCW>`o9XS|FkBd&JhEYEbW)mP-&@wiO#}HulSA@^;liO! zL%H0hvL|fSZUx>H_)&h7bku!e*>kDNrqa=|{6s^;XnvYT@lbZ6kjqSz#?j@ChZ_o}M>I6yG??MxVlM05Vec;Ga`bX~UZIp9_si)@c6g{L&qu5A%YOi#M-}iA zylygAl3KP4_L(Eask~h0J2R#6EXF~ujE(09@`HuZ{6MBSX0Oo$Cr1mTg;F6qT(~cf z&W4+o!La2sJd%DPwUVyOmB7H-me39U>uuY$yYkGz$9zFExzMLGBZnqRSQmOB^fQyWwSP}q z>I!8#7yKd~S!su@Ric%L7s$YFnDiSXSERCxwR|rXMu_Cl6)c(&jKeh6EG~d9GMT|K z46ki7J%E-GYEB%T$mGYzX-aSbJ;jevTP8EGL7Rp`xgvMcRLD14>Xs)on8t>d1oFZ1 zzvSbMjb`pSvuIZ$0e;<-FiDhd*3x%$HKsP2rDx5G#C1y&tEfg2DKc6TC$+{O&u>gE zF{{rsB$^Vt;;Xpx#S` zPif&|DJ*H>TonFL3tJma-#N2w(A+ktPp0yPJ8h$vdgUc4H)b))H){FZMsp3`Y#-ii z7NT&c7XEufTI)_gMtAqcqkDpIH3jKO=`g$p1^I2^M@H&e%>^mHgn%* z8dHy$)l-R0OU$yfW@T#ftXXx&jHI?>CY~}&&YFezx{Rjeq**~9$IMF}F&k3H%#FLu z+FfQPU87(0iJz&%=E}rXOU)&?c4gwqR&$B1&_bVyD;JqdUTrQtmZwsu`1gE#(tY!1xR>)k%PpCI#=Q14UpFAc#?%w$ zj?`0VO5a(t>740EbT7fhO=ef>Q4D4FjJdC5-f+(RO5+*RoB9~q_}0d=W?f=yt67oi zGY0hCy2o5GW9GMGE-(ytHJ@qzCLX*3BYq5ZHk!t>P4kUOesVRMb7``L?n&9P-PN?j%t?NtvCqsu zPcLkFnD6-3{e9-*)De@wn|MA>n1vrVwC)z{Hcbzjg-^`t$DHKYj9H#+J!$6P)`h9B zd3O!Dj|lyk_c>$spk0aN|7qwm^HQy5*7bo7) zxZJcQHY_!36PuQsE6$j;4`3Fyx0xMN$|>SxXnJ{*BW)5HJb!l*`@{m z2Qfjd&tZfnWx2QT!ri0A?*$)S7g*E7TJ)7fqgnhTvjGdJWD>uD!9L-x{m*N?512-C z>5t5!@1n*#-5Sj=wT=7zWaEsv^dHTfyAsQN=Fz9cA4`Jg{1TNiFQ3a}vqww+5FJ>Q z+RJmje7CvuG=E!q!mR(1X*y^Y?lEmx?5*DgA$-AHlIUA*mVMVOPQA-4*=?2{H%%q8 z_#t$E+FbQG(@FPnv%O@RP8o9|!PA=L5&3q%ZS0$x8cho^o76@bF)2^&vgQAMVWU}< zdJuKKBIPpRJGDG|z{j+>e83;jqACOa9jzBT;MeW0IN-0<;>ZCX)6y4Uz==W=du?M+ zV?eLRfOqWz*V-sFAmXK6tNb>^<>jc-a>lGXqoYm&Xi#fB%mQ_X*>ub#z`I{*uEyV8 zX8ALw`IwpW2c~I*nUh%4>fZZ|-usc}#&c#JSn4j*i3T_%+IhQe<7aJ^_G6|?tIT6M zJ*HLOGN%#JX0N$6^<}euFfoS+eIAq67q!YvbE9c`!X!#&?&D_8Zt1Gjc}DAe5_J}z zHkWwJ7}> zwGmX|`&uEYFA39vD%b3@uXz^BA)s<-1~Nct^I=C`!&FN4WkbDqM5g zEIV#Y$+Vqx>wI17yhG~Te9Ux~%-%qqf73euADX!&b%R+$QmACEppRW<8-1KHtYmD& zz$BWC<&&~TI`-SK`152Vg!YQ>V;CldFoZzgq7}Z`0@}IkEKQaY4z0r{wfyOMjb?u8 zb0Fe-%$488nCvi3kCg<G?!x3hD&<0P2emws;*Mx(48=XB<>eGNqeT@d?m4X$Npa0DvyG3TxNa?v zqqw`ZLIsLDrgbV%++$j&K8pJXy*-ZNw!PeTG=}2dq~)`vIGOzGUSS{mg@ui<(3-z* zTA}-1K}H0uJhS0R(=%fdR>io8iS)1Z7ARO|*J&uGvO4E7hj~Uze}K}ZVBNm(06!z? z@o|~ooG)a5$>R00{7FHu0AMMS_MY~MfK{Kb%?AT)#ok5S=&9dEQ-7&ND7tNe! z9ydLrTAAa}-G@^%rs;%PI_1Ck=C7I7GtjIyp}Rw2Yw0s6z34PLqr!)n`VK7(-MfTmGNYwGf}(5ILs%;p6WR7LEkD^v#Ninw z$_eQW^IvUS7ka-)w$)ntrUX5q>3h)dh7v1CjEg`jX@&on1eO&@i-mqpVspKz^(I=bJ-dT2&=!>8b4To{w?}P)Af{DG-Iya4R#*TnqT@F+lhAt zrJ6M4ZY`ZbL)xG*U6~3f5^vV>KScSe)Niw}V69uG=<{0sNJ=K~lysw&C*g0k^b>gZ z)v1r0o6$|aTXf{b8QZo8AyeDWo6R$B>86-c8Qt5pw0v}5twk}T`*tml9o^4rjcTL2 z=CzeZw_8hNM)#1G$BgcKwLEfkKcl4)qf3JN2U`9xMi+MVMRsn4JI>8E@IP4Hjb`nS zP2#MMJ>9!rOaB3abKYsQ_yM&ST1}@OW%%p*qC~w0e;l9%k;r&U~5y>*}rS85VI4VZgt+i z;i&~A7ZyK*rFzaJPMVdw%@t3W4QI?1BpsIYnTsZ&8necj7&I4?7A4A5auDB}nxAA{ zs=0Z0^BG~&^8AH^_W4nkk7$i|Yn8vXX3aH;tCpDSce!@WNv#v&r@|~gp`~90vq-=; zH;L}0a=TDYYRInk6kx6>NXq7K`jzu0`iqdd>Sj1}q?ZhPA?v(WO=Zb0st9v`QGV z%igIKow2&Z`3Xf`qb9mO0 zWGgzeXdmpaA(tmTsg>S@cEQeUK4IoPXcD$j!t?$$qE2E{t5-{!e)H>Wd*a5fpcTr; z?hRTL8asLNuWM=bL3vuM#tq7C!?u-igF;K<4O;18Sl<^NH?0R{$Yd&iMN9uKW-7&U zo6&0LFDA8jg}L~RX6ZYQo5gQ@(6oMqnTc9(Q*6&A&WM3_N({8b+9hT#v6^ql?^DcV z5?ha&HD_Tw_K}9!^h&evFAOYIhCzfg{{D#VVGL&!-qbK^Yh7^OCyeb`eSRck69Vln z+BU?ouD5E1GS($s{fw5s8#A%^Ia!VJ{;z0J>u2Yc3{i1<3hP;QP%dPMgHDJQPyYiUcdO^A(D}A73yYffi{PV!uPZ^Br>d%?WPQjErZ7u;c3ZKw!{&Fzz zWzI1|)_oa3Wclyu3#B+wU)jI)Uo2US!MOhm0bD~Ed^);?s3KU z&1K|IY8TT@bgp-5osBR&PMd221oR;-d@~5BC-r*r9Igbt8b#=3)vD;dU(DwlikVF0)(JKk3eIX|1U4 z%xGcd?ktwWYMsdLyk1LVx+8S=#g5#K3^%V3C(+b}n z9H^kFSC~~(X4xro%`tOD$t>A!R+VUxHy@;>30xc>P2fcY6*lF0Cd!uZDl zm%nz_kGt%{X5A^X_(8J_Z1ol9(kZjylv!Khc0yg7UP6C94vNKx1tmqVyZ@-22v@HY z(tfKJ{R60B#ZQbmuGB_w`-ipkC!nN@Q+r@ipETE4*MShqceP3gz!DAmM_O8LdkM*R z-e;Q@|AwMg30X6;AdYG2N6|!rY%H;hn0v35#z=H|#?x9W_>3V0k0cv@&=eJQcfmsG zg7It|z!woUR~Ez;S5dAz;dOz~z)fDpUJ7T3ME(>)imJc7{ z*e%p?U^$0;KR9P8q8cee4L^b*YamG>9w~If*SPT#zJ|Mk z;cIxShOeP46uyQ+FMJK9wEoIgon3_uP)UKty+PRWa&xJLkrN2WX-WLpa>`|<<*c~~ z&MyEwd(8ZgQ;^RNxWdduhw-(2Pin_*vuwt!c+$W@xZ+&u$&^N}Bq?&G`vF9UtVr(h zB3I5|OssY_=6hBF&KHdPMzC7ppdO=C{#nM#X3c?XWVN&5pf1O)$eK04IfCPYA$S~@ z<{rPZ!@1(&;xLm2@e6PjFRU4>m8$1Cu$k);VM_or%3KZvy2TZQsop!8w*j>Hjd0|l zd?uUAq)jTDMXnlV>d6C-Kn;}NgY!pk`>d8;yHWw^hE2f`+M~H>IBD2POR=`5T*U2b^m+L|nVA z8JGw)!l`$C^QTQ?V%^H~X3;sbgkm|M)+{*(Rp)!agE-C_F%0V&%uA7DE7ANMg4Xeg z*bj>5CSSzTJsdcld@Eb%Nd!6fn8v$OuSA&8OXw0DLI$=7WG+hsvwNIF95tWQE z|2>bG%bqlC56BO5*(0V64iG9Z7fl1ro`hk31wk0AQeQb@8t=XVzfS{2H64fpcOSX> zGzU8Kop=hOrEfxw8&8^B4%+7}c*Jy_qy}8}fLV%*2r| zI(L~Xpoyl2O&cnu4)>*08-;73IeFs)*euYP{6d4Lj$-i=%Q&fvDk7d0J|on4Mr(v) zYUl6+mb}HTV>hN&p53WMu`#t$?}XNih%l8JGg>3cS1MJSf5o;VD$++Hyda`J5X>skZ-1$!e-D^_!H>v8$iW#BQ2j$K-Gn&R^Jca60!rchx7sfJ z5rC?T&y!tZqe6&}U#F$zfukvA;e%S?F+}#XrEWxI=s{ueGD7dt@^{Q@#D0TK*hc`; zfinRg+f(NfmymOCJ`clnziL}jTTqs~=gWF?Wb~WVc~ zQY|eD;gk8fS<6FieJLH#(vZJgsCi0DL$Qmp6yB|+WwDD3dDy%PnCFJi7D&+vu{W zFu^}xtL2eVVKO{l&^pgX#8%7dUGboOO{C9GI{7NC^Q~s`V!#!;sbn@FqWlzG5;ov= zJ`>RwwdP~+cR(V4&n!O&@v;j(wvBLIBl54O)xiI98Fv2Q?=IRS14j(65t*w;-(lMm z!fXW<{#`9CM}_SQ&s>mm`f*Z^u>-bN!C@K($^vxe?h1h|XK%35oZ7UzgZrQ8Oo9jKH zL{HhLr4+p}4>7n1-B{XZ7MJMnY8x=SoJGMKwJNdNg{MP-5%1B`Powm5?2koM#&QXy z62fSH#J0nA$jd;k(xURs1VWWngM}n`>_&Y~S;(urXH?7o5N!+u6bsG#rk0oO1(5lC zR?EwRUS+7SezbxAB_G95Z#i#nutP0RzeP*`7ln>IXD&G-YO8c{Kuh0@wk=5=HLLd_ zCcs9SNtO3$l}DgnbYQMlWB=_*L~Gi>D(U3kXs!70VWF^{AF!>h6c8pIe~VTv4+s;5 z;+$3p1q;jV7k$vaDLPzi8FSLKR-)Lx+s>KW?cgCo4s@E+(jTMmYdEHG=`quE+-#jR zE3o+?^)TqsEXRhrNf}k4h(FQWLLqT7pjE>OWuVUJLqb6|@{oVm(om3%bbaA(+OEGJ zlfDKq?28e`a@?%rJzy83)oA?1$BeP9Udn7?Qg0&l_7d8zp`q*Y$`5P#hcOt~)W6I| zn8-jrp`{E=K^Qhx{yq^VyA-J5c6ox2s%%Mqm^eI^iW|M0nF9#Uaoo3y3OErp7+^Fp8z20S4S60hqq|qzu^T5 zL@+J@86$MO<+!=*gy}kCE}Jn6eusj`#ZHyGKBag4sm#YpyOAxy5W&~A^rI++1LWp& z?o>UerEfykku~Sd)pm$w5SM)1_QXYM;Dj`5Z#DBi zk5n&8{Nw<==eKQ_-ibHwKoW&B=GJ4%5UIkuw8F2IRS*dE^IG9gh3RgzLni$6Z?*L8 zxcwzFaQet_OOl3jTIyPuqLP|V*oKusUzRqs{8M=FhVy1UM$E1{*%s` ziWbemAT{2tHU1bahtChG1UB47yR(UXsaPL7;2PbRN$9qIpDk1>q*Crjm35Kc}%ja?UNE+ zmbKBo(5mXqmCy*MjC2^}>U(#r{AvD8N+c?HZ3z0h! zyQwwCD8T_p<64Lqrmh)tgS}G>g}W`6U1nO5bMYH+eZ!>0d@*H4)K0mAu12iKJi*l zw0J*Al6VX=l>Qi8E%0OtgT=FLFfYD2LP0rKcz=Ut2u5v}(Mj~DvQ!j$uoLqIFU}Sv zp5VfFE4WaH1Q$NSxD?e12H!euq#Mcw7jB`JS;2*0D!9O#RZh{3R!-roE2rp%!pHdO zjD>i}n!iB;)ym`)p5)3YYKIG4q1XYg=sgy=k^%y*@U2V~p<-ARk#q|0^1!u_D8dzY zhA^SjqW=n_2psAK5Jeg&+rWs*KhIe4G6TRR0fTxT;saj~G=I>{xq|H`uD0Q{t@dS9 zyZ8%|d646&Bv0|HwfqCfQ;Z15XUxjP^d#k3!t|Vh$06B<6;`X~osCERO^HYP(*n@d@bDP;SLnCqJ z8Tb^<&1cL#XAJUPHC|!vPW?6CIuBMnJ*owt^yoRrVnJ^*_`DgPNqpXePs%0L2swN$ zWc=cP!Pmn#U~K4;e4h3N@_Z7=3m!mtWMgu|6Ud03BoOGQk}EdBkG@oA|1S|5cufi^ zYcK{^0{sGrM?C;>)5i?;s+kkZV6SZRE6j!)Ok1AgQ5#d=uzT(iL5gaLvx#}4d{NWS z=<`psQ$mo#z@HxG>Wv3^OMYWw3u`+P>x^M+zDvB^Vml9i&JyPvTPTS^`#+gw$Sel? zeI|7m26iFu^gf%g+8({|C7-uQelBf2EHLMbA}DEmk%Eiv$P00Erx0m=@x;>Pwht<*oV>g%i0QT5gZq4&4;3(KpHU zGM%0{S+e0?{4L+kRwsyoy^{VZ6xL36FImH0d>qf%$zDc5+LsQRb%VS;U6XZ|%sN^w zw68s>ByG7Ei-`9_MM*X!BQ@+go9}uss~uDF^NYa@j!zbF)_|ZazSazdNJ{LydP*xa z=zylos6*gN)h%Q%2qxnyctI5$+MnvZKQDldnjYv{<^6|YeHp8&Okc*ekiLv7?r@3$ z{@$n`Q|0{DZ1q1OI^G+`NSB)j^1q{Fxy$vRt+oP#%#nZ~cuHl@bYJ8%0@>U*Z` zw7LG6>80d&>0{=WV`k$Zw2gD-6}!yKj+tEI8mOj;jjg2XDeNQqum}6xV0NZR7p)HZ zyp(E%Kp(p1fIcq`gFdaN*@25qcTmEY-VIdB*EbmeS|R|@sHbl}#nSb@pPF>F{MnxI zq&(R_@d*^tz^X{xSt(pNu9FXvq1`OH-$XXj@3f^$VK4NVMF74eci?-lw&Ak-zoHkX znU%q4&dFV_K2ZgHlbj>oo>I(SK=N{dPO=_0bpZsg!?M{Q;lM}C*F0z_i3Y{FJz_Vj zyF%5=fKtgH5=OM}R>Hc_Q5SZiw)l<{MW9fL5i3q&5)xOqqYQyUeHVd3l>h>TVh4eu zS6T#03T&PeR|uAE>i)li*LsbBg%dXDAK2wzs3{*wFfQvt2;K;&I3!v_o50a>xdIKR zg;*>J-fe$^Z}^v7Q6_lzY0=6u!8@o$$RGK<1TW=0dFYR%2`qS*`8&9qtw?Oe&hcL~ z%_Ka(M$VM$j+u)~rUOS6!G+=r)vzz6V+Z!%&d!%YXbn=2u`h*;Hrggl*Br5Wb5N|l zDcYB^N<`_PCrVjTy+KE-6^^RQV6yVn$K0y~UA(!KMAL^OMU!i?iPM|8?oac?$)6v; zOTeIGcs!h#C6EMRBwHBOEG)ui%l#|FJiXK{SavQm6$IY*wgeKjpsu7h0SgGU%Q|Ts zsV0_*`{W>-4!t&L7oyO!a;-SDDNs=IGj+{`onSA1Urkw_6dHMSBbe(87o8M4_@#+a zF#H$T+w*f|ng&y(KvyYAiWCSaKSc_D1m!1qChpjM)UigF^*1*#)2d$A=1DO;QRTkE^HxK3CJ{XF2@^l3iTXi7mn~ zcE;d-xkqxHG_jxNn<{56YJ{ug^0TP(3E=zBnA?#P;^vcP`$@C)q}g)P3?|Y9!sA`^ zK}TScOQyNG#NLkPvt|eVJZUHmCO$UHN3VRmmOjcJz=e1KiD5k8MycB;AN+LhIoZeu z@JsLjZqfI#D~rzwYEE2B7n%}%NclovD9;Ps&*z*_;B<5I5Jy8a!jD0}afaa%LnCXR zV0Q%$Q^XG(?)hadZhYaZQwPwPt@M#PD2+J?r^;6lReI1+@)m0Qy050bA!X9uhpn^a zDY}@rhB{3j(uu@1OL>R`o#ywPhKFRU|CUy~Wh34~1A>#KXjGS|=A6PFBTVP?8L90>k@i zzWm~S1~nLc*-0NdQt(h>q|*9Rrl$h~x8W?DNpOHL49xvb z{dvqR$Ez_9OE3>ORTCgm@?RTf%;m}BzmT}9(F~@(&C3%>bj)iL>#%hIucRMY`a#Qv ze)J)y4t;HwG(BK3ZOy4iknjcnOD;&2Qu|YT`G5QHk~E6xC88pkvb1)olwpdas2&`mWHCf#hdm=TKbLV#>8z)%+|9ejR3QaCVj?i?c={^Kw-3^ zuv|7WKS0VSS&XPc*H7s$;`j;To?v(#fE)SSF2e{Q!UrHcN_;VydH_Xybn#2+=;D>+ z^^_pzW8btx@*4K@*@I;$fWxn_kUtb~^1^3zCZ zTz(p%^bc!SLzFJ1zaLZD!sz-}we;&Sf9E6oW1a^3OInEMw48P-wPO#@F0)F8AK7rC$Z|+mhOc4Jy1ou;U2H$b{PEIsZ*-Mt1S- zF{LugAJEdrKnZg}38bvyNQF6xb<1U^g4Fwo)_XhZUHl`n2JYfxX3ln@7-?}#(i@)R z3P;7r&6obY9jbR=EUyRry#;YX2wb(teTyf4zgGH4FoS_i$C#G>Iv&w|j!tHMi8mb- zp7eCZG#--n`vnMDn9F{kw`psC4g0|toj0v^Q=#o)m_R^Ezow<3agfruJP(q` zCoWV%(#lj0m6*$iuK$z19mjLf$vju!ur|0S8k=O#%Ce{JOnwo?H=Q#twL~wC>(bK5 zj$Qqzy*HFMVIfQI$QTW2cU+8yw0OV1^y^rMfw87Txa)t34M<9{V*ddKN_p=-M23 zY0SR<1Y>b;kHq3GScFDga^#@DMc_VfkBe@7DRbVquwXe{$o>p@@Xs^`IvTYO;Bkzu z6vi}+V{ABk6#L$-2Ppu&!3q~J4Y)x7WkZ3*-|)@#zu+f5!G;L{VbgLy?>WEU<)U`sWsi zL+@TBK%8CvUie*PY&6GQhY}D=Wb2=uwPFL&BNTu;m(sGZgq7^V%b&63s~Rb%YmXQA zOxuFiYvH9_*y$A#ba%5Bw$Uk%P_kfXad@e~Zr`?IXQg=^aGXmxEim?8BNhaIUiVgf zu3LV>EJngso9=cgg_L}c99)gZI}B3cUIJ?l`DHKPgH1&xGryg(!NNpedDdJ>Ak1aZ zF0bx0E3u^>u)rR39bLQ}sKWfG@B|!xRK%~Z;+X}r>o3g?SS8z^G#eiEdj{X8P!V5KgP%jb zTI4=JU!bWVT|q;ioYG2NtE!&ygpXB%fEo;#Jd0mNouyD{4tO?dDZHnQ2<*gS|+ z0Rb~C7L=jrf(#2W(6PyyOF9D|!V3`*{)}0(%WOY`_ac&}9p*59`vY@1eSQaK2tE>B zl*0&L-ek5X@55bl5;(nVu@;q;0OKZHfu?uJ2ib!U?!GrNkV*?NeItCs2Nn zZ~;ds3n9vVH5le%s(f3Y7czO|anEWgWz{0Hbbab8Finxuz~A;PHDgSTCMk_EOYLA) zHh!()_7*!JZVn0=>)Gb$eZCoZl%-Y^O+P-F zZF6PoWDe(Ps9>`T@ziIt%e}L)*`;RpKiWBa3(^cUr|y95{S`_<;bB^Hz9A;QRR4fh z|98yM+~+6>4U%WK_^Cc*dHs!63n2m0^~&b2%uRJXKPfkh zP3?Il|0VM(E<>**F|C-qdJ#+C%E_yxPF(V8$@;nSpX@yTA{}jtKCVC?S)wAD8k%^k zmY={FEJt}$>KnpAWgOq2<=@4`UTpD~>m~`_>^yE>f{ZSwkR?v;koLrZVX}Ij)aOMf z*pnqxDR-+42(y(g+b&0BMAV=lu^mqMzn-6lJE4#JIxOj1>5_!d?c$S%sPi-wTTX#y)`3#u7N83%3 zGLZSNLc&m)o=99l#wre0lF~R>NlN3f85*n#SxRNJZ+yhgYgw+5#SHFzSvwq+j!;0z zIAlrM7l$m#z3C6y*N32(8Zux?Cf}7mun!7mEo_orT&JbwDG{X|Z++U{9)gpkG!9OZ z(iq&Qsd92k;fC+khJ|vDO0(lqS4!z;_1>tAq*5g=5v4TzYuf1$oFyDB4#1bZ;6K!t z&obZVKd+#Ov<=Ns+pNkUriKd`j3&WtWv}p$SA4-yuplN^2ELUyII@a8(2>Cxz+4ev zm<2C9>;iDa#9@G81b?B-kF3TIf438Uc=6Zx?q;9ipM=wRM~OLD2%cW;*f1Aa@*~oG z0F4?5M9sy;a47;8^FxZuBb>_+7yHyO2xl)VycP_3vxN?>hAZW`8ZLUc8s;E`QK2+& zrRx4K7nj51fWl%Z1`9(ND~?if!_ZwI&f;ab~j1IJtvcIAVm zs1btdWaM!@B^3!JZ6PXl!@O}JCM)RN@M)O1;GTxb<@U%+d`AT7WUiF)FZkc|G)%O^ z)+*sxt_Hq|+oBQXUhAaMg1Xuc{4`G#3k8s)8D0Q6+Uy3yF^?jQ4(z5{8qi1t4_SIh z^$B5k$+*+Hl3e>Wzibr%|FkYCxL*tW)4Bwe+yBq@4obp|bEr(>HGsU1nZ~nb)vp52 zx_;RSbC?ji#e~Wo9yC`UqrW!-3ph;s-VvjLLy!1N;ws!p-w>*E7BJgxbNH?JiKq)a zt~vFA6R3IpS*ePH!0b&g^=`r|um4rKVHe`0a7zK1Gm&J}JVh;9@Ew8!kt2vVi!E|C zi_JTaJPMLPXgS_WIG{OcHtYe$_kh`ebC`Z&F6U#I-iel6cNRf&8_i4jT&K=Q%+1H> zTqpcp6+YMLbLivqJ8A1~a~-zzUj(C~WZF&uaq6N(+&$FCgZA_(AguV=gtM>c1II=o zWjDShQm4#yd(84(rb}uQc$h#+2KwpOUOj0K{W@jZ_aJ|xq3{?yn@%>P+Vs<}jr;}r z?2GpzNyR1%XuG*0S$Y70GT$^;;=jh!eUAcNoiyvw=!0~E7_u|$<&(Eg@1;bc*fO^W znVFv8Yb~egcgx-863lRF>7H}u%Cp#;Ky&OK&&6$Te$G2@YZ0SzuB)c&w({VuXod;#!(-*U6;yCA}MnI*f; z(&GksO%^`{1Y_D<^*BB@n(pIfd&xANGUkM!RpPy_^Drz)#1M1fmlVbw_$A;+g#*9D zXpTSdONMb)2YyM_itw&fsd&JeATbp&ss*#asH9FDMkVd2j3G;%IEYwE;}BahE#nbc zA^*4|!es5l<0yg~M52V!tZGMuNv&0nSn4l7Q$#BK#s9VyzJo}dYfhVG$5|Mhl-MSz zQ#YC;w^ukIMhM|IwUK29j>steSljsYJPJko93Y{4%$488YTjX*9x>1WQV_3Azh@Hv zB7nV^<&P@c2m!)N7@VwdOM8$I6G+Jgaw?d897lWmNs3D`~|~@1QH8tI7vmA=4RDq6!C52~UVW)eEQl;Q?{S zoXNRIk;k0L(t6Pyb0$+C2R_OXH5Cp)Tf{JZ`Rh?_Fl$5FM(>VcPPR3v+gp5J#2MnWSA+PvDY8(X5NcO~EcFIL+#$u@y|NaVL#Q zQ!1P^CW8}qUX$D&2YSn3T;TJXWQoR|{3Q*lc=DH2sdn<0)T(&2({g57H6NoTPmaU+ zrF*gGMaj(-&Wn=87;w>I$f}}KX;(i(cuIf_UF=gQ!btEo|w*#rS~7`&NO8DNBc|pae}i6Vf0=*00?^Q zXdh6#ZQBTH&M3&(=d}B}9qZcyKWEX$?1A(h2RiX$8jV^T-qDQ#8qXt$Etk(^Cy%5@ zMn-bMm-hB^<{KT-o8y=-tr;M1P<-k{QTP z6>|AoI;kKtIX*hXPt5k)_odM{U}ZiqL~GXuf9}A;#It4#%`oxC|{B+DjBq^lr8XmTQixV(MhI+u7JZJNNnky z-RQ%S;&^5xJMlVsVXgD9Idg#NBfT%TZ+C8lsAz1mPX*04Q6@?lJj)BcQ`*fR60!KQeQ_px-jDt`BKI{2wl1R z_T5-Fz5Y@d&(H>ctefr$T94EeRA|rKQXCbWIXJ$%cqvcqyEC(M?2bFJa^;D&4sl24 zU}1D1Gn}0$Wr~C7VQxelSL>s;jAW01ZE)LZ&NJ*@;{jE66k0Xt{X~Ael)l}eDZF(Q z{)eoe+PZ%qaV8LCIvqJ;G!P&SB8vtLGl+Hycf&bV8t;%n?8GyPv9RZIjk4otgB3-g@U^b8g&WBY1kPGtjY_Cv&hc zj@hIh*cp{R*8H?~j3!(_5D7w#M6tC#q-UI(l*ZyEfijc@ah1s)Fek8?2HX1v@}G>A z#xq#FVN$>}^DOh?skJGasXN(HR#$ng_cMPej)@d|<*S)2x~Fpmh{?NM3hvHiT<=#u zWQ0=OfsRZX!r=f-&f)RmbcPrb+LOy*iOVc?wuA4NNyz>^huR^yyR?kiVt+aPg;*Ly zZ#oU;07?fh6~e524v7tOLoFNjIfl@fG(5~SyLsZlGDr5K+nCD{8Y$=_+?r4KDu{S%mZ5#N6)Vl_v zbfV;H7;CTHwykeCJ920sdyUjtdo6B6>&fNKI!a&N&!~%bJG!{zva*>iVQQIC*FK$~ zA`z<@Qrad&xPm@{WDFIiI5yGI%PTIEzjrb_Jdpuo?cW`gnz`Zr+Ye+qu$ao&_5r-e z(?r2)Nm(K;PX7+wnQ6G?jyv}6?7#h{JJXrHHywmth$&$;D<}>M6WI9!Wp%6w#*iQH z-woCB5ab@UcXzOASrc~W>QMjE=>f~|sytoAncv9{?j%-un$!spt_qkK>h2A3{LUWr zzmMl3#K-|ZUO0qZF2&LQfpkYZ)U)hJh8*P`hlr0sj~wPO5s+mrJC@BAN=MxTfcjW} z%an+AF?uAS*+Td!ja%VJnsvlF1O+IKWw&;yIF9}eV`-8iT$m{4wr_p6-o^M?;19vRj( zf^Y7`st-nUWCn+e*%FR-BJ%4669)z5kBk*Z^DqqCp?3vDU&tWHrNxk`kL5)uGh_qs z!z#~u7g{N+1Nt_IB|n@WnLvNhYc>U(Sq-%~KoIFIy13FK`*vG}yaUpmOt*=N;-Dwj z!Hq=7U9g^lbyxU&crCf{DQG}s;tm!>^yXIKsxSYbf##528WER=$ue04?uS* zj%9~%{&c1|nqg>Ws^Q*=;y45XI;g^kK(k1GkqIIV~zgTQe3v<#Jw zD40d%NWT>u&a)~m%*}QQdaB`}!cZnZTAUm@Ohe{8CbCJ-gO?8EL3YKXE<9z4q2eO# z$qnbTB+)WE%O3zm)q%H2RC^r8B?N!$f)tXx>LA zOP~l#&LKRgH#tGQ?rf9>Pun|G7$}URGmOl60zOm93X)f|0S&+ppp2cM5K72^6`;98lX$qt zw=!AZ018?{9=B4mBAbRRYDd5CE3<}nP^2aR1;Ca0@%(5mEJ7oAPcEH{v~$Pvhkyp? z+ij<+fTbAOouduYIOc=FC1RLI2FI=K)6toEIR=}w8Hfp$$0{0kGK}g9waAqN?&#~$ z8Q`!?dr{UkV{YjKJ(&@EFEI;P?L+Jg&gd)fjuKVT|mw{yGHWk6Zz3mBqW%I zT|u)x3eY;=KeA_}t24c4q_?vhf4jDBroSEd)7jIzxqC}jZ$}S)bkLRV&aK^BdpCD( zr7Kjgv$v~vYv-2U?slp|SG(IgJ2!W=Z|U7ctK(1^_bJK36#(KGv4 z;j}!p)}h^OLHp{6Vh-vR@Wic|+X0L8@3TK|CY*xsCjhlTM7ug?X)OiG%G1|e88=4a zlKX~dmVpaQNj^>_+yrWqz$8V;oP2hKbq@<_IQ|yCOz;G>-ad8%O^y=Z&JVPqCm2Zr z+(ru%KSj}q_FC<+))^by6AkL-(ljK#Anyd12~iB80Ykt83Tbc<()ej@OdJJ+8i0%| z9R{XG87)|$skK?;p%Kvt)suY>9`Cf8p7^Z1tKK98S{-T0sbU>XCVL<{#R*p&Jt&Q@ zs9AX2gnDlsICNVb@-PfCiM3S+z|@J+^Y|LzdjK|5V3=F18PE|FV`}+BySJ!4h)IVa z!^VtYtS)FVOZAX|!`$RJiLIlcjgdn|;1hro7|-wfN|sMb?e*6uePIMkQ64` zz5v{zu5kq_GD7#0Cn3Vu;Hx2QL!u(u7$K0NyrfpXGdNjS+d4Y%DyTX4OpfMCzNS&@ zdQnx8G`OFHiiD4+4^_r*MFk1!E&&wRGC_a!NnH#B{V%v`bh%kIxn`de;Oia` zE`w75JzzwsVO{GWh1ZwoZ1dS1JkMp$16HQUfK#)L$OPD`rN%N{+;-T4n3JQhX$Lxq z>H)iFZX&oaa~KqD{S6@vDk#a+_TQ{p7OfGs9hl>j8e=6SCO+f}^W1C-3i|d-cuK6D z5lKAa-E&1j+!%F|pCVx7vb)zloaK{)rG(nxTj_NQvTpF00WdCg5VajD(mIA#wnc3| z&+|xqB8J!r)F|5z{|rQzVw@J?48Z*r2|E1Z?b}uTw+kV}ZpjTs`T*KWu)28K#)@Om zpmP>JQGpX0qe^ijIS);&L-2H4x17^y*RxdfI*WpmK^Q}Xofk%@Xj>)Bv&?9A1hx!` zDp;D-1aI=L*j{c1h1^N5#SWHJI$W@T^lTQC=y#+BGt-V4?_L>HQLP*v5t4mCSw;QA z`fJ&rQ)#__cRfxPWnWdyzuXi%I#_U4H1?ot zVJe{~!}@`(G@cy-Y}f$EcN!La`E4@|z$2wj zcC^%gh<&$SKf2&K?AUxDUwYZtevbJO*(I~=^TtYX#%Yk5p#YS6Nc`$bGj*FuyS zTFoFDiI7sxqt76%hh0oq8^wWgi(-A7X9f1IZ|hj!)-IZo>Pw>J#7P5oez2=g(4^Yc z%Q}p_NXY^dgDkx<4t0Zfae^KBMDC$5AzdhFIuO&zVyQ-T#$grlOr%VuaqjZ;8j6!R z)R4Jt&mA}4v?r69m^_r}&tSZXrqtDf4pdtw7BcaLxrdVko%o1FBHpOsSFoq@;~ZlH zQHR(PU1kto6F?CQImYEVo=_MpK`9KF0yrmz+ivMHc9HZj!cV3j#3ngEv#{pafFQlO zhmn2)do0+FXqyh;BZC%~Vxmox*BQzY`9O-mjgaE72=JtV&=cG?YPobA%T;U!SiSXH zgaLgSXD6V@wHe?UP>$oypY;31fxvVVVoKhQy6goT&%-8hef%@Zhfsy>b+VCS0bk#| zpib<~U_C%Lr|vi+5?sAJ79hw{Bh7CS%%oex02?1CAKKo`7zkX6(ewZ8%^ab3THesn z0fz2*XZ8nUBzUN+G_FpU#4rKv6sW;bQ<*`4Rxqba-Y)*KD1yF$;v|gS9bjPu#fq^J z8oZExq3kd04P~Hg3ton$cDOjn_JrR{i1k^;k6=0Nr}a9XXRhmk%;3+ms2no(M~OGFhQrwJc&ib16W52Aqu;|lmyz*OB}DydN`#|Ddc^j7kW z2+igW=T(WXRk7(2PixgxBv5HXW~!7W)TB5FzbjmbH;oTj*1ARWQgrtt>QYt|^U?z) zhC2GIz9KkH{z7#_h$xZ>Ce&8?|Nh-J05+aRl!!ShIf$y-5Sa*IRfA^~Qm8Cg`O%n8 zsDWEFV0ugDrh)7jL>9aWFAnxUknTbto@$%55=oZB&ncjv3A>8!j=A5*=Cm^}aR3KJ zMP`SmvqvYy8Ko^$K^>$C3rwi(%dL4)4|;A`I^-Y_(LJ)JFd^En%L`0d7=$pB4Fo=b z7E~|9q$dbiBTIcJQFYVFngSA^Kr9oEk1FpEMmd1Tg_UOFt`vG|1ND3fZ=$?o3 zEi(bnY$Y&PEGx$@sRNs^p&_&%gyBZ$xD>N~;S5U8oEagj4naTGwW)+38n2r1%lgA_ z7?=;3x-OQFIR}*tBJxJ9#aR*>V2_bQq>htr1r;9wC>GpxXu66yL^{V&4snW;zq%hP zga$`0I))B3pddRoMo1oJ0cp<>el$+oGN9GtDm57E3a&wD76F_#> zj9HlH#i5R|{|!+a8G=~R!ZI^Rd|}Q~A>b0K5{G8R+j$Ml|HRlMYIHQPDBCzVQQiV` z0~j#N;64)1?s{UQ9#@|=+f6Y%q9%onrs;I&a0&0HeTnd5SpbXb6SvXvv+Fr%Oa;59 z9xbm9fnX9RgwQy0flQJogr1AVyN@rT85Liz7E9Pztfe zZ74-_JY1B=qpNd$8`P@xZHSJ;A2>by*f{t=@Z0l=^sH|~6+bQx#kk~0#o_lB`cGrx zFw~041qU_GQl_=&2FwDWSIZ5ew=zZnO}7mEx3OE!bVj^crxX$)UG8XS531{Eui6gU z5IrCk6&!Y~0*o~5q)66%h%mQ1^N5oK><=c{Hohb=_#h))o}m@stQWB zpXtiK@;za*hBzTP8J}Z`5?~|Nbqj@=RusE&csd}9pra2ULUW*DY;xkTbtPsoa+sjB9h1*=YTe6N)kArRWnX@D@~B6dfS z&I6BGrUWd10?OzF@$4XJ1hkXry@%w#Hs>w zrv{5?ogEo*RnzW;alD(?MO;8=-^5{TYO%4e*tu-85(K+4QV8wmk6!fXNaWtuJ2Mou zQ|^2O?E;a$C4-#<0k0%pJ}XpBNnsXvT4%>tA)m`n7l6Nb3n)W)J43D{V8iyReR|qc zwD;PC6flgC7i0vkw1|1pHmPb+E<#wdq8&xDzuseZHE(v1*%l0}BEDi5qXx?Fm}OEK zyWSyk^;=o;kTSm$#xZge3xZmGkJx_DJMR$$XdYZtBxwgIx(rsPsO<{43i}4x6G`47=G9mL2v71HsffA9;+nNn zA3zRaIi0;W6e*j_VGCx2wqCQs*y+YZVmkKaFdyViV^2=(8uIoyQK}=y^%FlTUIY+& z9bm@DyhGt`l5XUlhRm%Jvqa33)OJfoaYWeB?&wiOhx<5gn={}H7l#^d^BvO%-5+=1 zBm$@y5GCd5Ci)oG-Qgd?De*wKL19qX7Nj`9Esn{B;5al+TWx!XWw#2(&XJE%8drUW zGIk4C)H8-ww`d@v2O|Vy*Q{BDFcYc}>bZpdIL?;ZHd18@NKgRlI@tMm(+FfnXi6M_ z4K0|#;wl3fl$xG4>}sw)f*CVvpn8(8%!ewkYhDwTAxq!A=(pSnH;j?92tuqVYSRa3 zZw`0}B9f5SX=-|m%mj_dFI%O7QAv+cm;~|xamp1h6PJfHx6!Gpv@>!fJN`O}i>_uc zs7#C=Z;8sV7)Vt(l+-;{Qd~<;Co9kw)r;6S6W)!RBXa?(GHm#R$Vg!$W&-sQyJm{x zN1Z?xn+lHHT6DK3$cd5zFYoAdnTam3=b5oal@i{N1+5A|5iH!gbJZY#D?g5;I+eX> zuna)xOw*+DphU8i5!TTyyBu&yG?`kb8(O2cvyBr$_{>b=Kr3%1vYNgH zG_9vuE|!6ua+$+z*S8U-O?aoDIxeuW!k2E5tD?R|0ZEL#Z(fog8nAez6dA!7DJ6F> zGDwgF14lr12E8q)`)szmmps1xqSz43JrFoEKOp1JJz@9@n^Q0Wyla-Tka|ADO!3e? zlrbRdF7W`bE1TQUim#QrgG{^{jYkUt6?N&_G9CyK)VyqZc{>efc9h*Tl!Xt233qO% zti-SxqT37hPs7tDRVpeWTRmu!^cLW3Li*#NDx-x_u+psoz>rHER3olIXHR-> zx2*393>f#2ag#feb+XV>&M;nB0-*8AV&+maT}9+&qHu7laMk)aFZ`(*A?)_H>|-M_ z?UN8K%*%wax6bSBeu&vjQIOrE|rbLXc;OCj3&*EA8p+R@9ZtaNFZr z`_MBuj#Mi|DC#1#dwv4?UIerqVuTRuETH|(sSy7XAnGioSv@Bx}n z&QvH!stRzCp!OF5kvMV{`eg7|$c5q*a=aJwpNevVx6Wgj{1LB|qAnkuqE7jQXcy!- z^i3tXrg*SjOWLIH^6ZAVsUvU+dKyi&!y*FXttPz}r6gogZk+N)Phz$7G=D@YZ-;Q5 zYaQ%d!-|D-&2g+%mDZ{kL>gRdGE4Vr`@FiNG+b`>0+RwliBFC+9m!LPudID_HAso*kr{9%`HtrS#@>c z39_FT)J9W>ZJk)*2npa50`ME)1Z}h8m(;q%>QJwEJ^K5}_|;@r2DwfJ@JJH!V3Ub7 zStmWjO=~v+c=0%VuTD}>p;yPs61Pz81ZJJ}+V}&H(oXWY!LgZkISv}v^RVi{Hh;gb!vy?6T z2rRT#;`I|C)RRBP(Kh0Nt|~BrMtjuJct5R=ECVl2AEpU{H^PDXlo^etz~a|(PZhrg z8;6{(j5dCDaketYi$~>L9u0V6Go5_5w+-#RK~ry{M^@b)xWG;D(- z&!Oiph_Z0H973v9ek0B-_d3BZz&c~Yg}kgE83f_eMwlTWm9E+x;#b~dy%UD8M3lEh z5_v#vHdni`kI1$ z_J$&0|M+2nHP52*5{HC^pzL{Y+qPjzBm0X`w`4w8-^LpTB6}U0PG6H`)RP;UA$!^e z_GWJF-vd*^#(a{xL(vj1oIQl(u&RI5I&|u(7L}@=oSd3~N8$C#u{Su31#Ia>;n%|< zD*NS(7PM&Ar3Ta3|~6#;KEvs>1#ED%&>RnLYMiQ0)%5{~5ZW1M429HX-CD)PkH=KJs*aCAbD zZxGDJ^YM2x=vxRO=$c_!5#0)zgOBR#^->J(0rAi)WWWc#lXyuZR}JnW&yMLqds1 zy$i%s&9zYrK|!OlI|%zj*`LyPAmusDC_o^_V7wGZ{iIWNlVdhbjBD)BI50N5vzN3s z8dlehI@^vH9UoN^SYFN#YXa9gWsuW1`PpL$AXj`G+dT_K?8`W+3H3so{rtJD zfEr3pB}EM>sv57DvQNxS(3VnU_RedT%{W6GgykbyL2XNENO6zyjSRT?4kkz@A!mb2 zdAbifh%XLdyBX#&9aND%+AxSPa!WYM{=@x_zU%cl|3wOd4(D{v2ZjyxWMH5Q!kNUjJ2wmd=>gcfr;0#>9oGV2aAgWzA^7C5jF znbB}=AwfmFQ@Xx*6~!iNA36>m_V@(lFs0oXoRS!!w={}wUYGmrX$6X$1>oW7bVmm) zTbfyBWM1G*rG2?sti{>9dBh?qm27xJ$gTKB_0 zDj3?VKunL|@HFi9fP@;PG%U0ru;-&*1MHS=(ApHE-J5C0frx*H>4Z>2938{D0bv^tN`qWXb${_Q1lT>iRv$~Oou!8wMGH)E;2rU z0uKde;ZyB}g=({vid1ux4CJ(7B{NQYxvI@e#94&FES0)}uXb6gE0Q1{QSgNWfl|s` zSyf?b?WaGR2&O})?WwtJ7kW<>3!L^;16mDl?;+i2s|upoXhmKf0^wNm2H`kDF-UH9 zB6P1m+cnyT04=c6P~C{p9PdtCMcKC0$QEc`9-m`IR;#?Hp6I?-rdLN`g(NE_%C4ql zm(ziJS|XjUcYi-`H4NFXl83`)Hvv!dNYLB4ppkA^q}B-_E3MYX4z1j3vMTuy2#QP=~7U={k)V8;l(a_zci{{Q%cbwb|rC z<+E^kP1icvo9($$-b6!drEQ*}#7^O~G%-8o0!V~)fIEIYVsgPqDpqytSfbEyDoC_$ zJ_6O-HT8lpfGrd~Lw*e$xj8uI4 zpJFQ62#CyP!;$<>$UG8qAA;$s?}tXDD~At)enSP%_B=A`F17Ka$Ui6PT^riXwp-ZWMZ zgHpv9XXC(U1CU!0gYd4i&iuVtAe`ATjLFCAGXc&M-ge*=LjUY1m@R+rBr+A#3F3A{ ztN2$`Iw%A+s~M;SC}(Ycd|xxEfQ65wDO!;8e6bL#rZ3iKck+>>)mML=%96+SGW(DW z5=YU>G1GO>VMiw;u)LEIr&!DWhuXPK_5ffCtPwJBKmkjNo$)t*`oKLNr40X)cHMMTni*%y21ykX9KtpT+laLTK<)r%EO z?+|>$4NmsyAWc%-M{@6cW!fRXan9IuA4o z(pJG)vH9R`q|y2~@;Cq=6-14;?W9)bHP_bHETP!4 zjmRNOjki>SqR5XHwtL)Uvvy$P10HP!njAeKoW95AQI;cx9BC6}cg-pSY;0D!!)N&@ zvE-^WD?mH`8gzw@s+RFf)H$)BvIEQYS;2VH;}D{acjZ9NW^l?POUG|>=5si`2iU)m z9qyxZE)`)|yVm>0h&5>pTTr=_g+M0r-QzUD&I5)d=4L6Vsv%vcDqWuTuB;UVPWXXb zAvYsSer1)Bx7M&>pyutP6~t1YVIdywZiA(BVvz4`NYjY z+`+mR(1k$iN}Om?0VA}f$S9m=zJL}?{zBs%b5l?ZJva`t_V zkDWiP@dS?etvpPDXG%uv`#r2*xOYY3vxbeow@9}YsSLROdX|MAwn4x6v^sit;O!lq z2b^@5SeFGa|JC(4PlgAiisfIwn0M0QaI%UDOoNvz9eIYs**!-p1tF0mTZA@nK70OL za0o-o1bQF1kH(z5I54h`c80h?wf7;kkxcFG9Hk-+F19F%r=9cItt(W({cTroqL3dx z2E{os&Q5P!V4yuX0-lRmg??&F#PLS+B?-;SqlkCr!JLXmIgE;rS^`6{xLz2dW<`s1 z62_z?L8KVvP(NTBW3O66W?1DQMtO- zx91$D2pBK*ewgo+X;z!<{y4C7aB>^R!0^tj!WTeQbUfcEJFsRKq00fUQ3;CdE*;lv zP$^>9cO^tbg$rv5kTxS`h*_Mn+kRd&o+!J;r4F9X3DDrP<1kEd|GkKMrS8az4A%{S ztz!gwc)KIIK0yiTgRC+NX;&^w=3-pFGz?+IjdDFCkxDe&UR+NwowK(uUN&mjPKSls%p7%b z*XI}JK|X)kPoLheJ4k&QP;n!^1s6$9a6S#(Ms8`K@04AG6mdp_F~1$~D^aSViHYK1 z$fL9mTc0q*bov%$Z7(}}D!6Vcs2DjvAGJ08GC0!CLl||XhZF_G==u@X-np(~QM)^e zT${1M`EeJuuXfUO5K#=1K#)Gk1u4<0G`h>40wG2xhle%!m29S_X1GdxnK0er<&Up- zHCe=n_T+&}z*?J_9EYEdy03#9*>K?VrcfO$e(7%`ZI>@akv%otpohY&8|PZ)7N zk`2WXSc6lAT;4wz!5`Dm*g#dlZP88~kdo~7@b8YC5k>)P8sEUUhFUaRRaf`ZG`OyM zj0rcy+wth3TKvlA!->2@3jCwhY7ReA7lHD!YP61#4Fu_j&gR0*MW?vn{ExJgMD6Sp=r@@bnVtQkfNgbuR2@1S1&;C2kecHvz*M8OhC1SX^Fi%F4@?M9r+` z&YNEgo!`M+`ema9nD-+B<=s9xawtE3TOP)$Rmq>9Qo*aiLydzu@N3*6E4}-Nz-;f-}(Z71zL!(s6tCme6P^eN2hFJNf2^HkXpyUgQsD~QT9J?hnJqV z(68D7(qCE4l^{jRNwxn@XeU+&a*-4;C9r&r71B3h(`{T%1Q^JEl#r|SM$v$_$5T=< zchoWhJJafft}I3ajDqPKW5$7&8v%twP>o!S4*^oIN0~N3+&jI`Y7>l7#F%cuD1kb~qXdz;3%ksm^?5OAk9NO? zdq>pDsxJn5AWwK2;tB(Y+tZBMWd)TXux4d4Ywx={Evj{6R)IQvz#Q|UfaZ;444v)) zq~KaOPLk^Bga*2zEZo(K8V1SsXDgvvOY0kOLD{HHwMy3-*$?4@5Q4>V9Q@9)=h*&I z7%4lSv5Kw}FALPybhYi+Ieku`b_0X2;!bc;XCm0r~Fk6Bdo(R2+I=C#bDAI6( zx@VV>xncLY+NB>9{}?iKfE|gxRI7AI#bERy6;Q;du}@_rJMlV7aKXMJ3JIXiGqXLJ zIm#B1d`5MRtqr)P@ucY)ogUezGPk0i;zgH*Ff#c?Knn?ppddxeBAmH)ZYJ^|fP@mM z1+(7*IHz5DvS)%QI+WK$Rln*%Do(7hr^H)@(U)a@^cUR9;GM&hBcs$P_SHyM?SM4V z*V_kq5%dK4@a832G5)FuA5`Kn6ws9mka5O57bUBj4-YsrBfdx$j5K6*@{-^_Bg;n! zqSG*8i5K7#pE*4Ng5<0dRCt4m+0ei+iX4jcsx*)_=2&KY@fHbImE&tcDUo|yk$%Z{ z6@YC4X0*=lYRaP>Qte=1fv6tA$TJ{s_y8=-hQp;eoj0&YAT)JOiw6J+{8Jzl(070$ z@i9)Hu77WPM;Z85d!&-e+zS~V4%vet4o`Gv{-s4J{cuoxsT)CXK9BC#0k4)peDF#y2)z z#4)ajeH)#^*|?k#l|xc8n%=H$DC%`>;xYtY|#CF;+Q3h~=S@z9-~%v zS0}IT^=(~SH{(yo`nJxV-p$=xx_Uc$*0*)wx3~Eezfq;Lx2tz+=a$~?b`;}McY9~& z=C1b5J$O*Z7W%KFv%9OSv!}}@;AabwGPY6(ai){{=!|#N{3!K$3&~}-$of?fZdxsp z)F$zv7!`&=BG64fp7;4Ti0y_t%tdb_Up;_94=3r<@HAZ*I(BwRI3WX~5RDrpSdrAv#cuaet@E)BA_4|m%$a;reAkY&kPQPndvvs%+_`{ zhzLI3bibZ?&>OwXf=U!MA}*Mq;DTn{5Qqy=V-$_M#_dZ?ByNd1t`Xc&kwiuP{#Es_ zyPS9LTW;g`<^5o)PrdWbJ@=eCRduTB)EOT4{g*25Ni94@#;!ssQ!_Vz8xlzWJev@< zNI(;hKf}dnasg{3^;;vAZUwI!W6UQP>KMTocb~CCZ~K)wPp4^vmT!}Uw-OyU4#41P zS5?$^OAOCBbLM=rm$sM8AptCtOyx(Ed-ZG?*UY*|BkAdI`RPwdjj~U0xi35*ug4?g zF+=Hd>6PvJieU(aplcwz_){G62uS4xi3QEjl;SazhV`j~%;gZq`hYs_a-Xi+Hh+`MwMWPQeU3Rn*Vdt5WOU&WEhX|0PhA;rx z0r%M%XiSg@jah8KQzrRLs){d4(}mIPVwNyLYSCC;aIs6Uh$eZIS9N+07PY3-i{j2q z&4WS&4ScSKln;mllh;DLptTH*U!t)*5G!2S7$21pF@80pcpL^Pa8-9)3(%jt6fzZihCbCz=l$bePU{Yd5TAG6ZH#4dk((UA^+R-IP8AE_l zCrPu7C8?+2bZs&Xu|&06f+dqgX`8Ux_GTA%xiO~O^%w<^w$lUSJJBr)I?wLIrCX^a zO_@DaPnNB3Ggg&c*x1%30$`P{BoZLn*+%yOVmq9F1~xk%sd@h5X$%-jzXleA+Vya* zEzoX9PB|GU0O?e?UuQT*Q>r>SlW5t`R5Pn0loNELJM+LPV&|eFB|X^^ZaET8ojg>6 zW1A8Yjg&QNx?RL3Z4Sl6LB~; zemT5b)lA5K<@3l+GcQq_CC|Nko|-x32z+^9P;!P0 zHQuX*5bBk?vL@=2HJqGGgyZ_%EqSjW<(3U>G66-#-_kN}QVs`?7VDT%-{7mQ!nBl# zKUy4cbPE>rO9ax_#_O6HwF8Nsj{8r$?Bf7SWJ4D(XB2*)q|MkjctYeQ#5w9ho*+@+ z)p;t`M0Yu!%*K3>Q~c8PT{mI)k8lVZx`wV$`3t&`q-2|1tiv|sby^>_khBe_r%qZp z-9DqL$x$@iwb*;+coWTtkyyTg4aC`NY+DyeR6{m@1SQ&K6A@wH3m9`?0rj_yJ-4Tq z#^J4IlB*zi+;%>?FcbE(>>*Fyy4U(dk!fAchk{_e`cv4nqjzrSGjCzRgl>V2R{FYi z&9s65VLON&JHn}r7>|kSHP0Wu^}i4h?g&W)dl0P>5AH(U`<#GPC!>aaKM_kf2Et2H-5KO^w@n6Z?GY z$Q1J->9Wi9Y?8;;aU?|U0z`KfW~;k!1V^sYY7S;4pYX&#`GIrN5*SW&d`FhT`uYubVzxid@;dSLmkw&}qaK6c+4@B!$k7QvCOL;_r#X-!L0` z3Jd3^a7RW>ARSrsHx%6H@1?v;l>T4a)pcOv;mTxW1cjd@N4ayUWA$? zolLz~x%bRCzt1z=wBIe~gydcy-(+Vwo|?C~_of-8Bipd=%Bt%T@datO2ijny;n zTJyv>KQ`akjgyM!%JF0g$yh+9p_%H=`Prp8@C18ExXCD&6EV!a!Heb*MBykk>!gEjVW9dlkG+UT#t!%{8_9;0QEv^$xD#o?j)l+F} z1#Fgo-9JT-Zp%sYVeD{QDvc?^OT;&+;=R0qhh_yy2n&wd4c#a&dw91e!XeMdrkE4E zFy{gY6A85>$|9j(ZKVJxox2c!cF@Iy6I7$<_RPX+T5qyi1uG*x@Ww_>A!!pq(u-tz z<9lm~TZ?6#ppRy;_0VUgKg)=I<~LNXgf-xL@aPI;L>86%Qbiqr=^dIx+EzrjMDNOW z(ukKO^J$SCFRk1)J6&HnSKCvcTDf^?eqrN@C$5~Gom*)~sZK_cBjg~ePn^t%CETX6 zbLGM=?moNi9gfH7=OMh1@`VSVvZ4xAW)JH7yJWuHbp>aQ9Sk zWdQ!K*PtElw3ND9g3%WT>g{6VL{DSSTDMPEy`!I(F>0jNl=9J>& zV`Baq0r!HDN?X8d;NVE)*c{c2xq9dFEP+M805@iG;yG=7MQCbVW0Il#!LDIyqmjW8bc6_W7b!;xk3=suUz?1D7slKZDB6Sht8Q9Q7yO7vv+hQY??X#7gRN!P3 zmt^V8ZRf0jN>lD%vG$a{Q+igMJiWLyQ$I~(FB{`1*5=1|owj$)z{vysD^A|I;^gh9 zGg({MHv@Hfc4l^I;pC;6J@7i7yr{_`@Fg6kXMRF6F9-YX=n>3ySjLpg^)^&n7gqe`N-30n9 zWp6L1JG%X(T^oUQER*2;MnKVs64`Y08W9}YU%*Md@m)$4O(x;aVq4Qs&3;|EDSoED zcX1G>epL8mD-^@!{;|e%y)rooRZ8@$;M}LYL-M?>I@I-;TKL1*y&I8wPjw3{bRH@f zJV@ldtTylt+-89EfAjm0&>M##sg&=YbAo$l<3-m$ zh4(}1{+w4!UQCiS_O$sKbV}XJ$h;*MRA5tWdTPSK?laKlK?4hO7_>U}5b~{#U0?4m}D^wa$!J(uun1-&0}1#*OfQ|E~dzq*6yvd zEpTmqrDUoLDH7wb2k4+l2dlg4HPEgGMQCiLAQ$YUIT*PdL>7#^oJdDZYZGk`ty1FN zlAQD2Bym@I5fIU%|5wb@-!iVSJvGx_9>2x1DSj0MV3Y}K)aF0nMTSh`$RZR@4ez6XH|Pp*+eT+z;ZZ~i>v7`l>?3UqqQG>+=8 zf>&-yuSH21irbK>nq(5ey`VrWw9JR>(CC_Aq%y*d+m99=5vD3f&QI(BP4J*i61&dO zP)iCId4O3Jxzh#9^qms=+H74EF(bAK_Y$*P$dD1Q!A=&RiK-T>MH*I75HpJod1kzW z(chPQpxq)nf(jt>PIe;*57uJiEKBe(lBrLn z;b-}cxWGLa#Tg5Xlvw*cG z&E+rsfZ=6K1{MY0Gs@E5)1(+t_erW`opoAMsUtvQUgjp=E{U+UF=(?^{Q@)LeUVy` z@QAd3w@TmYj*d@r)4kZt^*Vb~ogUxlAuCd|lu1u|8{%B08xF2m@jI*VlO{UnT&ZJ5 z2{TD|t@z2T%WeLA>Js#pv1@21GLf?w$tVduUJduOJI%#puqq%EH>csJIN~upcGgH` z{a|(LIb)Ucs@t}YY+b)aUZ+rRveP$*g1L+7Z_LE2lY4>ksM4E-h8aCx=OKfLcHEHUt2V!Tlos6!niQ>YGRg;mTi@4 zi(;nF*ea>DHugS&FYFOEijdX?xyc;mIg>wd1L+Xwdw$5P3aozDFrv*!m)uj9A+D{# z_DXE~u(V}}O;mx0ql7#@({iP3i6WY;UMNX->#m`rAha`o-jmSU>XFkMJKHI5` zuIbJ$5a(BmcL3%vNwfbplnV_z(aDy(w#cScUKQ^eButvu;UX6VTz9pZaodGtu}ybq za!#AJM6J!(YbA@X@8r{Zz}V2%%3yWda98ghSr1dHZd;#Vtdyui5~!lMh1VUdk-RsF zVtp&HmcU&GH5K&Ij7X+ZEhT1@Y%=^fsxfrFuL-hP73ij#@UY%f+N|iWI6sc`CN#Fn zC={E1a1ayZ6Ik&Gq*m6jR#rWX+mo|hO})0Ic5$ZO;xfmv?U@tIq;Z&<$t4KMAe4pq@&te5qSN%0cXTnnSzWdZuB?}0g}AHUo0O4LmS#C%x3g(d`n4w6sdRUgA&ku`5v4oP zp%ReZV%{shl4PoX?|J83s_5*2vrkFr(JXB)-Ki@raz&-~Dxtm)-nv!pr^g<+|(przc4%Bt=})PDE!FB975bB1s3V7=@3MkQ+Q~lukOw$2y3Sm)#P)YW+s;MGYpGG zMY=C)whUh9xoCb}5P9b#8r?-D_=XPi@~q zRb4|EmdNwQQSEZ;BZp5StIy@`&r|a5P*8!VHN8=w5wsUeCh!VQkW56&NUCsUoU|gu z1T&d2BkkWoO`BpLPbKPOT0i9%UCxaQvdj%>T8^dYuyF77_L6|Ux?yzau&K626S49o zJLmMG?`-|4OGYGgk_U9h(X$2Ju6qtk z*$ryw&L(e$Q{UU?Z_RBzs!dS$RBC=v9V1kLYkTVx60Ba|H#RFw;NBu(C4$gI)(yiB zPDsb^+8k~vh8M943471;dB^)BRpHmQH6S^Cw9#iVBbdd!XtN|MYSU0him^D_W1B|i z=B+)43F9i2P2Z~qDAhGY^9og?4o#sQ@9>Pb`B8M?4GDqRwfIQ-NeiZ9Sn0Cwl<_$v z0qJ7?lLvnTX5U$f{x{PLnvRWBJO$86ux1n~Jpj%Sb+jA$5>aHs6Yav?Bp5f-nH=)p$vAh% z_mie&Zfk(EsMcKEJ!BTjsJNdhPQy-5g^N0KQohrS8JfPWE6-8TiwiDgX@PTD5 z{@A492{boH6TSwNqj9I6?bBbQ4NrIWlx75l-d)9bJPmCg?19iU5!#6@M$RVO678j6 z0XkJxwfPWXn;tXH#r8uG;u0$qs8{O;*AI_TyTXL1eN0C-%WNMrL-@$x%NA;$Lj(XB zN{15|U0|Fx-EUeyIu_}89X8dG=cc79QH(v0@7`hDxntsSKNvPd>4Q;C+nv~_!qb=< zQ4wJ+#dRFV6KVsAGtt@M6`klZ$r~ly78xsxVH6S8UKB)yVM$NxU}e+#bGD3$`Fdj< z`|2X7JC2Q%ssTUkauz_qvKUnQU>vgjvwD-G>I0d&V6(_g>3(WVNf@5-$j0=r?iJ*v z3yE`awWoHj>7X1OUajN8y(##_kO#kp0FzAjaq#%AH942G89t`%qiS%G#gs9ocI0M! z_q5Memkba?*d?d#NxAHmbKHS4yHQq&{0nvHio0rnotPFfMp&&RST6~>K z0E;Q2aies(Y>@1IJ8Xa~q0}mntxfQqg|np;8}l**0vZqnhP%LWz(qZ-!+< zJyQvq?0gf@#5EEZ0XfOVOg-BIpb0AR8pd|TP9uNoY)X&}Q#*Ay)ZOgHqYZhdZQDqS zdkMO{t^c+uGDF#miHyC3Dfg<7R5WdaJu-aJjTcDN?PsK=T5BdaWh0MD{$ic2c3q<$ zSJ7z@NekV*S&Ah$>h>Dm!**I`k;7A5cF{htHHFL4h*h5Ey$yVanZc_~6rULPc5j8$ zB#jwgCmjw&>ZZi3)oiv#aM!ew6o;>h2AuvbGJuk}I_!#`d5HrqD=+D9&EQrM~y6i#E%Ba@`HiB+f6umpEA&qz^t` z7hUwP!#fu?<0U~S*~Ue@C`K6Tk{5jq4cnpd3Nnw3h;<0=R%LuJ8X@Hv!kaXn(yjrN zxsd=-{v?`aK{pSp?<7YC8zbnG{y0iC!8T;OUPfO%qidWmE~t?30?We+Oob<^9%f%w ziM_4fkCPo!6+Ucwcwl&{wy(`yS}kd)%Q>=PDMqguH^>Ni3BhfxEspO>9(N5%z8vPk zzSyRx$hao6A;b($Zf*2AjAk8D%MCP@!q+u|+TzC`8}IDg0=7&;a;KL1Bo~krc4}xd zA70tm+xF0!tp1d@SZ;L~wzVpkcj0P5IrAB2B=RS~$XCH_W@DOql3L>5Z-+A(?(BN@MX<_hdb(iUk%FH-b7|)oBT9X966jHxQbcl?(Af+fgAQg^9{|DIwM!G2!!) zb}EXcZ@q-$69(muNdrPdqF1ns$9b*q=<; z`02j51zVDBa)L9BfccKa1fKl@(aEnxV@wIXOoUEV^KNYl~)GZ!^>o{KZs|-EmC8bf(6`Q`NqL{3W94ts4eF^#mdksQSNbcQ;qiAl~<_8SS-b&j<9F4&9ehEcj? zZ6IfMy;5yjQ<3T2L_QAjJIgCW0~95w9_{jqt)h%gWO5S9iM`B_s0%Yv4TwY?q*gmT{O0CIl z6yN__WGq!BFiSCWgfSKgR_xZQ-Hh1ibt;27+J@m%Z5>$U3e>;W99E9o7Ou`iQP)ulAiR4j01Tl z3{P^}Zi7^OV;`Haax}8soRU7ydB5vR-Ivhp5bfOYW7M1=qMS#mCH4c3GJR zF@}(?U@wn@X0s#IBioTJs+{?26)Y0pD5e}0u}oDQp;<5y(}SbdxNZwN9WO5^q|!w9 z*>*Y(keX3$rYZD=;F_vQS+PEVtR`$xCo_#Bzi{rzUww2GtwL6}z^ks66+B z1EEN0Zz_$&f@)O-!0H7Mk*F3fc!N|~0{G!7daS^kPt(vO9l-@ZUGm#t4dT#?>EhVq1OOfyD^;6@syJn}f zV!jTPtG>V*X~%`6W21{$afsu(q;8(g#w1?aE-6lgB2i6kj>8lChHU$W$Eu|w9;3`% zVUyuGlJ_g3z`dN&gfiyKqxC#R--?!xk+dU>*tRfS&#Am~8uZgkg;p8pX4L#0Vzpin zzfc>s0ghMIo+6bYXGBs?;sjsH5ijwEC#OBc3dUJf{T@-VdSsl-q8FU^&?FXj?oQLS zkTx%`hHh0LG}BvQWqXxIr#s0M(3&#lO(sU2;;^d-CmCw@E^X{865%Qq75q1{8B0wU ztthM(#;5Kv_0dP6I1+gVjS6S<`*nYa2o;s|ddg^iX?)S{>(nq64^GLOZ3%h6Jq0_F z57QJC<<0HsDCtVJ>B)Hl_Hv;HlO-~n2PqNHY%EiiUl8J&X3e#$5Mmq|z_|fL>~`Ss z&g5TUQYWoQ{TOl5xa%;8lO|I)cU^1=D?o+I4&zG*=4e-(GhY~MjB&FONhAS;y2Z1g zMmJ$V%_h;%F((=2whJZZa_VHk{}gs(avPnlH=eUmSrw#Yu#Liu5Y%_f}7Js62Zu4 zl=fBhR4kxK&&1lY4)ZMw4Wuk1CVa5PjEPuo5T||!7Jy~7Hd3O7&RdvA05z&Z1np=n z?r9*eGJh$0*3ejWx8IaFEZU5nb+SvQ@UI3t*xftD>4Uc9A*?-8vqA}?OKov2foRoQ8k#a8T`IcETj%eet5m&tiFHYg)f zp>s^x@znyYTBEw2)2p;$s|^hlHz@mC{V5+%U|-@Q4};yYIE5(J{K&4R+S6XRXNSyk+w3(f>J@F-jf3I0L)U>n=Ch40ivy7f!44Z zY)4p-`{H$^H_Lk^6`LeNh zNV42k(4TEMg@@kCsfThkwkMb2xJ?5`$?R1F7gea8 z>@GoR#1(}R4bU}2&Do8`-NlYbx*wdVRJA;Fmux3V?HSQIw)of^PG-qjOepYralLjT zK}dNvmUt(Vv%u2l;fox(hTdlBRpOI#6}!G4Zy^?Ky`=O0qmhj zGPKj#AVAcHBccPhIfx7J|06xNT5sjvq%}5vL+g3kO>f$eb6z_x5DBHe9ZUN>dOUsP zJwDrST**QwitVsgkH-hYvFdTLIubEj8r}qT7GQJze-bv=ZYS18w{J*<$XImlyCvg9 zNF8pWne|PG8R*4KhMZks;E+7|W=u?C!Rf$K)L3~{0bA@rc*!*LL-^)jUI;(Ru(`;- zHjy1!f)ii>hfEB^ZgLn=Qlsmwo~;tBvU@mE=0G|VIQBX_Q=6i^P)X2f5Y>~OL`%N7 zz-H~ZkM0A?L9R{0C zX>7_F*;;+hYS4WNMX4on2uaGjBx4Qfq2n!q8>aFpFUc@$1FR#|aw&Cfs?Q{0*+eLT zCm2&et)TM2nw+Scq4c6Y{>x2K%hlBJ=w&2S$Q6f5n0>a}{?qW1Fsn^$MJvdg5Nb9D zl@v}vEGJWi^XViy_*orV7?m}o%dQ>&F1{~MnAr+33XiJSy&T<8(J2yZ> z2A@_pari2X@s`y)e@E9OB zh(#krfV*t$saUyzYB?ci&Sn$62_&9RU7(+dhKimf6f~ue0vrr`ZP70DWQl}>xS_hx zJVc8#Awqv7;RWF$?YMLOObCn24O=|omnVnlQG0;p_R*UHLv%TKub0-;Tz zNH^_Fik_GE?Bh+#IAPxxTdKT33&|VhK#UAX-p$B+i2h34s_~f|M%T60HWDSu%xO_i zDcRP)IuA=$B{>aQ%tQPU>DZ0Lyk-5M<+`+E5z&UOTC0{hFg`9AmUwq4$#iJ4(Y;J| z2A!5e7~g>0?oItgNuF2~9c!It1OU5%7SVa1MG_RZfGxxtU9N_k7fzHlZ&;WRUj>#A zxUHXrFbUY&F|pb+Q^;l_a!8cAi$`;{(8c1P>fE#?JLrZKc!}9C49iBBq3~&a1STHJ zz=fz;qGlE~7o%D@$$<(?SjPS7S=MISYJFk4m!ZfWdl@3cbG%1U7R!)FzQKqjXfbs< z$oE&Qk&JvIx}{r=3p%zgC3tj(Y;}!AG?aF6<`b|5wPdg=QQY8KTiV;bL`ih^US>>8 zuZ1WF97?k|v1R(Z#9@?w0#pU11ON`of02i^^^(DomrxkYKAiqp5>AIdv1fIEUccyU zLlSm@V@}&;@6nu-78_IBhFY}ESgoPQ5|c)N9CbEv-c~xMtUX7mh_W8I{^%Y`VZ@MiYHG8svA)=_gRaw|gQmeIBBC*5u8i2$Km-mZ1@oifxFd+WwD&5& zL}R_e!=iF^Xpd*X1hq7Hf)K>4XLNS1Y7q<}nf5n0 z+tpfGiK3924)Cb99*JyCU~~F%QtL4aF_MtFl=MdEUG*vWrqy(30diRfj5XIT3@}*y zXaY8x#2!P9cW1-y1hbtm2w4gRMS2MD%_Is!B=$%BUrvE)ciC7Or=O^HKkdTCJ(3`WM-c>he-yCl)3djSV>CT6F3 zp=QL+s)(hcMqHo|8Ru~FiwlJ#fLeK8PFk^hwlRUR zX>#cNzq0xi<_T`ERU3WbRwB;g5SLr3R*uuI2 zaR+jgQ`0}aq<3z$$XQfuMFuxbMaJO7%DH!$oNHypx+|N?=zjs%eTM#P>fFvSjtlZj%CM8KLl^r$|7F=5Ht4&PA?zSinTn5W(td>i! z2W$Jx0vGoWBBJTeDeoCJ;W!$T8Povxaq}|MElYP7%3w(*ew7)`s}uzS^>JYDM5_=J zSe!_=m|hl!Jz@@*bqNNEEOj8b5Hp1;r+uMb(4F%ggc>bYOu6t*@YI`dajYBZt)tIlp2wE)E#_BQc)L=F!yNQ(|5}y;-5im76y>N)>6UJiETmQt+nQ} zFqsUOy$I0Z#Pw1|n0$HyG;s9HE!#J&--2^0OFODV)rcd)n4L!h(IO@Ot*F62@U6Qc~XAPB^ra zHVDN-!VA1Ql*i>9!f+DDv=!8<({k9@EQ2W{lL=ZEq1$bm`-Bk9kxjk2DC(27rKv@g zzIMN+NuhRJv9(T(UT`)8sZlsF|$s1TV|j2SbwKKedX( zVa+R+G{W5YLk{)X3U)m&R~wwQTy0N%YUSpo`Gt)qp15*$c5dbDj*AiYbMowb19@5M z6DQBj&+eSBO;3YCtz6hOy;4n=r;N|d1xz_>=3C2W1ZQHgV_E2x)nsgGpR`?O9eM6W z3F%OO$L`s4H+3R8n#0x2pRuse*f}HJlt<$z&n@DDaaU_U3nS;r*kq0`rw7J&>!F~*)qGa0S>X!l+=C0`dw z(#r%Est)i@TzRw{F3Xt*g4aDIde}z$#P+HAoV%H+D&Xg4F~QXXJZ$o(ql$Qqb|`I9 zwuBrtDRF4T6&|D<@*&AthFvCFXIx0`s#dA!k1Rm$7#I>-G@HdJH!F37Qi-Uy?atr$ zX4W+T4fFf$MtljjKiCu-h7vn5v6*^&m=UCC1_g!^tZ#kd{wORG z-#?3A>fUhExI?LHs|^UalN`XZ?G3Y1^wuv0gzUZK!pNcmP& zHE`zy_>2n3cFew6D@phcmKSQN7c_Z@cNIrbtG#iccVH6@!%Ud|7=uDT!cfeBaCx6B zq2|Mt5DGk9S$IEC#C$1z34?`%-4*UceYI+&EZY1#|B^zu} zRAqH&`H_}oQFd&X%SjX`4l6l4W+8ccl0}lP=a{UF39R4b4$WySyc9c%BH*~f}D^+&4*~-Yxin3HIb{Z{xiB)WS8>z#9gMk-H zE683GcO{TsLn%`(FV4b!vS^8eMFOKD7IfMS-|mH)nP@U3+~UDY)on}DI8Q!R7wi7w zzBzrdWpVvjkII`Q40M#-MX%FB;1~XrSYsQI0t#5C>67VjETzKsM)-b4;yB71+aafD*I9!BcH6J+}WPc|TyC&Xyt~_88yYQ4;dKcg)iQM_&#ZR* zQIAcNAUF&Yla%r!{l4bMT(yURWIykbJp6 z?Hw7iQ|;qZ(J9{CS?*`*>9lD@d>q}yre^IAz@Cd6P-Sgv-(db|xxDa{guA_~`EcoE z?Pu@5NtcyMGTkCBIH4*ing)WSMAP#GTzM2I9&KDB9qTK_2M6XlHMiyZ7A+jDEn|tK zYhwT6-Z7!8yn~vmU+>mr*&X>{q^*uMnDN~^oNjW4l2eW$fLv;G6fRcApk!eu2)A8* zqB>ol-mx?}G+gc5EoDzw^_4bM2H>4G4cFvI}M4=fHW-WnG zTaYaUfeRD$jK;Aeh_0QH6Zu72z|>0zt8x}Z`jU9Rz^Bl@J8_Vo>{dL;ukG(-XAK<| zZ;g2>>MoXXS8s7s$WeMmPB5E5M9}>8N)rd~J>ba}h)W9L$B z9%tDgA3K>>cSvFAI_O_-Wf)=?ftnL_aan*8BBIf#D78K4l8L{_c+b={NKYecbHAnR z35i=?MJx7+9gq&AN#8&2DfXv^ENPC1y_NXH?Yr>(^b;@q(Jq_ zohVxnqm_2tH7TNTV};5GNr|ka5({ZvZO%Z_v)6|BWywYN*ogFz*3q$W(aSf9R7AeC z`~_N%sMk`Ntn$M6lF}Y5Qj2w!FWD4od~!L9(?wLGjZT(SihCMQpMW(;lN^U#l?`@8 zqM^l6V>x2R*YsPx<=c1F$DL;LSD25$ZyE8Cv^*}EMx25Ms zG{{Vuk_o>qXD`JNGYGo*sTQQAcKFPLX&o%rSpATN#Q9uJ-4WIS~=WjQjB&kg)&4!*E(NPHutG) z)_gL_>k1MwA(#cVwsb}w^q!3_&eTEA&7!$^*1-RlxBC1fDa5n{Zb)OB-BniZMSSgs z8V|*CW8z<~#&_Fr+2e*)<9qj(%lH-n?{J>frp9M?%|b74Qmg!zJ|ppSq!Yu@rHR3V zH2A`6nzBvoEp<+)jJYOBwg%i)!bAkLD`*B?2$i?CPVUy!&!> zM@zNM_RQp<=m|NiAnQ!WN+Mq-md5KmYT1|(?z`Z{rhTv}LRBS=Q%^-J=>s7-he5Ir zg5VH{X@=I*a)0{a@^)3p=1sqyftnr(<=u;IdgIwvt^IJ)VxbgVMU?9*R_2U8m8E07 zGRTG6aAQ{d(F4iwan(m}|sQJQK z2q{DWh~rD#jgX$Z^{Uw&(M7YZy!_aDgT1EwCF1lJBZG4G(F)iqV%}%ejAGq{m;+N* zcI$71C8x_|Xl8OY=7aJA%bggV6gW&|I8o=U+eMX_;$~(ZF(a~%<-d~9 zng^xps9`|!X*8Ftqc{vD6sC1A(oP3i;8UZoa!BT1nT-HliN$SC?xkU}6TlJO zskn$JEkm@jX76$blmck&)NE}+pNI8cR49&1$`BQaguE!5>SyoxgYGMkw7D_z4yhy~dt)hdKTD2p)u;xapZu4*Bby>pHEeS_#` zsjh#D@26h6T%VXVS=NKr_li8sp*MNOnXXh7bQ6z87H=K zd1Fk0Ce+X0HZZg>g(S5oroJw`Od8spKe8X8G}AhNaLqRs_u0TIHaU%$7R99p(SFRy z)Pm2NeIt`*%~Dr~9Z`u$zxKh$0FUUib!_!38Ct_}p((a$qMKEIYk0YoJ`ndO?&)$? zu{T(hN@U!8#x_SI6lwaG%Ou957py1yK_-*ZrgSYQcl0Mf`%Oe2onG3tG+mp4J{}x* z7hTBAKr4=a(o>$f=0efQM9rD5T~e3x2Z&!X@A}z|Mq_0C>gwk4#)$DX3FX4YFI!Rb z98?sQO3acAP&KFORXaYZR$+G(cYlD43kV%T{2mC3iLVlIFA6gY#OuTj*3}sq8_#CoM)y$3 zIEDoVN%v(UiK1*$s#$SKx<^Cih{0-P-3!+D0LV~NAlY>I{kn2Lh36_ZrAYh`t~R&;NHU>=t?_RyXNWvUzp7MLnSE_H zSGEK>kDjUfUm+55mMA7q?8adzFb2c3(KH98wpkIn{)0378L|~T113C)JMQ4n{%RiD zZ(^G*WTsjL=l0pjquRPj9ErfyC2A^Ruoo7!73~htfniO)ip>>9x1%sZ>3u`PMmO`v zvhy3AtE-s+Q=KOX+D^dB7X{JoXlu zN4#|~Toxzl^D69iV+}_Uu;aIt)J;~Fq@5gg@R`~9=^8G0ioDPn>jdGvSSOOQMPz%N zx}_pladIsOJ;nr^`MbIUCb{{2)mbe1WOkTNj)=5g<;j&3oR_!6HTU8p{8`+@Akj@C z1r)O1K*9HMlOu7S+yG3^Llwd)#qt=2d2n(H+)!s_CNgBGb;ks-K%rtxtz1s5 z5WIwZ>vY;u=EP^K7?B1VMv#L@RMT~2{&jm74_`Zxp5RJxHo)bRCiFh^A-dN9-d{P$ zaBq%j%*JpJ-r~mj`X0IwLCUEKRr)W$R+0xRCA`&F&Bp5J2A{5gtzgxdxJe`v5_=)m zoX)b6ZRv88qL?euQJROT?M21DmJ|E%=FaMEw^3io@o7w_8aA?{nU@O%xp<(D5XWX^ zct_!tmTxVVBPC4Tn^YSgUz%2d-pN$w?HIU&v{5?s)EvQf{8LUnb=_2LddEcVc-^X- zqVg2WvWPbnio5rRa)Zi??YMcgwusvmx!{8Qz&(|FD?f1a1oaC~Rx*SB3nj9deyX*5 zrcFg*hOFD7{9T|2-rs<4OZ$N;} zo+?B_0V_kqP`boDyDyc$v2|>b486CGCr=t=h6@K zW=67Mi=^9P6q@VO4D3gNtS>!(3%bVfvkHj@YcXBxMB z%%eJxFp9~T$nAPjIGgt0BcuI%Su}~Q&UDJLcg}=xtccd)iHpCdh+dpsKcUe*`qTki zXYshDr?Uisu5%bQ6M0r;l9K9F)6P-bN3S@m-cLV39j)j%yvTIkRp|T>BOA00d5RDK zczcmain_kW=fdAs{6@O>M7W&Ij=ZnXrOZzHy<6^@eKF)^=`*LblZ3LWs8>2~%cnmZ zsra%fE->6cG*jQVX?9-U>WLc+HYzLoHkgr6e(9^v;152@Jm9hT0t zvct!+yn=8u;TFP62&V}Dk?rHkY$IzWBDG!(e2jW7~wkt_#>7b9zSgL9p1>Y!+&D=vxL75-~*m!zdwv{BjF(7 zxdD73%MNd5+2Oyk{BMN6A^a_2dBmRQ@G6!aeuZU+`$nz)WrU9(v+@%N&kNulmiH3g z9Ka8b9sVWD4xjRL`~C#N z+XDDQmL0zEJge{U<1BxI@Th0l_YNO$ft3# z_YNB@JA4ky4qwNz!vickJafw0bNC#V9ln%hhqtoq@B`EKdxw8yxin+=I|JB1Yj}q* zW7*;RS$6n2mK{EL&VGM5;aLHkV%g!lFSYu&5Pmj*-(cC{@VwP`_<#i~A4d4N0QR%& z@Me}BjxXBpCkTH>cn{%2mhAf@2%i|hr?Twu8kQZtjb(?W-PWGNlUQ~*%(BBe%MNd3 z+2O4$J3M-iweN5}%NqzM1Ndx~9e#vmhnMfO_8h*9WrsJg?C^UmJNz}v4tp=N_8iW# z?C|+4UqN^s;cE!LO?ZIt*MuC^2;5EliO(_ANrX=&j4JYvb;Q5_#fI>Ghwn4O-+R3; zv;J*_l`HM{n+Tstcmd&j08e{~)jyr^Lc(VeK9}%v!Z#4Uk?@BBJn|}Q?0{JG_=J`-FD~@L{jC_8eZsvcr$D?C{}#W%V6CljREtKM}w;{k7G1_+FMB-pR7V zCtYLp9j;<|fbisN?R$q$XZbwBodJ9;%MSmRWrsgv+2OZeYwaH(Jm_^+KA3Pt08e4r z;n!Yo^&K96y_Fq~umdlVyibd{aq34mYyw zaDruruVvZcf3WOu@Xgkq!>d?!_zRYQNqEFttiHnv%MQm`cK8{V9e$tXP+xTXJ^bF` z;cvC)Ib34d;SDT1{4mQ7|Cwcnk9nK5=Wvi^hwow8;XkqL@arsFEAhYIApW5@8ZMM~ z4(^Je?~ zw+K)ETPvSJcv%4Vv+VGbEPsmd2ZTQ)yw5wVJ%^8H`3Z!5g#Co?3E)HDX}@>)M3x<{ zW_b*1p3>u^j5h?d;Y5yYKV&4yXRn+IRTW zk678^U$X4*HkL#CspEgh@7=ED_AIw6MD~O^dyel#5{+wr>*{_ax3dBT?k@Qo}x{4mR*e(v}$@Oy{fWI5EIOTp(`{<|O8 z7oofh<<%Ei@0cH2eTOHp>~I6i4i{Js?Kz9YU-MtqUTD7w=lfNx_g=#H5q^s>T;Gnr zlixc$>qqvykbcAU9IpR%_M>+8qL6=hKVHNBg!UQ7|AF7PO8A5;Vu|F|ptN-q4Kec{_|9dcd_hn-EXaaD9_w4(WyV8ojuu~^M8J4&kODU?q_hnfE{hfq&^LMYk$J%Y@ zF9`hsu1CAy!lC;uLVoRd_hUHh)SnT`$54KS@~WMGBD6>QxH|uK=;IdJqkSA*E_CZ( z2>l14zoJ|JN62qOe@H0*LiyFsULMM$&|V+f=R^O)p`^P<5O(YD2<25MpW4~$yY*Lu z_WRJk5X!%M+rDqBGXLL0N(YsWJ*4^jLrMpi)@0%jDV>*zzfb8onfUvb_GjV`Egi_j z->{!e^_b7v03;BmacqU7XCq{Qco8C!KD?M_`^%D?8~bE zkkbB4{1K(n>a6-lmX7^>7XBz84{G}2kkUg-Ke|sA{$Zsf9-f6ix-`5a3x7;$@0D5j zhnK#Vi9fbmauAPy-#CI|o69Q=wL z{Bb$>3?f0zLrRZtsxNPIpVBY>7=8hY!YVqV)Dz76;ly7Q;H4*0e}90N;z6ZHm4^Sy z#?AgMl{P89dA_FE&VitveOkYH-d_WJR{!^F{iD#M^m9L?_(zqV7WC)ytiOWw?~k&4 z?!^BGm5wSMAK;Hcvx4sl@J|I^#$nBA`twrFKxu*akDP9ZHN@XV{N2Ql5`W>r*3QtM z8{z`ue?$D+h?n`0&(pz=DfzsN1oLt|+L3Yo6zijV`uQaBpAFji8u6bC z@ZSGVKihuq{r>^#%eWo&9K(D6A985x{@)d}@BJUm>Hq)a^#7iq9q<3|1HAWt_{Hh| zKLY)f{=b2E@Be9S`oH=h8~Jej$AbR*bKm*)^m8}yxxXdepSz>Yb1%qw?m0QneeV0x z&z<3OKTo_r_vLM#du7gZ&&_%6i*HRo_c}iJHsbxcKhJsYA9L{g(X7z(_jCI5^ql@& z|A};e9&kUK_uGm0{?vibT6c3fc<;}za{6;#PJh1q>2!bgu|F$5V|ee+*V{a|bZ|Bu zJ|lRp^MU)Ye#i&zAGG7^=m7!V>G|k?Pxt@3?Eenpz5jQ&>Hiw)GvPWqKd1leSU>Fl z89_VV|Mda>AP6Q|@7I6N`oGpd>2%`n`vXHj_WkiYK_ zSpQn${e5NLvewI?(Bls(J*>24htDh@kW>F*s`oeRx7R*j`roXdKUv#v)<1i+onxBx z*!9GRdheLF)2y#v4E*CTZXVO%+m9C!?=d0U`C4BFUbOb`^TY>QJ8m00ixoBjFWS}l z#<)avi|kN zdu+rR#Q#0p@!0-B;vfHDYiB|fJbcbGQ0f6*`s20^*VNA;-hJi|Vt?w|4u6~gZ)Sau z5%Yfjka+h!y8gBbf5>zFOw$&&^)ld(D;-Cxf53&CES)*R!Uqt-Msv&%Q{*HJ*GxiqNe=xR=@?IY6ww~j5 zCh^f34%XjG`~)Y;-)led?&CR`^?ymcpUv~ z{=Rn;@3DzKK95G@GA}EFc{veyX~%6R!)*T|;{8n2!-;=2@ozj}2p`X{5br)IUl)J= zP;1|9+MC$UcH-X}jN3~czuzi4U44ysk69_RogV@(bn>2mFhuQOgZF!wJ=blDm~Q=) zfk#)HKATzJW3bSyerm+KZQj@2Jn?-8te%g<=ZW{&|EJm4rC$>7F}53sAI1d9`1@JV zClS97czLf)KR3jqNr$gseUGj1cljscJ(kV+=K{OQ2UbKREg?cYGW`%rux{WI|%Q;y}YpJ#xv zNIM>rwwd_112510%r6b`CE`EJ`W|C-Jn`Qm-p@e!c$Oe=rJXg;vx?jvmktMBp6h3~ zUB0X&-eW+$o#znmXRrOeUQN8)fW7{=h`;$pd#=}i2t=kl*KNK&j~j{i*sPU&uVLan zhV%sDukrddL;N?_%Wr@e{_wS{jLyP_(oPTa0 z-hEEaXLb_5<05N!z(DEK#CuG#zt=B`_p^$tSbqSfG#LkvS(qmNQsO-p#OLt_;{8md z^T}@jFLc=ZUTeVR$Q{Ig;Ma!t{@fQ0%5(kf!3>`}4ZO5-=r7XkT*msIo51R_?!L2``L6K=bsYqXE6PJpS;4__gLgp+0GpC9-Ha&{xag- zx8St;F5>;nelOd(op_I>dmi!SMkRpGo{7P-tad+(+u|Je~MY z@r5w#`gsxXLJxbNZDo*?ey(MGKU?qfbvyAMllm0a{{!2(`8$U2d4Dh#xQ`X9D(C}V z`WcS@vx)Z@>0SKMtF@gYN*BN15JSYjh4|O;fwvO>X}05MQoRp9CEjx$^t1lso@o8K zD&V*06YoCIr?dX^iFe=9IPu>kKGb6$2!Sr|>t_&M4nBi;_i-J^cHT$4$Buaa9}EU4 z?Rd6g|0D6CzVu(j-%Q4UqJEAz-umM) zlpFcnJ-~b4SXIHR6@Nr&@>7Nd+34qH;E%&Ee!`C5kNCf5`=`Ie5Kgy0Cf?7=IQ~cw zq>PWpU^;&|m3Tkfy_41lj24%fx#w50@kN5btNrU2j|s zfh+xSAFIoSX9F+K9lpWZb-DZo*7qC$ck;QnDV~J{xKrCnAo%C$*tp4a{cMfX)fDhq z^YT2__t>3LMV*SDj@2bf2`(%g2cK z*u+WJ|Ec4DVhDe)Uw~j_JUy0t9Um|RK`HeA%3!}U2E5dtque}`?N0+QT;O;y+KqaXNe`2t(TO+&!*`>>%EA6g-*j?xuW=8Q%Zz5&yCSR?)}#sIs;1IXE1@h4^b4R^Qj%^MUs|e58VR zDE^4jhwn7(5WoB&+wrpj=Mn!+)?f2HLwG-b%=#W1`ViJX8ZRj0;Ah{Qel`Iw;}-7Y zp2_-tW_c~!c@^+S9{gve`v>~)n^@m-DE$TN-$uOWetIhLzbD>vh-@ML_&)2W$0j?y zRf+dA0M3`LC*EV#Uch$VNxa8!`1*Z31gngL=Z5k2&n4b-Kzxwxe2{q0(Q_2>zW`pw z?ShXP;>*O}4~$gshu&?73h|EwUY_f@7Mz|3iT7By0oGsCc34P&kF$QLH{L_MpW$}C zv>px0b3K<1ma~4Ai1!?5J`S(&`fOm3^?yga$7uO{ZNUPR_B|Ja^Q-HK_cJ!%72OIo2>-(9lZH6vA81;P2iBj-%;N`h~Cd1|6UgABc);j*^>pAV*3B1UQ z*U(OWf7ZW;?Nr`k2p^vfSP1f5&wb^5awqYgQ^?odb->H}{^6t6j*r9JSU=S3zDc~t zrb9gG=MmUw$aDS7Ev7?172u`+dnxb0X7w||`kwR7`Tr%vd#)uP+qV<%G3e*8ov%v! zSno%0z5Dq5iuFBb!5dlsBrI_0r{~7PwCbl${4JMS`B>twBi?g;cz?c1yvLND#rnq| zYUAm-Iqo^czPJPR{kN>DU_A&x#{Y}&F)YM~ex3%r^wZDO`utw6^;sza?qGe-!R7q+ zRQz#dqMrXb1-#DJyA0#}>f^+ReC!XvXZ8R1)2*FQKi^Hf$7uRE-$cCU!ucRObm*U3 zJD&5;>ES!C#&ZvDjyrk;>dUy5sJH(E+ZkXxo@>VY{4C=A%(l1xQsO-qppV0!onig) z99GA${bAxgcN><2ey%3|=mS>v`MQmGKa214dk67%?zj42kNP=ny}j41e`)1wiLU}L z^A*~AUr)TB{r2a6iFiMg@^rRyH`@>C^MM-y!y`re`PZ!P zIXb9jl|Bi)(7B(@o@al)tnD0II{qcr&PBu@U^||3(8u|RP1esZ9I%T1?jyu|?l`K0 zr7MZ|Gi7J9{nr66{W+DnCh+>)pIOC|?X^qSu)d!y_Ws;V{F<*?{WIA9ABhj`&nuwN`k1h)f=hvy{`gt% z&+^NE)cV+`ywDI2C;rQ<@42MB%_A{@(vIio^7S=DyvNde{TCANIpBPKeSrA>S$p7l zeC~ZVTl@VN8N%uFbl_#&F1x|-H?jUO>xXv2*Ank%sLp5oe@lUC#QPa| zAGe!`_p`k|{@(>&*6BB>x7?5I{FL=CzR?iA-pku6~N0lgmV1<5MSDD?VQB+ ze?z?IE^vB2df3{Da^|xBg~WgOfFT}2{I$gY?Bj68)2w|zgA8>= zKXu|gSD~-RHxTb<)qLE(3cUJ30=vO?fcH9VTEP(`_S`!-o+t9lG2pZ6?_zz=)dw|C zKVKt0)aQSo?O?w{`uF+zCF}dy$D`QJ>7&*kKa1ewwnV(=WbpdmAl`G@`uN{x%-ZoY zF#g1Ld!X~lvxxUxvR=PNyyr?ij{Ure_>ez8YQg5$ zKg4@3lRsxWr=DZ)<++Z*PW4j*Uii!xzi(yNi*~dA;F}E(F`*yPzkLjeQtqUeTK|aB7&~||e^h6E z&oSV1`&QtEk9~*x$3t2FU99gpU7SunOuXlQDzpA0o?-n7-|L;khj!-g5$|V=ogN+y zfgYZ? zNqopxzec>DIdppa74TW}wef;%{Dr{F`~K&%?18KJ+*^PbK6z!JzkP`HL;3PY;zK{w z$roBXH`4Fi!}iw#pViN+6c4-TudSlf=NpI*`Q**OOaEVUk=1v)`gh_-4jA6&>%n+W znHSFm^Huv=?K{$r=eUBn*U!sY|Cgs)`5m0cn}C=4o@3a@f4FM+(0+Is@t#B8<;X3> zdoEfZ|K9?iH9p5&WbOOeY+vt##CuM7Z~uA3hx?S*67M;^{aN22-p^|L`nsTIBDwiE9;##|0w1H8X`qWh(Wc4KXu|gr{ZbEzms^+?eF^J zZNz&H+@o24#e}sV%GtHV5AU>!hqL|{i1*yjPXG6>bNuhHiUX{_f%vn2WC*BX`gsZP zvM&06Vdblde+%n-P9`6#PXjOf;YR^~_!8^;*>t7SOcYhCEjz|dH)Zevgdlv zmUXP(1H8=dwa+$$>mlojKj~v>{C36j#|iKTwjai)y%+c+6ZQPhAF;mQIpF>5nYMYk zGmxjJ121$E#!qe`-g8%<#0OkXyyyCR9Pu9~{wtUt`8?i0=?}zvPW$7C-vUKNp6j`) z&LRHw#CwiFUynZ}{(M$+{G&jB(vIf{!?M-S0P%j7{UYMuOT6cBcnIoANmFA#Cy(e=l_32yr1RwdHf>rZ(Fhl zK9kSA@1=b1I}PFUGC;iF+2Zs+MZBNwUdeW@Al}bJA4B|2#Cr}o$A6S~&(S!@`YYzG zKZiZd5UwXb19;KfzeGFXVXVKC^(WZCV~M{S_@nrD5*%QC&uwuczdQ!(R^kT3IIG74 zFZ1HLqP+iWh@U@T4Lp+VJPUZChx6WU2&d1>Sl@GYuVVchSl@F$zK{5IctKd%N*B2R zC;sPJpM?ZiyJ*iHd!Zr!mfvj!Ui$C3&b&Xj5brrS-pKlQ5Fgrae^0#U2tS(jH!NBE zp8Lwj|1XI5oa&fv{ai=<`>{Uc^H2k&e<$8^;5&UjYtsT$R z>g%NrywFJ)=eEfDe&@my?D3_K67MdVNeswJHB2SN?zH}_>pA5W=o98AP zCjQ05d(L>r-%Pyc5_tyei#=D`@tnQei9hx-!~0!GXAu9~L#>~o-F|`fJ$I{*+k1(B z+(p)axX`d4-y~xmw!!s?>1|| z=j+(#+H*ZOjgQ+H@nKxYbBXs{FmGXhz6`vK!;OJH_D$kH7T|AZJK?_R(Rgv07tdvT z2HW3AyywI_f%xYV@3}!%5&vJn3qK6^YrkTBzv~6+w0@rQ7o>-GTlq1>*NGpv$q>%} z-vGRi6{{-v66^b2U{B|l_h^04;d>2n3-J$op3U!#A5Y^?P&_Loz;@ted_H`@kWN2W z67M++kFl>yZzA4vCHZ^(2l3&)?AYg9``-`b{5V;#Y^ zOF!4MzUNN!`u{_`-znyNqkM%uH;gOW2)vAg=Qwr#{2JCj_|x`0swt&+5`WdF4DWi^ zt%^5X^54T=AoPrU1qU6Z==<@@Z`|Md^Q{Ah_yX}qqrUX#6XzMi*VpO9hxXn&@qP#0 z7PfO0@u8phpNT&S@<%?-=YK(bxGqk7q4mdeia9;>0iQ*;FJ}GloY8BD_uR}^+T%+r zUS#cu>*74({SLC@SpV(73;jIl21EGz{T%B*=Muv^Jsk3vR{xam8h(`RJQ8>r=TLum zI`Q8*$0|DgT&wNy#|iMatnYU$4D!1>bLyY;VtcON>Eh$L4fw3_yqNXFxQO2p?|0p} zd^rvSEAQnw&s>c=i+I1g?n&(D9^yR*X_@$!67P4Z4G{l5;IsO9pO@Hk{cbt8Bh3>Z z+HYS@yyxEaHa`Wt%<#6RFFdu|vWN! zxktU!o*SM^eJt?09Q1j<>;AMRLZUN_G&jenc`^I(lo7eHD z*RcMBE;PhZ#D7=ovycG4Wqr>b=livl*VuDIf8r+K<+;0`XN~wgjwwFTF#nwK`p;+m zgABf$?R!q=N3;IhfR}Z27VS|N5&v%1_ndwW;=fIN=y(1l@t%`(ob|W8%HAtH_qUh$ z(4PNc;{9&B-E8MB;C*a~QgGI*t$n}y%-7cv@tzah>GP|=%Xl8~du!#sZ0x^S-|zgq zi1>@Iwf6lk!y)4L6aPZ47w2yuCq9fbyp4Fj1K=38^Yff`j=0XAI~cUTiTG==?&Z^K zp!9s={f<%R4}U|v-|g~v*8d{$o)g>oz#*@(=f3|UtGJ5wFCaeT=d;B7T?_tRR}mk^ zExeET@V)LJ{=jSPfyeQ=PeEDMqvy(W`TI)ZpEG3@AHw>N!@`vMen-Q@h~G$jcrNlU zh!5Arb--uQ+xr!d{U-Ec`CQBO^%b_`cgFZ{AN6|cPv|!sA>Qv$INF*kT}-^+P0~aB zOMw@ioZn0EwnG40sIQ~Aqlp#e(0}! zDe(U8$@(|2{>*;E4)DuA5bt+WyWD^88>~Meo&SvZFkWTgjoHsV2ly3yRuatS)W6|S z8|Tn|_%YO%@p1q-V4KXNV8;8~lv;aNm0Lo2(tr9sU@$vk!QsxBoT-)H(gUf%P}+vGNm${|xbd z2Zz(ZZ;AK2s@Agp>NneS{mvxkSC;|rzhzYg|HAs7qxLv{dF)%PpZy$w6NxVaFXI!| zzf9{VTeiRdhV}hUW|w#W!uH?yeyevbfBGHPzm@~z<4_u(UtCyRnw&gkyfjgtukUOu zEY|0%i__Kdso9zOLaADvn62)dn%z;Gs!lA<&M#DJOM6S>v(s}^^~L(cDQkKLda^53 zCmS=3YHfbLwy#>BS)AWjnw+mq*Q*mt)6@I#lSHYCnv1EbTWfQtjL*%Ls^^a`ZYi&w zYt+ZiF!;!s7fA?tIm+)>NyFS@|`J+sgg=?YXu2Ms3GbePK(vf8+M;BZEWR z){j-HTZgt)I;ge&yqsEnL!(>PZyOw~Zrpy(wlS%6{k-+wp!gevs4}5ySKc$TAi7l zpTQQ6-8=6pPhn@1&+4SF zHUt$JgtO#78-&rt{^{A>^`VhYnuuR_`?k@=^1ysuep{WdPh!!`jMwFz`xp1k)hpXa z*JclKx4n)Zxv^XsUGu+sI7b(I2j;N?W~ZyQ@$ve?LPWyV#oEqHid)8T^l~_w$+&o< z<5NT1Myr`?aCD%WSbr#B{SD~)t5kN3$-MMq`7A8f78~Qr$r`n(#$_nY&Qvib)rq=s zEGhRi8l~!)TefdlzXd;8+EE>cBKvAnzzWjTUgL!Zxw zH+6EA{HBg>Hl~OB#~Rc1lKf*mZK|vl^p$E;MERXN1L43{E8jA}<;}uNRIQZnW_jo*J&ib6m z`K88U-V-;;mw4jH=H)zddb-q5>7b7Rf1S>GUOyP<^s*l}FaqhfxUV!_Ys_RlNbse( zsoK8!ynPKRHZZK^-o9~6*3uM2*ZSSH#*`4^=v-~QUfHdZtTAkpP!UPi7%dw|D)(T; zFHP&u+KMx_kXTNAx}5rSIW;=!$~jYwQPhV_>#2gHZ>)}PsE$cznuw6^g)s$X^eoLZ zE?ufu=N9LO`bT#)=78(>1vOC@ZDt7XRH<2n?@mX z$JTGyQW09&w%O>X+zX9qLv5ixJl_!FlCKhKP~S{_Pc`CZLo#*MEl^9L98J`RhRe!Y zDwC7YhlD~al{KtfuS^eb*48$6&m-21*Ffr6IhEaKoN?xsp$!|)JFnVzO8+UnW$9l` zu};De0zxgyxKP0v+3K14-o?Qhn$b5V39i8#D+8-cTWh_2)Ajj<`pitdy12)5?)uEm z#!P)^ddqZQZ)MB$KyN?(?OVHA{w?F5-cy02&TDrvI3M*k`I_V@MmuIj5)p!RL8?yS#LMRr?{;}@m= zA=0h~FS>SaX<=7&M{WEPs5q)c3cH=IT~e>w%Cc2;cB9c4SwB$SJl+^F>JkNUacy-g zYMz57D4J3kirfNN_Efz(yW?U^WMyz}J5^JY9A%DQN}sM@3SK;_q!iQ3bYo~Zt#-$+ zfEkkR%REUhGQ~Rx6t7oaHPHY`sV-MlJq}M=UmYFPr|EL>nZ|4Psq!bfvT5ng7=_dH z$}grCMn-2xHk-(_8OKg#qP_^WikFYb8RNN7UyVuFH9LDrWfew@p-V!E=ro4Rdt8O0P~SN_zi()GTxO@dD*A?^QzmJ3g!Jk%{Q7>0 z^-7%_J(TLz`lU;?sfFt9+SE{bR=7_XuzfH9FG@A(J zNVdAJD;WA|w7ps>J!YK!Q(#N^G{zlJOcCI@zDEr>2c~0db$nMHI_p$@Mws+CCpbM% z!OyVkQ68E%w!Y{peXAEBzQ-4<(63aaVJDdM^!Kr+Vo?ZBCT$ z3I=34z3xrua6m8+sfo@Uyi^S*1yD2>f-IlvL~XI=s|3^4L=Qfq{lZ>!@W+OtodTYU z9djNj`A zr*aO1KdgJwZN^GnY9&-JRYZnnCTBOS(ruKDc!CcG8ko;*v>;_uCGDnYR>pz~o@hG> z-ELL9ky7EUBLuZ$vAU~1H3xf>Om6Pno(<`Mml{EZ6h)i|xp6k;V{i`2e?@I}O+)Wv zmDbhl`5+B&i9PeRxn=HJVAB)cyw+`N`HXPQbZsy6p35jSTnTSP8){i%tFcb@)aECK zM%J%^7FF3kRvi(U_J5nZmKe#dvs{n>;TeMju^>VtlCZ!^tE=CGvY7Eq5x2*lX?0g7 z_NrW6T|He&J=#^(Ju?PHup$D1yg_WdFcK0-*@Pt<$Od*uEF-b;1_8UUffbnVf1TGo z_fa(ibj#!0U3JgB=kY(k|3CjJLQX`Cf;sWrn*~aE0E z(9f*kEA~5-d#l=riv7Z3E5&3mAZOIZFb*5!%+rs6dLBJcHNxD|-XSpg?f!CbA?}p+ zn`S7IvzQJ-+Q{yONEKceqgjRS!yKH8R zm70hqt{-^1%C1+nS?U#dFwHdvos;f$4Ctkp^9EQ4-rqD~vDyT&6FQm##v{q7)^Hgo zlb$CV0$3-Ih{bTebnIM5;^2B_Lu32yVlOchfGQfz? z+FK`3cC!TxjoI`aSOG+JbzP}my~|5_&ycLO2uP~Zc~N3dy0VK)X2itG@3tWs_yhoDAYI~ zGK@WBXBh9{SHX>6!X2H$X`RD}n1!>> zx6yVdE9_C8q8AO1B{hZ! zS;5EG#~`rKB5LFm*u)h{m~9;_0UlW`Od_t#V5%4r%t*r(&KO6hg{mJZTuvSo$b!jV z{DFPw#D~ZS2%Qi-EYa3VVWh34HQy4VJ2rH5g?KIJ@;V^FDW=%sC?%tNZ2)A~48834 zpzWj!o)yXDEAqgLS$qaM%3Ms?OJU}CF=iAO#j(1H*Cwh(9YyAgs|)>h1V*O*$%=xt={1yMEQ_b(Ysm<5p;+&Y@)`Z!9;A`}jLhRy17FpJ8(MqD31v6lCv+wH}w1KexL+FV}DXHVfP zoe8@a{ruGh^1ZDbC;8{xUd}X(E2>K1ipin;Rh?!dM4bqZXt3VcUj>T-MV~RP`EHt2 z7gr(;MbV;?5Jy9a{&;7?XbN`_TCq2XEF((4amtr9FKOTEq>2szV`*cMP^SYS&;AlL zFESK}O$y>Nnir!&Q?zCr{0Deo%qnHvq3Hz|xw>A~dasZ|z1R;T=-(w!2Sk&O+&K<;C@4kN6Yj12*Cmyg% z83T#k6R{kmlga!TZ7GBKZv%W4+~A@tkaIo?cLC&hI5&|P%qeDKwCGK*#$%-0kpD5K ze3DZ!ri2Q;CS6I7S}c6?61giH8)l&qzr8_1V8BD-Il`I`JU3fxunu`{TZ!j}iBczz z5<6M;bkGIPSt7?Tk{7bBJ0w{!_#D8Fk5eZ~SEd6aA`K0&gS|&#(ZNNh5ZPxs@FFzo ziAgRYy(G58#08*;(y)eV^7pnjwl>meYGX5yOq-po_dw3vj*yatOEc#F89@h=;bbtm zEc8c6J(Cmxwd1g04W%~(gS#ipKEf#Gb|)O7cow>k<+iT-z;KN)&KPx}*}E!W$j%|U z0wo^ulXY1hO|n)jQue}+oki-IUG%aT4@4r=1Z+LQ@-f&auL$A5jAjTJs$MDWJEer+ zH3vFq*4fS7yPA$?2ubNENW{zg1Eb!I&CdPqU`)gJ-wnoR%k#^gV0lQWEpQeBAeD~{ zd?u6VH5j1BIE`pbdSEWuySfd(dO8yW(N>DORte4oBCXO^PjD=O^SVY6nu*tDy)r!)uBYC4nZ@z>! z1fw0Ck>nD%0g_w=snVQW_kWa80_>1Y4W8 zFIKqsQJg~!d-x6LPRX;NC6X0->l6tKW_Xm%g1)diDuzFtg}=B>eH*#B)pnpm%=hi#l#(K8Ysou{Ii>-(!-72>QI;X?S73CV zZb2U2b!YdwKfWTY9WiX7VoG-B|6+jO+08yX$z>nzQC49wNr|XBlY+sr0Sm9+u@9R| zPKwrpHqMyxhg-qEt=qq0ELHD@MF3>%T!_j}vNyp1sWlsSi|x9IL{kcfsX~~Q%{eR_QF1= zviwDXTl@o4cRU(Nib|^9KMHl0#8g$&5&+iTN2Ku^m&d%#M)#D_l$|VJMx0%v>;cr( z&^aQFk*7+NtVTqtoJP;soB;b$EWbASCe9)aXds|O%DNSR8)2s72e9#4*NZ88*5|3e z)jjcHFH%rZQc)8t)0+$A6A}Xiidbclxu-im+ovgMnAs%Ggty3@z-W|pU85Hy%Lkj))pEHydaO7*pad4AUe>LiLZm$tQp` zKt#~3BXr19Seg~jnFUz%RlBS#mlsKSMHNqQB%I+?uu(}=kh&G!#}DEE&{nkm>FBym z%40C@FBY803f?%Mby8Rp^s}dgfsJ~aYfofTA4T0aNRDKk3ll55HMcOgVha;524#vr zKb}3oX1Y?}!cxWtBza>=kaA+t|0Fco%*H6Ix2Z{KoR%>rA7T;gYm>PO*YC0( zk<%+m|jNUSG zTB(sW#s&cp0p7ysxFoib%nMdV>@F@ZPb@ zMYlp=DnwH{cp029V$rFN8fA*nhHX{6r9wO$DX6mmW@JJ=A%IVtdwh(N_xFU7-cKU| z6DG|(F!GWhiJM{q7#>qji%Hr5hh|8hVE^xW1ruyDIv7Bl-}2ODO4G_LX9x+@=V{5_ zUQevHrZ5KxjP?Ays;DD|pzLj=oo3vSmxR|yKCNysj`x>4WHe&GPE&l;Q+f(wnJ)FZ zp8R94>#GGHJdHBvzDy|F3p-xrnY@6F2W&gG<_f#!Af0Vhg+FOwC5F5cXEo-PLOg*% zR;&XuC4~VY(b2i?`Nvq+O_T-B4+EA2k=RZ(^GS3zz;1};5V>oBPekb-@dzXX z1P=#^ES_TPo5bsKk%K+BHz;0%?G;P>iUIb>OU1|#PLL4mc=Ro{H_X z{Mx1kgx$0jRU_0fC`na>g-Mlg<}ftLJx+qJF-> z^)DgdAb@TLK5|A$MU(a=A*DN)PW6Uf!unXT9W+YXx^N^ic|yugP!Q6SccGi z5^E#90YNxQeX#byi?WEW-r4vljtS9o{S;`httc~Nsf+n5ugL~m-N}CP`(U&YE=oUA zlT9|}n-RxqT8R?0ZFzO2OV?DkG#ZsH9TSb_d}yBW8jRLyV92q^4fFkZmcdL z2@Xpzr%H!?P7SqmHJWSP+QoJh(@naU)esH8@C1<;+%hxJ{Bj1a6rKSgCXD7CL_)2U zvg=%J4k|~+fprTbT+>c-v*x-Sy}+ywyUpBK#8K|ehff7s4JM@w*oRn?5b>a}D~ETOcLhJiif5+qNHnhcy9Ll80~rfdln}q9P$p z=H7+d*>F;V3OUDc0#WAe9c&qft+NRlHOqXyPOQ-2O?AN%GGu`ddn7Et+wiY+0D2i9H(mO2-& zDyfHItfn4rxkE+*9CYGy@;7d0S=>mRH|PKZw>r2HKPaa*j!|*8VpM?Jt?^ewbsI;1(1qbfcf#u?U6l-NIendU?8#GwA+rE9t)Y?f?tAp1z z&8fm<1tu%He>7lOmi30vS-(fC#~Y+KYsFcHMpDSp^r$N+^ungM=60pXvPf!OLJ;&y zB~-0c)g)FZmVw3yx&F|pow+zcj=T~FjHFT2 z>iStazJ~(5GO4V=P|mqU(OdRwZGLJ5fzMawM7O>B!_%uLs33*>eJQNYR$P!RauZ!b zL(BuUQDTFbQ-bx3&DT^vyKhOD>k^?+!;M!FAxnxJ2eFx>P`DLn3`+71F22<}M_Edb zIqlHe)sI3{LJ3qEz1x_`kCw;d88C^2`Y+rBlyhde5d#8V#X1Ow+)&?RCSgjE=|Cyl z-h@D@eJvb%h?>rluira+KJ8C{(GB_w0DRuGqS=06dNvEjC|O{_qiMwwcHh2dMSFR# zZ(}X*Nzmf+sWNvmry&p96UzxF(dmW#elFy)x}y_oC6PTP1A`BmDIr8&O6R(c1k5`z zQ-nu!&ux6wb&_o;E0#42cd}qB5a~a3D64nuwFQ0q&nbrRRyr^hrI9`CMh?328>1n&arkTMga(fS%C`)%` z5%tq{X9ue^jiZ@-kX0h`4DB=7i-~7p=Mi99BT{Pwnqs@2b~*B{M%MV9V@VP!7a2Cv zJa=IHeve#vpgPEn;wf(LNJbw#N||Z3E~=}P0*t&V@N=hghM5zrAk4tyj5I9&o+3w4 zim8!d$0H!Lh$do0X6Bp5>>oUUqN$b^OAjzDraRPJ9NOMpAAy#H`qd3;u7U60T^ zk_D?yLHscy?x=r^>I0`&=b73Bq!B2QSpc7`>?T36)n5v7?O=EV;dG~pmVaEsE8gK` znH<+9MLm%iM&%Wg#CtOG7o*zT`*1pQHjx=rPI-mKkgurOee5QH7D@3)Gl?kt8ZS;w z5EfEm%_v0wq;r2Ntl>hX*a;)0<1?ExDOZp4^*|JK&`Ti>k(-ogES@&PsbR1Hl1;i| z5_1I%E?+x_9v4t@!T@aKxB@O2s*dXf(*{?DBmyfT9-2bpNm83vL_vWnsVj@VHBBZ_ zX%IJGOLWa=U zIr4NN9{F8>0A2qi)T{x5ljZPzmx@)Bmw-99@a(bafre2SbQR0uwnxj^A_!d?YoijS zt}}UON0`lHFC&k&xiGz&8AKz?-7eO@ykw*?ujEP5e;4e z<{kqoQagNA5dr~(Kqt>s#_*%1jr(uxi2jpe^WS<@iqkgx=@U6>k&-D1}2vTz#3E0yR|MfdkyEhlSo9lYnBH?Zt@%PGFSNXf+oXG@liOQBy>k zE5u=p$!h8@Bw*@YancapR}7DVEp7VX_ax~eU3k+6RAN%#(BQ-^tT7%}cCr+?6l;XJ}7E8b~O#kck-cGh9qs&yu8xAO}W4= zF|CHpjO_x$4sR=@1eHRB0X(U-?jR0J#KCT}j1x*LaVaMhep1QZeVkfZJe6_+PH35C z2VjKnI)_&fv$1|ftN>Sm&w{XT$vC`$RytHr%ZW34@O1o%w5%PVgGNubrZs`MaEG8@ zBi?Nhiw-}oU`fcZtEuJ7bvKB;LxQA9#B)3YhpBe5+387@A)cr!bik^R_YLtAx@_a zCZ(7VjW4makj{9aV}-$aa8Qv7ed-dStM+ISRfBTF6XVG)cV@afdCfT5AVRh{3r-ZZ zBWYwy9&{WJSj)$e*$}@>Hk$UA<+ZXgn7v%&HzG_V;}^HyKTs=ywh>1Nm(|U!!!_r8*hNt-G{U$yug$!aPvSAQ<^Y{T2B$8i6aJiL6XBh0vG@&t&1VBS|f|@ zYRZQ($C_%l4lG`7sBZX zV&TwH?*Bi5FL2MEmJIC=1}MAbbI+FjCrp8Xe8`DhBVT7nVp&XTcLIWE(rgG-RX$S| z)^N4FbT-Kq6&J80{AvaiOIAOu0Fw!aMaih1*20o!y14Wav`BR%%oX+)jqQ!G#9NL# zr|vZft8gN<7}DLt{k!AA>|(|>Wu0RZSLx->`Gm{p6}hxaUdcF|sq<}qYYcM}pL0>m zD!ZY4Z+FJ1M2|599JfbR8V3F8Y&t^l{qXFq$?i5vBixMr%oJ#Jflw2{M%jvXgtkaD z@9nLx`{MHNic?gl3xbq9OiP<6L;O}bgBMohVS5Wf>#IT84neq9ICbh7 zokc!T8 z)2z#Arpd-qJ`(U4TG5}(7Tp>hOZqO>r?Nea}jn6Z5U@399X~22%1^N|;Vf*yzxjPpoIES^6 z*#oId1dOwaNqGwcln7|{s6yXPV?R-UnH!k<{ANb%?BC?fuxbmd*@1I`#ged)!4PI^ zl;2s;Yz`i!u(Qke;j=6aU#XOptIK-w3}vfo=Xertq1WAeB-B#qB_i{{#Dw^V|A<3v zuq&^|w_fj18xJK?p%2i_N_KlGe+Bk3m%}fGRS8Jpv^A@KB&6#c440_5x3%MrkH}{z zdZA%Ut2$75BeY`;dlBp~yP2x|aSGvL8RLAR8%d229^-^9mhcm60-F2$Yn_FAmtDROo1`delRKqDObImkLFe#N3|* ziWCCgC6Q+GT`KZPanOt_qExgtE9uNg+@XZzyuJ-<$yWx9(B?sBPwVOGkEeMr(;ci(u%PpA4>WQ##ebZ9k^{50s+J_fgwS~iDBl>N2gcI(QJBnMm4Bz3PZ}a zFHxj^{v;S79AJiY4rNgp7|7ThL}v8u=nPWKp2|hfq!<$~)#VjR(Oi$_%d0+ikB7@e zE<>5au)67GwI{$NkvZ+{t`eq5T(X*>ml{3c3@}owO0(JdHD(9+84c4D$WDT50q(Vf zYuLxV8L$wfE0Uen>u^D^hV=k#)!@|S1Ad+mYLe1?^(a!)$yuv}tT$l^Z>JftWaW}N zC(b^v&nRM~u)WHulUfl|>e$pk5*Tr{PvMUIb^2~pRl5$rf2iGTQEOHp$VbO=ra6U% z7gvWx;hqwXFu+!=52PR~w3)rXDdNTt8CZ5m)(xxU@*+P5P7Riy>6IwT>ATyV{(LHG zya|eCTS~pg3d0Pr5!@Tnd>W$BNWuwW8^M}vR`;ji?<;m9s(|w*PFN$?%t+;gFnP5$ z7SAWk{wc1@xm+*oH$D{mvbBK%!NZLw)2ofk`3wgxEuRM;onDQ`XI~wi=|?!``>PbO z;oC3zi;LCI$W#*>-;vKS6p z8>ps>KiLJ|n9pdNVQXV}(L0}`fLib33{SJa@R|V*zj-zoUJ`Ii=oUW}_15Nn42GUz zzteN58+aslnaX3ZKiLbTW|r-akE^53lX7@o0+I z%3YXX`&FB_Uc%3>;2A%He?O|vdi68%i(S8{pWB7*4S&9bKYjxLto?zux9hF&X8iuS z#gMewEZ{n{eOJ=>CF27v9`DC*R=hQ>ox6v zAD{m;{#pA^w7p%wuMKI8G!c|7ZA&=ER=g+Qc99qgSHu@F!jWkML#K z{+710>!q%zJ>wPq#jbymwEu8hZm_G}SJwV}N&Anry=vn?J zd0gwC@D;VN_rLN5X>Zp%4}4qt&FIHI{b&3Vwm&+R_ICZ6BP?l=zW+b*@z3F(Ez`5_ zNc(5c)0XVDGZ)b8R2LrPccAebTC}R^9y3bK*B}v(_gc zN&EM@^7mJ8AzfwkWBP}BX|yAE%Kz{DyR`qxpNF3o=j!K6+7JIk6!-7jK=m=npRNA^ DFifAU From a341acded1c92c89be74a212ef94d342ff44b8e5 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:11:19 +0200 Subject: [PATCH 086/151] working menu --- shm/Game.cpp | 54 ++++++++++++++++++---------- shm/Game.hpp | 6 +++- shm/Menu.cpp | 97 +++++++++++++++++++++++--------------------------- shm/Menu.hpp | 32 +++++++++++------ shm/Store.cpp | 2 +- shm/player.cpp | 1 + shm/player.hpp | 2 ++ shm/ship.cpp | 8 +++++ shm/ship.hpp | 1 + 9 files changed, 119 insertions(+), 84 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 0f60b2f51..f054043f5 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -6,10 +6,10 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - , menu_(std::make_unique

    (this)) , time_(new Time()) , map_(new Map()) , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) + , menu_(std::make_unique(this)) {} Game::Game() {} @@ -18,19 +18,11 @@ void Game::startGame() { printTitle(); setPlayer(); - Store* store = new Store(1000, 1000, time_); - - while(menu_->menuChoice() != MenuItem::Exit) - { - // menu_->printMenu(); - menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); - } - // do { - // menu_->printMenu(); - - // menu_->menuHandler(menu_->menuChoice(), store, map_, playerOne_); - - // } while(menu_->menuChoice() != MenuItem::Exit); + currentStore_ = new Store(1000, 1000, time_); + do{ + menu_->printMenu(); + menu_->playerChoice(); + }while(!quitRequest); } void Game::printTitle() @@ -44,6 +36,7 @@ void Game::setPlayer() std::string playerName; std::cin >> playerName; playerOne_->setName(playerName); + setStartingCargo(); std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; map_->changeCurrentPosition(&map_->islands_.at(0)); std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; @@ -70,6 +63,7 @@ void Game::travel() std::cout << "Your travel will take " << travelTime << " days." << '\n'; map_->changeCurrentPosition(&map_->islands_.at(i)); map_->PrintCurrentPosition(); + time_->changeTime(); } else { @@ -80,14 +74,36 @@ void Game::travel() void Game::buyAllCargo() { - + auto storeCargo = currentStore_->storeCargo; + for(const auto &el : storeCargo) + { + currentStore_->buy(el, el->getAmount(), playerOne_); + } } void Game::sellAllCargo() { + auto playerCargo = playerOne_->getShip()->shipCargo; + for(const auto &el : playerCargo) + { + currentStore_->sell(el, el->getAmount(), playerOne_); + } +} +void Game::printPlayerCargo() +{ + playerOne_->getShip()->printShipCargo(); } -// void Map::addIsland(Coordinates coordinate) -// { -// addIsland(coordinate); -// } \ No newline at end of file + +void Game::setStartingCargo() +{ + playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 20, time_, 15, 0)); + playerOne_->getShip()->shipCargo.push_back(new Fruit("Apple", 1, 14, time_, 20, 0)); + playerOne_->getShip()->shipCargo.push_back(new Alcohol("Rum", 1, 60, time_, 70)); + playerOne_->getShip()->shipCargo.push_back(new Item("Hook", 1, 100, time_, Rarity::common)); +} + +void Game::quitRequested() +{ + quitRequest = true; +} \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index bc2eed303..ebc929e20 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -19,14 +19,18 @@ class Game void travel(); void buyAllCargo(); void sellAllCargo(); + void setStartingCargo(); + void printPlayerCargo(); + void quitRequested(); private: size_t money_; size_t gameDays_; size_t finalGoal_; + bool quitRequest = false; std::unique_ptr menu_; Map* map_; - Store* store_; + Store* currentStore_; Time* time_; Player* playerOne_; }; \ No newline at end of file diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 683d8bf2c..e84027dc1 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,74 +1,67 @@ +#include #include "Menu.hpp" #include "Game.hpp" Menu::Menu(Game* game) : game_(game) {} + Menu::~Menu(){} -// int Menu::playerChoice() -// { -// return 1; -// } +void Menu::playerChoice() +{ + size_t option{}; + do { + std::cout << "What is your choice capt'n? "; + std::cin >> option; + } while (!isPlayerChoiceValid(option)); + item_ = static_cast(option); + menuChoice(item_); +} -void Menu::menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player) +bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) { - switch(item) + if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 5) { - case MenuItem::buyCargo: - std::cout << "Welcome captain, what business brings you here?\n"; - std::cout << "Choose a cargo to buy: " << '\n'; - currentStore->printStoreCargo(); - currentStore->buy(currentStore->storeCargo.at(1), 1, player); - printMenu(); - break; - - case MenuItem::sellCargo: - std::cout << "Welcome captain, what business brings you here?\n"; - std::cout << "Choose a cargo to sell: " << '\n'; - currentStore->printStoreCargo(); - currentStore->sell(currentStore->storeCargo.at(0), 1, player); - printMenu(); - break; - case MenuItem::travel: - std::cout << "Where should we travel now?\n"; - std::cout << "Set sails!" << '\n'; - game_->travel(); - std::cout << "Choose Your next move Captain!" << '\n'; - printMenu(); - break; - case MenuItem::wrongChoice: - std::cout << "Wrong choice, please use 1 - 4" << '\n'; - printMenu(); - break; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); + std::cout << "Wrong answer, please use numbers 1 - 5" << '\n'; + return false; } + return true; } -MenuItem Menu::menuChoice(){ - int input; - printMenu(); - std::cin >> input; - - switch(input) +void Menu::menuChoice(MenuItem item){ + switch(item) { - case 1: - return MenuItem::buyCargo; - case 2: - return MenuItem::sellCargo; - case 3: - return MenuItem::travel; - case 4: - std::cout << "Get me out of this game, I'm done\n"; - return MenuItem::Exit; + case MenuItem::buyCargo: + game_->buyAllCargo(); + break; + case MenuItem::sellCargo: + game_->sellAllCargo(); + break; + case MenuItem::travel: + game_->travel(); + break; + case MenuItem::Exit: + game_->quitRequested(); + break; + case MenuItem::printPlayerCargo: + game_->printPlayerCargo(); + break; default: - return MenuItem::wrongChoice; + std::cout << "Wrong choice, please use numbers 1-5" << '\n'; + break; } } void Menu::printMenu() { - std::cout << "1 - Buy Cargo\n"; - std::cout << "2 - Sell Cargo\n"; - std::cout << "3 - Travel\n"; - std::cout << "4 - Exit\n"; + std::cout << "==========================\n"; + std::cout << "1 - Print Cargo\n"; + std::cout << "2 - Buy Cargo\n"; + std::cout << "3 - Sell Cargo\n"; + std::cout << "4 - Travel\n"; + std::cout << "5 - Exit\n"; + std::cout << "==========================\n"; } diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 1c67fa245..9daa8dc93 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -6,24 +6,34 @@ class Game; -enum MenuItem -{ - buyCargo, - sellCargo, - travel, - Exit, - wrongChoice -}; + class Menu { public: - Menu(Game*); + enum MenuItem + { + wrongChoice, + printPlayerCargo, + buyCargo, + sellCargo, + travel, + Exit, + }; + + Menu(Game* game); ~Menu(); void printMenu(); - MenuItem menuChoice(); + void menuChoice(MenuItem); void menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player); - // int playerChoice(); + void playerChoice(); + bool isPlayerChoiceValid(const size_t &playerAnswer); + + private: + MenuItem item_; Game* game_; + Player* player_; + Map* map_; + Store* currentStore_; }; \ No newline at end of file diff --git a/shm/Store.cpp b/shm/Store.cpp index 28f4f6a7e..f854d08cb 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -10,7 +10,7 @@ Store::Store(int money, size_t availableSpace, Time *time) { storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); - storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); + storeCargo.push_back(new Alcohol("Rum", 33, 60, time, 70)); storeCargo.push_back(new Item("Hook", 5, 100, time, Rarity::common)); } Store::~Store() {} diff --git a/shm/player.cpp b/shm/player.cpp index 790001f6f..54eb34062 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -8,6 +8,7 @@ Player::Player(std::unique_ptr ship, int money, int availableSpace) : Stor { ship_ = std::move(ship); ship_.get()->setOwner(this); + } Player::~Player() {} diff --git a/shm/player.hpp b/shm/player.hpp index edacbd381..f766de581 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -22,4 +22,6 @@ class Player : public Storable{ Cargo * getCargo(size_t index) const override; void setCrew(size_t newCrewSize); + + void setStartingCargo(); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index 0b3f703a4..9f2a3ed9c 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -161,3 +161,11 @@ size_t Ship::calculateAvailableSpace() } return capacity_ - cargoAmount; } + +void Ship::printCargo() +{ + for(const auto &el : shipCargo) + { + std::cout << el->getName() << " | " << el->getAmount() << " | " << el->getBasePrice() << '\n'; + } +} \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 850d8b884..bc39c938f 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -31,6 +31,7 @@ class Ship : public TimeEffectable { std::string getName() const { return name_; } size_t getId() const { return id_; } std::vector getCargo() { return shipCargo;} //instead of getcargo we use load atm. + void printCargo(); std::vector shipCargo; // TODO reserve vector // std::vector CargoOnShip; From d2ec50195d4f5e46c8cc03bba5f3c858b7568c0f Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:18:19 +0200 Subject: [PATCH 087/151] Menu class - delete unused private members --- shm/Menu.hpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 9daa8dc93..0997ab184 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -28,12 +28,7 @@ class Menu void playerChoice(); bool isPlayerChoiceValid(const size_t &playerAnswer); - - private: MenuItem item_; Game* game_; - Player* player_; - Map* map_; - Store* currentStore_; }; \ No newline at end of file From 8faed3d37d6db770ba1dbd790914300b3c015dc9 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:28:28 +0200 Subject: [PATCH 088/151] Menu formatting --- shm/Menu.cpp | 10 ++++++---- shm/Menu.hpp | 9 +++++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/shm/Menu.cpp b/shm/Menu.cpp index e84027dc1..03080ee19 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -4,9 +4,9 @@ Menu::Menu(Game* game) : game_(game) -{} + {} -Menu::~Menu(){} +Menu::~Menu() {} void Menu::playerChoice() { @@ -31,7 +31,8 @@ bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) return true; } -void Menu::menuChoice(MenuItem item){ +void Menu::menuChoice(MenuItem item) +{ switch(item) { case MenuItem::buyCargo: @@ -55,7 +56,8 @@ void Menu::menuChoice(MenuItem item){ } } -void Menu::printMenu() { +void Menu::printMenu() +{ std::cout << "==========================\n"; std::cout << "1 - Print Cargo\n"; std::cout << "2 - Buy Cargo\n"; diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 0997ab184..8ea818fac 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -20,15 +20,16 @@ class Menu Exit, }; - Menu(Game* game); + Menu(Game*); ~Menu(); - void printMenu(); + + bool isPlayerChoiceValid(const size_t &playerAnswer); void menuChoice(MenuItem); void menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player); + void printMenu(); void playerChoice(); - bool isPlayerChoiceValid(const size_t &playerAnswer); private: MenuItem item_; Game* game_; -}; \ No newline at end of file +}; From 4c0368ce0a6401cd714b5532054f3f964d59433f Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:29:56 +0200 Subject: [PATCH 089/151] Menu - remove unused method --- shm/Menu.hpp | 1 - 1 file changed, 1 deletion(-) diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 8ea818fac..299a19984 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -25,7 +25,6 @@ class Menu bool isPlayerChoiceValid(const size_t &playerAnswer); void menuChoice(MenuItem); - void menuHandler(MenuItem item, Store* currentStore, Map* map, Player* player); void printMenu(); void playerChoice(); From 835dedffb194f44cf9961de12db1a23e434cc5ef Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:37:09 +0200 Subject: [PATCH 090/151] menuChoice change default message --- shm/Menu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 03080ee19..70f80d015 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -51,7 +51,7 @@ void Menu::menuChoice(MenuItem item) game_->printPlayerCargo(); break; default: - std::cout << "Wrong choice, please use numbers 1-5" << '\n'; + std::cout << "Undefined choice" << '\n'; break; } } From 848f53242ef0ad996568273b5a71cf6be1206532 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 21:46:37 +0200 Subject: [PATCH 091/151] Game - add method for displaying gold and position --- shm/Game.cpp | 9 +++++++++ shm/Game.hpp | 1 + 2 files changed, 10 insertions(+) diff --git a/shm/Game.cpp b/shm/Game.cpp index f054043f5..e05a0f6f4 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -21,6 +21,7 @@ void Game::startGame() currentStore_ = new Store(1000, 1000, time_); do{ menu_->printMenu(); + displayPlayerStats(); menu_->playerChoice(); }while(!quitRequest); } @@ -106,4 +107,12 @@ void Game::setStartingCargo() void Game::quitRequested() { quitRequest = true; +} + +void Game::displayPlayerStats() +{ + std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; + std::cout << "You are at position:\n"; + map_->PrintCurrentPosition(); + std::cout << "==========================\n"; } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index ebc929e20..5af6b3161 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -12,6 +12,7 @@ class Game Game(size_t money, size_t gameDays, size_t finalGoal); Game(); + void displayPlayerStats(); void setPlayer(); void startGame(); void printTitle(); From 1d4dfe941b4771098700f22709588ddf2d162153 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 9 Aug 2021 21:48:59 +0200 Subject: [PATCH 092/151] Add print money in menu --- shm/Game.cpp | 16 +++++++++++++--- shm/Game.hpp | 1 + shm/Menu.cpp | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index f054043f5..8ea52a965 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -40,8 +40,9 @@ void Game::setPlayer() std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; map_->changeCurrentPosition(&map_->islands_.at(0)); std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; - std::cout << "Yeou are in start point. Current coordinates: "; + std::cout << "You are in start point. Current coordinates: "; map_->PrintCurrentPosition(); + std::cout << "You have " << playerOne_->getMoney() << " gold in Your treasure chest!" << '\n'; std::cout << "Choose Your next move!" << '\n'; } @@ -67,7 +68,7 @@ void Game::travel() } else { - std::cout << "There is no such a island on the map! Choose another destination!" << '\n'; + std::cout << "There is no such island on the map! Choose another destination!" << '\n'; Game::travel(); } } @@ -77,7 +78,11 @@ void Game::buyAllCargo() auto storeCargo = currentStore_->storeCargo; for(const auto &el : storeCargo) { - currentStore_->buy(el, el->getAmount(), playerOne_); + if(el->getAmount() > 0) + { + currentStore_->buy(el, el->getAmount(), playerOne_); + } + std::cout << "This cargo does not exist!" << '\n'; } } @@ -106,4 +111,9 @@ void Game::setStartingCargo() void Game::quitRequested() { quitRequest = true; +} + +void Game::printMoney() +{ + std::cout << playerOne_->getMoney() << '\n'; } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index ebc929e20..72bf98a57 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -22,6 +22,7 @@ class Game void setStartingCargo(); void printPlayerCargo(); void quitRequested(); + void printMoney(); private: size_t money_; diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 03080ee19..b679f14e8 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -33,6 +33,7 @@ bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) void Menu::menuChoice(MenuItem item) { + game_->printMoney(); switch(item) { case MenuItem::buyCargo: From a0d9078816f100fbdfea7c608f080341205b95fc Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 22:02:09 +0200 Subject: [PATCH 093/151] change return type in calculateDistance for consistency --- shm/Map.cpp | 2 +- shm/Map.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index 68bc51166..353946861 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -87,7 +87,7 @@ void Map::addIsland(Coordinates coordinate) islands_.push_back(Island(coordinate)); } -int Map::calculateDistance(Island island_pos_) +size_t Map::calculateDistance(Island island_pos_) { auto distanceX = current_pos_->getPosition().GetPositionX(); auto distanceY = current_pos_->getPosition().GetPositionY(); diff --git a/shm/Map.hpp b/shm/Map.hpp index 832fd8ccc..ce0818ac7 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -16,7 +16,7 @@ class Map { friend class Game; Island* getCurrentPos() {return current_pos_;} void changeCurrentPosition(Island* position) {current_pos_ = position;} - int calculateDistance(Island); + size_t calculateDistance(Island); private: Island *current_pos_; From 0f64976ea635cc340b3e0b8bef790bfc1d313fa5 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 22:03:18 +0200 Subject: [PATCH 094/151] changeTime now takes argument to pass amount of days passed --- shm/Time.cpp | 4 ++-- shm/Time.hpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/shm/Time.cpp b/shm/Time.cpp index b3aff4f47..aa1c03780 100644 --- a/shm/Time.cpp +++ b/shm/Time.cpp @@ -28,9 +28,9 @@ void Time::notify() } } -void Time::changeTime() +void Time::changeTime(size_t elapsedDays) { - currentTime_++; + currentTime_ += elapsedDays; notify(); } diff --git a/shm/Time.hpp b/shm/Time.hpp index f9357c442..a332ca109 100644 --- a/shm/Time.hpp +++ b/shm/Time.hpp @@ -12,7 +12,7 @@ class Time { void attach(TimeEffectable* observer); void detach(TimeEffectable* observer); void notify(); - void changeTime(); + void changeTime(size_t elapsedDays); void HowManyObserver(); size_t getCurrentTime() { return currentTime_; } From b9698570d9b0612f77f609a9370fb98ade47b321 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 9 Aug 2021 22:03:49 +0200 Subject: [PATCH 095/151] display number of days passed --- shm/Game.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index e05a0f6f4..0baf9c45c 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -64,7 +64,7 @@ void Game::travel() std::cout << "Your travel will take " << travelTime << " days." << '\n'; map_->changeCurrentPosition(&map_->islands_.at(i)); map_->PrintCurrentPosition(); - time_->changeTime(); + time_->changeTime(travelTime); } else { @@ -114,5 +114,6 @@ void Game::displayPlayerStats() std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; std::cout << "You are at position:\n"; map_->PrintCurrentPosition(); + std::cout << "Day " << time_->getCurrentTime() << "/" << gameDays_ << '\n'; std::cout << "==========================\n"; } \ No newline at end of file From cf5bc6b94d69f8ceb269bbb06957469e594022c4 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 9 Aug 2021 22:28:31 +0200 Subject: [PATCH 096/151] added print_store_cargo in menu --- shm/Game.cpp | 18 +++++++++--------- shm/Game.hpp | 2 +- shm/Map.cpp | 2 +- shm/Menu.cpp | 17 +++++++++++------ shm/Menu.hpp | 1 + 5 files changed, 23 insertions(+), 17 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 60878eb66..d142bb2b0 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -21,7 +21,6 @@ void Game::startGame() currentStore_ = new Store(1000, 1000, time_); do{ menu_->printMenu(); - displayPlayerStats(); menu_->playerChoice(); }while(!quitRequest); } @@ -41,7 +40,7 @@ void Game::setPlayer() std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; map_->changeCurrentPosition(&map_->islands_.at(0)); std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; - std::cout << "You are in start point. Current coordinates: "; + std::cout << "You are in start point. "; map_->PrintCurrentPosition(); std::cout << "You have " << playerOne_->getMoney() << " gold in Your treasure chest!" << '\n'; std::cout << "Choose Your next move!" << '\n'; @@ -114,16 +113,17 @@ void Game::quitRequested() quitRequest = true; } -<<<<<<< HEAD -void Game::printMoney() -{ - std::cout << playerOne_->getMoney() << '\n'; -======= void Game::displayPlayerStats() { + std::cout << "(Little reminder)" << '\n'; std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; - std::cout << "You are at position:\n"; + std::cout << "Your position on the map:\n"; map_->PrintCurrentPosition(); std::cout << "==========================\n"; ->>>>>>> 848f53242ef0ad996568273b5a71cf6be1206532 +} + +void Game::printStoreCargo() +{ + std::cout << "This store contains: " << '\n'; + currentStore_->printStoreCargo(); } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index b0ccfb63a..6609f2a15 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -23,7 +23,7 @@ class Game void setStartingCargo(); void printPlayerCargo(); void quitRequested(); - void printMoney(); + void printStoreCargo(); private: size_t money_; diff --git a/shm/Map.cpp b/shm/Map.cpp index 68bc51166..0a3d7cc5a 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -54,7 +54,7 @@ void Map::DebugPrintIsland () { void Map::PrintCurrentPosition() { - std::cout << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY())<<" <------ " <<'\n'; + std::cout <<"Current coordinates: " << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY()) << '\n'; } bool Map::contains(const std::vector& vec, const Coordinates& c) { diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 01162c9e3..a14e37e0a 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -12,7 +12,6 @@ void Menu::playerChoice() { size_t option{}; do { - std::cout << "What is your choice capt'n? "; std::cin >> option; } while (!isPlayerChoiceValid(option)); item_ = static_cast(option); @@ -21,11 +20,11 @@ void Menu::playerChoice() bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) { - if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 5) + if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 6) { std::cin.clear(); std::cin.ignore(std::numeric_limits::max(), '\n'); - std::cout << "Wrong answer, please use numbers 1 - 5" << '\n'; + std::cout << "Wrong answer, please use numbers 1 - 6" << '\n'; return false; } return true; @@ -33,9 +32,11 @@ bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) void Menu::menuChoice(MenuItem item) { - game_->printMoney(); switch(item) { + case MenuItem::printPlayerCargo: + game_->printPlayerCargo(); + break; case MenuItem::buyCargo: game_->buyAllCargo(); break; @@ -48,8 +49,8 @@ void Menu::menuChoice(MenuItem item) case MenuItem::Exit: game_->quitRequested(); break; - case MenuItem::printPlayerCargo: - game_->printPlayerCargo(); + case MenuItem::printStoreCargo: + game_->printStoreCargo(); break; default: std::cout << "Undefined choice" << '\n'; @@ -59,12 +60,16 @@ void Menu::menuChoice(MenuItem item) void Menu::printMenu() { + std::cout << "What is your choice capt'n? " << '\n'; std::cout << "==========================\n"; std::cout << "1 - Print Cargo\n"; std::cout << "2 - Buy Cargo\n"; std::cout << "3 - Sell Cargo\n"; std::cout << "4 - Travel\n"; std::cout << "5 - Exit\n"; + std::cout << "6 - Print Store Cargo\n"; std::cout << "==========================\n"; + + game_->displayPlayerStats(); } diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 299a19984..1b902cc12 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -18,6 +18,7 @@ class Menu sellCargo, travel, Exit, + printStoreCargo, }; Menu(Game*); From 7f6c90ed1dec369f49f8123958b9972dfca4b131 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 9 Aug 2021 22:31:48 +0200 Subject: [PATCH 097/151] cleared main.cpp --- shm/main.cpp | 130 --------------------------------------------------- 1 file changed, 130 deletions(-) diff --git a/shm/main.cpp b/shm/main.cpp index cefc02340..f71cf3f05 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -10,135 +10,5 @@ int main() game.startGame(); return 0; - /* - Time *time_ptr = new Time(); - //time->changeTime(); - - //Show created store via friend method (zad5) - Store store(2000, 100, time_ptr); - - std::cout << store; - - Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); - Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); // no money - Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); // no capacity - human->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); - human1->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); - - // buy zad 1 - //No cargo - std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; - Cargo * cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); - Response response = store.buy(cargo, 5, captain); - std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; - //No available space - response = store.buy(store.storeCargo.at(0), 1, human1); - std::cout << std::to_string(response == Response::lack_of_space) << "\n"; - //lack of cargo - response = store.buy(store.storeCargo.at(0), 1000, captain); - std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; - //no money - response = store.buy(store.storeCargo.at(0), 1, human); - std::cout << std::to_string(response == Response::lack_of_money) << "\n"; - //correct buy - std::cout << "Store money: " << store.getMoney() << '\n'; - std::cout << "Store size: " << store.storeCargo.size() << '\n'; - - Cargo * c1 = store.storeCargo.at(0); - Cargo * c2 = store.storeCargo.at(2); - Cargo * c3 = store.storeCargo.at(3); - - response = store.buy(c3, 1, captain); - response = store.buy(c1, 1, captain); - response = store.buy(c2, 1, captain); - - std::cout << std::to_string(response == Response::done) << "\n"; - std::cout << store; - std::cout << "Store money: " << store.getMoney() << '\n'; - std::cout << "size:" <getShip()->shipCargo.size() << '\n'; //TO DO - captain->getShip()->printShipCargo(); - std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; - // sell zad 1 - Response response1 = store.sell(cargo, 2, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; - //No available space - Store store2(2000, 0, time_ptr); - response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; - //lack of cargo - Store store4(10000, 10000, time_ptr); - response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; - //no money - Store store3(0, 100, time_ptr); - response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); - std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; - //correct buy - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - std::cout << "store przed sprzedaży \n" << store; - response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; - std::cout << "store po sprzedaży \n" << store; - std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - captain->getShip()->printShipCargo(); - std::cout << '\n'; - - //zad 2 - // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; - // Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); - // Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); - // Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); - // Fruit banan("Banany", 5, 20, time_ptr, 15, 0); - // Fruit banany("Banany", 6, 20, time_ptr, 15, 0); - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // wine += 4; - // kiwi += 4; - // hook += 4; - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // wine -= 3; - // kiwi -= 3; - // hook -= 3; - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // std::cout << std::to_string(wine == kiwi) << "\n"; - // std::cout << std::to_string(kiwi == hook) << "\n"; - // std::cout << std::to_string(hook == wine) << "\n"; - // std::cout << std::to_string(kiwi == kiwi) << "\n"; - // std::cout << std::to_string(banan == banany) << '\n'; - - //Zad3 - // std::cout << "-------------- ZAD 3 -----------------------------------------------------------------\n"; - // //przed nextDay - // Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); - // captain->setCrew(5); - - // std::cout << captain->getMoney() << "\n"; - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - // std::cout << store; - - // time_ptr->changeTime(); - - // //Po nextDay - // std::cout << captain->getMoney() << "\n"; - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - // std::cout << store; - */ } From 7aec38b544b29c86e5cb3482508b72063c4bdace Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 9 Aug 2021 22:44:58 +0200 Subject: [PATCH 098/151] cleaning files from unnecessary comments --- shm/Map.cpp | 27 ++------------------------- shm/Store.cpp | 2 +- shm/cargo.hpp | 3 ++- shm/ship.cpp | 3 --- shm/ship.hpp | 5 +---- 5 files changed, 6 insertions(+), 34 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index ead4a9e97..a3ab4b08c 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -16,9 +16,7 @@ namespace constVariables{ } Map::Map() { - islands_.reserve(11); - // Coordinates zero(0,0); - // addIsland(zero); + islands_.reserve(10); SetUpRandomIsland(); } @@ -61,27 +59,6 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { return std::find(vec.begin(), vec.end(), c) != vec.end(); } -//Island* Map::getIsland(const Coordinates* coordinate){ - // auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return &i.getPosition == coordinate; }); - // if(selectedIsland != islands_.end()) - // { - // return &(*selectedIsland); - // } - // return nullptr; -//} - -// Island* Map::getIsland(const Island* coordinate){ -// //auto selectedIsland = std::find(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return coordinate.ge == i.getPosition().GetPositionX(); }); -// for( auto el : islands_) -// { -// if(coordinate == &el) -// { -// return zz -// } -// } -// return nullptr; -// } - void Map::addIsland(Coordinates coordinate) { islands_.push_back(Island(coordinate)); @@ -94,7 +71,7 @@ size_t Map::calculateDistance(Island island_pos_) auto disX = island_pos_.getPosition().GetPositionX(); auto disY = island_pos_.getPosition().GetPositionY(); auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); - std::cout << "dystans: " << distance <<'\n'; + std::cout << "Distance: " << distance <<'\n'; return distance; } diff --git a/shm/Store.cpp b/shm/Store.cpp index f854d08cb..ebd5408a7 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -27,7 +27,7 @@ Cargo * Store::findMatchCargo(Cargo * cargo) return nullptr; } -Response Store::buy(Cargo * cargo, size_t amount, Player *player) //Buying cargo from store to player +Response Store::buy(Cargo * cargo, size_t amount, Player *player) { if (findMatchCargo(cargo)) { diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 4232126bc..46b155921 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -12,7 +12,7 @@ class Cargo : public TimeEffectable virtual bool operator==(const Cargo &cargo) const; virtual size_t getPrice() const {return 0;}; - virtual const std::string &getName() const { return name_; } // TO DO: test deleting Cargo object + virtual const std::string &getName() const { return name_; } virtual size_t getAmount() const { return amount_; } virtual size_t getBasePrice() const { return basePrice_; } @@ -25,6 +25,7 @@ class Cargo : public TimeEffectable Cargo() = default; Cargo(std::string name, size_t amount, size_t basePrice, Time* time); virtual ~Cargo() = default; + protected: std::string name_; size_t amount_; diff --git a/shm/ship.cpp b/shm/ship.cpp index 9f2a3ed9c..976384156 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -93,9 +93,6 @@ void Ship::load(Cargo * loadCargo, size_t amount) { loadCargo->reduceAmount(amount); Cargo* toAdd; - //lol no - //dont look, bleh - //Something is not yes if(Fruit* f = dynamic_cast(loadCargo)){ toAdd = new Fruit(*f); } diff --git a/shm/ship.hpp b/shm/ship.hpp index bc39c938f..6e11bf3ef 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -31,10 +31,8 @@ class Ship : public TimeEffectable { std::string getName() const { return name_; } size_t getId() const { return id_; } std::vector getCargo() { return shipCargo;} //instead of getcargo we use load atm. + std::vector shipCargo; void printCargo(); - std::vector shipCargo; // TODO reserve vector - - // std::vector CargoOnShip; Cargo * findMatchCargo(Cargo * cargo); void load(Cargo *loadCargo, size_t amount); @@ -45,7 +43,6 @@ class Ship : public TimeEffectable { void setOwner(Player* newOwner); void setCrew(size_t newCrew); - size_t calculateAvailableSpace(); protected: From 772c9efe60a7e9b0800a5a205c326dc611bba87d Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Mon, 9 Aug 2021 22:54:00 +0200 Subject: [PATCH 099/151] deleted unnecessary printShipCargo --- shm/ship.cpp | 8 -------- shm/ship.hpp | 1 - 2 files changed, 9 deletions(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index 976384156..aa7a54c31 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -158,11 +158,3 @@ size_t Ship::calculateAvailableSpace() } return capacity_ - cargoAmount; } - -void Ship::printCargo() -{ - for(const auto &el : shipCargo) - { - std::cout << el->getName() << " | " << el->getAmount() << " | " << el->getBasePrice() << '\n'; - } -} \ No newline at end of file diff --git a/shm/ship.hpp b/shm/ship.hpp index 6e11bf3ef..5d2cf9d44 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -32,7 +32,6 @@ class Ship : public TimeEffectable { size_t getId() const { return id_; } std::vector getCargo() { return shipCargo;} //instead of getcargo we use load atm. std::vector shipCargo; - void printCargo(); Cargo * findMatchCargo(Cargo * cargo); void load(Cargo *loadCargo, size_t amount); From 0217ca42d35c9f83b9845b492e06bcd305fca34f Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Tue, 10 Aug 2021 18:58:05 +0200 Subject: [PATCH 100/151] testing buyCargo --- shm/Game.cpp | 12 ++++++++++++ shm/Game.hpp | 2 ++ 2 files changed, 14 insertions(+) diff --git a/shm/Game.cpp b/shm/Game.cpp index 304d775c0..7475be239 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -127,4 +127,16 @@ void Game::printStoreCargo() { std::cout << "This store contains: " << '\n'; currentStore_->printStoreCargo(); +} + +void Game::buyCargo() +{ + int cargoElement = 0; + size_t amount = 0; + std::cout << "Chose cargo;"; + std::cin >> cargoElement; + std::cout << "Chose amount"; + std::cin >> amount; + + currentStore_->buy(currentStore_->storeCargo.at(cargoElement),amount,playerOne_ ); } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index 6609f2a15..14572623b 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -20,6 +20,8 @@ class Game void travel(); void buyAllCargo(); void sellAllCargo(); + void buyCargo(); + void sellCargo(); void setStartingCargo(); void printPlayerCargo(); void quitRequested(); From c552906dde2c637475fe10834daa61f6c95008a0 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Tue, 10 Aug 2021 19:50:34 +0200 Subject: [PATCH 101/151] tested sell, buy cargo does not increase amount --- shm/Game.cpp | 16 ++++++++++++++-- shm/Menu.cpp | 6 ++++-- shm/Store.cpp | 4 +++- shm/cargo.cpp | 4 ++-- shm/cargo.hpp | 2 +- shm/player.cpp | 2 +- shm/ship.cpp | 5 ++++- 7 files changed, 29 insertions(+), 10 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 7475be239..2be3182ad 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -133,10 +133,22 @@ void Game::buyCargo() { int cargoElement = 0; size_t amount = 0; - std::cout << "Chose cargo;"; + std::cout << "Choose cargo;"; std::cin >> cargoElement; - std::cout << "Chose amount"; + std::cout << "Choose amount"; std::cin >> amount; currentStore_->buy(currentStore_->storeCargo.at(cargoElement),amount,playerOne_ ); +} + +void Game::sellCargo() +{ + int cargoElement = 0; + size_t amount = 0; + std::cout << "Choose cargo;"; + std::cin >> cargoElement; + std::cout << "Choose amount"; + std::cin >> amount; + + currentStore_->sell(playerOne_->getCargo(cargoElement), amount, playerOne_); } \ No newline at end of file diff --git a/shm/Menu.cpp b/shm/Menu.cpp index a14e37e0a..2d89fe863 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -38,10 +38,12 @@ void Menu::menuChoice(MenuItem item) game_->printPlayerCargo(); break; case MenuItem::buyCargo: - game_->buyAllCargo(); + game_->printStoreCargo(); + game_->buyCargo(); break; case MenuItem::sellCargo: - game_->sellAllCargo(); + game_->printPlayerCargo(); + game_->sellCargo(); break; case MenuItem::travel: game_->travel(); diff --git a/shm/Store.cpp b/shm/Store.cpp index ebd5408a7..863a48068 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -104,10 +104,12 @@ void Store::nextDay() void Store::printStoreCargo() { + auto i = 0; for (auto el : storeCargo) { std::cout << '\n'; - el->printCargo(); + el->printCargo(i); + i++; } } diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 9a6f4198d..d8140185c 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -33,8 +33,8 @@ bool Cargo::operator==(const Cargo &cargo) const return name_ == cargo.name_ && basePrice_ == cargo.basePrice_; } -void Cargo::printCargo() const { - std::cout << "Cargo Name: " << name_ << ", amount: " << amount_ << ", price: " << getPrice() <<'\n'; +void Cargo::printCargo(int i) const { + std::cout << i << ". "<<"Cargo Name: " << name_ << ", amount: " << amount_ << ", price: " << getPrice() <<'\n'; } std::string Cargo::getCargoInfo(){ diff --git a/shm/cargo.hpp b/shm/cargo.hpp index 46b155921..ff5806325 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -16,7 +16,7 @@ class Cargo : public TimeEffectable virtual size_t getAmount() const { return amount_; } virtual size_t getBasePrice() const { return basePrice_; } - void printCargo() const; + void printCargo(int) const; std::string getCargoInfo(); void reduceAmount(size_t); void loadCargo(); diff --git a/shm/player.cpp b/shm/player.cpp index 54eb34062..8ceb4098d 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -29,7 +29,7 @@ size_t Player::getSpeed() const Cargo * Player::getCargo(size_t index) const { - if (ship_->getCargo().at(index) > 0) + if (ship_->getCargo().at(index) >= 0) { return ship_->getCargo().at(index); } diff --git a/shm/ship.cpp b/shm/ship.cpp index aa7a54c31..5edb3b3fa 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -95,6 +95,7 @@ void Ship::load(Cargo * loadCargo, size_t amount) Cargo* toAdd; if(Fruit* f = dynamic_cast(loadCargo)){ toAdd = new Fruit(*f); + } if(Item* i = dynamic_cast(loadCargo)){ toAdd = new Item(*i); @@ -139,11 +140,13 @@ void Ship::nextDay() } void Ship::printShipCargo() { + auto i = 0; std::cout << "Ship Cargo:" << '\n'; for (auto &el : shipCargo) { std::cout << '\n'; - el->printCargo(); + el->printCargo(i); + i++; } } From 5b8a80767e27d5922399f2cb720b327513e42ef5 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Tue, 10 Aug 2021 20:13:14 +0200 Subject: [PATCH 102/151] added responses in store --- shm/Store.cpp | 10 ++++++++-- shm/Store.hpp | 2 +- shm/player.cpp | 2 +- shm/ship.cpp | 5 +++-- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 863a48068..fb282f115 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -35,14 +35,17 @@ Response Store::buy(Cargo * cargo, size_t amount, Player *player) if (player->getAvailableSpace() < amount) { + std::cout << "Lack of space" << '\n'; return Response::lack_of_space; } if (cargo->getAmount() < amount) { + std::cout << "Lack of cargo" << '\n'; return Response::lack_of_cargo; } if (player->getMoney() < price) { + std::cout << "Lack of money" << '\n'; return Response::lack_of_money; } @@ -64,18 +67,21 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) auto price = amount * cargo->getBasePrice(); if (getAvailableSpace() < amount)// miejsce sklepu { + std::cout << "Lack of space" << '\n'; return Response::lack_of_space; } if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount)//cargo gracza player->getShip()->findMatchCargo(cargo)->getAmount() < amount { + std::cout << "Lack of cargo" << '\n'; return Response::lack_of_cargo; } if (money_ < amount * cargo->getBasePrice())// pieniądze sklepu { + std::cout << "Lack of money" << '\n'; return Response::lack_of_money; } money_ -= price; - addStoreCargo(cargo, amount); + addStoreCargo(cargo); player->getShip()->unload(cargo, amount); player->EarnMoney(price); @@ -126,7 +132,7 @@ void Store::removeCargo(Cargo * item, size_t amount) findMatchCargo(item)->reduceAmount(amount); } } -void Store::addStoreCargo(Cargo * item, size_t amount) +void Store::addStoreCargo(Cargo * item) { auto cargoPtr = findMatchCargo(item); if(*cargoPtr == *item) diff --git a/shm/Store.hpp b/shm/Store.hpp index 38e7b787a..7a25f3b3a 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -34,7 +34,7 @@ class Store: public Storable { Cargo * findMatchCargo(Cargo * cargo); std::vector storeCargo; - void addStoreCargo(Cargo *, size_t); + void addStoreCargo(Cargo *); void removeCargo(Cargo *, size_t); void nextDay() override; void printStoreCargo(); diff --git a/shm/player.cpp b/shm/player.cpp index 8ceb4098d..54eb34062 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -29,7 +29,7 @@ size_t Player::getSpeed() const Cargo * Player::getCargo(size_t index) const { - if (ship_->getCargo().at(index) >= 0) + if (ship_->getCargo().at(index) > 0) { return ship_->getCargo().at(index); } diff --git a/shm/ship.cpp b/shm/ship.cpp index 5edb3b3fa..861efbd95 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -52,7 +52,8 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo * item) { - if(findMatchCargo(item) == item) + auto cargoPtr = findMatchCargo(item); + if(*cargoPtr == *item) { findMatchCargo(item)->increaseAmount(item->getAmount()); } @@ -95,7 +96,7 @@ void Ship::load(Cargo * loadCargo, size_t amount) Cargo* toAdd; if(Fruit* f = dynamic_cast(loadCargo)){ toAdd = new Fruit(*f); - + } if(Item* i = dynamic_cast(loadCargo)){ toAdd = new Item(*i); From 1a8d78054c37951235308c620b83b0cb973089ec Mon Sep 17 00:00:00 2001 From: kondorski Date: Tue, 10 Aug 2021 20:20:10 +0200 Subject: [PATCH 103/151] nextDay passes elapsedDays to Observers --- shm/Store.cpp | 2 +- shm/Store.hpp | 2 +- shm/Time.cpp | 6 +++--- shm/Time.hpp | 2 +- shm/TimeEffectable.hpp | 2 +- shm/alcohol.cpp | 2 +- shm/alcohol.hpp | 2 +- shm/fruit.cpp | 4 ++-- shm/fruit.hpp | 2 +- shm/item.cpp | 2 +- shm/item.hpp | 2 +- shm/ship.cpp | 2 +- shm/ship.hpp | 2 +- 13 files changed, 16 insertions(+), 16 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 863a48068..598dc4b81 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -94,7 +94,7 @@ Cargo * Store::getCargo(size_t index) const return nullptr; } -void Store::nextDay() +void Store::nextDay(size_t elapsedTime) { for (auto el : storeCargo) { diff --git a/shm/Store.hpp b/shm/Store.hpp index 38e7b787a..9cbc9876b 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -36,7 +36,7 @@ class Store: public Storable { void addStoreCargo(Cargo *, size_t); void removeCargo(Cargo *, size_t); - void nextDay() override; + void nextDay(size_t) override; void printStoreCargo(); friend std::ostream& operator<<(std::ostream& out, const Store& store) { diff --git a/shm/Time.cpp b/shm/Time.cpp index aa1c03780..ca4750f77 100644 --- a/shm/Time.cpp +++ b/shm/Time.cpp @@ -20,18 +20,18 @@ void Time::detach(TimeEffectable* observer) list_observer_.remove(observer); } -void Time::notify() +void Time::notify(size_t elapsedDays) { for(auto el : list_observer_) { - el->nextDay(); + el->nextDay(elapsedDays); } } void Time::changeTime(size_t elapsedDays) { currentTime_ += elapsedDays; - notify(); + notify(elapsedDays); } void Time::HowManyObserver() { diff --git a/shm/Time.hpp b/shm/Time.hpp index a332ca109..b75131fbc 100644 --- a/shm/Time.hpp +++ b/shm/Time.hpp @@ -11,7 +11,7 @@ class Time { void attach(TimeEffectable* observer); void detach(TimeEffectable* observer); - void notify(); + void notify(size_t); void changeTime(size_t elapsedDays); void HowManyObserver(); size_t getCurrentTime() { return currentTime_; } diff --git a/shm/TimeEffectable.hpp b/shm/TimeEffectable.hpp index 1f564df8f..717f053a4 100644 --- a/shm/TimeEffectable.hpp +++ b/shm/TimeEffectable.hpp @@ -2,5 +2,5 @@ class TimeEffectable { public: - virtual void nextDay(){} + virtual void nextDay(size_t) {} }; \ No newline at end of file diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index e7c3ded0c..518b5cfda 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -39,7 +39,7 @@ bool Alcohol::operator==(const Cargo& other) const { } } -void Alcohol::nextDay() +void Alcohol::nextDay(size_t elapsedTime) { basePrice_ += 2; } \ No newline at end of file diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index c1ddf8ae8..8e5cfd60a 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -24,7 +24,7 @@ class Alcohol : public Cargo { Cargo& operator+=(size_t amount) override; Cargo& operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; - void nextDay() override; + void nextDay(size_t) override; private: size_t percentage_; diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 37d79fd1d..928f7b69a 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -46,9 +46,9 @@ bool Fruit::operator==(const Cargo& other) const } } -void Fruit::nextDay() +void Fruit::nextDay(size_t elapsedTime) { - time_elapsed_ +=1; + time_elapsed_ += elapsedTime; if (time_elapsed_ >= expiry_date_) { basePrice_ = 0; diff --git a/shm/fruit.hpp b/shm/fruit.hpp index d6c8bc9b8..7aae0e3f2 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -22,7 +22,7 @@ class Fruit : public Cargo size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } - void nextDay() override; + void nextDay(size_t) override; protected: size_t time_elapsed_{0}; diff --git a/shm/item.cpp b/shm/item.cpp index a727a684a..d3fd16c39 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -42,7 +42,7 @@ bool Item::operator==(const Cargo& other) const { } -void Item::nextDay() +void Item::nextDay(size_t elapsedTime) { basePrice_ += 1; } \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp index 1e22d4a8f..5faebfa84 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -30,7 +30,7 @@ class Item : public Cargo Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; - void nextDay() override; + void nextDay(size_t) override; private: Rarity rarity_; diff --git a/shm/ship.cpp b/shm/ship.cpp index 5edb3b3fa..0c30d8dbc 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -130,7 +130,7 @@ void Ship::setCrew(size_t newCrew) } } -void Ship::nextDay() +void Ship::nextDay(size_t elapsedTime) { size_t moneyForCrew = crew_; if (owner_) diff --git a/shm/ship.hpp b/shm/ship.hpp index 5d2cf9d44..37d4059d5 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -38,7 +38,7 @@ class Ship : public TimeEffectable { void unload(Cargo * unloadCargo, size_t amount); void printShipCargo(); - void nextDay() override; + void nextDay(size_t) override; void setOwner(Player* newOwner); void setCrew(size_t newCrew); From f96f5e0ebdb48e305bdcf0d91f21c5455b503874 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 11 Aug 2021 19:52:53 +0200 Subject: [PATCH 104/151] added random rarity&lcohol perctenge --- shm/Store.cpp | 85 ++++++++++++++++++++++++++++++--------------------- shm/item.hpp | 2 +- shm/main.cpp | 1 + 3 files changed, 53 insertions(+), 35 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 1902e4549..22fd792ae 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -7,23 +7,66 @@ constexpr size_t numberOfPossibleFruitCargo = 4; constexpr size_t numberOfPossibleAlcoholCargo = 4; constexpr size_t numberOfPossibleItemCargo = 4; -constexpr size_t numberOfPossibleCargo = numberOfPossibleFruitCargo + numberOfPossibleAlcoholCargo + numberOfPossibleItemCargo; -constexpr size_t maxQuantityOfCargo = 1000; std::vector possibleFruitCargoNames = {"Banana", "Pineapple", "Apple", "Pear"}; std::vector possibleAlcoholCargoNames = {"Whiskey", "Rum", "Vodka", "Beer"}; -std::vector possibleItemCargoNames = {"Nail", "Hook", "Screw", "Spoon"}; +std::vector possibleItemCargoNames = {"Rope", "Hook", "Screw", "Spoon"}; +std::vector rarityChoice = {Rarity::common, Rarity::rare, Rarity::epic, Rarity::legendary}; Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) { - //SetUpRandomCargo(time); - storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); - storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); - storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); - storeCargo.push_back(new Item("Hook", 5, 100, time, Rarity::common)); + storeCargo.reserve(20); + SetUpRandomCargo(time); + storeCargo.shrink_to_fit(); + // storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); + // storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); + // storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); + // storeCargo.push_back(new Item("Hook", 5, 100, time, Rarity::common)); } Store::~Store() {} +void Store::SetUpRandomCargo(Time *time) { + std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> fruitCargoDistrib(0, numberOfPossibleFruitCargo); + std::uniform_real_distribution<> alcoholCargoDistrib(0, numberOfPossibleAlcoholCargo); + std::uniform_real_distribution<> itemCargoDistrib(0, numberOfPossibleItemCargo); + + std::uniform_real_distribution<> fruitPrice(10, 25); + std::uniform_real_distribution<> alcoholPrice(50, 100); + std::uniform_real_distribution<> itemPrice(100,300); + + std::uniform_real_distribution<> quantity(1,50); + std::uniform_real_distribution<> percentage(20,100); + + std::uniform_real_distribution<> itemRarity(0, rarityChoice.size() -1); + Rarity randomRarity = rarityChoice[itemRarity(gen)]; + Item itemik ("Item", 1, 1, time, randomRarity); + + size_t fruitCargoNumber = fruitCargoDistrib(gen); + size_t alcoholCargoNumber = alcoholCargoDistrib(gen); + size_t itemCargoNumber = itemCargoDistrib(gen); + + size_t fruitPriceX = fruitPrice(gen); + size_t alcoholPriceX = alcoholPrice(gen); + size_t itemPriceX = itemPrice(gen); + + size_t cargoQuantity = quantity(gen); + size_t alcoholPercentage = percentage(gen); + + std::string fruitCargoName = possibleFruitCargoNames[fruitCargoNumber]; + std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; + std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; + + // std::cout << "alcoholCargo : " << alcoholCargoName << '\n'; + // std::cout << "itemCargo : " << itemCargoName << '\n'; + + storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity+10), fruitPriceX, time, 15, 0)); + storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); + storeCargo.push_back(new Item(itemCargoName, (cargoQuantity/2), itemPriceX, time, randomRarity)); + +} + Cargo * Store::findMatchCargo(Cargo * cargo) { for (auto &el : storeCargo) @@ -145,29 +188,3 @@ void Store::addStoreCargo(Cargo * item, size_t amount) storeCargo.emplace_back(item); } } -void Store::SetUpRandomCargo(Time *time) { - std::random_device rd; - std::mt19937 gen(rd()); - std::uniform_real_distribution<> distrib1(1, numberOfPossibleCargo); - std::uniform_real_distribution<> fruitCargoDistrib(0, numberOfPossibleFruitCargo); - std::uniform_real_distribution<> alcoholCargoDistrib(0, numberOfPossibleAlcoholCargo); - std::uniform_real_distribution<> itemCargoDistrib(0, numberOfPossibleItemCargo); - - size_t fruitCargoNumber = fruitCargoDistrib(gen); - size_t alcoholCargoNumber = alcoholCargoDistrib(gen); - size_t itemCargoNumber = itemCargoDistrib(gen); - - std::string fruitCargoName = possibleFruitCargoNames[fruitCargoNumber]; - std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; - std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; - - // std::cout << "fruitCargo : " << fruitCargoName << '\n'; - // std::cout << "alcoholCargo : " << alcoholCargoName << '\n'; - // std::cout << "itemCargo : " << itemCargoName << '\n'; - - - storeCargo.push_back(new Fruit(fruitCargoName, 10, 20, time, 15, 0)); - storeCargo.push_back(new Fruit(alcoholCargoName, 10, 20, time, 15, 0)); - storeCargo.push_back(new Fruit(itemCargoName, 10, 20, time, 15, 0)); - -} diff --git a/shm/item.hpp b/shm/item.hpp index 1e22d4a8f..ac7c9b840 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -31,7 +31,7 @@ class Item : public Cargo bool operator==(const Cargo &cargo) const override; void nextDay() override; - + private: Rarity rarity_; }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 657e0420f..bbe5c366f 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -25,6 +25,7 @@ int main() std::cout << store; + Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); // no money Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); // no capacity From 4f4828c0ad88b8e1c4d6ca6ecfcbff37339ecec8 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 11 Aug 2021 21:16:37 +0200 Subject: [PATCH 105/151] Issue with buy/sell cargo --- shm/Game.cpp | 6 +-- shm/Game.hpp | 2 +- shm/Map.cpp | 7 +-- shm/Map.hpp | 5 -- shm/Store.cpp | 4 +- shm/item.hpp | 5 -- shm/main.cpp | 145 -------------------------------------------------- 7 files changed, 10 insertions(+), 164 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 2be3182ad..1bc2e05c9 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -3,11 +3,11 @@ class Map; Game::Game(size_t money, size_t gameDays, size_t finalGoal) - : money_(money) + : time_(new Time()) + , money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - , time_(new Time()) - , map_(new Map()) + , map_(new Map(time_)) , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) , menu_(std::make_unique(this)) {} diff --git a/shm/Game.hpp b/shm/Game.hpp index 14572623b..d5be57dc6 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -28,6 +28,7 @@ class Game void printStoreCargo(); private: + Time* time_; size_t money_; size_t gameDays_; size_t finalGoal_; @@ -35,6 +36,5 @@ class Game std::unique_ptr menu_; Map* map_; Store* currentStore_; - Time* time_; Player* playerOne_; }; \ No newline at end of file diff --git a/shm/Map.cpp b/shm/Map.cpp index 20484d307..0edd76f9a 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -8,14 +8,14 @@ #include "coordinates.hpp" #include "island.hpp" #include "Map.hpp" - +# namespace constVariables{ constexpr size_t COORDINATE_MIN = 0; constexpr size_t COORDINATE_MAX = 99; constexpr size_t ISLANDS_COUNT = 10; } -Map::Map(Time * time) { +Map::Map(Time* time) { SetUpRandomIsland(time); } @@ -67,7 +67,8 @@ size_t Map::calculateDistance(Island island_pos_) auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); std::cout << "Distance: " << distance <<'\n'; return distance; - +} + void Map::addIsland(Coordinates &coordinate, Time * time) { islands_.push_back(Island(coordinate, time)); diff --git a/shm/Map.hpp b/shm/Map.hpp index 676c7704e..b4c8b8da7 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -11,18 +11,13 @@ class Map { public: Map(Time * time); void DebugPrintIsland(); -<<<<<<< HEAD void PrintCurrentPosition(); - Island *getIsland(const Coordinates* ); - void addIsland(Coordinates); friend class Game; Island* getCurrentPos() {return current_pos_;} void changeCurrentPosition(Island* position) {current_pos_ = position;} size_t calculateDistance(Island); -======= Island *getIsland(const Coordinates &coordinate); void addIsland(Coordinates &coordinate, Time * time); ->>>>>>> shm2_pwiatr3 private: Island *current_pos_; diff --git a/shm/Store.cpp b/shm/Store.cpp index 7b0cc476f..40f4239f5 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -187,9 +187,9 @@ void Store::removeCargo(Cargo * item, size_t amount) void Store::addStoreCargo(Cargo * item) { auto cargoPtr = findMatchCargo(item); - if(*cargoPtr == *item) + if(findMatchCargo(item)) { - cargoPtr->increaseAmount(item->getAmount()); + findMatchCargo(item)->increaseAmount(item->getAmount()); } else { diff --git a/shm/item.hpp b/shm/item.hpp index 2d96edfb2..5faebfa84 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -30,13 +30,8 @@ class Item : public Cargo Cargo &operator-=(size_t amount) override; bool operator==(const Cargo &cargo) const override; -<<<<<<< HEAD void nextDay(size_t) override; -======= - void nextDay() override; - ->>>>>>> shm2_pwiatr3 private: Rarity rarity_; }; \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index f8609bac2..77071f242 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -1,4 +1,3 @@ -<<<<<<< HEAD #include "Game.hpp" constexpr size_t start_money = 1000; @@ -9,150 +8,6 @@ int main() { Game game(start_money, game_days, final_goal); game.startGame(); -======= -#include -#include -#include - -#include "Time.hpp" -#include "Store.hpp" -#include "player.hpp" -#include "fruit.hpp" -#include "alcohol.hpp" -#include "item.hpp" -#include "cargo.hpp" -#include "ship.hpp" -#include "island.hpp" - - -int main() -{ - Time *time_ptr = new Time(); - - Island il1(Coordinates (1, 2), time_ptr); - Island il2(Coordinates (2, 3), time_ptr); - Island il3(Coordinates (3, 4), time_ptr); - //Show created store via friend method (zad5) - Store store(2000, 100, time_ptr); - - std::cout << store; - - - Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); - Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); // no money - Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); // no capacity - human->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); - human1->getShip()->addCargo(new Fruit("Gruszka", 5, 5, time_ptr, 15, 0)); - - // buy zad 1 - //No cargo - std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; - - Cargo * cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); - Response response = store.buy(cargo, 5, captain); - std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; - //No available space - response = store.buy(store.storeCargo.at(0), 1, human1); - std::cout << std::to_string(response == Response::lack_of_space) << "\n"; - //lack of cargo - response = store.buy(store.storeCargo.at(0), 1000, captain); - std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; - //no money - response = store.buy(store.storeCargo.at(0), 1, human); - std::cout << std::to_string(response == Response::lack_of_money) << "\n"; - //correct buy - std::cout << "Store money: " << store.getMoney() << '\n'; - std::cout << "Store size: " << store.storeCargo.size() << '\n'; - - Cargo * c1 = store.storeCargo.at(0); - Cargo * c2 = store.storeCargo.at(1); - Cargo * c3 = store.storeCargo.at(2); - - response = store.buy(c3, 1, captain); - response = store.buy(c1, 1, captain); - response = store.buy(c2, 1, captain); - - std::cout << std::to_string(response == Response::done) << "\n"; - std::cout << store; - std::cout << "Store money: " << store.getMoney() << '\n'; - std::cout << "size:" <getShip()->shipCargo.size() << '\n'; //TO DO - captain->getShip()->printShipCargo(); - std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; - // // sell zad 1 - Response response1 = store.sell(cargo, 2, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; - //No available space - Store store2(2000, 0, time_ptr); - response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; - //lack of cargo - Store store4(10000, 10000, time_ptr); - response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; - //no money - Store store3(0, 100, time_ptr); - response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); - std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; - //correct buy - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - std::cout << "store przed sprzedaży \n" << store; - response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; - std::cout << "store po sprzedaży \n" << store; - std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - captain->getShip()->printShipCargo(); - std::cout << '\n'; - - //zad 2 - // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; - // Alcohol wine = Alcohol("wino", 10, 20, time_ptr, 80); - // Fruit kiwi = Fruit("Kiwi", 15, 14, time_ptr, 20, 0); - // Item hook = Item("Special Hook", 5, 100, time_ptr, Rarity::rare); - // Fruit banan("Banany", 5, 20, time_ptr, 15, 0); - // Fruit banany("Banany", 6, 20, time_ptr, 15, 0); - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // wine += 4; - // kiwi += 4; - // hook += 4; - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // wine -= 3; - // kiwi -= 3; - // hook -= 3; - - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << kiwi.getName() << " " << kiwi.getBasePrice() << " " << kiwi.getPrice() << " " << kiwi.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - - // std::cout << std::to_string(wine == kiwi) << "\n"; - // std::cout << std::to_string(kiwi == hook) << "\n"; - // std::cout << std::to_string(hook == wine) << "\n"; - // std::cout << std::to_string(kiwi == kiwi) << "\n"; - // std::cout << std::to_string(banan == banany) << '\n'; - - //Zad3 - // std::cout << "-------------- ZAD 3 -----------------------------------------------------------------\n"; - // //przed nextDay - // Fruit orange = Fruit("Orange", 15, 140, time_ptr, 1, 0); - // captain->setCrew(5); - - // std::cout << captain->getMoney() << "\n"; - // std::cout << wine.getName() << " " << wine.getBasePrice() << " " << wine.getPrice() << " " << wine.getAmount() << "\n"; - // std::cout << orange.getName() << " " << orange.getBasePrice() << " " << orange.getPrice() << " " << orange.getAmount() << "\n"; - // std::cout << hook.getName() << " " << hook.getBasePrice() << " " << hook.getPrice() << " " << hook.getAmount() << "\n"; - // std::cout << store; - - // time_ptr->changeTime(); ->>>>>>> shm2_pwiatr3 return 0; From caf391c3741e772f7d8a8206d2d72e774a6adf07 Mon Sep 17 00:00:00 2001 From: kondorski Date: Tue, 10 Aug 2021 20:36:53 +0200 Subject: [PATCH 106/151] changed constructor order to fit member list --- shm/Game.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 1bc2e05c9..8d545c6bc 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -7,13 +7,11 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) , money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - , map_(new Map(time_)) - , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) , menu_(std::make_unique(this)) + , map_(new Map()) + , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) {} -Game::Game() {} - void Game::startGame() { printTitle(); From d246d74dab696cb3cb8ece6bdb7fcd6709ea4c2b Mon Sep 17 00:00:00 2001 From: kondorski Date: Tue, 10 Aug 2021 20:40:04 +0200 Subject: [PATCH 107/151] constructor order in Fruit --- shm/fruit.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 928f7b69a..aa1cd3d75 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -3,8 +3,8 @@ Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed) : Cargo(name, amount, basePrice, time) - , expiry_date_(expiry_date) , time_elapsed_(time_elapsed) + , expiry_date_(expiry_date) {} Fruit::~Fruit() From 975fe21e2bc41369ae5f414a4acd7eaf8a77cca6 Mon Sep 17 00:00:00 2001 From: kondorski Date: Tue, 10 Aug 2021 20:42:17 +0200 Subject: [PATCH 108/151] chagned float to size_t in getPrice --- shm/fruit.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/fruit.cpp b/shm/fruit.cpp index aa1cd3d75..4ba6d50a5 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -14,7 +14,7 @@ Fruit::~Fruit() size_t Fruit::getPrice() const { - return static_cast(basePrice_ * ((float)(expiry_date_ - time_elapsed_)) / expiry_date_); + return static_cast(basePrice_ * ((size_t)(expiry_date_ - time_elapsed_)) / expiry_date_); } Cargo &Fruit::operator+=(size_t amount) From c26d6fab9bf124789a721f80725c0a1f6398d83c Mon Sep 17 00:00:00 2001 From: kondorski Date: Wed, 11 Aug 2021 21:38:29 +0200 Subject: [PATCH 109/151] fixed segmentation fault? --- shm/Game.cpp | 4 +++- shm/ship.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 8d545c6bc..4b0005872 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -8,10 +8,12 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) , gameDays_(gameDays) , finalGoal_(finalGoal) , menu_(std::make_unique(this)) - , map_(new Map()) + , map_(new Map(time_)) , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) {} +Game::Game() {} + void Game::startGame() { printTitle(); diff --git a/shm/ship.cpp b/shm/ship.cpp index cc50ba780..f5ac4c46b 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -53,7 +53,7 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo * item) { auto cargoPtr = findMatchCargo(item); - if(*cargoPtr == *item) + if(findMatchCargo(item)) { findMatchCargo(item)->increaseAmount(item->getAmount()); } From 164021a2d7cb174fea3fa4dbde55416e2aed679a Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 12 Aug 2021 20:19:16 +0200 Subject: [PATCH 110/151] changed condition --- shm/player.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/player.cpp b/shm/player.cpp index 54eb34062..85ba43db4 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -29,7 +29,7 @@ size_t Player::getSpeed() const Cargo * Player::getCargo(size_t index) const { - if (ship_->getCargo().at(index) > 0) + if (ship_->getCargo().at(index)) { return ship_->getCargo().at(index); } From a3f0a77b35f604fd6b57dc04c6844d57dfa07717 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 12:40:31 +0200 Subject: [PATCH 111/151] Fixed alcohol price --- shm/Store.cpp | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 40f4239f5..fd5dcb777 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -83,7 +83,15 @@ Response Store::buy(Cargo * cargo, size_t amount, Player *player) { if (findMatchCargo(cargo)) { - auto price = amount * cargo->getBasePrice(); + auto price = 0; + if (Alcohol* a = dynamic_cast(cargo)) + { + price = amount * a->getPrice(); + } + else + { + auto price = amount * cargo->getBasePrice(); + } if (player->getAvailableSpace() < amount) { @@ -116,7 +124,16 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) { if (player->getShip()->findMatchCargo(cargo)) { - auto price = amount * cargo->getBasePrice(); + auto price = 0; + if (Alcohol* a = dynamic_cast(cargo)) + { + price = amount * a->getPrice(); + } + else + { + auto price = amount * cargo->getBasePrice(); + } + if (getAvailableSpace() < amount)// miejsce sklepu { std::cout << "Lack of space" << '\n'; @@ -132,6 +149,7 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) std::cout << "Lack of money" << '\n'; return Response::lack_of_money; } + money_ -= price; addStoreCargo(cargo); player->getShip()->unload(cargo, amount); From 5ece99503bcc453a8f0df90b81127686cfdbd8e6 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 13:56:57 +0200 Subject: [PATCH 112/151] added crew to ship --- shm/Game.cpp | 4 ++-- shm/ship.cpp | 6 +++--- shm/ship.hpp | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 4b0005872..187220208 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -9,7 +9,7 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) , finalGoal_(finalGoal) , menu_(std::make_unique(this)) , map_(new Map(time_)) - , playerOne_(new Player(std::make_unique(20, 300, 10, "Dar Pomorza", 3, time_), 1000, 1000)) + , playerOne_(new Player(std::make_unique(20, 30, 10, "Dar Pomorza", 3, time_), 1000, 1000)) {} Game::Game() {} @@ -102,7 +102,7 @@ void Game::printPlayerCargo() void Game::setStartingCargo() { - playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 20, time_, 15, 0)); + playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 40, time_, 5, 0)); playerOne_->getShip()->shipCargo.push_back(new Fruit("Apple", 1, 14, time_, 20, 0)); playerOne_->getShip()->shipCargo.push_back(new Alcohol("Rum", 1, 60, time_, 70)); playerOne_->getShip()->shipCargo.push_back(new Item("Hook", 1, 100, time_, Rarity::common)); diff --git a/shm/ship.cpp b/shm/ship.cpp index f5ac4c46b..db6ab9e38 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -13,8 +13,8 @@ Ship::Ship(Time *time) time_->attach(this); } -Ship::Ship(int capacity, int maxCrew, int speed, const std::string &name, size_t id, Time *time) - : capacity_(capacity), maxCrew_(maxCrew), crew_(0), speed_(speed), name_(name), id_(id), time_(time) +Ship::Ship(int capacity, int Crew, int speed, const std::string &name, size_t id, Time *time) + : capacity_(capacity), crew_(Crew), speed_(speed), name_(name), id_(id), time_(time) { time_->attach(this); shipCargo.reserve(10); @@ -147,7 +147,7 @@ void Ship::setCrew(size_t newCrew) } } -void Ship::nextDay(size_t elapsedTime) +void Ship::nextDay(size_t elapsedTime) //Not working { size_t moneyForCrew = crew_; if (owner_) diff --git a/shm/ship.hpp b/shm/ship.hpp index 37d4059d5..ff147e8b1 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -13,7 +13,7 @@ class Player; class Ship : public TimeEffectable { public: Ship(Time* time); - Ship(int capacity, int maxCrew, int speed, const std::string& name, size_t id, Time* time); + Ship(int capacity, int Crew, int speed, const std::string& name, size_t id, Time* time); Ship(int maxCrew, int speed, size_t id, Time* time); ~Ship(); void setName(const std::string& name) { name_ = name; } From c2f2b9fb7abe455a5f3f0309f081aa7848fd77bf Mon Sep 17 00:00:00 2001 From: kondorski Date: Fri, 13 Aug 2021 20:45:38 +0200 Subject: [PATCH 113/151] Alcohol/Item - nextDay uses elapsedTime - compiler fixes --- shm/alcohol.cpp | 2 +- shm/item.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 518b5cfda..c86da4d38 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -41,5 +41,5 @@ bool Alcohol::operator==(const Cargo& other) const { void Alcohol::nextDay(size_t elapsedTime) { - basePrice_ += 2; + basePrice_ += elapsedTime/2; } \ No newline at end of file diff --git a/shm/item.cpp b/shm/item.cpp index d3fd16c39..a81e6892e 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -44,5 +44,5 @@ bool Item::operator==(const Cargo& other) const { void Item::nextDay(size_t elapsedTime) { - basePrice_ += 1; + basePrice_ += elapsedTime; } \ No newline at end of file From 2f8f119c1a567d6c3ebde7ad01a49d9348526406 Mon Sep 17 00:00:00 2001 From: kondorski Date: Fri, 13 Aug 2021 20:55:08 +0200 Subject: [PATCH 114/151] GetPositionX/Y const methods --- shm/coordinates.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index c855589b0..6f258ebf3 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -14,8 +14,8 @@ class Coordinates { Coordinates() : Coordinates(0, 0) {} - const int GetPositionX() { return positionX_; } - const int GetPositionY() { return positionY_; } + int GetPositionX() const { return positionX_; } + int GetPositionY() const { return positionY_; } void SetPositionX(const int& positionX) { positionX_ = positionX; } void SetPositionY(const int& positionY) { positionY_ = positionY; } From 489e2a0a754690de17a9e34860a604da55d4860d Mon Sep 17 00:00:00 2001 From: kondorski Date: Fri, 13 Aug 2021 21:12:56 +0200 Subject: [PATCH 115/151] Ship nextDay uses elapsed time --- shm/ship.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index db6ab9e38..edcec94ab 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -149,7 +149,7 @@ void Ship::setCrew(size_t newCrew) void Ship::nextDay(size_t elapsedTime) //Not working { - size_t moneyForCrew = crew_; + size_t moneyForCrew = crew_ * elapsedTime; if (owner_) { owner_->SpendMoney(moneyForCrew); From 3916c4d8714cad55a7970c8c5ce3fd06652e8bcb Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 14 Aug 2021 16:02:03 +0200 Subject: [PATCH 116/151] Alcohol price = elapsedTime * 2 --- shm/alcohol.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index c86da4d38..7a273d5bb 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -41,5 +41,5 @@ bool Alcohol::operator==(const Cargo& other) const { void Alcohol::nextDay(size_t elapsedTime) { - basePrice_ += elapsedTime/2; + basePrice_ += (elapsedTime * 2); } \ No newline at end of file From 14596257bb5ecf4ce50fa51bb47765440e1b56ed Mon Sep 17 00:00:00 2001 From: kondorski Date: Sat, 14 Aug 2021 16:17:01 +0200 Subject: [PATCH 117/151] currentStore changes after travelling to a new island --- shm/Game.cpp | 1 + shm/island.cpp | 10 ++++++++-- shm/island.hpp | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 187220208..10e8e6fe3 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -65,6 +65,7 @@ void Game::travel() map_->changeCurrentPosition(&map_->islands_.at(i)); map_->PrintCurrentPosition(); time_->changeTime(travelTime); + currentStore_ = map_->islands_.at(i).returnIslandStore(); } else { diff --git a/shm/island.cpp b/shm/island.cpp index fa3088749..e83b9ea6c 100644 --- a/shm/island.cpp +++ b/shm/island.cpp @@ -1,5 +1,11 @@ #include "island.hpp" -Island::Island(Coordinates position, Time * time) : store_(1000, 100, time) { - position_ = position; +Island::Island(Coordinates position, Time * time) + : store_(1000, 100, time) + , position_(position) + {} + +Store* Island::returnIslandStore() +{ + return &store_; } \ No newline at end of file diff --git a/shm/island.hpp b/shm/island.hpp index b38f9bf54..e377fbccc 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -12,4 +12,5 @@ class Island { explicit Island(Coordinates position, Time * time); Coordinates getPosition() { return position_; } void SetPosition(const Coordinates &position) { position_ = position; } + Store* returnIslandStore(); }; From 613c8d71e3bfabeee67274a9a1cf65cc8647acba Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 16:44:41 +0200 Subject: [PATCH 118/151] Crew get salary each day --- shm/alcohol.cpp | 2 +- shm/ship.cpp | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 518b5cfda..7a273d5bb 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -41,5 +41,5 @@ bool Alcohol::operator==(const Cargo& other) const { void Alcohol::nextDay(size_t elapsedTime) { - basePrice_ += 2; + basePrice_ += (elapsedTime * 2); } \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index db6ab9e38..b3e462423 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -150,10 +150,14 @@ void Ship::setCrew(size_t newCrew) void Ship::nextDay(size_t elapsedTime) //Not working { size_t moneyForCrew = crew_; - if (owner_) + for (auto i = 0; i < elapsedTime; i++) { - owner_->SpendMoney(moneyForCrew); + if (owner_) + { + owner_->SpendMoney(moneyForCrew); + } } + } void Ship::printShipCargo() { From 3b18f7532aa5bfbc0949670c11d6fa792d5196dd Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 17:16:40 +0200 Subject: [PATCH 119/151] Deleted comments --- shm/Store.cpp | 14 +++----------- shm/ship.cpp | 12 +----------- 2 files changed, 4 insertions(+), 22 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index fd5dcb777..e45cdf12f 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -18,10 +18,6 @@ Store::Store(int money, size_t availableSpace, Time *time) storeCargo.reserve(20); SetUpRandomCargo(time); storeCargo.shrink_to_fit(); - // storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); - // storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); - // storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); - // storeCargo.push_back(new Item("Hook", 5, 100, time, Rarity::common)); } Store::~Store() {} @@ -41,7 +37,6 @@ void Store::SetUpRandomCargo(Time *time) { std::uniform_real_distribution<> itemRarity(0, rarityChoice.size() -1); Rarity randomRarity = rarityChoice[itemRarity(gen)]; - Item itemik ("Item", 1, 1, time, randomRarity); size_t fruitCargoNumber = fruitCargoDistrib(gen); size_t alcoholCargoNumber = alcoholCargoDistrib(gen); @@ -58,9 +53,6 @@ void Store::SetUpRandomCargo(Time *time) { std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; - // std::cout << "alcoholCargo : " << alcoholCargoName << '\n'; - // std::cout << "itemCargo : " << itemCargoName << '\n'; - storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity+10), fruitPriceX, time, 15, 0)); storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); storeCargo.push_back(new Item(itemCargoName, (cargoQuantity/2), itemPriceX, time, randomRarity)); @@ -134,17 +126,17 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) auto price = amount * cargo->getBasePrice(); } - if (getAvailableSpace() < amount)// miejsce sklepu + if (getAvailableSpace() < amount) { std::cout << "Lack of space" << '\n'; return Response::lack_of_space; } - if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount)//cargo gracza player->getShip()->findMatchCargo(cargo)->getAmount() < amount + if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount) { std::cout << "Lack of cargo" << '\n'; return Response::lack_of_cargo; } - if (money_ < amount * cargo->getBasePrice())// pieniądze sklepu + if (money_ < amount * cargo->getBasePrice()) { std::cout << "Lack of money" << '\n'; return Response::lack_of_money; diff --git a/shm/ship.cpp b/shm/ship.cpp index 16929c4e1..334201dae 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -127,11 +127,6 @@ void Ship::unload(Cargo * unloadCargo, size_t amount) else { std::cout << "Ship: " << this->getName() << "doesn't have cargo: " << unloadCargo->getName() << '\n'; } - // TO jest bez sensu - // if (calculateAvailableSpace() - amount >= 0) - // { - // removeCargo(unloadCargo, amount); - // } } void Ship::setOwner(Player *newOwner) @@ -147,15 +142,10 @@ void Ship::setCrew(size_t newCrew) } } -void Ship::nextDay(size_t elapsedTime) //Not working +void Ship::nextDay(size_t elapsedTime) { -<<<<<<< HEAD size_t moneyForCrew = crew_; for (auto i = 0; i < elapsedTime; i++) -======= - size_t moneyForCrew = crew_ * elapsedTime; - if (owner_) ->>>>>>> 14596257bb5ecf4ce50fa51bb47765440e1b56ed { if (owner_) { From 4ba8bcdd4c7116f8e22b00c07024b3ac5a3a7e15 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 17:35:34 +0200 Subject: [PATCH 120/151] Fixed out of range in buy/sell cargo --- shm/Game.cpp | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 10e8e6fe3..227d0ac36 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -118,7 +118,7 @@ void Game::displayPlayerStats() { std::cout << "(Little reminder)" << '\n'; std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; - std::cout << "Your position on the map:\n"; + std::cout << "Your position on the map: \n"; map_->PrintCurrentPosition(); std::cout << "Day " << time_->getCurrentTime() << "/" << gameDays_ << '\n'; std::cout << "==========================\n"; @@ -134,22 +134,37 @@ void Game::buyCargo() { int cargoElement = 0; size_t amount = 0; - std::cout << "Choose cargo;"; + std::cout << "Choose cargo: "; std::cin >> cargoElement; - std::cout << "Choose amount"; - std::cin >> amount; + if (cargoElement > 0 && cargoElement < currentStore_->storeCargo.size()) + { + std::cout << "Choose amount: "; + std::cin >> amount; + currentStore_->buy(currentStore_->storeCargo.at(cargoElement),amount,playerOne_ ); + } + else + { + std::cout << "There is no such cargo in this store." << '\n'; + buyCargo(); + } - currentStore_->buy(currentStore_->storeCargo.at(cargoElement),amount,playerOne_ ); } void Game::sellCargo() { int cargoElement = 0; size_t amount = 0; - std::cout << "Choose cargo;"; + std::cout << "Choose cargo: "; std::cin >> cargoElement; - std::cout << "Choose amount"; - std::cin >> amount; - - currentStore_->sell(playerOne_->getCargo(cargoElement), amount, playerOne_); + if (cargoElement > 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) + { + std::cout << "Choose amount: "; + std::cin >> amount; + currentStore_->sell(playerOne_->getCargo(cargoElement), amount, playerOne_); + } + else + { + std::cout << "There is no such cargo in this ship." << '\n'; + sellCargo(); + } } \ No newline at end of file From 3c1e86e79c897ac6080a02c79032c03422148b4c Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 14 Aug 2021 17:51:56 +0200 Subject: [PATCH 121/151] Formated hpp files --- shm/Map.hpp | 6 +++--- shm/Storable.hpp | 6 +++--- shm/Store.hpp | 6 +++--- shm/Time.hpp | 2 +- shm/alcohol.hpp | 6 +++--- shm/cargo.hpp | 2 +- shm/fruit.hpp | 6 +++--- shm/island.hpp | 2 +- shm/item.hpp | 6 +++--- shm/player.hpp | 2 +- shm/ship.hpp | 16 ++++++++-------- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/shm/Map.hpp b/shm/Map.hpp index b4c8b8da7..707038199 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -16,12 +16,12 @@ class Map { Island* getCurrentPos() {return current_pos_;} void changeCurrentPosition(Island* position) {current_pos_ = position;} size_t calculateDistance(Island); - Island *getIsland(const Coordinates &coordinate); - void addIsland(Coordinates &coordinate, Time * time); + Island *getIsland(const Coordinates &); + void addIsland(Coordinates &, Time *); private: Island *current_pos_; std::vector islands_; - bool contains(const std::vector& vec, const Coordinates& c); + bool contains(const std::vector&, const Coordinates&); void SetUpRandomIsland(Time *); }; diff --git a/shm/Storable.hpp b/shm/Storable.hpp index 97d29e8cc..ac3dad8d6 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -30,9 +30,9 @@ class Storable : public TimeEffectable int getMoney() {return money_; } size_t getAvailableSpace() {return availableSpace_; } - virtual Cargo * getCargo(size_t index) const = 0; - void SpendMoney(int moneyToSpend); - void EarnMoney(int moneyToEarn); + virtual Cargo * getCargo(size_t) const = 0; + void SpendMoney(int); + void EarnMoney(int); void removeCargo(std::shared_ptr, size_t); protected: diff --git a/shm/Store.hpp b/shm/Store.hpp index 5b20f6938..a8c064215 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -31,8 +31,8 @@ class Store: public Storable { Response buy(Cargo * cargo, size_t amount, Player* player); Response sell(Cargo * cargo, size_t amount, Player* player); - Cargo * getCargo(size_t index) const override; - Cargo * findMatchCargo(Cargo * cargo); + Cargo * getCargo(size_t) const override; + Cargo * findMatchCargo(Cargo *); std::vector storeCargo; void addStoreCargo(Cargo *); @@ -49,5 +49,5 @@ class Store: public Storable { return out; } private: - void SetUpRandomCargo(Time *time); + void SetUpRandomCargo(Time *); }; diff --git a/shm/Time.hpp b/shm/Time.hpp index b75131fbc..6747d0b37 100644 --- a/shm/Time.hpp +++ b/shm/Time.hpp @@ -12,7 +12,7 @@ class Time { void attach(TimeEffectable* observer); void detach(TimeEffectable* observer); void notify(size_t); - void changeTime(size_t elapsedDays); + void changeTime(size_t); void HowManyObserver(); size_t getCurrentTime() { return currentTime_; } diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 8e5cfd60a..083bc2c74 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -21,9 +21,9 @@ class Alcohol : public Cargo { size_t getBasePrice() const override { return basePrice_; } size_t getPercentage() const { return percentage_; } - Cargo& operator+=(size_t amount) override; - Cargo& operator-=(size_t amount) override; - bool operator==(const Cargo &cargo) const override; + Cargo& operator+=(size_t) override; + Cargo& operator-=(size_t) override; + bool operator==(const Cargo &) const override; void nextDay(size_t) override; private: diff --git a/shm/cargo.hpp b/shm/cargo.hpp index ff5806325..d4fa15088 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -9,7 +9,7 @@ class Cargo : public TimeEffectable public: virtual Cargo &operator+=(size_t ); virtual Cargo &operator-=(size_t ); - virtual bool operator==(const Cargo &cargo) const; + virtual bool operator==(const Cargo &) const; virtual size_t getPrice() const {return 0;}; virtual const std::string &getName() const { return name_; } diff --git a/shm/fruit.hpp b/shm/fruit.hpp index 7aae0e3f2..ac27432e4 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -15,9 +15,9 @@ class Fruit : public Cargo size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } - Cargo &operator+=(size_t amount) override; - Cargo &operator-=(size_t amount) override; - bool operator==(const Cargo &cargo) const override; + Cargo &operator+=(size_t) override; + Cargo &operator-=(size_t) override; + bool operator==(const Cargo &) const override; size_t getTimeElapsed() const { return time_elapsed_; } size_t getExpiryDate() const { return expiry_date_; } diff --git a/shm/island.hpp b/shm/island.hpp index e377fbccc..be1820061 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -9,7 +9,7 @@ class Island { Store store_; public: - explicit Island(Coordinates position, Time * time); + explicit Island(Coordinates, Time *); Coordinates getPosition() { return position_; } void SetPosition(const Coordinates &position) { position_ = position; } Store* returnIslandStore(); diff --git a/shm/item.hpp b/shm/item.hpp index 5faebfa84..fa7676dd7 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -26,9 +26,9 @@ class Item : public Cargo size_t getBasePrice() const override { return basePrice_; } Rarity getRarity() const { return rarity_; } - Cargo &operator+=(size_t amount) override; - Cargo &operator-=(size_t amount) override; - bool operator==(const Cargo &cargo) const override; + Cargo &operator+=(size_t) override; + Cargo &operator-=(size_t) override; + bool operator==(const Cargo &) const override; void nextDay(size_t) override; diff --git a/shm/player.hpp b/shm/player.hpp index f766de581..a492cb750 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -19,7 +19,7 @@ class Player : public Storable{ void setName(std::string playerName) {playerName_ = playerName;} std::string getName() {return playerName_;} - Cargo * getCargo(size_t index) const override; + Cargo * getCargo(size_t) const override; void setCrew(size_t newCrewSize); diff --git a/shm/ship.hpp b/shm/ship.hpp index ff147e8b1..664b44ae2 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -18,10 +18,10 @@ class Ship : public TimeEffectable { ~Ship(); void setName(const std::string& name) { name_ = name; } - Ship& operator-=(size_t num); - Ship& operator+=(size_t num); + Ship& operator-=(size_t); + Ship& operator+=(size_t); - void addCargo(Cargo * item); + void addCargo(Cargo *); void removeCargo(Cargo *, size_t); size_t getCapacity() const { return capacity_; } @@ -33,14 +33,14 @@ class Ship : public TimeEffectable { std::vector getCargo() { return shipCargo;} //instead of getcargo we use load atm. std::vector shipCargo; - Cargo * findMatchCargo(Cargo * cargo); - void load(Cargo *loadCargo, size_t amount); - void unload(Cargo * unloadCargo, size_t amount); + Cargo * findMatchCargo(Cargo *); + void load(Cargo *, size_t); + void unload(Cargo *, size_t); void printShipCargo(); void nextDay(size_t) override; - void setOwner(Player* newOwner); - void setCrew(size_t newCrew); + void setOwner(Player* ); + void setCrew(size_t ); size_t calculateAvailableSpace(); From 340f99653f0c23fea8f0dd25e67f02b1104213a4 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 15 Aug 2021 13:01:16 +0200 Subject: [PATCH 122/151] currentStore_ set in setPlayer() --- shm/Game.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 227d0ac36..2cc1e1e4a 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -18,7 +18,7 @@ void Game::startGame() { printTitle(); setPlayer(); - currentStore_ = new Store(1000, 1000, time_); + // currentStore_ = new Store(1000, 1000, time_); do{ menu_->printMenu(); menu_->playerChoice(); @@ -39,6 +39,7 @@ void Game::setPlayer() setStartingCargo(); std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; map_->changeCurrentPosition(&map_->islands_.at(0)); + currentStore_ = map_->islands_.at(0).returnIslandStore(); std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; std::cout << "You are in start point. "; map_->PrintCurrentPosition(); From a1a4f0aff27fd71f14a0f4c2909b5a457c8dc7e6 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 15 Aug 2021 14:13:23 +0200 Subject: [PATCH 123/151] Game - removed buyAllCargo & sellAllCargo --- shm/Game.cpp | 22 ---------------------- shm/Game.hpp | 2 -- 2 files changed, 24 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 2cc1e1e4a..d954e56e0 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -75,28 +75,6 @@ void Game::travel() } } -void Game::buyAllCargo() -{ - auto storeCargo = currentStore_->storeCargo; - for(const auto &el : storeCargo) - { - if(el->getAmount() > 0) - { - currentStore_->buy(el, el->getAmount(), playerOne_); - } - std::cout << "This cargo does not exist!" << '\n'; - } -} - -void Game::sellAllCargo() -{ - auto playerCargo = playerOne_->getShip()->shipCargo; - for(const auto &el : playerCargo) - { - currentStore_->sell(el, el->getAmount(), playerOne_); - } -} - void Game::printPlayerCargo() { playerOne_->getShip()->printShipCargo(); diff --git a/shm/Game.hpp b/shm/Game.hpp index d5be57dc6..d912bf1ab 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -18,8 +18,6 @@ class Game void printTitle(); void printMap(Map &); void travel(); - void buyAllCargo(); - void sellAllCargo(); void buyCargo(); void sellCargo(); void setStartingCargo(); From cf8801e85a3a8fbead30ed2337fc8532cecc97e7 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 15 Aug 2021 14:44:59 +0200 Subject: [PATCH 124/151] fixed issue with spending money --- shm/Game.cpp | 4 ++-- shm/Store.cpp | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index d954e56e0..ba4f247b4 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -115,7 +115,7 @@ void Game::buyCargo() size_t amount = 0; std::cout << "Choose cargo: "; std::cin >> cargoElement; - if (cargoElement > 0 && cargoElement < currentStore_->storeCargo.size()) + if (cargoElement >=0 && cargoElement < currentStore_->storeCargo.size()) { std::cout << "Choose amount: "; std::cin >> amount; @@ -135,7 +135,7 @@ void Game::sellCargo() size_t amount = 0; std::cout << "Choose cargo: "; std::cin >> cargoElement; - if (cargoElement > 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) + if (cargoElement >= 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) { std::cout << "Choose amount: "; std::cin >> amount; diff --git a/shm/Store.cpp b/shm/Store.cpp index e45cdf12f..71784bc61 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -78,13 +78,13 @@ Response Store::buy(Cargo * cargo, size_t amount, Player *player) auto price = 0; if (Alcohol* a = dynamic_cast(cargo)) { - price = amount * a->getPrice(); + price = amount * a->getPrice(); } else { - auto price = amount * cargo->getBasePrice(); + price = amount * cargo->getBasePrice(); } - + if (player->getAvailableSpace() < amount) { std::cout << "Lack of space" << '\n'; From 6fddf4fb9c919890ff7adb6e0eb1ceff6075b396 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 15 Aug 2021 14:52:46 +0200 Subject: [PATCH 125/151] fixed sell issues --- shm/Store.cpp | 6 +++--- shm/ship.cpp | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 71784bc61..78fb081d2 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -84,7 +84,7 @@ Response Store::buy(Cargo * cargo, size_t amount, Player *player) { price = amount * cargo->getBasePrice(); } - + if (player->getAvailableSpace() < amount) { std::cout << "Lack of space" << '\n'; @@ -119,11 +119,11 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) auto price = 0; if (Alcohol* a = dynamic_cast(cargo)) { - price = amount * a->getPrice(); + price = amount * a->getPrice(); } else { - auto price = amount * cargo->getBasePrice(); + price = amount * cargo->getBasePrice(); } if (getAvailableSpace() < amount) diff --git a/shm/ship.cpp b/shm/ship.cpp index 334201dae..6d3bd3483 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -101,7 +101,7 @@ void Ship::load(Cargo * loadCargo, size_t amount) } if(Item* i = dynamic_cast(loadCargo)){ - toAdd = new Item(*i); + toAdd = new Item(*i); } if(Alcohol* a = dynamic_cast(loadCargo)){ toAdd = new Alcohol(*a); From fcbd1c3cbfde5077749ca2ce669d357f6bdc24db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 15 Aug 2021 15:07:23 +0200 Subject: [PATCH 126/151] Adding ending of the game --- shm/Game.cpp | 23 +++++++++++++++++++++-- shm/Game.hpp | 2 ++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 2cc1e1e4a..2e256d5ad 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -20,6 +20,14 @@ void Game::startGame() setPlayer(); // currentStore_ = new Store(1000, 1000, time_); do{ + if (playerOne_->getMoney() >= finalGoal_) + { + endGameWin(); + } + if (playerOne_->getMoney() < 0) + { + endGameLose(); + } menu_->printMenu(); menu_->playerChoice(); }while(!quitRequest); @@ -137,7 +145,7 @@ void Game::buyCargo() size_t amount = 0; std::cout << "Choose cargo: "; std::cin >> cargoElement; - if (cargoElement > 0 && cargoElement < currentStore_->storeCargo.size()) + if (cargoElement >=0 && cargoElement < currentStore_->storeCargo.size()) { std::cout << "Choose amount: "; std::cin >> amount; @@ -157,7 +165,7 @@ void Game::sellCargo() size_t amount = 0; std::cout << "Choose cargo: "; std::cin >> cargoElement; - if (cargoElement > 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) + if (cargoElement >= 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) { std::cout << "Choose amount: "; std::cin >> amount; @@ -168,4 +176,15 @@ void Game::sellCargo() std::cout << "There is no such cargo in this ship." << '\n'; sellCargo(); } +} + +void Game::endGameLose() +{ + std::cout << "You're time has come Captain! This is sad end!" << '\n'; + exit; +} +void Game::endGameWin() +{ + std::cout << "Arrr you won" << '\n'; + exit; } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index d5be57dc6..25d106e39 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -26,6 +26,8 @@ class Game void printPlayerCargo(); void quitRequested(); void printStoreCargo(); + void endGameWin(); + void endGameLose(); private: Time* time_; From d429b2ebe1956c4509d649b3fbf6e62580eadc18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 15 Aug 2021 16:22:44 +0200 Subject: [PATCH 127/151] Fixes and adding ending of the game --- shm/Game.cpp | 26 +++++++++++++++----------- shm/Store.cpp | 24 +++++++----------------- 2 files changed, 22 insertions(+), 28 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 35407cfc1..398ca8722 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -20,16 +20,19 @@ void Game::startGame() setPlayer(); // currentStore_ = new Store(1000, 1000, time_); do{ - if (playerOne_->getMoney() >= finalGoal_) - { - endGameWin(); - } - if (playerOne_->getMoney() < 0) - { - endGameLose(); - } + // if (playerOne_->getMoney() >= 2000) + // { + // endGameWin(); + // quitRequest; + // } + // if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) + // { + // endGameLose(); + // quitRequest; + // } menu_->printMenu(); - menu_->playerChoice(); + menu_->playerChoice(); + }while(!quitRequest); } @@ -103,6 +106,7 @@ void Game::quitRequested() void Game::displayPlayerStats() { + std::cout << "(Little reminder)" << '\n'; std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; std::cout << "Your position on the map: \n"; @@ -159,10 +163,10 @@ void Game::sellCargo() void Game::endGameLose() { std::cout << "You're time has come Captain! This is sad end!" << '\n'; - exit; + } void Game::endGameWin() { std::cout << "Arrr you won" << '\n'; - exit; + } \ No newline at end of file diff --git a/shm/Store.cpp b/shm/Store.cpp index 78fb081d2..758e61304 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -76,15 +76,7 @@ Response Store::buy(Cargo * cargo, size_t amount, Player *player) if (findMatchCargo(cargo)) { auto price = 0; - if (Alcohol* a = dynamic_cast(cargo)) - { - price = amount * a->getPrice(); - } - else - { - price = amount * cargo->getBasePrice(); - } - + price = amount * cargo->getPrice(); if (player->getAvailableSpace() < amount) { std::cout << "Lack of space" << '\n'; @@ -117,14 +109,7 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) if (player->getShip()->findMatchCargo(cargo)) { auto price = 0; - if (Alcohol* a = dynamic_cast(cargo)) - { - price = amount * a->getPrice(); - } - else - { - price = amount * cargo->getBasePrice(); - } + price = amount * cargo->getPrice(); if (getAvailableSpace() < amount) { @@ -142,6 +127,11 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) return Response::lack_of_money; } + if (money_ < price) + { + std::cout << "Lack of money" << '\n'; + return Response::lack_of_money; + } money_ -= price; addStoreCargo(cargo); player->getShip()->unload(cargo, amount); From a780c9394910fb794be7b3062a945ec857de0858 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 15 Aug 2021 20:30:53 +0200 Subject: [PATCH 128/151] end game works --- shm/Game.cpp | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 398ca8722..d7a819013 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -17,19 +17,22 @@ Game::Game() {} void Game::startGame() { printTitle(); - setPlayer(); - // currentStore_ = new Store(1000, 1000, time_); + setPlayer(); do{ - // if (playerOne_->getMoney() >= 2000) - // { - // endGameWin(); - // quitRequest; - // } - // if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) - // { - // endGameLose(); - // quitRequest; - // } + if (playerOne_->getMoney() >= 2000) + { + endGameWin(); + quitRequested(); + } + if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) + { + endGameLose(); + quitRequested(); + } + if(quitRequest) + { + break; + } menu_->printMenu(); menu_->playerChoice(); From 6f601922b214ae5716ce4e0e20b1d3deddc02ad3 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sun, 15 Aug 2021 21:00:15 +0200 Subject: [PATCH 129/151] Organizing the menu --- shm/Game.cpp | 3 ++- shm/Menu.cpp | 14 +++++++------- shm/Menu.hpp | 3 +-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index d7a819013..6d3e77976 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -29,10 +29,11 @@ void Game::startGame() endGameLose(); quitRequested(); } - if(quitRequest) + if (quitRequest) { break; } + menu_->printMenu(); menu_->playerChoice(); diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 2d89fe863..26a279c8c 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -20,11 +20,11 @@ void Menu::playerChoice() bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) { - if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 6) + if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 5) { std::cin.clear(); std::cin.ignore(std::numeric_limits::max(), '\n'); - std::cout << "Wrong answer, please use numbers 1 - 6" << '\n'; + std::cout << "Wrong answer, please use numbers 0 - 5" << '\n'; return false; } return true; @@ -37,6 +37,9 @@ void Menu::menuChoice(MenuItem item) case MenuItem::printPlayerCargo: game_->printPlayerCargo(); break; + case MenuItem::printStoreCargo: + game_->printStoreCargo(); + break; case MenuItem::buyCargo: game_->printStoreCargo(); game_->buyCargo(); @@ -51,9 +54,6 @@ void Menu::menuChoice(MenuItem item) case MenuItem::Exit: game_->quitRequested(); break; - case MenuItem::printStoreCargo: - game_->printStoreCargo(); - break; default: std::cout << "Undefined choice" << '\n'; break; @@ -64,12 +64,12 @@ void Menu::printMenu() { std::cout << "What is your choice capt'n? " << '\n'; std::cout << "==========================\n"; - std::cout << "1 - Print Cargo\n"; + std::cout << "0 - Print Cargo\n"; + std::cout << "1 - Print Store Cargo\n"; std::cout << "2 - Buy Cargo\n"; std::cout << "3 - Sell Cargo\n"; std::cout << "4 - Travel\n"; std::cout << "5 - Exit\n"; - std::cout << "6 - Print Store Cargo\n"; std::cout << "==========================\n"; game_->displayPlayerStats(); diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 1b902cc12..b7c3cd14f 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -12,13 +12,12 @@ class Menu public: enum MenuItem { - wrongChoice, printPlayerCargo, + printStoreCargo, buyCargo, sellCargo, travel, Exit, - printStoreCargo, }; Menu(Game*); From c3d1db10c6d9e0770bd3c694a80785a3206b793d Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 19:23:47 +0200 Subject: [PATCH 130/151] Menu methods isPlayerChoiceValid, menuChoice, printMenu are const --- shm/Menu.cpp | 6 +++--- shm/Menu.hpp | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/shm/Menu.cpp b/shm/Menu.cpp index 26a279c8c..a53459d2f 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -18,7 +18,7 @@ void Menu::playerChoice() menuChoice(item_); } -bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) +bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) const { if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 5) { @@ -30,7 +30,7 @@ bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) return true; } -void Menu::menuChoice(MenuItem item) +void Menu::menuChoice(MenuItem item) const { switch(item) { @@ -60,7 +60,7 @@ void Menu::menuChoice(MenuItem item) } } -void Menu::printMenu() +void Menu::printMenu() const { std::cout << "What is your choice capt'n? " << '\n'; std::cout << "==========================\n"; diff --git a/shm/Menu.hpp b/shm/Menu.hpp index b7c3cd14f..24b3e41a6 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -23,10 +23,11 @@ class Menu Menu(Game*); ~Menu(); - bool isPlayerChoiceValid(const size_t &playerAnswer); - void menuChoice(MenuItem); - void printMenu(); void playerChoice(); + bool isPlayerChoiceValid(const size_t &playerAnswer) const; + void menuChoice(MenuItem) const; + void printMenu() const; + private: MenuItem item_; From 1901176fd953d81056cc861c7bd021f317bb428d Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 19:36:54 +0200 Subject: [PATCH 131/151] Storable - constructor definition moved to cpp file --- shm/Storable.cpp | 13 +++++++++++++ shm/Storable.hpp | 15 +++------------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index 04137ab7e..f4063c11b 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -1,5 +1,18 @@ #include "Storable.hpp" +Storable::Storable(int money, size_t availableSpace) + : money_(money) + , availableSpace_(availableSpace) + {} + +Storable::Storable(int money, size_t availableSpace, Time* time) + : money_(money) + , availableSpace_(availableSpace) + , time_(time) + { + time_->attach(this); + } + void Storable::SpendMoney(int moneyToSpend) { if (money_ - moneyToSpend <= 0) diff --git a/shm/Storable.hpp b/shm/Storable.hpp index ac3dad8d6..f2b56456d 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -12,20 +12,11 @@ class Storable : public TimeEffectable { public: // Constructor for objects not subscribed to Time class (i.e. Player) - Storable(int money, size_t availableSpace) - : money_(money) - , availableSpace_(availableSpace) - {} + Storable(int money, size_t availableSpace); //Constructor for objects subscribed to Time class (i.e. Store) - Storable(int money, size_t availableSpace, Time* time) - : money_(money) - , availableSpace_(availableSpace) - , time_(time) - { - time_->attach(this); - } - + Storable(int money, size_t availableSpace, Time* time); + virtual ~Storable(); int getMoney() {return money_; } From 939c4943298d4e4f7844350c1e270a0f76499d31 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 20:05:25 +0200 Subject: [PATCH 132/151] Removed observer attachement from one of the constructors --- shm/ship.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index 6d3bd3483..7bc68eb78 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -22,9 +22,7 @@ Ship::Ship(int capacity, int Crew, int speed, const std::string &name, size_t id Ship::Ship(int maxCrew, int speed, size_t id, Time *time) : Ship(0, maxCrew, speed, "", id, time) -{ - time_->attach(this); -} +{} Ship::~Ship() { From 9e6b2d4611303ef0686e9209b29cd94292a9a050 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 20:05:49 +0200 Subject: [PATCH 133/151] removed empty method --- shm/Storable.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/shm/Storable.cpp b/shm/Storable.cpp index f4063c11b..e07b0f165 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -13,6 +13,8 @@ Storable::Storable(int money, size_t availableSpace, Time* time) time_->attach(this); } +Storable::~Storable(){} + void Storable::SpendMoney(int moneyToSpend) { if (money_ - moneyToSpend <= 0) @@ -28,8 +30,4 @@ void Storable::EarnMoney(int moneyToEarn) money_ += moneyToEarn; } } -void Storable::removeCargo(std::shared_ptr, size_t) -{ - -} -Storable::~Storable(){} + From c08090c21df9dad69ebc59c8824b968190255dcb Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 20:29:07 +0200 Subject: [PATCH 134/151] Time::notify - value passed by reference --- shm/Time.cpp | 2 +- shm/Time.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/shm/Time.cpp b/shm/Time.cpp index ca4750f77..0123c8bcd 100644 --- a/shm/Time.cpp +++ b/shm/Time.cpp @@ -20,7 +20,7 @@ void Time::detach(TimeEffectable* observer) list_observer_.remove(observer); } -void Time::notify(size_t elapsedDays) +void Time::notify(size_t & elapsedDays) { for(auto el : list_observer_) { diff --git a/shm/Time.hpp b/shm/Time.hpp index 6747d0b37..15e1cc8f7 100644 --- a/shm/Time.hpp +++ b/shm/Time.hpp @@ -11,7 +11,7 @@ class Time { void attach(TimeEffectable* observer); void detach(TimeEffectable* observer); - void notify(size_t); + void notify(size_t &); void changeTime(size_t); void HowManyObserver(); size_t getCurrentTime() { return currentTime_; } From 113b96d72c4f358a7c653bfac41e6918430d1df5 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 5 Sep 2021 20:30:00 +0200 Subject: [PATCH 135/151] Time::notify added reference to elements in loop --- shm/Time.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/Time.cpp b/shm/Time.cpp index 0123c8bcd..e6bfa15e3 100644 --- a/shm/Time.cpp +++ b/shm/Time.cpp @@ -22,7 +22,7 @@ void Time::detach(TimeEffectable* observer) void Time::notify(size_t & elapsedDays) { - for(auto el : list_observer_) + for(const auto & el : list_observer_) { el->nextDay(elapsedDays); } From 68939f42e3d0ba334f50f475d06f595d81ad68f0 Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 6 Sep 2021 21:20:26 +0200 Subject: [PATCH 136/151] Ship::addCargo - vector appended with push_back instead of emplace_back --- shm/ship.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index 7bc68eb78..4bd081b56 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -57,7 +57,7 @@ void Ship::addCargo(Cargo * item) } else { - shipCargo.emplace_back(item); + shipCargo.push_back(item); } } From 6e5d003d73c05ef57104cf29d06ba9a7846e05fd Mon Sep 17 00:00:00 2001 From: kondorski Date: Mon, 6 Sep 2021 21:35:15 +0200 Subject: [PATCH 137/151] Ship::removeCargo - const added to shipCargoAmount and iterator --- shm/ship.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/shm/ship.cpp b/shm/ship.cpp index 4bd081b56..133c9e618 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -63,10 +63,10 @@ void Ship::addCargo(Cargo * item) void Ship::removeCargo(Cargo * item, size_t amount) { - auto shipCargoAmount = findMatchCargo(item)->getAmount(); + const auto shipCargoAmount = findMatchCargo(item)->getAmount(); if(shipCargoAmount == amount) { - auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el){ return *el == *item; }); + const auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el){ return *el == *item; }); if(it != end(shipCargo)) { shipCargo.erase(it); } @@ -96,7 +96,6 @@ void Ship::load(Cargo * loadCargo, size_t amount) Cargo* toAdd; if(Fruit* f = dynamic_cast(loadCargo)){ toAdd = new Fruit(*f); - } if(Item* i = dynamic_cast(loadCargo)){ toAdd = new Item(*i); From e150a0e16b66e5ef8a9722764956d89424bef464 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 7 Sep 2021 20:41:22 +0200 Subject: [PATCH 138/151] Adding input validation --- shm/Game.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 6d3e77976..6727b7342 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,5 +1,5 @@ #include "Game.hpp" - +#include class Map; Game::Game(size_t money, size_t gameDays, size_t finalGoal) @@ -125,12 +125,15 @@ void Game::printStoreCargo() currentStore_->printStoreCargo(); } + + void Game::buyCargo() { int cargoElement = 0; size_t amount = 0; std::cout << "Choose cargo: "; std::cin >> cargoElement; + if (cargoElement >=0 && cargoElement < currentStore_->storeCargo.size()) { std::cout << "Choose amount: "; @@ -139,7 +142,9 @@ void Game::buyCargo() } else { - std::cout << "There is no such cargo in this store." << '\n'; + std::cout << "There is no such cargo in this store." << '\n'; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); buyCargo(); } @@ -159,7 +164,9 @@ void Game::sellCargo() } else { - std::cout << "There is no such cargo in this ship." << '\n'; + std::cout << "There is no such cargo in this ship." << '\n'; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); sellCargo(); } } From cf1bed7274cdcf966083c33f23016e43d71e7466 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 7 Sep 2021 20:54:04 +0200 Subject: [PATCH 139/151] Changing if's for else if's --- shm/Game.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 6727b7342..978599530 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -24,12 +24,12 @@ void Game::startGame() endGameWin(); quitRequested(); } - if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) + else if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) { endGameLose(); quitRequested(); } - if (quitRequest) + else if(quitRequest) { break; } From d4fc6e0056eba2aa9223f0cb22b7dccfa4968dba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 7 Sep 2021 21:12:13 +0200 Subject: [PATCH 140/151] Changing do while to while loop --- shm/Game.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 978599530..3fffe1848 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -18,7 +18,7 @@ void Game::startGame() { printTitle(); setPlayer(); - do{ + while(true){ if (playerOne_->getMoney() >= 2000) { endGameWin(); @@ -29,15 +29,13 @@ void Game::startGame() endGameLose(); quitRequested(); } - else if(quitRequest) + if(quitRequest) { break; } - menu_->printMenu(); menu_->playerChoice(); - - }while(!quitRequest); + } } void Game::printTitle() From 681f9f0cf17d3c70c042f1f39bc776f5e67779cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 7 Sep 2021 21:26:50 +0200 Subject: [PATCH 141/151] Adding checking if input is digit --- shm/Game.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 3fffe1848..0ff602aa2 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -72,7 +72,7 @@ void Game::travel() printMap(*map_); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; - if (i < map_->islands_.size() && i >= 0) + if (isdigit(i) && i < map_->islands_.size() && i >= 0) { auto travelTime = map_->calculateDistance(map_->islands_.at(i)) / playerOne_->getSpeed(); std::cout << "Your travel will take " << travelTime << " days." << '\n'; @@ -84,6 +84,8 @@ void Game::travel() else { std::cout << "There is no such island on the map! Choose another destination!" << '\n'; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); Game::travel(); } } From 08f0381efaac773854fb1a51ad640d8054755e33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Tue, 7 Sep 2021 21:50:14 +0200 Subject: [PATCH 142/151] Adding const to calculating distance --- shm/Map.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/shm/Map.cpp b/shm/Map.cpp index 0edd76f9a..796e58691 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -8,7 +8,7 @@ #include "coordinates.hpp" #include "island.hpp" #include "Map.hpp" -# + namespace constVariables{ constexpr size_t COORDINATE_MIN = 0; constexpr size_t COORDINATE_MAX = 99; @@ -29,7 +29,7 @@ void Map::SetUpRandomIsland(Time * time){ cords.reserve(constVariables::ISLANDS_COUNT); for (int i = 0; i < constVariables::ISLANDS_COUNT; i++) { - Coordinates c ((float)distrib(gen), (float)distrib(gen)); + Coordinates c (static_cast(distrib(gen)), static_cast(distrib(gen))); while (contains(cords, c)) { @@ -60,11 +60,11 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { size_t Map::calculateDistance(Island island_pos_) { - auto distanceX = current_pos_->getPosition().GetPositionX(); - auto distanceY = current_pos_->getPosition().GetPositionY(); - auto disX = island_pos_.getPosition().GetPositionX(); - auto disY = island_pos_.getPosition().GetPositionY(); - auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); + const auto distanceX = current_pos_->getPosition().GetPositionX(); + const auto distanceY = current_pos_->getPosition().GetPositionY(); + const auto disX = island_pos_.getPosition().GetPositionX(); + const auto disY = island_pos_.getPosition().GetPositionY(); + const auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); std::cout << "Distance: " << distance <<'\n'; return distance; } From f027a90ba4cef22b1420a9db5e85c679edec3275 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 28 Oct 2021 20:19:39 +0200 Subject: [PATCH 143/151] Removed ugly dynamic cast, created Clone() --- shm/CMakeLists.txt | 6 +++++- shm/alcohol.cpp | 4 ++++ shm/alcohol.hpp | 1 + shm/cargo.hpp | 2 ++ shm/fruit.cpp | 32 ++++++++++++++++++++------------ shm/fruit.hpp | 1 + shm/item.cpp | 4 ++++ shm/item.hpp | 1 + shm/ship.cpp | 28 ++++++++++++++-------------- 9 files changed, 52 insertions(+), 27 deletions(-) diff --git a/shm/CMakeLists.txt b/shm/CMakeLists.txt index fbe2d74ef..f9ca64c8a 100644 --- a/shm/CMakeLists.txt +++ b/shm/CMakeLists.txt @@ -19,6 +19,10 @@ set(SRC set(FLAGS -Wall -Wextra -Werror -Wconversion -O3) +add_library(${PROJECT_NAME}-lib STATIC ${SRC}) + add_executable(${PROJECT_NAME} main.cpp ${SRC}) + +#target_compile_options(${PROJECT_NAME} PRIVATE ${FLAGS}) + set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON) -# target_compile_options(${PROJECT_NAME} PRIVATE ${FLAGS}) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 7a273d5bb..1f56aed9c 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -42,4 +42,8 @@ bool Alcohol::operator==(const Cargo& other) const { void Alcohol::nextDay(size_t elapsedTime) { basePrice_ += (elapsedTime * 2); +} +Cargo* Alcohol::clone() +{ + return new Alcohol(*this); } \ No newline at end of file diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 083bc2c74..77ded0909 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -15,6 +15,7 @@ class Alcohol : public Cargo { ~Alcohol() override; // override from Cargo + Cargo* clone() override; size_t getPrice() const override; const std::string &getName() const override { return name_; } size_t getAmount() const override { return amount_; } diff --git a/shm/cargo.hpp b/shm/cargo.hpp index d4fa15088..c6901e0cd 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -1,5 +1,6 @@ #pragma once #include +#include #include "Time.hpp" #include "TimeEffectable.hpp" @@ -16,6 +17,7 @@ class Cargo : public TimeEffectable virtual size_t getAmount() const { return amount_; } virtual size_t getBasePrice() const { return basePrice_; } + virtual Cargo* clone(){return this;} void printCargo(int) const; std::string getCargoInfo(); void reduceAmount(size_t); diff --git a/shm/fruit.cpp b/shm/fruit.cpp index 4ba6d50a5..fe482a711 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -1,11 +1,10 @@ #include #include "fruit.hpp" - Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed) - : Cargo(name, amount, basePrice, time) - , time_elapsed_(time_elapsed) - , expiry_date_(expiry_date) - {} +Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed) + : Cargo(name, amount, basePrice, time), time_elapsed_(time_elapsed), expiry_date_(expiry_date) +{ +} Fruit::~Fruit() { @@ -14,7 +13,8 @@ Fruit::~Fruit() size_t Fruit::getPrice() const { - return static_cast(basePrice_ * ((size_t)(expiry_date_ - time_elapsed_)) / expiry_date_); + //return static_cast(basePrice_ * ((size_t)(expiry_date_ - time_elapsed_)) / expiry_date_); + return basePrice_; } Cargo &Fruit::operator+=(size_t amount) @@ -36,21 +36,29 @@ Cargo &Fruit::operator-=(size_t amount) return *this; } -bool Fruit::operator==(const Cargo& other) const +bool Fruit::operator==(const Cargo &other) const { - try { - const Fruit& other_fruit = dynamic_cast(other); + try + { + const Fruit &other_fruit = dynamic_cast(other); return Cargo::operator==(other) && expiry_date_ == other_fruit.expiry_date_; - } catch (std::bad_cast&) { - return false; + } + catch (std::bad_cast &) + { + return false; } } -void Fruit::nextDay(size_t elapsedTime) +void Fruit::nextDay(size_t elapsedTime) { time_elapsed_ += elapsedTime; if (time_elapsed_ >= expiry_date_) { basePrice_ = 0; } +} + +Cargo *Fruit::clone() +{ + return new Fruit(*this); } \ No newline at end of file diff --git a/shm/fruit.hpp b/shm/fruit.hpp index ac27432e4..c2c413384 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -15,6 +15,7 @@ class Fruit : public Cargo size_t getAmount() const override { return amount_; } size_t getBasePrice() const override { return basePrice_; } + Cargo* clone() override; Cargo &operator+=(size_t) override; Cargo &operator-=(size_t) override; bool operator==(const Cargo &) const override; diff --git a/shm/item.cpp b/shm/item.cpp index a81e6892e..01557a244 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -45,4 +45,8 @@ bool Item::operator==(const Cargo& other) const { void Item::nextDay(size_t elapsedTime) { basePrice_ += elapsedTime; +} +Cargo* Item::clone() +{ + return new Item(*this); } \ No newline at end of file diff --git a/shm/item.hpp b/shm/item.hpp index fa7676dd7..70616b918 100644 --- a/shm/item.hpp +++ b/shm/item.hpp @@ -20,6 +20,7 @@ class Item : public Cargo ~Item() override = default; // override from Cargo + Cargo* clone() override; size_t getPrice() const override; const std::string &getName() const override { return name_; } size_t getAmount() const override { return amount_; } diff --git a/shm/ship.cpp b/shm/ship.cpp index 133c9e618..43f097c01 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -51,9 +51,9 @@ Ship &Ship::operator+=(size_t num) void Ship::addCargo(Cargo * item) { auto cargoPtr = findMatchCargo(item); - if(findMatchCargo(item)) + if(cargoPtr) { - findMatchCargo(item)->increaseAmount(item->getAmount()); + cargoPtr->increaseAmount(item->getAmount()); } else { @@ -91,19 +91,19 @@ Cargo * Ship::findMatchCargo(Cargo * cargo) void Ship::load(Cargo * loadCargo, size_t amount) { if (amount <= calculateAvailableSpace()) - { + { + //Cargo * toAdd; loadCargo->reduceAmount(amount); - Cargo* toAdd; - if(Fruit* f = dynamic_cast(loadCargo)){ - toAdd = new Fruit(*f); - } - if(Item* i = dynamic_cast(loadCargo)){ - toAdd = new Item(*i); - } - if(Alcohol* a = dynamic_cast(loadCargo)){ - toAdd = new Alcohol(*a); - } - + // if(Fruit* f = dynamic_cast(loadCargo)){ + // toAdd = new Fruit(*f); + // } + // if(Item* i = dynamic_cast(loadCargo)){ + // toAdd = new Item(*i); + // } + // if(Alcohol* a = dynamic_cast(loadCargo)){ + // toAdd = new Alcohol(*a); + // } + const auto toAdd = loadCargo->clone(); toAdd->setAmount(amount); addCargo(toAdd); } From d49c0f78d893faf5ad80cf2e213ac01e7b512655 Mon Sep 17 00:00:00 2001 From: Crazyayane07 Date: Sat, 30 Oct 2021 16:04:57 +0200 Subject: [PATCH 144/151] warning fixes --- shm/Game.cpp | 158 +++++++++++++++++++++++++++++++++++++++--------- shm/Map.cpp | 85 +++++++++++++++++++------- shm/Menu.cpp | 105 +++++++++++++++++++++++--------- shm/Store.cpp | 161 +++++++++++++++++++++++++++++++++++++++---------- shm/cargo.cpp | 56 +++++++++++------ shm/island.hpp | 13 +++- shm/player.cpp | 38 +++++++++--- shm/ship.cpp | 134 +++++++++++++++++++++++++++++++--------- 8 files changed, 579 insertions(+), 171 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 0ff602aa2..3024add8a 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,183 +1,283 @@ #include "Game.hpp" + #include + class Map; Game::Game(size_t money, size_t gameDays, size_t finalGoal) + : time_(new Time()) - , money_(money) - , gameDays_(gameDays) - , finalGoal_(finalGoal) - , menu_(std::make_unique(this)) - , map_(new Map(time_)) - , playerOne_(new Player(std::make_unique(20, 30, 10, "Dar Pomorza", 3, time_), 1000, 1000)) - {} + + , + money_(money) + + , + gameDays_(gameDays) + + , + finalGoal_(finalGoal) + + , + menu_(std::make_unique(this)) + + , + map_(new Map(time_)) + + , + playerOne_(new Player(std::make_unique(20, 30, 10, "Dar Pomorza", 3, time_), 1000, 1000)) + +{} Game::Game() {} void Game::startGame() + { printTitle(); - setPlayer(); - while(true){ + + setPlayer(); + + while (true) { if (playerOne_->getMoney() >= 2000) + { endGameWin(); + quitRequested(); + } + else if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) + { endGameLose(); + quitRequested(); } - if(quitRequest) + + if (quitRequest) + { break; } + menu_->printMenu(); + menu_->playerChoice(); } } void Game::printTitle() + { std::cout << "Project SHM" << '\n'; } void Game::setPlayer() + { std::cout << "Set your name captain!:" << '\n'; + std::string playerName; + std::cin >> playerName; + playerOne_->setName(playerName); + setStartingCargo(); + std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; + map_->changeCurrentPosition(&map_->islands_.at(0)); + currentStore_ = map_->islands_.at(0).returnIslandStore(); - std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; + + std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; + std::cout << "You are in start point. "; + map_->PrintCurrentPosition(); + std::cout << "You have " << playerOne_->getMoney() << " gold in Your treasure chest!" << '\n'; + std::cout << "Choose Your next move!" << '\n'; } -void Game::printMap(Map &map) +void Game::printMap(Map& map) + { map.PrintCurrentPosition(); + map.DebugPrintIsland(); } void Game::travel() + { auto i = 0; + printMap(*map_); + std::cout << "Choose Your destination captain!" << '\n'; + std::cin >> i; - if (isdigit(i) && i < map_->islands_.size() && i >= 0) + + if (isdigit(i) && i < (int)map_->islands_.size() && i >= 0) + { auto travelTime = map_->calculateDistance(map_->islands_.at(i)) / playerOne_->getSpeed(); + std::cout << "Your travel will take " << travelTime << " days." << '\n'; + map_->changeCurrentPosition(&map_->islands_.at(i)); + map_->PrintCurrentPosition(); + time_->changeTime(travelTime); + currentStore_ = map_->islands_.at(i).returnIslandStore(); + } + else + { std::cout << "There is no such island on the map! Choose another destination!" << '\n'; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); + Game::travel(); } } void Game::printPlayerCargo() + { playerOne_->getShip()->printShipCargo(); } void Game::setStartingCargo() + { - playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 40, time_, 5, 0)); + playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 40, time_, 5, 0)); + playerOne_->getShip()->shipCargo.push_back(new Fruit("Apple", 1, 14, time_, 20, 0)); - playerOne_->getShip()->shipCargo.push_back(new Alcohol("Rum", 1, 60, time_, 70)); - playerOne_->getShip()->shipCargo.push_back(new Item("Hook", 1, 100, time_, Rarity::common)); + + playerOne_->getShip()->shipCargo.push_back(new Alcohol("Rum", 1, 60, time_, 70)); + + playerOne_->getShip()->shipCargo.push_back(new Item("Hook", 1, 100, time_, Rarity::common)); } void Game::quitRequested() + { quitRequest = true; } void Game::displayPlayerStats() + { - std::cout << "(Little reminder)" << '\n'; + std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; + std::cout << "Your position on the map: \n"; + map_->PrintCurrentPosition(); + std::cout << "Day " << time_->getCurrentTime() << "/" << gameDays_ << '\n'; + std::cout << "==========================\n"; } void Game::printStoreCargo() + { std::cout << "This store contains: " << '\n'; + currentStore_->printStoreCargo(); } - - void Game::buyCargo() + { int cargoElement = 0; + size_t amount = 0; + std::cout << "Choose cargo: "; + std::cin >> cargoElement; - if (cargoElement >=0 && cargoElement < currentStore_->storeCargo.size()) + if (cargoElement >= 0 && cargoElement < (int)currentStore_->storeCargo.size()) + { - std::cout << "Choose amount: "; + std::cout << "Choose amount: "; + std::cin >> amount; - currentStore_->buy(currentStore_->storeCargo.at(cargoElement),amount,playerOne_ ); + + currentStore_->buy(currentStore_->storeCargo.at(cargoElement), amount, playerOne_); + } + else + { std::cout << "There is no such cargo in this store." << '\n'; + std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); + buyCargo(); } - } void Game::sellCargo() + { int cargoElement = 0; + size_t amount = 0; + std::cout << "Choose cargo: "; + std::cin >> cargoElement; - if (cargoElement >= 0 && cargoElement < playerOne_->getShip()->shipCargo.size()) + + if (cargoElement >= 0 && cargoElement < (int)playerOne_->getShip()->shipCargo.size()) + { - std::cout << "Choose amount: "; + std::cout << "Choose amount: "; + std::cin >> amount; + currentStore_->sell(playerOne_->getCargo(cargoElement), amount, playerOne_); + } + else + { - std::cout << "There is no such cargo in this ship." << '\n'; + std::cout << "There is no such cargo in this ship." << '\n'; + std::cin.clear(); - std::cin.ignore(std::numeric_limits::max(), '\n'); + + std::cin.ignore(std::numeric_limits::max(), '\n'); + sellCargo(); } } void Game::endGameLose() + { std::cout << "You're time has come Captain! This is sad end!" << '\n'; - } + void Game::endGameWin() + { std::cout << "Arrr you won" << '\n'; - } \ No newline at end of file diff --git a/shm/Map.cpp b/shm/Map.cpp index 796e58691..674acb5f0 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -1,57 +1,89 @@ #include + #include + #include + #include + #include + #include #include "coordinates.hpp" + #include "island.hpp" + #include "Map.hpp" -namespace constVariables{ - constexpr size_t COORDINATE_MIN = 0; - constexpr size_t COORDINATE_MAX = 99; - constexpr size_t ISLANDS_COUNT = 10; -} +namespace constVariables { + +constexpr size_t COORDINATE_MIN = 0; + +constexpr size_t COORDINATE_MAX = 99; + +constexpr size_t ISLANDS_COUNT = 10; + +} // namespace constVariables Map::Map(Time* time) { SetUpRandomIsland(time); } -void Map::SetUpRandomIsland(Time * time){ +void Map::SetUpRandomIsland(Time* time) { islands_.reserve(constVariables::ISLANDS_COUNT); + std::random_device rd; + std::mt19937 gen(rd()); - std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN , constVariables::COORDINATE_MAX); + + std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); std::vector cords; + cords.reserve(constVariables::ISLANDS_COUNT); - for (int i = 0; i < constVariables::ISLANDS_COUNT; i++) - { - Coordinates c (static_cast(distrib(gen)), static_cast(distrib(gen))); + + for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) + + { + int x = (int)distrib(gen); + + int y = (int)distrib(gen); + + Coordinates c(x, y); while (contains(cords, c)) + { - c.SetPositionX(distrib(gen)); - c.SetPositionY(distrib(gen)); + x = (int)distrib(gen); + + y = (int)distrib(gen); + + c.SetPositionX(x); + + c.SetPositionY(y); } - islands_.push_back(Island (c, time)); + + islands_.push_back(Island(c, time)); + cords.push_back(c); - } + } } -void Map::DebugPrintIsland () { +void Map::DebugPrintIsland() { int j = 0; - for (auto &el : islands_) { - std::cout << j << " | "<< std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; + + for (auto& el : islands_) { + std::cout << j << " | " << std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; + j++; } } void Map::PrintCurrentPosition() + { - std::cout <<"Current coordinates: " << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY()) << '\n'; + std::cout << "Current coordinates: " << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY()) << '\n'; } bool Map::contains(const std::vector& vec, const Coordinates& c) { @@ -59,18 +91,25 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { } size_t Map::calculateDistance(Island island_pos_) + { const auto distanceX = current_pos_->getPosition().GetPositionX(); + const auto distanceY = current_pos_->getPosition().GetPositionY(); + const auto disX = island_pos_.getPosition().GetPositionX(); + const auto disY = island_pos_.getPosition().GetPositionY(); - const auto distance = sqrt(pow((disX-distanceX), 2) + pow((disY - distanceY),2)); - std::cout << "Distance: " << distance <<'\n'; - return distance; + + const auto distance = sqrt(pow((disX - distanceX), 2) + pow((disY - distanceY), 2)); + + std::cout << "Distance: " << distance << '\n'; + + return (size_t)distance; } -void Map::addIsland(Coordinates &coordinate, Time * time) +void Map::addIsland(Coordinates& coordinate, Time* time) + { islands_.push_back(Island(coordinate, time)); } - diff --git a/shm/Menu.cpp b/shm/Menu.cpp index a53459d2f..b25219c89 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,77 +1,124 @@ -#include +#include + #include "Menu.hpp" + #include "Game.hpp" Menu::Menu(Game* game) + : game_(game) - {} + +{} Menu::~Menu() {} void Menu::playerChoice() + { size_t option{}; + do { std::cin >> option; + } while (!isPlayerChoiceValid(option)); + item_ = static_cast(option); + menuChoice(item_); } -bool Menu::isPlayerChoiceValid(const size_t &playerAnswer) const +bool Menu::isPlayerChoiceValid(const size_t& playerAnswer) const + { - if(std::cin.fail() || playerAnswer < 0 || playerAnswer > 5) + if (std::cin.fail() || playerAnswer > 5) + { std::cin.clear(); + std::cin.ignore(std::numeric_limits::max(), '\n'); + std::cout << "Wrong answer, please use numbers 0 - 5" << '\n'; + return false; } + return true; } void Menu::menuChoice(MenuItem item) const + { - switch(item) + switch (item) + { - case MenuItem::printPlayerCargo: - game_->printPlayerCargo(); - break; - case MenuItem::printStoreCargo: - game_->printStoreCargo(); - break; - case MenuItem::buyCargo: - game_->printStoreCargo(); - game_->buyCargo(); - break; - case MenuItem::sellCargo: - game_->printPlayerCargo(); - game_->sellCargo(); - break; - case MenuItem::travel: - game_->travel(); - break; - case MenuItem::Exit: - game_->quitRequested(); - break; - default: - std::cout << "Undefined choice" << '\n'; - break; + case MenuItem::printPlayerCargo: + + game_->printPlayerCargo(); + + break; + + case MenuItem::printStoreCargo: + + game_->printStoreCargo(); + + break; + + case MenuItem::buyCargo: + + game_->printStoreCargo(); + + game_->buyCargo(); + + break; + + case MenuItem::sellCargo: + + game_->printPlayerCargo(); + + game_->sellCargo(); + + break; + + case MenuItem::travel: + + game_->travel(); + + break; + + case MenuItem::Exit: + + game_->quitRequested(); + + break; + + default: + + std::cout << "Undefined choice" << '\n'; + + break; } } void Menu::printMenu() const + { std::cout << "What is your choice capt'n? " << '\n'; + std::cout << "==========================\n"; + std::cout << "0 - Print Cargo\n"; + std::cout << "1 - Print Store Cargo\n"; + std::cout << "2 - Buy Cargo\n"; + std::cout << "3 - Sell Cargo\n"; + std::cout << "4 - Travel\n"; + std::cout << "5 - Exit\n"; + std::cout << "==========================\n"; game_->displayPlayerStats(); } - diff --git a/shm/Store.cpp b/shm/Store.cpp index 758e61304..32ac1170e 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -1,145 +1,218 @@ #include + #include "cargo.hpp" + #include "player.hpp" + #include "Time.hpp" + #include "Store.hpp" constexpr size_t numberOfPossibleFruitCargo = 4; + constexpr size_t numberOfPossibleAlcoholCargo = 4; + constexpr size_t numberOfPossibleItemCargo = 4; + std::vector possibleFruitCargoNames = {"Banana", "Pineapple", "Apple", "Pear"}; + std::vector possibleAlcoholCargoNames = {"Whiskey", "Rum", "Vodka", "Beer"}; + std::vector possibleItemCargoNames = {"Rope", "Hook", "Screw", "Spoon"}; + std::vector rarityChoice = {Rarity::common, Rarity::rare, Rarity::epic, Rarity::legendary}; -Store::Store(int money, size_t availableSpace, Time *time) +Store::Store(int money, size_t availableSpace, Time* time) + : Storable(money, availableSpace, time) + { storeCargo.reserve(20); + SetUpRandomCargo(time); + storeCargo.shrink_to_fit(); } + Store::~Store() {} -void Store::SetUpRandomCargo(Time *time) { +void Store::SetUpRandomCargo(Time* time) { std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> fruitCargoDistrib(0, numberOfPossibleFruitCargo); + std::uniform_real_distribution<> alcoholCargoDistrib(0, numberOfPossibleAlcoholCargo); + std::uniform_real_distribution<> itemCargoDistrib(0, numberOfPossibleItemCargo); - + std::uniform_real_distribution<> fruitPrice(10, 25); + std::uniform_real_distribution<> alcoholPrice(50, 100); - std::uniform_real_distribution<> itemPrice(100,300); - std::uniform_real_distribution<> quantity(1,50); - std::uniform_real_distribution<> percentage(20,100); + std::uniform_real_distribution<> itemPrice(100, 300); + + std::uniform_real_distribution<> quantity(1, 50); + + std::uniform_real_distribution<> percentage(20, 100); + + std::uniform_real_distribution<> itemRarity(0, (int)rarityChoice.size() - 1.0); + + Rarity randomRarity = rarityChoice[(int)itemRarity(gen)]; - std::uniform_real_distribution<> itemRarity(0, rarityChoice.size() -1); - Rarity randomRarity = rarityChoice[itemRarity(gen)]; + size_t fruitCargoNumber = (size_t)fruitCargoDistrib(gen); - size_t fruitCargoNumber = fruitCargoDistrib(gen); - size_t alcoholCargoNumber = alcoholCargoDistrib(gen); - size_t itemCargoNumber = itemCargoDistrib(gen); + size_t alcoholCargoNumber = (size_t)alcoholCargoDistrib(gen); - size_t fruitPriceX = fruitPrice(gen); - size_t alcoholPriceX = alcoholPrice(gen); - size_t itemPriceX = itemPrice(gen); + size_t itemCargoNumber = (size_t)itemCargoDistrib(gen); - size_t cargoQuantity = quantity(gen); - size_t alcoholPercentage = percentage(gen); + size_t fruitPriceX = (size_t)fruitPrice(gen); + + size_t alcoholPriceX = (size_t)alcoholPrice(gen); + + size_t itemPriceX = (size_t)itemPrice(gen); + + size_t cargoQuantity = (size_t)quantity(gen); + + size_t alcoholPercentage = (size_t)percentage(gen); std::string fruitCargoName = possibleFruitCargoNames[fruitCargoNumber]; + std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; + std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; - storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity+10), fruitPriceX, time, 15, 0)); - storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); - storeCargo.push_back(new Item(itemCargoName, (cargoQuantity/2), itemPriceX, time, randomRarity)); + storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity + 10), fruitPriceX, time, 15, 0)); + storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); + + storeCargo.push_back(new Item(itemCargoName, (cargoQuantity / 2), itemPriceX, time, randomRarity)); } -Cargo * Store::findMatchCargo(Cargo * cargo) +Cargo* Store::findMatchCargo(Cargo* cargo) + { - for (auto &el : storeCargo) + for (auto& el : storeCargo) + { if (*el == *cargo) + { return el; } } + return nullptr; } -Response Store::buy(Cargo * cargo, size_t amount, Player *player) +Response Store::buy(Cargo* cargo, size_t amount, Player* player) + { if (findMatchCargo(cargo)) + { auto price = 0; - price = amount * cargo->getPrice(); + + price = (int)(amount * cargo->getPrice()); + if (player->getAvailableSpace() < amount) + { std::cout << "Lack of space" << '\n'; + return Response::lack_of_space; } + if (cargo->getAmount() < amount) + { std::cout << "Lack of cargo" << '\n'; + return Response::lack_of_cargo; } + if (player->getMoney() < price) + { std::cout << "Lack of money" << '\n'; + return Response::lack_of_money; } - + money_ += price; + player->SpendMoney(price); + player->getShip()->load(cargo, amount); + return Response::done; + } + else + { return Response::lack_of_cargo; } } -Response Store::sell(Cargo * cargo, size_t amount, Player *player) +Response Store::sell(Cargo* cargo, size_t amount, Player* player) + { if (player->getShip()->findMatchCargo(cargo)) + { auto price = 0; - price = amount * cargo->getPrice(); + + price = (int)(amount * cargo->getPrice()); if (getAvailableSpace() < amount) + { std::cout << "Lack of space" << '\n'; + return Response::lack_of_space; } + if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount) + { std::cout << "Lack of cargo" << '\n'; + return Response::lack_of_cargo; } - if (money_ < amount * cargo->getBasePrice()) + + if (money_ < (int)(amount * cargo->getBasePrice())) + { std::cout << "Lack of money" << '\n'; + return Response::lack_of_money; } if (money_ < price) + { std::cout << "Lack of money" << '\n'; + return Response::lack_of_money; } + money_ -= price; + addStoreCargo(cargo); + player->getShip()->unload(cargo, amount); + player->EarnMoney(price); return Response::done; + } + else + { return Response::lack_of_cargo; } @@ -147,51 +220,73 @@ Response Store::sell(Cargo * cargo, size_t amount, Player *player) return Response::done; } -Cargo * Store::getCargo(size_t index) const +Cargo* Store::getCargo(size_t index) const + { return nullptr; } void Store::nextDay(size_t elapsedTime) + { for (auto el : storeCargo) + { el->reduceAmount(1); } } void Store::printStoreCargo() + { auto i = 0; + for (auto el : storeCargo) + { std::cout << '\n'; + el->printCargo(i); + i++; } } -void Store::removeCargo(Cargo * item, size_t amount) +void Store::removeCargo(Cargo* item, size_t amount) + { auto storeCargoAmount = findMatchCargo(item)->getAmount(); - if(storeCargoAmount == amount) + + if (storeCargoAmount == amount) + { auto i = std::find(begin(storeCargo), end(storeCargo), item); + storeCargo.erase(i); + } + else + { findMatchCargo(item)->reduceAmount(amount); } } -void Store::addStoreCargo(Cargo * item) + +void Store::addStoreCargo(Cargo* item) + { auto cargoPtr = findMatchCargo(item); - if(findMatchCargo(item)) + + if (cargoPtr) + { - findMatchCargo(item)->increaseAmount(item->getAmount()); + cargoPtr->increaseAmount(item->getAmount()); + } + else + { storeCargo.emplace_back(item); } diff --git a/shm/cargo.cpp b/shm/cargo.cpp index d8140185c..2e3d4b7af 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1,61 +1,83 @@ #include + #include + #include "cargo.hpp" -Cargo::Cargo(std::string name, size_t amount, size_t basePrice, Time *time) +Cargo::Cargo(std::string name, size_t amount, size_t basePrice, Time* time) + : name_(name) - , amount_(amount) - , basePrice_(basePrice) - , time_(time) - { - time->attach(this); - } -Cargo &Cargo::operator+=(size_t amount) + , + amount_(amount) + + , + basePrice_(basePrice) + + , + time_(time) + +{ + time->attach(this); +} + +Cargo& Cargo::operator+=(size_t amount) + { amount_ += amount; + return *this; } -Cargo &Cargo::operator-=(size_t amount) +Cargo& Cargo::operator-=(size_t amount) + { - if(amount_ < amount){ + if (amount_ < amount) { amount_ = 0; + } - else{ + + else { amount_ -= amount; } + return *this; } -bool Cargo::operator==(const Cargo &cargo) const +bool Cargo::operator==(const Cargo& cargo) const + { return name_ == cargo.name_ && basePrice_ == cargo.basePrice_; } void Cargo::printCargo(int i) const { - std::cout << i << ". "<<"Cargo Name: " << name_ << ", amount: " << amount_ << ", price: " << getPrice() <<'\n'; + std::cout << i << ". " + << "Cargo Name: " << name_ << ", amount: " << amount_ << ", price: " << getPrice() << '\n'; } -std::string Cargo::getCargoInfo(){ - return "Cargo Name: " + name_ + ", amount: " + std::to_string(amount_) + ", price: " + std::to_string(getPrice()) +'\n'; +std::string Cargo::getCargoInfo() { + return "Cargo Name: " + name_ + ", amount: " + std::to_string(amount_) + ", price: " + std::to_string(getPrice()) + '\n'; } void Cargo::reduceAmount(size_t amount) { - if(amount_ < 0){ + if ((int)(amount_) - (int)(amount) < 0) { amount_ = 0; + } - else{ + + else { amount_ -= amount; } } void Cargo::increaseAmount(size_t amount) + { amount_ += amount; } void Cargo::setAmount(size_t amount) + { amount_ = amount; } diff --git a/shm/island.hpp b/shm/island.hpp index be1820061..c9b8cc263 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -1,16 +1,23 @@ #pragma once + #include "coordinates.hpp" + #include "Store.hpp" //Class responsible for representing island in game + class Island { private: - Coordinates position_; Store store_; + Coordinates position_; + public: - explicit Island(Coordinates, Time *); + explicit Island(Coordinates, Time*); + Coordinates getPosition() { return position_; } - void SetPosition(const Coordinates &position) { position_ = position; } + + void SetPosition(const Coordinates& position) { position_ = position; } + Store* returnIslandStore(); }; diff --git a/shm/player.cpp b/shm/player.cpp index 85ba43db4..e5ce622da 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,58 +1,78 @@ #include + #include + #include "cargo.hpp" + #include "player.hpp" + #include "ship.hpp" -Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) +Player::Player(std::unique_ptr ship, int money, int availableSpace) + : Storable(money, availableSpace) + { ship_ = std::move(ship); - ship_.get()->setOwner(this); + ship_.get()->setOwner(this); } Player::~Player() {} -const std::unique_ptr &Player::getShip() +const std::unique_ptr& Player::getShip() + { return ship_; } size_t Player::getSpeed() const + { if (ship_->getSpeed() > 0) + { return ship_->getSpeed(); } + return 0; } -Cargo * Player::getCargo(size_t index) const +Cargo* Player::getCargo(size_t index) const + { if (ship_->getCargo().at(index)) + { return ship_->getCargo().at(index); } + return nullptr; } size_t Player::calculateAvailableSpace() + { int cargoAmount = 0; - int capacity = ship_->getCapacity(); - std::vector shipCargo = ship_->getCargo(); - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo * c) - { return i += c->getAmount(); }); + int capacity = (int)ship_->getCapacity(); + + std::vector shipCargo = ship_->getCargo(); + + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) + + { return i += (int)c->getAmount(); }); if (capacity - cargoAmount < 0) + { return 0; } - return capacity - cargoAmount; + + return (int)(capacity - cargoAmount); } void Player::setCrew(size_t newCrewSize) + { ship_.get()->setCrew(newCrewSize); } diff --git a/shm/ship.cpp b/shm/ship.cpp index 43f097c01..f78995bed 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,176 +1,254 @@ #include + #include + #include + #include "ship.hpp" + #include "player.hpp" + #include "fruit.hpp" + #include "alcohol.hpp" + #include "item.hpp" -Ship::Ship(Time *time) +Ship::Ship(Time* time) + : id_(-1), time_(time) + { time_->attach(this); } -Ship::Ship(int capacity, int Crew, int speed, const std::string &name, size_t id, Time *time) +Ship::Ship(int capacity, int Crew, int speed, const std::string& name, size_t id, Time* time) + : capacity_(capacity), crew_(Crew), speed_(speed), name_(name), id_(id), time_(time) + { time_->attach(this); + shipCargo.reserve(10); } -Ship::Ship(int maxCrew, int speed, size_t id, Time *time) +Ship::Ship(int maxCrew, int speed, size_t id, Time* time) + : Ship(0, maxCrew, speed, "", id, time) + {} Ship::~Ship() + { time_->detach(this); } -Ship &Ship::operator-=(size_t num) +Ship& Ship::operator-=(size_t num) + { if (crew_ < num) + { crew_ = 0; + } + else + { crew_ -= num; } + return *this; } -Ship &Ship::operator+=(size_t num) +Ship& Ship::operator+=(size_t num) + { crew_ += num; + return *this; } -void Ship::addCargo(Cargo * item) +void Ship::addCargo(Cargo* item) + { auto cargoPtr = findMatchCargo(item); - if(cargoPtr) + + if (cargoPtr) + { cargoPtr->increaseAmount(item->getAmount()); + } + else + { shipCargo.push_back(item); } } -void Ship::removeCargo(Cargo * item, size_t amount) +void Ship::removeCargo(Cargo* item, size_t amount) + { const auto shipCargoAmount = findMatchCargo(item)->getAmount(); - if(shipCargoAmount == amount) + + if (shipCargoAmount == amount) + { - const auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el){ return *el == *item; }); - if(it != end(shipCargo)) { + const auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el) { return *el == *item; }); + + if (it != end(shipCargo)) { shipCargo.erase(it); } + } + else + { findMatchCargo(item)->reduceAmount(amount); } } -Cargo * Ship::findMatchCargo(Cargo * cargo) +Cargo* Ship::findMatchCargo(Cargo* cargo) + { - for (auto &el : shipCargo) + for (auto& el : shipCargo) + { if (*el == *cargo) + { return el; } } + return nullptr; } -void Ship::load(Cargo * loadCargo, size_t amount) + +void Ship::load(Cargo* loadCargo, size_t amount) + { if (amount <= calculateAvailableSpace()) - { - //Cargo * toAdd; + + { + //Cargo * toAdd; + loadCargo->reduceAmount(amount); + // if(Fruit* f = dynamic_cast(loadCargo)){ + // toAdd = new Fruit(*f); + // } + // if(Item* i = dynamic_cast(loadCargo)){ + // toAdd = new Item(*i); + // } + // if(Alcohol* a = dynamic_cast(loadCargo)){ + // toAdd = new Alcohol(*a); - // } + + // } + const auto toAdd = loadCargo->clone(); + toAdd->setAmount(amount); + addCargo(toAdd); } } -void Ship::unload(Cargo * unloadCargo, size_t amount) +void Ship::unload(Cargo* unloadCargo, size_t amount) + { // Checking if we have enough cargo to unload - if(auto* shipCargo = findMatchCargo(unloadCargo)) { - if(shipCargo->getAmount() >= amount) { + + if (auto* shipCargo = findMatchCargo(unloadCargo)) { + if (shipCargo->getAmount() >= amount) { removeCargo(unloadCargo, amount); + } + else { std::cout << "Ship: " << this->getName() << " doesn't have enough cargo: " << unloadCargo->getName() << '\n'; } - + } + else { std::cout << "Ship: " << this->getName() << "doesn't have cargo: " << unloadCargo->getName() << '\n'; } } -void Ship::setOwner(Player *newOwner) +void Ship::setOwner(Player* newOwner) + { owner_ = newOwner; } void Ship::setCrew(size_t newCrew) + { if (newCrew <= maxCrew_) + { crew_ = newCrew; } } void Ship::nextDay(size_t elapsedTime) + { size_t moneyForCrew = crew_; - for (auto i = 0; i < elapsedTime; i++) + + for (auto i = 0; i < (int)elapsedTime; i++) + { if (owner_) + { - owner_->SpendMoney(moneyForCrew); + owner_->SpendMoney((int)moneyForCrew); } } - } + void Ship::printShipCargo() + { auto i = 0; + std::cout << "Ship Cargo:" << '\n'; - for (auto &el : shipCargo) + + for (auto& el : shipCargo) + { std::cout << '\n'; + el->printCargo(i); + i++; } } size_t Ship::calculateAvailableSpace() + { int cargoAmount = 0; - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo * c) { return i += c->getAmount(); }); - if (capacity_ - cargoAmount < 0) + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) { return i += (int)c->getAmount(); }); + + if ((int)capacity_ - cargoAmount < 0) + { return 0; } + return capacity_ - cargoAmount; } From 3d6969e5144814b250aaec80db70d816635cbe8c Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Wed, 3 Nov 2021 16:14:30 +0100 Subject: [PATCH 145/151] Explosion of format fixed --- shm/Game.cpp | 118 ++++------------------------------------------- shm/Map.cpp | 63 +++++++------------------ shm/Menu.cpp | 49 -------------------- shm/Menu.hpp | 4 +- shm/Storable.cpp | 22 ++++----- shm/Storable.hpp | 17 ++++--- shm/Store.cpp | 108 ++++--------------------------------------- shm/alcohol.cpp | 1 - shm/alcohol.hpp | 2 - shm/cargo.cpp | 27 ++--------- shm/cargo.hpp | 2 +- shm/fruit.cpp | 6 +-- shm/island.hpp | 7 --- shm/item.cpp | 29 ++++++------ shm/main.cpp | 2 - shm/player.cpp | 29 ++---------- shm/player.hpp | 4 +- shm/ship.cpp | 87 ---------------------------------- 18 files changed, 81 insertions(+), 496 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 3024add8a..609f0a46e 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,29 +1,15 @@ #include "Game.hpp" - #include class Map; Game::Game(size_t money, size_t gameDays, size_t finalGoal) - - : time_(new Time()) - - , - money_(money) - - , - gameDays_(gameDays) - - , - finalGoal_(finalGoal) - - , - menu_(std::make_unique(this)) - - , - map_(new Map(time_)) - - , + : time_(new Time()), + money_(money), + gameDays_(gameDays), + finalGoal_(finalGoal), + menu_(std::make_unique(this)), + map_(new Map(time_)), playerOne_(new Player(std::make_unique(20, 30, 10, "Dar Pomorza", 3, time_), 1000, 1000)) {} @@ -31,83 +17,57 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) Game::Game() {} void Game::startGame() - { printTitle(); - setPlayer(); - while (true) { + while (true) + { if (playerOne_->getMoney() >= 2000) - { endGameWin(); - quitRequested(); - } - else if (playerOne_->getMoney() < 0 || time_->getCurrentTime() >= gameDays_) - { endGameLose(); - quitRequested(); } - if (quitRequest) - { break; } - menu_->printMenu(); - menu_->playerChoice(); } } void Game::printTitle() - { std::cout << "Project SHM" << '\n'; } void Game::setPlayer() - { std::cout << "Set your name captain!:" << '\n'; - std::string playerName; - std::cin >> playerName; - playerOne_->setName(playerName); - setStartingCargo(); - std::cout << "Welcome on board captain " << playerOne_->getName() << '\n'; - map_->changeCurrentPosition(&map_->islands_.at(0)); - currentStore_ = map_->islands_.at(0).returnIslandStore(); - std::cout << "Your's ship " << playerOne_->getShip()->getName() << " is waiting! Good Luck!" << '\n'; - std::cout << "You are in start point. "; - map_->PrintCurrentPosition(); - std::cout << "You have " << playerOne_->getMoney() << " gold in Your treasure chest!" << '\n'; - std::cout << "Choose Your next move!" << '\n'; } -void Game::printMap(Map& map) +void Game::printMap(Map &map) { map.PrintCurrentPosition(); - map.DebugPrintIsland(); } @@ -115,167 +75,107 @@ void Game::travel() { auto i = 0; - printMap(*map_); - std::cout << "Choose Your destination captain!" << '\n'; - std::cin >> i; - if (isdigit(i) && i < (int)map_->islands_.size() && i >= 0) - { auto travelTime = map_->calculateDistance(map_->islands_.at(i)) / playerOne_->getSpeed(); - std::cout << "Your travel will take " << travelTime << " days." << '\n'; - map_->changeCurrentPosition(&map_->islands_.at(i)); - map_->PrintCurrentPosition(); - time_->changeTime(travelTime); - currentStore_ = map_->islands_.at(i).returnIslandStore(); - } - else - { std::cout << "There is no such island on the map! Choose another destination!" << '\n'; - std::cin.clear(); - std::cin.ignore(std::numeric_limits::max(), '\n'); - Game::travel(); } } void Game::printPlayerCargo() - { playerOne_->getShip()->printShipCargo(); } void Game::setStartingCargo() - { playerOne_->getShip()->shipCargo.push_back(new Fruit("Banany", 1, 40, time_, 5, 0)); - playerOne_->getShip()->shipCargo.push_back(new Fruit("Apple", 1, 14, time_, 20, 0)); - playerOne_->getShip()->shipCargo.push_back(new Alcohol("Rum", 1, 60, time_, 70)); - playerOne_->getShip()->shipCargo.push_back(new Item("Hook", 1, 100, time_, Rarity::common)); } void Game::quitRequested() - { quitRequest = true; } void Game::displayPlayerStats() - { std::cout << "(Little reminder)" << '\n'; - std::cout << "Available gold: " << playerOne_->getMoney() << '\n'; - std::cout << "Your position on the map: \n"; - map_->PrintCurrentPosition(); - std::cout << "Day " << time_->getCurrentTime() << "/" << gameDays_ << '\n'; - std::cout << "==========================\n"; } void Game::printStoreCargo() - { std::cout << "This store contains: " << '\n'; - currentStore_->printStoreCargo(); } void Game::buyCargo() - { int cargoElement = 0; - size_t amount = 0; - std::cout << "Choose cargo: "; - std::cin >> cargoElement; - if (cargoElement >= 0 && cargoElement < (int)currentStore_->storeCargo.size()) - { std::cout << "Choose amount: "; - std::cin >> amount; - currentStore_->buy(currentStore_->storeCargo.at(cargoElement), amount, playerOne_); - } - else - { std::cout << "There is no such cargo in this store." << '\n'; - std::cin.clear(); - std::cin.ignore(std::numeric_limits::max(), '\n'); - buyCargo(); } } void Game::sellCargo() - { int cargoElement = 0; - size_t amount = 0; - std::cout << "Choose cargo: "; - std::cin >> cargoElement; - if (cargoElement >= 0 && cargoElement < (int)playerOne_->getShip()->shipCargo.size()) - { std::cout << "Choose amount: "; - std::cin >> amount; - currentStore_->sell(playerOne_->getCargo(cargoElement), amount, playerOne_); - } - else - { std::cout << "There is no such cargo in this ship." << '\n'; - std::cin.clear(); - std::cin.ignore(std::numeric_limits::max(), '\n'); - sellCargo(); } } void Game::endGameLose() - { std::cout << "You're time has come Captain! This is sad end!" << '\n'; } - void Game::endGameWin() { diff --git a/shm/Map.cpp b/shm/Map.cpp index 674acb5f0..70d256e7c 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -1,79 +1,58 @@ #include - #include - #include - #include - #include - #include - #include "coordinates.hpp" - #include "island.hpp" - #include "Map.hpp" -namespace constVariables { - -constexpr size_t COORDINATE_MIN = 0; - -constexpr size_t COORDINATE_MAX = 99; +namespace constVariables +{ -constexpr size_t ISLANDS_COUNT = 10; + constexpr size_t COORDINATE_MIN = 0; + constexpr size_t COORDINATE_MAX = 99; + constexpr size_t ISLANDS_COUNT = 10; -} // namespace constVariables +} // namespace constVariables -Map::Map(Time* time) { +Map::Map(Time *time) +{ SetUpRandomIsland(time); } -void Map::SetUpRandomIsland(Time* time) { +void Map::SetUpRandomIsland(Time *time) +{ islands_.reserve(constVariables::ISLANDS_COUNT); - std::random_device rd; - std::mt19937 gen(rd()); - std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); - std::vector cords; - cords.reserve(constVariables::ISLANDS_COUNT); - for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) - { int x = (int)distrib(gen); - int y = (int)distrib(gen); - Coordinates c(x, y); - while (contains(cords, c)) - { x = (int)distrib(gen); - y = (int)distrib(gen); - c.SetPositionX(x); - c.SetPositionY(y); } islands_.push_back(Island(c, time)); - cords.push_back(c); } } -void Map::DebugPrintIsland() { +void Map::DebugPrintIsland() +{ int j = 0; - - for (auto& el : islands_) { + for (auto &el : islands_) + { std::cout << j << " | " << std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; j++; @@ -81,35 +60,27 @@ void Map::DebugPrintIsland() { } void Map::PrintCurrentPosition() - { std::cout << "Current coordinates: " << std::to_string(current_pos_->getPosition().GetPositionX()) << " | " << std::to_string(current_pos_->getPosition().GetPositionY()) << '\n'; } -bool Map::contains(const std::vector& vec, const Coordinates& c) { +bool Map::contains(const std::vector &vec, const Coordinates &c) +{ return std::find(vec.begin(), vec.end(), c) != vec.end(); } size_t Map::calculateDistance(Island island_pos_) - { const auto distanceX = current_pos_->getPosition().GetPositionX(); - const auto distanceY = current_pos_->getPosition().GetPositionY(); - const auto disX = island_pos_.getPosition().GetPositionX(); - const auto disY = island_pos_.getPosition().GetPositionY(); - const auto distance = sqrt(pow((disX - distanceX), 2) + pow((disY - distanceY), 2)); - std::cout << "Distance: " << distance << '\n'; - return (size_t)distance; } -void Map::addIsland(Coordinates& coordinate, Time* time) - +void Map::addIsland(Coordinates &coordinate, Time *time) { islands_.push_back(Island(coordinate, time)); } diff --git a/shm/Menu.cpp b/shm/Menu.cpp index b25219c89..c27210624 100644 --- a/shm/Menu.cpp +++ b/shm/Menu.cpp @@ -1,124 +1,75 @@ #include - #include "Menu.hpp" - #include "Game.hpp" Menu::Menu(Game* game) - : game_(game) - {} Menu::~Menu() {} void Menu::playerChoice() - { size_t option{}; - do { std::cin >> option; - } while (!isPlayerChoiceValid(option)); - item_ = static_cast(option); - menuChoice(item_); } bool Menu::isPlayerChoiceValid(const size_t& playerAnswer) const - { if (std::cin.fail() || playerAnswer > 5) - { std::cin.clear(); - std::cin.ignore(std::numeric_limits::max(), '\n'); - std::cout << "Wrong answer, please use numbers 0 - 5" << '\n'; - return false; } - return true; } void Menu::menuChoice(MenuItem item) const - { switch (item) - { case MenuItem::printPlayerCargo: - game_->printPlayerCargo(); - break; - case MenuItem::printStoreCargo: - game_->printStoreCargo(); - break; - case MenuItem::buyCargo: - game_->printStoreCargo(); - game_->buyCargo(); - break; - case MenuItem::sellCargo: - game_->printPlayerCargo(); - game_->sellCargo(); - break; - case MenuItem::travel: - game_->travel(); - break; - case MenuItem::Exit: - game_->quitRequested(); - break; - default: - std::cout << "Undefined choice" << '\n'; - break; } } void Menu::printMenu() const - { std::cout << "What is your choice capt'n? " << '\n'; - std::cout << "==========================\n"; - std::cout << "0 - Print Cargo\n"; - std::cout << "1 - Print Store Cargo\n"; - std::cout << "2 - Buy Cargo\n"; - std::cout << "3 - Sell Cargo\n"; - std::cout << "4 - Travel\n"; - std::cout << "5 - Exit\n"; - std::cout << "==========================\n"; - game_->displayPlayerStats(); } diff --git a/shm/Menu.hpp b/shm/Menu.hpp index 24b3e41a6..bb0259478 100644 --- a/shm/Menu.hpp +++ b/shm/Menu.hpp @@ -6,7 +6,6 @@ class Game; - class Menu { public: @@ -26,8 +25,7 @@ class Menu void playerChoice(); bool isPlayerChoiceValid(const size_t &playerAnswer) const; void menuChoice(MenuItem) const; - void printMenu() const; - + void printMenu() const; private: MenuItem item_; diff --git a/shm/Storable.cpp b/shm/Storable.cpp index e07b0f165..4d1e605e5 100644 --- a/shm/Storable.cpp +++ b/shm/Storable.cpp @@ -1,19 +1,16 @@ #include "Storable.hpp" Storable::Storable(int money, size_t availableSpace) - : money_(money) - , availableSpace_(availableSpace) - {} + : money_(money), availableSpace_(availableSpace) +{} -Storable::Storable(int money, size_t availableSpace, Time* time) - : money_(money) - , availableSpace_(availableSpace) - , time_(time) - { - time_->attach(this); - } +Storable::Storable(int money, size_t availableSpace, Time *time) + : money_(money), availableSpace_(availableSpace), time_(time) +{ + time_->attach(this); +} -Storable::~Storable(){} +Storable::~Storable() {} void Storable::SpendMoney(int moneyToSpend) { @@ -25,9 +22,8 @@ void Storable::SpendMoney(int moneyToSpend) } void Storable::EarnMoney(int moneyToEarn) { - if(moneyToEarn > 0) + if (moneyToEarn > 0) { money_ += moneyToEarn; } } - diff --git a/shm/Storable.hpp b/shm/Storable.hpp index f2b56456d..1712dafbd 100644 --- a/shm/Storable.hpp +++ b/shm/Storable.hpp @@ -1,27 +1,26 @@ -#pragma once +#pragma once #include #include #include "Time.hpp" #include "TimeEffectable.hpp" - class Cargo; // Interface for classes storing Cargo objects -class Storable : public TimeEffectable +class Storable : public TimeEffectable { public: // Constructor for objects not subscribed to Time class (i.e. Player) Storable(int money, size_t availableSpace); //Constructor for objects subscribed to Time class (i.e. Store) - Storable(int money, size_t availableSpace, Time* time); - + Storable(int money, size_t availableSpace, Time *time); + virtual ~Storable(); - int getMoney() {return money_; } - size_t getAvailableSpace() {return availableSpace_; } - virtual Cargo * getCargo(size_t) const = 0; + int getMoney() { return money_; } + size_t getAvailableSpace() { return availableSpace_; } + virtual Cargo *getCargo(size_t) const = 0; void SpendMoney(int); void EarnMoney(int); void removeCargo(std::shared_ptr, size_t); @@ -29,5 +28,5 @@ class Storable : public TimeEffectable protected: int money_; size_t availableSpace_; - Time* time_; + Time *time_; }; \ No newline at end of file diff --git a/shm/Store.cpp b/shm/Store.cpp index 32ac1170e..4d33f2d8c 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -1,103 +1,66 @@ #include - #include "cargo.hpp" - #include "player.hpp" - #include "Time.hpp" - #include "Store.hpp" constexpr size_t numberOfPossibleFruitCargo = 4; - constexpr size_t numberOfPossibleAlcoholCargo = 4; - constexpr size_t numberOfPossibleItemCargo = 4; std::vector possibleFruitCargoNames = {"Banana", "Pineapple", "Apple", "Pear"}; - std::vector possibleAlcoholCargoNames = {"Whiskey", "Rum", "Vodka", "Beer"}; - std::vector possibleItemCargoNames = {"Rope", "Hook", "Screw", "Spoon"}; - std::vector rarityChoice = {Rarity::common, Rarity::rare, Rarity::epic, Rarity::legendary}; -Store::Store(int money, size_t availableSpace, Time* time) - - : Storable(money, availableSpace, time) +Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) { storeCargo.reserve(20); - SetUpRandomCargo(time); - storeCargo.shrink_to_fit(); } Store::~Store() {} -void Store::SetUpRandomCargo(Time* time) { +void Store::SetUpRandomCargo(Time *time) +{ std::random_device rd; - std::mt19937 gen(rd()); - std::uniform_real_distribution<> fruitCargoDistrib(0, numberOfPossibleFruitCargo); - std::uniform_real_distribution<> alcoholCargoDistrib(0, numberOfPossibleAlcoholCargo); - std::uniform_real_distribution<> itemCargoDistrib(0, numberOfPossibleItemCargo); - std::uniform_real_distribution<> fruitPrice(10, 25); - std::uniform_real_distribution<> alcoholPrice(50, 100); - std::uniform_real_distribution<> itemPrice(100, 300); - std::uniform_real_distribution<> quantity(1, 50); - std::uniform_real_distribution<> percentage(20, 100); - std::uniform_real_distribution<> itemRarity(0, (int)rarityChoice.size() - 1.0); Rarity randomRarity = rarityChoice[(int)itemRarity(gen)]; - size_t fruitCargoNumber = (size_t)fruitCargoDistrib(gen); - size_t alcoholCargoNumber = (size_t)alcoholCargoDistrib(gen); - size_t itemCargoNumber = (size_t)itemCargoDistrib(gen); - size_t fruitPriceX = (size_t)fruitPrice(gen); - size_t alcoholPriceX = (size_t)alcoholPrice(gen); - size_t itemPriceX = (size_t)itemPrice(gen); - size_t cargoQuantity = (size_t)quantity(gen); - size_t alcoholPercentage = (size_t)percentage(gen); std::string fruitCargoName = possibleFruitCargoNames[fruitCargoNumber]; - std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; - std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity + 10), fruitPriceX, time, 15, 0)); - storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); - storeCargo.push_back(new Item(itemCargoName, (cargoQuantity / 2), itemPriceX, time, randomRarity)); } -Cargo* Store::findMatchCargo(Cargo* cargo) - +Cargo *Store::findMatchCargo(Cargo *cargo) { - for (auto& el : storeCargo) - + for (auto &el : storeCargo) { if (*el == *cargo) - { return el; } @@ -106,93 +69,68 @@ Cargo* Store::findMatchCargo(Cargo* cargo) return nullptr; } -Response Store::buy(Cargo* cargo, size_t amount, Player* player) - +Response Store::buy(Cargo *cargo, size_t amount, Player *player) { if (findMatchCargo(cargo)) - { auto price = 0; - price = (int)(amount * cargo->getPrice()); if (player->getAvailableSpace() < amount) - { std::cout << "Lack of space" << '\n'; - return Response::lack_of_space; } - if (cargo->getAmount() < amount) - { std::cout << "Lack of cargo" << '\n'; - return Response::lack_of_cargo; } - if (player->getMoney() < price) - { std::cout << "Lack of money" << '\n'; - return Response::lack_of_money; } money_ += price; - player->SpendMoney(price); - player->getShip()->load(cargo, amount); return Response::done; - } - else - { return Response::lack_of_cargo; } } -Response Store::sell(Cargo* cargo, size_t amount, Player* player) +Response Store::sell(Cargo *cargo, size_t amount, Player *player) { if (player->getShip()->findMatchCargo(cargo)) { auto price = 0; - price = (int)(amount * cargo->getPrice()); - if (getAvailableSpace() < amount) - { std::cout << "Lack of space" << '\n'; return Response::lack_of_space; } - if (player->getShip()->findMatchCargo(cargo)->getAmount() < amount) - { std::cout << "Lack of cargo" << '\n'; return Response::lack_of_cargo; } - if (money_ < (int)(amount * cargo->getBasePrice())) - { std::cout << "Lack of money" << '\n'; return Response::lack_of_money; } - if (money_ < price) - { std::cout << "Lack of money" << '\n'; @@ -202,17 +140,12 @@ Response Store::sell(Cargo* cargo, size_t amount, Player* player) money_ -= price; addStoreCargo(cargo); - player->getShip()->unload(cargo, amount); - player->EarnMoney(price); return Response::done; - } - else - { return Response::lack_of_cargo; } @@ -220,73 +153,52 @@ Response Store::sell(Cargo* cargo, size_t amount, Player* player) return Response::done; } -Cargo* Store::getCargo(size_t index) const - +Cargo *Store::getCargo(size_t index) const { return nullptr; } void Store::nextDay(size_t elapsedTime) - { for (auto el : storeCargo) - { el->reduceAmount(1); } } void Store::printStoreCargo() - { auto i = 0; - for (auto el : storeCargo) - { std::cout << '\n'; - el->printCargo(i); - i++; } } -void Store::removeCargo(Cargo* item, size_t amount) - +void Store::removeCargo(Cargo *item, size_t amount) { auto storeCargoAmount = findMatchCargo(item)->getAmount(); - if (storeCargoAmount == amount) - { auto i = std::find(begin(storeCargo), end(storeCargo), item); - storeCargo.erase(i); - } - else - { findMatchCargo(item)->reduceAmount(amount); } } -void Store::addStoreCargo(Cargo* item) - +void Store::addStoreCargo(Cargo *item) { auto cargoPtr = findMatchCargo(item); - if (cargoPtr) - { cargoPtr->increaseAmount(item->getAmount()); - } - else - { storeCargo.emplace_back(item); } diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 1f56aed9c..9499e5f80 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -17,7 +17,6 @@ Cargo &Alcohol::operator+=(size_t amount) Cargo &Alcohol::operator-=(size_t amount) { - if (amount_ < amount) { amount_ = 0; diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 77ded0909..6bbe1806a 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -2,8 +2,6 @@ #include #include "cargo.hpp" - - //Class responsible for representing alcohol in the game class Alcohol : public Cargo { public: diff --git a/shm/cargo.cpp b/shm/cargo.cpp index 2e3d4b7af..3f88481b3 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -1,51 +1,34 @@ #include - #include - #include "cargo.hpp" Cargo::Cargo(std::string name, size_t amount, size_t basePrice, Time* time) - : name_(name) - - , - amount_(amount) - - , - basePrice_(basePrice) - - , - time_(time) - + , amount_(amount) + , basePrice_(basePrice) + , time_(time) { time->attach(this); } Cargo& Cargo::operator+=(size_t amount) - { amount_ += amount; - return *this; } Cargo& Cargo::operator-=(size_t amount) - { if (amount_ < amount) { amount_ = 0; - } - else { amount_ -= amount; } - return *this; } bool Cargo::operator==(const Cargo& cargo) const - { return name_ == cargo.name_ && basePrice_ == cargo.basePrice_; } @@ -62,22 +45,18 @@ std::string Cargo::getCargoInfo() { void Cargo::reduceAmount(size_t amount) { if ((int)(amount_) - (int)(amount) < 0) { amount_ = 0; - } - else { amount_ -= amount; } } void Cargo::increaseAmount(size_t amount) - { amount_ += amount; } void Cargo::setAmount(size_t amount) - { amount_ = amount; } diff --git a/shm/cargo.hpp b/shm/cargo.hpp index c6901e0cd..b0ba10ccb 100644 --- a/shm/cargo.hpp +++ b/shm/cargo.hpp @@ -11,7 +11,7 @@ class Cargo : public TimeEffectable virtual Cargo &operator+=(size_t ); virtual Cargo &operator-=(size_t ); virtual bool operator==(const Cargo &) const; - + virtual size_t getPrice() const {return 0;}; virtual const std::string &getName() const { return name_; } virtual size_t getAmount() const { return amount_; } diff --git a/shm/fruit.cpp b/shm/fruit.cpp index fe482a711..afe483241 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -3,8 +3,7 @@ Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed) : Cargo(name, amount, basePrice, time), time_elapsed_(time_elapsed), expiry_date_(expiry_date) -{ -} +{} Fruit::~Fruit() { @@ -13,8 +12,7 @@ Fruit::~Fruit() size_t Fruit::getPrice() const { - //return static_cast(basePrice_ * ((size_t)(expiry_date_ - time_elapsed_)) / expiry_date_); - return basePrice_; + return static_cast(basePrice_ * ((size_t)(expiry_date_ - time_elapsed_)) / expiry_date_); } Cargo &Fruit::operator+=(size_t amount) diff --git a/shm/island.hpp b/shm/island.hpp index c9b8cc263..f98ff0e41 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -1,7 +1,5 @@ #pragma once - #include "coordinates.hpp" - #include "Store.hpp" //Class responsible for representing island in game @@ -9,15 +7,10 @@ class Island { private: Store store_; - Coordinates position_; - public: explicit Island(Coordinates, Time*); - Coordinates getPosition() { return position_; } - void SetPosition(const Coordinates& position) { position_ = position; } - Store* returnIslandStore(); }; diff --git a/shm/item.cpp b/shm/item.cpp index 01557a244..428697425 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -2,9 +2,9 @@ #include "Time.hpp" Item::Item(const std::string &name, size_t amount, size_t basePrice, Time *time, Rarity rarity) - : Cargo(name, amount, basePrice, time) - , rarity_(rarity) - {} + : Cargo(name, amount, basePrice, time), rarity_(rarity) +{ +} size_t Item::getPrice() const { @@ -31,22 +31,25 @@ Cargo &Item::operator-=(size_t amount) return *this; } -bool Item::operator==(const Cargo& other) const { - - try { - const Item& other_item = dynamic_cast(other); +bool Item::operator==(const Cargo &other) const +{ + + try + { + const Item &other_item = dynamic_cast(other); return Cargo::operator==(other) && rarity_ == other_item.rarity_; - } catch (std::bad_cast&) { - return false; + } + catch (std::bad_cast &) + { + return false; } } - -void Item::nextDay(size_t elapsedTime) +void Item::nextDay(size_t elapsedTime) { - basePrice_ += elapsedTime; + basePrice_ += elapsedTime; } -Cargo* Item::clone() +Cargo *Item::clone() { return new Item(*this); } \ No newline at end of file diff --git a/shm/main.cpp b/shm/main.cpp index 77071f242..3faea92f4 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -8,7 +8,5 @@ int main() { Game game(start_money, game_days, final_goal); game.startGame(); - return 0; - } \ No newline at end of file diff --git a/shm/player.cpp b/shm/player.cpp index e5ce622da..a5bd3a4c9 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -1,78 +1,57 @@ #include - #include - #include "cargo.hpp" - #include "player.hpp" - #include "ship.hpp" Player::Player(std::unique_ptr ship, int money, int availableSpace) : Storable(money, availableSpace) - { ship_ = std::move(ship); - ship_.get()->setOwner(this); } Player::~Player() {} -const std::unique_ptr& Player::getShip() - +const std::unique_ptr &Player::getShip() { return ship_; } size_t Player::getSpeed() const - { if (ship_->getSpeed() > 0) - { return ship_->getSpeed(); } - return 0; } -Cargo* Player::getCargo(size_t index) const - +Cargo *Player::getCargo(size_t index) const { if (ship_->getCargo().at(index)) - { return ship_->getCargo().at(index); } - return nullptr; } size_t Player::calculateAvailableSpace() - { int cargoAmount = 0; - int capacity = (int)ship_->getCapacity(); - - std::vector shipCargo = ship_->getCargo(); - - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) - + std::vector shipCargo = ship_->getCargo(); + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo *c) { return i += (int)c->getAmount(); }); if (capacity - cargoAmount < 0) - { return 0; } - return (int)(capacity - cargoAmount); } void Player::setCrew(size_t newCrewSize) - { ship_.get()->setCrew(newCrewSize); } diff --git a/shm/player.hpp b/shm/player.hpp index a492cb750..04024d7c5 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -18,10 +18,8 @@ class Player : public Storable{ size_t getSpeed() const; void setName(std::string playerName) {playerName_ = playerName;} std::string getName() {return playerName_;} - + Cargo * getCargo(size_t) const override; - void setCrew(size_t newCrewSize); - void setStartingCargo(); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index f78995bed..e5bf6ab36 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -1,218 +1,142 @@ #include - #include - #include - #include "ship.hpp" - #include "player.hpp" - #include "fruit.hpp" - #include "alcohol.hpp" - #include "item.hpp" Ship::Ship(Time* time) - : id_(-1), time_(time) - { time_->attach(this); } Ship::Ship(int capacity, int Crew, int speed, const std::string& name, size_t id, Time* time) - : capacity_(capacity), crew_(Crew), speed_(speed), name_(name), id_(id), time_(time) - { time_->attach(this); - shipCargo.reserve(10); } Ship::Ship(int maxCrew, int speed, size_t id, Time* time) - : Ship(0, maxCrew, speed, "", id, time) - {} Ship::~Ship() - { time_->detach(this); } Ship& Ship::operator-=(size_t num) - { if (crew_ < num) - { crew_ = 0; - } - else - { crew_ -= num; } - return *this; } Ship& Ship::operator+=(size_t num) - { crew_ += num; - return *this; } void Ship::addCargo(Cargo* item) - { auto cargoPtr = findMatchCargo(item); - if (cargoPtr) - { cargoPtr->increaseAmount(item->getAmount()); - } - else - { shipCargo.push_back(item); } } void Ship::removeCargo(Cargo* item, size_t amount) - { const auto shipCargoAmount = findMatchCargo(item)->getAmount(); - if (shipCargoAmount == amount) - { const auto it = std::find_if(begin(shipCargo), end(shipCargo), [item](const auto* el) { return *el == *item; }); - if (it != end(shipCargo)) { shipCargo.erase(it); } } - else - { findMatchCargo(item)->reduceAmount(amount); } } Cargo* Ship::findMatchCargo(Cargo* cargo) - { for (auto& el : shipCargo) - { if (*el == *cargo) - { return el; } } - return nullptr; } void Ship::load(Cargo* loadCargo, size_t amount) - { if (amount <= calculateAvailableSpace()) - { - //Cargo * toAdd; - loadCargo->reduceAmount(amount); - - // if(Fruit* f = dynamic_cast(loadCargo)){ - - // toAdd = new Fruit(*f); - - // } - - // if(Item* i = dynamic_cast(loadCargo)){ - - // toAdd = new Item(*i); - - // } - - // if(Alcohol* a = dynamic_cast(loadCargo)){ - - // toAdd = new Alcohol(*a); - - // } - const auto toAdd = loadCargo->clone(); - toAdd->setAmount(amount); - addCargo(toAdd); } } void Ship::unload(Cargo* unloadCargo, size_t amount) - { // Checking if we have enough cargo to unload if (auto* shipCargo = findMatchCargo(unloadCargo)) { if (shipCargo->getAmount() >= amount) { removeCargo(unloadCargo, amount); - } - else { std::cout << "Ship: " << this->getName() << " doesn't have enough cargo: " << unloadCargo->getName() << '\n'; } - } - else { std::cout << "Ship: " << this->getName() << "doesn't have cargo: " << unloadCargo->getName() << '\n'; } } void Ship::setOwner(Player* newOwner) - { owner_ = newOwner; } void Ship::setCrew(size_t newCrew) - { if (newCrew <= maxCrew_) - { crew_ = newCrew; } } void Ship::nextDay(size_t elapsedTime) - { size_t moneyForCrew = crew_; - for (auto i = 0; i < (int)elapsedTime; i++) - { if (owner_) - { owner_->SpendMoney((int)moneyForCrew); } @@ -220,35 +144,24 @@ void Ship::nextDay(size_t elapsedTime) } void Ship::printShipCargo() - { auto i = 0; - std::cout << "Ship Cargo:" << '\n'; - for (auto& el : shipCargo) - { std::cout << '\n'; - el->printCargo(i); - i++; } } size_t Ship::calculateAvailableSpace() - { int cargoAmount = 0; - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo* c) { return i += (int)c->getAmount(); }); - if ((int)capacity_ - cargoAmount < 0) - { return 0; } - return capacity_ - cargoAmount; } From f084cac798c549dc4a7b4341f3a20a4bbb0b354d Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 13 Nov 2021 12:41:03 +0100 Subject: [PATCH 146/151] gtest added --- shm/CMakeLists.txt | 18 ++++++++++++++---- shm/Game.cpp | 4 +++- shm/Map.cpp | 45 ++++++++++++++++++++++++--------------------- shm/Store.cpp | 9 ++++++++- shm/Store.hpp | 2 +- shm/gtest.cpp | 13 +++++++++++++ 6 files changed, 63 insertions(+), 28 deletions(-) create mode 100644 shm/gtest.cpp diff --git a/shm/CMakeLists.txt b/shm/CMakeLists.txt index f9ca64c8a..7ba4e87bc 100644 --- a/shm/CMakeLists.txt +++ b/shm/CMakeLists.txt @@ -1,6 +1,16 @@ -cmake_minimum_required(VERSION 3.10) +cmake_minimum_required(VERSION 3.16) project(shm) +include(FetchContent) +FetchContent_Declare( + googletest + # Specify the commit you depend on and update it regularly. + URL https://github.com/google/googletest/archive/609281088cfefc76f9d0ce82e1ff6c30cc3591e5.zip +) +# For Windows: Prevent overriding the parent project's compiler/linker settings +set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) +FetchContent_MakeAvailable(googletest) +# Now simply link against gtest or gtest_main as needed. Eg set(SRC alcohol.cpp cargo.cpp @@ -23,6 +33,6 @@ add_library(${PROJECT_NAME}-lib STATIC ${SRC}) add_executable(${PROJECT_NAME} main.cpp ${SRC}) -#target_compile_options(${PROJECT_NAME} PRIVATE ${FLAGS}) - -set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON) +add_executable(ShipTester gtest.cpp) +target_link_libraries(ShipTester gtest_main) +add_test(NAME ship_test COMMAND Ship) \ No newline at end of file diff --git a/shm/Game.cpp b/shm/Game.cpp index 609f0a46e..87a8ade8a 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -35,6 +35,8 @@ void Game::startGame() } if (quitRequest) { + delete map_; + delete playerOne_; break; } menu_->printMenu(); @@ -78,7 +80,7 @@ void Game::travel() printMap(*map_); std::cout << "Choose Your destination captain!" << '\n'; std::cin >> i; - if (isdigit(i) && i < (int)map_->islands_.size() && i >= 0) + if (i < (int)map_->islands_.size() && i >= 0) { auto travelTime = map_->calculateDistance(map_->islands_.at(i)) / playerOne_->getSpeed(); std::cout << "Your travel will take " << travelTime << " days." << '\n'; diff --git a/shm/Map.cpp b/shm/Map.cpp index 70d256e7c..990f1b70b 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -24,28 +24,31 @@ Map::Map(Time *time) void Map::SetUpRandomIsland(Time *time) { - islands_.reserve(constVariables::ISLANDS_COUNT); - std::random_device rd; - std::mt19937 gen(rd()); - std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); - std::vector cords; - cords.reserve(constVariables::ISLANDS_COUNT); - for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) - { - int x = (int)distrib(gen); - int y = (int)distrib(gen); - Coordinates c(x, y); - while (contains(cords, c)) - { - x = (int)distrib(gen); - y = (int)distrib(gen); - c.SetPositionX(x); - c.SetPositionY(y); - } + // islands_.reserve(constVariables::ISLANDS_COUNT); + // std::random_device rd; + // std::mt19937 gen(rd()); + // std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); + // std::vector cords; + // cords.reserve(constVariables::ISLANDS_COUNT); + // for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) + // { + // int x = (int)distrib(gen); + // int y = (int)distrib(gen); + // Coordinates c(x, y); + // while (contains(cords, c)) + // { + // x = (int)distrib(gen); + // y = (int)distrib(gen); + // c.SetPositionX(x); + // c.SetPositionY(y); + // } - islands_.push_back(Island(c, time)); - cords.push_back(c); - } + // islands_.push_back(Island(c, time)); + // cords.push_back(c); + // } + Coordinates cordy = Coordinates(10, 10); + Island kwik = Island(cordy, time); + islands_.push_back(kwik); } void Map::DebugPrintIsland() diff --git a/shm/Store.cpp b/shm/Store.cpp index 4d33f2d8c..121b4fffa 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -21,7 +21,14 @@ Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, ava storeCargo.shrink_to_fit(); } -Store::~Store() {} +Store::~Store() +{ + for(auto i : storeCargo) + { + std::cout << i->getName() << "DESTROYED" << '\n'; + //delete i; + } +} void Store::SetUpRandomCargo(Time *time) { diff --git a/shm/Store.hpp b/shm/Store.hpp index a8c064215..77ab0133f 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -27,7 +27,7 @@ class Store: public Storable { public: Store(int money, size_t availableSpace, Time* time); - virtual ~Store(); + ~Store(); Response buy(Cargo * cargo, size_t amount, Player* player); Response sell(Cargo * cargo, size_t amount, Player* player); diff --git a/shm/gtest.cpp b/shm/gtest.cpp new file mode 100644 index 000000000..b8cf85245 --- /dev/null +++ b/shm/gtest.cpp @@ -0,0 +1,13 @@ +#include "gtest/gtest.h" +int Factorial(int a){return 1;} +TEST(FactorialTest, HandlesZeroInput) { + EXPECT_EQ(Factorial(0), 1); +} + +// Tests factorial of positive numbers. +TEST(FactorialTest, HandlesPositiveInput) { + EXPECT_EQ(Factorial(1), 1); + EXPECT_EQ(Factorial(2), 2); + EXPECT_EQ(Factorial(3), 6); + EXPECT_EQ(Factorial(8), 40320); +} From 3e5ebad6ef057119a1103e1784c295c8d8615788 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 13 Nov 2021 19:31:53 +0100 Subject: [PATCH 147/151] Testing --- shm/CMakeLists.txt | 31 +++++++++++++++++-------------- shm/ship.cpp | 1 + 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/shm/CMakeLists.txt b/shm/CMakeLists.txt index 7ba4e87bc..072dbb97a 100644 --- a/shm/CMakeLists.txt +++ b/shm/CMakeLists.txt @@ -1,16 +1,7 @@ cmake_minimum_required(VERSION 3.16) project(shm) -include(FetchContent) -FetchContent_Declare( - googletest - # Specify the commit you depend on and update it regularly. - URL https://github.com/google/googletest/archive/609281088cfefc76f9d0ce82e1ff6c30cc3591e5.zip -) -# For Windows: Prevent overriding the parent project's compiler/linker settings -set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) -FetchContent_MakeAvailable(googletest) +set(testFile ../test/test.cpp ../test/catch_amalgamated.cpp) -# Now simply link against gtest or gtest_main as needed. Eg set(SRC alcohol.cpp cargo.cpp @@ -30,9 +21,21 @@ set(SRC set(FLAGS -Wall -Wextra -Werror -Wconversion -O3) add_library(${PROJECT_NAME}-lib STATIC ${SRC}) - add_executable(${PROJECT_NAME} main.cpp ${SRC}) +add_executable(${PROJECT_NAME}-ut ${testFile} ${SRC}) + +target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}-lib) +target_link_libraries(${PROJECT_NAME}-ut ${PROJECT_NAME}-lib) + +set_target_properties(${PROJECT_NAME} PROPERTIES + CXX_STANDARD 17 + CXX_STANDARD_REQUIRED ON) +set_target_properties(${PROJECT_NAME}-lib PROPERTIES + CXX_STANDARD 17 + CXX_STANDARD_REQUIRED ON) +set_target_properties(${PROJECT_NAME}-ut PROPERTIES + CXX_STANDARD 17 + CXX_STANDARD_REQUIRED ON) + + -add_executable(ShipTester gtest.cpp) -target_link_libraries(ShipTester gtest_main) -add_test(NAME ship_test COMMAND Ship) \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index e5bf6ab36..8c6bc9c3d 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -18,6 +18,7 @@ Ship::Ship(int capacity, int Crew, int speed, const std::string& name, size_t id { time_->attach(this); shipCargo.reserve(10); + maxCrew_ = crew_; } Ship::Ship(int maxCrew, int speed, size_t id, Time* time) From adf5dade18687f0c93b857239c1e19b02e1f24b1 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 15 Jan 2022 15:06:54 +0100 Subject: [PATCH 148/151] Memory leak in storeCargo and shipCargo fixed --- shm/Game.cpp | 9 +++++++-- shm/Game.hpp | 1 + shm/Map.cpp | 45 +++++++++++++++++++++------------------------ shm/Store.cpp | 22 ++++++++++++---------- shm/Store.hpp | 4 ++-- shm/island.cpp | 3 ++- shm/player.hpp | 2 ++ shm/ship.cpp | 1 + 8 files changed, 48 insertions(+), 39 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 87a8ade8a..ce3b25822 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -11,10 +11,15 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) menu_(std::make_unique(this)), map_(new Map(time_)), playerOne_(new Player(std::make_unique(20, 30, 10, "Dar Pomorza", 3, time_), 1000, 1000)) - {} -Game::Game() {} +Game::Game(){} + +Game::~Game() +{ + //std::for_each(currentStore_.storeCargo.begin(), currentStore_.storeCargo.end(),[](Cargo* n){delete n;}); + delete time_; +} void Game::startGame() { diff --git a/shm/Game.hpp b/shm/Game.hpp index 918b3ea83..e312ad09f 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -11,6 +11,7 @@ class Game public: Game(size_t money, size_t gameDays, size_t finalGoal); Game(); + ~Game(); void displayPlayerStats(); void setPlayer(); diff --git a/shm/Map.cpp b/shm/Map.cpp index 990f1b70b..909b80234 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -24,31 +24,28 @@ Map::Map(Time *time) void Map::SetUpRandomIsland(Time *time) { - // islands_.reserve(constVariables::ISLANDS_COUNT); - // std::random_device rd; - // std::mt19937 gen(rd()); - // std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); - // std::vector cords; - // cords.reserve(constVariables::ISLANDS_COUNT); - // for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) - // { - // int x = (int)distrib(gen); - // int y = (int)distrib(gen); - // Coordinates c(x, y); - // while (contains(cords, c)) - // { - // x = (int)distrib(gen); - // y = (int)distrib(gen); - // c.SetPositionX(x); - // c.SetPositionY(y); - // } + islands_.reserve(constVariables::ISLANDS_COUNT); + std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> distrib(constVariables::COORDINATE_MIN, constVariables::COORDINATE_MAX); + std::vector cords; + cords.reserve(constVariables::ISLANDS_COUNT); + for (int i = 0; i < (int)constVariables::ISLANDS_COUNT; i++) + { + int x = (int)distrib(gen); + int y = (int)distrib(gen); + Coordinates c(x, y); + while (contains(cords, c)) + { + x = (int)distrib(gen); + y = (int)distrib(gen); + c.SetPositionX(x); + c.SetPositionY(y); + } - // islands_.push_back(Island(c, time)); - // cords.push_back(c); - // } - Coordinates cordy = Coordinates(10, 10); - Island kwik = Island(cordy, time); - islands_.push_back(kwik); + islands_.emplace_back(Island(c, time)); + cords.push_back(c); + } } void Map::DebugPrintIsland() diff --git a/shm/Store.cpp b/shm/Store.cpp index 121b4fffa..517dccf34 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -14,22 +14,24 @@ std::vector possibleItemCargoNames = {"Rope", "Hook", "Screw", "Spo std::vector rarityChoice = {Rarity::common, Rarity::rare, Rarity::epic, Rarity::legendary}; Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) - { storeCargo.reserve(20); SetUpRandomCargo(time); storeCargo.shrink_to_fit(); } - Store::~Store() { - for(auto i : storeCargo) - { - std::cout << i->getName() << "DESTROYED" << '\n'; - //delete i; - } + std::for_each(storeCargo.begin(), storeCargo.end(),[](Cargo* n){delete n;}); + std::cout << "store capitulation" << '\n'; } + Store::Store(const Store& rhs) : Storable(rhs.money_, rhs.availableSpace_) { + for(auto cargo_ptr : rhs.storeCargo){ + storeCargo.push_back(cargo_ptr->clone()); + } + std::cout << "copy constructor" << '\n'; + } + void Store::SetUpRandomCargo(Time *time) { std::random_device rd; @@ -58,9 +60,9 @@ void Store::SetUpRandomCargo(Time *time) std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; - storeCargo.push_back(new Fruit(fruitCargoName, (cargoQuantity + 10), fruitPriceX, time, 15, 0)); - storeCargo.push_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); - storeCargo.push_back(new Item(itemCargoName, (cargoQuantity / 2), itemPriceX, time, randomRarity)); + storeCargo.emplace_back(new Fruit(fruitCargoName, (cargoQuantity + 10), fruitPriceX, time, 15, 0)); + storeCargo.emplace_back(new Alcohol(alcoholCargoName, cargoQuantity, alcoholPriceX, time, alcoholPercentage)); + storeCargo.emplace_back(new Item(itemCargoName, (cargoQuantity / 2), itemPriceX, time, randomRarity)); } Cargo *Store::findMatchCargo(Cargo *cargo) diff --git a/shm/Store.hpp b/shm/Store.hpp index 77ab0133f..4db54d05f 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -26,11 +26,11 @@ enum class Response class Store: public Storable { public: Store(int money, size_t availableSpace, Time* time); - + Store() = default; ~Store(); Response buy(Cargo * cargo, size_t amount, Player* player); Response sell(Cargo * cargo, size_t amount, Player* player); - + Store(const Store& ); Cargo * getCargo(size_t) const override; Cargo * findMatchCargo(Cargo *); std::vector storeCargo; diff --git a/shm/island.cpp b/shm/island.cpp index e83b9ea6c..09aa4d510 100644 --- a/shm/island.cpp +++ b/shm/island.cpp @@ -1,5 +1,6 @@ #include "island.hpp" - +#include +#include Island::Island(Coordinates position, Time * time) : store_(1000, 100, time) , position_(position) diff --git a/shm/player.hpp b/shm/player.hpp index 04024d7c5..89f12ff28 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -23,3 +23,5 @@ class Player : public Storable{ void setCrew(size_t newCrewSize); void setStartingCargo(); }; + + \ No newline at end of file diff --git a/shm/ship.cpp b/shm/ship.cpp index 8c6bc9c3d..e7483c227 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -27,6 +27,7 @@ Ship::Ship(int maxCrew, int speed, size_t id, Time* time) Ship::~Ship() { + std::for_each(shipCargo.begin(), shipCargo.end(), [](Cargo* n){delete n;}); time_->detach(this); } From 4e32374c75e84e4e7d373bbf6d2d57273b96e2e4 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 15 Jan 2022 15:19:42 +0100 Subject: [PATCH 149/151] Deleted comments in destructors --- shm/Store.cpp | 2 -- shm/alcohol.cpp | 3 --- shm/alcohol.hpp | 2 +- shm/fruit.cpp | 5 +---- shm/fruit.hpp | 4 ++-- shm/item.cpp | 1 - 6 files changed, 4 insertions(+), 13 deletions(-) diff --git a/shm/Store.cpp b/shm/Store.cpp index 517dccf34..ec0a89cfb 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -22,14 +22,12 @@ Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, ava Store::~Store() { std::for_each(storeCargo.begin(), storeCargo.end(),[](Cargo* n){delete n;}); - std::cout << "store capitulation" << '\n'; } Store::Store(const Store& rhs) : Storable(rhs.money_, rhs.availableSpace_) { for(auto cargo_ptr : rhs.storeCargo){ storeCargo.push_back(cargo_ptr->clone()); } - std::cout << "copy constructor" << '\n'; } void Store::SetUpRandomCargo(Time *time) diff --git a/shm/alcohol.cpp b/shm/alcohol.cpp index 9499e5f80..4c5e1b033 100644 --- a/shm/alcohol.cpp +++ b/shm/alcohol.cpp @@ -1,9 +1,6 @@ #include "alcohol.hpp" #include -Alcohol::~Alcohol() { - std::cout << "Alcohol " << name_ << " destructor" << '\n'; -} size_t Alcohol::getPrice() const { return basePrice_ * percentage_ / 96; diff --git a/shm/alcohol.hpp b/shm/alcohol.hpp index 6bbe1806a..ea315ce18 100644 --- a/shm/alcohol.hpp +++ b/shm/alcohol.hpp @@ -10,7 +10,7 @@ class Alcohol : public Cargo { , percentage_ (percentage) {} - ~Alcohol() override; + ~Alcohol() override {}; // override from Cargo Cargo* clone() override; diff --git a/shm/fruit.cpp b/shm/fruit.cpp index afe483241..e04ca1d2d 100644 --- a/shm/fruit.cpp +++ b/shm/fruit.cpp @@ -5,10 +5,6 @@ Fruit::Fruit(const std::string &name, size_t amount, size_t basePrice, Time *tim : Cargo(name, amount, basePrice, time), time_elapsed_(time_elapsed), expiry_date_(expiry_date) {} -Fruit::~Fruit() -{ - // this->time_.detach(this); -} size_t Fruit::getPrice() const { @@ -31,6 +27,7 @@ Cargo &Fruit::operator-=(size_t amount) { amount_ -= amount; } + return *this; } diff --git a/shm/fruit.hpp b/shm/fruit.hpp index c2c413384..6bbd63119 100644 --- a/shm/fruit.hpp +++ b/shm/fruit.hpp @@ -7,9 +7,9 @@ class Fruit : public Cargo { public: Fruit(const std::string &name, size_t amount, size_t basePrice, Time *time, size_t expiry_date, size_t time_elapsed); - virtual ~Fruit() override; + virtual ~Fruit() override {}; - // override from Cargo + // override from Cargos size_t getPrice() const override; const std::string &getName() const override { return name_; } size_t getAmount() const override { return amount_; } diff --git a/shm/item.cpp b/shm/item.cpp index 428697425..bad80a7e6 100644 --- a/shm/item.cpp +++ b/shm/item.cpp @@ -33,7 +33,6 @@ Cargo &Item::operator-=(size_t amount) bool Item::operator==(const Cargo &other) const { - try { const Item &other_item = dynamic_cast(other); From 80b756adba234a6bc0aa2ee931b1333af2416daa Mon Sep 17 00:00:00 2001 From: Grzegorz <82957844+NikczemnyOkularnik@users.noreply.github.com> Date: Sat, 15 Jan 2022 15:31:41 +0100 Subject: [PATCH 150/151] delete gtest We do not use gtest --- shm/gtest.cpp | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 shm/gtest.cpp diff --git a/shm/gtest.cpp b/shm/gtest.cpp deleted file mode 100644 index b8cf85245..000000000 --- a/shm/gtest.cpp +++ /dev/null @@ -1,13 +0,0 @@ -#include "gtest/gtest.h" -int Factorial(int a){return 1;} -TEST(FactorialTest, HandlesZeroInput) { - EXPECT_EQ(Factorial(0), 1); -} - -// Tests factorial of positive numbers. -TEST(FactorialTest, HandlesPositiveInput) { - EXPECT_EQ(Factorial(1), 1); - EXPECT_EQ(Factorial(2), 2); - EXPECT_EQ(Factorial(3), 6); - EXPECT_EQ(Factorial(8), 40320); -} From 9e2253861fb34b324b8d7cd8299ab68c4e479cb4 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Sat, 15 Jan 2022 15:33:41 +0100 Subject: [PATCH 151/151] Tests in catch2 --- shm/test/catch_amalgamated.cpp | 9430 ++++++++++++++++++++++++++ shm/test/catch_amalgamated.hpp | 10987 +++++++++++++++++++++++++++++++ shm/test/test.cpp | 156 + 3 files changed, 20573 insertions(+) create mode 100644 shm/test/catch_amalgamated.cpp create mode 100644 shm/test/catch_amalgamated.hpp create mode 100644 shm/test/test.cpp diff --git a/shm/test/catch_amalgamated.cpp b/shm/test/catch_amalgamated.cpp new file mode 100644 index 000000000..c3375ca08 --- /dev/null +++ b/shm/test/catch_amalgamated.cpp @@ -0,0 +1,9430 @@ +// Copyright Catch2 Authors +// Distributed under the Boost Software License, Version 1.0. +// (See accompanying file LICENSE_1_0.txt or copy at +// https://www.boost.org/LICENSE_1_0.txt) + +// SPDX-License-Identifier: BSL-1.0 + +// Catch v3.0.0-preview.3 +// Generated: 2020-10-08 13:59:26.616931 +// ---------------------------------------------------------- +// This file is an amalgamation of multiple different files. +// You probably shouldn't edit it directly. +// ---------------------------------------------------------- + +#include "catch_amalgamated.hpp" + + +// Adapted from donated nonius code. + + + +#include +#include +#include + + +#if defined(CATCH_CONFIG_USE_ASYNC) +#include +#endif + +namespace { + +using Catch::Benchmark::Detail::sample; + + template + sample resample(URng& rng, int resamples, std::vector::iterator first, std::vector::iterator last, Estimator& estimator) { + auto n = last - first; + std::uniform_int_distribution dist(0, n - 1); + + sample out; + out.reserve(resamples); + std::generate_n(std::back_inserter(out), resamples, [n, first, &estimator, &dist, &rng] { + std::vector resampled; + resampled.reserve(n); + std::generate_n(std::back_inserter(resampled), n, [first, &dist, &rng] { return first[dist(rng)]; }); + return estimator(resampled.begin(), resampled.end()); + }); + std::sort(out.begin(), out.end()); + return out; + } + + + double erf_inv(double x) { + // Code accompanying the article "Approximating the erfinv function" in GPU Computing Gems, Volume 2 + double w, p; + + w = -log((1.0 - x) * (1.0 + x)); + + if (w < 6.250000) { + w = w - 3.125000; + p = -3.6444120640178196996e-21; + p = -1.685059138182016589e-19 + p * w; + p = 1.2858480715256400167e-18 + p * w; + p = 1.115787767802518096e-17 + p * w; + p = -1.333171662854620906e-16 + p * w; + p = 2.0972767875968561637e-17 + p * w; + p = 6.6376381343583238325e-15 + p * w; + p = -4.0545662729752068639e-14 + p * w; + p = -8.1519341976054721522e-14 + p * w; + p = 2.6335093153082322977e-12 + p * w; + p = -1.2975133253453532498e-11 + p * w; + p = -5.4154120542946279317e-11 + p * w; + p = 1.051212273321532285e-09 + p * w; + p = -4.1126339803469836976e-09 + p * w; + p = -2.9070369957882005086e-08 + p * w; + p = 4.2347877827932403518e-07 + p * w; + p = -1.3654692000834678645e-06 + p * w; + p = -1.3882523362786468719e-05 + p * w; + p = 0.0001867342080340571352 + p * w; + p = -0.00074070253416626697512 + p * w; + p = -0.0060336708714301490533 + p * w; + p = 0.24015818242558961693 + p * w; + p = 1.6536545626831027356 + p * w; + } else if (w < 16.000000) { + w = sqrt(w) - 3.250000; + p = 2.2137376921775787049e-09; + p = 9.0756561938885390979e-08 + p * w; + p = -2.7517406297064545428e-07 + p * w; + p = 1.8239629214389227755e-08 + p * w; + p = 1.5027403968909827627e-06 + p * w; + p = -4.013867526981545969e-06 + p * w; + p = 2.9234449089955446044e-06 + p * w; + p = 1.2475304481671778723e-05 + p * w; + p = -4.7318229009055733981e-05 + p * w; + p = 6.8284851459573175448e-05 + p * w; + p = 2.4031110387097893999e-05 + p * w; + p = -0.0003550375203628474796 + p * w; + p = 0.00095328937973738049703 + p * w; + p = -0.0016882755560235047313 + p * w; + p = 0.0024914420961078508066 + p * w; + p = -0.0037512085075692412107 + p * w; + p = 0.005370914553590063617 + p * w; + p = 1.0052589676941592334 + p * w; + p = 3.0838856104922207635 + p * w; + } else { + w = sqrt(w) - 5.000000; + p = -2.7109920616438573243e-11; + p = -2.5556418169965252055e-10 + p * w; + p = 1.5076572693500548083e-09 + p * w; + p = -3.7894654401267369937e-09 + p * w; + p = 7.6157012080783393804e-09 + p * w; + p = -1.4960026627149240478e-08 + p * w; + p = 2.9147953450901080826e-08 + p * w; + p = -6.7711997758452339498e-08 + p * w; + p = 2.2900482228026654717e-07 + p * w; + p = -9.9298272942317002539e-07 + p * w; + p = 4.5260625972231537039e-06 + p * w; + p = -1.9681778105531670567e-05 + p * w; + p = 7.5995277030017761139e-05 + p * w; + p = -0.00021503011930044477347 + p * w; + p = -0.00013871931833623122026 + p * w; + p = 1.0103004648645343977 + p * w; + p = 4.8499064014085844221 + p * w; + } + return p * x; + } + + double standard_deviation(std::vector::iterator first, std::vector::iterator last) { + auto m = Catch::Benchmark::Detail::mean(first, last); + double variance = std::accumulate(first, last, 0., [m](double a, double b) { + double diff = b - m; + return a + diff * diff; + }) / (last - first); + return std::sqrt(variance); + } + +} + +namespace Catch { + namespace Benchmark { + namespace Detail { + + double weighted_average_quantile(int k, int q, std::vector::iterator first, std::vector::iterator last) { + auto count = last - first; + double idx = (count - 1) * k / static_cast(q); + int j = static_cast(idx); + double g = idx - j; + std::nth_element(first, first + j, last); + auto xj = first[j]; + if (g == 0) return xj; + + auto xj1 = *std::min_element(first + (j + 1), last); + return xj + g * (xj1 - xj); + } + + + double erfc_inv(double x) { + return erf_inv(1.0 - x); + } + + double normal_quantile(double p) { + static const double ROOT_TWO = std::sqrt(2.0); + + double result = 0.0; + assert(p >= 0 && p <= 1); + if (p < 0 || p > 1) { + return result; + } + + result = -erfc_inv(2.0 * p); + // result *= normal distribution standard deviation (1.0) * sqrt(2) + result *= /*sd * */ ROOT_TWO; + // result += normal disttribution mean (0) + return result; + } + + + double outlier_variance(Estimate mean, Estimate stddev, int n) { + double sb = stddev.point; + double mn = mean.point / n; + double mg_min = mn / 2.; + double sg = std::min(mg_min / 4., sb / std::sqrt(n)); + double sg2 = sg * sg; + double sb2 = sb * sb; + + auto c_max = [n, mn, sb2, sg2](double x) -> double { + double k = mn - x; + double d = k * k; + double nd = n * d; + double k0 = -n * nd; + double k1 = sb2 - n * sg2 + nd; + double det = k1 * k1 - 4 * sg2 * k0; + return (int)(-2. * k0 / (k1 + std::sqrt(det))); + }; + + auto var_out = [n, sb2, sg2](double c) { + double nc = n - c; + return (nc / n) * (sb2 - nc * sg2); + }; + + return std::min(var_out(1), var_out(std::min(c_max(0.), c_max(mg_min)))) / sb2; + } + + + bootstrap_analysis analyse_samples(double confidence_level, int n_resamples, std::vector::iterator first, std::vector::iterator last) { + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS + static std::random_device entropy; + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION + + auto n = static_cast(last - first); // seriously, one can't use integral types without hell in C++ + + auto mean = &Detail::mean::iterator>; + auto stddev = &standard_deviation; + +#if defined(CATCH_CONFIG_USE_ASYNC) + auto Estimate = [=](double(*f)(std::vector::iterator, std::vector::iterator)) { + auto seed = entropy(); + return std::async(std::launch::async, [=] { + std::mt19937 rng(seed); + auto resampled = resample(rng, n_resamples, first, last, f); + return bootstrap(confidence_level, first, last, resampled, f); + }); + }; + + auto mean_future = Estimate(mean); + auto stddev_future = Estimate(stddev); + + auto mean_estimate = mean_future.get(); + auto stddev_estimate = stddev_future.get(); +#else + auto Estimate = [=](double(*f)(std::vector::iterator, std::vector::iterator)) { + auto seed = entropy(); + std::mt19937 rng(seed); + auto resampled = resample(rng, n_resamples, first, last, f); + return bootstrap(confidence_level, first, last, resampled, f); + }; + + auto mean_estimate = Estimate(mean); + auto stddev_estimate = Estimate(stddev); +#endif // CATCH_USE_ASYNC + + double outlier_variance = Detail::outlier_variance(mean_estimate, stddev_estimate, n); + + return { mean_estimate, stddev_estimate, outlier_variance }; + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small benchmarking-related TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + +//////////////////////////////////////////// +// vvv formerly catch_chronometer.cpp vvv // +//////////////////////////////////////////// + + +namespace Catch { + namespace Benchmark { + namespace Detail { + ChronometerConcept::~ChronometerConcept() = default; + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + + +/////////////////////////////////////////////////// +// vvv formerly catch_benchmark_function.cpp vvv // +/////////////////////////////////////////////////// + + +namespace Catch { + namespace Benchmark { + namespace Detail { + BenchmarkFunction::callable::~callable() = default; + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + + +//////////////////////////////////////////////// +// vvv formerly catch_complete_invoke.cpp vvv // +//////////////////////////////////////////////// + + +namespace Catch { + namespace Benchmark { + namespace Detail { + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS + const std::string benchmarkErrorMsg = "a benchmark failed to run successfully"; + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + + + + +///////////////////////////////////////////////// +// vvv formerly catch_run_for_at_least.cpp vvv // +///////////////////////////////////////////////// + +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + struct optimized_away_error : std::exception { + const char* what() const noexcept override; + }; + + const char* optimized_away_error::what() const noexcept { + return "could not measure benchmark, maybe it was optimized away"; + } + + void throw_optimized_away_error() { + Catch::throw_exception(optimized_away_error{}); + } + + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + + + +#include +#include + +namespace { + +// Performs equivalent check of std::fabs(lhs - rhs) <= margin +// But without the subtraction to allow for INFINITY in comparison +bool marginComparison(double lhs, double rhs, double margin) { + return (lhs + margin >= rhs) && (rhs + margin >= lhs); +} + +} + +namespace Catch { + + Approx::Approx ( double value ) + : m_epsilon( std::numeric_limits::epsilon()*100 ), + m_margin( 0.0 ), + m_scale( 0.0 ), + m_value( value ) + {} + + Approx Approx::custom() { + return Approx( 0 ); + } + + Approx Approx::operator-() const { + auto temp(*this); + temp.m_value = -temp.m_value; + return temp; + } + + + std::string Approx::toString() const { + ReusableStringStream rss; + rss << "Approx( " << ::Catch::Detail::stringify( m_value ) << " )"; + return rss.str(); + } + + bool Approx::equalityComparisonImpl(const double other) const { + // First try with fixed margin, then compute margin based on epsilon, scale and Approx's value + // Thanks to Richard Harris for his help refining the scaled margin value + return marginComparison(m_value, other, m_margin) + || marginComparison(m_value, other, m_epsilon * (m_scale + std::fabs(std::isinf(m_value)? 0 : m_value))); + } + + void Approx::setMargin(double newMargin) { + CATCH_ENFORCE(newMargin >= 0, + "Invalid Approx::margin: " << newMargin << '.' + << " Approx::Margin has to be non-negative."); + m_margin = newMargin; + } + + void Approx::setEpsilon(double newEpsilon) { + CATCH_ENFORCE(newEpsilon >= 0 && newEpsilon <= 1.0, + "Invalid Approx::epsilon: " << newEpsilon << '.' + << " Approx::epsilon has to be in [0, 1]"); + m_epsilon = newEpsilon; + } + +namespace literals { + Approx operator "" _a(long double val) { + return Approx(val); + } + Approx operator "" _a(unsigned long long val) { + return Approx(val); + } +} // end namespace literals + +std::string StringMaker::convert(Catch::Approx const& value) { + return value.toString(); +} + +} // end namespace Catch + + + +namespace Catch { + + AssertionResultData::AssertionResultData(ResultWas::OfType _resultType, LazyExpression const & _lazyExpression): + lazyExpression(_lazyExpression), + resultType(_resultType) {} + + std::string AssertionResultData::reconstructExpression() const { + + if( reconstructedExpression.empty() ) { + if( lazyExpression ) { + ReusableStringStream rss; + rss << lazyExpression; + reconstructedExpression = rss.str(); + } + } + return reconstructedExpression; + } + + AssertionResult::AssertionResult( AssertionInfo const& info, AssertionResultData const& data ) + : m_info( info ), + m_resultData( data ) + {} + + // Result was a success + bool AssertionResult::succeeded() const { + return Catch::isOk( m_resultData.resultType ); + } + + // Result was a success, or failure is suppressed + bool AssertionResult::isOk() const { + return Catch::isOk( m_resultData.resultType ) || shouldSuppressFailure( m_info.resultDisposition ); + } + + ResultWas::OfType AssertionResult::getResultType() const { + return m_resultData.resultType; + } + + bool AssertionResult::hasExpression() const { + return !m_info.capturedExpression.empty(); + } + + bool AssertionResult::hasMessage() const { + return !m_resultData.message.empty(); + } + + std::string AssertionResult::getExpression() const { + // Possibly overallocating by 3 characters should be basically free + std::string expr; expr.reserve(m_info.capturedExpression.size() + 3); + if (isFalseTest(m_info.resultDisposition)) { + expr += "!("; + } + expr += m_info.capturedExpression; + if (isFalseTest(m_info.resultDisposition)) { + expr += ')'; + } + return expr; + } + + std::string AssertionResult::getExpressionInMacro() const { + std::string expr; + if( m_info.macroName.empty() ) + expr = static_cast(m_info.capturedExpression); + else { + expr.reserve( m_info.macroName.size() + m_info.capturedExpression.size() + 4 ); + expr += m_info.macroName; + expr += "( "; + expr += m_info.capturedExpression; + expr += " )"; + } + return expr; + } + + bool AssertionResult::hasExpandedExpression() const { + return hasExpression() && getExpandedExpression() != getExpression(); + } + + std::string AssertionResult::getExpandedExpression() const { + std::string expr = m_resultData.reconstructExpression(); + return expr.empty() + ? getExpression() + : expr; + } + + std::string AssertionResult::getMessage() const { + return m_resultData.message; + } + SourceLineInfo AssertionResult::getSourceInfo() const { + return m_info.lineInfo; + } + + StringRef AssertionResult::getTestMacroName() const { + return m_info.macroName; + } + +} // end namespace Catch + + + + +namespace Catch { + + Config::Config( ConfigData const& data ) + : m_data( data ), + m_stream( openStream() ) + { + // We need to trim filter specs to avoid trouble with superfluous + // whitespace (esp. important for bdd macros, as those are manually + // aligned with whitespace). + + for (auto& elem : m_data.testsOrTags) { + elem = trim(elem); + } + for (auto& elem : m_data.sectionsToRun) { + elem = trim(elem); + } + + TestSpecParser parser(ITagAliasRegistry::get()); + if (!m_data.testsOrTags.empty()) { + m_hasTestFilters = true; + for (auto const& testOrTags : m_data.testsOrTags) { + parser.parse(testOrTags); + } + } + m_testSpec = parser.testSpec(); + } + + Config::~Config() = default; + + + std::string const& Config::getFilename() const { + return m_data.outputFilename ; + } + + bool Config::listTests() const { return m_data.listTests; } + bool Config::listTags() const { return m_data.listTags; } + bool Config::listReporters() const { return m_data.listReporters; } + + std::string Config::getProcessName() const { return m_data.processName; } + std::string const& Config::getReporterName() const { return m_data.reporterName; } + + std::vector const& Config::getTestsOrTags() const { return m_data.testsOrTags; } + std::vector const& Config::getSectionsToRun() const { return m_data.sectionsToRun; } + + TestSpec const& Config::testSpec() const { return m_testSpec; } + bool Config::hasTestFilters() const { return m_hasTestFilters; } + + bool Config::showHelp() const { return m_data.showHelp; } + + // IConfig interface + bool Config::allowThrows() const { return !m_data.noThrow; } + std::ostream& Config::stream() const { return m_stream->stream(); } + std::string Config::name() const { return m_data.name.empty() ? m_data.processName : m_data.name; } + bool Config::includeSuccessfulResults() const { return m_data.showSuccessfulTests; } + bool Config::warnAboutMissingAssertions() const { return !!(m_data.warnings & WarnAbout::NoAssertions); } + bool Config::warnAboutNoTests() const { return !!(m_data.warnings & WarnAbout::NoTests); } + ShowDurations Config::showDurations() const { return m_data.showDurations; } + double Config::minDuration() const { return m_data.minDuration; } + TestRunOrder Config::runOrder() const { return m_data.runOrder; } + unsigned int Config::rngSeed() const { return m_data.rngSeed; } + UseColour Config::useColour() const { return m_data.useColour; } + bool Config::shouldDebugBreak() const { return m_data.shouldDebugBreak; } + int Config::abortAfter() const { return m_data.abortAfter; } + bool Config::showInvisibles() const { return m_data.showInvisibles; } + Verbosity Config::verbosity() const { return m_data.verbosity; } + + bool Config::benchmarkNoAnalysis() const { return m_data.benchmarkNoAnalysis; } + int Config::benchmarkSamples() const { return m_data.benchmarkSamples; } + double Config::benchmarkConfidenceInterval() const { return m_data.benchmarkConfidenceInterval; } + unsigned int Config::benchmarkResamples() const { return m_data.benchmarkResamples; } + std::chrono::milliseconds Config::benchmarkWarmupTime() const { return std::chrono::milliseconds(m_data.benchmarkWarmupTime); } + + IStream const* Config::openStream() { + return Catch::makeStream(m_data.outputFilename); + } + +} // end namespace Catch + + + +#include +#include + +namespace Catch { + + //////////////////////////////////////////////////////////////////////////// + + Catch::MessageBuilder::MessageBuilder( StringRef const& macroName, + SourceLineInfo const& lineInfo, + ResultWas::OfType type ) + :m_info(macroName, lineInfo, type) {} + + //////////////////////////////////////////////////////////////////////////// + + + ScopedMessage::ScopedMessage( MessageBuilder const& builder ): + m_info( builder.m_info ) { + m_info.message = builder.m_stream.str(); + getResultCapture().pushScopedMessage( m_info ); + } + + ScopedMessage::ScopedMessage( ScopedMessage&& old ) noexcept: + m_info( std::move( old.m_info ) ) { + old.m_moved = true; + } + + ScopedMessage::~ScopedMessage() { + if ( !uncaught_exceptions() && !m_moved ){ + getResultCapture().popScopedMessage(m_info); + } + } + + + Capturer::Capturer( StringRef macroName, SourceLineInfo const& lineInfo, ResultWas::OfType resultType, StringRef names ) { + auto trimmed = [&] (size_t start, size_t end) { + while (names[start] == ',' || isspace(static_cast(names[start]))) { + ++start; + } + while (names[end] == ',' || isspace(static_cast(names[end]))) { + --end; + } + return names.substr(start, end - start + 1); + }; + auto skipq = [&] (size_t start, char quote) { + for (auto i = start + 1; i < names.size() ; ++i) { + if (names[i] == quote) + return i; + if (names[i] == '\\') + ++i; + } + CATCH_INTERNAL_ERROR("CAPTURE parsing encountered unmatched quote"); + }; + + size_t start = 0; + std::stack openings; + for (size_t pos = 0; pos < names.size(); ++pos) { + char c = names[pos]; + switch (c) { + case '[': + case '{': + case '(': + // It is basically impossible to disambiguate between + // comparison and start of template args in this context +// case '<': + openings.push(c); + break; + case ']': + case '}': + case ')': +// case '>': + openings.pop(); + break; + case '"': + case '\'': + pos = skipq(pos, c); + break; + case ',': + if (start != pos && openings.empty()) { + m_messages.emplace_back(macroName, lineInfo, resultType); + m_messages.back().message = static_cast(trimmed(start, pos)); + m_messages.back().message += " := "; + start = pos; + } + } + } + assert(openings.empty() && "Mismatched openings"); + m_messages.emplace_back(macroName, lineInfo, resultType); + m_messages.back().message = static_cast(trimmed(start, names.size() - 1)); + m_messages.back().message += " := "; + } + Capturer::~Capturer() { + if ( !uncaught_exceptions() ){ + assert( m_captured == m_messages.size() ); + for( size_t i = 0; i < m_captured; ++i ) + m_resultCapture.popScopedMessage( m_messages[i] ); + } + } + + void Capturer::captureValue( size_t index, std::string const& value ) { + assert( index < m_messages.size() ); + m_messages[index].message += value; + m_resultCapture.pushScopedMessage( m_messages[index] ); + m_captured++; + } + +} // end namespace Catch + + + + +namespace Catch { + + namespace { + + class RegistryHub : public IRegistryHub, + public IMutableRegistryHub, + private Detail::NonCopyable { + + public: // IRegistryHub + RegistryHub() = default; + IReporterRegistry const& getReporterRegistry() const override { + return m_reporterRegistry; + } + ITestCaseRegistry const& getTestCaseRegistry() const override { + return m_testCaseRegistry; + } + IExceptionTranslatorRegistry const& getExceptionTranslatorRegistry() const override { + return m_exceptionTranslatorRegistry; + } + ITagAliasRegistry const& getTagAliasRegistry() const override { + return m_tagAliasRegistry; + } + StartupExceptionRegistry const& getStartupExceptionRegistry() const override { + return m_exceptionRegistry; + } + + public: // IMutableRegistryHub + void registerReporter( std::string const& name, IReporterFactoryPtr factory ) override { + m_reporterRegistry.registerReporter( name, std::move(factory) ); + } + void registerListener( IReporterFactoryPtr factory ) override { + m_reporterRegistry.registerListener( std::move(factory) ); + } + void registerTest( Detail::unique_ptr&& testInfo, Detail::unique_ptr&& invoker ) override { + m_testCaseRegistry.registerTest( std::move(testInfo), std::move(invoker) ); + } + void registerTranslator( const IExceptionTranslator* translator ) override { + m_exceptionTranslatorRegistry.registerTranslator( translator ); + } + void registerTagAlias( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) override { + m_tagAliasRegistry.add( alias, tag, lineInfo ); + } + void registerStartupException() noexcept override { +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + m_exceptionRegistry.add(std::current_exception()); +#else + CATCH_INTERNAL_ERROR("Attempted to register active exception under CATCH_CONFIG_DISABLE_EXCEPTIONS!"); +#endif + } + IMutableEnumValuesRegistry& getMutableEnumValuesRegistry() override { + return m_enumValuesRegistry; + } + + private: + TestRegistry m_testCaseRegistry; + ReporterRegistry m_reporterRegistry; + ExceptionTranslatorRegistry m_exceptionTranslatorRegistry; + TagAliasRegistry m_tagAliasRegistry; + StartupExceptionRegistry m_exceptionRegistry; + Detail::EnumValuesRegistry m_enumValuesRegistry; + }; + } + + using RegistryHubSingleton = Singleton; + + IRegistryHub const& getRegistryHub() { + return RegistryHubSingleton::get(); + } + IMutableRegistryHub& getMutableRegistryHub() { + return RegistryHubSingleton::getMutable(); + } + void cleanUp() { + cleanupSingletons(); + cleanUpContext(); + } + std::string translateActiveException() { + return getRegistryHub().getExceptionTranslatorRegistry().translateActiveException(); + } + + +} // end namespace Catch + + + +#include +#include +#include + +namespace Catch { + + namespace { + const int MaxExitCode = 255; + + IStreamingReporterPtr createReporter(std::string const& reporterName, IConfig const* config) { + auto reporter = Catch::getRegistryHub().getReporterRegistry().create(reporterName, config); + CATCH_ENFORCE(reporter, "No reporter registered with name: '" << reporterName << "'"); + + return reporter; + } + + IStreamingReporterPtr makeReporter(Config const* config) { + if (Catch::getRegistryHub().getReporterRegistry().getListeners().empty()) { + return createReporter(config->getReporterName(), config); + } + + // On older platforms, returning unique_ptr + // when the return type is unique_ptr + // doesn't compile without a std::move call. However, this causes + // a warning on newer platforms. Thus, we have to work around + // it a bit and downcast the pointer manually. + auto ret = Detail::unique_ptr(new ListeningReporter); + auto& multi = static_cast(*ret); + auto const& listeners = Catch::getRegistryHub().getReporterRegistry().getListeners(); + for (auto const& listener : listeners) { + multi.addListener(listener->create(Catch::ReporterConfig(config))); + } + multi.addReporter(createReporter(config->getReporterName(), config)); + return ret; + } + + class TestGroup { + public: + explicit TestGroup(IStreamingReporterPtr&& reporter, Config const* config): + m_reporter(reporter.get()), + m_config{config}, + m_context{config, std::move(reporter)} { + + auto const& allTestCases = getAllTestCasesSorted(*m_config); + m_matches = m_config->testSpec().matchesByFilter(allTestCases, *m_config); + auto const& invalidArgs = m_config->testSpec().getInvalidArgs(); + + if (m_matches.empty() && invalidArgs.empty()) { + for (auto const& test : allTestCases) + if (!test.getTestCaseInfo().isHidden()) + m_tests.emplace(&test); + } else { + for (auto const& match : m_matches) + m_tests.insert(match.tests.begin(), match.tests.end()); + } + } + + Totals execute() { + auto const& invalidArgs = m_config->testSpec().getInvalidArgs(); + Totals totals; + m_context.testGroupStarting(m_config->name(), 1, 1); + for (auto const& testCase : m_tests) { + if (!m_context.aborting()) + totals += m_context.runTest(*testCase); + else + m_reporter->skipTest(testCase->getTestCaseInfo()); + } + + for (auto const& match : m_matches) { + if (match.tests.empty()) { + m_reporter->noMatchingTestCases(match.name); + totals.error = -1; + } + } + + if (!invalidArgs.empty()) { + for (auto const& invalidArg: invalidArgs) + m_reporter->reportInvalidArguments(invalidArg); + } + + m_context.testGroupEnded(m_config->name(), totals, 1, 1); + return totals; + } + + private: + using Tests = std::set; + + IStreamingReporter* m_reporter; + Config const* m_config; + RunContext m_context; + Tests m_tests; + TestSpec::Matches m_matches; + }; + + void applyFilenamesAsTags() { + for (auto const& testInfo : getRegistryHub().getTestCaseRegistry().getAllInfos()) { + testInfo->addFilenameTag(); + } + } + + } // anon namespace + + Session::Session() { + static bool alreadyInstantiated = false; + if( alreadyInstantiated ) { + CATCH_TRY { CATCH_INTERNAL_ERROR( "Only one instance of Catch::Session can ever be used" ); } + CATCH_CATCH_ALL { getMutableRegistryHub().registerStartupException(); } + } + + // There cannot be exceptions at startup in no-exception mode. +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + const auto& exceptions = getRegistryHub().getStartupExceptionRegistry().getExceptions(); + if ( !exceptions.empty() ) { + config(); + getCurrentMutableContext().setConfig(m_config.get()); + + m_startupExceptions = true; + Colour colourGuard( Colour::Red ); + Catch::cerr() << "Errors occurred during startup!" << '\n'; + // iterate over all exceptions and notify user + for ( const auto& ex_ptr : exceptions ) { + try { + std::rethrow_exception(ex_ptr); + } catch ( std::exception const& ex ) { + Catch::cerr() << TextFlow::Column( ex.what() ).indent(2) << '\n'; + } + } + } +#endif + + alreadyInstantiated = true; + m_cli = makeCommandLineParser( m_configData ); + } + Session::~Session() { + Catch::cleanUp(); + } + + void Session::showHelp() const { + Catch::cout() + << "\nCatch v" << libraryVersion() << "\n" + << m_cli << std::endl + << "For more detailed usage please see the project docs\n" << std::endl; + } + void Session::libIdentify() { + Catch::cout() + << std::left << std::setw(16) << "description: " << "A Catch2 test executable\n" + << std::left << std::setw(16) << "category: " << "testframework\n" + << std::left << std::setw(16) << "framework: " << "Catch Test\n" + << std::left << std::setw(16) << "version: " << libraryVersion() << std::endl; + } + + int Session::applyCommandLine( int argc, char const * const * argv ) { + if( m_startupExceptions ) + return 1; + + auto result = m_cli.parse( Clara::Args( argc, argv ) ); + if( !result ) { + config(); + getCurrentMutableContext().setConfig(m_config.get()); + Catch::cerr() + << Colour( Colour::Red ) + << "\nError(s) in input:\n" + << TextFlow::Column( result.errorMessage() ).indent( 2 ) + << "\n\n"; + Catch::cerr() << "Run with -? for usage\n" << std::endl; + return MaxExitCode; + } + + if( m_configData.showHelp ) + showHelp(); + if( m_configData.libIdentify ) + libIdentify(); + m_config.reset(); + return 0; + } + +#if defined(CATCH_CONFIG_WCHAR) && defined(_WIN32) && defined(UNICODE) + int Session::applyCommandLine( int argc, wchar_t const * const * argv ) { + + char **utf8Argv = new char *[ argc ]; + + for ( int i = 0; i < argc; ++i ) { + int bufSize = WideCharToMultiByte( CP_UTF8, 0, argv[i], -1, nullptr, 0, nullptr, nullptr ); + + utf8Argv[ i ] = new char[ bufSize ]; + + WideCharToMultiByte( CP_UTF8, 0, argv[i], -1, utf8Argv[i], bufSize, nullptr, nullptr ); + } + + int returnCode = applyCommandLine( argc, utf8Argv ); + + for ( int i = 0; i < argc; ++i ) + delete [] utf8Argv[ i ]; + + delete [] utf8Argv; + + return returnCode; + } +#endif + + void Session::useConfigData( ConfigData const& configData ) { + m_configData = configData; + m_config.reset(); + } + + int Session::run() { + if( ( m_configData.waitForKeypress & WaitForKeypress::BeforeStart ) != 0 ) { + Catch::cout() << "...waiting for enter/ return before starting" << std::endl; + static_cast(std::getchar()); + } + int exitCode = runInternal(); + if( ( m_configData.waitForKeypress & WaitForKeypress::BeforeExit ) != 0 ) { + Catch::cout() << "...waiting for enter/ return before exiting, with code: " << exitCode << std::endl; + static_cast(std::getchar()); + } + return exitCode; + } + + Clara::Parser const& Session::cli() const { + return m_cli; + } + void Session::cli( Clara::Parser const& newParser ) { + m_cli = newParser; + } + ConfigData& Session::configData() { + return m_configData; + } + Config& Session::config() { + if( !m_config ) + m_config = Detail::make_unique( m_configData ); + return *m_config; + } + + int Session::runInternal() { + if( m_startupExceptions ) + return 1; + + if (m_configData.showHelp || m_configData.libIdentify) { + return 0; + } + + CATCH_TRY { + config(); // Force config to be constructed + + seedRng( *m_config ); + + if (m_configData.filenamesAsTags) { + applyFilenamesAsTags(); + } + + // Set up global config instance before we start calling into other functions + getCurrentMutableContext().setConfig(m_config.get()); + + // Create reporter(s) so we can route listings through them + auto reporter = makeReporter(m_config.get()); + + // Handle list request + if (list(*reporter, *m_config)) { + return 0; + } + + TestGroup tests { std::move(reporter), m_config.get() }; + auto const totals = tests.execute(); + + if( m_config->warnAboutNoTests() && totals.error == -1 ) + return 2; + + // Note that on unices only the lower 8 bits are usually used, clamping + // the return value to 255 prevents false negative when some multiple + // of 256 tests has failed + return (std::min) (MaxExitCode, (std::max) (totals.error, static_cast(totals.assertions.failed))); + } +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + catch( std::exception& ex ) { + Catch::cerr() << ex.what() << std::endl; + return MaxExitCode; + } +#endif + } + +} // end namespace Catch + + + +#include +#include +#include + +namespace Catch { + + namespace { + using TCP_underlying_type = uint8_t; + static_assert(sizeof(TestCaseProperties) == sizeof(TCP_underlying_type), + "The size of the TestCaseProperties is different from the assumed size"); + + TestCaseProperties operator|(TestCaseProperties lhs, TestCaseProperties rhs) { + return static_cast( + static_cast(lhs) | static_cast(rhs) + ); + } + + TestCaseProperties& operator|=(TestCaseProperties& lhs, TestCaseProperties rhs) { + lhs = static_cast( + static_cast(lhs) | static_cast(rhs) + ); + return lhs; + } + + TestCaseProperties operator&(TestCaseProperties lhs, TestCaseProperties rhs) { + return static_cast( + static_cast(lhs) & static_cast(rhs) + ); + } + + bool applies(TestCaseProperties tcp) { + static_assert(static_cast(TestCaseProperties::None) == 0, + "TestCaseProperties::None must be equal to 0"); + return tcp != TestCaseProperties::None; + } + + TestCaseProperties parseSpecialTag( StringRef tag ) { + if( !tag.empty() && tag[0] == '.' ) + return TestCaseProperties::IsHidden; + else if( tag == "!throws"_sr ) + return TestCaseProperties::Throws; + else if( tag == "!shouldfail"_sr ) + return TestCaseProperties::ShouldFail; + else if( tag == "!mayfail"_sr ) + return TestCaseProperties::MayFail; + else if( tag == "!nonportable"_sr ) + return TestCaseProperties::NonPortable; + else if( tag == "!benchmark"_sr ) + return static_cast(TestCaseProperties::Benchmark | TestCaseProperties::IsHidden ); + else + return TestCaseProperties::None; + } + bool isReservedTag( StringRef tag ) { + return parseSpecialTag( tag ) == TestCaseProperties::None + && tag.size() > 0 + && !std::isalnum( static_cast(tag[0]) ); + } + void enforceNotReservedTag( StringRef tag, SourceLineInfo const& _lineInfo ) { + CATCH_ENFORCE( !isReservedTag(tag), + "Tag name: [" << tag << "] is not allowed.\n" + << "Tag names starting with non alphanumeric characters are reserved\n" + << _lineInfo ); + } + + std::string makeDefaultName() { + static size_t counter = 0; + return "Anonymous test case " + std::to_string(++counter); + } + + StringRef extractFilenamePart(StringRef filename) { + size_t lastDot = filename.size(); + while (lastDot > 0 && filename[lastDot - 1] != '.') { + --lastDot; + } + --lastDot; + + size_t nameStart = lastDot; + while (nameStart > 0 && filename[nameStart - 1] != '/' && filename[nameStart - 1] != '\\') { + --nameStart; + } + + return filename.substr(nameStart, lastDot - nameStart); + } + + // Returns the upper bound on size of extra tags ([#file]+[.]) + size_t sizeOfExtraTags(StringRef filepath) { + // [.] is 3, [#] is another 3 + const size_t extras = 3 + 3; + return extractFilenamePart(filepath).size() + extras; + } + } + + Detail::unique_ptr + makeTestCaseInfo(std::string const& _className, + NameAndTags const& nameAndTags, + SourceLineInfo const& _lineInfo ) { + return Detail::make_unique(_className, nameAndTags, _lineInfo); + } + + TestCaseInfo::TestCaseInfo(std::string const& _className, + NameAndTags const& _nameAndTags, + SourceLineInfo const& _lineInfo): + name( _nameAndTags.name.empty() ? makeDefaultName() : _nameAndTags.name ), + className( _className ), + lineInfo( _lineInfo ) + { + StringRef originalTags = _nameAndTags.tags; + // We need to reserve enough space to store all of the tags + // (including optional hidden tag and filename tag) + auto requiredSize = originalTags.size() + sizeOfExtraTags(_lineInfo.file); + backingTags.reserve(requiredSize); + backingLCaseTags.reserve(requiredSize); + + // We cannot copy the tags directly, as we need to normalize + // some tags, so that [.foo] is copied as [.][foo]. + size_t tagStart = 0; + size_t tagEnd = 0; + bool inTag = false; + for (size_t idx = 0; idx < originalTags.size(); ++idx) { + auto c = originalTags[idx]; + if (c == '[') { + assert(!inTag); + inTag = true; + tagStart = idx; + } + if (c == ']') { + assert(inTag); + inTag = false; + tagEnd = idx; + assert(tagStart < tagEnd); + + // We need to check the tag for special meanings, copy + // it over to backing storage and actually reference the + // backing storage in the saved tags + StringRef tagStr = originalTags.substr(tagStart+1, tagEnd - tagStart - 1); + enforceNotReservedTag(tagStr, lineInfo); + properties |= parseSpecialTag(tagStr); + // When copying a tag to the backing storage, we need to + // check if it is a merged hide tag, such as [.foo], and + // if it is, we need to handle it as if it was [foo]. + if (tagStr.size() > 1 && tagStr[0] == '.') { + tagStr = tagStr.substr(1, tagStr.size() - 1); + } + // We skip over dealing with the [.] tag, as we will add + // it later unconditionally and then sort and unique all + // the tags. + internalAppendTag(tagStr); + } + (void)inTag; // Silence "set-but-unused" warning in release mode. + } + // Add [.] if relevant + if (isHidden()) { + internalAppendTag("."_sr); + } + + // Sort and prepare tags + toLowerInPlace(backingLCaseTags); + std::sort(begin(tags), end(tags), [](Tag lhs, Tag rhs) { return lhs.lowerCased < rhs.lowerCased; }); + tags.erase(std::unique(begin(tags), end(tags), [](Tag lhs, Tag rhs) {return lhs.lowerCased == rhs.lowerCased; }), + end(tags)); + } + + bool TestCaseInfo::isHidden() const { + return applies( properties & TestCaseProperties::IsHidden ); + } + bool TestCaseInfo::throws() const { + return applies( properties & TestCaseProperties::Throws ); + } + bool TestCaseInfo::okToFail() const { + return applies( properties & (TestCaseProperties::ShouldFail | TestCaseProperties::MayFail ) ); + } + bool TestCaseInfo::expectedToFail() const { + return applies( properties & (TestCaseProperties::ShouldFail) ); + } + + void TestCaseInfo::addFilenameTag() { + std::string combined("#"); + combined += extractFilenamePart(lineInfo.file); + internalAppendTag(combined); + } + + std::string TestCaseInfo::tagsAsString() const { + std::string ret; + // '[' and ']' per tag + std::size_t full_size = 2 * tags.size(); + for (const auto& tag : tags) { + full_size += tag.original.size(); + } + ret.reserve(full_size); + for (const auto& tag : tags) { + ret.push_back('['); + ret += tag.original; + ret.push_back(']'); + } + + return ret; + } + + void TestCaseInfo::internalAppendTag(StringRef tagStr) { + backingTags += '['; + const auto backingStart = backingTags.size(); + backingTags += tagStr; + const auto backingEnd = backingTags.size(); + backingTags += ']'; + backingLCaseTags += '['; + // We append the tag to the lower-case backing storage as-is, + // because we will perform the lower casing later, in bulk + backingLCaseTags += tagStr; + backingLCaseTags += ']'; + tags.emplace_back(StringRef(backingTags.c_str() + backingStart, backingEnd - backingStart), + StringRef(backingLCaseTags.c_str() + backingStart, backingEnd - backingStart)); + } + + + bool TestCaseHandle::operator == ( TestCaseHandle const& rhs ) const { + return m_invoker == rhs.m_invoker + && m_info->name == rhs.m_info->name + && m_info->className == rhs.m_info->className; + } + + bool TestCaseHandle::operator < ( TestCaseHandle const& rhs ) const { + return m_info->name < rhs.m_info->name; + } + + TestCaseInfo const& TestCaseHandle::getTestCaseInfo() const { + return *m_info; + } + +} // end namespace Catch + + + +#include +#include +#include + +namespace Catch { + + TestSpec::Pattern::Pattern( std::string const& name ) + : m_name( name ) + {} + + TestSpec::Pattern::~Pattern() = default; + + std::string const& TestSpec::Pattern::name() const { + return m_name; + } + + + TestSpec::NamePattern::NamePattern( std::string const& name, std::string const& filterString ) + : Pattern( filterString ) + , m_wildcardPattern( toLower( name ), CaseSensitive::No ) + {} + + bool TestSpec::NamePattern::matches( TestCaseInfo const& testCase ) const { + return m_wildcardPattern.matches( testCase.name ); + } + + + TestSpec::TagPattern::TagPattern( std::string const& tag, std::string const& filterString ) + : Pattern( filterString ) + , m_tag( toLower( tag ) ) + {} + + bool TestSpec::TagPattern::matches( TestCaseInfo const& testCase ) const { + return std::find_if(begin(testCase.tags), + end(testCase.tags), + [&](Tag const& tag) { + return tag.lowerCased == m_tag; + }) != end(testCase.tags); + } + + bool TestSpec::Filter::matches( TestCaseInfo const& testCase ) const { + bool should_use = !testCase.isHidden(); + for (auto const& pattern : m_required) { + should_use = true; + if (!pattern->matches(testCase)) { + return false; + } + } + for (auto const& pattern : m_forbidden) { + if (pattern->matches(testCase)) { + return false; + } + } + return should_use; + } + + std::string TestSpec::Filter::name() const { + std::string name; + for (auto const& p : m_required) { + name += p->name(); + } + for (auto const& p : m_forbidden) { + name += p->name(); + } + return name; + } + + + bool TestSpec::hasFilters() const { + return !m_filters.empty(); + } + + bool TestSpec::matches( TestCaseInfo const& testCase ) const { + return std::any_of( m_filters.begin(), m_filters.end(), [&]( Filter const& f ){ return f.matches( testCase ); } ); + } + + TestSpec::Matches TestSpec::matchesByFilter( std::vector const& testCases, IConfig const& config ) const + { + Matches matches( m_filters.size() ); + std::transform( m_filters.begin(), m_filters.end(), matches.begin(), [&]( Filter const& filter ){ + std::vector currentMatches; + for( auto const& test : testCases ) + if( isThrowSafe( test, config ) && filter.matches( test.getTestCaseInfo() ) ) + currentMatches.emplace_back( &test ); + return FilterMatch{ filter.name(), currentMatches }; + } ); + return matches; + } + + const TestSpec::vectorStrings& TestSpec::getInvalidArgs() const{ + return (m_invalidArgs); + } + +} + + + +#include + +static const uint64_t nanosecondsInSecond = 1000000000; + +namespace Catch { + + auto getCurrentNanosecondsSinceEpoch() -> uint64_t { + return std::chrono::duration_cast( std::chrono::high_resolution_clock::now().time_since_epoch() ).count(); + } + + namespace { + auto estimateClockResolution() -> uint64_t { + uint64_t sum = 0; + static const uint64_t iterations = 1000000; + + auto startTime = getCurrentNanosecondsSinceEpoch(); + + for( std::size_t i = 0; i < iterations; ++i ) { + + uint64_t ticks; + uint64_t baseTicks = getCurrentNanosecondsSinceEpoch(); + do { + ticks = getCurrentNanosecondsSinceEpoch(); + } while( ticks == baseTicks ); + + auto delta = ticks - baseTicks; + sum += delta; + + // If we have been calibrating for over 3 seconds -- the clock + // is terrible and we should move on. + // TBD: How to signal that the measured resolution is probably wrong? + if (ticks > startTime + 3 * nanosecondsInSecond) { + return sum / ( i + 1u ); + } + } + + // We're just taking the mean, here. To do better we could take the std. dev and exclude outliers + // - and potentially do more iterations if there's a high variance. + return sum/iterations; + } + } + auto getEstimatedClockResolution() -> uint64_t { + static auto s_resolution = estimateClockResolution(); + return s_resolution; + } + + void Timer::start() { + m_nanoseconds = getCurrentNanosecondsSinceEpoch(); + } + auto Timer::getElapsedNanoseconds() const -> uint64_t { + return getCurrentNanosecondsSinceEpoch() - m_nanoseconds; + } + auto Timer::getElapsedMicroseconds() const -> uint64_t { + return getElapsedNanoseconds()/1000; + } + auto Timer::getElapsedMilliseconds() const -> unsigned int { + return static_cast(getElapsedMicroseconds()/1000); + } + auto Timer::getElapsedSeconds() const -> double { + return getElapsedMicroseconds()/1000000.0; + } + + +} // namespace Catch + + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +# pragma clang diagnostic ignored "-Wglobal-constructors" +#endif + + + +#include +#include + +namespace Catch { + +namespace Detail { + + const std::string unprintableString = "{?}"; + + namespace { + const int hexThreshold = 255; + + struct Endianness { + enum Arch { Big, Little }; + + static Arch which() { + int one = 1; + // If the lowest byte we read is non-zero, we can assume + // that little endian format is used. + auto value = *reinterpret_cast(&one); + return value ? Little : Big; + } + }; + + template + std::string fpToString(T value, int precision) { + if (Catch::isnan(value)) { + return "nan"; + } + + ReusableStringStream rss; + rss << std::setprecision(precision) + << std::fixed + << value; + std::string d = rss.str(); + std::size_t i = d.find_last_not_of('0'); + if (i != std::string::npos && i != d.size() - 1) { + if (d[i] == '.') + i++; + d = d.substr(0, i + 1); + } + return d; + } + } // end unnamed namespace + + std::string rawMemoryToString( const void *object, std::size_t size ) { + // Reverse order for little endian architectures + int i = 0, end = static_cast( size ), inc = 1; + if( Endianness::which() == Endianness::Little ) { + i = end-1; + end = inc = -1; + } + + unsigned char const *bytes = static_cast(object); + ReusableStringStream rss; + rss << "0x" << std::setfill('0') << std::hex; + for( ; i != end; i += inc ) + rss << std::setw(2) << static_cast(bytes[i]); + return rss.str(); + } +} // end Detail namespace + + + +//// ======================================================= //// +// +// Out-of-line defs for full specialization of StringMaker +// +//// ======================================================= //// + +std::string StringMaker::convert(const std::string& str) { + if (!getCurrentContext().getConfig()->showInvisibles()) { + return '"' + str + '"'; + } + + std::string s("\""); + for (char c : str) { + switch (c) { + case '\n': + s.append("\\n"); + break; + case '\t': + s.append("\\t"); + break; + default: + s.push_back(c); + break; + } + } + s.append("\""); + return s; +} + +#ifdef CATCH_CONFIG_CPP17_STRING_VIEW +std::string StringMaker::convert(std::string_view str) { + return ::Catch::Detail::stringify(std::string{ str }); +} +#endif + +std::string StringMaker::convert(char const* str) { + if (str) { + return ::Catch::Detail::stringify(std::string{ str }); + } else { + return{ "{null string}" }; + } +} +std::string StringMaker::convert(char* str) { + if (str) { + return ::Catch::Detail::stringify(std::string{ str }); + } else { + return{ "{null string}" }; + } +} + +#ifdef CATCH_CONFIG_WCHAR +std::string StringMaker::convert(const std::wstring& wstr) { + std::string s; + s.reserve(wstr.size()); + for (auto c : wstr) { + s += (c <= 0xff) ? static_cast(c) : '?'; + } + return ::Catch::Detail::stringify(s); +} + +# ifdef CATCH_CONFIG_CPP17_STRING_VIEW +std::string StringMaker::convert(std::wstring_view str) { + return StringMaker::convert(std::wstring(str)); +} +# endif + +std::string StringMaker::convert(wchar_t const * str) { + if (str) { + return ::Catch::Detail::stringify(std::wstring{ str }); + } else { + return{ "{null string}" }; + } +} +std::string StringMaker::convert(wchar_t * str) { + if (str) { + return ::Catch::Detail::stringify(std::wstring{ str }); + } else { + return{ "{null string}" }; + } +} +#endif + +#if defined(CATCH_CONFIG_CPP17_BYTE) +#include +std::string StringMaker::convert(std::byte value) { + return ::Catch::Detail::stringify(std::to_integer(value)); +} +#endif // defined(CATCH_CONFIG_CPP17_BYTE) + +std::string StringMaker::convert(int value) { + return ::Catch::Detail::stringify(static_cast(value)); +} +std::string StringMaker::convert(long value) { + return ::Catch::Detail::stringify(static_cast(value)); +} +std::string StringMaker::convert(long long value) { + ReusableStringStream rss; + rss << value; + if (value > Detail::hexThreshold) { + rss << " (0x" << std::hex << value << ')'; + } + return rss.str(); +} + +std::string StringMaker::convert(unsigned int value) { + return ::Catch::Detail::stringify(static_cast(value)); +} +std::string StringMaker::convert(unsigned long value) { + return ::Catch::Detail::stringify(static_cast(value)); +} +std::string StringMaker::convert(unsigned long long value) { + ReusableStringStream rss; + rss << value; + if (value > Detail::hexThreshold) { + rss << " (0x" << std::hex << value << ')'; + } + return rss.str(); +} + +std::string StringMaker::convert(signed char value) { + if (value == '\r') { + return "'\\r'"; + } else if (value == '\f') { + return "'\\f'"; + } else if (value == '\n') { + return "'\\n'"; + } else if (value == '\t') { + return "'\\t'"; + } else if ('\0' <= value && value < ' ') { + return ::Catch::Detail::stringify(static_cast(value)); + } else { + char chstr[] = "' '"; + chstr[1] = value; + return chstr; + } +} +std::string StringMaker::convert(char c) { + return ::Catch::Detail::stringify(static_cast(c)); +} +std::string StringMaker::convert(unsigned char c) { + return ::Catch::Detail::stringify(static_cast(c)); +} + +int StringMaker::precision = 5; + +std::string StringMaker::convert(float value) { + return Detail::fpToString(value, precision) + 'f'; +} + +int StringMaker::precision = 10; + +std::string StringMaker::convert(double value) { + return Detail::fpToString(value, precision); +} + +} // end namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + + + +namespace Catch { + + Counts Counts::operator - ( Counts const& other ) const { + Counts diff; + diff.passed = passed - other.passed; + diff.failed = failed - other.failed; + diff.failedButOk = failedButOk - other.failedButOk; + return diff; + } + + Counts& Counts::operator += ( Counts const& other ) { + passed += other.passed; + failed += other.failed; + failedButOk += other.failedButOk; + return *this; + } + + std::size_t Counts::total() const { + return passed + failed + failedButOk; + } + bool Counts::allPassed() const { + return failed == 0 && failedButOk == 0; + } + bool Counts::allOk() const { + return failed == 0; + } + + Totals Totals::operator - ( Totals const& other ) const { + Totals diff; + diff.assertions = assertions - other.assertions; + diff.testCases = testCases - other.testCases; + return diff; + } + + Totals& Totals::operator += ( Totals const& other ) { + assertions += other.assertions; + testCases += other.testCases; + return *this; + } + + Totals Totals::delta( Totals const& prevTotals ) const { + Totals diff = *this - prevTotals; + if( diff.assertions.failed > 0 ) + ++diff.testCases.failed; + else if( diff.assertions.failedButOk > 0 ) + ++diff.testCases.failedButOk; + else + ++diff.testCases.passed; + return diff; + } + +} + + +#include + +namespace Catch { + + Version::Version + ( unsigned int _majorVersion, + unsigned int _minorVersion, + unsigned int _patchNumber, + char const * const _branchName, + unsigned int _buildNumber ) + : majorVersion( _majorVersion ), + minorVersion( _minorVersion ), + patchNumber( _patchNumber ), + branchName( _branchName ), + buildNumber( _buildNumber ) + {} + + std::ostream& operator << ( std::ostream& os, Version const& version ) { + os << version.majorVersion << '.' + << version.minorVersion << '.' + << version.patchNumber; + // branchName is never null -> 0th char is \0 if it is empty + if (version.branchName[0]) { + os << '-' << version.branchName + << '.' << version.buildNumber; + } + return os; + } + + Version const& libraryVersion() { + static Version version( 3, 0, 0, "preview", 3 ); + return version; + } + +} + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small generator-related TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + +//////////////////////////////////////////////////// +// vvv formerly catch_generator_exception.cpp vvv // +//////////////////////////////////////////////////// + + +namespace Catch { + + const char* GeneratorException::what() const noexcept { + return m_msg; + } + +} // end namespace Catch + + +/////////////////////////////////////////// +// vvv formerly catch_generators.cpp vvv // +/////////////////////////////////////////// + + +namespace Catch { + + IGeneratorTracker::~IGeneratorTracker() = default; + +namespace Generators { + +namespace Detail { + + [[noreturn]] + void throw_generator_exception(char const* msg) { + Catch::throw_exception(GeneratorException{ msg }); + } +} // end namespace Detail + + GeneratorUntypedBase::~GeneratorUntypedBase() = default; + + auto acquireGeneratorTracker(StringRef generatorName, SourceLineInfo const& lineInfo ) -> IGeneratorTracker& { + return getResultCapture().acquireGeneratorTracker( generatorName, lineInfo ); + } + +} // namespace Generators +} // namespace Catch + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small interfaces-related TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + +/////////////////////////////////////////////////// +// vvv formerly catch_interfaces_capture.cpp vvv // +/////////////////////////////////////////////////// + + +namespace Catch { + IResultCapture::~IResultCapture() = default; +} + + +////////////////////////////////////////////////// +// vvv formerly catch_interfaces_config.cpp vvv // +////////////////////////////////////////////////// + + +namespace Catch { + IConfig::~IConfig() = default; +} + + +///////////////////////////////////////////////////// +// vvv formerly catch_interfaces_exception.cpp vvv // +///////////////////////////////////////////////////// + + +namespace Catch { + IExceptionTranslator::~IExceptionTranslator() = default; + IExceptionTranslatorRegistry::~IExceptionTranslatorRegistry() = default; +} + + +//////////////////////////////////////////////////////// +// vvv formerly catch_interfaces_registry_hub.cpp vvv // +//////////////////////////////////////////////////////// + + +namespace Catch { + IRegistryHub::~IRegistryHub() = default; + IMutableRegistryHub::~IMutableRegistryHub() = default; +} + + +////////////////////////////////////////////////// +// vvv formerly catch_interfaces_runner.cpp vvv // +////////////////////////////////////////////////// + + +namespace Catch { + IRunner::~IRunner() = default; +} + + +//////////////////////////////////////////////////// +// vvv formerly catch_interfaces_testcase.cpp vvv // +//////////////////////////////////////////////////// + + +namespace Catch { + ITestInvoker::~ITestInvoker() = default; + ITestCaseRegistry::~ITestCaseRegistry() = default; +} + + +namespace Catch { + IReporterRegistry::~IReporterRegistry() = default; +} + + + +namespace Catch { + IReporterFactory::~IReporterFactory() = default; +} + + + +#include +#include + +namespace Catch { + + ReporterConfig::ReporterConfig( IConfig const* _fullConfig ) + : m_stream( &_fullConfig->stream() ), m_fullConfig( _fullConfig ) {} + + ReporterConfig::ReporterConfig( IConfig const* _fullConfig, std::ostream& _stream ) + : m_stream( &_stream ), m_fullConfig( _fullConfig ) {} + + std::ostream& ReporterConfig::stream() const { return *m_stream; } + IConfig const * ReporterConfig::fullConfig() const { return m_fullConfig; } + + + TestRunInfo::TestRunInfo( std::string const& _name ) : name( _name ) {} + + GroupInfo::GroupInfo( std::string const& _name, + std::size_t _groupIndex, + std::size_t _groupsCount ) + : name( _name ), + groupIndex( _groupIndex ), + groupsCounts( _groupsCount ) + {} + + AssertionStats::AssertionStats( AssertionResult const& _assertionResult, + std::vector const& _infoMessages, + Totals const& _totals ) + : assertionResult( _assertionResult ), + infoMessages( _infoMessages ), + totals( _totals ) + { + assertionResult.m_resultData.lazyExpression.m_transientExpression = _assertionResult.m_resultData.lazyExpression.m_transientExpression; + + if( assertionResult.hasMessage() ) { + // Copy message into messages list. + // !TBD This should have been done earlier, somewhere + MessageBuilder builder( assertionResult.getTestMacroName(), assertionResult.getSourceInfo(), assertionResult.getResultType() ); + builder << assertionResult.getMessage(); + builder.m_info.message = builder.m_stream.str(); + + infoMessages.push_back( builder.m_info ); + } + } + + SectionStats::SectionStats( SectionInfo const& _sectionInfo, + Counts const& _assertions, + double _durationInSeconds, + bool _missingAssertions ) + : sectionInfo( _sectionInfo ), + assertions( _assertions ), + durationInSeconds( _durationInSeconds ), + missingAssertions( _missingAssertions ) + {} + + + TestCaseStats::TestCaseStats( TestCaseInfo const& _testInfo, + Totals const& _totals, + std::string const& _stdOut, + std::string const& _stdErr, + bool _aborting ) + : testInfo( &_testInfo ), + totals( _totals ), + stdOut( _stdOut ), + stdErr( _stdErr ), + aborting( _aborting ) + {} + + + TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo, + Totals const& _totals, + bool _aborting ) + : groupInfo( _groupInfo ), + totals( _totals ), + aborting( _aborting ) + {} + + TestGroupStats::TestGroupStats( GroupInfo const& _groupInfo ) + : groupInfo( _groupInfo ), + aborting( false ) + {} + + + TestRunStats::TestRunStats( TestRunInfo const& _runInfo, + Totals const& _totals, + bool _aborting ) + : runInfo( _runInfo ), + totals( _totals ), + aborting( _aborting ) + {} + + void IStreamingReporter::fatalErrorEncountered( StringRef ) {} + + void IStreamingReporter::listReporters(std::vector const& descriptions, IConfig const& config) { + Catch::cout() << "Available reporters:\n"; + const auto maxNameLen = std::max_element(descriptions.begin(), descriptions.end(), + [](ReporterDescription const& lhs, ReporterDescription const& rhs) { return lhs.name.size() < rhs.name.size(); }) + ->name.size(); + + for (auto const& desc : descriptions) { + if (config.verbosity() == Verbosity::Quiet) { + Catch::cout() + << TextFlow::Column(desc.name) + .indent(2) + .width(5 + maxNameLen) << '\n'; + } else { + Catch::cout() + << TextFlow::Column(desc.name + ":") + .indent(2) + .width(5 + maxNameLen) + + TextFlow::Column(desc.description) + .initialIndent(0) + .indent(2) + .width(CATCH_CONFIG_CONSOLE_WIDTH - maxNameLen - 8) + << '\n'; + } + } + Catch::cout() << std::endl; + } + + void IStreamingReporter::listTests(std::vector const& tests, IConfig const& config) { + if (config.hasTestFilters()) { + Catch::cout() << "Matching test cases:\n"; + } else { + Catch::cout() << "All available test cases:\n"; + } + + for (auto const& test : tests) { + auto const& testCaseInfo = test.getTestCaseInfo(); + Colour::Code colour = testCaseInfo.isHidden() + ? Colour::SecondaryText + : Colour::None; + Colour colourGuard(colour); + + Catch::cout() << TextFlow::Column(testCaseInfo.name).initialIndent(2).indent(4) << '\n'; + if (config.verbosity() >= Verbosity::High) { + Catch::cout() << TextFlow::Column(Catch::Detail::stringify(testCaseInfo.lineInfo)).indent(4) << std::endl; + } + if (!testCaseInfo.tags.empty() && config.verbosity() > Verbosity::Quiet) { + Catch::cout() << TextFlow::Column(testCaseInfo.tagsAsString()).indent(6) << '\n'; + } + } + + if (!config.hasTestFilters()) { + Catch::cout() << pluralise(tests.size(), "test case") << '\n' << std::endl; + } else { + Catch::cout() << pluralise(tests.size(), "matching test case") << '\n' << std::endl; + } + } + + void IStreamingReporter::listTags(std::vector const& tags, IConfig const& config) { + if (config.hasTestFilters()) { + Catch::cout() << "Tags for matching test cases:\n"; + } else { + Catch::cout() << "All available tags:\n"; + } + + for (auto const& tagCount : tags) { + ReusableStringStream rss; + rss << " " << std::setw(2) << tagCount.count << " "; + auto str = rss.str(); + auto wrapper = TextFlow::Column(tagCount.all()) + .initialIndent(0) + .indent(str.size()) + .width(CATCH_CONFIG_CONSOLE_WIDTH - 10); + Catch::cout() << str << wrapper << '\n'; + } + Catch::cout() << pluralise(tags.size(), "tag") << '\n' << std::endl; + } + +} // end namespace Catch + + + +namespace Catch { + + AssertionHandler::AssertionHandler + ( StringRef const& macroName, + SourceLineInfo const& lineInfo, + StringRef capturedExpression, + ResultDisposition::Flags resultDisposition ) + : m_assertionInfo{ macroName, lineInfo, capturedExpression, resultDisposition }, + m_resultCapture( getResultCapture() ) + {} + + void AssertionHandler::handleExpr( ITransientExpression const& expr ) { + m_resultCapture.handleExpr( m_assertionInfo, expr, m_reaction ); + } + void AssertionHandler::handleMessage(ResultWas::OfType resultType, StringRef const& message) { + m_resultCapture.handleMessage( m_assertionInfo, resultType, message, m_reaction ); + } + + auto AssertionHandler::allowThrows() const -> bool { + return getCurrentContext().getConfig()->allowThrows(); + } + + void AssertionHandler::complete() { + setCompleted(); + if( m_reaction.shouldDebugBreak ) { + + // If you find your debugger stopping you here then go one level up on the + // call-stack for the code that caused it (typically a failed assertion) + + // (To go back to the test and change execution, jump over the throw, next) + CATCH_BREAK_INTO_DEBUGGER(); + } + if (m_reaction.shouldThrow) { +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + throw Catch::TestFailureException(); +#else + CATCH_ERROR( "Test failure requires aborting test!" ); +#endif + } + } + void AssertionHandler::setCompleted() { + m_completed = true; + } + + void AssertionHandler::handleUnexpectedInflightException() { + m_resultCapture.handleUnexpectedInflightException( m_assertionInfo, Catch::translateActiveException(), m_reaction ); + } + + void AssertionHandler::handleExceptionThrownAsExpected() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + void AssertionHandler::handleExceptionNotThrownAsExpected() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + + void AssertionHandler::handleUnexpectedExceptionNotThrown() { + m_resultCapture.handleUnexpectedExceptionNotThrown( m_assertionInfo, m_reaction ); + } + + void AssertionHandler::handleThrowingCallSkipped() { + m_resultCapture.handleNonExpr(m_assertionInfo, ResultWas::Ok, m_reaction); + } + + // This is the overload that takes a string and infers the Equals matcher from it + // The more general overload, that takes any string matcher, is in catch_capture_matchers.cpp + void handleExceptionMatchExpr( AssertionHandler& handler, std::string const& str, StringRef const& matcherString ) { + handleExceptionMatchExpr( handler, Matchers::Equals( str ), matcherString ); + } + +} // namespace Catch + + +#include + +namespace { + bool isOptPrefix( char c ) { + return c == '-' +#ifdef CATCH_PLATFORM_WINDOWS + || c == '/' +#endif + ; + } + + std::string normaliseOpt( std::string const& optName ) { +#ifdef CATCH_PLATFORM_WINDOWS + if ( optName[0] == '/' ) + return "-" + optName.substr( 1 ); + else +#endif + return optName; + } + +} // namespace + +namespace Catch { + namespace Clara { + namespace Detail { + + void TokenStream::loadBuffer() { + m_tokenBuffer.clear(); + + // Skip any empty strings + while ( it != itEnd && it->empty() ) { + ++it; + } + + if ( it != itEnd ) { + auto const& next = *it; + if ( isOptPrefix( next[0] ) ) { + auto delimiterPos = next.find_first_of( " :=" ); + if ( delimiterPos != std::string::npos ) { + m_tokenBuffer.push_back( + { TokenType::Option, + next.substr( 0, delimiterPos ) } ); + m_tokenBuffer.push_back( + { TokenType::Argument, + next.substr( delimiterPos + 1 ) } ); + } else { + if ( next[1] != '-' && next.size() > 2 ) { + std::string opt = "- "; + for ( size_t i = 1; i < next.size(); ++i ) { + opt[1] = next[i]; + m_tokenBuffer.push_back( + { TokenType::Option, opt } ); + } + } else { + m_tokenBuffer.push_back( + { TokenType::Option, next } ); + } + } + } else { + m_tokenBuffer.push_back( + { TokenType::Argument, next } ); + } + } + } + + TokenStream::TokenStream( Args const& args ): + TokenStream( args.m_args.begin(), args.m_args.end() ) {} + + TokenStream::TokenStream( Iterator it_, Iterator itEnd_ ): + it( it_ ), itEnd( itEnd_ ) { + loadBuffer(); + } + + TokenStream& TokenStream::operator++() { + if ( m_tokenBuffer.size() >= 2 ) { + m_tokenBuffer.erase( m_tokenBuffer.begin() ); + } else { + if ( it != itEnd ) + ++it; + loadBuffer(); + } + return *this; + } + + ParserResult convertInto( std::string const& source, + std::string& target ) { + target = source; + return ParserResult::ok( ParseResultType::Matched ); + } + + ParserResult convertInto( std::string const& source, + bool& target ) { + std::string srcLC = toLower( source ); + + if ( srcLC == "y" || srcLC == "1" || srcLC == "true" || + srcLC == "yes" || srcLC == "on" ) { + target = true; + } else if ( srcLC == "n" || srcLC == "0" || srcLC == "false" || + srcLC == "no" || srcLC == "off" ) { + target = false; + } else { + return ParserResult::runtimeError( + "Expected a boolean value but did not recognise: '" + + source + "'" ); + } + return ParserResult::ok( ParseResultType::Matched ); + } + + size_t ParserBase::cardinality() const { return 1; } + + InternalParseResult ParserBase::parse( Args const& args ) const { + return parse( args.exeName(), TokenStream( args ) ); + } + + ParseState::ParseState( ParseResultType type, + TokenStream const& remainingTokens ): + m_type( type ), m_remainingTokens( remainingTokens ) {} + + ParserResult BoundFlagRef::setFlag( bool flag ) { + m_ref = flag; + return ParserResult::ok( ParseResultType::Matched ); + } + + ResultBase::~ResultBase() = default; + + bool BoundRef::isContainer() const { return false; } + + bool BoundRef::isFlag() const { return false; } + + bool BoundFlagRefBase::isFlag() const { return true; } + +} // namespace Detail + + Detail::InternalParseResult Arg::parse(std::string const&, + Detail::TokenStream const& tokens) const { + auto validationResult = validate(); + if (!validationResult) + return Detail::InternalParseResult(validationResult); + + auto remainingTokens = tokens; + auto const& token = *remainingTokens; + if (token.type != Detail::TokenType::Argument) + return Detail::InternalParseResult::ok(Detail::ParseState( + ParseResultType::NoMatch, remainingTokens)); + + assert(!m_ref->isFlag()); + auto valueRef = + static_cast(m_ref.get()); + + auto result = valueRef->setValue(remainingTokens->token); + if (!result) + return Detail::InternalParseResult(result); + else + return Detail::InternalParseResult::ok(Detail::ParseState( + ParseResultType::Matched, ++remainingTokens)); + } + + Opt::Opt(bool& ref) : + ParserRefImpl(std::make_shared(ref)) {} + + std::vector Opt::getHelpColumns() const { + std::ostringstream oss; + bool first = true; + for (auto const& opt : m_optNames) { + if (first) + first = false; + else + oss << ", "; + oss << opt; + } + if (!m_hint.empty()) + oss << " <" << m_hint << '>'; + return { { oss.str(), m_description } }; + } + + bool Opt::isMatch(std::string const& optToken) const { + auto normalisedToken = normaliseOpt(optToken); + for (auto const& name : m_optNames) { + if (normaliseOpt(name) == normalisedToken) + return true; + } + return false; + } + + Detail::InternalParseResult Opt::parse(std::string const&, + Detail::TokenStream const& tokens) const { + auto validationResult = validate(); + if (!validationResult) + return Detail::InternalParseResult(validationResult); + + auto remainingTokens = tokens; + if (remainingTokens && + remainingTokens->type == Detail::TokenType::Option) { + auto const& token = *remainingTokens; + if (isMatch(token.token)) { + if (m_ref->isFlag()) { + auto flagRef = + static_cast( + m_ref.get()); + auto result = flagRef->setFlag(true); + if (!result) + return Detail::InternalParseResult(result); + if (result.value() == + ParseResultType::ShortCircuitAll) + return Detail::InternalParseResult::ok(Detail::ParseState( + result.value(), remainingTokens)); + } else { + auto valueRef = + static_cast( + m_ref.get()); + ++remainingTokens; + if (!remainingTokens) + return Detail::InternalParseResult::runtimeError( + "Expected argument following " + + token.token); + auto const& argToken = *remainingTokens; + if (argToken.type != Detail::TokenType::Argument) + return Detail::InternalParseResult::runtimeError( + "Expected argument following " + + token.token); + auto result = valueRef->setValue(argToken.token); + if (!result) + return Detail::InternalParseResult(result); + if (result.value() == + ParseResultType::ShortCircuitAll) + return Detail::InternalParseResult::ok(Detail::ParseState( + result.value(), remainingTokens)); + } + return Detail::InternalParseResult::ok(Detail::ParseState( + ParseResultType::Matched, ++remainingTokens)); + } + } + return Detail::InternalParseResult::ok( + Detail::ParseState(ParseResultType::NoMatch, remainingTokens)); + } + + Detail::Result Opt::validate() const { + if (m_optNames.empty()) + return Detail::Result::logicError("No options supplied to Opt"); + for (auto const& name : m_optNames) { + if (name.empty()) + return Detail::Result::logicError( + "Option name cannot be empty"); +#ifdef CATCH_PLATFORM_WINDOWS + if (name[0] != '-' && name[0] != '/') + return Detail::Result::logicError( + "Option name must begin with '-' or '/'"); +#else + if (name[0] != '-') + return Detail::Result::logicError( + "Option name must begin with '-'"); +#endif + } + return ParserRefImpl::validate(); + } + + ExeName::ExeName() : + m_name(std::make_shared("")) {} + + ExeName::ExeName(std::string& ref) : ExeName() { + m_ref = std::make_shared>(ref); + } + + Detail::InternalParseResult + ExeName::parse(std::string const&, + Detail::TokenStream const& tokens) const { + return Detail::InternalParseResult::ok( + Detail::ParseState(ParseResultType::NoMatch, tokens)); + } + + ParserResult ExeName::set(std::string const& newName) { + auto lastSlash = newName.find_last_of("\\/"); + auto filename = (lastSlash == std::string::npos) + ? newName + : newName.substr(lastSlash + 1); + + *m_name = filename; + if (m_ref) + return m_ref->setValue(filename); + else + return ParserResult::ok(ParseResultType::Matched); + } + + + + + Parser& Parser::operator|=( Parser const& other ) { + m_options.insert( m_options.end(), + other.m_options.begin(), + other.m_options.end() ); + m_args.insert( + m_args.end(), other.m_args.begin(), other.m_args.end() ); + return *this; + } + + std::vector Parser::getHelpColumns() const { + std::vector cols; + for ( auto const& o : m_options ) { + auto childCols = o.getHelpColumns(); + cols.insert( cols.end(), childCols.begin(), childCols.end() ); + } + return cols; + } + + void Parser::writeToStream( std::ostream& os ) const { + if ( !m_exeName.name().empty() ) { + os << "usage:\n" + << " " << m_exeName.name() << ' '; + bool required = true, first = true; + for ( auto const& arg : m_args ) { + if ( first ) + first = false; + else + os << ' '; + if ( arg.isOptional() && required ) { + os << '['; + required = false; + } + os << '<' << arg.hint() << '>'; + if ( arg.cardinality() == 0 ) + os << " ... "; + } + if ( !required ) + os << ']'; + if ( !m_options.empty() ) + os << " options"; + os << "\n\nwhere options are:\n"; + } + + auto rows = getHelpColumns(); + size_t consoleWidth = CATCH_CONFIG_CONSOLE_WIDTH; + size_t optWidth = 0; + for ( auto const& cols : rows ) + optWidth = ( std::max )( optWidth, cols.left.size() + 2 ); + + optWidth = ( std::min )( optWidth, consoleWidth / 2 ); + + for ( auto const& cols : rows ) { + auto row = TextFlow::Column( cols.left ) + .width( optWidth ) + .indent( 2 ) + + TextFlow::Spacer( 4 ) + + TextFlow::Column( cols.right ) + .width( consoleWidth - 7 - optWidth ); + os << row << '\n'; + } + } + + Detail::Result Parser::validate() const { + for ( auto const& opt : m_options ) { + auto result = opt.validate(); + if ( !result ) + return result; + } + for ( auto const& arg : m_args ) { + auto result = arg.validate(); + if ( !result ) + return result; + } + return Detail::Result::ok(); + } + + Detail::InternalParseResult + Parser::parse( std::string const& exeName, + Detail::TokenStream const& tokens ) const { + + struct ParserInfo { + ParserBase const* parser = nullptr; + size_t count = 0; + }; + std::vector parseInfos; + parseInfos.reserve( m_options.size() + m_args.size() ); + for ( auto const& opt : m_options ) { + parseInfos.push_back( { &opt, 0 } ); + } + for ( auto const& arg : m_args ) { + parseInfos.push_back( { &arg, 0 } ); + } + + m_exeName.set( exeName ); + + auto result = Detail::InternalParseResult::ok( + Detail::ParseState( ParseResultType::NoMatch, tokens ) ); + while ( result.value().remainingTokens() ) { + bool tokenParsed = false; + + for ( auto& parseInfo : parseInfos ) { + if ( parseInfo.parser->cardinality() == 0 || + parseInfo.count < parseInfo.parser->cardinality() ) { + result = parseInfo.parser->parse( + exeName, result.value().remainingTokens() ); + if ( !result ) + return result; + if ( result.value().type() != + ParseResultType::NoMatch ) { + tokenParsed = true; + ++parseInfo.count; + break; + } + } + } + + if ( result.value().type() == ParseResultType::ShortCircuitAll ) + return result; + if ( !tokenParsed ) + return Detail::InternalParseResult::runtimeError( + "Unrecognised token: " + + result.value().remainingTokens()->token ); + } + // !TBD Check missing required options + return result; + } + + Args::Args(int argc, char const* const* argv) : + m_exeName(argv[0]), m_args(argv + 1, argv + argc) {} + + Args::Args(std::initializer_list args) : + m_exeName(*args.begin()), + m_args(args.begin() + 1, args.end()) {} + + + Help::Help( bool& showHelpFlag ): + Opt( [&]( bool flag ) { + showHelpFlag = flag; + return ParserResult::ok( ParseResultType::ShortCircuitAll ); + } ) { + static_cast ( *this )( + "display usage information" )["-?"]["-h"]["--help"] + .optional(); + } + + } // namespace Clara +} // namespace Catch + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small top-level TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + + +//////////////////////////////////////////////////////// +// vvv formerly catch_tag_alias_autoregistrar.cpp vvv // +//////////////////////////////////////////////////////// + + +namespace Catch { + + RegistrarForTagAliases::RegistrarForTagAliases(char const* alias, char const* tag, SourceLineInfo const& lineInfo) { + CATCH_TRY { + getMutableRegistryHub().registerTagAlias(alias, tag, lineInfo); + } CATCH_CATCH_ALL { + // Do not throw when constructing global objects, instead register the exception to be processed later + getMutableRegistryHub().registerStartupException(); + } + } + +} + + +////////////////////////////////////////// +// vvv formerly catch_polyfills.cpp vvv // +////////////////////////////////////////// + +#include + +namespace Catch { + +#if !defined(CATCH_CONFIG_POLYFILL_ISNAN) + bool isnan(float f) { + return std::isnan(f); + } + bool isnan(double d) { + return std::isnan(d); + } +#else + // For now we only use this for embarcadero + bool isnan(float f) { + return std::_isnan(f); + } + bool isnan(double d) { + return std::_isnan(d); + } +#endif + +} // end namespace Catch + + +//////////////////////////////////////////////////// +// vvv formerly catch_uncaught_exceptions.cpp vvv // +//////////////////////////////////////////////////// + + +#include + +namespace Catch { + bool uncaught_exceptions() { +#if defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + return false; +#elif defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) + return std::uncaught_exceptions() > 0; +#else + return std::uncaught_exception(); +#endif + } +} // end namespace Catch + + +//////////////////////////////////////////// +// vvv formerly catch_errno_guard.cpp vvv // +//////////////////////////////////////////// + +#include + +namespace Catch { + ErrnoGuard::ErrnoGuard():m_oldErrno(errno){} + ErrnoGuard::~ErrnoGuard() { errno = m_oldErrno; } +} + + +/////////////////////////////////////////// +// vvv formerly catch_decomposer.cpp vvv // +/////////////////////////////////////////// + +namespace Catch { + + ITransientExpression::~ITransientExpression() = default; + + void formatReconstructedExpression( std::ostream &os, std::string const& lhs, StringRef op, std::string const& rhs ) { + if( lhs.size() + rhs.size() < 40 && + lhs.find('\n') == std::string::npos && + rhs.find('\n') == std::string::npos ) + os << lhs << ' ' << op << ' ' << rhs; + else + os << lhs << '\n' << op << '\n' << rhs; + } +} + + +/////////////////////////////////////////////////////////// +// vvv formerly catch_startup_exception_registry.cpp vvv // +/////////////////////////////////////////////////////////// + +namespace Catch { +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + void StartupExceptionRegistry::add( std::exception_ptr const& exception ) noexcept { + CATCH_TRY { + m_exceptions.push_back(exception); + } CATCH_CATCH_ALL { + // If we run out of memory during start-up there's really not a lot more we can do about it + std::terminate(); + } + } + + std::vector const& StartupExceptionRegistry::getExceptions() const noexcept { + return m_exceptions; + } +#endif + +} // end namespace Catch + + +////////////////////////////////////////////// +// vvv formerly catch_leak_detector.cpp vvv // +////////////////////////////////////////////// + + +#ifdef CATCH_CONFIG_WINDOWS_CRTDBG +#include + +namespace Catch { + + LeakDetector::LeakDetector() { + int flag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG); + flag |= _CRTDBG_LEAK_CHECK_DF; + flag |= _CRTDBG_ALLOC_MEM_DF; + _CrtSetDbgFlag(flag); + _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG); + _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR); + // Change this to leaking allocation's number to break there + _CrtSetBreakAlloc(-1); + } +} + +#else // ^^ Windows crt debug heap enabled // Windows crt debug heap disabled vv + + Catch::LeakDetector::LeakDetector() {} + +#endif // CATCH_CONFIG_WINDOWS_CRTDBG + +Catch::LeakDetector::~LeakDetector() { + Catch::cleanUp(); +} + + +///////////////////////////////////////////// +// vvv formerly catch_message_info.cpp vvv // +///////////////////////////////////////////// + + +namespace Catch { + + MessageInfo::MessageInfo( StringRef const& _macroName, + SourceLineInfo const& _lineInfo, + ResultWas::OfType _type ) + : macroName( _macroName ), + lineInfo( _lineInfo ), + type( _type ), + sequence( ++globalCount ) + {} + + // This may need protecting if threading support is added + unsigned int MessageInfo::globalCount = 0; + +} // end namespace Catch + + + + +////////////////////////////////////////// +// vvv formerly catch_lazy_expr.cpp vvv // +////////////////////////////////////////// + +namespace Catch { + + auto operator << (std::ostream& os, LazyExpression const& lazyExpr) -> std::ostream& { + if (lazyExpr.m_isNegated) + os << "!"; + + if (lazyExpr) { + if (lazyExpr.m_isNegated && lazyExpr.m_transientExpression->isBinaryExpression()) + os << "(" << *lazyExpr.m_transientExpression << ")"; + else + os << *lazyExpr.m_transientExpression; + } else { + os << "{** error - unchecked empty expression requested **}"; + } + return os; + } + +} // namespace Catch + + + + +#include +#include + +namespace Catch { + + Clara::Parser makeCommandLineParser( ConfigData& config ) { + + using namespace Clara; + + auto const setWarning = [&]( std::string const& warning ) { + auto warningSet = [&]() { + if( warning == "NoAssertions" ) + return WarnAbout::NoAssertions; + + if ( warning == "NoTests" ) + return WarnAbout::NoTests; + + return WarnAbout::Nothing; + }(); + + if (warningSet == WarnAbout::Nothing) + return ParserResult::runtimeError( "Unrecognised warning: '" + warning + "'" ); + config.warnings = static_cast( config.warnings | warningSet ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const loadTestNamesFromFile = [&]( std::string const& filename ) { + std::ifstream f( filename.c_str() ); + if( !f.is_open() ) + return ParserResult::runtimeError( "Unable to load input file: '" + filename + "'" ); + + std::string line; + while( std::getline( f, line ) ) { + line = trim(line); + if( !line.empty() && !startsWith( line, '#' ) ) { + if( !startsWith( line, '"' ) ) + line = '"' + line + '"'; + config.testsOrTags.push_back( line ); + config.testsOrTags.emplace_back( "," ); + } + } + //Remove comma in the end + if(!config.testsOrTags.empty()) + config.testsOrTags.erase( config.testsOrTags.end()-1 ); + + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setTestOrder = [&]( std::string const& order ) { + if( startsWith( "declared", order ) ) + config.runOrder = TestRunOrder::Declared; + else if( startsWith( "lexical", order ) ) + config.runOrder = TestRunOrder::LexicographicallySorted; + else if( startsWith( "random", order ) ) + config.runOrder = TestRunOrder::Randomized; + else + return ParserResult::runtimeError( "Unrecognised ordering: '" + order + "'" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setRngSeed = [&]( std::string const& seed ) { + if( seed != "time" ) + return Clara::Detail::convertInto( seed, config.rngSeed ); + config.rngSeed = static_cast( std::time(nullptr) ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setColourUsage = [&]( std::string const& useColour ) { + auto mode = toLower( useColour ); + + if( mode == "yes" ) + config.useColour = UseColour::Yes; + else if( mode == "no" ) + config.useColour = UseColour::No; + else if( mode == "auto" ) + config.useColour = UseColour::Auto; + else + return ParserResult::runtimeError( "colour mode must be one of: auto, yes or no. '" + useColour + "' not recognised" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setWaitForKeypress = [&]( std::string const& keypress ) { + auto keypressLc = toLower( keypress ); + if (keypressLc == "never") + config.waitForKeypress = WaitForKeypress::Never; + else if( keypressLc == "start" ) + config.waitForKeypress = WaitForKeypress::BeforeStart; + else if( keypressLc == "exit" ) + config.waitForKeypress = WaitForKeypress::BeforeExit; + else if( keypressLc == "both" ) + config.waitForKeypress = WaitForKeypress::BeforeStartAndExit; + else + return ParserResult::runtimeError( "keypress argument must be one of: never, start, exit or both. '" + keypress + "' not recognised" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setVerbosity = [&]( std::string const& verbosity ) { + auto lcVerbosity = toLower( verbosity ); + if( lcVerbosity == "quiet" ) + config.verbosity = Verbosity::Quiet; + else if( lcVerbosity == "normal" ) + config.verbosity = Verbosity::Normal; + else if( lcVerbosity == "high" ) + config.verbosity = Verbosity::High; + else + return ParserResult::runtimeError( "Unrecognised verbosity, '" + verbosity + "'" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + auto const setReporter = [&]( std::string const& reporter ) { + IReporterRegistry::FactoryMap const& factories = getRegistryHub().getReporterRegistry().getFactories(); + + auto lcReporter = toLower( reporter ); + auto result = factories.find( lcReporter ); + + if( factories.end() != result ) + config.reporterName = lcReporter; + else + return ParserResult::runtimeError( "Unrecognized reporter, '" + reporter + "'. Check available with --list-reporters" ); + return ParserResult::ok( ParseResultType::Matched ); + }; + + auto cli + = ExeName( config.processName ) + | Help( config.showHelp ) + | Opt( config.listTests ) + ["-l"]["--list-tests"] + ( "list all/matching test cases" ) + | Opt( config.listTags ) + ["-t"]["--list-tags"] + ( "list all/matching tags" ) + | Opt( config.showSuccessfulTests ) + ["-s"]["--success"] + ( "include successful tests in output" ) + | Opt( config.shouldDebugBreak ) + ["-b"]["--break"] + ( "break into debugger on failure" ) + | Opt( config.noThrow ) + ["-e"]["--nothrow"] + ( "skip exception tests" ) + | Opt( config.showInvisibles ) + ["-i"]["--invisibles"] + ( "show invisibles (tabs, newlines)" ) + | Opt( config.outputFilename, "filename" ) + ["-o"]["--out"] + ( "output filename" ) + | Opt( setReporter, "name" ) + ["-r"]["--reporter"] + ( "reporter to use (defaults to console)" ) + | Opt( config.name, "name" ) + ["-n"]["--name"] + ( "suite name" ) + | Opt( [&]( bool ){ config.abortAfter = 1; } ) + ["-a"]["--abort"] + ( "abort at first failure" ) + | Opt( [&]( int x ){ config.abortAfter = x; }, "no. failures" ) + ["-x"]["--abortx"] + ( "abort after x failures" ) + | Opt( setWarning, "warning name" ) + ["-w"]["--warn"] + ( "enable warnings" ) + | Opt( [&]( bool flag ) { config.showDurations = flag ? ShowDurations::Always : ShowDurations::Never; }, "yes|no" ) + ["-d"]["--durations"] + ( "show test durations" ) + | Opt( config.minDuration, "seconds" ) + ["-D"]["--min-duration"] + ( "show test durations for tests taking at least the given number of seconds" ) + | Opt( loadTestNamesFromFile, "filename" ) + ["-f"]["--input-file"] + ( "load test names to run from a file" ) + | Opt( config.filenamesAsTags ) + ["-#"]["--filenames-as-tags"] + ( "adds a tag for the filename" ) + | Opt( config.sectionsToRun, "section name" ) + ["-c"]["--section"] + ( "specify section to run" ) + | Opt( setVerbosity, "quiet|normal|high" ) + ["-v"]["--verbosity"] + ( "set output verbosity" ) + | Opt( config.listReporters ) + ["--list-reporters"] + ( "list all reporters" ) + | Opt( setTestOrder, "decl|lex|rand" ) + ["--order"] + ( "test case order (defaults to decl)" ) + | Opt( setRngSeed, "'time'|number" ) + ["--rng-seed"] + ( "set a specific seed for random numbers" ) + | Opt( setColourUsage, "yes|no" ) + ["--use-colour"] + ( "should output be colourised" ) + | Opt( config.libIdentify ) + ["--libidentify"] + ( "report name and version according to libidentify standard" ) + | Opt( setWaitForKeypress, "never|start|exit|both" ) + ["--wait-for-keypress"] + ( "waits for a keypress before exiting" ) + | Opt( config.benchmarkSamples, "samples" ) + ["--benchmark-samples"] + ( "number of samples to collect (default: 100)" ) + | Opt( config.benchmarkResamples, "resamples" ) + ["--benchmark-resamples"] + ( "number of resamples for the bootstrap (default: 100000)" ) + | Opt( config.benchmarkConfidenceInterval, "confidence interval" ) + ["--benchmark-confidence-interval"] + ( "confidence interval for the bootstrap (between 0 and 1, default: 0.95)" ) + | Opt( config.benchmarkNoAnalysis ) + ["--benchmark-no-analysis"] + ( "perform only measurements; do not perform any analysis" ) + | Opt( config.benchmarkWarmupTime, "benchmarkWarmupTime" ) + ["--benchmark-warmup-time"] + ( "amount of time in milliseconds spent on warming up each test (default: 100)" ) + | Arg( config.testsOrTags, "test name|pattern|tags" ) + ( "which test or tests to use" ); + + return cli; + } + +} // end namespace Catch + + + +#include +#include + +namespace Catch { + + bool SourceLineInfo::operator == ( SourceLineInfo const& other ) const noexcept { + return line == other.line && (file == other.file || std::strcmp(file, other.file) == 0); + } + bool SourceLineInfo::operator < ( SourceLineInfo const& other ) const noexcept { + // We can assume that the same file will usually have the same pointer. + // Thus, if the pointers are the same, there is no point in calling the strcmp + return line < other.line || ( line == other.line && file != other.file && (std::strcmp(file, other.file) < 0)); + } + + std::ostream& operator << ( std::ostream& os, SourceLineInfo const& info ) { +#ifndef __GNUG__ + os << info.file << '(' << info.line << ')'; +#else + os << info.file << ':' << info.line; +#endif + return os; + } + +} // end namespace Catch + + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + + + +#include + +namespace Catch { + namespace { + + struct IColourImpl { + virtual ~IColourImpl() = default; + virtual void use( Colour::Code _colourCode ) = 0; + }; + + struct NoColourImpl : IColourImpl { + void use( Colour::Code ) override {} + + static IColourImpl* instance() { + static NoColourImpl s_instance; + return &s_instance; + } + }; + + } // anon namespace +} // namespace Catch + +#if !defined( CATCH_CONFIG_COLOUR_NONE ) && !defined( CATCH_CONFIG_COLOUR_WINDOWS ) && !defined( CATCH_CONFIG_COLOUR_ANSI ) +# ifdef CATCH_PLATFORM_WINDOWS +# define CATCH_CONFIG_COLOUR_WINDOWS +# else +# define CATCH_CONFIG_COLOUR_ANSI +# endif +#endif + + +#if defined ( CATCH_CONFIG_COLOUR_WINDOWS ) ///////////////////////////////////////// + +namespace Catch { +namespace { + + class Win32ColourImpl : public IColourImpl { + public: + Win32ColourImpl() : stdoutHandle( GetStdHandle(STD_OUTPUT_HANDLE) ) + { + CONSOLE_SCREEN_BUFFER_INFO csbiInfo; + GetConsoleScreenBufferInfo( stdoutHandle, &csbiInfo ); + originalForegroundAttributes = csbiInfo.wAttributes & ~( BACKGROUND_GREEN | BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_INTENSITY ); + originalBackgroundAttributes = csbiInfo.wAttributes & ~( FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY ); + } + + void use( Colour::Code _colourCode ) override { + switch( _colourCode ) { + case Colour::None: return setTextAttribute( originalForegroundAttributes ); + case Colour::White: return setTextAttribute( FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); + case Colour::Red: return setTextAttribute( FOREGROUND_RED ); + case Colour::Green: return setTextAttribute( FOREGROUND_GREEN ); + case Colour::Blue: return setTextAttribute( FOREGROUND_BLUE ); + case Colour::Cyan: return setTextAttribute( FOREGROUND_BLUE | FOREGROUND_GREEN ); + case Colour::Yellow: return setTextAttribute( FOREGROUND_RED | FOREGROUND_GREEN ); + case Colour::Grey: return setTextAttribute( 0 ); + + case Colour::LightGrey: return setTextAttribute( FOREGROUND_INTENSITY ); + case Colour::BrightRed: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED ); + case Colour::BrightGreen: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN ); + case Colour::BrightWhite: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_GREEN | FOREGROUND_RED | FOREGROUND_BLUE ); + case Colour::BrightYellow: return setTextAttribute( FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN ); + + case Colour::Bright: CATCH_INTERNAL_ERROR( "not a colour" ); + + default: + CATCH_ERROR( "Unknown colour requested" ); + } + } + + private: + void setTextAttribute( WORD _textAttribute ) { + SetConsoleTextAttribute( stdoutHandle, _textAttribute | originalBackgroundAttributes ); + } + HANDLE stdoutHandle; + WORD originalForegroundAttributes; + WORD originalBackgroundAttributes; + }; + + IColourImpl* platformColourInstance() { + static Win32ColourImpl s_instance; + + auto const* config = getCurrentContext().getConfig(); + UseColour colourMode = config? + config->useColour() : UseColour::Auto; + if( colourMode == UseColour::Auto ) + colourMode = UseColour::Yes; + return colourMode == UseColour::Yes + ? &s_instance + : NoColourImpl::instance(); + } + +} // end anon namespace +} // end namespace Catch + +#elif defined( CATCH_CONFIG_COLOUR_ANSI ) ////////////////////////////////////// + +#include + +namespace Catch { +namespace { + + // use POSIX/ ANSI console terminal codes + // Thanks to Adam Strzelecki for original contribution + // (http://github.com/nanoant) + // https://github.com/philsquared/Catch/pull/131 + class PosixColourImpl : public IColourImpl { + public: + void use( Colour::Code _colourCode ) override { + switch( _colourCode ) { + case Colour::None: + case Colour::White: return setColour( "[0m" ); + case Colour::Red: return setColour( "[0;31m" ); + case Colour::Green: return setColour( "[0;32m" ); + case Colour::Blue: return setColour( "[0;34m" ); + case Colour::Cyan: return setColour( "[0;36m" ); + case Colour::Yellow: return setColour( "[0;33m" ); + case Colour::Grey: return setColour( "[1;30m" ); + + case Colour::LightGrey: return setColour( "[0;37m" ); + case Colour::BrightRed: return setColour( "[1;31m" ); + case Colour::BrightGreen: return setColour( "[1;32m" ); + case Colour::BrightWhite: return setColour( "[1;37m" ); + case Colour::BrightYellow: return setColour( "[1;33m" ); + + case Colour::Bright: CATCH_INTERNAL_ERROR( "not a colour" ); + default: CATCH_INTERNAL_ERROR( "Unknown colour requested" ); + } + } + static IColourImpl* instance() { + static PosixColourImpl s_instance; + return &s_instance; + } + + private: + void setColour( const char* _escapeCode ) { + // The escape sequence must be flushed to console, otherwise if + // stdin and stderr are intermixed, we'd get accidentally coloured output. + getCurrentContext().getConfig()->stream() + << '\033' << _escapeCode << std::flush; + } + }; + + bool useColourOnPlatform() { + return +#if defined(CATCH_PLATFORM_MAC) || defined(CATCH_PLATFORM_IPHONE) + !isDebuggerActive() && +#endif +#if !(defined(__DJGPP__) && defined(__STRICT_ANSI__)) + isatty(STDOUT_FILENO) +#else + false +#endif + ; + } + IColourImpl* platformColourInstance() { + ErrnoGuard guard; + auto const* config = getCurrentContext().getConfig(); + UseColour colourMode = config + ? config->useColour() + : UseColour::Auto; + if( colourMode == UseColour::Auto ) + colourMode = useColourOnPlatform() + ? UseColour::Yes + : UseColour::No; + return colourMode == UseColour::Yes + ? PosixColourImpl::instance() + : NoColourImpl::instance(); + } + +} // end anon namespace +} // end namespace Catch + +#else // not Windows or ANSI /////////////////////////////////////////////// + +namespace Catch { + + static IColourImpl* platformColourInstance() { return NoColourImpl::instance(); } + +} // end namespace Catch + +#endif // Windows/ ANSI/ None + +namespace Catch { + + Colour::Colour( Code _colourCode ) { use( _colourCode ); } + Colour::Colour( Colour&& other ) noexcept { + m_moved = other.m_moved; + other.m_moved = true; + } + Colour& Colour::operator=( Colour&& other ) noexcept { + m_moved = other.m_moved; + other.m_moved = true; + return *this; + } + + Colour::~Colour(){ if( !m_moved ) use( None ); } + + void Colour::use( Code _colourCode ) { + static IColourImpl* impl = platformColourInstance(); + // Strictly speaking, this cannot possibly happen. + // However, under some conditions it does happen (see #1626), + // and this change is small enough that we can let practicality + // triumph over purity in this case. + if (impl != nullptr) { + impl->use( _colourCode ); + } + } + + std::ostream& operator << ( std::ostream& os, Colour const& ) { + return os; + } + +} // end namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + + + +namespace Catch { + + class Context : public IMutableContext, private Detail::NonCopyable { + + public: // IContext + IResultCapture* getResultCapture() override { + return m_resultCapture; + } + IRunner* getRunner() override { + return m_runner; + } + + IConfig const* getConfig() const override { + return m_config; + } + + ~Context() override; + + public: // IMutableContext + void setResultCapture( IResultCapture* resultCapture ) override { + m_resultCapture = resultCapture; + } + void setRunner( IRunner* runner ) override { + m_runner = runner; + } + void setConfig( IConfig const* config ) override { + m_config = config; + } + + friend IMutableContext& getCurrentMutableContext(); + + private: + IConfig const* m_config = nullptr; + IRunner* m_runner = nullptr; + IResultCapture* m_resultCapture = nullptr; + }; + + IMutableContext *IMutableContext::currentContext = nullptr; + + void IMutableContext::createContext() + { + currentContext = new Context(); + } + + void cleanUpContext() { + delete IMutableContext::currentContext; + IMutableContext::currentContext = nullptr; + } + IContext::~IContext() = default; + IMutableContext::~IMutableContext() = default; + Context::~Context() = default; + + + SimplePcg32& rng() { + static SimplePcg32 s_rng; + return s_rng; + } + +} + + + +#if defined(CATCH_CONFIG_ANDROID_LOGWRITE) +#include + + namespace Catch { + void writeToDebugConsole( std::string const& text ) { + __android_log_write( ANDROID_LOG_DEBUG, "Catch", text.c_str() ); + } + } + +#elif defined(CATCH_PLATFORM_WINDOWS) + + namespace Catch { + void writeToDebugConsole( std::string const& text ) { + ::OutputDebugStringA( text.c_str() ); + } + } + +#else + + namespace Catch { + void writeToDebugConsole( std::string const& text ) { + // !TBD: Need a version for Mac/ XCode and other IDEs + Catch::cout() << text; + } + } + +#endif // Platform + + + +#if defined(CATCH_PLATFORM_MAC) || defined(CATCH_PLATFORM_IPHONE) + +# include +# include +# include +# include +# include + +#ifdef __apple_build_version__ + // These headers will only compile with AppleClang (XCode) + // For other compilers (Clang, GCC, ... ) we need to exclude them +# include +#endif + + namespace Catch { + #ifdef __apple_build_version__ + // The following function is taken directly from the following technical note: + // https://developer.apple.com/library/archive/qa/qa1361/_index.html + + // Returns true if the current process is being debugged (either + // running under the debugger or has a debugger attached post facto). + bool isDebuggerActive(){ + int mib[4]; + struct kinfo_proc info; + std::size_t size; + + // Initialize the flags so that, if sysctl fails for some bizarre + // reason, we get a predictable result. + + info.kp_proc.p_flag = 0; + + // Initialize mib, which tells sysctl the info we want, in this case + // we're looking for information about a specific process ID. + + mib[0] = CTL_KERN; + mib[1] = KERN_PROC; + mib[2] = KERN_PROC_PID; + mib[3] = getpid(); + + // Call sysctl. + + size = sizeof(info); + if( sysctl(mib, sizeof(mib) / sizeof(*mib), &info, &size, nullptr, 0) != 0 ) { + Catch::cerr() << "\n** Call to sysctl failed - unable to determine if debugger is active **\n" << std::endl; + return false; + } + + // We're being debugged if the P_TRACED flag is set. + + return ( (info.kp_proc.p_flag & P_TRACED) != 0 ); + } + #else + bool isDebuggerActive() { + // We need to find another way to determine this for non-appleclang compilers on macOS + return false; + } + #endif + } // namespace Catch + +#elif defined(CATCH_PLATFORM_LINUX) + #include + #include + + namespace Catch{ + // The standard POSIX way of detecting a debugger is to attempt to + // ptrace() the process, but this needs to be done from a child and not + // this process itself to still allow attaching to this process later + // if wanted, so is rather heavy. Under Linux we have the PID of the + // "debugger" (which doesn't need to be gdb, of course, it could also + // be strace, for example) in /proc/$PID/status, so just get it from + // there instead. + bool isDebuggerActive(){ + // Libstdc++ has a bug, where std::ifstream sets errno to 0 + // This way our users can properly assert over errno values + ErrnoGuard guard; + std::ifstream in("/proc/self/status"); + for( std::string line; std::getline(in, line); ) { + static const int PREFIX_LEN = 11; + if( line.compare(0, PREFIX_LEN, "TracerPid:\t") == 0 ) { + // We're traced if the PID is not 0 and no other PID starts + // with 0 digit, so it's enough to check for just a single + // character. + return line.length() > PREFIX_LEN && line[PREFIX_LEN] != '0'; + } + } + + return false; + } + } // namespace Catch +#elif defined(_MSC_VER) + extern "C" __declspec(dllimport) int __stdcall IsDebuggerPresent(); + namespace Catch { + bool isDebuggerActive() { + return IsDebuggerPresent() != 0; + } + } +#elif defined(__MINGW32__) + extern "C" __declspec(dllimport) int __stdcall IsDebuggerPresent(); + namespace Catch { + bool isDebuggerActive() { + return IsDebuggerPresent() != 0; + } + } +#else + namespace Catch { + bool isDebuggerActive() { return false; } + } +#endif // Platform + + + +#include + + +namespace Catch { +#if defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) && !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS_CUSTOM_HANDLER) + [[noreturn]] + void throw_exception(std::exception const& e) { + Catch::cerr() << "Catch will terminate because it needed to throw an exception.\n" + << "The message was: " << e.what() << '\n'; + std::terminate(); + } +#endif + + [[noreturn]] + void throw_logic_error(std::string const& msg) { + throw_exception(std::logic_error(msg)); + } + + [[noreturn]] + void throw_domain_error(std::string const& msg) { + throw_exception(std::domain_error(msg)); + } + + [[noreturn]] + void throw_runtime_error(std::string const& msg) { + throw_exception(std::runtime_error(msg)); + } + + + +} // namespace Catch; + + + +#include + +namespace Catch { + + IMutableEnumValuesRegistry::~IMutableEnumValuesRegistry() {} + + namespace Detail { + + namespace { + // Extracts the actual name part of an enum instance + // In other words, it returns the Blue part of Bikeshed::Colour::Blue + StringRef extractInstanceName(StringRef enumInstance) { + // Find last occurence of ":" + size_t name_start = enumInstance.size(); + while (name_start > 0 && enumInstance[name_start - 1] != ':') { + --name_start; + } + return enumInstance.substr(name_start, enumInstance.size() - name_start); + } + } + + std::vector parseEnums( StringRef enums ) { + auto enumValues = splitStringRef( enums, ',' ); + std::vector parsed; + parsed.reserve( enumValues.size() ); + for( auto const& enumValue : enumValues ) { + parsed.push_back(trim(extractInstanceName(enumValue))); + } + return parsed; + } + + EnumInfo::~EnumInfo() {} + + StringRef EnumInfo::lookup( int value ) const { + for( auto const& valueToName : m_values ) { + if( valueToName.first == value ) + return valueToName.second; + } + return "{** unexpected enum value **}"_sr; + } + + Catch::Detail::unique_ptr makeEnumInfo( StringRef enumName, StringRef allValueNames, std::vector const& values ) { + auto enumInfo = Catch::Detail::make_unique(); + enumInfo->m_name = enumName; + enumInfo->m_values.reserve( values.size() ); + + const auto valueNames = Catch::Detail::parseEnums( allValueNames ); + assert( valueNames.size() == values.size() ); + std::size_t i = 0; + for( auto value : values ) + enumInfo->m_values.emplace_back(value, valueNames[i++]); + + return enumInfo; + } + + EnumInfo const& EnumValuesRegistry::registerEnum( StringRef enumName, StringRef allValueNames, std::vector const& values ) { + m_enumInfos.push_back(makeEnumInfo(enumName, allValueNames, values)); + return *m_enumInfos.back(); + } + + } // Detail +} // Catch + + + + +namespace Catch { + + ExceptionTranslatorRegistry::~ExceptionTranslatorRegistry() { + } + + void ExceptionTranslatorRegistry::registerTranslator( const IExceptionTranslator* translator ) { + m_translators.push_back( Detail::unique_ptr( translator ) ); + } + +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + std::string ExceptionTranslatorRegistry::translateActiveException() const { + try { + // Compiling a mixed mode project with MSVC means that CLR + // exceptions will be caught in (...) as well. However, these + // do not fill-in std::current_exception and thus lead to crash + // when attempting rethrow. + // /EHa switch also causes structured exceptions to be caught + // here, but they fill-in current_exception properly, so + // at worst the output should be a little weird, instead of + // causing a crash. + if (std::current_exception() == nullptr) { + return "Non C++ exception. Possibly a CLR exception."; + } + return tryTranslators(); + } + catch( TestFailureException& ) { + std::rethrow_exception(std::current_exception()); + } + catch( std::exception& ex ) { + return ex.what(); + } + catch( std::string& msg ) { + return msg; + } + catch( const char* msg ) { + return msg; + } + catch(...) { + return "Unknown exception"; + } + } + + std::string ExceptionTranslatorRegistry::tryTranslators() const { + if (m_translators.empty()) { + std::rethrow_exception(std::current_exception()); + } else { + return m_translators[0]->translate(m_translators.begin() + 1, m_translators.end()); + } + } + +#else // ^^ Exceptions are enabled // Exceptions are disabled vv + std::string ExceptionTranslatorRegistry::translateActiveException() const { + CATCH_INTERNAL_ERROR("Attempted to translate active exception under CATCH_CONFIG_DISABLE_EXCEPTIONS!"); + } + + std::string ExceptionTranslatorRegistry::tryTranslators() const { + CATCH_INTERNAL_ERROR("Attempted to use exception translators under CATCH_CONFIG_DISABLE_EXCEPTIONS!"); + } +#endif + + +} + + + + +#if defined(__GNUC__) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wmissing-field-initializers" +#endif + +#if defined( CATCH_CONFIG_WINDOWS_SEH ) || defined( CATCH_CONFIG_POSIX_SIGNALS ) + +namespace { + // Report the error condition + void reportFatal( char const * const message ) { + Catch::getCurrentContext().getResultCapture()->handleFatalErrorCondition( message ); + } +} + +#endif // signals/SEH handling + +#if defined( CATCH_CONFIG_WINDOWS_SEH ) + +namespace Catch { + struct SignalDefs { DWORD id; const char* name; }; + + // There is no 1-1 mapping between signals and windows exceptions. + // Windows can easily distinguish between SO and SigSegV, + // but SigInt, SigTerm, etc are handled differently. + static SignalDefs signalDefs[] = { + { static_cast(EXCEPTION_ILLEGAL_INSTRUCTION), "SIGILL - Illegal instruction signal" }, + { static_cast(EXCEPTION_STACK_OVERFLOW), "SIGSEGV - Stack overflow" }, + { static_cast(EXCEPTION_ACCESS_VIOLATION), "SIGSEGV - Segmentation violation signal" }, + { static_cast(EXCEPTION_INT_DIVIDE_BY_ZERO), "Divide by zero error" }, + }; + + LONG CALLBACK FatalConditionHandler::handleVectoredException(PEXCEPTION_POINTERS ExceptionInfo) { + for (auto const& def : signalDefs) { + if (ExceptionInfo->ExceptionRecord->ExceptionCode == def.id) { + reportFatal(def.name); + } + } + // If its not an exception we care about, pass it along. + // This stops us from eating debugger breaks etc. + return EXCEPTION_CONTINUE_SEARCH; + } + + FatalConditionHandler::FatalConditionHandler() { + isSet = true; + // 32k seems enough for Catch to handle stack overflow, + // but the value was found experimentally, so there is no strong guarantee + guaranteeSize = 32 * 1024; + exceptionHandlerHandle = nullptr; + // Register as first handler in current chain + exceptionHandlerHandle = AddVectoredExceptionHandler(1, handleVectoredException); + // Pass in guarantee size to be filled + SetThreadStackGuarantee(&guaranteeSize); + } + + void FatalConditionHandler::reset() { + if (isSet) { + RemoveVectoredExceptionHandler(exceptionHandlerHandle); + SetThreadStackGuarantee(&guaranteeSize); + exceptionHandlerHandle = nullptr; + isSet = false; + } + } + +bool FatalConditionHandler::isSet = false; +ULONG FatalConditionHandler::guaranteeSize = 0; +PVOID FatalConditionHandler::exceptionHandlerHandle = nullptr; + + +} // namespace Catch + +#elif defined( CATCH_CONFIG_POSIX_SIGNALS ) + +namespace Catch { + + struct SignalDefs { + int id; + const char* name; + }; + + // 32kb for the alternate stack seems to be sufficient. However, this value + // is experimentally determined, so that's not guaranteed. + static constexpr std::size_t sigStackSize = 32768 >= MINSIGSTKSZ ? 32768 : MINSIGSTKSZ; + + static SignalDefs signalDefs[] = { + { SIGINT, "SIGINT - Terminal interrupt signal" }, + { SIGILL, "SIGILL - Illegal instruction signal" }, + { SIGFPE, "SIGFPE - Floating point error signal" }, + { SIGSEGV, "SIGSEGV - Segmentation violation signal" }, + { SIGTERM, "SIGTERM - Termination request signal" }, + { SIGABRT, "SIGABRT - Abort (abnormal termination) signal" } + }; + + + void FatalConditionHandler::handleSignal( int sig ) { + char const * name = ""; + for (auto const& def : signalDefs) { + if (sig == def.id) { + name = def.name; + break; + } + } + reset(); + reportFatal(name); + raise( sig ); + } + + FatalConditionHandler::FatalConditionHandler() { + isSet = true; + stack_t sigStack; + sigStack.ss_sp = altStackMem; + sigStack.ss_size = sigStackSize; + sigStack.ss_flags = 0; + sigaltstack(&sigStack, &oldSigStack); + struct sigaction sa = { }; + + sa.sa_handler = handleSignal; + sa.sa_flags = SA_ONSTACK; + for (std::size_t i = 0; i < sizeof(signalDefs)/sizeof(SignalDefs); ++i) { + sigaction(signalDefs[i].id, &sa, &oldSigActions[i]); + } + } + + void FatalConditionHandler::reset() { + if( isSet ) { + // Set signals back to previous values -- hopefully nobody overwrote them in the meantime + for( std::size_t i = 0; i < sizeof(signalDefs)/sizeof(SignalDefs); ++i ) { + sigaction(signalDefs[i].id, &oldSigActions[i], nullptr); + } + // Return the old stack + sigaltstack(&oldSigStack, nullptr); + isSet = false; + } + } + + bool FatalConditionHandler::isSet = false; + struct sigaction FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = {}; + stack_t FatalConditionHandler::oldSigStack = {}; + char FatalConditionHandler::altStackMem[sigStackSize] = {}; + + +} // namespace Catch + +#endif // signals/SEH handling + +#if defined(__GNUC__) +# pragma GCC diagnostic pop +#endif + + + + + +namespace Catch { + namespace { + + void listTests(IStreamingReporter& reporter, IConfig const& config) { + auto const& testSpec = config.testSpec(); + auto matchedTestCases = filterTests(getAllTestCasesSorted(config), testSpec, config); + reporter.listTests(matchedTestCases, config); + } + + void listTags(IStreamingReporter& reporter, IConfig const& config) { + auto const& testSpec = config.testSpec(); + std::vector matchedTestCases = filterTests(getAllTestCasesSorted(config), testSpec, config); + + std::map tagCounts; + for (auto const& testCase : matchedTestCases) { + for (auto const& tagName : testCase.getTestCaseInfo().tags) { + auto it = tagCounts.find(tagName.lowerCased); + if (it == tagCounts.end()) + it = tagCounts.insert(std::make_pair(tagName.lowerCased, TagInfo())).first; + it->second.add(tagName.original); + } + } + + std::vector infos; infos.reserve(tagCounts.size()); + for (auto& tagc : tagCounts) { + infos.push_back(std::move(tagc.second)); + } + + reporter.listTags(infos, config); + } + + void listReporters(IStreamingReporter& reporter, IConfig const& config) { + std::vector descriptions; + + IReporterRegistry::FactoryMap const& factories = getRegistryHub().getReporterRegistry().getFactories(); + descriptions.reserve(factories.size()); + for (auto const& fac : factories) { + descriptions.push_back({ fac.first, fac.second->getDescription() }); + } + + reporter.listReporters(descriptions, config); + } + + } // end anonymous namespace + + void TagInfo::add( StringRef spelling ) { + ++count; + spellings.insert( spelling ); + } + + std::string TagInfo::all() const { + // 2 per tag for brackets '[' and ']' + size_t size = spellings.size() * 2; + for (auto const& spelling : spellings) { + size += spelling.size(); + } + + std::string out; out.reserve(size); + for (auto const& spelling : spellings) { + out += '['; + out += spelling; + out += ']'; + } + return out; + } + + bool list( IStreamingReporter& reporter, Config const& config ) { + bool listed = false; + if (config.listTests()) { + listed = true; + listTests(reporter, config); + } + if (config.listTags()) { + listed = true; + listTags(reporter, config); + } + if (config.listReporters()) { + listed = true; + listReporters(reporter, config); + } + return listed; + } + +} // end namespace Catch + + + +namespace Catch { + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS + LeakDetector leakDetector; + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION +} + +#if defined(CATCH_CONFIG_WCHAR) && defined(CATCH_PLATFORM_WINDOWS) && defined(_UNICODE) && !defined(DO_NOT_USE_WMAIN) +// Standard C/C++ Win32 Unicode wmain entry point +extern "C" int wmain (int argc, wchar_t * argv[], wchar_t * []) { +#else +// Standard C/C++ main entry point +int main (int argc, char * argv[]) { +#endif + + // We want to force the linker not to discard the global variable + // and its constructor, as it (optionally) registers leak detector + (void)&Catch::leakDetector; + + return Catch::Session().run( argc, argv ); +} + + + +#include +#include +#include + +#if defined(CATCH_CONFIG_NEW_CAPTURE) + #if defined(_MSC_VER) + #include //_dup and _dup2 + #define dup _dup + #define dup2 _dup2 + #define fileno _fileno + #else + #include // dup and dup2 + #endif +#endif + + +namespace Catch { + + RedirectedStream::RedirectedStream( std::ostream& originalStream, std::ostream& redirectionStream ) + : m_originalStream( originalStream ), + m_redirectionStream( redirectionStream ), + m_prevBuf( m_originalStream.rdbuf() ) + { + m_originalStream.rdbuf( m_redirectionStream.rdbuf() ); + } + + RedirectedStream::~RedirectedStream() { + m_originalStream.rdbuf( m_prevBuf ); + } + + RedirectedStdOut::RedirectedStdOut() : m_cout( Catch::cout(), m_rss.get() ) {} + auto RedirectedStdOut::str() const -> std::string { return m_rss.str(); } + + RedirectedStdErr::RedirectedStdErr() + : m_cerr( Catch::cerr(), m_rss.get() ), + m_clog( Catch::clog(), m_rss.get() ) + {} + auto RedirectedStdErr::str() const -> std::string { return m_rss.str(); } + + RedirectedStreams::RedirectedStreams(std::string& redirectedCout, std::string& redirectedCerr) + : m_redirectedCout(redirectedCout), + m_redirectedCerr(redirectedCerr) + {} + + RedirectedStreams::~RedirectedStreams() { + m_redirectedCout += m_redirectedStdOut.str(); + m_redirectedCerr += m_redirectedStdErr.str(); + } + +#if defined(CATCH_CONFIG_NEW_CAPTURE) + +#if defined(_MSC_VER) + TempFile::TempFile() { + if (tmpnam_s(m_buffer)) { + CATCH_RUNTIME_ERROR("Could not get a temp filename"); + } + if (fopen_s(&m_file, m_buffer, "w+")) { + char buffer[100]; + if (strerror_s(buffer, errno)) { + CATCH_RUNTIME_ERROR("Could not translate errno to a string"); + } + CATCH_RUNTIME_ERROR("Could not open the temp file: '" << m_buffer << "' because: " << buffer); + } + } +#else + TempFile::TempFile() { + m_file = std::tmpfile(); + if (!m_file) { + CATCH_RUNTIME_ERROR("Could not create a temp file."); + } + } + +#endif + + TempFile::~TempFile() { + // TBD: What to do about errors here? + std::fclose(m_file); + // We manually create the file on Windows only, on Linux + // it will be autodeleted +#if defined(_MSC_VER) + std::remove(m_buffer); +#endif + } + + + FILE* TempFile::getFile() { + return m_file; + } + + std::string TempFile::getContents() { + std::stringstream sstr; + char buffer[100] = {}; + std::rewind(m_file); + while (std::fgets(buffer, sizeof(buffer), m_file)) { + sstr << buffer; + } + return sstr.str(); + } + + OutputRedirect::OutputRedirect(std::string& stdout_dest, std::string& stderr_dest) : + m_originalStdout(dup(1)), + m_originalStderr(dup(2)), + m_stdoutDest(stdout_dest), + m_stderrDest(stderr_dest) { + dup2(fileno(m_stdoutFile.getFile()), 1); + dup2(fileno(m_stderrFile.getFile()), 2); + } + + OutputRedirect::~OutputRedirect() { + Catch::cout() << std::flush; + fflush(stdout); + // Since we support overriding these streams, we flush cerr + // even though std::cerr is unbuffered + Catch::cerr() << std::flush; + Catch::clog() << std::flush; + fflush(stderr); + + dup2(m_originalStdout, 1); + dup2(m_originalStderr, 2); + + m_stdoutDest += m_stdoutFile.getContents(); + m_stderrDest += m_stderrFile.getContents(); + } + +#endif // CATCH_CONFIG_NEW_CAPTURE + +} // namespace Catch + +#if defined(CATCH_CONFIG_NEW_CAPTURE) + #if defined(_MSC_VER) + #undef dup + #undef dup2 + #undef fileno + #endif +#endif + + + +namespace Catch { + +namespace { + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4146) // we negate uint32 during the rotate +#endif + // Safe rotr implementation thanks to John Regehr + uint32_t rotate_right(uint32_t val, uint32_t count) { + const uint32_t mask = 31; + count &= mask; + return (val >> count) | (val << (-count & mask)); + } + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif + +} + + + SimplePcg32::SimplePcg32(result_type seed_) { + seed(seed_); + } + + + void SimplePcg32::seed(result_type seed_) { + m_state = 0; + (*this)(); + m_state += seed_; + (*this)(); + } + + void SimplePcg32::discard(uint64_t skip) { + // We could implement this to run in O(log n) steps, but this + // should suffice for our use case. + for (uint64_t s = 0; s < skip; ++s) { + static_cast((*this)()); + } + } + + SimplePcg32::result_type SimplePcg32::operator()() { + // prepare the output value + const uint32_t xorshifted = static_cast(((m_state >> 18u) ^ m_state) >> 27u); + const auto output = rotate_right(xorshifted, m_state >> 59u); + + // advance state + m_state = m_state * 6364136223846793005ULL + s_inc; + + return output; + } + + bool operator==(SimplePcg32 const& lhs, SimplePcg32 const& rhs) { + return lhs.m_state == rhs.m_state; + } + + bool operator!=(SimplePcg32 const& lhs, SimplePcg32 const& rhs) { + return lhs.m_state != rhs.m_state; + } +} + + + + +namespace Catch { + + ReporterRegistry::ReporterRegistry() { + // Because it is impossible to move out of initializer list, + // we have to add the elements manually + m_factories["automake"] = Detail::make_unique>(); + m_factories["compact"] = Detail::make_unique>(); + m_factories["console"] = Detail::make_unique>(); + m_factories["junit"] = Detail::make_unique>(); + m_factories["sonarqube"] = Detail::make_unique>(); + m_factories["tap"] = Detail::make_unique>(); + m_factories["teamcity"] = Detail::make_unique>(); + m_factories["xml"] = Detail::make_unique>(); + } + + ReporterRegistry::~ReporterRegistry() = default; + + + IStreamingReporterPtr ReporterRegistry::create( std::string const& name, IConfig const* config ) const { + auto it = m_factories.find( name ); + if( it == m_factories.end() ) + return nullptr; + return it->second->create( ReporterConfig( config ) ); + } + + void ReporterRegistry::registerReporter( std::string const& name, IReporterFactoryPtr factory ) { + m_factories.emplace(name, std::move(factory)); + } + void ReporterRegistry::registerListener( IReporterFactoryPtr factory ) { + m_listeners.push_back( std::move(factory) ); + } + + IReporterRegistry::FactoryMap const& ReporterRegistry::getFactories() const { + return m_factories; + } + IReporterRegistry::Listeners const& ReporterRegistry::getListeners() const { + return m_listeners; + } + +} + + + +namespace Catch { + + bool isOk( ResultWas::OfType resultType ) { + return ( resultType & ResultWas::FailureBit ) == 0; + } + bool isJustInfo( int flags ) { + return flags == ResultWas::Info; + } + + ResultDisposition::Flags operator | ( ResultDisposition::Flags lhs, ResultDisposition::Flags rhs ) { + return static_cast( static_cast( lhs ) | static_cast( rhs ) ); + } + + bool shouldContinueOnFailure( int flags ) { return ( flags & ResultDisposition::ContinueOnFailure ) != 0; } + bool shouldSuppressFailure( int flags ) { return ( flags & ResultDisposition::SuppressFail ) != 0; } + +} // end namespace Catch + + + + +#include +#include + +namespace Catch { + + namespace Generators { + struct GeneratorTracker : TestCaseTracking::TrackerBase, IGeneratorTracker { + GeneratorBasePtr m_generator; + + GeneratorTracker( TestCaseTracking::NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ) + : TrackerBase( nameAndLocation, ctx, parent ) + {} + ~GeneratorTracker(); + + static GeneratorTracker& acquire( TrackerContext& ctx, TestCaseTracking::NameAndLocation const& nameAndLocation ) { + std::shared_ptr tracker; + + ITracker& currentTracker = ctx.currentTracker(); + // Under specific circumstances, the generator we want + // to acquire is also the current tracker. If this is + // the case, we have to avoid looking through current + // tracker's children, and instead return the current + // tracker. + // A case where this check is important is e.g. + // for (int i = 0; i < 5; ++i) { + // int n = GENERATE(1, 2); + // } + // + // without it, the code above creates 5 nested generators. + if (currentTracker.nameAndLocation() == nameAndLocation) { + auto thisTracker = currentTracker.parent().findChild(nameAndLocation); + assert(thisTracker); + assert(thisTracker->isGeneratorTracker()); + tracker = std::static_pointer_cast(thisTracker); + } else if ( TestCaseTracking::ITrackerPtr childTracker = currentTracker.findChild( nameAndLocation ) ) { + assert( childTracker ); + assert( childTracker->isGeneratorTracker() ); + tracker = std::static_pointer_cast( childTracker ); + } else { + tracker = std::make_shared( nameAndLocation, ctx, ¤tTracker ); + currentTracker.addChild( tracker ); + } + + if( !tracker->isComplete() ) { + tracker->open(); + } + + return *tracker; + } + + // TrackerBase interface + bool isGeneratorTracker() const override { return true; } + auto hasGenerator() const -> bool override { + return !!m_generator; + } + void close() override { + TrackerBase::close(); + // If a generator has a child (it is followed by a section) + // and none of its children have started, then we must wait + // until later to start consuming its values. + // This catches cases where `GENERATE` is placed between two + // `SECTION`s. + // **The check for m_children.empty cannot be removed**. + // doing so would break `GENERATE` _not_ followed by `SECTION`s. + const bool should_wait_for_child = + !m_children.empty() && + std::find_if( m_children.begin(), + m_children.end(), + []( TestCaseTracking::ITrackerPtr tracker ) { + return tracker->hasStarted(); + } ) == m_children.end(); + + // This check is a bit tricky, because m_generator->next() + // has a side-effect, where it consumes generator's current + // value, but we do not want to invoke the side-effect if + // this generator is still waiting for any child to start. + if ( should_wait_for_child || + ( m_runState == CompletedSuccessfully && + m_generator->next() ) ) { + m_children.clear(); + m_runState = Executing; + } + } + + // IGeneratorTracker interface + auto getGenerator() const -> GeneratorBasePtr const& override { + return m_generator; + } + void setGenerator( GeneratorBasePtr&& generator ) override { + m_generator = std::move( generator ); + } + }; + GeneratorTracker::~GeneratorTracker() {} + } + + RunContext::RunContext(IConfig const* _config, IStreamingReporterPtr&& reporter) + : m_runInfo(_config->name()), + m_context(getCurrentMutableContext()), + m_config(_config), + m_reporter(std::move(reporter)), + m_lastAssertionInfo{ StringRef(), SourceLineInfo("",0), StringRef(), ResultDisposition::Normal }, + m_includeSuccessfulResults( m_config->includeSuccessfulResults() || m_reporter->getPreferences().shouldReportAllAssertions ) + { + m_context.setRunner(this); + m_context.setResultCapture(this); + m_reporter->testRunStarting(m_runInfo); + } + + RunContext::~RunContext() { + m_reporter->testRunEnded(TestRunStats(m_runInfo, m_totals, aborting())); + } + + void RunContext::testGroupStarting(std::string const& testSpec, std::size_t groupIndex, std::size_t groupsCount) { + m_reporter->testGroupStarting(GroupInfo(testSpec, groupIndex, groupsCount)); + } + + void RunContext::testGroupEnded(std::string const& testSpec, Totals const& totals, std::size_t groupIndex, std::size_t groupsCount) { + m_reporter->testGroupEnded(TestGroupStats(GroupInfo(testSpec, groupIndex, groupsCount), totals, aborting())); + } + + Totals RunContext::runTest(TestCaseHandle const& testCase) { + Totals prevTotals = m_totals; + + std::string redirectedCout; + std::string redirectedCerr; + + auto const& testInfo = testCase.getTestCaseInfo(); + + m_reporter->testCaseStarting(testInfo); + + m_activeTestCase = &testCase; + + + ITracker& rootTracker = m_trackerContext.startRun(); + assert(rootTracker.isSectionTracker()); + static_cast(rootTracker).addInitialFilters(m_config->getSectionsToRun()); + do { + m_trackerContext.startCycle(); + m_testCaseTracker = &SectionTracker::acquire(m_trackerContext, TestCaseTracking::NameAndLocation(testInfo.name, testInfo.lineInfo)); + runCurrentTest(redirectedCout, redirectedCerr); + } while (!m_testCaseTracker->isSuccessfullyCompleted() && !aborting()); + + Totals deltaTotals = m_totals.delta(prevTotals); + if (testInfo.expectedToFail() && deltaTotals.testCases.passed > 0) { + deltaTotals.assertions.failed++; + deltaTotals.testCases.passed--; + deltaTotals.testCases.failed++; + } + m_totals.testCases += deltaTotals.testCases; + m_reporter->testCaseEnded(TestCaseStats(testInfo, + deltaTotals, + redirectedCout, + redirectedCerr, + aborting())); + + m_activeTestCase = nullptr; + m_testCaseTracker = nullptr; + + return deltaTotals; + } + + + void RunContext::assertionEnded(AssertionResult const & result) { + if (result.getResultType() == ResultWas::Ok) { + m_totals.assertions.passed++; + m_lastAssertionPassed = true; + } else if (!result.isOk()) { + m_lastAssertionPassed = false; + if( m_activeTestCase->getTestCaseInfo().okToFail() ) + m_totals.assertions.failedButOk++; + else + m_totals.assertions.failed++; + } + else { + m_lastAssertionPassed = true; + } + + // We have no use for the return value (whether messages should be cleared), because messages were made scoped + // and should be let to clear themselves out. + static_cast(m_reporter->assertionEnded(AssertionStats(result, m_messages, m_totals))); + + if (result.getResultType() != ResultWas::Warning) + m_messageScopes.clear(); + + // Reset working state + resetAssertionInfo(); + m_lastResult = result; + } + void RunContext::resetAssertionInfo() { + m_lastAssertionInfo.macroName = StringRef(); + m_lastAssertionInfo.capturedExpression = "{Unknown expression after the reported line}"_sr; + } + + bool RunContext::sectionStarted(SectionInfo const & sectionInfo, Counts & assertions) { + ITracker& sectionTracker = SectionTracker::acquire(m_trackerContext, TestCaseTracking::NameAndLocation(sectionInfo.name, sectionInfo.lineInfo)); + if (!sectionTracker.isOpen()) + return false; + m_activeSections.push_back(§ionTracker); + + m_lastAssertionInfo.lineInfo = sectionInfo.lineInfo; + + m_reporter->sectionStarting(sectionInfo); + + assertions = m_totals.assertions; + + return true; + } + auto RunContext::acquireGeneratorTracker( StringRef generatorName, SourceLineInfo const& lineInfo ) -> IGeneratorTracker& { + using namespace Generators; + GeneratorTracker& tracker = GeneratorTracker::acquire(m_trackerContext, + TestCaseTracking::NameAndLocation( static_cast(generatorName), lineInfo ) ); + m_lastAssertionInfo.lineInfo = lineInfo; + return tracker; + } + + bool RunContext::testForMissingAssertions(Counts& assertions) { + if (assertions.total() != 0) + return false; + if (!m_config->warnAboutMissingAssertions()) + return false; + if (m_trackerContext.currentTracker().hasChildren()) + return false; + m_totals.assertions.failed++; + assertions.failed++; + return true; + } + + void RunContext::sectionEnded(SectionEndInfo const & endInfo) { + Counts assertions = m_totals.assertions - endInfo.prevAssertions; + bool missingAssertions = testForMissingAssertions(assertions); + + if (!m_activeSections.empty()) { + m_activeSections.back()->close(); + m_activeSections.pop_back(); + } + + m_reporter->sectionEnded(SectionStats(endInfo.sectionInfo, assertions, endInfo.durationInSeconds, missingAssertions)); + m_messages.clear(); + m_messageScopes.clear(); + } + + void RunContext::sectionEndedEarly(SectionEndInfo const & endInfo) { + if (m_unfinishedSections.empty()) + m_activeSections.back()->fail(); + else + m_activeSections.back()->close(); + m_activeSections.pop_back(); + + m_unfinishedSections.push_back(endInfo); + } + + void RunContext::benchmarkPreparing(std::string const& name) { + m_reporter->benchmarkPreparing(name); + } + void RunContext::benchmarkStarting( BenchmarkInfo const& info ) { + m_reporter->benchmarkStarting( info ); + } + void RunContext::benchmarkEnded( BenchmarkStats<> const& stats ) { + m_reporter->benchmarkEnded( stats ); + } + void RunContext::benchmarkFailed(std::string const & error) { + m_reporter->benchmarkFailed(error); + } + + void RunContext::pushScopedMessage(MessageInfo const & message) { + m_messages.push_back(message); + } + + void RunContext::popScopedMessage(MessageInfo const & message) { + m_messages.erase(std::remove(m_messages.begin(), m_messages.end(), message), m_messages.end()); + } + + void RunContext::emplaceUnscopedMessage( MessageBuilder const& builder ) { + m_messageScopes.emplace_back( builder ); + } + + std::string RunContext::getCurrentTestName() const { + return m_activeTestCase + ? m_activeTestCase->getTestCaseInfo().name + : std::string(); + } + + const AssertionResult * RunContext::getLastResult() const { + return &(*m_lastResult); + } + + void RunContext::exceptionEarlyReported() { + m_shouldReportUnexpected = false; + } + + void RunContext::handleFatalErrorCondition( StringRef message ) { + // First notify reporter that bad things happened + m_reporter->fatalErrorEncountered(message); + + // Don't rebuild the result -- the stringification itself can cause more fatal errors + // Instead, fake a result data. + AssertionResultData tempResult( ResultWas::FatalErrorCondition, { false } ); + tempResult.message = static_cast(message); + AssertionResult result(m_lastAssertionInfo, tempResult); + + assertionEnded(result); + + handleUnfinishedSections(); + + // Recreate section for test case (as we will lose the one that was in scope) + auto const& testCaseInfo = m_activeTestCase->getTestCaseInfo(); + SectionInfo testCaseSection(testCaseInfo.lineInfo, testCaseInfo.name); + + Counts assertions; + assertions.failed = 1; + SectionStats testCaseSectionStats(testCaseSection, assertions, 0, false); + m_reporter->sectionEnded(testCaseSectionStats); + + auto const& testInfo = m_activeTestCase->getTestCaseInfo(); + + Totals deltaTotals; + deltaTotals.testCases.failed = 1; + deltaTotals.assertions.failed = 1; + m_reporter->testCaseEnded(TestCaseStats(testInfo, + deltaTotals, + std::string(), + std::string(), + false)); + m_totals.testCases.failed++; + testGroupEnded(std::string(), m_totals, 1, 1); + m_reporter->testRunEnded(TestRunStats(m_runInfo, m_totals, false)); + } + + bool RunContext::lastAssertionPassed() { + return m_lastAssertionPassed; + } + + void RunContext::assertionPassed() { + m_lastAssertionPassed = true; + ++m_totals.assertions.passed; + resetAssertionInfo(); + m_messageScopes.clear(); + } + + bool RunContext::aborting() const { + return m_totals.assertions.failed >= static_cast(m_config->abortAfter()); + } + + void RunContext::runCurrentTest(std::string & redirectedCout, std::string & redirectedCerr) { + auto const& testCaseInfo = m_activeTestCase->getTestCaseInfo(); + SectionInfo testCaseSection(testCaseInfo.lineInfo, testCaseInfo.name); + m_reporter->sectionStarting(testCaseSection); + Counts prevAssertions = m_totals.assertions; + double duration = 0; + m_shouldReportUnexpected = true; + m_lastAssertionInfo = { "TEST_CASE"_sr, testCaseInfo.lineInfo, StringRef(), ResultDisposition::Normal }; + + seedRng(*m_config); + + Timer timer; + CATCH_TRY { + if (m_reporter->getPreferences().shouldRedirectStdOut) { +#if !defined(CATCH_CONFIG_EXPERIMENTAL_REDIRECT) + RedirectedStreams redirectedStreams(redirectedCout, redirectedCerr); + + timer.start(); + invokeActiveTestCase(); +#else + OutputRedirect r(redirectedCout, redirectedCerr); + timer.start(); + invokeActiveTestCase(); +#endif + } else { + timer.start(); + invokeActiveTestCase(); + } + duration = timer.getElapsedSeconds(); + } CATCH_CATCH_ANON (TestFailureException&) { + // This just means the test was aborted due to failure + } CATCH_CATCH_ALL { + // Under CATCH_CONFIG_FAST_COMPILE, unexpected exceptions under REQUIRE assertions + // are reported without translation at the point of origin. + if( m_shouldReportUnexpected ) { + AssertionReaction dummyReaction; + handleUnexpectedInflightException( m_lastAssertionInfo, translateActiveException(), dummyReaction ); + } + } + Counts assertions = m_totals.assertions - prevAssertions; + bool missingAssertions = testForMissingAssertions(assertions); + + m_testCaseTracker->close(); + handleUnfinishedSections(); + m_messages.clear(); + m_messageScopes.clear(); + + SectionStats testCaseSectionStats(testCaseSection, assertions, duration, missingAssertions); + m_reporter->sectionEnded(testCaseSectionStats); + } + + void RunContext::invokeActiveTestCase() { + // We need to register a handler for signals/structured exceptions + // before running the tests themselves, or the binary can crash + // without failed test being reported. + FatalConditionHandler _; + m_activeTestCase->invoke(); + } + + void RunContext::handleUnfinishedSections() { + // If sections ended prematurely due to an exception we stored their + // infos here so we can tear them down outside the unwind process. + for (auto it = m_unfinishedSections.rbegin(), + itEnd = m_unfinishedSections.rend(); + it != itEnd; + ++it) + sectionEnded(*it); + m_unfinishedSections.clear(); + } + + void RunContext::handleExpr( + AssertionInfo const& info, + ITransientExpression const& expr, + AssertionReaction& reaction + ) { + m_reporter->assertionStarting( info ); + + bool negated = isFalseTest( info.resultDisposition ); + bool result = expr.getResult() != negated; + + if( result ) { + if (!m_includeSuccessfulResults) { + assertionPassed(); + } + else { + reportExpr(info, ResultWas::Ok, &expr, negated); + } + } + else { + reportExpr(info, ResultWas::ExpressionFailed, &expr, negated ); + populateReaction( reaction ); + } + } + void RunContext::reportExpr( + AssertionInfo const &info, + ResultWas::OfType resultType, + ITransientExpression const *expr, + bool negated ) { + + m_lastAssertionInfo = info; + AssertionResultData data( resultType, LazyExpression( negated ) ); + + AssertionResult assertionResult{ info, data }; + assertionResult.m_resultData.lazyExpression.m_transientExpression = expr; + + assertionEnded( assertionResult ); + } + + void RunContext::handleMessage( + AssertionInfo const& info, + ResultWas::OfType resultType, + StringRef const& message, + AssertionReaction& reaction + ) { + m_reporter->assertionStarting( info ); + + m_lastAssertionInfo = info; + + AssertionResultData data( resultType, LazyExpression( false ) ); + data.message = static_cast(message); + AssertionResult assertionResult{ m_lastAssertionInfo, data }; + assertionEnded( assertionResult ); + if( !assertionResult.isOk() ) + populateReaction( reaction ); + } + void RunContext::handleUnexpectedExceptionNotThrown( + AssertionInfo const& info, + AssertionReaction& reaction + ) { + handleNonExpr(info, Catch::ResultWas::DidntThrowException, reaction); + } + + void RunContext::handleUnexpectedInflightException( + AssertionInfo const& info, + std::string const& message, + AssertionReaction& reaction + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( ResultWas::ThrewException, LazyExpression( false ) ); + data.message = message; + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + populateReaction( reaction ); + } + + void RunContext::populateReaction( AssertionReaction& reaction ) { + reaction.shouldDebugBreak = m_config->shouldDebugBreak(); + reaction.shouldThrow = aborting() || (m_lastAssertionInfo.resultDisposition & ResultDisposition::Normal); + } + + void RunContext::handleIncomplete( + AssertionInfo const& info + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( ResultWas::ThrewException, LazyExpression( false ) ); + data.message = "Exception translation was disabled by CATCH_CONFIG_FAST_COMPILE"; + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + } + void RunContext::handleNonExpr( + AssertionInfo const &info, + ResultWas::OfType resultType, + AssertionReaction &reaction + ) { + m_lastAssertionInfo = info; + + AssertionResultData data( resultType, LazyExpression( false ) ); + AssertionResult assertionResult{ info, data }; + assertionEnded( assertionResult ); + + if( !assertionResult.isOk() ) + populateReaction( reaction ); + } + + + IResultCapture& getResultCapture() { + if (auto* capture = getCurrentContext().getResultCapture()) + return *capture; + else + CATCH_INTERNAL_ERROR("No result capture instance"); + } + + void seedRng(IConfig const& config) { + if (config.rngSeed() != 0) { + std::srand(config.rngSeed()); + rng().seed(config.rngSeed()); + } + } + + unsigned int rngSeed() { + return getCurrentContext().getConfig()->rngSeed(); + } + +} + + + +#include + +namespace Catch { + + Section::Section( SectionInfo&& info ): + m_info( std::move( info ) ), + m_sectionIncluded( + getResultCapture().sectionStarted( m_info, m_assertions ) ) { + // Non-"included" sections will not use the timing information + // anyway, so don't bother with the potential syscall. + if (m_sectionIncluded) { + m_timer.start(); + } + } + + Section::~Section() { + if( m_sectionIncluded ) { + SectionEndInfo endInfo{ m_info, m_assertions, m_timer.getElapsedSeconds() }; + if( uncaught_exceptions() ) + getResultCapture().sectionEndedEarly( endInfo ); + else + getResultCapture().sectionEnded( endInfo ); + } + } + + // This indicates whether the section should be executed or not + Section::operator bool() const { + return m_sectionIncluded; + } + + +} // end namespace Catch + + + +#include + +namespace Catch { + + namespace { + static auto getSingletons() -> std::vector*& { + static std::vector* g_singletons = nullptr; + if( !g_singletons ) + g_singletons = new std::vector(); + return g_singletons; + } + } + + ISingleton::~ISingleton() {} + + void addSingleton(ISingleton* singleton ) { + getSingletons()->push_back( singleton ); + } + void cleanupSingletons() { + auto& singletons = getSingletons(); + for( auto singleton : *singletons ) + delete singleton; + delete singletons; + singletons = nullptr; + } + +} // namespace Catch + + + +#include +#include +#include +#include +#include + +namespace Catch { + + Catch::IStream::~IStream() = default; + +namespace Detail { + namespace { + template + class StreamBufImpl : public std::streambuf { + char data[bufferSize]; + WriterF m_writer; + + public: + StreamBufImpl() { + setp( data, data + sizeof(data) ); + } + + ~StreamBufImpl() noexcept { + StreamBufImpl::sync(); + } + + private: + int overflow( int c ) override { + sync(); + + if( c != EOF ) { + if( pbase() == epptr() ) + m_writer( std::string( 1, static_cast( c ) ) ); + else + sputc( static_cast( c ) ); + } + return 0; + } + + int sync() override { + if( pbase() != pptr() ) { + m_writer( std::string( pbase(), static_cast( pptr() - pbase() ) ) ); + setp( pbase(), epptr() ); + } + return 0; + } + }; + + /////////////////////////////////////////////////////////////////////////// + + struct OutputDebugWriter { + + void operator()( std::string const&str ) { + writeToDebugConsole( str ); + } + }; + + /////////////////////////////////////////////////////////////////////////// + + class FileStream : public IStream { + mutable std::ofstream m_ofs; + public: + FileStream( StringRef filename ) { + m_ofs.open( filename.c_str() ); + CATCH_ENFORCE( !m_ofs.fail(), "Unable to open file: '" << filename << "'" ); + } + ~FileStream() override = default; + public: // IStream + std::ostream& stream() const override { + return m_ofs; + } + }; + + /////////////////////////////////////////////////////////////////////////// + + class CoutStream : public IStream { + mutable std::ostream m_os; + public: + // Store the streambuf from cout up-front because + // cout may get redirected when running tests + CoutStream() : m_os( Catch::cout().rdbuf() ) {} + ~CoutStream() override = default; + + public: // IStream + std::ostream& stream() const override { return m_os; } + }; + + /////////////////////////////////////////////////////////////////////////// + + class DebugOutStream : public IStream { + Detail::unique_ptr> m_streamBuf; + mutable std::ostream m_os; + public: + DebugOutStream() + : m_streamBuf( Detail::make_unique>() ), + m_os( m_streamBuf.get() ) + {} + + ~DebugOutStream() override = default; + + public: // IStream + std::ostream& stream() const override { return m_os; } + }; + + } // unnamed namespace +} // namespace Detail + + /////////////////////////////////////////////////////////////////////////// + + auto makeStream( StringRef const &filename ) -> IStream const* { + if( filename.empty() ) + return new Detail::CoutStream(); + else if( filename[0] == '%' ) { + if( filename == "%debug" ) + return new Detail::DebugOutStream(); + else + CATCH_ERROR( "Unrecognised stream: '" << filename << "'" ); + } + else + return new Detail::FileStream( filename ); + } + + + // This class encapsulates the idea of a pool of ostringstreams that can be reused. + struct StringStreams { + std::vector> m_streams; + std::vector m_unused; + std::ostringstream m_referenceStream; // Used for copy state/ flags from + + auto add() -> std::size_t { + if( m_unused.empty() ) { + m_streams.push_back( Detail::unique_ptr( new std::ostringstream ) ); + return m_streams.size()-1; + } + else { + auto index = m_unused.back(); + m_unused.pop_back(); + return index; + } + } + + void release( std::size_t index ) { + m_streams[index]->copyfmt( m_referenceStream ); // Restore initial flags and other state + m_unused.push_back(index); + } + }; + + ReusableStringStream::ReusableStringStream() + : m_index( Singleton::getMutable().add() ), + m_oss( Singleton::getMutable().m_streams[m_index].get() ) + {} + + ReusableStringStream::~ReusableStringStream() { + static_cast( m_oss )->str(""); + m_oss->clear(); + Singleton::getMutable().release( m_index ); + } + + std::string ReusableStringStream::str() const { + return static_cast( m_oss )->str(); + } + + void ReusableStringStream::str( std::string const& str ) { + static_cast( m_oss )->str( str ); + } + + + /////////////////////////////////////////////////////////////////////////// + + +#ifndef CATCH_CONFIG_NOSTDOUT // If you #define this you must implement these functions + std::ostream& cout() { return std::cout; } + std::ostream& cerr() { return std::cerr; } + std::ostream& clog() { return std::clog; } +#endif +} + + + +#include +#include +#include +#include +#include + +namespace Catch { + + namespace { + char toLowerCh(char c) { + return static_cast( std::tolower( static_cast(c) ) ); + } + } + + bool startsWith( std::string const& s, std::string const& prefix ) { + return s.size() >= prefix.size() && std::equal(prefix.begin(), prefix.end(), s.begin()); + } + bool startsWith( std::string const& s, char prefix ) { + return !s.empty() && s[0] == prefix; + } + bool endsWith( std::string const& s, std::string const& suffix ) { + return s.size() >= suffix.size() && std::equal(suffix.rbegin(), suffix.rend(), s.rbegin()); + } + bool endsWith( std::string const& s, char suffix ) { + return !s.empty() && s[s.size()-1] == suffix; + } + bool contains( std::string const& s, std::string const& infix ) { + return s.find( infix ) != std::string::npos; + } + void toLowerInPlace( std::string& s ) { + std::transform( s.begin(), s.end(), s.begin(), toLowerCh ); + } + std::string toLower( std::string const& s ) { + std::string lc = s; + toLowerInPlace( lc ); + return lc; + } + std::string trim( std::string const& str ) { + static char const* whitespaceChars = "\n\r\t "; + std::string::size_type start = str.find_first_not_of( whitespaceChars ); + std::string::size_type end = str.find_last_not_of( whitespaceChars ); + + return start != std::string::npos ? str.substr( start, 1+end-start ) : std::string(); + } + + StringRef trim(StringRef ref) { + const auto is_ws = [](char c) { + return c == ' ' || c == '\t' || c == '\n' || c == '\r'; + }; + size_t real_begin = 0; + while (real_begin < ref.size() && is_ws(ref[real_begin])) { ++real_begin; } + size_t real_end = ref.size(); + while (real_end > real_begin && is_ws(ref[real_end - 1])) { --real_end; } + + return ref.substr(real_begin, real_end - real_begin); + } + + bool replaceInPlace( std::string& str, std::string const& replaceThis, std::string const& withThis ) { + bool replaced = false; + std::size_t i = str.find( replaceThis ); + while( i != std::string::npos ) { + replaced = true; + str = str.substr( 0, i ) + withThis + str.substr( i+replaceThis.size() ); + if( i < str.size()-withThis.size() ) + i = str.find( replaceThis, i+withThis.size() ); + else + i = std::string::npos; + } + return replaced; + } + + std::vector splitStringRef( StringRef str, char delimiter ) { + std::vector subStrings; + std::size_t start = 0; + for(std::size_t pos = 0; pos < str.size(); ++pos ) { + if( str[pos] == delimiter ) { + if( pos - start > 1 ) + subStrings.push_back( str.substr( start, pos-start ) ); + start = pos+1; + } + } + if( start < str.size() ) + subStrings.push_back( str.substr( start, str.size()-start ) ); + return subStrings; + } + + pluralise::pluralise( std::size_t count, std::string const& label ) + : m_count( count ), + m_label( label ) + {} + + std::ostream& operator << ( std::ostream& os, pluralise const& pluraliser ) { + os << pluraliser.m_count << ' ' << pluraliser.m_label; + if( pluraliser.m_count != 1 ) + os << 's'; + return os; + } + +} + + + +#include +#include +#include +#include + +namespace Catch { + StringRef::StringRef( char const* rawChars ) noexcept + : StringRef( rawChars, static_cast(std::strlen(rawChars) ) ) + {} + + auto StringRef::c_str() const -> char const* { + CATCH_ENFORCE(isNullTerminated(), "Called StringRef::c_str() on a non-null-terminated instance"); + return m_start; + } + + auto StringRef::operator == ( StringRef const& other ) const noexcept -> bool { + return m_size == other.m_size + && (std::memcmp( m_start, other.m_start, m_size ) == 0); + } + + bool StringRef::operator<(StringRef const& rhs) const noexcept { + if (m_size < rhs.m_size) { + return strncmp(m_start, rhs.m_start, m_size) <= 0; + } + return strncmp(m_start, rhs.m_start, rhs.m_size) < 0; + } + + auto operator << ( std::ostream& os, StringRef const& str ) -> std::ostream& { + return os.write(str.data(), str.size()); + } + + std::string operator+(StringRef lhs, StringRef rhs) { + std::string ret; + ret.reserve(lhs.size() + rhs.size()); + ret += lhs; + ret += rhs; + return ret; + } + + auto operator+=( std::string& lhs, StringRef const& rhs ) -> std::string& { + lhs.append(rhs.data(), rhs.size()); + return lhs; + } + +} // namespace Catch + + + +namespace Catch { + + TagAliasRegistry::~TagAliasRegistry() {} + + TagAlias const* TagAliasRegistry::find( std::string const& alias ) const { + auto it = m_registry.find( alias ); + if( it != m_registry.end() ) + return &(it->second); + else + return nullptr; + } + + std::string TagAliasRegistry::expandAliases( std::string const& unexpandedTestSpec ) const { + std::string expandedTestSpec = unexpandedTestSpec; + for( auto const& registryKvp : m_registry ) { + std::size_t pos = expandedTestSpec.find( registryKvp.first ); + if( pos != std::string::npos ) { + expandedTestSpec = expandedTestSpec.substr( 0, pos ) + + registryKvp.second.tag + + expandedTestSpec.substr( pos + registryKvp.first.size() ); + } + } + return expandedTestSpec; + } + + void TagAliasRegistry::add( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) { + CATCH_ENFORCE( startsWith(alias, "[@") && endsWith(alias, ']'), + "error: tag alias, '" << alias << "' is not of the form [@alias name].\n" << lineInfo ); + + CATCH_ENFORCE( m_registry.insert(std::make_pair(alias, TagAlias(tag, lineInfo))).second, + "error: tag alias, '" << alias << "' already registered.\n" + << "\tFirst seen at: " << find(alias)->lineInfo << "\n" + << "\tRedefined at: " << lineInfo ); + } + + ITagAliasRegistry::~ITagAliasRegistry() {} + + ITagAliasRegistry const& ITagAliasRegistry::get() { + return getRegistryHub().getTagAliasRegistry(); + } + +} // end namespace Catch + + + + +#include +#include + +namespace Catch { + +namespace { + struct HashTest { + explicit HashTest(SimplePcg32& rng_inst) { + basis = rng_inst(); + basis <<= 32; + basis |= rng_inst(); + } + + uint64_t basis; + + uint64_t operator()(TestCaseInfo const& t) const { + // Modified FNV-1a hash + static constexpr uint64_t prime = 1099511628211; + uint64_t hash = basis; + for (const char c : t.name) { + hash ^= c; + hash *= prime; + } + return hash; + } + }; +} // end anonymous namespace + + std::vector sortTests( IConfig const& config, std::vector const& unsortedTestCases ) { + switch (config.runOrder()) { + case TestRunOrder::Declared: + return unsortedTestCases; + + case TestRunOrder::LexicographicallySorted: { + std::vector sorted = unsortedTestCases; + std::sort(sorted.begin(), sorted.end()); + return sorted; + } + case TestRunOrder::Randomized: { + seedRng(config); + HashTest h(rng()); + std::vector> indexed_tests; + indexed_tests.reserve(unsortedTestCases.size()); + + for (auto const& handle : unsortedTestCases) { + indexed_tests.emplace_back(h(handle.getTestCaseInfo()), handle); + } + + std::sort(indexed_tests.begin(), indexed_tests.end()); + + std::vector randomized; + randomized.reserve(indexed_tests.size()); + + for (auto const& indexed : indexed_tests) { + randomized.push_back(indexed.second); + } + + return randomized; + } + } + + CATCH_INTERNAL_ERROR("Unknown test order value!"); + } + + bool isThrowSafe( TestCaseHandle const& testCase, IConfig const& config ) { + return !testCase.getTestCaseInfo().throws() || config.allowThrows(); + } + + bool matchTest( TestCaseHandle const& testCase, TestSpec const& testSpec, IConfig const& config ) { + return testSpec.matches( testCase.getTestCaseInfo() ) && isThrowSafe( testCase, config ); + } + + void enforceNoDuplicateTestCases( std::vector const& functions ) { + std::set seenFunctions; + for( auto const& function : functions ) { + auto prev = seenFunctions.insert( function ); + CATCH_ENFORCE( prev.second, + "error: TEST_CASE( \"" << function.getTestCaseInfo().name << "\" ) already defined.\n" + << "\tFirst seen at " << prev.first->getTestCaseInfo().lineInfo << "\n" + << "\tRedefined at " << function.getTestCaseInfo().lineInfo ); + } + } + + std::vector filterTests( std::vector const& testCases, TestSpec const& testSpec, IConfig const& config ) { + std::vector filtered; + filtered.reserve( testCases.size() ); + for (auto const& testCase : testCases) { + if ((!testSpec.hasFilters() && !testCase.getTestCaseInfo().isHidden()) || + (testSpec.hasFilters() && matchTest(testCase, testSpec, config))) { + filtered.push_back(testCase); + } + } + return filtered; + } + std::vector const& getAllTestCasesSorted( IConfig const& config ) { + return getRegistryHub().getTestCaseRegistry().getAllTestsSorted( config ); + } + + void TestRegistry::registerTest(Detail::unique_ptr testInfo, Detail::unique_ptr testInvoker) { + m_handles.emplace_back(testInfo.get(), testInvoker.get()); + m_viewed_test_infos.push_back(testInfo.get()); + m_owned_test_infos.push_back(std::move(testInfo)); + m_invokers.push_back(std::move(testInvoker)); + } + + std::vector const& TestRegistry::getAllInfos() const { + return m_viewed_test_infos; + } + + std::vector const& TestRegistry::getAllTests() const { + return m_handles; + } + std::vector const& TestRegistry::getAllTestsSorted( IConfig const& config ) const { + if( m_sortedFunctions.empty() ) + enforceNoDuplicateTestCases( m_handles ); + + if( m_currentSortOrder != config.runOrder() || m_sortedFunctions.empty() ) { + m_sortedFunctions = sortTests( config, m_handles ); + m_currentSortOrder = config.runOrder(); + } + return m_sortedFunctions; + } + + + + /////////////////////////////////////////////////////////////////////////// + void TestInvokerAsFunction::invoke() const { + m_testAsFunction(); + } + + std::string extractClassName( StringRef const& classOrQualifiedMethodName ) { + std::string className(classOrQualifiedMethodName); + if( startsWith( className, '&' ) ) + { + std::size_t lastColons = className.rfind( "::" ); + std::size_t penultimateColons = className.rfind( "::", lastColons-1 ); + if( penultimateColons == std::string::npos ) + penultimateColons = 1; + className = className.substr( penultimateColons, lastColons-penultimateColons ); + } + return className; + } + +} // end namespace Catch + + + + +#include +#include +#include + +#if defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wexit-time-destructors" +#endif + +namespace Catch { +namespace TestCaseTracking { + + NameAndLocation::NameAndLocation( std::string const& _name, SourceLineInfo const& _location ) + : name( _name ), + location( _location ) + {} + + + ITracker::~ITracker() = default; + + void ITracker::addChild( ITrackerPtr const& child ) { + m_children.push_back( child ); + } + + ITrackerPtr ITracker::findChild( NameAndLocation const& nameAndLocation ) { + auto it = std::find_if( + m_children.begin(), + m_children.end(), + [&nameAndLocation]( ITrackerPtr const& tracker ) { + return tracker->nameAndLocation().location == + nameAndLocation.location && + tracker->nameAndLocation().name == nameAndLocation.name; + } ); + return ( it != m_children.end() ) ? *it : nullptr; + } + + + + ITracker& TrackerContext::startRun() { + using namespace std::string_literals; + m_rootTracker = std::make_shared( NameAndLocation( "{root}"s, CATCH_INTERNAL_LINEINFO ), *this, nullptr ); + m_currentTracker = nullptr; + m_runState = Executing; + return *m_rootTracker; + } + + void TrackerContext::endRun() { + m_rootTracker.reset(); + m_currentTracker = nullptr; + m_runState = NotStarted; + } + + void TrackerContext::startCycle() { + m_currentTracker = m_rootTracker.get(); + m_runState = Executing; + } + void TrackerContext::completeCycle() { + m_runState = CompletedCycle; + } + + bool TrackerContext::completedCycle() const { + return m_runState == CompletedCycle; + } + ITracker& TrackerContext::currentTracker() { + return *m_currentTracker; + } + void TrackerContext::setCurrentTracker( ITracker* tracker ) { + m_currentTracker = tracker; + } + + + TrackerBase::TrackerBase( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ): + ITracker(nameAndLocation), + m_ctx( ctx ), + m_parent( parent ) + {} + + bool TrackerBase::isComplete() const { + return m_runState == CompletedSuccessfully || m_runState == Failed; + } + bool TrackerBase::isSuccessfullyCompleted() const { + return m_runState == CompletedSuccessfully; + } + bool TrackerBase::isOpen() const { + return m_runState != NotStarted && !isComplete(); + } + + ITracker& TrackerBase::parent() { + assert( m_parent ); // Should always be non-null except for root + return *m_parent; + } + + void TrackerBase::openChild() { + if( m_runState != ExecutingChildren ) { + m_runState = ExecutingChildren; + if( m_parent ) + m_parent->openChild(); + } + } + + bool TrackerBase::isSectionTracker() const { return false; } + bool TrackerBase::isGeneratorTracker() const { return false; } + + void TrackerBase::open() { + m_runState = Executing; + moveToThis(); + if( m_parent ) + m_parent->openChild(); + } + + void TrackerBase::close() { + + // Close any still open children (e.g. generators) + while( &m_ctx.currentTracker() != this ) + m_ctx.currentTracker().close(); + + switch( m_runState ) { + case NeedsAnotherRun: + break; + + case Executing: + m_runState = CompletedSuccessfully; + break; + case ExecutingChildren: + if( std::all_of(m_children.begin(), m_children.end(), [](ITrackerPtr const& t){ return t->isComplete(); }) ) + m_runState = CompletedSuccessfully; + break; + + case NotStarted: + case CompletedSuccessfully: + case Failed: + CATCH_INTERNAL_ERROR( "Illogical state: " << m_runState ); + + default: + CATCH_INTERNAL_ERROR( "Unknown state: " << m_runState ); + } + moveToParent(); + m_ctx.completeCycle(); + } + void TrackerBase::fail() { + m_runState = Failed; + if( m_parent ) + m_parent->markAsNeedingAnotherRun(); + moveToParent(); + m_ctx.completeCycle(); + } + void TrackerBase::markAsNeedingAnotherRun() { + m_runState = NeedsAnotherRun; + } + + void TrackerBase::moveToParent() { + assert( m_parent ); + m_ctx.setCurrentTracker( m_parent ); + } + void TrackerBase::moveToThis() { + m_ctx.setCurrentTracker( this ); + } + + SectionTracker::SectionTracker( NameAndLocation const& nameAndLocation, TrackerContext& ctx, ITracker* parent ) + : TrackerBase( nameAndLocation, ctx, parent ), + m_trimmed_name(trim(nameAndLocation.name)) + { + if( parent ) { + while( !parent->isSectionTracker() ) + parent = &parent->parent(); + + SectionTracker& parentSection = static_cast( *parent ); + addNextFilters( parentSection.m_filters ); + } + } + + bool SectionTracker::isComplete() const { + bool complete = true; + + if (m_filters.empty() + || m_filters[0] == "" + || std::find(m_filters.begin(), m_filters.end(), m_trimmed_name) != m_filters.end()) { + complete = TrackerBase::isComplete(); + } + return complete; + } + + bool SectionTracker::isSectionTracker() const { return true; } + + SectionTracker& SectionTracker::acquire( TrackerContext& ctx, NameAndLocation const& nameAndLocation ) { + std::shared_ptr section; + + ITracker& currentTracker = ctx.currentTracker(); + if( ITrackerPtr childTracker = currentTracker.findChild( nameAndLocation ) ) { + assert( childTracker ); + assert( childTracker->isSectionTracker() ); + section = std::static_pointer_cast( childTracker ); + } + else { + section = std::make_shared( nameAndLocation, ctx, ¤tTracker ); + currentTracker.addChild( section ); + } + if( !ctx.completedCycle() ) + section->tryOpen(); + return *section; + } + + void SectionTracker::tryOpen() { + if( !isComplete() ) + open(); + } + + void SectionTracker::addInitialFilters( std::vector const& filters ) { + if( !filters.empty() ) { + m_filters.reserve( m_filters.size() + filters.size() + 2 ); + m_filters.emplace_back(""); // Root - should never be consulted + m_filters.emplace_back(""); // Test Case - not a section filter + m_filters.insert( m_filters.end(), filters.begin(), filters.end() ); + } + } + void SectionTracker::addNextFilters( std::vector const& filters ) { + if( filters.size() > 1 ) + m_filters.insert( m_filters.end(), filters.begin()+1, filters.end() ); + } + +} // namespace TestCaseTracking + +using TestCaseTracking::ITracker; +using TestCaseTracking::TrackerContext; +using TestCaseTracking::SectionTracker; + +} // namespace Catch + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + + +namespace Catch { + + Detail::unique_ptr makeTestInvoker( void(*testAsFunction)() ) { + return Detail::unique_ptr( new TestInvokerAsFunction( testAsFunction )); + } + + AutoReg::AutoReg( Detail::unique_ptr invoker, SourceLineInfo const& lineInfo, StringRef const& classOrMethod, NameAndTags const& nameAndTags ) noexcept { + CATCH_TRY { + getMutableRegistryHub() + .registerTest( + makeTestCaseInfo( + extractClassName( classOrMethod ), + nameAndTags, + lineInfo), + std::move(invoker) + ); + } CATCH_CATCH_ALL { + // Do not throw when constructing global objects, instead register the exception to be processed later + getMutableRegistryHub().registerStartupException(); + } + } +} + + + + + +namespace Catch { + + TestSpecParser::TestSpecParser( ITagAliasRegistry const& tagAliases ) : m_tagAliases( &tagAliases ) {} + + TestSpecParser& TestSpecParser::parse( std::string const& arg ) { + m_mode = None; + m_exclusion = false; + m_arg = m_tagAliases->expandAliases( arg ); + m_escapeChars.clear(); + m_substring.reserve(m_arg.size()); + m_patternName.reserve(m_arg.size()); + m_realPatternPos = 0; + + for( m_pos = 0; m_pos < m_arg.size(); ++m_pos ) + //if visitChar fails + if( !visitChar( m_arg[m_pos] ) ){ + m_testSpec.m_invalidArgs.push_back(arg); + break; + } + endMode(); + return *this; + } + TestSpec TestSpecParser::testSpec() { + addFilter(); + return std::move(m_testSpec); + } + bool TestSpecParser::visitChar( char c ) { + if( (m_mode != EscapedName) && (c == '\\') ) { + escape(); + addCharToPattern(c); + return true; + }else if((m_mode != EscapedName) && (c == ',') ) { + return separate(); + } + + switch( m_mode ) { + case None: + if( processNoneChar( c ) ) + return true; + break; + case Name: + processNameChar( c ); + break; + case EscapedName: + endMode(); + addCharToPattern(c); + return true; + default: + case Tag: + case QuotedName: + if( processOtherChar( c ) ) + return true; + break; + } + + m_substring += c; + if( !isControlChar( c ) ) { + m_patternName += c; + m_realPatternPos++; + } + return true; + } + // Two of the processing methods return true to signal the caller to return + // without adding the given character to the current pattern strings + bool TestSpecParser::processNoneChar( char c ) { + switch( c ) { + case ' ': + return true; + case '~': + m_exclusion = true; + return false; + case '[': + startNewMode( Tag ); + return false; + case '"': + startNewMode( QuotedName ); + return false; + default: + startNewMode( Name ); + return false; + } + } + void TestSpecParser::processNameChar( char c ) { + if( c == '[' ) { + if( m_substring == "exclude:" ) + m_exclusion = true; + else + endMode(); + startNewMode( Tag ); + } + } + bool TestSpecParser::processOtherChar( char c ) { + if( !isControlChar( c ) ) + return false; + m_substring += c; + endMode(); + return true; + } + void TestSpecParser::startNewMode( Mode mode ) { + m_mode = mode; + } + void TestSpecParser::endMode() { + switch( m_mode ) { + case Name: + case QuotedName: + return addNamePattern(); + case Tag: + return addTagPattern(); + case EscapedName: + revertBackToLastMode(); + return; + case None: + default: + return startNewMode( None ); + } + } + void TestSpecParser::escape() { + saveLastMode(); + m_mode = EscapedName; + m_escapeChars.push_back(m_realPatternPos); + } + bool TestSpecParser::isControlChar( char c ) const { + switch( m_mode ) { + default: + return false; + case None: + return c == '~'; + case Name: + return c == '['; + case EscapedName: + return true; + case QuotedName: + return c == '"'; + case Tag: + return c == '[' || c == ']'; + } + } + + void TestSpecParser::addFilter() { + if( !m_currentFilter.m_required.empty() || !m_currentFilter.m_forbidden.empty() ) { + m_testSpec.m_filters.push_back( std::move(m_currentFilter) ); + m_currentFilter = TestSpec::Filter(); + } + } + + void TestSpecParser::saveLastMode() { + lastMode = m_mode; + } + + void TestSpecParser::revertBackToLastMode() { + m_mode = lastMode; + } + + bool TestSpecParser::separate() { + if( (m_mode==QuotedName) || (m_mode==Tag) ){ + //invalid argument, signal failure to previous scope. + m_mode = None; + m_pos = m_arg.size(); + m_substring.clear(); + m_patternName.clear(); + m_realPatternPos = 0; + return false; + } + endMode(); + addFilter(); + return true; //success + } + + std::string TestSpecParser::preprocessPattern() { + std::string token = m_patternName; + for (std::size_t i = 0; i < m_escapeChars.size(); ++i) + token = token.substr(0, m_escapeChars[i] - i) + token.substr(m_escapeChars[i] - i + 1); + m_escapeChars.clear(); + if (startsWith(token, "exclude:")) { + m_exclusion = true; + token = token.substr(8); + } + + m_patternName.clear(); + m_realPatternPos = 0; + + return token; + } + + void TestSpecParser::addNamePattern() { + auto token = preprocessPattern(); + + if (!token.empty()) { + if (m_exclusion) { + m_currentFilter.m_forbidden.emplace_back(Detail::make_unique(token, m_substring)); + } else { + m_currentFilter.m_required.emplace_back(Detail::make_unique(token, m_substring)); + } + } + m_substring.clear(); + m_exclusion = false; + m_mode = None; + } + + void TestSpecParser::addTagPattern() { + auto token = preprocessPattern(); + + if (!token.empty()) { + // If the tag pattern is the "hide and tag" shorthand (e.g. [.foo]) + // we have to create a separate hide tag and shorten the real one + if (token.size() > 1 && token[0] == '.') { + token.erase(token.begin()); + if (m_exclusion) { + m_currentFilter.m_forbidden.emplace_back(Detail::make_unique(".", m_substring)); + m_currentFilter.m_forbidden.emplace_back(Detail::make_unique(token, m_substring)); + } else { + m_currentFilter.m_required.emplace_back(Detail::make_unique(".", m_substring)); + m_currentFilter.m_required.emplace_back(Detail::make_unique(token, m_substring)); + } + } + if (m_exclusion) { + m_currentFilter.m_forbidden.emplace_back(Detail::make_unique(token, m_substring)); + } else { + m_currentFilter.m_required.emplace_back(Detail::make_unique(token, m_substring)); + } + } + m_substring.clear(); + m_exclusion = false; + m_mode = None; + } + + TestSpec parseTestSpec( std::string const& arg ) { + return TestSpecParser( ITagAliasRegistry::get() ).parse( arg ).testSpec(); + } + +} // namespace Catch + + +#include +#include + +namespace { + bool isWhitespace( char c ) { + return c == ' ' || c == '\t' || c == '\n' || c == '\r'; + } + + bool isBreakableBefore( char c ) { + static const char chars[] = "[({<|"; + return std::memchr( chars, c, sizeof( chars ) - 1 ) != nullptr; + } + + bool isBreakableAfter( char c ) { + static const char chars[] = "])}>.,:;*+-=&/\\"; + return std::memchr( chars, c, sizeof( chars ) - 1 ) != nullptr; + } + + bool isBoundary( std::string const& line, size_t at ) { + assert( at > 0 ); + assert( at <= line.size() ); + + return at == line.size() || + ( isWhitespace( line[at] ) && !isWhitespace( line[at - 1] ) ) || + isBreakableBefore( line[at] ) || + isBreakableAfter( line[at - 1] ); + } + +} // namespace + +namespace Catch { + namespace TextFlow { + + void Column::iterator::calcLength() { + m_suffix = false; + auto width = m_column.m_width - indent(); + m_end = m_pos; + std::string const& current_line = m_column.m_string; + if ( current_line[m_pos] == '\n' ) { + ++m_end; + } + while ( m_end < current_line.size() && + current_line[m_end] != '\n' ) { + ++m_end; + } + + if ( m_end < m_pos + width ) { + m_len = m_end - m_pos; + } else { + size_t len = width; + while ( len > 0 && !isBoundary( current_line, m_pos + len ) ) { + --len; + } + while ( len > 0 && + isWhitespace( current_line[m_pos + len - 1] ) ) { + --len; + } + + if ( len > 0 ) { + m_len = len; + } else { + m_suffix = true; + m_len = width - 1; + } + } + } + + size_t Column::iterator::indent() const { + auto initial = + m_pos == 0 ? m_column.m_initialIndent : std::string::npos; + return initial == std::string::npos ? m_column.m_indent : initial; + } + + std::string + Column::iterator::addIndentAndSuffix( size_t position, + size_t length ) const { + std::string ret; + const auto desired_indent = indent(); + ret.reserve( desired_indent + length + m_suffix ); + ret.append( desired_indent, ' ' ); + ret.append( m_column.m_string, position, length ); + if ( m_suffix ) { + ret.push_back( '-' ); + } + + return ret; + } + + Column::iterator::iterator( Column const& column ): m_column( column ) { + assert( m_column.m_width > m_column.m_indent ); + assert( m_column.m_initialIndent == std::string::npos || + m_column.m_width > m_column.m_initialIndent ); + calcLength(); + if ( m_len == 0 ) { + m_pos = m_column.m_string.size(); + } + } + + std::string Column::iterator::operator*() const { + assert( m_pos <= m_end ); + return addIndentAndSuffix( m_pos, m_len ); + } + + Column::iterator& Column::iterator::operator++() { + m_pos += m_len; + std::string const& current_line = m_column.m_string; + if ( m_pos < current_line.size() && current_line[m_pos] == '\n' ) { + m_pos += 1; + } else { + while ( m_pos < current_line.size() && + isWhitespace( current_line[m_pos] ) ) { + ++m_pos; + } + } + + if ( m_pos != current_line.size() ) { + calcLength(); + } + return *this; + } + + Column::iterator Column::iterator::operator++( int ) { + iterator prev( *this ); + operator++(); + return prev; + } + + std::ostream& operator<<( std::ostream& os, Column const& col ) { + bool first = true; + for ( auto line : col ) { + if ( first ) { + first = false; + } else { + os << '\n'; + } + os << line; + } + return os; + } + + Column Spacer( size_t spaceWidth ) { + Column ret{ "" }; + ret.width( spaceWidth ); + return ret; + } + + Columns::iterator::iterator( Columns const& columns, EndTag ): + m_columns( columns.m_columns ), m_activeIterators( 0 ) { + + m_iterators.reserve( m_columns.size() ); + for ( auto const& col : m_columns ) { + m_iterators.push_back( col.end() ); + } + } + + Columns::iterator::iterator( Columns const& columns ): + m_columns( columns.m_columns ), + m_activeIterators( m_columns.size() ) { + + m_iterators.reserve( m_columns.size() ); + for ( auto const& col : m_columns ) { + m_iterators.push_back( col.begin() ); + } + } + + std::string Columns::iterator::operator*() const { + std::string row, padding; + + for ( size_t i = 0; i < m_columns.size(); ++i ) { + const auto width = m_columns[i].width(); + if ( m_iterators[i] != m_columns[i].end() ) { + std::string col = *m_iterators[i]; + row += padding; + row += col; + + padding.clear(); + if ( col.size() < width ) { + padding.append( width - col.size(), ' ' ); + } + } else { + padding.append( width, ' ' ); + } + } + return row; + } + + Columns::iterator& Columns::iterator::operator++() { + for ( size_t i = 0; i < m_columns.size(); ++i ) { + if ( m_iterators[i] != m_columns[i].end() ) { + ++m_iterators[i]; + } + } + return *this; + } + + Columns::iterator Columns::iterator::operator++( int ) { + iterator prev( *this ); + operator++(); + return prev; + } + + std::ostream& operator<<( std::ostream& os, Columns const& cols ) { + bool first = true; + for ( auto line : cols ) { + if ( first ) { + first = false; + } else { + os << '\n'; + } + os << line; + } + return os; + } + + Columns Column::operator+( Column const& other ) { + Columns cols; + cols += *this; + cols += other; + return cols; + } + + Columns& Columns::operator+=( Column const& col ) { + m_columns.push_back( col ); + return *this; + } + + Columns Columns::operator+( Column const& col ) { + Columns combined = *this; + combined += col; + return combined; + } + + } // namespace TextFlow +} // namespace Catch + + + +namespace Catch { + + WildcardPattern::WildcardPattern( std::string const& pattern, + CaseSensitive caseSensitivity ) + : m_caseSensitivity( caseSensitivity ), + m_pattern( normaliseString( pattern ) ) + { + if( startsWith( m_pattern, '*' ) ) { + m_pattern = m_pattern.substr( 1 ); + m_wildcard = WildcardAtStart; + } + if( endsWith( m_pattern, '*' ) ) { + m_pattern = m_pattern.substr( 0, m_pattern.size()-1 ); + m_wildcard = static_cast( m_wildcard | WildcardAtEnd ); + } + } + + bool WildcardPattern::matches( std::string const& str ) const { + switch( m_wildcard ) { + case NoWildcard: + return m_pattern == normaliseString( str ); + case WildcardAtStart: + return endsWith( normaliseString( str ), m_pattern ); + case WildcardAtEnd: + return startsWith( normaliseString( str ), m_pattern ); + case WildcardAtBothEnds: + return contains( normaliseString( str ), m_pattern ); + default: + CATCH_INTERNAL_ERROR( "Unknown enum" ); + } + } + + std::string WildcardPattern::normaliseString( std::string const& str ) const { + return trim( m_caseSensitivity == CaseSensitive::No ? toLower( str ) : str ); + } +} + + + + +#include +#include + +namespace Catch { + +namespace { + + size_t trailingBytes(unsigned char c) { + if ((c & 0xE0) == 0xC0) { + return 2; + } + if ((c & 0xF0) == 0xE0) { + return 3; + } + if ((c & 0xF8) == 0xF0) { + return 4; + } + CATCH_INTERNAL_ERROR("Invalid multibyte utf-8 start byte encountered"); + } + + uint32_t headerValue(unsigned char c) { + if ((c & 0xE0) == 0xC0) { + return c & 0x1F; + } + if ((c & 0xF0) == 0xE0) { + return c & 0x0F; + } + if ((c & 0xF8) == 0xF0) { + return c & 0x07; + } + CATCH_INTERNAL_ERROR("Invalid multibyte utf-8 start byte encountered"); + } + + void hexEscapeChar(std::ostream& os, unsigned char c) { + std::ios_base::fmtflags f(os.flags()); + os << "\\x" + << std::uppercase << std::hex << std::setfill('0') << std::setw(2) + << static_cast(c); + os.flags(f); + } + + bool shouldNewline(XmlFormatting fmt) { + return !!(static_cast>(fmt & XmlFormatting::Newline)); + } + + bool shouldIndent(XmlFormatting fmt) { + return !!(static_cast>(fmt & XmlFormatting::Indent)); + } + +} // anonymous namespace + + XmlFormatting operator | (XmlFormatting lhs, XmlFormatting rhs) { + return static_cast( + static_cast>(lhs) | + static_cast>(rhs) + ); + } + + XmlFormatting operator & (XmlFormatting lhs, XmlFormatting rhs) { + return static_cast( + static_cast>(lhs) & + static_cast>(rhs) + ); + } + + + XmlEncode::XmlEncode( std::string const& str, ForWhat forWhat ) + : m_str( str ), + m_forWhat( forWhat ) + {} + + void XmlEncode::encodeTo( std::ostream& os ) const { + // Apostrophe escaping not necessary if we always use " to write attributes + // (see: http://www.w3.org/TR/xml/#syntax) + + for( std::size_t idx = 0; idx < m_str.size(); ++ idx ) { + unsigned char c = m_str[idx]; + switch (c) { + case '<': os << "<"; break; + case '&': os << "&"; break; + + case '>': + // See: http://www.w3.org/TR/xml/#syntax + if (idx > 2 && m_str[idx - 1] == ']' && m_str[idx - 2] == ']') + os << ">"; + else + os << c; + break; + + case '\"': + if (m_forWhat == ForAttributes) + os << """; + else + os << c; + break; + + default: + // Check for control characters and invalid utf-8 + + // Escape control characters in standard ascii + // see http://stackoverflow.com/questions/404107/why-are-control-characters-illegal-in-xml-1-0 + if (c < 0x09 || (c > 0x0D && c < 0x20) || c == 0x7F) { + hexEscapeChar(os, c); + break; + } + + // Plain ASCII: Write it to stream + if (c < 0x7F) { + os << c; + break; + } + + // UTF-8 territory + // Check if the encoding is valid and if it is not, hex escape bytes. + // Important: We do not check the exact decoded values for validity, only the encoding format + // First check that this bytes is a valid lead byte: + // This means that it is not encoded as 1111 1XXX + // Or as 10XX XXXX + if (c < 0xC0 || + c >= 0xF8) { + hexEscapeChar(os, c); + break; + } + + auto encBytes = trailingBytes(c); + // Are there enough bytes left to avoid accessing out-of-bounds memory? + if (idx + encBytes - 1 >= m_str.size()) { + hexEscapeChar(os, c); + break; + } + // The header is valid, check data + // The next encBytes bytes must together be a valid utf-8 + // This means: bitpattern 10XX XXXX and the extracted value is sane (ish) + bool valid = true; + uint32_t value = headerValue(c); + for (std::size_t n = 1; n < encBytes; ++n) { + unsigned char nc = m_str[idx + n]; + valid &= ((nc & 0xC0) == 0x80); + value = (value << 6) | (nc & 0x3F); + } + + if ( + // Wrong bit pattern of following bytes + (!valid) || + // Overlong encodings + (value < 0x80) || + (0x80 <= value && value < 0x800 && encBytes > 2) || + (0x800 < value && value < 0x10000 && encBytes > 3) || + // Encoded value out of range + (value >= 0x110000) + ) { + hexEscapeChar(os, c); + break; + } + + // If we got here, this is in fact a valid(ish) utf-8 sequence + for (std::size_t n = 0; n < encBytes; ++n) { + os << m_str[idx + n]; + } + idx += encBytes - 1; + break; + } + } + } + + std::ostream& operator << ( std::ostream& os, XmlEncode const& xmlEncode ) { + xmlEncode.encodeTo( os ); + return os; + } + + XmlWriter::ScopedElement::ScopedElement( XmlWriter* writer, XmlFormatting fmt ) + : m_writer( writer ), + m_fmt(fmt) + {} + + XmlWriter::ScopedElement::ScopedElement( ScopedElement&& other ) noexcept + : m_writer( other.m_writer ), + m_fmt(other.m_fmt) + { + other.m_writer = nullptr; + other.m_fmt = XmlFormatting::None; + } + XmlWriter::ScopedElement& XmlWriter::ScopedElement::operator=( ScopedElement&& other ) noexcept { + if ( m_writer ) { + m_writer->endElement(); + } + m_writer = other.m_writer; + other.m_writer = nullptr; + m_fmt = other.m_fmt; + other.m_fmt = XmlFormatting::None; + return *this; + } + + + XmlWriter::ScopedElement::~ScopedElement() { + if (m_writer) { + m_writer->endElement(m_fmt); + } + } + + XmlWriter::ScopedElement& XmlWriter::ScopedElement::writeText( std::string const& text, XmlFormatting fmt ) { + m_writer->writeText( text, fmt ); + return *this; + } + + XmlWriter::XmlWriter( std::ostream& os ) : m_os( os ) + { + writeDeclaration(); + } + + XmlWriter::~XmlWriter() { + while (!m_tags.empty()) { + endElement(); + } + newlineIfNecessary(); + } + + XmlWriter& XmlWriter::startElement( std::string const& name, XmlFormatting fmt ) { + ensureTagClosed(); + newlineIfNecessary(); + if (shouldIndent(fmt)) { + m_os << m_indent; + m_indent += " "; + } + m_os << '<' << name; + m_tags.push_back( name ); + m_tagIsOpen = true; + applyFormatting(fmt); + return *this; + } + + XmlWriter::ScopedElement XmlWriter::scopedElement( std::string const& name, XmlFormatting fmt ) { + ScopedElement scoped( this, fmt ); + startElement( name, fmt ); + return scoped; + } + + XmlWriter& XmlWriter::endElement(XmlFormatting fmt) { + m_indent = m_indent.substr(0, m_indent.size() - 2); + + if( m_tagIsOpen ) { + m_os << "/>"; + m_tagIsOpen = false; + } else { + newlineIfNecessary(); + if (shouldIndent(fmt)) { + m_os << m_indent; + } + m_os << ""; + } + m_os << std::flush; + applyFormatting(fmt); + m_tags.pop_back(); + return *this; + } + + XmlWriter& XmlWriter::writeAttribute( std::string const& name, std::string const& attribute ) { + if( !name.empty() && !attribute.empty() ) + m_os << ' ' << name << "=\"" << XmlEncode( attribute, XmlEncode::ForAttributes ) << '"'; + return *this; + } + + XmlWriter& XmlWriter::writeAttribute( std::string const& name, bool attribute ) { + m_os << ' ' << name << "=\"" << ( attribute ? "true" : "false" ) << '"'; + return *this; + } + + XmlWriter& XmlWriter::writeText( std::string const& text, XmlFormatting fmt) { + if( !text.empty() ){ + bool tagWasOpen = m_tagIsOpen; + ensureTagClosed(); + if (tagWasOpen && shouldIndent(fmt)) { + m_os << m_indent; + } + m_os << XmlEncode( text ); + applyFormatting(fmt); + } + return *this; + } + + XmlWriter& XmlWriter::writeComment( std::string const& text, XmlFormatting fmt) { + ensureTagClosed(); + if (shouldIndent(fmt)) { + m_os << m_indent; + } + m_os << ""; + applyFormatting(fmt); + return *this; + } + + void XmlWriter::writeStylesheetRef( std::string const& url ) { + m_os << "\n"; + } + + XmlWriter& XmlWriter::writeBlankLine() { + ensureTagClosed(); + m_os << '\n'; + return *this; + } + + void XmlWriter::ensureTagClosed() { + if( m_tagIsOpen ) { + m_os << '>' << std::flush; + newlineIfNecessary(); + m_tagIsOpen = false; + } + } + + void XmlWriter::applyFormatting(XmlFormatting fmt) { + m_needsNewline = shouldNewline(fmt); + } + + void XmlWriter::writeDeclaration() { + m_os << "\n"; + } + + void XmlWriter::newlineIfNecessary() { + if( m_needsNewline ) { + m_os << std::endl; + m_needsNewline = false; + } + } +} + + + +#include +#include +#include +#include +#include +#include +#include +#include + + +namespace Catch { +namespace { + + int32_t convert(float f) { + static_assert(sizeof(float) == sizeof(int32_t), "Important ULP matcher assumption violated"); + int32_t i; + std::memcpy(&i, &f, sizeof(f)); + return i; + } + + int64_t convert(double d) { + static_assert(sizeof(double) == sizeof(int64_t), "Important ULP matcher assumption violated"); + int64_t i; + std::memcpy(&i, &d, sizeof(d)); + return i; + } + + template + bool almostEqualUlps(FP lhs, FP rhs, uint64_t maxUlpDiff) { + // Comparison with NaN should always be false. + // This way we can rule it out before getting into the ugly details + if (Catch::isnan(lhs) || Catch::isnan(rhs)) { + return false; + } + + auto lc = convert(lhs); + auto rc = convert(rhs); + + if ((lc < 0) != (rc < 0)) { + // Potentially we can have +0 and -0 + return lhs == rhs; + } + + auto ulpDiff = std::abs(lc - rc); + return static_cast(ulpDiff) <= maxUlpDiff; + } + +#if defined(CATCH_CONFIG_GLOBAL_NEXTAFTER) + + float nextafter(float x, float y) { + return ::nextafterf(x, y); + } + + double nextafter(double x, double y) { + return ::nextafter(x, y); + } + +#endif // ^^^ CATCH_CONFIG_GLOBAL_NEXTAFTER ^^^ + +template +FP step(FP start, FP direction, uint64_t steps) { + for (uint64_t i = 0; i < steps; ++i) { +#if defined(CATCH_CONFIG_GLOBAL_NEXTAFTER) + start = Catch::nextafter(start, direction); +#else + start = std::nextafter(start, direction); +#endif + } + return start; +} + +// Performs equivalent check of std::fabs(lhs - rhs) <= margin +// But without the subtraction to allow for INFINITY in comparison +bool marginComparison(double lhs, double rhs, double margin) { + return (lhs + margin >= rhs) && (rhs + margin >= lhs); +} + +template +void write(std::ostream& out, FloatingPoint num) { + out << std::scientific + << std::setprecision(std::numeric_limits::max_digits10 - 1) + << num; +} + +} // end anonymous namespace + +namespace Matchers { +namespace Detail { + + enum class FloatingPointKind : uint8_t { + Float, + Double + }; + +} // end namespace Detail + + + WithinAbsMatcher::WithinAbsMatcher(double target, double margin) + :m_target{ target }, m_margin{ margin } { + CATCH_ENFORCE(margin >= 0, "Invalid margin: " << margin << '.' + << " Margin has to be non-negative."); + } + + // Performs equivalent check of std::fabs(lhs - rhs) <= margin + // But without the subtraction to allow for INFINITY in comparison + bool WithinAbsMatcher::match(double const& matchee) const { + return (matchee + m_margin >= m_target) && (m_target + m_margin >= matchee); + } + + std::string WithinAbsMatcher::describe() const { + return "is within " + ::Catch::Detail::stringify(m_margin) + " of " + ::Catch::Detail::stringify(m_target); + } + + + WithinUlpsMatcher::WithinUlpsMatcher(double target, uint64_t ulps, Detail::FloatingPointKind baseType) + :m_target{ target }, m_ulps{ ulps }, m_type{ baseType } { + CATCH_ENFORCE(m_type == Detail::FloatingPointKind::Double + || m_ulps < (std::numeric_limits::max)(), + "Provided ULP is impossibly large for a float comparison."); + } + +#if defined(__clang__) +#pragma clang diagnostic push +// Clang <3.5 reports on the default branch in the switch below +#pragma clang diagnostic ignored "-Wunreachable-code" +#endif + + bool WithinUlpsMatcher::match(double const& matchee) const { + switch (m_type) { + case Detail::FloatingPointKind::Float: + return almostEqualUlps(static_cast(matchee), static_cast(m_target), m_ulps); + case Detail::FloatingPointKind::Double: + return almostEqualUlps(matchee, m_target, m_ulps); + default: + CATCH_INTERNAL_ERROR( "Unknown Detail::FloatingPointKind value" ); + } + } + +#if defined(__clang__) +#pragma clang diagnostic pop +#endif + + std::string WithinUlpsMatcher::describe() const { + std::stringstream ret; + + ret << "is within " << m_ulps << " ULPs of "; + + if (m_type == Detail::FloatingPointKind::Float) { + write(ret, static_cast(m_target)); + ret << 'f'; + } else { + write(ret, m_target); + } + + ret << " (["; + if (m_type == Detail::FloatingPointKind::Double) { + write(ret, step(m_target, static_cast(-INFINITY), m_ulps)); + ret << ", "; + write(ret, step(m_target, static_cast( INFINITY), m_ulps)); + } else { + // We have to cast INFINITY to float because of MinGW, see #1782 + write(ret, step(static_cast(m_target), static_cast(-INFINITY), m_ulps)); + ret << ", "; + write(ret, step(static_cast(m_target), static_cast( INFINITY), m_ulps)); + } + ret << "])"; + + return ret.str(); + } + + WithinRelMatcher::WithinRelMatcher(double target, double epsilon): + m_target(target), + m_epsilon(epsilon){ + CATCH_ENFORCE(m_epsilon >= 0., "Relative comparison with epsilon < 0 does not make sense."); + CATCH_ENFORCE(m_epsilon < 1., "Relative comparison with epsilon >= 1 does not make sense."); + } + + bool WithinRelMatcher::match(double const& matchee) const { + const auto relMargin = m_epsilon * (std::max)(std::fabs(matchee), std::fabs(m_target)); + return marginComparison(matchee, m_target, + std::isinf(relMargin)? 0 : relMargin); + } + + std::string WithinRelMatcher::describe() const { + Catch::ReusableStringStream sstr; + sstr << "and " << m_target << " are within " << m_epsilon * 100. << "% of each other"; + return sstr.str(); + } + + +WithinUlpsMatcher WithinULP(double target, uint64_t maxUlpDiff) { + return WithinUlpsMatcher(target, maxUlpDiff, Detail::FloatingPointKind::Double); +} + +WithinUlpsMatcher WithinULP(float target, uint64_t maxUlpDiff) { + return WithinUlpsMatcher(target, maxUlpDiff, Detail::FloatingPointKind::Float); +} + +WithinAbsMatcher WithinAbs(double target, double margin) { + return WithinAbsMatcher(target, margin); +} + +WithinRelMatcher WithinRel(double target, double eps) { + return WithinRelMatcher(target, eps); +} + +WithinRelMatcher WithinRel(double target) { + return WithinRelMatcher(target, std::numeric_limits::epsilon() * 100); +} + +WithinRelMatcher WithinRel(float target, float eps) { + return WithinRelMatcher(target, eps); +} + +WithinRelMatcher WithinRel(float target) { + return WithinRelMatcher(target, std::numeric_limits::epsilon() * 100); +} + + +} // namespace Matchers +} // namespace Catch + + + +#include + +namespace Catch { +namespace Matchers { + + CasedString::CasedString( std::string const& str, CaseSensitive caseSensitivity ) + : m_caseSensitivity( caseSensitivity ), + m_str( adjustString( str ) ) + {} + std::string CasedString::adjustString( std::string const& str ) const { + return m_caseSensitivity == CaseSensitive::No + ? toLower( str ) + : str; + } + StringRef CasedString::caseSensitivitySuffix() const { + return m_caseSensitivity == CaseSensitive::Yes + ? StringRef() + : " (case insensitive)"_sr; + } + + + StringMatcherBase::StringMatcherBase( std::string const& operation, CasedString const& comparator ) + : m_comparator( comparator ), + m_operation( operation ) { + } + + std::string StringMatcherBase::describe() const { + std::string description; + description.reserve(5 + m_operation.size() + m_comparator.m_str.size() + + m_comparator.caseSensitivitySuffix().size()); + description += m_operation; + description += ": \""; + description += m_comparator.m_str; + description += "\""; + description += m_comparator.caseSensitivitySuffix(); + return description; + } + + StringEqualsMatcher::StringEqualsMatcher( CasedString const& comparator ) : StringMatcherBase( "equals", comparator ) {} + + bool StringEqualsMatcher::match( std::string const& source ) const { + return m_comparator.adjustString( source ) == m_comparator.m_str; + } + + + StringContainsMatcher::StringContainsMatcher( CasedString const& comparator ) : StringMatcherBase( "contains", comparator ) {} + + bool StringContainsMatcher::match( std::string const& source ) const { + return contains( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + + StartsWithMatcher::StartsWithMatcher( CasedString const& comparator ) : StringMatcherBase( "starts with", comparator ) {} + + bool StartsWithMatcher::match( std::string const& source ) const { + return startsWith( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + + EndsWithMatcher::EndsWithMatcher( CasedString const& comparator ) : StringMatcherBase( "ends with", comparator ) {} + + bool EndsWithMatcher::match( std::string const& source ) const { + return endsWith( m_comparator.adjustString( source ), m_comparator.m_str ); + } + + + + RegexMatcher::RegexMatcher(std::string regex, CaseSensitive caseSensitivity): m_regex(std::move(regex)), m_caseSensitivity(caseSensitivity) {} + + bool RegexMatcher::match(std::string const& matchee) const { + auto flags = std::regex::ECMAScript; // ECMAScript is the default syntax option anyway + if (m_caseSensitivity == CaseSensitive::No) { + flags |= std::regex::icase; + } + auto reg = std::regex(m_regex, flags); + return std::regex_match(matchee, reg); + } + + std::string RegexMatcher::describe() const { + return "matches " + ::Catch::Detail::stringify(m_regex) + ((m_caseSensitivity == CaseSensitive::Yes)? " case sensitively" : " case insensitively"); + } + + + StringEqualsMatcher Equals( std::string const& str, CaseSensitive caseSensitivity ) { + return StringEqualsMatcher( CasedString( str, caseSensitivity) ); + } + StringContainsMatcher Contains( std::string const& str, CaseSensitive caseSensitivity ) { + return StringContainsMatcher( CasedString( str, caseSensitivity) ); + } + EndsWithMatcher EndsWith( std::string const& str, CaseSensitive caseSensitivity ) { + return EndsWithMatcher( CasedString( str, caseSensitivity) ); + } + StartsWithMatcher StartsWith( std::string const& str, CaseSensitive caseSensitivity ) { + return StartsWithMatcher( CasedString( str, caseSensitivity) ); + } + + RegexMatcher Matches(std::string const& regex, CaseSensitive caseSensitivity) { + return RegexMatcher(regex, caseSensitivity); + } + +} // namespace Matchers +} // namespace Catch + + + +namespace Catch { +namespace Matchers { + MatcherGenericBase::~MatcherGenericBase() = default; + + namespace Detail { + + std::string describe_multi_matcher(StringRef combine, std::string const* descriptions_begin, std::string const* descriptions_end) { + std::string description; + std::size_t combined_size = 4; + for ( auto desc = descriptions_begin; desc != descriptions_end; ++desc ) { + combined_size += desc->size(); + } + combined_size += (descriptions_end - descriptions_begin - 1) * combine.size(); + + description.reserve(combined_size); + + description += "( "; + bool first = true; + for( auto desc = descriptions_begin; desc != descriptions_end; ++desc ) { + if( first ) + first = false; + else + description += combine; + description += *desc; + } + description += " )"; + return description; + } + + } // namespace Detail +} // namespace Matchers +} // namespace Catch + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small matcher-related TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + +////////////////////////////////////////////// +// vvv formerly catch_matchers_impl.cpp vvv // +////////////////////////////////////////////// + +namespace Catch { + + // This is the general overload that takes a any string matcher + // There is another overload, in catch_assertionhandler.h/.cpp, that only takes a string and infers + // the Equals matcher (so the header does not mention matchers) + void handleExceptionMatchExpr( AssertionHandler& handler, StringMatcher const& matcher, StringRef const& matcherString ) { + std::string exceptionMessage = Catch::translateActiveException(); + MatchExpr expr( std::move(exceptionMessage), matcher, matcherString ); + handler.handleExpr( expr ); + } + +} // namespace Catch + + +////////////////////////////////////////////////////////////// +// vvv formerly catch_matchers_container_properties.cpp vvv // +////////////////////////////////////////////////////////////// + +namespace Catch { +namespace Matchers { + + std::string IsEmptyMatcher::describe() const { + return "is empty"; + } + + std::string HasSizeMatcher::describe() const { + ReusableStringStream sstr; + sstr << "has size == " << m_target_size; + return sstr.str(); + } + + IsEmptyMatcher IsEmpty() { + return {}; + } + + HasSizeMatcher SizeIs(std::size_t sz) { + return HasSizeMatcher{ sz }; + } + +} // end namespace Matchers +} // end namespace Catch + + + +///////////////////////////////////////// +// vvv formerly catch_matchers.cpp vvv // +///////////////////////////////////////// + + +namespace Catch { +namespace Matchers { + + std::string MatcherUntypedBase::toString() const { + if (m_cachedToString.empty()) { + m_cachedToString = describe(); + } + return m_cachedToString; + } + + MatcherUntypedBase::~MatcherUntypedBase() = default; + +} // namespace Matchers +} // namespace Catch + + + +/////////////////////////////////////////////////// +// vvv formerly catch_matchers_predicate.cpp vvv // +/////////////////////////////////////////////////// + +std::string Catch::Matchers::Detail::finalizeDescription(const std::string& desc) { + if (desc.empty()) { + return "matches undescribed predicate"; + } else { + return "matches predicate: \"" + desc + '"'; + } +} + + + + + +/////////////////////////////////////////////////// +// vvv formerly catch_matchers_exception.cpp vvv // +/////////////////////////////////////////////////// + +namespace Catch { +namespace Matchers { + +bool ExceptionMessageMatcher::match(std::exception const& ex) const { + return ex.what() == m_message; +} + +std::string ExceptionMessageMatcher::describe() const { + return "exception message matches \"" + m_message + "\""; +} + +ExceptionMessageMatcher Message(std::string const& message) { + return ExceptionMessageMatcher(message); +} + +} // namespace Matchers +} // namespace Catch + + + +#include + +namespace Catch { + + AutomakeReporter::~AutomakeReporter() {} + + void AutomakeReporter::testCaseEnded(TestCaseStats const& _testCaseStats) { + // Possible values to emit are PASS, XFAIL, SKIP, FAIL, XPASS and ERROR. + stream << ":test-result: "; + if (_testCaseStats.totals.assertions.allPassed()) { + stream << "PASS"; + } else if (_testCaseStats.totals.assertions.allOk()) { + stream << "XFAIL"; + } else { + stream << "FAIL"; + } + stream << ' ' << _testCaseStats.testInfo->name << '\n'; + StreamingReporterBase::testCaseEnded(_testCaseStats); + } + + void AutomakeReporter::skipTest(TestCaseInfo const& testInfo) { + stream << ":test-result: SKIP " << testInfo.name << '\n'; + } + +} // end namespace Catch + + +/** \file + * This is a special TU that combines what would otherwise be a very + * small reporter-related TUs into one bigger TU. + * + * The reason for this is compilation performance improvements by + * avoiding reparsing headers for many small TUs, instead having this + * one TU include bit more, but having it all parsed only once. + * + * To avoid heavy-tail problem with compilation times, each "subpart" + * of Catch2 has its own combined TU like this. + */ + + +#include +#include +#include + +namespace Catch { + + // Because formatting using c++ streams is stateful, drop down to C is + // required Alternatively we could use stringstream, but its performance + // is... not good. + std::string getFormattedDuration( double duration ) { + // Max exponent + 1 is required to represent the whole part + // + 1 for decimal point + // + 3 for the 3 decimal places + // + 1 for null terminator + const std::size_t maxDoubleSize = DBL_MAX_10_EXP + 1 + 1 + 3 + 1; + char buffer[maxDoubleSize]; + + // Save previous errno, to prevent sprintf from overwriting it + ErrnoGuard guard; +#ifdef _MSC_VER + sprintf_s( buffer, "%.3f", duration ); +#else + std::sprintf( buffer, "%.3f", duration ); +#endif + return std::string( buffer ); + } + + bool shouldShowDuration( IConfig const& config, double duration ) { + if ( config.showDurations() == ShowDurations::Always ) { + return true; + } + if ( config.showDurations() == ShowDurations::Never ) { + return false; + } + const double min = config.minDuration(); + return min >= 0 && duration >= min; + } + + std::string serializeFilters( std::vector const& filters ) { + // We add a ' ' separator between each filter + size_t serialized_size = filters.size() - 1; + for (auto const& filter : filters) { + serialized_size += filter.size(); + } + + std::string serialized; + serialized.reserve(serialized_size); + bool first = true; + + for (auto const& filter : filters) { + if (!first) { + serialized.push_back(' '); + } + first = false; + serialized.append(filter); + } + + return serialized; + } + + std::ostream& operator<<( std::ostream& out, lineOfChars value ) { + for ( size_t idx = 0; idx < CATCH_CONFIG_CONSOLE_WIDTH - 1; ++idx ) { + out.put( value.c ); + } + return out; + } + +} // namespace Catch + + + +namespace Catch { + void EventListenerBase::assertionStarting( AssertionInfo const& ) {} + + bool EventListenerBase::assertionEnded( AssertionStats const& ) { + return false; + } + void + EventListenerBase::listReporters( std::vector const&, + IConfig const& ) {} + void EventListenerBase::listTests( std::vector const&, + IConfig const& ) {} + void EventListenerBase::listTags( std::vector const&, + IConfig const& ) {} + void EventListenerBase::noMatchingTestCases( std::string const& ) {} + void EventListenerBase::testRunStarting( TestRunInfo const& ) {} + void EventListenerBase::testGroupStarting( GroupInfo const& ) {} + void EventListenerBase::testCaseStarting( TestCaseInfo const& ) {} + void EventListenerBase::sectionStarting( SectionInfo const& ) {} + void EventListenerBase::sectionEnded( SectionStats const& ) {} + void EventListenerBase::testCaseEnded( TestCaseStats const& ) {} + void EventListenerBase::testGroupEnded( TestGroupStats const& ) {} + void EventListenerBase::testRunEnded( TestRunStats const& ) {} + void EventListenerBase::skipTest( TestCaseInfo const& ) {} +} // namespace Catch + + + + +#include + +namespace { + + // Colour::LightGrey + Catch::Colour::Code dimColour() { return Catch::Colour::FileName; } + + Catch::StringRef bothOrAll( std::size_t count ) { + switch (count) { + case 1: + return Catch::StringRef{}; + case 2: + return "both "_catch_sr; + default: + return "all "_catch_sr; + } + } + +} // anon namespace + + +namespace Catch { +namespace { + +#ifdef CATCH_PLATFORM_MAC + static constexpr Catch::StringRef compactFailedString = "FAILED"_sr; + static constexpr Catch::StringRef compactPassedString = "PASSED"_sr; +#else + static constexpr Catch::StringRef compactFailedString = "failed"_sr; + static constexpr Catch::StringRef compactPassedString = "passed"_sr; +#endif + +// Colour, message variants: +// - white: No tests ran. +// - red: Failed [both/all] N test cases, failed [both/all] M assertions. +// - white: Passed [both/all] N test cases (no assertions). +// - red: Failed N tests cases, failed M assertions. +// - green: Passed [both/all] N tests cases with M assertions. +void printTotals(std::ostream& out, const Totals& totals) { + if (totals.testCases.total() == 0) { + out << "No tests ran."; + } else if (totals.testCases.failed == totals.testCases.total()) { + Colour colour(Colour::ResultError); + const StringRef qualify_assertions_failed = + totals.assertions.failed == totals.assertions.total() ? + bothOrAll(totals.assertions.failed) : StringRef{}; + out << + "Failed " << bothOrAll(totals.testCases.failed) + << pluralise(totals.testCases.failed, "test case") << ", " + "failed " << qualify_assertions_failed << + pluralise(totals.assertions.failed, "assertion") << '.'; + } else if (totals.assertions.total() == 0) { + out << + "Passed " << bothOrAll(totals.testCases.total()) + << pluralise(totals.testCases.total(), "test case") + << " (no assertions)."; + } else if (totals.assertions.failed) { + Colour colour(Colour::ResultError); + out << + "Failed " << pluralise(totals.testCases.failed, "test case") << ", " + "failed " << pluralise(totals.assertions.failed, "assertion") << '.'; + } else { + Colour colour(Colour::ResultSuccess); + out << + "Passed " << bothOrAll(totals.testCases.passed) + << pluralise(totals.testCases.passed, "test case") << + " with " << pluralise(totals.assertions.passed, "assertion") << '.'; + } +} + +// Implementation of CompactReporter formatting +class AssertionPrinter { +public: + AssertionPrinter& operator= (AssertionPrinter const&) = delete; + AssertionPrinter(AssertionPrinter const&) = delete; + AssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, bool _printInfoMessages) + : stream(_stream) + , result(_stats.assertionResult) + , messages(_stats.infoMessages) + , itMessage(_stats.infoMessages.begin()) + , printInfoMessages(_printInfoMessages) {} + + void print() { + printSourceInfo(); + + itMessage = messages.begin(); + + switch (result.getResultType()) { + case ResultWas::Ok: + printResultType(Colour::ResultSuccess, compactPassedString); + printOriginalExpression(); + printReconstructedExpression(); + if (!result.hasExpression()) + printRemainingMessages(Colour::None); + else + printRemainingMessages(); + break; + case ResultWas::ExpressionFailed: + if (result.isOk()) + printResultType(Colour::ResultSuccess, compactFailedString + " - but was ok"_sr); + else + printResultType(Colour::Error, compactFailedString); + printOriginalExpression(); + printReconstructedExpression(); + printRemainingMessages(); + break; + case ResultWas::ThrewException: + printResultType(Colour::Error, compactFailedString); + printIssue("unexpected exception with message:"); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::FatalErrorCondition: + printResultType(Colour::Error, compactFailedString); + printIssue("fatal error condition with message:"); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::DidntThrowException: + printResultType(Colour::Error, compactFailedString); + printIssue("expected exception, got none"); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::Info: + printResultType(Colour::None, "info"_sr); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::Warning: + printResultType(Colour::None, "warning"_sr); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::ExplicitFailure: + printResultType(Colour::Error, compactFailedString); + printIssue("explicitly"); + printRemainingMessages(Colour::None); + break; + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + printResultType(Colour::Error, "** internal error **"); + break; + } + } + +private: + void printSourceInfo() const { + Colour colourGuard(Colour::FileName); + stream << result.getSourceInfo() << ':'; + } + + void printResultType(Colour::Code colour, StringRef passOrFail) const { + if (!passOrFail.empty()) { + { + Colour colourGuard(colour); + stream << ' ' << passOrFail; + } + stream << ':'; + } + } + + void printIssue(char const* issue) const { + stream << ' ' << issue; + } + + void printExpressionWas() { + if (result.hasExpression()) { + stream << ';'; + { + Colour colour(dimColour()); + stream << " expression was:"; + } + printOriginalExpression(); + } + } + + void printOriginalExpression() const { + if (result.hasExpression()) { + stream << ' ' << result.getExpression(); + } + } + + void printReconstructedExpression() const { + if (result.hasExpandedExpression()) { + { + Colour colour(dimColour()); + stream << " for: "; + } + stream << result.getExpandedExpression(); + } + } + + void printMessage() { + if (itMessage != messages.end()) { + stream << " '" << itMessage->message << '\''; + ++itMessage; + } + } + + void printRemainingMessages(Colour::Code colour = dimColour()) { + if (itMessage == messages.end()) + return; + + const auto itEnd = messages.cend(); + const auto N = static_cast(std::distance(itMessage, itEnd)); + + { + Colour colourGuard(colour); + stream << " with " << pluralise(N, "message") << ':'; + } + + while (itMessage != itEnd) { + // If this assertion is a warning ignore any INFO messages + if (printInfoMessages || itMessage->type != ResultWas::Info) { + printMessage(); + if (itMessage != itEnd) { + Colour colourGuard(dimColour()); + stream << " and"; + } + continue; + } + ++itMessage; + } + } + +private: + std::ostream& stream; + AssertionResult const& result; + std::vector messages; + std::vector::const_iterator itMessage; + bool printInfoMessages; +}; + +} // anon namespace + + std::string CompactReporter::getDescription() { + return "Reports test results on a single line, suitable for IDEs"; + } + + void CompactReporter::noMatchingTestCases( std::string const& spec ) { + stream << "No test cases matched '" << spec << '\'' << std::endl; + } + + void CompactReporter::assertionStarting( AssertionInfo const& ) {} + + bool CompactReporter::assertionEnded( AssertionStats const& _assertionStats ) { + AssertionResult const& result = _assertionStats.assertionResult; + + bool printInfoMessages = true; + + // Drop out if result was successful and we're not printing those + if( !m_config->includeSuccessfulResults() && result.isOk() ) { + if( result.getResultType() != ResultWas::Warning ) + return false; + printInfoMessages = false; + } + + AssertionPrinter printer( stream, _assertionStats, printInfoMessages ); + printer.print(); + + stream << std::endl; + return true; + } + + void CompactReporter::sectionEnded(SectionStats const& _sectionStats) { + double dur = _sectionStats.durationInSeconds; + if ( shouldShowDuration( *m_config, dur ) ) { + stream << getFormattedDuration( dur ) << " s: " << _sectionStats.sectionInfo.name << std::endl; + } + } + + void CompactReporter::testRunEnded( TestRunStats const& _testRunStats ) { + printTotals( stream, _testRunStats.totals ); + stream << '\n' << std::endl; + StreamingReporterBase::testRunEnded( _testRunStats ); + } + + CompactReporter::~CompactReporter() {} + +} // end namespace Catch + + + + +#include +#include + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4061) // Not all labels are EXPLICITLY handled in switch + // Note that 4062 (not all labels are handled and default is missing) is enabled +#endif + +#if defined(__clang__) +# pragma clang diagnostic push +// For simplicity, benchmarking-only helpers are always enabled +# pragma clang diagnostic ignored "-Wunused-function" +#endif + + + +namespace Catch { + +namespace { + +// Formatter impl for ConsoleReporter +class ConsoleAssertionPrinter { +public: + ConsoleAssertionPrinter& operator= (ConsoleAssertionPrinter const&) = delete; + ConsoleAssertionPrinter(ConsoleAssertionPrinter const&) = delete; + ConsoleAssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, bool _printInfoMessages) + : stream(_stream), + stats(_stats), + result(_stats.assertionResult), + colour(Colour::None), + message(result.getMessage()), + messages(_stats.infoMessages), + printInfoMessages(_printInfoMessages) { + switch (result.getResultType()) { + case ResultWas::Ok: + colour = Colour::Success; + passOrFail = "PASSED"; + //if( result.hasMessage() ) + if (_stats.infoMessages.size() == 1) + messageLabel = "with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "with messages"; + break; + case ResultWas::ExpressionFailed: + if (result.isOk()) { + colour = Colour::Success; + passOrFail = "FAILED - but was ok"; + } else { + colour = Colour::Error; + passOrFail = "FAILED"; + } + if (_stats.infoMessages.size() == 1) + messageLabel = "with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "with messages"; + break; + case ResultWas::ThrewException: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "due to unexpected exception with "; + if (_stats.infoMessages.size() == 1) + messageLabel += "message"; + if (_stats.infoMessages.size() > 1) + messageLabel += "messages"; + break; + case ResultWas::FatalErrorCondition: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "due to a fatal error condition"; + break; + case ResultWas::DidntThrowException: + colour = Colour::Error; + passOrFail = "FAILED"; + messageLabel = "because no exception was thrown where one was expected"; + break; + case ResultWas::Info: + messageLabel = "info"; + break; + case ResultWas::Warning: + messageLabel = "warning"; + break; + case ResultWas::ExplicitFailure: + passOrFail = "FAILED"; + colour = Colour::Error; + if (_stats.infoMessages.size() == 1) + messageLabel = "explicitly with message"; + if (_stats.infoMessages.size() > 1) + messageLabel = "explicitly with messages"; + break; + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + passOrFail = "** internal error **"; + colour = Colour::Error; + break; + } + } + + void print() const { + printSourceInfo(); + if (stats.totals.assertions.total() > 0) { + printResultType(); + printOriginalExpression(); + printReconstructedExpression(); + } else { + stream << '\n'; + } + printMessage(); + } + +private: + void printResultType() const { + if (!passOrFail.empty()) { + Colour colourGuard(colour); + stream << passOrFail << ":\n"; + } + } + void printOriginalExpression() const { + if (result.hasExpression()) { + Colour colourGuard(Colour::OriginalExpression); + stream << " "; + stream << result.getExpressionInMacro(); + stream << '\n'; + } + } + void printReconstructedExpression() const { + if (result.hasExpandedExpression()) { + stream << "with expansion:\n"; + Colour colourGuard(Colour::ReconstructedExpression); + stream << TextFlow::Column(result.getExpandedExpression()).indent(2) << '\n'; + } + } + void printMessage() const { + if (!messageLabel.empty()) + stream << messageLabel << ':' << '\n'; + for (auto const& msg : messages) { + // If this assertion is a warning ignore any INFO messages + if (printInfoMessages || msg.type != ResultWas::Info) + stream << TextFlow::Column(msg.message).indent(2) << '\n'; + } + } + void printSourceInfo() const { + Colour colourGuard(Colour::FileName); + stream << result.getSourceInfo() << ": "; + } + + std::ostream& stream; + AssertionStats const& stats; + AssertionResult const& result; + Colour::Code colour; + std::string passOrFail; + std::string messageLabel; + std::string message; + std::vector messages; + bool printInfoMessages; +}; + +std::size_t makeRatio(std::size_t number, std::size_t total) { + std::size_t ratio = total > 0 ? CATCH_CONFIG_CONSOLE_WIDTH * number / total : 0; + return (ratio == 0 && number > 0) ? 1 : ratio; +} + +std::size_t& findMax(std::size_t& i, std::size_t& j, std::size_t& k) { + if (i > j && i > k) + return i; + else if (j > k) + return j; + else + return k; +} + +enum class Justification { Left, Right }; + +struct ColumnInfo { + std::string name; + int width; + Justification justification; +}; +struct ColumnBreak {}; +struct RowBreak {}; + +class Duration { + enum class Unit { + Auto, + Nanoseconds, + Microseconds, + Milliseconds, + Seconds, + Minutes + }; + static const uint64_t s_nanosecondsInAMicrosecond = 1000; + static const uint64_t s_nanosecondsInAMillisecond = 1000 * s_nanosecondsInAMicrosecond; + static const uint64_t s_nanosecondsInASecond = 1000 * s_nanosecondsInAMillisecond; + static const uint64_t s_nanosecondsInAMinute = 60 * s_nanosecondsInASecond; + + double m_inNanoseconds; + Unit m_units; + +public: + explicit Duration(double inNanoseconds, Unit units = Unit::Auto) + : m_inNanoseconds(inNanoseconds), + m_units(units) { + if (m_units == Unit::Auto) { + if (m_inNanoseconds < s_nanosecondsInAMicrosecond) + m_units = Unit::Nanoseconds; + else if (m_inNanoseconds < s_nanosecondsInAMillisecond) + m_units = Unit::Microseconds; + else if (m_inNanoseconds < s_nanosecondsInASecond) + m_units = Unit::Milliseconds; + else if (m_inNanoseconds < s_nanosecondsInAMinute) + m_units = Unit::Seconds; + else + m_units = Unit::Minutes; + } + + } + + auto value() const -> double { + switch (m_units) { + case Unit::Microseconds: + return m_inNanoseconds / static_cast(s_nanosecondsInAMicrosecond); + case Unit::Milliseconds: + return m_inNanoseconds / static_cast(s_nanosecondsInAMillisecond); + case Unit::Seconds: + return m_inNanoseconds / static_cast(s_nanosecondsInASecond); + case Unit::Minutes: + return m_inNanoseconds / static_cast(s_nanosecondsInAMinute); + default: + return m_inNanoseconds; + } + } + StringRef unitsAsString() const { + switch (m_units) { + case Unit::Nanoseconds: + return "ns"_sr; + case Unit::Microseconds: + return "us"_sr; + case Unit::Milliseconds: + return "ms"_sr; + case Unit::Seconds: + return "s"_sr; + case Unit::Minutes: + return "m"_sr; + default: + return "** internal error **"_sr; + } + + } + friend auto operator << (std::ostream& os, Duration const& duration) -> std::ostream& { + return os << duration.value() << ' ' << duration.unitsAsString(); + } +}; +} // end anon namespace + +class TablePrinter { + std::ostream& m_os; + std::vector m_columnInfos; + ReusableStringStream m_oss; + int m_currentColumn = -1; + bool m_isOpen = false; + +public: + TablePrinter( std::ostream& os, std::vector columnInfos ) + : m_os( os ), + m_columnInfos( std::move( columnInfos ) ) {} + + auto columnInfos() const -> std::vector const& { + return m_columnInfos; + } + + void open() { + if (!m_isOpen) { + m_isOpen = true; + *this << RowBreak(); + + TextFlow::Columns headerCols; + auto spacer = TextFlow::Spacer(2); + for (auto const& info : m_columnInfos) { + headerCols += TextFlow::Column(info.name).width(static_cast(info.width - 2)); + headerCols += spacer; + } + m_os << headerCols << '\n'; + + m_os << lineOfChars('-') << '\n'; + } + } + void close() { + if (m_isOpen) { + *this << RowBreak(); + m_os << std::endl; + m_isOpen = false; + } + } + + template + friend TablePrinter& operator << (TablePrinter& tp, T const& value) { + tp.m_oss << value; + return tp; + } + + friend TablePrinter& operator << (TablePrinter& tp, ColumnBreak) { + auto colStr = tp.m_oss.str(); + const auto strSize = colStr.size(); + tp.m_oss.str(""); + tp.open(); + if (tp.m_currentColumn == static_cast(tp.m_columnInfos.size() - 1)) { + tp.m_currentColumn = -1; + tp.m_os << '\n'; + } + tp.m_currentColumn++; + + auto colInfo = tp.m_columnInfos[tp.m_currentColumn]; + auto padding = (strSize + 1 < static_cast(colInfo.width)) + ? std::string(colInfo.width - (strSize + 1), ' ') + : std::string(); + if (colInfo.justification == Justification::Left) + tp.m_os << colStr << padding << ' '; + else + tp.m_os << padding << colStr << ' '; + return tp; + } + + friend TablePrinter& operator << (TablePrinter& tp, RowBreak) { + if (tp.m_currentColumn > 0) { + tp.m_os << '\n'; + tp.m_currentColumn = -1; + } + return tp; + } +}; + +ConsoleReporter::ConsoleReporter(ReporterConfig const& config) + : StreamingReporterBase(config), + m_tablePrinter(new TablePrinter(config.stream(), + [&config]() -> std::vector { + if (config.fullConfig()->benchmarkNoAnalysis()) + { + return{ + { "benchmark name", CATCH_CONFIG_CONSOLE_WIDTH - 43, Justification::Left }, + { " samples", 14, Justification::Right }, + { " iterations", 14, Justification::Right }, + { " mean", 14, Justification::Right } + }; + } + else + { + return{ + { "benchmark name", CATCH_CONFIG_CONSOLE_WIDTH - 43, Justification::Left }, + { "samples mean std dev", 14, Justification::Right }, + { "iterations low mean low std dev", 14, Justification::Right }, + { "estimated high mean high std dev", 14, Justification::Right } + }; + } + }())) {} +ConsoleReporter::~ConsoleReporter() = default; + +std::string ConsoleReporter::getDescription() { + return "Reports test results as plain lines of text"; +} + +void ConsoleReporter::noMatchingTestCases(std::string const& spec) { + stream << "No test cases matched '" << spec << '\'' << std::endl; +} + +void ConsoleReporter::reportInvalidArguments(std::string const&arg){ + stream << "Invalid Filter: " << arg << std::endl; +} + +void ConsoleReporter::assertionStarting(AssertionInfo const&) {} + +bool ConsoleReporter::assertionEnded(AssertionStats const& _assertionStats) { + AssertionResult const& result = _assertionStats.assertionResult; + + bool includeResults = m_config->includeSuccessfulResults() || !result.isOk(); + + // Drop out if result was successful but we're not printing them. + if (!includeResults && result.getResultType() != ResultWas::Warning) + return false; + + lazyPrint(); + + ConsoleAssertionPrinter printer(stream, _assertionStats, includeResults); + printer.print(); + stream << std::endl; + return true; +} + +void ConsoleReporter::sectionStarting(SectionInfo const& _sectionInfo) { + m_tablePrinter->close(); + m_headerPrinted = false; + StreamingReporterBase::sectionStarting(_sectionInfo); +} +void ConsoleReporter::sectionEnded(SectionStats const& _sectionStats) { + m_tablePrinter->close(); + if (_sectionStats.missingAssertions) { + lazyPrint(); + Colour colour(Colour::ResultError); + if (m_sectionStack.size() > 1) + stream << "\nNo assertions in section"; + else + stream << "\nNo assertions in test case"; + stream << " '" << _sectionStats.sectionInfo.name << "'\n" << std::endl; + } + double dur = _sectionStats.durationInSeconds; + if (shouldShowDuration(*m_config, dur)) { + stream << getFormattedDuration(dur) << " s: " << _sectionStats.sectionInfo.name << std::endl; + } + if (m_headerPrinted) { + m_headerPrinted = false; + } + StreamingReporterBase::sectionEnded(_sectionStats); +} + +void ConsoleReporter::benchmarkPreparing(std::string const& name) { + lazyPrintWithoutClosingBenchmarkTable(); + + auto nameCol = TextFlow::Column(name).width(static_cast(m_tablePrinter->columnInfos()[0].width - 2)); + + bool firstLine = true; + for (auto line : nameCol) { + if (!firstLine) + (*m_tablePrinter) << ColumnBreak() << ColumnBreak() << ColumnBreak(); + else + firstLine = false; + + (*m_tablePrinter) << line << ColumnBreak(); + } +} + +void ConsoleReporter::benchmarkStarting(BenchmarkInfo const& info) { + (*m_tablePrinter) << info.samples << ColumnBreak() + << info.iterations << ColumnBreak(); + if (!m_config->benchmarkNoAnalysis()) + (*m_tablePrinter) << Duration(info.estimatedDuration) << ColumnBreak(); +} +void ConsoleReporter::benchmarkEnded(BenchmarkStats<> const& stats) { + if (m_config->benchmarkNoAnalysis()) + { + (*m_tablePrinter) << Duration(stats.mean.point.count()) << ColumnBreak(); + } + else + { + (*m_tablePrinter) << ColumnBreak() + << Duration(stats.mean.point.count()) << ColumnBreak() + << Duration(stats.mean.lower_bound.count()) << ColumnBreak() + << Duration(stats.mean.upper_bound.count()) << ColumnBreak() << ColumnBreak() + << Duration(stats.standardDeviation.point.count()) << ColumnBreak() + << Duration(stats.standardDeviation.lower_bound.count()) << ColumnBreak() + << Duration(stats.standardDeviation.upper_bound.count()) << ColumnBreak() << ColumnBreak() << ColumnBreak() << ColumnBreak() << ColumnBreak(); + } +} + +void ConsoleReporter::benchmarkFailed(std::string const& error) { + Colour colour(Colour::Red); + (*m_tablePrinter) + << "Benchmark failed (" << error << ')' + << ColumnBreak() << RowBreak(); +} + +void ConsoleReporter::testCaseEnded(TestCaseStats const& _testCaseStats) { + m_tablePrinter->close(); + StreamingReporterBase::testCaseEnded(_testCaseStats); + m_headerPrinted = false; +} +void ConsoleReporter::testGroupEnded(TestGroupStats const& _testGroupStats) { + if (currentGroupInfo.used) { + printSummaryDivider(); + stream << "Summary for group '" << _testGroupStats.groupInfo.name << "':\n"; + printTotals(_testGroupStats.totals); + stream << '\n' << std::endl; + } + StreamingReporterBase::testGroupEnded(_testGroupStats); +} +void ConsoleReporter::testRunEnded(TestRunStats const& _testRunStats) { + printTotalsDivider(_testRunStats.totals); + printTotals(_testRunStats.totals); + stream << std::endl; + StreamingReporterBase::testRunEnded(_testRunStats); +} +void ConsoleReporter::testRunStarting(TestRunInfo const& _testInfo) { + StreamingReporterBase::testRunStarting(_testInfo); + printTestFilters(); +} + +void ConsoleReporter::lazyPrint() { + + m_tablePrinter->close(); + lazyPrintWithoutClosingBenchmarkTable(); +} + +void ConsoleReporter::lazyPrintWithoutClosingBenchmarkTable() { + + if (!currentTestRunInfo.used) + lazyPrintRunInfo(); + if (!currentGroupInfo.used) + lazyPrintGroupInfo(); + + if (!m_headerPrinted) { + printTestCaseAndSectionHeader(); + m_headerPrinted = true; + } +} +void ConsoleReporter::lazyPrintRunInfo() { + stream << '\n' << lineOfChars('~') << '\n'; + Colour colour(Colour::SecondaryText); + stream << currentTestRunInfo->name + << " is a Catch v" << libraryVersion() << " host application.\n" + << "Run with -? for options\n\n"; + + if (m_config->rngSeed() != 0) + stream << "Randomness seeded to: " << m_config->rngSeed() << "\n\n"; + + currentTestRunInfo.used = true; +} +void ConsoleReporter::lazyPrintGroupInfo() { + if (!currentGroupInfo->name.empty() && currentGroupInfo->groupsCounts > 1) { + printClosedHeader("Group: " + currentGroupInfo->name); + currentGroupInfo.used = true; + } +} +void ConsoleReporter::printTestCaseAndSectionHeader() { + assert(!m_sectionStack.empty()); + printOpenHeader(currentTestCaseInfo->name); + + if (m_sectionStack.size() > 1) { + Colour colourGuard(Colour::Headers); + + auto + it = m_sectionStack.begin() + 1, // Skip first section (test case) + itEnd = m_sectionStack.end(); + for (; it != itEnd; ++it) + printHeaderString(it->name, 2); + } + + SourceLineInfo lineInfo = m_sectionStack.back().lineInfo; + + + stream << lineOfChars('-') << '\n'; + Colour colourGuard(Colour::FileName); + stream << lineInfo << '\n'; + stream << lineOfChars('.') << '\n' << std::endl; +} + +void ConsoleReporter::printClosedHeader(std::string const& _name) { + printOpenHeader(_name); + stream << lineOfChars('.') << '\n'; +} +void ConsoleReporter::printOpenHeader(std::string const& _name) { + stream << lineOfChars('-') << '\n'; + { + Colour colourGuard(Colour::Headers); + printHeaderString(_name); + } +} + +// if string has a : in first line will set indent to follow it on +// subsequent lines +void ConsoleReporter::printHeaderString(std::string const& _string, std::size_t indent) { + std::size_t i = _string.find(": "); + if (i != std::string::npos) + i += 2; + else + i = 0; + stream << TextFlow::Column(_string).indent(indent + i).initialIndent(indent) << '\n'; +} + +struct SummaryColumn { + + SummaryColumn( std::string _label, Colour::Code _colour ) + : label( std::move( _label ) ), + colour( _colour ) {} + SummaryColumn addRow( std::size_t count ) { + ReusableStringStream rss; + rss << count; + std::string row = rss.str(); + for (auto& oldRow : rows) { + while (oldRow.size() < row.size()) + oldRow = ' ' + oldRow; + while (oldRow.size() > row.size()) + row = ' ' + row; + } + rows.push_back(row); + return *this; + } + + std::string label; + Colour::Code colour; + std::vector rows; + +}; + +void ConsoleReporter::printTotals( Totals const& totals ) { + if (totals.testCases.total() == 0) { + stream << Colour(Colour::Warning) << "No tests ran\n"; + } else if (totals.assertions.total() > 0 && totals.testCases.allPassed()) { + stream << Colour(Colour::ResultSuccess) << "All tests passed"; + stream << " (" + << pluralise(totals.assertions.passed, "assertion") << " in " + << pluralise(totals.testCases.passed, "test case") << ')' + << '\n'; + } else { + + std::vector columns; + columns.push_back(SummaryColumn("", Colour::None) + .addRow(totals.testCases.total()) + .addRow(totals.assertions.total())); + columns.push_back(SummaryColumn("passed", Colour::Success) + .addRow(totals.testCases.passed) + .addRow(totals.assertions.passed)); + columns.push_back(SummaryColumn("failed", Colour::ResultError) + .addRow(totals.testCases.failed) + .addRow(totals.assertions.failed)); + columns.push_back(SummaryColumn("failed as expected", Colour::ResultExpectedFailure) + .addRow(totals.testCases.failedButOk) + .addRow(totals.assertions.failedButOk)); + + printSummaryRow("test cases", columns, 0); + printSummaryRow("assertions", columns, 1); + } +} +void ConsoleReporter::printSummaryRow(std::string const& label, std::vector const& cols, std::size_t row) { + for (auto col : cols) { + std::string value = col.rows[row]; + if (col.label.empty()) { + stream << label << ": "; + if (value != "0") + stream << value; + else + stream << Colour(Colour::Warning) << "- none -"; + } else if (value != "0") { + stream << Colour(Colour::LightGrey) << " | "; + stream << Colour(col.colour) + << value << ' ' << col.label; + } + } + stream << '\n'; +} + +void ConsoleReporter::printTotalsDivider(Totals const& totals) { + if (totals.testCases.total() > 0) { + std::size_t failedRatio = makeRatio(totals.testCases.failed, totals.testCases.total()); + std::size_t failedButOkRatio = makeRatio(totals.testCases.failedButOk, totals.testCases.total()); + std::size_t passedRatio = makeRatio(totals.testCases.passed, totals.testCases.total()); + while (failedRatio + failedButOkRatio + passedRatio < CATCH_CONFIG_CONSOLE_WIDTH - 1) + findMax(failedRatio, failedButOkRatio, passedRatio)++; + while (failedRatio + failedButOkRatio + passedRatio > CATCH_CONFIG_CONSOLE_WIDTH - 1) + findMax(failedRatio, failedButOkRatio, passedRatio)--; + + stream << Colour(Colour::Error) << std::string(failedRatio, '='); + stream << Colour(Colour::ResultExpectedFailure) << std::string(failedButOkRatio, '='); + if (totals.testCases.allPassed()) + stream << Colour(Colour::ResultSuccess) << std::string(passedRatio, '='); + else + stream << Colour(Colour::Success) << std::string(passedRatio, '='); + } else { + stream << Colour(Colour::Warning) << std::string(CATCH_CONFIG_CONSOLE_WIDTH - 1, '='); + } + stream << '\n'; +} +void ConsoleReporter::printSummaryDivider() { + stream << lineOfChars('-') << '\n'; +} + +void ConsoleReporter::printTestFilters() { + if (m_config->testSpec().hasFilters()) { + Colour guard(Colour::BrightYellow); + stream << "Filters: " << serializeFilters(m_config->getTestsOrTags()) << '\n'; + } +} + +} // end namespace Catch + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + + +#include +#include + +namespace Catch { + namespace { + struct BySectionInfo { + BySectionInfo( SectionInfo const& other ): m_other( other ) {} + BySectionInfo( BySectionInfo const& other ): + m_other( other.m_other ) {} + bool operator()( + std::shared_ptr const& + node ) const { + return ( + ( node->stats.sectionInfo.name == m_other.name ) && + ( node->stats.sectionInfo.lineInfo == m_other.lineInfo ) ); + } + void operator=( BySectionInfo const& ) = delete; + + private: + SectionInfo const& m_other; + }; + + void prepareExpandedExpression( AssertionResult& result ) { + result.getExpandedExpression(); + } + } // namespace + + + CumulativeReporterBase::~CumulativeReporterBase() = default; + + void + CumulativeReporterBase::sectionStarting( SectionInfo const& sectionInfo ) { + SectionStats incompleteStats( sectionInfo, Counts(), 0, false ); + std::shared_ptr node; + if ( m_sectionStack.empty() ) { + if ( !m_rootSection ) + m_rootSection = + std::make_shared( incompleteStats ); + node = m_rootSection; + } else { + SectionNode& parentNode = *m_sectionStack.back(); + auto it = std::find_if( parentNode.childSections.begin(), + parentNode.childSections.end(), + BySectionInfo( sectionInfo ) ); + if ( it == parentNode.childSections.end() ) { + node = std::make_shared( incompleteStats ); + parentNode.childSections.push_back( node ); + } else { + node = *it; + } + } + m_sectionStack.push_back( node ); + m_deepestSection = std::move( node ); + } + + bool CumulativeReporterBase::assertionEnded( + AssertionStats const& assertionStats ) { + assert( !m_sectionStack.empty() ); + // AssertionResult holds a pointer to a temporary DecomposedExpression, + // which getExpandedExpression() calls to build the expression string. + // Our section stack copy of the assertionResult will likely outlive the + // temporary, so it must be expanded or discarded now to avoid calling + // a destroyed object later. + prepareExpandedExpression( + const_cast( assertionStats.assertionResult ) ); + SectionNode& sectionNode = *m_sectionStack.back(); + sectionNode.assertions.push_back( assertionStats ); + return true; + } + + void CumulativeReporterBase::sectionEnded( SectionStats const& sectionStats ) { + assert( !m_sectionStack.empty() ); + SectionNode& node = *m_sectionStack.back(); + node.stats = sectionStats; + m_sectionStack.pop_back(); + } + + void CumulativeReporterBase::testCaseEnded( + TestCaseStats const& testCaseStats ) { + auto node = std::make_shared( testCaseStats ); + assert( m_sectionStack.size() == 0 ); + node->children.push_back( m_rootSection ); + m_testCases.push_back( node ); + m_rootSection.reset(); + + assert( m_deepestSection ); + m_deepestSection->stdOut = testCaseStats.stdOut; + m_deepestSection->stdErr = testCaseStats.stdErr; + } + + void CumulativeReporterBase::testGroupEnded( + TestGroupStats const& testGroupStats ) { + auto node = std::make_shared( testGroupStats ); + node->children.swap( m_testCases ); + m_testGroups.push_back( node ); + } + + void CumulativeReporterBase::testRunEnded( TestRunStats const& testRunStats ) { + auto node = std::make_shared( testRunStats ); + node->children.swap( m_testGroups ); + m_testRuns.push_back( node ); + testRunEndedCumulative(); + } + +} // end namespace Catch + + + + +#include +#include +#include + +namespace Catch { + + namespace { + std::string getCurrentTimestamp() { + // Beware, this is not reentrant because of backward compatibility issues + // Also, UTC only, again because of backward compatibility (%z is C++11) + time_t rawtime; + std::time(&rawtime); + auto const timeStampSize = sizeof("2017-01-16T17:06:45Z"); + +#ifdef _MSC_VER + std::tm timeInfo = {}; + gmtime_s(&timeInfo, &rawtime); +#else + std::tm* timeInfo; + timeInfo = std::gmtime(&rawtime); +#endif + + char timeStamp[timeStampSize]; + const char * const fmt = "%Y-%m-%dT%H:%M:%SZ"; + +#ifdef _MSC_VER + std::strftime(timeStamp, timeStampSize, fmt, &timeInfo); +#else + std::strftime(timeStamp, timeStampSize, fmt, timeInfo); +#endif + return std::string(timeStamp); + } + + std::string fileNameTag(std::vector const& tags) { + auto it = std::find_if(begin(tags), + end(tags), + [] (Tag const& tag) { + return tag.original.size() > 0 + && tag.original[0] == '#'; }); + if (it != tags.end()) { + return static_cast( + it->original.substr(1, it->original.size() - 1) + ); + } + return std::string(); + } + } // anonymous namespace + + JunitReporter::JunitReporter( ReporterConfig const& _config ) + : CumulativeReporterBase( _config ), + xml( _config.stream() ) + { + m_preferences.shouldRedirectStdOut = true; + m_preferences.shouldReportAllAssertions = true; + } + + JunitReporter::~JunitReporter() {} + + std::string JunitReporter::getDescription() { + return "Reports test results in an XML format that looks like Ant's junitreport target"; + } + + void JunitReporter::noMatchingTestCases( std::string const& /*spec*/ ) {} + + void JunitReporter::testRunStarting( TestRunInfo const& runInfo ) { + CumulativeReporterBase::testRunStarting( runInfo ); + xml.startElement( "testsuites" ); + } + + void JunitReporter::testGroupStarting( GroupInfo const& groupInfo ) { + suiteTimer.start(); + stdOutForSuite.clear(); + stdErrForSuite.clear(); + unexpectedExceptions = 0; + CumulativeReporterBase::testGroupStarting( groupInfo ); + } + + void JunitReporter::testCaseStarting( TestCaseInfo const& testCaseInfo ) { + m_okToFail = testCaseInfo.okToFail(); + } + + bool JunitReporter::assertionEnded( AssertionStats const& assertionStats ) { + if( assertionStats.assertionResult.getResultType() == ResultWas::ThrewException && !m_okToFail ) + unexpectedExceptions++; + return CumulativeReporterBase::assertionEnded( assertionStats ); + } + + void JunitReporter::testCaseEnded( TestCaseStats const& testCaseStats ) { + stdOutForSuite += testCaseStats.stdOut; + stdErrForSuite += testCaseStats.stdErr; + CumulativeReporterBase::testCaseEnded( testCaseStats ); + } + + void JunitReporter::testGroupEnded( TestGroupStats const& testGroupStats ) { + double suiteTime = suiteTimer.getElapsedSeconds(); + CumulativeReporterBase::testGroupEnded( testGroupStats ); + writeGroup( *m_testGroups.back(), suiteTime ); + } + + void JunitReporter::testRunEndedCumulative() { + xml.endElement(); + } + + void JunitReporter::writeGroup( TestGroupNode const& groupNode, double suiteTime ) { + XmlWriter::ScopedElement e = xml.scopedElement( "testsuite" ); + + TestGroupStats const& stats = groupNode.value; + xml.writeAttribute( "name", stats.groupInfo.name ); + xml.writeAttribute( "errors", unexpectedExceptions ); + xml.writeAttribute( "failures", stats.totals.assertions.failed-unexpectedExceptions ); + xml.writeAttribute( "tests", stats.totals.assertions.total() ); + xml.writeAttribute( "hostname", "tbd" ); // !TBD + if( m_config->showDurations() == ShowDurations::Never ) + xml.writeAttribute( "time", "" ); + else + xml.writeAttribute( "time", suiteTime ); + xml.writeAttribute( "timestamp", getCurrentTimestamp() ); + + // Write properties if there are any + if (m_config->hasTestFilters() || m_config->rngSeed() != 0) { + auto properties = xml.scopedElement("properties"); + if (m_config->hasTestFilters()) { + xml.scopedElement("property") + .writeAttribute("name", "filters") + .writeAttribute("value", serializeFilters(m_config->getTestsOrTags())); + } + if (m_config->rngSeed() != 0) { + xml.scopedElement("property") + .writeAttribute("name", "random-seed") + .writeAttribute("value", m_config->rngSeed()); + } + } + + // Write test cases + for( auto const& child : groupNode.children ) + writeTestCase( *child ); + + xml.scopedElement( "system-out" ).writeText( trim( stdOutForSuite ), XmlFormatting::Newline ); + xml.scopedElement( "system-err" ).writeText( trim( stdErrForSuite ), XmlFormatting::Newline ); + } + + void JunitReporter::writeTestCase( TestCaseNode const& testCaseNode ) { + TestCaseStats const& stats = testCaseNode.value; + + // All test cases have exactly one section - which represents the + // test case itself. That section may have 0-n nested sections + assert( testCaseNode.children.size() == 1 ); + SectionNode const& rootSection = *testCaseNode.children.front(); + + std::string className = stats.testInfo->className; + + if( className.empty() ) { + className = fileNameTag(stats.testInfo->tags); + if ( className.empty() ) + className = "global"; + } + + if ( !m_config->name().empty() ) + className = m_config->name() + "." + className; + + writeSection( className, "", rootSection ); + } + + void JunitReporter::writeSection( std::string const& className, + std::string const& rootName, + SectionNode const& sectionNode ) { + std::string name = trim( sectionNode.stats.sectionInfo.name ); + if( !rootName.empty() ) + name = rootName + '/' + name; + + if( !sectionNode.assertions.empty() || + !sectionNode.stdOut.empty() || + !sectionNode.stdErr.empty() ) { + XmlWriter::ScopedElement e = xml.scopedElement( "testcase" ); + if( className.empty() ) { + xml.writeAttribute( "classname", name ); + xml.writeAttribute( "name", "root" ); + } + else { + xml.writeAttribute( "classname", className ); + xml.writeAttribute( "name", name ); + } + xml.writeAttribute( "time", ::Catch::Detail::stringify( sectionNode.stats.durationInSeconds ) ); + // This is not ideal, but it should be enough to mimic gtest's + // junit output. + // Ideally the JUnit reporter would also handle `skipTest` + // events and write those out appropriately. + xml.writeAttribute( "status", "run" ); + + writeAssertions( sectionNode ); + + if( !sectionNode.stdOut.empty() ) + xml.scopedElement( "system-out" ).writeText( trim( sectionNode.stdOut ), XmlFormatting::Newline ); + if( !sectionNode.stdErr.empty() ) + xml.scopedElement( "system-err" ).writeText( trim( sectionNode.stdErr ), XmlFormatting::Newline ); + } + for( auto const& childNode : sectionNode.childSections ) + if( className.empty() ) + writeSection( name, "", *childNode ); + else + writeSection( className, name, *childNode ); + } + + void JunitReporter::writeAssertions( SectionNode const& sectionNode ) { + for( auto const& assertion : sectionNode.assertions ) + writeAssertion( assertion ); + } + + void JunitReporter::writeAssertion( AssertionStats const& stats ) { + AssertionResult const& result = stats.assertionResult; + if( !result.isOk() ) { + std::string elementName; + switch( result.getResultType() ) { + case ResultWas::ThrewException: + case ResultWas::FatalErrorCondition: + elementName = "error"; + break; + case ResultWas::ExplicitFailure: + case ResultWas::ExpressionFailed: + case ResultWas::DidntThrowException: + elementName = "failure"; + break; + + // We should never see these here: + case ResultWas::Info: + case ResultWas::Warning: + case ResultWas::Ok: + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + elementName = "internalError"; + break; + } + + XmlWriter::ScopedElement e = xml.scopedElement( elementName ); + + xml.writeAttribute( "message", result.getExpression() ); + xml.writeAttribute( "type", result.getTestMacroName() ); + + ReusableStringStream rss; + if (stats.totals.assertions.total() > 0) { + rss << "FAILED" << ":\n"; + if (result.hasExpression()) { + rss << " "; + rss << result.getExpressionInMacro(); + rss << '\n'; + } + if (result.hasExpandedExpression()) { + rss << "with expansion:\n"; + rss << TextFlow::Column(result.getExpandedExpression()).indent(2) << '\n'; + } + } else { + rss << '\n'; + } + + if( !result.getMessage().empty() ) + rss << result.getMessage() << '\n'; + for( auto const& msg : stats.infoMessages ) + if( msg.type == ResultWas::Info ) + rss << msg.message << '\n'; + + rss << "at " << result.getSourceInfo(); + xml.writeText( rss.str(), XmlFormatting::Newline ); + } + } + +} // end namespace Catch + + + +#include + +namespace Catch { + + ListeningReporter::ListeningReporter() { + // We will assume that listeners will always want all assertions + m_preferences.shouldReportAllAssertions = true; + } + + void ListeningReporter::addListener( IStreamingReporterPtr&& listener ) { + m_listeners.push_back( std::move( listener ) ); + } + + void ListeningReporter::addReporter(IStreamingReporterPtr&& reporter) { + assert(!m_reporter && "Listening reporter can wrap only 1 real reporter"); + m_reporter = std::move( reporter ); + m_preferences.shouldRedirectStdOut = m_reporter->getPreferences().shouldRedirectStdOut; + } + + void ListeningReporter::noMatchingTestCases( std::string const& spec ) { + for ( auto const& listener : m_listeners ) { + listener->noMatchingTestCases( spec ); + } + m_reporter->noMatchingTestCases( spec ); + } + + void ListeningReporter::reportInvalidArguments(std::string const&arg){ + for ( auto const& listener : m_listeners ) { + listener->reportInvalidArguments( arg ); + } + m_reporter->reportInvalidArguments( arg ); + } + + void ListeningReporter::benchmarkPreparing( std::string const& name ) { + for (auto const& listener : m_listeners) { + listener->benchmarkPreparing(name); + } + m_reporter->benchmarkPreparing(name); + } + void ListeningReporter::benchmarkStarting( BenchmarkInfo const& benchmarkInfo ) { + for ( auto const& listener : m_listeners ) { + listener->benchmarkStarting( benchmarkInfo ); + } + m_reporter->benchmarkStarting( benchmarkInfo ); + } + void ListeningReporter::benchmarkEnded( BenchmarkStats<> const& benchmarkStats ) { + for ( auto const& listener : m_listeners ) { + listener->benchmarkEnded( benchmarkStats ); + } + m_reporter->benchmarkEnded( benchmarkStats ); + } + + void ListeningReporter::benchmarkFailed( std::string const& error ) { + for (auto const& listener : m_listeners) { + listener->benchmarkFailed(error); + } + m_reporter->benchmarkFailed(error); + } + + void ListeningReporter::testRunStarting( TestRunInfo const& testRunInfo ) { + for ( auto const& listener : m_listeners ) { + listener->testRunStarting( testRunInfo ); + } + m_reporter->testRunStarting( testRunInfo ); + } + + void ListeningReporter::testGroupStarting( GroupInfo const& groupInfo ) { + for ( auto const& listener : m_listeners ) { + listener->testGroupStarting( groupInfo ); + } + m_reporter->testGroupStarting( groupInfo ); + } + + + void ListeningReporter::testCaseStarting( TestCaseInfo const& testInfo ) { + for ( auto const& listener : m_listeners ) { + listener->testCaseStarting( testInfo ); + } + m_reporter->testCaseStarting( testInfo ); + } + + void ListeningReporter::sectionStarting( SectionInfo const& sectionInfo ) { + for ( auto const& listener : m_listeners ) { + listener->sectionStarting( sectionInfo ); + } + m_reporter->sectionStarting( sectionInfo ); + } + + void ListeningReporter::assertionStarting( AssertionInfo const& assertionInfo ) { + for ( auto const& listener : m_listeners ) { + listener->assertionStarting( assertionInfo ); + } + m_reporter->assertionStarting( assertionInfo ); + } + + // The return value indicates if the messages buffer should be cleared: + bool ListeningReporter::assertionEnded( AssertionStats const& assertionStats ) { + for( auto const& listener : m_listeners ) { + static_cast( listener->assertionEnded( assertionStats ) ); + } + return m_reporter->assertionEnded( assertionStats ); + } + + void ListeningReporter::sectionEnded( SectionStats const& sectionStats ) { + for ( auto const& listener : m_listeners ) { + listener->sectionEnded( sectionStats ); + } + m_reporter->sectionEnded( sectionStats ); + } + + void ListeningReporter::testCaseEnded( TestCaseStats const& testCaseStats ) { + for ( auto const& listener : m_listeners ) { + listener->testCaseEnded( testCaseStats ); + } + m_reporter->testCaseEnded( testCaseStats ); + } + + void ListeningReporter::testGroupEnded( TestGroupStats const& testGroupStats ) { + for ( auto const& listener : m_listeners ) { + listener->testGroupEnded( testGroupStats ); + } + m_reporter->testGroupEnded( testGroupStats ); + } + + void ListeningReporter::testRunEnded( TestRunStats const& testRunStats ) { + for ( auto const& listener : m_listeners ) { + listener->testRunEnded( testRunStats ); + } + m_reporter->testRunEnded( testRunStats ); + } + + + void ListeningReporter::skipTest( TestCaseInfo const& testInfo ) { + for ( auto const& listener : m_listeners ) { + listener->skipTest( testInfo ); + } + m_reporter->skipTest( testInfo ); + } + + void ListeningReporter::listReporters(std::vector const& descriptions, IConfig const& config) { + for (auto const& listener : m_listeners) { + listener->listReporters(descriptions, config); + } + m_reporter->listReporters(descriptions, config); + } + + void ListeningReporter::listTests(std::vector const& tests, IConfig const& config) { + for (auto const& listener : m_listeners) { + listener->listTests(tests, config); + } + m_reporter->listTests(tests, config); + } + + void ListeningReporter::listTags(std::vector const& tags, IConfig const& config) { + for (auto const& listener : m_listeners) { + listener->listTags(tags, config); + } + m_reporter->listTags(tags, config); + } + +} // end namespace Catch + + + + +#include + +namespace Catch { + + SonarQubeReporter::~SonarQubeReporter() {} + + void SonarQubeReporter::testRunStarting(TestRunInfo const& testRunInfo) { + CumulativeReporterBase::testRunStarting(testRunInfo); + xml.startElement("testExecutions"); + xml.writeAttribute("version", '1'); + } + + void SonarQubeReporter::testGroupEnded(TestGroupStats const& testGroupStats) { + CumulativeReporterBase::testGroupEnded(testGroupStats); + writeGroup(*m_testGroups.back()); + } + + void SonarQubeReporter::writeGroup(TestGroupNode const& groupNode) { + std::map testsPerFile; + for (auto const& child : groupNode.children) + testsPerFile[child->value.testInfo->lineInfo.file].push_back(child); + + for (auto const& kv : testsPerFile) + writeTestFile(kv.first, kv.second); + } + + void SonarQubeReporter::writeTestFile(std::string const& filename, TestGroupNode::ChildNodes const& testCaseNodes) { + XmlWriter::ScopedElement e = xml.scopedElement("file"); + xml.writeAttribute("path", filename); + + for (auto const& child : testCaseNodes) + writeTestCase(*child); + } + + void SonarQubeReporter::writeTestCase(TestCaseNode const& testCaseNode) { + // All test cases have exactly one section - which represents the + // test case itself. That section may have 0-n nested sections + assert(testCaseNode.children.size() == 1); + SectionNode const& rootSection = *testCaseNode.children.front(); + writeSection("", rootSection, testCaseNode.value.testInfo->okToFail()); + } + + void SonarQubeReporter::writeSection(std::string const& rootName, SectionNode const& sectionNode, bool okToFail) { + std::string name = trim(sectionNode.stats.sectionInfo.name); + if (!rootName.empty()) + name = rootName + '/' + name; + + if (!sectionNode.assertions.empty() || !sectionNode.stdOut.empty() || !sectionNode.stdErr.empty()) { + XmlWriter::ScopedElement e = xml.scopedElement("testCase"); + xml.writeAttribute("name", name); + xml.writeAttribute("duration", static_cast(sectionNode.stats.durationInSeconds * 1000)); + + writeAssertions(sectionNode, okToFail); + } + + for (auto const& childNode : sectionNode.childSections) + writeSection(name, *childNode, okToFail); + } + + void SonarQubeReporter::writeAssertions(SectionNode const& sectionNode, bool okToFail) { + for (auto const& assertion : sectionNode.assertions) + writeAssertion(assertion, okToFail); + } + + void SonarQubeReporter::writeAssertion(AssertionStats const& stats, bool okToFail) { + AssertionResult const& result = stats.assertionResult; + if (!result.isOk()) { + std::string elementName; + if (okToFail) { + elementName = "skipped"; + } else { + switch (result.getResultType()) { + case ResultWas::ThrewException: + case ResultWas::FatalErrorCondition: + elementName = "error"; + break; + case ResultWas::ExplicitFailure: + elementName = "failure"; + break; + case ResultWas::ExpressionFailed: + elementName = "failure"; + break; + case ResultWas::DidntThrowException: + elementName = "failure"; + break; + + // We should never see these here: + case ResultWas::Info: + case ResultWas::Warning: + case ResultWas::Ok: + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + elementName = "internalError"; + break; + } + } + + XmlWriter::ScopedElement e = xml.scopedElement(elementName); + + ReusableStringStream messageRss; + messageRss << result.getTestMacroName() << "(" << result.getExpression() << ")"; + xml.writeAttribute("message", messageRss.str()); + + ReusableStringStream textRss; + if (stats.totals.assertions.total() > 0) { + textRss << "FAILED:\n"; + if (result.hasExpression()) { + textRss << "\t" << result.getExpressionInMacro() << "\n"; + } + if (result.hasExpandedExpression()) { + textRss << "with expansion:\n\t" << result.getExpandedExpression() << "\n"; + } + } + + if (!result.getMessage().empty()) + textRss << result.getMessage() << "\n"; + + for (auto const& msg : stats.infoMessages) + if (msg.type == ResultWas::Info) + textRss << msg.message << "\n"; + + textRss << "at " << result.getSourceInfo(); + xml.writeText(textRss.str(), XmlFormatting::Newline); + } + } + +} // end namespace Catch + + + +namespace Catch { + + StreamingReporterBase::~StreamingReporterBase() = default; + + void + StreamingReporterBase::testRunStarting( TestRunInfo const& _testRunInfo ) { + currentTestRunInfo = _testRunInfo; + } + + void + StreamingReporterBase::testGroupStarting( GroupInfo const& _groupInfo ) { + currentGroupInfo = _groupInfo; + } + + void StreamingReporterBase::testGroupEnded( TestGroupStats const& ) { + currentGroupInfo.reset(); + } + + void StreamingReporterBase::testRunEnded( TestRunStats const& ) { + currentTestCaseInfo = nullptr; + currentGroupInfo.reset(); + currentTestRunInfo.reset(); + } + +} // end namespace Catch + + + +#include +#include + +namespace Catch { + + namespace { + // Yes, this has to be outside the class and namespaced by naming. + // Making older compiler happy is hard. + static constexpr StringRef tapFailedString = "not ok"_sr; + static constexpr StringRef tapPassedString = "ok"_sr; + + class TapAssertionPrinter { + public: + TapAssertionPrinter& operator= (TapAssertionPrinter const&) = delete; + TapAssertionPrinter(TapAssertionPrinter const&) = delete; + TapAssertionPrinter(std::ostream& _stream, AssertionStats const& _stats, std::size_t _counter) + : stream(_stream) + , result(_stats.assertionResult) + , messages(_stats.infoMessages) + , itMessage(_stats.infoMessages.begin()) + , printInfoMessages(true) + , counter(_counter) {} + + void print() { + itMessage = messages.begin(); + + switch (result.getResultType()) { + case ResultWas::Ok: + printResultType(tapPassedString); + printOriginalExpression(); + printReconstructedExpression(); + if (!result.hasExpression()) + printRemainingMessages(Colour::None); + else + printRemainingMessages(); + break; + case ResultWas::ExpressionFailed: + if (result.isOk()) { + printResultType(tapPassedString); + } else { + printResultType(tapFailedString); + } + printOriginalExpression(); + printReconstructedExpression(); + if (result.isOk()) { + printIssue(" # TODO"); + } + printRemainingMessages(); + break; + case ResultWas::ThrewException: + printResultType(tapFailedString); + printIssue("unexpected exception with message:"_sr); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::FatalErrorCondition: + printResultType(tapFailedString); + printIssue("fatal error condition with message:"_sr); + printMessage(); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::DidntThrowException: + printResultType(tapFailedString); + printIssue("expected exception, got none"_sr); + printExpressionWas(); + printRemainingMessages(); + break; + case ResultWas::Info: + printResultType("info"_sr); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::Warning: + printResultType("warning"_sr); + printMessage(); + printRemainingMessages(); + break; + case ResultWas::ExplicitFailure: + printResultType(tapFailedString); + printIssue("explicitly"_sr); + printRemainingMessages(Colour::None); + break; + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + printResultType("** internal error **"_sr); + break; + } + } + + private: + static Colour::Code dimColour() { return Colour::FileName; } + + void printSourceInfo() const { + Colour colourGuard(dimColour()); + stream << result.getSourceInfo() << ':'; + } + + void printResultType(StringRef passOrFail) const { + if (!passOrFail.empty()) { + stream << passOrFail << ' ' << counter << " -"; + } + } + + void printIssue(StringRef issue) const { + stream << ' ' << issue; + } + + void printExpressionWas() { + if (result.hasExpression()) { + stream << ';'; + { + Colour colour(dimColour()); + stream << " expression was:"; + } + printOriginalExpression(); + } + } + + void printOriginalExpression() const { + if (result.hasExpression()) { + stream << ' ' << result.getExpression(); + } + } + + void printReconstructedExpression() const { + if (result.hasExpandedExpression()) { + { + Colour colour(dimColour()); + stream << " for: "; + } + std::string expr = result.getExpandedExpression(); + std::replace(expr.begin(), expr.end(), '\n', ' '); + stream << expr; + } + } + + void printMessage() { + if (itMessage != messages.end()) { + stream << " '" << itMessage->message << '\''; + ++itMessage; + } + } + + void printRemainingMessages(Colour::Code colour = dimColour()) { + if (itMessage == messages.end()) { + return; + } + + // using messages.end() directly (or auto) yields compilation error: + std::vector::const_iterator itEnd = messages.end(); + const std::size_t N = static_cast(std::distance(itMessage, itEnd)); + + { + Colour colourGuard(colour); + stream << " with " << pluralise(N, "message") << ':'; + } + + for (; itMessage != itEnd; ) { + // If this assertion is a warning ignore any INFO messages + if (printInfoMessages || itMessage->type != ResultWas::Info) { + stream << " '" << itMessage->message << '\''; + if (++itMessage != itEnd) { + Colour colourGuard(dimColour()); + stream << " and"; + } + } + } + } + + private: + std::ostream& stream; + AssertionResult const& result; + std::vector messages; + std::vector::const_iterator itMessage; + bool printInfoMessages; + std::size_t counter; + }; + + } // End anonymous namespace + + TAPReporter::~TAPReporter() {} + + void TAPReporter::noMatchingTestCases(std::string const& spec) { + stream << "# No test cases matched '" << spec << "'\n"; + } + + bool TAPReporter::assertionEnded(AssertionStats const& _assertionStats) { + ++counter; + + stream << "# " << currentTestCaseInfo->name << '\n'; + TapAssertionPrinter printer(stream, _assertionStats, counter); + printer.print(); + + stream << '\n' << std::flush; + return true; + } + + void TAPReporter::testRunEnded(TestRunStats const& _testRunStats) { + stream << "1.." << _testRunStats.totals.assertions.total(); + if (_testRunStats.totals.testCases.total() == 0) { + stream << " # Skipped: No tests ran."; + } + stream << "\n\n" << std::flush; + StreamingReporterBase::testRunEnded(_testRunStats); + } + + + + +} // end namespace Catch + + + + +#include + +namespace Catch { + + namespace { + // if string has a : in first line will set indent to follow it on + // subsequent lines + void printHeaderString(std::ostream& os, std::string const& _string, std::size_t indent = 0) { + std::size_t i = _string.find(": "); + if (i != std::string::npos) + i += 2; + else + i = 0; + os << TextFlow::Column(_string) + .indent(indent + i) + .initialIndent(indent) << '\n'; + } + + std::string escape(std::string const& str) { + std::string escaped = str; + replaceInPlace(escaped, "|", "||"); + replaceInPlace(escaped, "'", "|'"); + replaceInPlace(escaped, "\n", "|n"); + replaceInPlace(escaped, "\r", "|r"); + replaceInPlace(escaped, "[", "|["); + replaceInPlace(escaped, "]", "|]"); + return escaped; + } + } // end anonymous namespace + + + TeamCityReporter::~TeamCityReporter() {} + + void TeamCityReporter::testGroupStarting(GroupInfo const& groupInfo) { + StreamingReporterBase::testGroupStarting(groupInfo); + stream << "##teamcity[testSuiteStarted name='" + << escape(groupInfo.name) << "']\n"; + } + + void TeamCityReporter::testGroupEnded(TestGroupStats const& testGroupStats) { + StreamingReporterBase::testGroupEnded(testGroupStats); + stream << "##teamcity[testSuiteFinished name='" + << escape(testGroupStats.groupInfo.name) << "']\n"; + } + + bool TeamCityReporter::assertionEnded(AssertionStats const& assertionStats) { + AssertionResult const& result = assertionStats.assertionResult; + if (!result.isOk()) { + + ReusableStringStream msg; + if (!m_headerPrintedForThisSection) + printSectionHeader(msg.get()); + m_headerPrintedForThisSection = true; + + msg << result.getSourceInfo() << '\n'; + + switch (result.getResultType()) { + case ResultWas::ExpressionFailed: + msg << "expression failed"; + break; + case ResultWas::ThrewException: + msg << "unexpected exception"; + break; + case ResultWas::FatalErrorCondition: + msg << "fatal error condition"; + break; + case ResultWas::DidntThrowException: + msg << "no exception was thrown where one was expected"; + break; + case ResultWas::ExplicitFailure: + msg << "explicit failure"; + break; + + // We shouldn't get here because of the isOk() test + case ResultWas::Ok: + case ResultWas::Info: + case ResultWas::Warning: + CATCH_ERROR("Internal error in TeamCity reporter"); + // These cases are here to prevent compiler warnings + case ResultWas::Unknown: + case ResultWas::FailureBit: + case ResultWas::Exception: + CATCH_ERROR("Not implemented"); + } + if (assertionStats.infoMessages.size() == 1) + msg << " with message:"; + if (assertionStats.infoMessages.size() > 1) + msg << " with messages:"; + for (auto const& messageInfo : assertionStats.infoMessages) + msg << "\n \"" << messageInfo.message << '"'; + + + if (result.hasExpression()) { + msg << + "\n " << result.getExpressionInMacro() << "\n" + "with expansion:\n" + " " << result.getExpandedExpression() << '\n'; + } + + if (currentTestCaseInfo->okToFail()) { + msg << "- failure ignore as test marked as 'ok to fail'\n"; + stream << "##teamcity[testIgnored" + << " name='" << escape(currentTestCaseInfo->name) << '\'' + << " message='" << escape(msg.str()) << '\'' + << "]\n"; + } else { + stream << "##teamcity[testFailed" + << " name='" << escape(currentTestCaseInfo->name) << '\'' + << " message='" << escape(msg.str()) << '\'' + << "]\n"; + } + } + stream.flush(); + return true; + } + + void TeamCityReporter::testCaseStarting(TestCaseInfo const& testInfo) { + m_testTimer.start(); + StreamingReporterBase::testCaseStarting(testInfo); + stream << "##teamcity[testStarted name='" + << escape(testInfo.name) << "']\n"; + stream.flush(); + } + + void TeamCityReporter::testCaseEnded(TestCaseStats const& testCaseStats) { + StreamingReporterBase::testCaseEnded(testCaseStats); + auto const& testCaseInfo = *testCaseStats.testInfo; + if (!testCaseStats.stdOut.empty()) + stream << "##teamcity[testStdOut name='" + << escape(testCaseInfo.name) + << "' out='" << escape(testCaseStats.stdOut) << "']\n"; + if (!testCaseStats.stdErr.empty()) + stream << "##teamcity[testStdErr name='" + << escape(testCaseInfo.name) + << "' out='" << escape(testCaseStats.stdErr) << "']\n"; + stream << "##teamcity[testFinished name='" + << escape(testCaseInfo.name) << "' duration='" + << m_testTimer.getElapsedMilliseconds() << "']\n"; + stream.flush(); + } + + void TeamCityReporter::printSectionHeader(std::ostream& os) { + assert(!m_sectionStack.empty()); + + if (m_sectionStack.size() > 1) { + os << lineOfChars('-') << '\n'; + + std::vector::const_iterator + it = m_sectionStack.begin() + 1, // Skip first section (test case) + itEnd = m_sectionStack.end(); + for (; it != itEnd; ++it) + printHeaderString(os, it->name); + os << lineOfChars('-') << '\n'; + } + + SourceLineInfo lineInfo = m_sectionStack.front().lineInfo; + + os << lineInfo << '\n'; + os << lineOfChars('.') << "\n\n"; + } + +} // end namespace Catch + + + + +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4061) // Not all labels are EXPLICITLY handled in switch + // Note that 4062 (not all labels are handled + // and default is missing) is enabled +#endif + +namespace Catch { + XmlReporter::XmlReporter( ReporterConfig const& _config ) + : StreamingReporterBase( _config ), + m_xml(_config.stream()) + { + m_preferences.shouldRedirectStdOut = true; + m_preferences.shouldReportAllAssertions = true; + } + + XmlReporter::~XmlReporter() = default; + + std::string XmlReporter::getDescription() { + return "Reports test results as an XML document"; + } + + std::string XmlReporter::getStylesheetRef() const { + return std::string(); + } + + void XmlReporter::writeSourceInfo( SourceLineInfo const& sourceInfo ) { + m_xml + .writeAttribute( "filename", sourceInfo.file ) + .writeAttribute( "line", sourceInfo.line ); + } + + void XmlReporter::noMatchingTestCases( std::string const& s ) { + StreamingReporterBase::noMatchingTestCases( s ); + } + + void XmlReporter::testRunStarting( TestRunInfo const& testInfo ) { + StreamingReporterBase::testRunStarting( testInfo ); + std::string stylesheetRef = getStylesheetRef(); + if( !stylesheetRef.empty() ) + m_xml.writeStylesheetRef( stylesheetRef ); + m_xml.startElement( "Catch" ); + if( !m_config->name().empty() ) + m_xml.writeAttribute( "name", m_config->name() ); + if (m_config->testSpec().hasFilters()) + m_xml.writeAttribute( "filters", serializeFilters( m_config->getTestsOrTags() ) ); + if( m_config->rngSeed() != 0 ) + m_xml.scopedElement( "Randomness" ) + .writeAttribute( "seed", m_config->rngSeed() ); + } + + void XmlReporter::testGroupStarting( GroupInfo const& groupInfo ) { + StreamingReporterBase::testGroupStarting( groupInfo ); + m_xml.startElement( "Group" ) + .writeAttribute( "name", groupInfo.name ); + } + + void XmlReporter::testCaseStarting( TestCaseInfo const& testInfo ) { + StreamingReporterBase::testCaseStarting(testInfo); + m_xml.startElement( "TestCase" ) + .writeAttribute( "name", trim( testInfo.name ) ) + .writeAttribute( "tags", testInfo.tagsAsString() ); + + writeSourceInfo( testInfo.lineInfo ); + + if ( m_config->showDurations() == ShowDurations::Always ) + m_testCaseTimer.start(); + m_xml.ensureTagClosed(); + } + + void XmlReporter::sectionStarting( SectionInfo const& sectionInfo ) { + StreamingReporterBase::sectionStarting( sectionInfo ); + if( m_sectionDepth++ > 0 ) { + m_xml.startElement( "Section" ) + .writeAttribute( "name", trim( sectionInfo.name ) ); + writeSourceInfo( sectionInfo.lineInfo ); + m_xml.ensureTagClosed(); + } + } + + void XmlReporter::assertionStarting( AssertionInfo const& ) { } + + bool XmlReporter::assertionEnded( AssertionStats const& assertionStats ) { + + AssertionResult const& result = assertionStats.assertionResult; + + bool includeResults = m_config->includeSuccessfulResults() || !result.isOk(); + + if( includeResults || result.getResultType() == ResultWas::Warning ) { + // Print any info messages in tags. + for( auto const& msg : assertionStats.infoMessages ) { + if( msg.type == ResultWas::Info && includeResults ) { + m_xml.scopedElement( "Info" ) + .writeText( msg.message ); + } else if ( msg.type == ResultWas::Warning ) { + m_xml.scopedElement( "Warning" ) + .writeText( msg.message ); + } + } + } + + // Drop out if result was successful but we're not printing them. + if( !includeResults && result.getResultType() != ResultWas::Warning ) + return true; + + + // Print the expression if there is one. + if( result.hasExpression() ) { + m_xml.startElement( "Expression" ) + .writeAttribute( "success", result.succeeded() ) + .writeAttribute( "type", result.getTestMacroName() ); + + writeSourceInfo( result.getSourceInfo() ); + + m_xml.scopedElement( "Original" ) + .writeText( result.getExpression() ); + m_xml.scopedElement( "Expanded" ) + .writeText( result.getExpandedExpression() ); + } + + // And... Print a result applicable to each result type. + switch( result.getResultType() ) { + case ResultWas::ThrewException: + m_xml.startElement( "Exception" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + case ResultWas::FatalErrorCondition: + m_xml.startElement( "FatalErrorCondition" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + case ResultWas::Info: + m_xml.scopedElement( "Info" ) + .writeText( result.getMessage() ); + break; + case ResultWas::Warning: + // Warning will already have been written + break; + case ResultWas::ExplicitFailure: + m_xml.startElement( "Failure" ); + writeSourceInfo( result.getSourceInfo() ); + m_xml.writeText( result.getMessage() ); + m_xml.endElement(); + break; + default: + break; + } + + if( result.hasExpression() ) + m_xml.endElement(); + + return true; + } + + void XmlReporter::sectionEnded( SectionStats const& sectionStats ) { + StreamingReporterBase::sectionEnded( sectionStats ); + if( --m_sectionDepth > 0 ) { + XmlWriter::ScopedElement e = m_xml.scopedElement( "OverallResults" ); + e.writeAttribute( "successes", sectionStats.assertions.passed ); + e.writeAttribute( "failures", sectionStats.assertions.failed ); + e.writeAttribute( "expectedFailures", sectionStats.assertions.failedButOk ); + + if ( m_config->showDurations() == ShowDurations::Always ) + e.writeAttribute( "durationInSeconds", sectionStats.durationInSeconds ); + + m_xml.endElement(); + } + } + + void XmlReporter::testCaseEnded( TestCaseStats const& testCaseStats ) { + StreamingReporterBase::testCaseEnded( testCaseStats ); + XmlWriter::ScopedElement e = m_xml.scopedElement( "OverallResult" ); + e.writeAttribute( "success", testCaseStats.totals.assertions.allOk() ); + + if ( m_config->showDurations() == ShowDurations::Always ) + e.writeAttribute( "durationInSeconds", m_testCaseTimer.getElapsedSeconds() ); + + if( !testCaseStats.stdOut.empty() ) + m_xml.scopedElement( "StdOut" ).writeText( trim( testCaseStats.stdOut ), XmlFormatting::Newline ); + if( !testCaseStats.stdErr.empty() ) + m_xml.scopedElement( "StdErr" ).writeText( trim( testCaseStats.stdErr ), XmlFormatting::Newline ); + + m_xml.endElement(); + } + + void XmlReporter::testGroupEnded( TestGroupStats const& testGroupStats ) { + StreamingReporterBase::testGroupEnded( testGroupStats ); + // TODO: Check testGroupStats.aborting and act accordingly. + m_xml.scopedElement( "OverallResults" ) + .writeAttribute( "successes", testGroupStats.totals.assertions.passed ) + .writeAttribute( "failures", testGroupStats.totals.assertions.failed ) + .writeAttribute( "expectedFailures", testGroupStats.totals.assertions.failedButOk ); + m_xml.scopedElement( "OverallResultsCases") + .writeAttribute( "successes", testGroupStats.totals.testCases.passed ) + .writeAttribute( "failures", testGroupStats.totals.testCases.failed ) + .writeAttribute( "expectedFailures", testGroupStats.totals.testCases.failedButOk ); + m_xml.endElement(); + } + + void XmlReporter::testRunEnded( TestRunStats const& testRunStats ) { + StreamingReporterBase::testRunEnded( testRunStats ); + m_xml.scopedElement( "OverallResults" ) + .writeAttribute( "successes", testRunStats.totals.assertions.passed ) + .writeAttribute( "failures", testRunStats.totals.assertions.failed ) + .writeAttribute( "expectedFailures", testRunStats.totals.assertions.failedButOk ); + m_xml.scopedElement( "OverallResultsCases") + .writeAttribute( "successes", testRunStats.totals.testCases.passed ) + .writeAttribute( "failures", testRunStats.totals.testCases.failed ) + .writeAttribute( "expectedFailures", testRunStats.totals.testCases.failedButOk ); + m_xml.endElement(); + } + + void XmlReporter::benchmarkPreparing(std::string const& name) { + m_xml.startElement("BenchmarkResults") + .writeAttribute("name", name); + } + + void XmlReporter::benchmarkStarting(BenchmarkInfo const &info) { + m_xml.writeAttribute("samples", info.samples) + .writeAttribute("resamples", info.resamples) + .writeAttribute("iterations", info.iterations) + .writeAttribute("clockResolution", info.clockResolution) + .writeAttribute("estimatedDuration", info.estimatedDuration) + .writeComment("All values in nano seconds"); + } + + void XmlReporter::benchmarkEnded(BenchmarkStats<> const& benchmarkStats) { + m_xml.startElement("mean") + .writeAttribute("value", benchmarkStats.mean.point.count()) + .writeAttribute("lowerBound", benchmarkStats.mean.lower_bound.count()) + .writeAttribute("upperBound", benchmarkStats.mean.upper_bound.count()) + .writeAttribute("ci", benchmarkStats.mean.confidence_interval); + m_xml.endElement(); + m_xml.startElement("standardDeviation") + .writeAttribute("value", benchmarkStats.standardDeviation.point.count()) + .writeAttribute("lowerBound", benchmarkStats.standardDeviation.lower_bound.count()) + .writeAttribute("upperBound", benchmarkStats.standardDeviation.upper_bound.count()) + .writeAttribute("ci", benchmarkStats.standardDeviation.confidence_interval); + m_xml.endElement(); + m_xml.startElement("outliers") + .writeAttribute("variance", benchmarkStats.outlierVariance) + .writeAttribute("lowMild", benchmarkStats.outliers.low_mild) + .writeAttribute("lowSevere", benchmarkStats.outliers.low_severe) + .writeAttribute("highMild", benchmarkStats.outliers.high_mild) + .writeAttribute("highSevere", benchmarkStats.outliers.high_severe); + m_xml.endElement(); + m_xml.endElement(); + } + + void XmlReporter::benchmarkFailed(std::string const &error) { + m_xml.scopedElement("failed"). + writeAttribute("message", error); + m_xml.endElement(); + } + + void XmlReporter::listReporters(std::vector const& descriptions, IConfig const&) { + auto outerTag = m_xml.scopedElement("AvailableReporters"); + for (auto const& reporter : descriptions) { + auto inner = m_xml.scopedElement("Reporter"); + m_xml.startElement("Name", XmlFormatting::Indent) + .writeText(reporter.name, XmlFormatting::None) + .endElement(XmlFormatting::Newline); + m_xml.startElement("Description", XmlFormatting::Indent) + .writeText(reporter.description, XmlFormatting::None) + .endElement(XmlFormatting::Newline); + } + } + + void XmlReporter::listTests(std::vector const& tests, IConfig const&) { + auto outerTag = m_xml.scopedElement("MatchingTests"); + for (auto const& test : tests) { + auto innerTag = m_xml.scopedElement("TestCase"); + auto const& testInfo = test.getTestCaseInfo(); + m_xml.startElement("Name", XmlFormatting::Indent) + .writeText(testInfo.name, XmlFormatting::None) + .endElement(XmlFormatting::Newline); + m_xml.startElement("ClassName", XmlFormatting::Indent) + .writeText(testInfo.className, XmlFormatting::None) + .endElement(XmlFormatting::Newline); + m_xml.startElement("Tags", XmlFormatting::Indent) + .writeText(testInfo.tagsAsString(), XmlFormatting::None) + .endElement(XmlFormatting::Newline); + + auto sourceTag = m_xml.scopedElement("SourceInfo"); + m_xml.startElement("File", XmlFormatting::Indent) + .writeText(testInfo.lineInfo.file, XmlFormatting::None) + .endElement(XmlFormatting::Newline); + m_xml.startElement("Line", XmlFormatting::Indent) + .writeText(std::to_string(testInfo.lineInfo.line), XmlFormatting::None) + .endElement(XmlFormatting::Newline); + } + } + + void XmlReporter::listTags(std::vector const& tags, IConfig const&) { + auto outerTag = m_xml.scopedElement("TagsFromMatchingTests"); + for (auto const& tag : tags) { + auto innerTag = m_xml.scopedElement("Tag"); + m_xml.startElement("Count", XmlFormatting::Indent) + .writeText(std::to_string(tag.count), XmlFormatting::None) + .endElement(XmlFormatting::Newline); + auto aliasTag = m_xml.scopedElement("Aliases"); + for (auto const& alias : tag.spellings) { + m_xml.startElement("Alias", XmlFormatting::Indent) + .writeText(static_cast(alias), XmlFormatting::None) + .endElement(XmlFormatting::Newline); + } + } + } + +} // end namespace Catch + +#if defined(_MSC_VER) +#pragma warning(pop) +#endif \ No newline at end of file diff --git a/shm/test/catch_amalgamated.hpp b/shm/test/catch_amalgamated.hpp new file mode 100644 index 000000000..281d16f1f --- /dev/null +++ b/shm/test/catch_amalgamated.hpp @@ -0,0 +1,10987 @@ +// Copyright Catch2 Authors +// Distributed under the Boost Software License, Version 1.0. +// (See accompanying file LICENSE_1_0.txt or copy at +// https://www.boost.org/LICENSE_1_0.txt) + +// SPDX-License-Identifier: BSL-1.0 + +// Catch v3.0.0-preview.3 +// Generated: 2020-10-08 13:59:26.309308 +// ---------------------------------------------------------- +// This file is an amalgamation of multiple different files. +// You probably shouldn't edit it directly. +// ---------------------------------------------------------- +#ifndef CATCH_AMALGAMATED_HPP_INCLUDED +#define CATCH_AMALGAMATED_HPP_INCLUDED + + +/** \file + * This is a convenience header for Catch2. It includes **all** of Catch2 headers. + * + * Generally the Catch2 users should use specific includes they need, + * but this header can be used instead for ease-of-experimentation, or + * just plain convenience, at the cost of (significantly) increased + * compilation times. + * + * When a new header is added to either the top level folder, or to the + * corresponding internal subfolder, it should be added here. Headers + * added to the various subparts (e.g. matchers, generators, etc...), + * should go their respective catch-all headers. + */ + +#ifndef CATCH_ALL_HPP_INCLUDED +#define CATCH_ALL_HPP_INCLUDED + + + +/** \file + * This is a convenience header for Catch2's benchmarking. It includes + * **all** of Catch2 headers related to benchmarking. + * + * Generally the Catch2 users should use specific includes they need, + * but this header can be used instead for ease-of-experimentation, or + * just plain convenience, at the cost of (significantly) increased + * compilation times. + * + * When a new header is added to either the `benchmark` folder, or to + * the corresponding internal (detail) subfolder, it should be added here. + */ + +#ifndef CATCH_BENCHMARK_ALL_HPP_INCLUDED +#define CATCH_BENCHMARK_ALL_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_BENCHMARK_HPP_INCLUDED +#define CATCH_BENCHMARK_HPP_INCLUDED + + + +#ifndef CATCH_INTERFACES_CONFIG_HPP_INCLUDED +#define CATCH_INTERFACES_CONFIG_HPP_INCLUDED + + + +#ifndef CATCH_NONCOPYABLE_HPP_INCLUDED +#define CATCH_NONCOPYABLE_HPP_INCLUDED + +namespace Catch { + namespace Detail { + + //! Deriving classes become noncopyable and nonmovable + class NonCopyable { + NonCopyable( NonCopyable const& ) = delete; + NonCopyable( NonCopyable&& ) = delete; + NonCopyable& operator=( NonCopyable const& ) = delete; + NonCopyable& operator=( NonCopyable&& ) = delete; + + protected: + NonCopyable() noexcept = default; + }; + + } // namespace Detail +} // namespace Catch + +#endif // CATCH_NONCOPYABLE_HPP_INCLUDED + +#include +#include +#include +#include + +namespace Catch { + + enum class Verbosity { + Quiet = 0, + Normal, + High + }; + + struct WarnAbout { enum What { + Nothing = 0x00, + NoAssertions = 0x01, + NoTests = 0x02 + }; }; + + enum class ShowDurations { + DefaultForReporter, + Always, + Never + }; + enum class TestRunOrder { + Declared, + LexicographicallySorted, + Randomized + }; + enum class UseColour { + Auto, + Yes, + No + }; + struct WaitForKeypress { enum When { + Never, + BeforeStart = 1, + BeforeExit = 2, + BeforeStartAndExit = BeforeStart | BeforeExit + }; }; + + class TestSpec; + + struct IConfig : Detail::NonCopyable { + + virtual ~IConfig(); + + virtual bool allowThrows() const = 0; + virtual std::ostream& stream() const = 0; + virtual std::string name() const = 0; + virtual bool includeSuccessfulResults() const = 0; + virtual bool shouldDebugBreak() const = 0; + virtual bool warnAboutMissingAssertions() const = 0; + virtual bool warnAboutNoTests() const = 0; + virtual int abortAfter() const = 0; + virtual bool showInvisibles() const = 0; + virtual ShowDurations showDurations() const = 0; + virtual double minDuration() const = 0; + virtual TestSpec const& testSpec() const = 0; + virtual bool hasTestFilters() const = 0; + virtual std::vector const& getTestsOrTags() const = 0; + virtual TestRunOrder runOrder() const = 0; + virtual unsigned int rngSeed() const = 0; + virtual UseColour useColour() const = 0; + virtual std::vector const& getSectionsToRun() const = 0; + virtual Verbosity verbosity() const = 0; + + virtual bool benchmarkNoAnalysis() const = 0; + virtual int benchmarkSamples() const = 0; + virtual double benchmarkConfidenceInterval() const = 0; + virtual unsigned int benchmarkResamples() const = 0; + virtual std::chrono::milliseconds benchmarkWarmupTime() const = 0; + }; +} + +#endif // CATCH_INTERFACES_CONFIG_HPP_INCLUDED + + +#ifndef CATCH_CONTEXT_HPP_INCLUDED +#define CATCH_CONTEXT_HPP_INCLUDED + +namespace Catch { + + struct IResultCapture; + struct IRunner; + struct IConfig; + + struct IContext + { + virtual ~IContext(); + + virtual IResultCapture* getResultCapture() = 0; + virtual IRunner* getRunner() = 0; + virtual IConfig const* getConfig() const = 0; + }; + + struct IMutableContext : IContext + { + virtual ~IMutableContext(); + virtual void setResultCapture( IResultCapture* resultCapture ) = 0; + virtual void setRunner( IRunner* runner ) = 0; + virtual void setConfig( IConfig const* config ) = 0; + + private: + static IMutableContext *currentContext; + friend IMutableContext& getCurrentMutableContext(); + friend void cleanUpContext(); + static void createContext(); + }; + + inline IMutableContext& getCurrentMutableContext() + { + if( !IMutableContext::currentContext ) + IMutableContext::createContext(); + // NOLINTNEXTLINE(clang-analyzer-core.uninitialized.UndefReturn) + return *IMutableContext::currentContext; + } + + inline IContext& getCurrentContext() + { + return getCurrentMutableContext(); + } + + void cleanUpContext(); + + class SimplePcg32; + SimplePcg32& rng(); +} + +#endif // CATCH_CONTEXT_HPP_INCLUDED + + +#ifndef CATCH_INTERFACES_REPORTER_HPP_INCLUDED +#define CATCH_INTERFACES_REPORTER_HPP_INCLUDED + + + +#ifndef CATCH_SECTION_INFO_HPP_INCLUDED +#define CATCH_SECTION_INFO_HPP_INCLUDED + + + +#ifndef CATCH_COMMON_HPP_INCLUDED +#define CATCH_COMMON_HPP_INCLUDED + + + +#ifndef CATCH_COMPILER_CAPABILITIES_HPP_INCLUDED +#define CATCH_COMPILER_CAPABILITIES_HPP_INCLUDED + +// Detect a number of compiler features - by compiler +// The following features are defined: +// +// CATCH_CONFIG_COUNTER : is the __COUNTER__ macro supported? +// CATCH_CONFIG_WINDOWS_SEH : is Windows SEH supported? +// CATCH_CONFIG_POSIX_SIGNALS : are POSIX signals supported? +// CATCH_CONFIG_DISABLE_EXCEPTIONS : Are exceptions enabled? +// **************** +// Note to maintainers: if new toggles are added please document them +// in configuration.md, too +// **************** + +// In general each macro has a _NO_ form +// (e.g. CATCH_CONFIG_NO_POSIX_SIGNALS) which disables the feature. +// Many features, at point of detection, define an _INTERNAL_ macro, so they +// can be combined, en-mass, with the _NO_ forms later. + + + +#ifndef CATCH_PLATFORM_HPP_INCLUDED +#define CATCH_PLATFORM_HPP_INCLUDED + +#ifdef __APPLE__ +# include +# if TARGET_OS_OSX == 1 +# define CATCH_PLATFORM_MAC +# elif TARGET_OS_IPHONE == 1 +# define CATCH_PLATFORM_IPHONE +# endif + +#elif defined(linux) || defined(__linux) || defined(__linux__) +# define CATCH_PLATFORM_LINUX + +#elif defined(WIN32) || defined(__WIN32__) || defined(_WIN32) || defined(_MSC_VER) || defined(__MINGW32__) +# define CATCH_PLATFORM_WINDOWS +#endif + +#endif // CATCH_PLATFORM_HPP_INCLUDED + +#ifdef __cplusplus + +# if (__cplusplus >= 201402L) || (defined(_MSVC_LANG) && _MSVC_LANG >= 201402L) +# define CATCH_CPP14_OR_GREATER +# endif + +# if (__cplusplus >= 201703L) || (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) +# define CATCH_CPP17_OR_GREATER +# endif + +#endif + +// We have to avoid both ICC and Clang, because they try to mask themselves +// as gcc, and we want only GCC in this block +#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && !defined(__CUDACC__) +# define CATCH_INTERNAL_START_WARNINGS_SUPPRESSION _Pragma( "GCC diagnostic push" ) +# define CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION _Pragma( "GCC diagnostic pop" ) + +// This only works on GCC 9+. so we have to also add a global suppression of Wparentheses +// for older versions of GCC. +# define CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS \ + _Pragma( "GCC diagnostic ignored \"-Wparentheses\"" ) + +# define CATCH_INTERNAL_SUPPRESS_UNUSED_VARIABLE_WARNINGS \ + _Pragma( "GCC diagnostic ignored \"-Wunused-variable\"" ) + +# define CATCH_INTERNAL_IGNORE_BUT_WARN(...) (void)__builtin_constant_p(__VA_ARGS__) + +#endif + +#if defined(__clang__) + +# define CATCH_INTERNAL_START_WARNINGS_SUPPRESSION _Pragma( "clang diagnostic push" ) +# define CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION _Pragma( "clang diagnostic pop" ) + +// As of this writing, IBM XL's implementation of __builtin_constant_p has a bug +// which results in calls to destructors being emitted for each temporary, +// without a matching initialization. In practice, this can result in something +// like `std::string::~string` being called on an uninitialized value. +// +// For example, this code will likely segfault under IBM XL: +// ``` +// REQUIRE(std::string("12") + "34" == "1234") +// ``` +// +// Therefore, `CATCH_INTERNAL_IGNORE_BUT_WARN` is not implemented. +# if !defined(__ibmxl__) && !defined(__CUDACC__) +# define CATCH_INTERNAL_IGNORE_BUT_WARN(...) (void)__builtin_constant_p(__VA_ARGS__) /* NOLINT(cppcoreguidelines-pro-type-vararg, hicpp-vararg) */ +# endif + + +# define CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wexit-time-destructors\"" ) \ + _Pragma( "clang diagnostic ignored \"-Wglobal-constructors\"") + +# define CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wparentheses\"" ) + +# define CATCH_INTERNAL_SUPPRESS_UNUSED_VARIABLE_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wunused-variable\"" ) + +# define CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wgnu-zero-variadic-macro-arguments\"" ) + +# define CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS \ + _Pragma( "clang diagnostic ignored \"-Wunused-template\"" ) + +#endif // __clang__ + + +//////////////////////////////////////////////////////////////////////////////// +// Assume that non-Windows platforms support posix signals by default +#if !defined(CATCH_PLATFORM_WINDOWS) + #define CATCH_INTERNAL_CONFIG_POSIX_SIGNALS +#endif + +//////////////////////////////////////////////////////////////////////////////// +// We know some environments not to support full POSIX signals +#if defined(__CYGWIN__) || defined(__QNX__) || defined(__EMSCRIPTEN__) || defined(__DJGPP__) + #define CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS +#endif + +#ifdef __OS400__ +# define CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS +# define CATCH_CONFIG_COLOUR_NONE +#endif + +//////////////////////////////////////////////////////////////////////////////// +// Android somehow still does not support std::to_string +#if defined(__ANDROID__) +# define CATCH_INTERNAL_CONFIG_NO_CPP11_TO_STRING +# define CATCH_INTERNAL_CONFIG_ANDROID_LOGWRITE +#endif + +//////////////////////////////////////////////////////////////////////////////// +// Not all Windows environments support SEH properly +#if defined(__MINGW32__) +# define CATCH_INTERNAL_CONFIG_NO_WINDOWS_SEH +#endif + +//////////////////////////////////////////////////////////////////////////////// +// PS4 +#if defined(__ORBIS__) +# define CATCH_INTERNAL_CONFIG_NO_NEW_CAPTURE +#endif + +//////////////////////////////////////////////////////////////////////////////// +// Cygwin +#ifdef __CYGWIN__ + +// Required for some versions of Cygwin to declare gettimeofday +// see: http://stackoverflow.com/questions/36901803/gettimeofday-not-declared-in-this-scope-cygwin +# define _BSD_SOURCE +// some versions of cygwin (most) do not support std::to_string. Use the libstd check. +// https://gcc.gnu.org/onlinedocs/gcc-4.8.2/libstdc++/api/a01053_source.html line 2812-2813 +# if !((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99) \ + && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF)) + +# define CATCH_INTERNAL_CONFIG_NO_CPP11_TO_STRING + +# endif +#endif // __CYGWIN__ + +//////////////////////////////////////////////////////////////////////////////// +// Visual C++ +#if defined(_MSC_VER) + +# define CATCH_INTERNAL_START_WARNINGS_SUPPRESSION __pragma( warning(push) ) +# define CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION __pragma( warning(pop) ) + +// Universal Windows platform does not support SEH +// Or console colours (or console at all...) +# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_APP) +# define CATCH_CONFIG_COLOUR_NONE +# else +# define CATCH_INTERNAL_CONFIG_WINDOWS_SEH +# endif + +// MSVC traditional preprocessor needs some workaround for __VA_ARGS__ +// _MSVC_TRADITIONAL == 0 means new conformant preprocessor +// _MSVC_TRADITIONAL == 1 means old traditional non-conformant preprocessor +# if !defined(__clang__) // Handle Clang masquerading for msvc +# if !defined(_MSVC_TRADITIONAL) || (defined(_MSVC_TRADITIONAL) && _MSVC_TRADITIONAL) +# define CATCH_INTERNAL_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR +# endif // MSVC_TRADITIONAL +# endif // __clang__ + +#endif // _MSC_VER + +#if defined(_REENTRANT) || defined(_MSC_VER) +// Enable async processing, as -pthread is specified or no additional linking is required +# define CATCH_INTERNAL_CONFIG_USE_ASYNC +#endif // _MSC_VER + +//////////////////////////////////////////////////////////////////////////////// +// Check if we are compiled with -fno-exceptions or equivalent +#if defined(__EXCEPTIONS) || defined(__cpp_exceptions) || defined(_CPPUNWIND) +# define CATCH_INTERNAL_CONFIG_EXCEPTIONS_ENABLED +#endif + +//////////////////////////////////////////////////////////////////////////////// +// DJGPP +#ifdef __DJGPP__ +# define CATCH_INTERNAL_CONFIG_NO_WCHAR +#endif // __DJGPP__ + +//////////////////////////////////////////////////////////////////////////////// +// Embarcadero C++Build +#if defined(__BORLANDC__) + #define CATCH_INTERNAL_CONFIG_POLYFILL_ISNAN +#endif + +//////////////////////////////////////////////////////////////////////////////// + +// Use of __COUNTER__ is suppressed during code analysis in +// CLion/AppCode 2017.2.x and former, because __COUNTER__ is not properly +// handled by it. +// Otherwise all supported compilers support COUNTER macro, +// but user still might want to turn it off +#if ( !defined(__JETBRAINS_IDE__) || __JETBRAINS_IDE__ >= 20170300L ) + #define CATCH_INTERNAL_CONFIG_COUNTER +#endif + + +//////////////////////////////////////////////////////////////////////////////// + +// RTX is a special version of Windows that is real time. +// This means that it is detected as Windows, but does not provide +// the same set of capabilities as real Windows does. +#if defined(UNDER_RTSS) || defined(RTX64_BUILD) + #define CATCH_INTERNAL_CONFIG_NO_WINDOWS_SEH + #define CATCH_INTERNAL_CONFIG_NO_ASYNC + #define CATCH_CONFIG_COLOUR_NONE +#endif + +#if !defined(_GLIBCXX_USE_C99_MATH_TR1) +#define CATCH_INTERNAL_CONFIG_GLOBAL_NEXTAFTER +#endif + +// Various stdlib support checks that require __has_include +#if defined(__has_include) + // Check if string_view is available and usable + #if __has_include() && defined(CATCH_CPP17_OR_GREATER) + # define CATCH_INTERNAL_CONFIG_CPP17_STRING_VIEW + #endif + + // Check if optional is available and usable + # if __has_include() && defined(CATCH_CPP17_OR_GREATER) + # define CATCH_INTERNAL_CONFIG_CPP17_OPTIONAL + # endif // __has_include() && defined(CATCH_CPP17_OR_GREATER) + + // Check if byte is available and usable + # if __has_include() && defined(CATCH_CPP17_OR_GREATER) + # include + # if __cpp_lib_byte > 0 + # define CATCH_INTERNAL_CONFIG_CPP17_BYTE + # endif + # endif // __has_include() && defined(CATCH_CPP17_OR_GREATER) + + // Check if variant is available and usable + # if __has_include() && defined(CATCH_CPP17_OR_GREATER) + # if defined(__clang__) && (__clang_major__ < 8) + // work around clang bug with libstdc++ https://bugs.llvm.org/show_bug.cgi?id=31852 + // fix should be in clang 8, workaround in libstdc++ 8.2 + # include + # if defined(__GLIBCXX__) && defined(_GLIBCXX_RELEASE) && (_GLIBCXX_RELEASE < 9) + # define CATCH_CONFIG_NO_CPP17_VARIANT + # else + # define CATCH_INTERNAL_CONFIG_CPP17_VARIANT + # endif // defined(__GLIBCXX__) && defined(_GLIBCXX_RELEASE) && (_GLIBCXX_RELEASE < 9) + # else + # define CATCH_INTERNAL_CONFIG_CPP17_VARIANT + # endif // defined(__clang__) && (__clang_major__ < 8) + # endif // __has_include() && defined(CATCH_CPP17_OR_GREATER) +#endif // defined(__has_include) + + +#if defined(CATCH_INTERNAL_CONFIG_COUNTER) && !defined(CATCH_CONFIG_NO_COUNTER) && !defined(CATCH_CONFIG_COUNTER) +# define CATCH_CONFIG_COUNTER +#endif +#if defined(CATCH_INTERNAL_CONFIG_WINDOWS_SEH) && !defined(CATCH_CONFIG_NO_WINDOWS_SEH) && !defined(CATCH_CONFIG_WINDOWS_SEH) && !defined(CATCH_INTERNAL_CONFIG_NO_WINDOWS_SEH) +# define CATCH_CONFIG_WINDOWS_SEH +#endif +// This is set by default, because we assume that unix compilers are posix-signal-compatible by default. +#if defined(CATCH_INTERNAL_CONFIG_POSIX_SIGNALS) && !defined(CATCH_INTERNAL_CONFIG_NO_POSIX_SIGNALS) && !defined(CATCH_CONFIG_NO_POSIX_SIGNALS) && !defined(CATCH_CONFIG_POSIX_SIGNALS) +# define CATCH_CONFIG_POSIX_SIGNALS +#endif +// This is set by default, because we assume that compilers with no wchar_t support are just rare exceptions. +#if !defined(CATCH_INTERNAL_CONFIG_NO_WCHAR) && !defined(CATCH_CONFIG_NO_WCHAR) && !defined(CATCH_CONFIG_WCHAR) +# define CATCH_CONFIG_WCHAR +#endif + +#if !defined(CATCH_INTERNAL_CONFIG_NO_CPP11_TO_STRING) && !defined(CATCH_CONFIG_NO_CPP11_TO_STRING) && !defined(CATCH_CONFIG_CPP11_TO_STRING) +# define CATCH_CONFIG_CPP11_TO_STRING +#endif + +#if defined(CATCH_INTERNAL_CONFIG_CPP17_OPTIONAL) && !defined(CATCH_CONFIG_NO_CPP17_OPTIONAL) && !defined(CATCH_CONFIG_CPP17_OPTIONAL) +# define CATCH_CONFIG_CPP17_OPTIONAL +#endif + +#if defined(CATCH_INTERNAL_CONFIG_CPP17_STRING_VIEW) && !defined(CATCH_CONFIG_NO_CPP17_STRING_VIEW) && !defined(CATCH_CONFIG_CPP17_STRING_VIEW) +# define CATCH_CONFIG_CPP17_STRING_VIEW +#endif + +#if defined(CATCH_INTERNAL_CONFIG_CPP17_VARIANT) && !defined(CATCH_CONFIG_NO_CPP17_VARIANT) && !defined(CATCH_CONFIG_CPP17_VARIANT) +# define CATCH_CONFIG_CPP17_VARIANT +#endif + +#if defined(CATCH_INTERNAL_CONFIG_CPP17_BYTE) && !defined(CATCH_CONFIG_NO_CPP17_BYTE) && !defined(CATCH_CONFIG_CPP17_BYTE) +# define CATCH_CONFIG_CPP17_BYTE +#endif + + +#if defined(CATCH_CONFIG_EXPERIMENTAL_REDIRECT) +# define CATCH_INTERNAL_CONFIG_NEW_CAPTURE +#endif + +#if defined(CATCH_INTERNAL_CONFIG_NEW_CAPTURE) && !defined(CATCH_INTERNAL_CONFIG_NO_NEW_CAPTURE) && !defined(CATCH_CONFIG_NO_NEW_CAPTURE) && !defined(CATCH_CONFIG_NEW_CAPTURE) +# define CATCH_CONFIG_NEW_CAPTURE +#endif + +#if !defined(CATCH_INTERNAL_CONFIG_EXCEPTIONS_ENABLED) && !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) +# define CATCH_CONFIG_DISABLE_EXCEPTIONS +#endif + +#if defined(CATCH_INTERNAL_CONFIG_POLYFILL_ISNAN) && !defined(CATCH_CONFIG_NO_POLYFILL_ISNAN) && !defined(CATCH_CONFIG_POLYFILL_ISNAN) +# define CATCH_CONFIG_POLYFILL_ISNAN +#endif + +#if defined(CATCH_INTERNAL_CONFIG_USE_ASYNC) && !defined(CATCH_INTERNAL_CONFIG_NO_ASYNC) && !defined(CATCH_CONFIG_NO_USE_ASYNC) && !defined(CATCH_CONFIG_USE_ASYNC) +# define CATCH_CONFIG_USE_ASYNC +#endif + +#if defined(CATCH_INTERNAL_CONFIG_ANDROID_LOGWRITE) && !defined(CATCH_CONFIG_NO_ANDROID_LOGWRITE) && !defined(CATCH_CONFIG_ANDROID_LOGWRITE) +# define CATCH_CONFIG_ANDROID_LOGWRITE +#endif + +#if defined(CATCH_INTERNAL_CONFIG_GLOBAL_NEXTAFTER) && !defined(CATCH_CONFIG_NO_GLOBAL_NEXTAFTER) && !defined(CATCH_CONFIG_GLOBAL_NEXTAFTER) +# define CATCH_CONFIG_GLOBAL_NEXTAFTER +#endif + + +// Even if we do not think the compiler has that warning, we still have +// to provide a macro that can be used by the code. +#if !defined(CATCH_INTERNAL_START_WARNINGS_SUPPRESSION) +# define CATCH_INTERNAL_START_WARNINGS_SUPPRESSION +#endif +#if !defined(CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION) +# define CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION +#endif +#if !defined(CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS +#endif +#if !defined(CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS +#endif +#if !defined(CATCH_INTERNAL_SUPPRESS_UNUSED_VARIABLE_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_UNUSED_VARIABLE_WARNINGS +#endif +#if !defined(CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_ZERO_VARIADIC_WARNINGS +#endif + +// The goal of this macro is to avoid evaluation of the arguments, but +// still have the compiler warn on problems inside... +#if !defined(CATCH_INTERNAL_IGNORE_BUT_WARN) +# define CATCH_INTERNAL_IGNORE_BUT_WARN(...) +#endif + +#if defined(__APPLE__) && defined(__apple_build_version__) && (__clang_major__ < 10) +# undef CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS +#elif defined(__clang__) && (__clang_major__ < 5) +# undef CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS +#endif + +#if !defined(CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS) +# define CATCH_INTERNAL_SUPPRESS_UNUSED_TEMPLATE_WARNINGS +#endif + +#if defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) +#define CATCH_TRY if ((true)) +#define CATCH_CATCH_ALL if ((false)) +#define CATCH_CATCH_ANON(type) if ((false)) +#else +#define CATCH_TRY try +#define CATCH_CATCH_ALL catch (...) +#define CATCH_CATCH_ANON(type) catch (type) +#endif + +#if defined(CATCH_INTERNAL_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR) && !defined(CATCH_CONFIG_NO_TRADITIONAL_MSVC_PREPROCESSOR) && !defined(CATCH_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR) +#define CATCH_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR +#endif + +#endif // CATCH_COMPILER_CAPABILITIES_HPP_INCLUDED + + +#ifndef CATCH_STRINGREF_HPP_INCLUDED +#define CATCH_STRINGREF_HPP_INCLUDED + +#include +#include +#include +#include + +namespace Catch { + + /// A non-owning string class (similar to the forthcoming std::string_view) + /// Note that, because a StringRef may be a substring of another string, + /// it may not be null terminated. + class StringRef { + public: + using size_type = std::size_t; + using const_iterator = const char*; + + private: + static constexpr char const* const s_empty = ""; + + char const* m_start = s_empty; + size_type m_size = 0; + + public: // construction + constexpr StringRef() noexcept = default; + + StringRef( char const* rawChars ) noexcept; + + constexpr StringRef( char const* rawChars, size_type size ) noexcept + : m_start( rawChars ), + m_size( size ) + {} + + StringRef( std::string const& stdString ) noexcept + : m_start( stdString.c_str() ), + m_size( stdString.size() ) + {} + + explicit operator std::string() const { + return std::string(m_start, m_size); + } + + public: // operators + auto operator == ( StringRef const& other ) const noexcept -> bool; + auto operator != (StringRef const& other) const noexcept -> bool { + return !(*this == other); + } + + constexpr auto operator[] ( size_type index ) const noexcept -> char { + assert(index < m_size); + return m_start[index]; + } + + bool operator<(StringRef const& rhs) const noexcept; + + public: // named queries + constexpr auto empty() const noexcept -> bool { + return m_size == 0; + } + constexpr auto size() const noexcept -> size_type { + return m_size; + } + + // Returns the current start pointer. If the StringRef is not + // null-terminated, throws std::domain_exception + auto c_str() const -> char const*; + + public: // substrings and searches + // Returns a substring of [start, start + length). + // If start + length > size(), then the substring is [start, start + size()). + // If start > size(), then the substring is empty. + constexpr StringRef substr(size_type start, size_type length) const noexcept { + if (start < m_size) { + const auto shortened_size = m_size - start; + return StringRef(m_start + start, (shortened_size < length) ? shortened_size : length); + } else { + return StringRef(); + } + } + + // Returns the current start pointer. May not be null-terminated. + constexpr char const* data() const noexcept { + return m_start; + } + + constexpr auto isNullTerminated() const noexcept -> bool { + return m_start[m_size] == '\0'; + } + + public: // iterators + constexpr const_iterator begin() const { return m_start; } + constexpr const_iterator end() const { return m_start + m_size; } + + + friend std::string& operator += (std::string& lhs, StringRef const& sr); + friend std::ostream& operator << (std::ostream& os, StringRef const& sr); + friend std::string operator+(StringRef lhs, StringRef rhs); + }; + + + constexpr auto operator "" _sr( char const* rawChars, std::size_t size ) noexcept -> StringRef { + return StringRef( rawChars, size ); + } +} // namespace Catch + +constexpr auto operator "" _catch_sr( char const* rawChars, std::size_t size ) noexcept -> Catch::StringRef { + return Catch::StringRef( rawChars, size ); +} + +#endif // CATCH_STRINGREF_HPP_INCLUDED + +#define INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) name##line +#define INTERNAL_CATCH_UNIQUE_NAME_LINE( name, line ) INTERNAL_CATCH_UNIQUE_NAME_LINE2( name, line ) +#ifdef CATCH_CONFIG_COUNTER +# define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __COUNTER__ ) +#else +# define INTERNAL_CATCH_UNIQUE_NAME( name ) INTERNAL_CATCH_UNIQUE_NAME_LINE( name, __LINE__ ) +#endif + +#include + +// We need a dummy global operator<< so we can bring it into Catch namespace later +struct Catch_global_namespace_dummy {}; +std::ostream& operator<<(std::ostream&, Catch_global_namespace_dummy); + +namespace Catch { + + struct SourceLineInfo { + + SourceLineInfo() = delete; + constexpr SourceLineInfo( char const* _file, std::size_t _line ) noexcept: + file( _file ), + line( _line ) + {} + + bool operator == ( SourceLineInfo const& other ) const noexcept; + bool operator < ( SourceLineInfo const& other ) const noexcept; + + char const* file; + std::size_t line; + + friend std::ostream& operator << (std::ostream& os, SourceLineInfo const& info); + }; + + + // Bring in operator<< from global namespace into Catch namespace + // This is necessary because the overload of operator<< above makes + // lookup stop at namespace Catch + using ::operator<<; + + // Use this in variadic streaming macros to allow + // >> +StreamEndStop + // as well as + // >> stuff +StreamEndStop + struct StreamEndStop { + StringRef operator+() const { + return StringRef(); + } + + template + friend T const& operator + ( T const& value, StreamEndStop ) { + return value; + } + }; +} + +#define CATCH_INTERNAL_LINEINFO \ + ::Catch::SourceLineInfo( __FILE__, static_cast( __LINE__ ) ) + +#endif // CATCH_COMMON_HPP_INCLUDED + + +#ifndef CATCH_TOTALS_HPP_INCLUDED +#define CATCH_TOTALS_HPP_INCLUDED + +#include + +namespace Catch { + + struct Counts { + Counts operator - ( Counts const& other ) const; + Counts& operator += ( Counts const& other ); + + std::size_t total() const; + bool allPassed() const; + bool allOk() const; + + std::size_t passed = 0; + std::size_t failed = 0; + std::size_t failedButOk = 0; + }; + + struct Totals { + + Totals operator - ( Totals const& other ) const; + Totals& operator += ( Totals const& other ); + + Totals delta( Totals const& prevTotals ) const; + + int error = 0; + Counts assertions; + Counts testCases; + }; +} + +#endif // CATCH_TOTALS_HPP_INCLUDED + +#include + +namespace Catch { + + struct SectionInfo { + // The last argument is ignored, so that people can write + // SECTION("ShortName", "Proper description that is long") and + // still use the `-c` flag comfortably. + SectionInfo( SourceLineInfo const& _lineInfo, std::string _name, + const char* const = nullptr ): + name(std::move(_name)), + lineInfo(_lineInfo) + {} + + std::string name; + SourceLineInfo lineInfo; + }; + + struct SectionEndInfo { + SectionInfo sectionInfo; + Counts prevAssertions; + double durationInSeconds; + }; + +} // end namespace Catch + +#endif // CATCH_SECTION_INFO_HPP_INCLUDED + + +#ifndef CATCH_ASSERTION_RESULT_HPP_INCLUDED +#define CATCH_ASSERTION_RESULT_HPP_INCLUDED + +#include + + +#ifndef CATCH_ASSERTION_INFO_HPP_INCLUDED +#define CATCH_ASSERTION_INFO_HPP_INCLUDED + + + +#ifndef CATCH_RESULT_TYPE_HPP_INCLUDED +#define CATCH_RESULT_TYPE_HPP_INCLUDED + +namespace Catch { + + // ResultWas::OfType enum + struct ResultWas { enum OfType { + Unknown = -1, + Ok = 0, + Info = 1, + Warning = 2, + + FailureBit = 0x10, + + ExpressionFailed = FailureBit | 1, + ExplicitFailure = FailureBit | 2, + + Exception = 0x100 | FailureBit, + + ThrewException = Exception | 1, + DidntThrowException = Exception | 2, + + FatalErrorCondition = 0x200 | FailureBit + + }; }; + + bool isOk( ResultWas::OfType resultType ); + bool isJustInfo( int flags ); + + + // ResultDisposition::Flags enum + struct ResultDisposition { enum Flags { + Normal = 0x01, + + ContinueOnFailure = 0x02, // Failures fail test, but execution continues + FalseTest = 0x04, // Prefix expression with ! + SuppressFail = 0x08 // Failures are reported but do not fail the test + }; }; + + ResultDisposition::Flags operator | ( ResultDisposition::Flags lhs, ResultDisposition::Flags rhs ); + + bool shouldContinueOnFailure( int flags ); + inline bool isFalseTest( int flags ) { return ( flags & ResultDisposition::FalseTest ) != 0; } + bool shouldSuppressFailure( int flags ); + +} // end namespace Catch + +#endif // CATCH_RESULT_TYPE_HPP_INCLUDED + +namespace Catch { + + struct AssertionInfo { + // AssertionInfo() = delete; + + StringRef macroName; + SourceLineInfo lineInfo; + StringRef capturedExpression; + ResultDisposition::Flags resultDisposition; + }; + +} // end namespace Catch + +#endif // CATCH_ASSERTION_INFO_HPP_INCLUDED + + +#ifndef CATCH_LAZY_EXPR_HPP_INCLUDED +#define CATCH_LAZY_EXPR_HPP_INCLUDED + +#include + +namespace Catch { + + struct ITransientExpression; + + class LazyExpression { + friend class AssertionHandler; + friend struct AssertionStats; + friend class RunContext; + + ITransientExpression const* m_transientExpression = nullptr; + bool m_isNegated; + public: + LazyExpression( bool isNegated ): + m_isNegated(isNegated) + {} + LazyExpression(LazyExpression const& other) = default; + LazyExpression& operator = ( LazyExpression const& ) = delete; + + explicit operator bool() const { + return m_transientExpression != nullptr; + } + + friend auto operator << ( std::ostream& os, LazyExpression const& lazyExpr ) -> std::ostream&; + }; + +} // namespace Catch + +#endif // CATCH_LAZY_EXPR_HPP_INCLUDED + +namespace Catch { + + struct AssertionResultData + { + AssertionResultData() = delete; + + AssertionResultData( ResultWas::OfType _resultType, LazyExpression const& _lazyExpression ); + + std::string message; + mutable std::string reconstructedExpression; + LazyExpression lazyExpression; + ResultWas::OfType resultType; + + std::string reconstructExpression() const; + }; + + class AssertionResult { + public: + AssertionResult() = delete; + AssertionResult( AssertionInfo const& info, AssertionResultData const& data ); + + bool isOk() const; + bool succeeded() const; + ResultWas::OfType getResultType() const; + bool hasExpression() const; + bool hasMessage() const; + std::string getExpression() const; + std::string getExpressionInMacro() const; + bool hasExpandedExpression() const; + std::string getExpandedExpression() const; + std::string getMessage() const; + SourceLineInfo getSourceInfo() const; + StringRef getTestMacroName() const; + + //protected: + AssertionInfo m_info; + AssertionResultData m_resultData; + }; + +} // end namespace Catch + +#endif // CATCH_ASSERTION_RESULT_HPP_INCLUDED + + +#ifndef CATCH_MESSAGE_INFO_HPP_INCLUDED +#define CATCH_MESSAGE_INFO_HPP_INCLUDED + + + +#ifndef CATCH_INTERFACES_CAPTURE_HPP_INCLUDED +#define CATCH_INTERFACES_CAPTURE_HPP_INCLUDED + +#include +#include + + +namespace Catch { + + class AssertionResult; + struct AssertionInfo; + struct SectionInfo; + struct SectionEndInfo; + struct MessageInfo; + struct MessageBuilder; + struct Counts; + struct AssertionReaction; + struct SourceLineInfo; + + struct ITransientExpression; + struct IGeneratorTracker; + + struct BenchmarkInfo; + template > + struct BenchmarkStats; + + struct IResultCapture { + + virtual ~IResultCapture(); + + virtual bool sectionStarted( SectionInfo const& sectionInfo, + Counts& assertions ) = 0; + virtual void sectionEnded( SectionEndInfo const& endInfo ) = 0; + virtual void sectionEndedEarly( SectionEndInfo const& endInfo ) = 0; + + virtual auto acquireGeneratorTracker( StringRef generatorName, SourceLineInfo const& lineInfo ) -> IGeneratorTracker& = 0; + + virtual void benchmarkPreparing( std::string const& name ) = 0; + virtual void benchmarkStarting( BenchmarkInfo const& info ) = 0; + virtual void benchmarkEnded( BenchmarkStats<> const& stats ) = 0; + virtual void benchmarkFailed( std::string const& error ) = 0; + + virtual void pushScopedMessage( MessageInfo const& message ) = 0; + virtual void popScopedMessage( MessageInfo const& message ) = 0; + + virtual void emplaceUnscopedMessage( MessageBuilder const& builder ) = 0; + + virtual void handleFatalErrorCondition( StringRef message ) = 0; + + virtual void handleExpr + ( AssertionInfo const& info, + ITransientExpression const& expr, + AssertionReaction& reaction ) = 0; + virtual void handleMessage + ( AssertionInfo const& info, + ResultWas::OfType resultType, + StringRef const& message, + AssertionReaction& reaction ) = 0; + virtual void handleUnexpectedExceptionNotThrown + ( AssertionInfo const& info, + AssertionReaction& reaction ) = 0; + virtual void handleUnexpectedInflightException + ( AssertionInfo const& info, + std::string const& message, + AssertionReaction& reaction ) = 0; + virtual void handleIncomplete + ( AssertionInfo const& info ) = 0; + virtual void handleNonExpr + ( AssertionInfo const &info, + ResultWas::OfType resultType, + AssertionReaction &reaction ) = 0; + + + + virtual bool lastAssertionPassed() = 0; + virtual void assertionPassed() = 0; + + // Deprecated, do not use: + virtual std::string getCurrentTestName() const = 0; + virtual const AssertionResult* getLastResult() const = 0; + virtual void exceptionEarlyReported() = 0; + }; + + IResultCapture& getResultCapture(); +} + +#endif // CATCH_INTERFACES_CAPTURE_HPP_INCLUDED + +#include + +namespace Catch { + + struct MessageInfo { + MessageInfo( StringRef const& _macroName, + SourceLineInfo const& _lineInfo, + ResultWas::OfType _type ); + + StringRef macroName; + std::string message; + SourceLineInfo lineInfo; + ResultWas::OfType type; + unsigned int sequence; + + bool operator == (MessageInfo const& other) const { + return sequence == other.sequence; + } + bool operator < (MessageInfo const& other) const { + return sequence < other.sequence; + } + private: + static unsigned int globalCount; + }; + +} // end namespace Catch + +#endif // CATCH_MESSAGE_INFO_HPP_INCLUDED + + +#ifndef CATCH_UNIQUE_PTR_HPP_INCLUDED +#define CATCH_UNIQUE_PTR_HPP_INCLUDED + +#include +#include + +namespace Catch { +namespace Detail { + // reimplementation of unique_ptr for improved compilation times + // Does not support custom deleters (and thus does not require EBO) + // Does not support arrays + template + class unique_ptr { + T* m_ptr; + public: + constexpr unique_ptr(std::nullptr_t = nullptr): + m_ptr{} + {} + explicit constexpr unique_ptr(T* ptr): + m_ptr(ptr) + {} + + template ::value>> + unique_ptr(unique_ptr&& from): + m_ptr(from.release()) + {} + + template ::value>> + unique_ptr& operator=(unique_ptr&& from) { + reset(from.release()); + + return *this; + } + + unique_ptr(unique_ptr const&) = delete; + unique_ptr& operator=(unique_ptr const&) = delete; + + unique_ptr(unique_ptr&& rhs) noexcept: + m_ptr(rhs.m_ptr) { + rhs.m_ptr = nullptr; + } + unique_ptr& operator=(unique_ptr&& rhs) noexcept { + reset(rhs.release()); + + return *this; + } + + ~unique_ptr() { + delete m_ptr; + } + + T& operator*() { + assert(m_ptr); + return *m_ptr; + } + T const& operator*() const { + assert(m_ptr); + return *m_ptr; + } + T* operator->() const noexcept { + assert(m_ptr); + return m_ptr; + } + + T* get() { return m_ptr; } + T const* get() const { return m_ptr; } + + void reset(T* ptr = nullptr) { + delete m_ptr; + m_ptr = ptr; + } + + T* release() { + auto temp = m_ptr; + m_ptr = nullptr; + return temp; + } + + explicit operator bool() const { + return m_ptr; + } + + friend void swap(unique_ptr& lhs, unique_ptr& rhs) { + auto temp = lhs.m_ptr; + lhs.m_ptr = rhs.m_ptr; + rhs.m_ptr = temp; + } + }; + + // Purposefully doesn't exist + // We could also rely on compiler warning + werror for calling plain delete + // on a T[], but this seems better. + // Maybe add definition and a static assert? + template + class unique_ptr; + + template + unique_ptr make_unique(Args&&... args) { + // static_cast does the same thing as std::forward in + // this case, but does not require including big header () + // and compiles faster thanks to not requiring template instantiation + // and overload resolution + return unique_ptr(new T(static_cast(args)...)); + } + + +} // end namespace Detail +} // end namespace Catch + +#endif // CATCH_UNIQUE_PTR_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_ESTIMATE_HPP_INCLUDED +#define CATCH_ESTIMATE_HPP_INCLUDED + +namespace Catch { + namespace Benchmark { + template + struct Estimate { + Duration point; + Duration lower_bound; + Duration upper_bound; + double confidence_interval; + + template + operator Estimate() const { + return { point, lower_bound, upper_bound, confidence_interval }; + } + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_ESTIMATE_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_OUTLIER_CLASSIFICATION_HPP_INCLUDED +#define CATCH_OUTLIER_CLASSIFICATION_HPP_INCLUDED + +namespace Catch { + namespace Benchmark { + struct OutlierClassification { + int samples_seen = 0; + int low_severe = 0; // more than 3 times IQR below Q1 + int low_mild = 0; // 1.5 to 3 times IQR below Q1 + int high_mild = 0; // 1.5 to 3 times IQR above Q3 + int high_severe = 0; // more than 3 times IQR above Q3 + + int total() const { + return low_severe + low_mild + high_mild + high_severe; + } + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_OUTLIERS_CLASSIFICATION_HPP_INCLUDED + + +#include +#include +#include + +namespace Catch { + + struct ReporterDescription; + struct TagInfo; + struct TestCaseInfo; + class TestCaseHandle; + struct IConfig; + + struct ReporterConfig { + explicit ReporterConfig( IConfig const* _fullConfig ); + + ReporterConfig( IConfig const* _fullConfig, std::ostream& _stream ); + + std::ostream& stream() const; + IConfig const* fullConfig() const; + + private: + std::ostream* m_stream; + IConfig const* m_fullConfig; + }; + + struct TestRunInfo { + TestRunInfo( std::string const& _name ); + std::string name; + }; + struct GroupInfo { + GroupInfo( std::string const& _name, + std::size_t _groupIndex, + std::size_t _groupsCount ); + + std::string name; + std::size_t groupIndex; + std::size_t groupsCounts; + }; + + struct AssertionStats { + AssertionStats( AssertionResult const& _assertionResult, + std::vector const& _infoMessages, + Totals const& _totals ); + + AssertionStats( AssertionStats const& ) = default; + AssertionStats( AssertionStats && ) = default; + AssertionStats& operator = ( AssertionStats const& ) = delete; + AssertionStats& operator = ( AssertionStats && ) = delete; + + AssertionResult assertionResult; + std::vector infoMessages; + Totals totals; + }; + + struct SectionStats { + SectionStats( SectionInfo const& _sectionInfo, + Counts const& _assertions, + double _durationInSeconds, + bool _missingAssertions ); + + SectionInfo sectionInfo; + Counts assertions; + double durationInSeconds; + bool missingAssertions; + }; + + struct TestCaseStats { + TestCaseStats( TestCaseInfo const& _testInfo, + Totals const& _totals, + std::string const& _stdOut, + std::string const& _stdErr, + bool _aborting ); + + TestCaseInfo const * testInfo; + Totals totals; + std::string stdOut; + std::string stdErr; + bool aborting; + }; + + struct TestGroupStats { + TestGroupStats( GroupInfo const& _groupInfo, + Totals const& _totals, + bool _aborting ); + TestGroupStats( GroupInfo const& _groupInfo ); + + GroupInfo groupInfo; + Totals totals; + bool aborting; + }; + + struct TestRunStats { + TestRunStats( TestRunInfo const& _runInfo, + Totals const& _totals, + bool _aborting ); + + TestRunInfo runInfo; + Totals totals; + bool aborting; + }; + + + struct BenchmarkInfo { + std::string name; + double estimatedDuration; + int iterations; + int samples; + unsigned int resamples; + double clockResolution; + double clockCost; + }; + + template + struct BenchmarkStats { + BenchmarkInfo info; + + std::vector samples; + Benchmark::Estimate mean; + Benchmark::Estimate standardDeviation; + Benchmark::OutlierClassification outliers; + double outlierVariance; + + template + explicit operator BenchmarkStats() const { + std::vector samples2; + samples2.reserve(samples.size()); + for (auto const& sample : samples) { + samples2.push_back(Duration2(sample)); + } + return { + info, + std::move(samples2), + mean, + standardDeviation, + outliers, + outlierVariance, + }; + } + }; + + //! By setting up its preferences, a reporter can modify Catch2's behaviour + //! in some regards, e.g. it can request Catch2 to capture writes to + //! stdout/stderr during test execution, and pass them to the reporter. + struct ReporterPreferences { + //! Catch2 should redirect writes to stdout and pass them to the + //! reporter + bool shouldRedirectStdOut = false; + //! Catch2 should call `Reporter::assertionEnded` even for passing + //! assertions + bool shouldReportAllAssertions = false; + }; + + + struct IStreamingReporter { + protected: + //! Derived classes can set up their preferences here + ReporterPreferences m_preferences; + public: + virtual ~IStreamingReporter() = default; + + // Implementing class must also provide the following static methods: + // static std::string getDescription(); + + ReporterPreferences const& getPreferences() const { + return m_preferences; + } + + virtual void noMatchingTestCases( std::string const& spec ) = 0; + + virtual void reportInvalidArguments(std::string const&) {} + + virtual void testRunStarting( TestRunInfo const& testRunInfo ) = 0; + virtual void testGroupStarting( GroupInfo const& groupInfo ) = 0; + + virtual void testCaseStarting( TestCaseInfo const& testInfo ) = 0; + virtual void sectionStarting( SectionInfo const& sectionInfo ) = 0; + + virtual void benchmarkPreparing( std::string const& ) {} + virtual void benchmarkStarting( BenchmarkInfo const& ) {} + virtual void benchmarkEnded( BenchmarkStats<> const& ) {} + virtual void benchmarkFailed( std::string const& ) {} + + virtual void assertionStarting( AssertionInfo const& assertionInfo ) = 0; + + // The return value indicates if the messages buffer should be cleared: + virtual bool assertionEnded( AssertionStats const& assertionStats ) = 0; + + virtual void sectionEnded( SectionStats const& sectionStats ) = 0; + virtual void testCaseEnded( TestCaseStats const& testCaseStats ) = 0; + virtual void testGroupEnded( TestGroupStats const& testGroupStats ) = 0; + virtual void testRunEnded( TestRunStats const& testRunStats ) = 0; + + virtual void skipTest( TestCaseInfo const& testInfo ) = 0; + + // Default empty implementation provided + virtual void fatalErrorEncountered( StringRef name ); + + //! Writes out information about provided reporters using reporter-specific format + virtual void listReporters(std::vector const& descriptions, IConfig const& config); + //! Writes out information about provided tests using reporter-specific format + virtual void listTests(std::vector const& tests, IConfig const& config); + //! Writes out information about the provided tags using reporter-specific format + virtual void listTags(std::vector const& tags, IConfig const& config); + + }; + using IStreamingReporterPtr = Detail::unique_ptr; + +} // end namespace Catch + +#endif // CATCH_INTERFACES_REPORTER_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_CHRONOMETER_HPP_INCLUDED +#define CATCH_CHRONOMETER_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_CLOCK_HPP_INCLUDED +#define CATCH_CLOCK_HPP_INCLUDED + +#include +#include + +namespace Catch { + namespace Benchmark { + template + using ClockDuration = typename Clock::duration; + template + using FloatDuration = std::chrono::duration; + + template + using TimePoint = typename Clock::time_point; + + using default_clock = std::chrono::steady_clock; + + template + struct now { + TimePoint operator()() const { + return Clock::now(); + } + }; + + using fp_seconds = std::chrono::duration>; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_CLOCK_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_OPTIMIZER_HPP_INCLUDED +#define CATCH_OPTIMIZER_HPP_INCLUDED + +#if defined(_MSC_VER) +# include // atomic_thread_fence +#endif + +#include +#include + +namespace Catch { + namespace Benchmark { +#if defined(__GNUC__) || defined(__clang__) + template + inline void keep_memory(T* p) { + asm volatile("" : : "g"(p) : "memory"); + } + inline void keep_memory() { + asm volatile("" : : : "memory"); + } + + namespace Detail { + inline void optimizer_barrier() { keep_memory(); } + } // namespace Detail +#elif defined(_MSC_VER) + +#pragma optimize("", off) + template + inline void keep_memory(T* p) { + // thanks @milleniumbug + *reinterpret_cast(p) = *reinterpret_cast(p); + } + // TODO equivalent keep_memory() +#pragma optimize("", on) + + namespace Detail { + inline void optimizer_barrier() { + std::atomic_thread_fence(std::memory_order_seq_cst); + } + } // namespace Detail + +#endif + + template + inline void deoptimize_value(T&& x) { + keep_memory(&x); + } + + template + inline auto invoke_deoptimized(Fn&& fn, Args&&... args) -> typename std::enable_if::value>::type { + deoptimize_value(std::forward(fn) (std::forward(args...))); + } + + template + inline auto invoke_deoptimized(Fn&& fn, Args&&... args) -> typename std::enable_if::value>::type { + std::forward(fn) (std::forward(args...)); + } + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_OPTIMIZER_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_COMPLETE_INVOKE_HPP_INCLUDED +#define CATCH_COMPLETE_INVOKE_HPP_INCLUDED + + + +#ifndef CATCH_ENFORCE_HPP_INCLUDED +#define CATCH_ENFORCE_HPP_INCLUDED + + + +#ifndef CATCH_STREAM_HPP_INCLUDED +#define CATCH_STREAM_HPP_INCLUDED + + +#include +#include +#include + +namespace Catch { + + std::ostream& cout(); + std::ostream& cerr(); + std::ostream& clog(); + + class StringRef; + + struct IStream { + virtual ~IStream(); + virtual std::ostream& stream() const = 0; + }; + + auto makeStream( StringRef const &filename ) -> IStream const*; + + class ReusableStringStream : Detail::NonCopyable { + std::size_t m_index; + std::ostream* m_oss; + public: + ReusableStringStream(); + ~ReusableStringStream(); + + //! Returns the serialized state + std::string str() const; + //! Sets internal state to `str` + void str(std::string const& str); + +#if defined(__GNUC__) && !defined(__clang__) +#pragma GCC diagnostic push +// Old versions of GCC do not understand -Wnonnull-compare +#pragma GCC diagnostic ignored "-Wpragmas" +// Streaming a function pointer triggers Waddress and Wnonnull-compare +// on GCC, because it implicitly converts it to bool and then decides +// that the check it uses (a? true : false) is tautological and cannot +// be null... +#pragma GCC diagnostic ignored "-Waddress" +#pragma GCC diagnostic ignored "-Wnonnull-compare" +#endif + + template + auto operator << ( T const& value ) -> ReusableStringStream& { + *m_oss << value; + return *this; + } + +#if defined(__GNUC__) && !defined(__clang__) +#pragma GCC diagnostic pop +#endif + auto get() -> std::ostream& { return *m_oss; } + }; +} + +#endif // CATCH_STREAM_HPP_INCLUDED + +#include + +namespace Catch { +#if !defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + template + [[noreturn]] + void throw_exception(Ex const& e) { + throw e; + } +#else // ^^ Exceptions are enabled // Exceptions are disabled vv + [[noreturn]] + void throw_exception(std::exception const& e); +#endif + + [[noreturn]] + void throw_logic_error(std::string const& msg); + [[noreturn]] + void throw_domain_error(std::string const& msg); + [[noreturn]] + void throw_runtime_error(std::string const& msg); + +} // namespace Catch; + +#define CATCH_MAKE_MSG(...) \ + (Catch::ReusableStringStream() << __VA_ARGS__).str() + +#define CATCH_INTERNAL_ERROR(...) \ + Catch::throw_logic_error(CATCH_MAKE_MSG( CATCH_INTERNAL_LINEINFO << ": Internal Catch2 error: " << __VA_ARGS__)) + +#define CATCH_ERROR(...) \ + Catch::throw_domain_error(CATCH_MAKE_MSG( __VA_ARGS__ )) + +#define CATCH_RUNTIME_ERROR(...) \ + Catch::throw_runtime_error(CATCH_MAKE_MSG( __VA_ARGS__ )) + +#define CATCH_ENFORCE( condition, ... ) \ + do{ if( !(condition) ) CATCH_ERROR( __VA_ARGS__ ); } while(false) + + +#endif // CATCH_ENFORCE_HPP_INCLUDED + + +#ifndef CATCH_META_HPP_INCLUDED +#define CATCH_META_HPP_INCLUDED + +#include + +namespace Catch { + template + struct always_false : std::false_type {}; + + template struct true_given : std::true_type {}; + struct is_callable_tester { + template + true_given()(std::declval()...))> static test(int); + template + std::false_type static test(...); + }; + + template + struct is_callable; + + template + struct is_callable : decltype(is_callable_tester::test(0)) {}; + + +#if defined(__cpp_lib_is_invocable) && __cpp_lib_is_invocable >= 201703 + // std::result_of is deprecated in C++17 and removed in C++20. Hence, it is + // replaced with std::invoke_result here. + template + using FunctionReturnType = std::remove_reference_t>>; +#else + template + using FunctionReturnType = std::remove_reference_t>>; +#endif + +} // namespace Catch + +namespace mpl_{ + struct na; +} + +#endif // CATCH_META_HPP_INCLUDED + + +#ifndef CATCH_INTERFACES_REGISTRY_HUB_HPP_INCLUDED +#define CATCH_INTERFACES_REGISTRY_HUB_HPP_INCLUDED + + +#include + +namespace Catch { + + class TestCaseHandle; + struct TestCaseInfo; + struct ITestCaseRegistry; + struct IExceptionTranslatorRegistry; + struct IExceptionTranslator; + struct IReporterRegistry; + struct IReporterFactory; + struct ITagAliasRegistry; + struct ITestInvoker; + struct IMutableEnumValuesRegistry; + struct SourceLineInfo; + + class StartupExceptionRegistry; + + using IReporterFactoryPtr = Detail::unique_ptr; + + struct IRegistryHub { + virtual ~IRegistryHub(); + + virtual IReporterRegistry const& getReporterRegistry() const = 0; + virtual ITestCaseRegistry const& getTestCaseRegistry() const = 0; + virtual ITagAliasRegistry const& getTagAliasRegistry() const = 0; + virtual IExceptionTranslatorRegistry const& getExceptionTranslatorRegistry() const = 0; + + + virtual StartupExceptionRegistry const& getStartupExceptionRegistry() const = 0; + }; + + struct IMutableRegistryHub { + virtual ~IMutableRegistryHub(); + virtual void registerReporter( std::string const& name, IReporterFactoryPtr factory ) = 0; + virtual void registerListener( IReporterFactoryPtr factory ) = 0; + virtual void registerTest(Detail::unique_ptr&& testInfo, Detail::unique_ptr&& invoker) = 0; + virtual void registerTranslator( const IExceptionTranslator* translator ) = 0; + virtual void registerTagAlias( std::string const& alias, std::string const& tag, SourceLineInfo const& lineInfo ) = 0; + virtual void registerStartupException() noexcept = 0; + virtual IMutableEnumValuesRegistry& getMutableEnumValuesRegistry() = 0; + }; + + IRegistryHub const& getRegistryHub(); + IMutableRegistryHub& getMutableRegistryHub(); + void cleanUp(); + std::string translateActiveException(); + +} + +#endif // CATCH_INTERFACES_REGISTRY_HUB_HPP_INCLUDED + +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + struct CompleteType { using type = T; }; + template <> + struct CompleteType { struct type {}; }; + + template + using CompleteType_t = typename CompleteType::type; + + template + struct CompleteInvoker { + template + static Result invoke(Fun&& fun, Args&&... args) { + return std::forward(fun)(std::forward(args)...); + } + }; + template <> + struct CompleteInvoker { + template + static CompleteType_t invoke(Fun&& fun, Args&&... args) { + std::forward(fun)(std::forward(args)...); + return {}; + } + }; + + // invoke and not return void :( + template + CompleteType_t> complete_invoke(Fun&& fun, Args&&... args) { + return CompleteInvoker>::invoke(std::forward(fun), std::forward(args)...); + } + + extern const std::string benchmarkErrorMsg; + } // namespace Detail + + template + Detail::CompleteType_t> user_code(Fun&& fun) { + CATCH_TRY{ + return Detail::complete_invoke(std::forward(fun)); + } CATCH_CATCH_ALL{ + getResultCapture().benchmarkFailed(translateActiveException()); + CATCH_RUNTIME_ERROR(Detail::benchmarkErrorMsg); + } + } + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_COMPLETE_INVOKE_HPP_INCLUDED + +namespace Catch { + namespace Benchmark { + namespace Detail { + struct ChronometerConcept { + virtual void start() = 0; + virtual void finish() = 0; + virtual ~ChronometerConcept(); // = default; + + ChronometerConcept() = default; + ChronometerConcept(ChronometerConcept const&) = default; + ChronometerConcept& operator=(ChronometerConcept const&) = default; + }; + template + struct ChronometerModel final : public ChronometerConcept { + void start() override { started = Clock::now(); } + void finish() override { finished = Clock::now(); } + + ClockDuration elapsed() const { return finished - started; } + + TimePoint started; + TimePoint finished; + }; + } // namespace Detail + + struct Chronometer { + public: + template + void measure(Fun&& fun) { measure(std::forward(fun), is_callable()); } + + int runs() const { return repeats; } + + Chronometer(Detail::ChronometerConcept& meter, int repeats_) + : impl(&meter) + , repeats(repeats_) {} + + private: + template + void measure(Fun&& fun, std::false_type) { + measure([&fun](int) { return fun(); }, std::true_type()); + } + + template + void measure(Fun&& fun, std::true_type) { + Detail::optimizer_barrier(); + impl->start(); + for (int i = 0; i < repeats; ++i) invoke_deoptimized(fun, i); + impl->finish(); + Detail::optimizer_barrier(); + } + + Detail::ChronometerConcept* impl; + int repeats; + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_CHRONOMETER_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_ENVIRONMENT_HPP_INCLUDED +#define CATCH_ENVIRONMENT_HPP_INCLUDED + + +namespace Catch { + namespace Benchmark { + template + struct EnvironmentEstimate { + Duration mean; + OutlierClassification outliers; + + template + operator EnvironmentEstimate() const { + return { mean, outliers }; + } + }; + template + struct Environment { + using clock_type = Clock; + EnvironmentEstimate> clock_resolution; + EnvironmentEstimate> clock_cost; + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_ENVIRONMENT_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_EXECUTION_PLAN_HPP_INCLUDED +#define CATCH_EXECUTION_PLAN_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_BENCHMARK_FUNCTION_HPP_INCLUDED +#define CATCH_BENCHMARK_FUNCTION_HPP_INCLUDED + + +#include +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + using Decay = typename std::decay::type; + template + struct is_related + : std::is_same, Decay> {}; + + /// We need to reinvent std::function because every piece of code that might add overhead + /// in a measurement context needs to have consistent performance characteristics so that we + /// can account for it in the measurement. + /// Implementations of std::function with optimizations that aren't always applicable, like + /// small buffer optimizations, are not uncommon. + /// This is effectively an implementation of std::function without any such optimizations; + /// it may be slow, but it is consistently slow. + struct BenchmarkFunction { + private: + struct callable { + virtual void call(Chronometer meter) const = 0; + virtual callable* clone() const = 0; + virtual ~callable(); // = default; + + callable() = default; + callable(callable const&) = default; + callable& operator=(callable const&) = default; + }; + template + struct model : public callable { + model(Fun&& fun_) : fun(std::move(fun_)) {} + model(Fun const& fun_) : fun(fun_) {} + + model* clone() const override { return new model(*this); } + + void call(Chronometer meter) const override { + call(meter, is_callable()); + } + void call(Chronometer meter, std::true_type) const { + fun(meter); + } + void call(Chronometer meter, std::false_type) const { + meter.measure(fun); + } + + Fun fun; + }; + + struct do_nothing { void operator()() const {} }; + + template + BenchmarkFunction(model* c) : f(c) {} + + public: + BenchmarkFunction() + : f(new model{ {} }) {} + + template ::value, int>::type = 0> + BenchmarkFunction(Fun&& fun) + : f(new model::type>(std::forward(fun))) {} + + BenchmarkFunction( BenchmarkFunction&& that ) noexcept: + f( std::move( that.f ) ) {} + + BenchmarkFunction(BenchmarkFunction const& that) + : f(that.f->clone()) {} + + BenchmarkFunction& + operator=( BenchmarkFunction&& that ) noexcept { + f = std::move( that.f ); + return *this; + } + + BenchmarkFunction& operator=(BenchmarkFunction const& that) { + f.reset(that.f->clone()); + return *this; + } + + void operator()(Chronometer meter) const { f->call(meter); } + + private: + Catch::Detail::unique_ptr f; + }; + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_BENCHMARK_FUNCTION_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_REPEAT_HPP_INCLUDED +#define CATCH_REPEAT_HPP_INCLUDED + +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + struct repeater { + void operator()(int k) const { + for (int i = 0; i < k; ++i) { + fun(); + } + } + Fun fun; + }; + template + repeater::type> repeat(Fun&& fun) { + return { std::forward(fun) }; + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_REPEAT_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_RUN_FOR_AT_LEAST_HPP_INCLUDED +#define CATCH_RUN_FOR_AT_LEAST_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_MEASURE_HPP_INCLUDED +#define CATCH_MEASURE_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_TIMING_HPP_INCLUDED +#define CATCH_TIMING_HPP_INCLUDED + + +#include + +namespace Catch { + namespace Benchmark { + template + struct Timing { + Duration elapsed; + Result result; + int iterations; + }; + template + using TimingOf = Timing, Detail::CompleteType_t>>; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_TIMING_HPP_INCLUDED + +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + TimingOf measure(Fun&& fun, Args&&... args) { + auto start = Clock::now(); + auto&& r = Detail::complete_invoke(fun, std::forward(args)...); + auto end = Clock::now(); + auto delta = end - start; + return { delta, std::forward(r), 1 }; + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_MEASURE_HPP_INCLUDED + +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + TimingOf measure_one(Fun&& fun, int iters, std::false_type) { + return Detail::measure(fun, iters); + } + template + TimingOf measure_one(Fun&& fun, int iters, std::true_type) { + Detail::ChronometerModel meter; + auto&& result = Detail::complete_invoke(fun, Chronometer(meter, iters)); + + return { meter.elapsed(), std::move(result), iters }; + } + + template + using run_for_at_least_argument_t = typename std::conditional::value, Chronometer, int>::type; + + + [[noreturn]] + void throw_optimized_away_error(); + + template + TimingOf> run_for_at_least(ClockDuration how_long, int seed, Fun&& fun) { + auto iters = seed; + while (iters < (1 << 30)) { + auto&& Timing = measure_one(fun, iters, is_callable()); + + if (Timing.elapsed >= how_long) { + return { Timing.elapsed, std::move(Timing.result), iters }; + } + iters *= 2; + } + throw_optimized_away_error(); + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_RUN_FOR_AT_LEAST_HPP_INCLUDED + +#include + +namespace Catch { + namespace Benchmark { + template + struct ExecutionPlan { + int iterations_per_sample; + Duration estimated_duration; + Detail::BenchmarkFunction benchmark; + Duration warmup_time; + int warmup_iterations; + + template + operator ExecutionPlan() const { + return { iterations_per_sample, estimated_duration, benchmark, warmup_time, warmup_iterations }; + } + + template + std::vector> run(const IConfig &cfg, Environment> env) const { + // warmup a bit + Detail::run_for_at_least(std::chrono::duration_cast>(warmup_time), warmup_iterations, Detail::repeat(now{})); + + std::vector> times; + times.reserve(cfg.benchmarkSamples()); + std::generate_n(std::back_inserter(times), cfg.benchmarkSamples(), [this, env] { + Detail::ChronometerModel model; + this->benchmark(Chronometer(model, iterations_per_sample)); + auto sample_time = model.elapsed() - env.clock_cost.mean; + if (sample_time < FloatDuration::zero()) sample_time = FloatDuration::zero(); + return sample_time / iterations_per_sample; + }); + return times; + } + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_EXECUTION_PLAN_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_ESTIMATE_CLOCK_HPP_INCLUDED +#define CATCH_ESTIMATE_CLOCK_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_STATS_HPP_INCLUDED +#define CATCH_STATS_HPP_INCLUDED + + +#include +#include +#include +#include +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + using sample = std::vector; + + double weighted_average_quantile(int k, int q, std::vector::iterator first, std::vector::iterator last); + + template + OutlierClassification classify_outliers(Iterator first, Iterator last) { + std::vector copy(first, last); + + auto q1 = weighted_average_quantile(1, 4, copy.begin(), copy.end()); + auto q3 = weighted_average_quantile(3, 4, copy.begin(), copy.end()); + auto iqr = q3 - q1; + auto los = q1 - (iqr * 3.); + auto lom = q1 - (iqr * 1.5); + auto him = q3 + (iqr * 1.5); + auto his = q3 + (iqr * 3.); + + OutlierClassification o; + for (; first != last; ++first) { + auto&& t = *first; + if (t < los) ++o.low_severe; + else if (t < lom) ++o.low_mild; + else if (t > his) ++o.high_severe; + else if (t > him) ++o.high_mild; + ++o.samples_seen; + } + return o; + } + + template + double mean(Iterator first, Iterator last) { + auto count = last - first; + double sum = std::accumulate(first, last, 0.); + return sum / count; + } + + template + sample jackknife(Estimator&& estimator, Iterator first, Iterator last) { + auto n = last - first; + auto second = first; + ++second; + sample results; + results.reserve(n); + + for (auto it = first; it != last; ++it) { + std::iter_swap(it, first); + results.push_back(estimator(second, last)); + } + + return results; + } + + inline double normal_cdf(double x) { + return std::erfc(-x / std::sqrt(2.0)) / 2.0; + } + + double erfc_inv(double x); + + double normal_quantile(double p); + + template + Estimate bootstrap(double confidence_level, Iterator first, Iterator last, sample const& resample, Estimator&& estimator) { + auto n_samples = last - first; + + double point = estimator(first, last); + // Degenerate case with a single sample + if (n_samples == 1) return { point, point, point, confidence_level }; + + sample jack = jackknife(estimator, first, last); + double jack_mean = mean(jack.begin(), jack.end()); + double sum_squares, sum_cubes; + std::tie(sum_squares, sum_cubes) = std::accumulate(jack.begin(), jack.end(), std::make_pair(0., 0.), [jack_mean](std::pair sqcb, double x) -> std::pair { + auto d = jack_mean - x; + auto d2 = d * d; + auto d3 = d2 * d; + return { sqcb.first + d2, sqcb.second + d3 }; + }); + + double accel = sum_cubes / (6 * std::pow(sum_squares, 1.5)); + int n = static_cast(resample.size()); + double prob_n = std::count_if(resample.begin(), resample.end(), [point](double x) { return x < point; }) / (double)n; + // degenerate case with uniform samples + if (prob_n == 0) return { point, point, point, confidence_level }; + + double bias = normal_quantile(prob_n); + double z1 = normal_quantile((1. - confidence_level) / 2.); + + auto cumn = [n](double x) -> int { + return std::lround(normal_cdf(x) * n); }; + auto a = [bias, accel](double b) { return bias + b / (1. - accel * b); }; + double b1 = bias + z1; + double b2 = bias - z1; + double a1 = a(b1); + double a2 = a(b2); + auto lo = std::max(cumn(a1), 0); + auto hi = std::min(cumn(a2), n - 1); + + return { point, resample[lo], resample[hi], confidence_level }; + } + + double outlier_variance(Estimate mean, Estimate stddev, int n); + + struct bootstrap_analysis { + Estimate mean; + Estimate standard_deviation; + double outlier_variance; + }; + + bootstrap_analysis analyse_samples(double confidence_level, int n_resamples, std::vector::iterator first, std::vector::iterator last); + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_STATS_HPP_INCLUDED + +#include +#include +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + std::vector resolution(int k) { + std::vector> times; + times.reserve(k + 1); + std::generate_n(std::back_inserter(times), k + 1, now{}); + + std::vector deltas; + deltas.reserve(k); + std::transform(std::next(times.begin()), times.end(), times.begin(), + std::back_inserter(deltas), + [](TimePoint a, TimePoint b) { return static_cast((a - b).count()); }); + + return deltas; + } + + const auto warmup_iterations = 10000; + const auto warmup_time = std::chrono::milliseconds(100); + const auto minimum_ticks = 1000; + const auto warmup_seed = 10000; + const auto clock_resolution_estimation_time = std::chrono::milliseconds(500); + const auto clock_cost_estimation_time_limit = std::chrono::seconds(1); + const auto clock_cost_estimation_tick_limit = 100000; + const auto clock_cost_estimation_time = std::chrono::milliseconds(10); + const auto clock_cost_estimation_iterations = 10000; + + template + int warmup() { + return run_for_at_least(std::chrono::duration_cast>(warmup_time), warmup_seed, &resolution) + .iterations; + } + template + EnvironmentEstimate> estimate_clock_resolution(int iterations) { + auto r = run_for_at_least(std::chrono::duration_cast>(clock_resolution_estimation_time), iterations, &resolution) + .result; + return { + FloatDuration(mean(r.begin(), r.end())), + classify_outliers(r.begin(), r.end()), + }; + } + template + EnvironmentEstimate> estimate_clock_cost(FloatDuration resolution) { + auto time_limit = std::min(resolution * clock_cost_estimation_tick_limit, FloatDuration(clock_cost_estimation_time_limit)); + auto time_clock = [](int k) { + return Detail::measure([k] { + for (int i = 0; i < k; ++i) { + volatile auto ignored = Clock::now(); + (void)ignored; + } + }).elapsed; + }; + time_clock(1); + int iters = clock_cost_estimation_iterations; + auto&& r = run_for_at_least(std::chrono::duration_cast>(clock_cost_estimation_time), iters, time_clock); + std::vector times; + int nsamples = static_cast(std::ceil(time_limit / r.elapsed)); + times.reserve(nsamples); + std::generate_n(std::back_inserter(times), nsamples, [time_clock, &r] { + return static_cast((time_clock(r.iterations) / r.iterations).count()); + }); + return { + FloatDuration(mean(times.begin(), times.end())), + classify_outliers(times.begin(), times.end()), + }; + } + + template + Environment> measure_environment() { + static Environment>* env = nullptr; + if (env) { + return *env; + } + + auto iters = Detail::warmup(); + auto resolution = Detail::estimate_clock_resolution(iters); + auto cost = Detail::estimate_clock_cost(resolution.mean); + + env = new Environment>{ resolution, cost }; + return *env; + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_ESTIMATE_CLOCK_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_ANALYSE_HPP_INCLUDED +#define CATCH_ANALYSE_HPP_INCLUDED + + + +// Adapted from donated nonius code. + +#ifndef CATCH_SAMPLE_ANALYSIS_HPP_INCLUDED +#define CATCH_SAMPLE_ANALYSIS_HPP_INCLUDED + + +#include +#include +#include +#include + +namespace Catch { + namespace Benchmark { + template + struct SampleAnalysis { + std::vector samples; + Estimate mean; + Estimate standard_deviation; + OutlierClassification outliers; + double outlier_variance; + + template + operator SampleAnalysis() const { + std::vector samples2; + samples2.reserve(samples.size()); + std::transform(samples.begin(), samples.end(), std::back_inserter(samples2), [](Duration d) { return Duration2(d); }); + return { + std::move(samples2), + mean, + standard_deviation, + outliers, + outlier_variance, + }; + } + }; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_SAMPLE_ANALYSIS_HPP_INCLUDED + +#include +#include +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + SampleAnalysis analyse(const IConfig &cfg, Environment, Iterator first, Iterator last) { + if (!cfg.benchmarkNoAnalysis()) { + std::vector samples; + samples.reserve(last - first); + std::transform(first, last, std::back_inserter(samples), [](Duration d) { return d.count(); }); + + auto analysis = Catch::Benchmark::Detail::analyse_samples(cfg.benchmarkConfidenceInterval(), cfg.benchmarkResamples(), samples.begin(), samples.end()); + auto outliers = Catch::Benchmark::Detail::classify_outliers(samples.begin(), samples.end()); + + auto wrap_estimate = [](Estimate e) { + return Estimate { + Duration(e.point), + Duration(e.lower_bound), + Duration(e.upper_bound), + e.confidence_interval, + }; + }; + std::vector samples2; + samples2.reserve(samples.size()); + std::transform(samples.begin(), samples.end(), std::back_inserter(samples2), [](double d) { return Duration(d); }); + return { + std::move(samples2), + wrap_estimate(analysis.mean), + wrap_estimate(analysis.standard_deviation), + outliers, + analysis.outlier_variance, + }; + } else { + std::vector samples; + samples.reserve(last - first); + + Duration mean = Duration(0); + int i = 0; + for (auto it = first; it < last; ++it, ++i) { + samples.push_back(Duration(*it)); + mean += Duration(*it); + } + mean /= i; + + return { + std::move(samples), + Estimate{mean, mean, mean, 0.0}, + Estimate{Duration(0), Duration(0), Duration(0), 0.0}, + OutlierClassification{}, + 0.0 + }; + } + } + } // namespace Detail + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_ANALYSE_HPP_INCLUDED + +#include +#include +#include +#include +#include + +namespace Catch { + namespace Benchmark { + struct Benchmark { + Benchmark(std::string&& benchmarkName) + : name(std::move(benchmarkName)) {} + + template + Benchmark(std::string&& benchmarkName , FUN &&func) + : fun(std::move(func)), name(std::move(benchmarkName)) {} + + template + ExecutionPlan> prepare(const IConfig &cfg, Environment> env) const { + auto min_time = env.clock_resolution.mean * Detail::minimum_ticks; + auto run_time = std::max(min_time, std::chrono::duration_cast(cfg.benchmarkWarmupTime())); + auto&& test = Detail::run_for_at_least(std::chrono::duration_cast>(run_time), 1, fun); + int new_iters = static_cast(std::ceil(min_time * test.iterations / test.elapsed)); + return { new_iters, test.elapsed / test.iterations * new_iters * cfg.benchmarkSamples(), fun, std::chrono::duration_cast>(cfg.benchmarkWarmupTime()), Detail::warmup_iterations }; + } + + template + void run() { + auto const* cfg = getCurrentContext().getConfig(); + + auto env = Detail::measure_environment(); + + getResultCapture().benchmarkPreparing(name); + CATCH_TRY{ + auto plan = user_code([&] { + return prepare(*cfg, env); + }); + + BenchmarkInfo info { + name, + plan.estimated_duration.count(), + plan.iterations_per_sample, + cfg->benchmarkSamples(), + cfg->benchmarkResamples(), + env.clock_resolution.mean.count(), + env.clock_cost.mean.count() + }; + + getResultCapture().benchmarkStarting(info); + + auto samples = user_code([&] { + return plan.template run(*cfg, env); + }); + + auto analysis = Detail::analyse(*cfg, env, samples.begin(), samples.end()); + BenchmarkStats> stats{ info, analysis.samples, analysis.mean, analysis.standard_deviation, analysis.outliers, analysis.outlier_variance }; + getResultCapture().benchmarkEnded(stats); + + } CATCH_CATCH_ALL{ + if (translateActiveException() != Detail::benchmarkErrorMsg) // benchmark errors have been reported, otherwise rethrow. + std::rethrow_exception(std::current_exception()); + } + } + + // sets lambda to be used in fun *and* executes benchmark! + template ::value, int>::type = 0> + Benchmark & operator=(Fun func) { + fun = Detail::BenchmarkFunction(func); + run(); + return *this; + } + + explicit operator bool() { + return true; + } + + private: + Detail::BenchmarkFunction fun; + std::string name; + }; + } +} // namespace Catch + +#define INTERNAL_CATCH_GET_1_ARG(arg1, arg2, ...) arg1 +#define INTERNAL_CATCH_GET_2_ARG(arg1, arg2, ...) arg2 + +#define INTERNAL_CATCH_BENCHMARK(BenchmarkName, name, benchmarkIndex)\ + if( Catch::Benchmark::Benchmark BenchmarkName{name} ) \ + BenchmarkName = [&](int benchmarkIndex) + +#define INTERNAL_CATCH_BENCHMARK_ADVANCED(BenchmarkName, name)\ + if( Catch::Benchmark::Benchmark BenchmarkName{name} ) \ + BenchmarkName = [&] + +#if defined(CATCH_CONFIG_PREFIX_ALL) + +#define CATCH_BENCHMARK(...) \ + INTERNAL_CATCH_BENCHMARK(INTERNAL_CATCH_UNIQUE_NAME(____C_A_T_C_H____B_E_N_C_H____), INTERNAL_CATCH_GET_1_ARG(__VA_ARGS__,,), INTERNAL_CATCH_GET_2_ARG(__VA_ARGS__,,)) +#define CATCH_BENCHMARK_ADVANCED(name) \ + INTERNAL_CATCH_BENCHMARK_ADVANCED(INTERNAL_CATCH_UNIQUE_NAME(____C_A_T_C_H____B_E_N_C_H____), name) + +#else + +#define BENCHMARK(...) \ + INTERNAL_CATCH_BENCHMARK(INTERNAL_CATCH_UNIQUE_NAME(____C_A_T_C_H____B_E_N_C_H____), INTERNAL_CATCH_GET_1_ARG(__VA_ARGS__,,), INTERNAL_CATCH_GET_2_ARG(__VA_ARGS__,,)) +#define BENCHMARK_ADVANCED(name) \ + INTERNAL_CATCH_BENCHMARK_ADVANCED(INTERNAL_CATCH_UNIQUE_NAME(____C_A_T_C_H____B_E_N_C_H____), name) + +#endif + +#endif // CATCH_BENCHMARK_HPP_INCLUDED + + +// Adapted from donated nonius code. + +#ifndef CATCH_CONSTRUCTOR_HPP_INCLUDED +#define CATCH_CONSTRUCTOR_HPP_INCLUDED + +#include + +namespace Catch { + namespace Benchmark { + namespace Detail { + template + struct ObjectStorage + { + using TStorage = typename std::aligned_storage::value>::type; + + ObjectStorage() : data() {} + + ObjectStorage(const ObjectStorage& other) + { + new(&data) T(other.stored_object()); + } + + ObjectStorage(ObjectStorage&& other) + { + new(&data) T(std::move(other.stored_object())); + } + + ~ObjectStorage() { destruct_on_exit(); } + + template + void construct(Args&&... args) + { + new (&data) T(std::forward(args)...); + } + + template + typename std::enable_if::type destruct() + { + stored_object().~T(); + } + + private: + // If this is a constructor benchmark, destruct the underlying object + template + void destruct_on_exit(typename std::enable_if::type* = 0) { destruct(); } + // Otherwise, don't + template + void destruct_on_exit(typename std::enable_if::type* = 0) { } + + T& stored_object() { + return *static_cast(static_cast(&data)); + } + + T const& stored_object() const { + return *static_cast(static_cast(&data)); + } + + + TStorage data; + }; + } // namespace Detail + + template + using storage_for = Detail::ObjectStorage; + + template + using destructable_object = Detail::ObjectStorage; + } // namespace Benchmark +} // namespace Catch + +#endif // CATCH_CONSTRUCTOR_HPP_INCLUDED + +#endif // CATCH_BENCHMARK_ALL_HPP_INCLUDED + + +#ifndef CATCH_APPROX_HPP_INCLUDED +#define CATCH_APPROX_HPP_INCLUDED + + + +#ifndef CATCH_TOSTRING_HPP_INCLUDED +#define CATCH_TOSTRING_HPP_INCLUDED + + +#include +#include +#include +#include + + +#ifndef CATCH_INTERFACES_ENUM_VALUES_REGISTRY_HPP_INCLUDED +#define CATCH_INTERFACES_ENUM_VALUES_REGISTRY_HPP_INCLUDED + + +#include + +namespace Catch { + + namespace Detail { + struct EnumInfo { + StringRef m_name; + std::vector> m_values; + + ~EnumInfo(); + + StringRef lookup( int value ) const; + }; + } // namespace Detail + + struct IMutableEnumValuesRegistry { + virtual ~IMutableEnumValuesRegistry(); + + virtual Detail::EnumInfo const& registerEnum( StringRef enumName, StringRef allEnums, std::vector const& values ) = 0; + + template + Detail::EnumInfo const& registerEnum( StringRef enumName, StringRef allEnums, std::initializer_list values ) { + static_assert(sizeof(int) >= sizeof(E), "Cannot serialize enum to int"); + std::vector intValues; + intValues.reserve( values.size() ); + for( auto enumValue : values ) + intValues.push_back( static_cast( enumValue ) ); + return registerEnum( enumName, allEnums, intValues ); + } + }; + +} // Catch + +#endif // CATCH_INTERFACES_ENUM_VALUES_REGISTRY_HPP_INCLUDED + +#ifdef CATCH_CONFIG_CPP17_STRING_VIEW +#include +#endif + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable:4180) // We attempt to stream a function (address) by const&, which MSVC complains about but is harmless +#endif + +namespace Catch { + namespace Detail { + + extern const std::string unprintableString; + + std::string rawMemoryToString( const void *object, std::size_t size ); + + template + std::string rawMemoryToString( const T& object ) { + return rawMemoryToString( &object, sizeof(object) ); + } + + template + class IsStreamInsertable { + template + static auto test(int) + -> decltype(std::declval() << std::declval(), std::true_type()); + + template + static auto test(...)->std::false_type; + + public: + static const bool value = decltype(test(0))::value; + }; + + template + std::string convertUnknownEnumToString( E e ); + + template + std::enable_if_t< + !std::is_enum::value && !std::is_base_of::value, + std::string> convertUnstreamable( T const& ) { + return Detail::unprintableString; + } + template + std::enable_if_t< + !std::is_enum::value && std::is_base_of::value, + std::string> convertUnstreamable(T const& ex) { + return ex.what(); + } + + + template + std::enable_if_t< + std::is_enum::value, + std::string> convertUnstreamable( T const& value ) { + return convertUnknownEnumToString( value ); + } + +#if defined(_MANAGED) + //! Convert a CLR string to a utf8 std::string + template + std::string clrReferenceToString( T^ ref ) { + if (ref == nullptr) + return std::string("null"); + auto bytes = System::Text::Encoding::UTF8->GetBytes(ref->ToString()); + cli::pin_ptr p = &bytes[0]; + return std::string(reinterpret_cast(p), bytes->Length); + } +#endif + + } // namespace Detail + + + // If we decide for C++14, change these to enable_if_ts + template + struct StringMaker { + template + static + std::enable_if_t<::Catch::Detail::IsStreamInsertable::value, std::string> + convert(const Fake& value) { + ReusableStringStream rss; + // NB: call using the function-like syntax to avoid ambiguity with + // user-defined templated operator<< under clang. + rss.operator<<(value); + return rss.str(); + } + + template + static + std::enable_if_t::value, std::string> + convert( const Fake& value ) { +#if !defined(CATCH_CONFIG_FALLBACK_STRINGIFIER) + return Detail::convertUnstreamable(value); +#else + return CATCH_CONFIG_FALLBACK_STRINGIFIER(value); +#endif + } + }; + + namespace Detail { + + // This function dispatches all stringification requests inside of Catch. + // Should be preferably called fully qualified, like ::Catch::Detail::stringify + template + std::string stringify(const T& e) { + return ::Catch::StringMaker>>::convert(e); + } + + template + std::string convertUnknownEnumToString( E e ) { + return ::Catch::Detail::stringify(static_cast>(e)); + } + +#if defined(_MANAGED) + template + std::string stringify( T^ e ) { + return ::Catch::StringMaker::convert(e); + } +#endif + + } // namespace Detail + + // Some predefined specializations + + template<> + struct StringMaker { + static std::string convert(const std::string& str); + }; + +#ifdef CATCH_CONFIG_CPP17_STRING_VIEW + template<> + struct StringMaker { + static std::string convert(std::string_view str); + }; +#endif + + template<> + struct StringMaker { + static std::string convert(char const * str); + }; + template<> + struct StringMaker { + static std::string convert(char * str); + }; + +#ifdef CATCH_CONFIG_WCHAR + template<> + struct StringMaker { + static std::string convert(const std::wstring& wstr); + }; + +# ifdef CATCH_CONFIG_CPP17_STRING_VIEW + template<> + struct StringMaker { + static std::string convert(std::wstring_view str); + }; +# endif + + template<> + struct StringMaker { + static std::string convert(wchar_t const * str); + }; + template<> + struct StringMaker { + static std::string convert(wchar_t * str); + }; +#endif + + // TBD: Should we use `strnlen` to ensure that we don't go out of the buffer, + // while keeping string semantics? + template + struct StringMaker { + static std::string convert(char const* str) { + return ::Catch::Detail::stringify(std::string{ str }); + } + }; + template + struct StringMaker { + static std::string convert(signed char const* str) { + return ::Catch::Detail::stringify(std::string{ reinterpret_cast(str) }); + } + }; + template + struct StringMaker { + static std::string convert(unsigned char const* str) { + return ::Catch::Detail::stringify(std::string{ reinterpret_cast(str) }); + } + }; + +#if defined(CATCH_CONFIG_CPP17_BYTE) + template<> + struct StringMaker { + static std::string convert(std::byte value); + }; +#endif // defined(CATCH_CONFIG_CPP17_BYTE) + template<> + struct StringMaker { + static std::string convert(int value); + }; + template<> + struct StringMaker { + static std::string convert(long value); + }; + template<> + struct StringMaker { + static std::string convert(long long value); + }; + template<> + struct StringMaker { + static std::string convert(unsigned int value); + }; + template<> + struct StringMaker { + static std::string convert(unsigned long value); + }; + template<> + struct StringMaker { + static std::string convert(unsigned long long value); + }; + + template<> + struct StringMaker { + static std::string convert(bool b) { + using namespace std::string_literals; + return b ? "true"s : "false"s; + } + }; + + template<> + struct StringMaker { + static std::string convert(char c); + }; + template<> + struct StringMaker { + static std::string convert(signed char c); + }; + template<> + struct StringMaker { + static std::string convert(unsigned char c); + }; + + template<> + struct StringMaker { + static std::string convert(std::nullptr_t) { + using namespace std::string_literals; + return "nullptr"s; + } + }; + + template<> + struct StringMaker { + static std::string convert(float value); + static int precision; + }; + + template<> + struct StringMaker { + static std::string convert(double value); + static int precision; + }; + + template + struct StringMaker { + template + static std::string convert(U* p) { + if (p) { + return ::Catch::Detail::rawMemoryToString(p); + } else { + return "nullptr"; + } + } + }; + + template + struct StringMaker { + static std::string convert(R C::* p) { + if (p) { + return ::Catch::Detail::rawMemoryToString(p); + } else { + return "nullptr"; + } + } + }; + +#if defined(_MANAGED) + template + struct StringMaker { + static std::string convert( T^ ref ) { + return ::Catch::Detail::clrReferenceToString(ref); + } + }; +#endif + + namespace Detail { + template + std::string rangeToString(InputIterator first, Sentinel last) { + ReusableStringStream rss; + rss << "{ "; + if (first != last) { + rss << ::Catch::Detail::stringify(*first); + for (++first; first != last; ++first) + rss << ", " << ::Catch::Detail::stringify(*first); + } + rss << " }"; + return rss.str(); + } + } + +} // namespace Catch + +////////////////////////////////////////////////////// +// Separate std-lib types stringification, so it can be selectively enabled +// This means that we do not bring in their headers + +#if defined(CATCH_CONFIG_ENABLE_ALL_STRINGMAKERS) +# define CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER +# define CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER +# define CATCH_CONFIG_ENABLE_VARIANT_STRINGMAKER +# define CATCH_CONFIG_ENABLE_OPTIONAL_STRINGMAKER +#endif + +// Separate std::pair specialization +#if defined(CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER) +#include +namespace Catch { + template + struct StringMaker > { + static std::string convert(const std::pair& pair) { + ReusableStringStream rss; + rss << "{ " + << ::Catch::Detail::stringify(pair.first) + << ", " + << ::Catch::Detail::stringify(pair.second) + << " }"; + return rss.str(); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_PAIR_STRINGMAKER + +#if defined(CATCH_CONFIG_ENABLE_OPTIONAL_STRINGMAKER) && defined(CATCH_CONFIG_CPP17_OPTIONAL) +#include +namespace Catch { + template + struct StringMaker > { + static std::string convert(const std::optional& optional) { + ReusableStringStream rss; + if (optional.has_value()) { + rss << ::Catch::Detail::stringify(*optional); + } else { + rss << "{ }"; + } + return rss.str(); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_OPTIONAL_STRINGMAKER + +// Separate std::tuple specialization +#if defined(CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER) +#include +namespace Catch { + namespace Detail { + template< + typename Tuple, + std::size_t N = 0, + bool = (N < std::tuple_size::value) + > + struct TupleElementPrinter { + static void print(const Tuple& tuple, std::ostream& os) { + os << (N ? ", " : " ") + << ::Catch::Detail::stringify(std::get(tuple)); + TupleElementPrinter::print(tuple, os); + } + }; + + template< + typename Tuple, + std::size_t N + > + struct TupleElementPrinter { + static void print(const Tuple&, std::ostream&) {} + }; + + } + + + template + struct StringMaker> { + static std::string convert(const std::tuple& tuple) { + ReusableStringStream rss; + rss << '{'; + Detail::TupleElementPrinter>::print(tuple, rss.get()); + rss << " }"; + return rss.str(); + } + }; +} +#endif // CATCH_CONFIG_ENABLE_TUPLE_STRINGMAKER + +#if defined(CATCH_CONFIG_ENABLE_VARIANT_STRINGMAKER) && defined(CATCH_CONFIG_CPP17_VARIANT) +#include +namespace Catch { + template<> + struct StringMaker { + static std::string convert(const std::monostate&) { + return "{ }"; + } + }; + + template + struct StringMaker> { + static std::string convert(const std::variant& variant) { + if (variant.valueless_by_exception()) { + return "{valueless variant}"; + } else { + return std::visit( + [](const auto& value) { + return ::Catch::Detail::stringify(value); + }, + variant + ); + } + } + }; +} +#endif // CATCH_CONFIG_ENABLE_VARIANT_STRINGMAKER + +namespace Catch { + // Import begin/ end from std here + using std::begin; + using std::end; + + namespace detail { + template + struct void_type { + using type = void; + }; + + template + struct is_range_impl : std::false_type { + }; + + template + struct is_range_impl()))>::type> : std::true_type { + }; + } // namespace detail + + template + struct is_range : detail::is_range_impl { + }; + +#if defined(_MANAGED) // Managed types are never ranges + template + struct is_range { + static const bool value = false; + }; +#endif + + template + std::string rangeToString( Range const& range ) { + return ::Catch::Detail::rangeToString( begin( range ), end( range ) ); + } + + // Handle vector specially + template + std::string rangeToString( std::vector const& v ) { + ReusableStringStream rss; + rss << "{ "; + bool first = true; + for( bool b : v ) { + if( first ) + first = false; + else + rss << ", "; + rss << ::Catch::Detail::stringify( b ); + } + rss << " }"; + return rss.str(); + } + + template + struct StringMaker::value && !::Catch::Detail::IsStreamInsertable::value>> { + static std::string convert( R const& range ) { + return rangeToString( range ); + } + }; + + template + struct StringMaker { + static std::string convert(T const(&arr)[SZ]) { + return rangeToString(arr); + } + }; + + +} // namespace Catch + +// Separate std::chrono::duration specialization +#include +#include +#include + + +namespace Catch { + +template +struct ratio_string { + static std::string symbol() { + Catch::ReusableStringStream rss; + rss << '[' << Ratio::num << '/' + << Ratio::den << ']'; + return rss.str(); + } +}; + +template <> +struct ratio_string { + static std::string symbol() { return "a"; } +}; +template <> +struct ratio_string { + static std::string symbol() { return "f"; } +}; +template <> +struct ratio_string { + static std::string symbol() { return "p"; } +}; +template <> +struct ratio_string { + static std::string symbol() { return "n"; } +}; +template <> +struct ratio_string { + static std::string symbol() { return "u"; } +}; +template <> +struct ratio_string { + static std::string symbol() { return "m"; } +}; + + //////////// + // std::chrono::duration specializations + template + struct StringMaker> { + static std::string convert(std::chrono::duration const& duration) { + ReusableStringStream rss; + rss << duration.count() << ' ' << ratio_string::symbol() << 's'; + return rss.str(); + } + }; + template + struct StringMaker>> { + static std::string convert(std::chrono::duration> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " s"; + return rss.str(); + } + }; + template + struct StringMaker>> { + static std::string convert(std::chrono::duration> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " m"; + return rss.str(); + } + }; + template + struct StringMaker>> { + static std::string convert(std::chrono::duration> const& duration) { + ReusableStringStream rss; + rss << duration.count() << " h"; + return rss.str(); + } + }; + + //////////// + // std::chrono::time_point specialization + // Generic time_point cannot be specialized, only std::chrono::time_point + template + struct StringMaker> { + static std::string convert(std::chrono::time_point const& time_point) { + return ::Catch::Detail::stringify(time_point.time_since_epoch()) + " since epoch"; + } + }; + // std::chrono::time_point specialization + template + struct StringMaker> { + static std::string convert(std::chrono::time_point const& time_point) { + auto converted = std::chrono::system_clock::to_time_t(time_point); + +#ifdef _MSC_VER + std::tm timeInfo = {}; + gmtime_s(&timeInfo, &converted); +#else + std::tm* timeInfo = std::gmtime(&converted); +#endif + + auto const timeStampSize = sizeof("2017-01-16T17:06:45Z"); + char timeStamp[timeStampSize]; + const char * const fmt = "%Y-%m-%dT%H:%M:%SZ"; + +#ifdef _MSC_VER + std::strftime(timeStamp, timeStampSize, fmt, &timeInfo); +#else + std::strftime(timeStamp, timeStampSize, fmt, timeInfo); +#endif + return std::string(timeStamp); + } + }; +} + + +#define INTERNAL_CATCH_REGISTER_ENUM( enumName, ... ) \ +namespace Catch { \ + template<> struct StringMaker { \ + static std::string convert( enumName value ) { \ + static const auto& enumInfo = ::Catch::getMutableRegistryHub().getMutableEnumValuesRegistry().registerEnum( #enumName, #__VA_ARGS__, { __VA_ARGS__ } ); \ + return static_cast(enumInfo.lookup( static_cast( value ) )); \ + } \ + }; \ +} + +#define CATCH_REGISTER_ENUM( enumName, ... ) INTERNAL_CATCH_REGISTER_ENUM( enumName, __VA_ARGS__ ) + +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +#endif // CATCH_TOSTRING_HPP_INCLUDED + +#include + +namespace Catch { + + class Approx { + private: + bool equalityComparisonImpl(double other) const; + // Sets and validates the new margin (margin >= 0) + void setMargin(double margin); + // Sets and validates the new epsilon (0 < epsilon < 1) + void setEpsilon(double epsilon); + + public: + explicit Approx ( double value ); + + static Approx custom(); + + Approx operator-() const; + + template ::value>> + Approx operator()( T const& value ) { + Approx approx( static_cast(value) ); + approx.m_epsilon = m_epsilon; + approx.m_margin = m_margin; + approx.m_scale = m_scale; + return approx; + } + + template ::value>> + explicit Approx( T const& value ): Approx(static_cast(value)) + {} + + + template ::value>> + friend bool operator == ( const T& lhs, Approx const& rhs ) { + auto lhs_v = static_cast(lhs); + return rhs.equalityComparisonImpl(lhs_v); + } + + template ::value>> + friend bool operator == ( Approx const& lhs, const T& rhs ) { + return operator==( rhs, lhs ); + } + + template ::value>> + friend bool operator != ( T const& lhs, Approx const& rhs ) { + return !operator==( lhs, rhs ); + } + + template ::value>> + friend bool operator != ( Approx const& lhs, T const& rhs ) { + return !operator==( rhs, lhs ); + } + + template ::value>> + friend bool operator <= ( T const& lhs, Approx const& rhs ) { + return static_cast(lhs) < rhs.m_value || lhs == rhs; + } + + template ::value>> + friend bool operator <= ( Approx const& lhs, T const& rhs ) { + return lhs.m_value < static_cast(rhs) || lhs == rhs; + } + + template ::value>> + friend bool operator >= ( T const& lhs, Approx const& rhs ) { + return static_cast(lhs) > rhs.m_value || lhs == rhs; + } + + template ::value>> + friend bool operator >= ( Approx const& lhs, T const& rhs ) { + return lhs.m_value > static_cast(rhs) || lhs == rhs; + } + + template ::value>> + Approx& epsilon( T const& newEpsilon ) { + double epsilonAsDouble = static_cast(newEpsilon); + setEpsilon(epsilonAsDouble); + return *this; + } + + template ::value>> + Approx& margin( T const& newMargin ) { + double marginAsDouble = static_cast(newMargin); + setMargin(marginAsDouble); + return *this; + } + + template ::value>> + Approx& scale( T const& newScale ) { + m_scale = static_cast(newScale); + return *this; + } + + std::string toString() const; + + private: + double m_epsilon; + double m_margin; + double m_scale; + double m_value; + }; + +namespace literals { + Approx operator "" _a(long double val); + Approx operator "" _a(unsigned long long val); +} // end namespace literals + +template<> +struct StringMaker { + static std::string convert(Catch::Approx const& value); +}; + +} // end namespace Catch + +#endif // CATCH_APPROX_HPP_INCLUDED + + +#ifndef CATCH_CONFIG_HPP_INCLUDED +#define CATCH_CONFIG_HPP_INCLUDED + + + +#ifndef CATCH_TEST_SPEC_HPP_INCLUDED +#define CATCH_TEST_SPEC_HPP_INCLUDED + +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + + + +#ifndef CATCH_WILDCARD_PATTERN_HPP_INCLUDED +#define CATCH_WILDCARD_PATTERN_HPP_INCLUDED + + + +#ifndef CATCH_CASE_SENSITIVE_HPP_INCLUDED +#define CATCH_CASE_SENSITIVE_HPP_INCLUDED + +namespace Catch { + + enum class CaseSensitive { Yes, No }; + +} // namespace Catch + +#endif // CATCH_CASE_SENSITIVE_HPP_INCLUDED + +#include + +namespace Catch +{ + class WildcardPattern { + enum WildcardPosition { + NoWildcard = 0, + WildcardAtStart = 1, + WildcardAtEnd = 2, + WildcardAtBothEnds = WildcardAtStart | WildcardAtEnd + }; + + public: + + WildcardPattern( std::string const& pattern, CaseSensitive caseSensitivity ); + virtual ~WildcardPattern() = default; + virtual bool matches( std::string const& str ) const; + + private: + std::string normaliseString( std::string const& str ) const; + CaseSensitive m_caseSensitivity; + WildcardPosition m_wildcard = NoWildcard; + std::string m_pattern; + }; +} + +#endif // CATCH_WILDCARD_PATTERN_HPP_INCLUDED + +#include +#include + +namespace Catch { + + struct IConfig; + struct TestCaseInfo; + class TestCaseHandle; + + class TestSpec { + + class Pattern { + public: + explicit Pattern( std::string const& name ); + virtual ~Pattern(); + virtual bool matches( TestCaseInfo const& testCase ) const = 0; + std::string const& name() const; + private: + std::string const m_name; + }; + + class NamePattern : public Pattern { + public: + explicit NamePattern( std::string const& name, std::string const& filterString ); + bool matches( TestCaseInfo const& testCase ) const override; + private: + WildcardPattern m_wildcardPattern; + }; + + class TagPattern : public Pattern { + public: + explicit TagPattern( std::string const& tag, std::string const& filterString ); + bool matches( TestCaseInfo const& testCase ) const override; + private: + std::string m_tag; + }; + + struct Filter { + std::vector> m_required; + std::vector> m_forbidden; + + bool matches( TestCaseInfo const& testCase ) const; + std::string name() const; + }; + + public: + struct FilterMatch { + std::string name; + std::vector tests; + }; + using Matches = std::vector; + using vectorStrings = std::vector; + + bool hasFilters() const; + bool matches( TestCaseInfo const& testCase ) const; + Matches matchesByFilter( std::vector const& testCases, IConfig const& config ) const; + const vectorStrings & getInvalidArgs() const; + + private: + std::vector m_filters; + std::vector m_invalidArgs; + friend class TestSpecParser; + }; +} + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +#endif // CATCH_TEST_SPEC_HPP_INCLUDED + +#include +#include + +namespace Catch { + + struct IStream; + + struct ConfigData { + bool listTests = false; + bool listTags = false; + bool listReporters = false; + + bool showSuccessfulTests = false; + bool shouldDebugBreak = false; + bool noThrow = false; + bool showHelp = false; + bool showInvisibles = false; + bool filenamesAsTags = false; + bool libIdentify = false; + + int abortAfter = -1; + unsigned int rngSeed = 0; + + bool benchmarkNoAnalysis = false; + unsigned int benchmarkSamples = 100; + double benchmarkConfidenceInterval = 0.95; + unsigned int benchmarkResamples = 100000; + std::chrono::milliseconds::rep benchmarkWarmupTime = 100; + + Verbosity verbosity = Verbosity::Normal; + WarnAbout::What warnings = WarnAbout::Nothing; + ShowDurations showDurations = ShowDurations::DefaultForReporter; + double minDuration = -1; + TestRunOrder runOrder = TestRunOrder::Declared; + UseColour useColour = UseColour::Auto; + WaitForKeypress::When waitForKeypress = WaitForKeypress::Never; + + std::string outputFilename; + std::string name; + std::string processName; +#ifndef CATCH_CONFIG_DEFAULT_REPORTER +#define CATCH_CONFIG_DEFAULT_REPORTER "console" +#endif + std::string reporterName = CATCH_CONFIG_DEFAULT_REPORTER; +#undef CATCH_CONFIG_DEFAULT_REPORTER + + std::vector testsOrTags; + std::vector sectionsToRun; + }; + + + class Config : public IConfig { + public: + + Config() = default; + Config( ConfigData const& data ); + ~Config() override; // = default in the cpp file + + std::string const& getFilename() const; + + bool listTests() const; + bool listTags() const; + bool listReporters() const; + + std::string getProcessName() const; + std::string const& getReporterName() const; + + std::vector const& getTestsOrTags() const override; + std::vector const& getSectionsToRun() const override; + + TestSpec const& testSpec() const override; + bool hasTestFilters() const override; + + bool showHelp() const; + + // IConfig interface + bool allowThrows() const override; + std::ostream& stream() const override; + std::string name() const override; + bool includeSuccessfulResults() const override; + bool warnAboutMissingAssertions() const override; + bool warnAboutNoTests() const override; + ShowDurations showDurations() const override; + double minDuration() const override; + TestRunOrder runOrder() const override; + unsigned int rngSeed() const override; + UseColour useColour() const override; + bool shouldDebugBreak() const override; + int abortAfter() const override; + bool showInvisibles() const override; + Verbosity verbosity() const override; + bool benchmarkNoAnalysis() const override; + int benchmarkSamples() const override; + double benchmarkConfidenceInterval() const override; + unsigned int benchmarkResamples() const override; + std::chrono::milliseconds benchmarkWarmupTime() const override; + + private: + + IStream const* openStream(); + ConfigData m_data; + + Detail::unique_ptr m_stream; + TestSpec m_testSpec; + bool m_hasTestFilters = false; + }; + +} // end namespace Catch + +#endif // CATCH_CONFIG_HPP_INCLUDED + + +#ifndef CATCH_MESSAGE_HPP_INCLUDED +#define CATCH_MESSAGE_HPP_INCLUDED + + +#include +#include + +namespace Catch { + + struct MessageStream { + + template + MessageStream& operator << ( T const& value ) { + m_stream << value; + return *this; + } + + ReusableStringStream m_stream; + }; + + struct MessageBuilder : MessageStream { + MessageBuilder( StringRef const& macroName, + SourceLineInfo const& lineInfo, + ResultWas::OfType type ); + + template + MessageBuilder& operator << ( T const& value ) { + m_stream << value; + return *this; + } + + MessageInfo m_info; + }; + + class ScopedMessage { + public: + explicit ScopedMessage( MessageBuilder const& builder ); + ScopedMessage( ScopedMessage& duplicate ) = delete; + ScopedMessage( ScopedMessage&& old ) noexcept; + ~ScopedMessage(); + + MessageInfo m_info; + bool m_moved = false; + }; + + class Capturer { + std::vector m_messages; + IResultCapture& m_resultCapture = getResultCapture(); + size_t m_captured = 0; + public: + Capturer( StringRef macroName, SourceLineInfo const& lineInfo, ResultWas::OfType resultType, StringRef names ); + + Capturer(Capturer const&) = delete; + Capturer& operator=(Capturer const&) = delete; + + ~Capturer(); + + void captureValue( size_t index, std::string const& value ); + + template + void captureValues( size_t index, T const& value ) { + captureValue( index, Catch::Detail::stringify( value ) ); + } + + template + void captureValues( size_t index, T const& value, Ts const&... values ) { + captureValue( index, Catch::Detail::stringify(value) ); + captureValues( index+1, values... ); + } + }; + +} // end namespace Catch + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_MSG( macroName, messageType, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, Catch::StringRef(), resultDisposition ); \ + catchAssertionHandler.handleMessage( messageType, ( Catch::MessageStream() << __VA_ARGS__ + ::Catch::StreamEndStop() ).m_stream.str() ); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_CAPTURE( varName, macroName, ... ) \ + Catch::Capturer varName( macroName, CATCH_INTERNAL_LINEINFO, Catch::ResultWas::Info, #__VA_ARGS__ ); \ + varName.captureValues( 0, __VA_ARGS__ ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_INFO( macroName, log ) \ + Catch::ScopedMessage INTERNAL_CATCH_UNIQUE_NAME( scopedMessage )( Catch::MessageBuilder( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, Catch::ResultWas::Info ) << log ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_UNSCOPED_INFO( macroName, log ) \ + Catch::getResultCapture().emplaceUnscopedMessage( Catch::MessageBuilder( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, Catch::ResultWas::Info ) << log ) + + +#if defined(CATCH_CONFIG_PREFIX_ALL) && !defined(CATCH_CONFIG_DISABLE) + + #define CATCH_INFO( msg ) INTERNAL_CATCH_INFO( "CATCH_INFO", msg ) + #define CATCH_UNSCOPED_INFO( msg ) INTERNAL_CATCH_UNSCOPED_INFO( "CATCH_UNSCOPED_INFO", msg ) + #define CATCH_WARN( msg ) INTERNAL_CATCH_MSG( "CATCH_WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg ) + #define CATCH_CAPTURE( ... ) INTERNAL_CATCH_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "CATCH_CAPTURE", __VA_ARGS__ ) + +#elif defined(CATCH_CONFIG_PREFIX_ALL) && defined(CATCH_CONFIG_DISABLE) + + #define CATCH_INFO( msg ) (void)(0) + #define CATCH_UNSCOPED_INFO( msg ) (void)(0) + #define CATCH_WARN( msg ) (void)(0) + #define CATCH_CAPTURE( ... ) (void)(0) + +#elif !defined(CATCH_CONFIG_PREFIX_ALL) && !defined(CATCH_CONFIG_DISABLE) + + #define INFO( msg ) INTERNAL_CATCH_INFO( "INFO", msg ) + #define UNSCOPED_INFO( msg ) INTERNAL_CATCH_UNSCOPED_INFO( "UNSCOPED_INFO", msg ) + #define WARN( msg ) INTERNAL_CATCH_MSG( "WARN", Catch::ResultWas::Warning, Catch::ResultDisposition::ContinueOnFailure, msg ) + #define CAPTURE( ... ) INTERNAL_CATCH_CAPTURE( INTERNAL_CATCH_UNIQUE_NAME(capturer), "CAPTURE", __VA_ARGS__ ) + +#elif !defined(CATCH_CONFIG_PREFIX_ALL) && defined(CATCH_CONFIG_DISABLE) + + #define INFO( msg ) (void)(0) + #define UNSCOPED_INFO( msg ) (void)(0) + #define WARN( msg ) (void)(0) + #define CAPTURE( ... ) (void)(0) + +#endif // end of user facing macro declarations + + + + +#endif // CATCH_MESSAGE_HPP_INCLUDED + + +#ifndef CATCH_REPORTER_REGISTRARS_HPP_INCLUDED +#define CATCH_REPORTER_REGISTRARS_HPP_INCLUDED + + + +#ifndef CATCH_INTERFACES_REPORTER_FACTORY_HPP_INCLUDED +#define CATCH_INTERFACES_REPORTER_FACTORY_HPP_INCLUDED + +namespace Catch { + + struct ReporterConfig; + + struct IReporterFactory { + virtual ~IReporterFactory(); // = default + + virtual IStreamingReporterPtr + create( ReporterConfig const& config ) const = 0; + virtual std::string getDescription() const = 0; + }; + using IReporterFactoryPtr = Detail::unique_ptr; +} // namespace Catch + +#endif // CATCH_INTERFACES_REPORTER_FACTORY_HPP_INCLUDED + +namespace Catch { + + template + class ReporterFactory : public IReporterFactory { + + IStreamingReporterPtr create( ReporterConfig const& config ) const override { + return Detail::make_unique( config ); + } + + std::string getDescription() const override { + return T::getDescription(); + } + }; + + + template + class ReporterRegistrar { + public: + explicit ReporterRegistrar( std::string const& name ) { + getMutableRegistryHub().registerReporter( name, Detail::make_unique>() ); + } + }; + + template + class ListenerRegistrar { + + class ListenerFactory : public IReporterFactory { + + IStreamingReporterPtr create( ReporterConfig const& config ) const override { + return Detail::make_unique(config); + } + std::string getDescription() const override { + return std::string(); + } + }; + + public: + + ListenerRegistrar() { + getMutableRegistryHub().registerListener( Detail::make_unique() ); + } + }; +} + +#if !defined(CATCH_CONFIG_DISABLE) + +#define CATCH_REGISTER_REPORTER( name, reporterType ) \ + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::ReporterRegistrar catch_internal_RegistrarFor##reporterType( name ); } \ + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION + +#define CATCH_REGISTER_LISTENER( listenerType ) \ + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::ListenerRegistrar catch_internal_RegistrarFor##listenerType; } \ + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION +#else // CATCH_CONFIG_DISABLE + +#define CATCH_REGISTER_REPORTER(name, reporterType) +#define CATCH_REGISTER_LISTENER(listenerType) + +#endif // CATCH_CONFIG_DISABLE + +#endif // CATCH_REPORTER_REGISTRARS_HPP_INCLUDED + + +#ifndef CATCH_SESSION_HPP_INCLUDED +#define CATCH_SESSION_HPP_INCLUDED + + + +#ifndef CATCH_COMMANDLINE_HPP_INCLUDED +#define CATCH_COMMANDLINE_HPP_INCLUDED + + + +#ifndef CATCH_CLARA_HPP_INCLUDED +#define CATCH_CLARA_HPP_INCLUDED + +#if defined( __clang__ ) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wweak-vtables" +# pragma clang diagnostic ignored "-Wshadow" +# pragma clang diagnostic ignored "-Wdeprecated" +#endif + +#if defined( __GNUC__ ) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wsign-conversion" +#endif + +#ifndef CLARA_CONFIG_OPTIONAL_TYPE +# ifdef __has_include +# if __has_include( ) && __cplusplus >= 201703L +# include +# define CLARA_CONFIG_OPTIONAL_TYPE std::optional +# endif +# endif +#endif + + +#include +#include +#include +#include +#include +#include +#include + +namespace Catch { + namespace Clara { + + class Args; + class Parser; + + // enum of result types from a parse + enum class ParseResultType { + Matched, + NoMatch, + ShortCircuitAll, + ShortCircuitSame + }; + + namespace Detail { + + // Traits for extracting arg and return type of lambdas (for single + // argument lambdas) + template + struct UnaryLambdaTraits + : UnaryLambdaTraits {}; + + template + struct UnaryLambdaTraits { + static const bool isValid = false; + }; + + template + struct UnaryLambdaTraits { + static const bool isValid = true; + using ArgType = typename std::remove_const< + typename std::remove_reference::type>::type; + using ReturnType = ReturnT; + }; + + class TokenStream; + + // Wraps a token coming from a token stream. These may not directly + // correspond to strings as a single string may encode an option + + // its argument if the : or = form is used + enum class TokenType { Option, Argument }; + struct Token { + TokenType type; + std::string token; + }; + + // Abstracts iterators into args as a stream of tokens, with option + // arguments uniformly handled + class TokenStream { + using Iterator = std::vector::const_iterator; + Iterator it; + Iterator itEnd; + std::vector m_tokenBuffer; + + void loadBuffer(); + + public: + explicit TokenStream( Args const& args ); + TokenStream( Iterator it, Iterator itEnd ); + + explicit operator bool() const { + return !m_tokenBuffer.empty() || it != itEnd; + } + + size_t count() const { + return m_tokenBuffer.size() + ( itEnd - it ); + } + + Token operator*() const { + assert( !m_tokenBuffer.empty() ); + return m_tokenBuffer.front(); + } + + Token const* operator->() const { + assert( !m_tokenBuffer.empty() ); + return &m_tokenBuffer.front(); + } + + TokenStream& operator++(); + }; + + //! Denotes type of a parsing result + enum class ResultType { + Ok, ///< No errors + LogicError, ///< Error in user-specified arguments for + ///< construction + RuntimeError ///< Error in parsing inputs + }; + + class ResultBase { + protected: + ResultBase( ResultType type ): m_type( type ) {} + virtual ~ResultBase(); // = default; + + + ResultBase(ResultBase const&) = default; + ResultBase& operator=(ResultBase const&) = default; + ResultBase(ResultBase&&) = default; + ResultBase& operator=(ResultBase&&) = default; + + virtual void enforceOk() const = 0; + + ResultType m_type; + }; + + template class ResultValueBase : public ResultBase { + public: + auto value() const -> T const& { + enforceOk(); + return m_value; + } + + protected: + ResultValueBase( ResultType type ): ResultBase( type ) {} + + ResultValueBase( ResultValueBase const& other ): + ResultBase( other ) { + if ( m_type == ResultType::Ok ) + new ( &m_value ) T( other.m_value ); + } + + ResultValueBase( ResultType, T const& value ): ResultBase( ResultType::Ok ) { + new ( &m_value ) T( value ); + } + + auto operator=( ResultValueBase const& other ) + -> ResultValueBase& { + if ( m_type == ResultType::Ok ) + m_value.~T(); + ResultBase::operator=( other ); + if ( m_type == ResultType::Ok ) + new ( &m_value ) T( other.m_value ); + return *this; + } + + ~ResultValueBase() override { + if ( m_type == ResultType::Ok ) + m_value.~T(); + } + + union { + T m_value; + }; + }; + + template <> class ResultValueBase : public ResultBase { + protected: + using ResultBase::ResultBase; + }; + + template + class BasicResult : public ResultValueBase { + public: + template + explicit BasicResult( BasicResult const& other ): + ResultValueBase( other.type() ), + m_errorMessage( other.errorMessage() ) { + assert( type() != ResultType::Ok ); + } + + template + static auto ok( U const& value ) -> BasicResult { + return { ResultType::Ok, value }; + } + static auto ok() -> BasicResult { return { ResultType::Ok }; } + static auto logicError( std::string const& message ) + -> BasicResult { + return { ResultType::LogicError, message }; + } + static auto runtimeError( std::string const& message ) + -> BasicResult { + return { ResultType::RuntimeError, message }; + } + + explicit operator bool() const { + return m_type == ResultType::Ok; + } + auto type() const -> ResultType { return m_type; } + auto errorMessage() const -> std::string { + return m_errorMessage; + } + + protected: + void enforceOk() const override { + + // Errors shouldn't reach this point, but if they do + // the actual error message will be in m_errorMessage + assert( m_type != ResultType::LogicError ); + assert( m_type != ResultType::RuntimeError ); + if ( m_type != ResultType::Ok ) + std::abort(); + } + + std::string + m_errorMessage; // Only populated if resultType is an error + + BasicResult( ResultType type, + std::string const& message ): + ResultValueBase( type ), m_errorMessage( message ) { + assert( m_type != ResultType::Ok ); + } + + using ResultValueBase::ResultValueBase; + using ResultBase::m_type; + }; + + class ParseState { + public: + ParseState( ParseResultType type, + TokenStream const& remainingTokens ); + + ParseResultType type() const { return m_type; } + TokenStream const& remainingTokens() const { + return m_remainingTokens; + } + + private: + ParseResultType m_type; + TokenStream m_remainingTokens; + }; + + using Result = BasicResult; + using ParserResult = BasicResult; + using InternalParseResult = BasicResult; + + struct HelpColumns { + std::string left; + std::string right; + }; + + template + ParserResult convertInto( std::string const& source, T& target ) { + std::stringstream ss( source ); + ss >> target; + if ( ss.fail() ) { + return ParserResult::runtimeError( + "Unable to convert '" + source + + "' to destination type" ); + } else { + return ParserResult::ok( ParseResultType::Matched ); + } + } + ParserResult convertInto( std::string const& source, + std::string& target ); + ParserResult convertInto( std::string const& source, bool& target ); + +#ifdef CLARA_CONFIG_OPTIONAL_TYPE + template + auto convertInto( std::string const& source, + CLARA_CONFIG_OPTIONAL_TYPE& target ) + -> ParserResult { + T temp; + auto result = convertInto( source, temp ); + if ( result ) + target = std::move( temp ); + return result; + } +#endif // CLARA_CONFIG_OPTIONAL_TYPE + + struct BoundRef : Catch::Detail::NonCopyable { + virtual ~BoundRef() = default; + virtual bool isContainer() const; + virtual bool isFlag() const; + }; + struct BoundValueRefBase : BoundRef { + virtual auto setValue( std::string const& arg ) + -> ParserResult = 0; + }; + struct BoundFlagRefBase : BoundRef { + virtual auto setFlag( bool flag ) -> ParserResult = 0; + bool isFlag() const override; + }; + + template struct BoundValueRef : BoundValueRefBase { + T& m_ref; + + explicit BoundValueRef( T& ref ): m_ref( ref ) {} + + ParserResult setValue( std::string const& arg ) override { + return convertInto( arg, m_ref ); + } + }; + + template + struct BoundValueRef> : BoundValueRefBase { + std::vector& m_ref; + + explicit BoundValueRef( std::vector& ref ): m_ref( ref ) {} + + auto isContainer() const -> bool override { return true; } + + auto setValue( std::string const& arg ) + -> ParserResult override { + T temp; + auto result = convertInto( arg, temp ); + if ( result ) + m_ref.push_back( temp ); + return result; + } + }; + + struct BoundFlagRef : BoundFlagRefBase { + bool& m_ref; + + explicit BoundFlagRef( bool& ref ): m_ref( ref ) {} + + ParserResult setFlag( bool flag ) override; + }; + + template struct LambdaInvoker { + static_assert( + std::is_same::value, + "Lambda must return void or clara::ParserResult" ); + + template + static auto invoke( L const& lambda, ArgType const& arg ) + -> ParserResult { + return lambda( arg ); + } + }; + + template <> struct LambdaInvoker { + template + static auto invoke( L const& lambda, ArgType const& arg ) + -> ParserResult { + lambda( arg ); + return ParserResult::ok( ParseResultType::Matched ); + } + }; + + template + auto invokeLambda( L const& lambda, std::string const& arg ) + -> ParserResult { + ArgType temp{}; + auto result = convertInto( arg, temp ); + return !result ? result + : LambdaInvoker::ReturnType>::invoke( lambda, temp ); + } + + template struct BoundLambda : BoundValueRefBase { + L m_lambda; + + static_assert( + UnaryLambdaTraits::isValid, + "Supplied lambda must take exactly one argument" ); + explicit BoundLambda( L const& lambda ): m_lambda( lambda ) {} + + auto setValue( std::string const& arg ) + -> ParserResult override { + return invokeLambda::ArgType>( + m_lambda, arg ); + } + }; + + template struct BoundFlagLambda : BoundFlagRefBase { + L m_lambda; + + static_assert( + UnaryLambdaTraits::isValid, + "Supplied lambda must take exactly one argument" ); + static_assert( + std::is_same::ArgType, + bool>::value, + "flags must be boolean" ); + + explicit BoundFlagLambda( L const& lambda ): + m_lambda( lambda ) {} + + auto setFlag( bool flag ) -> ParserResult override { + return LambdaInvoker::ReturnType>::invoke( m_lambda, flag ); + } + }; + + enum class Optionality { Optional, Required }; + + class ParserBase { + public: + virtual ~ParserBase() = default; + virtual auto validate() const -> Result { return Result::ok(); } + virtual auto parse( std::string const& exeName, + TokenStream const& tokens ) const + -> InternalParseResult = 0; + virtual size_t cardinality() const; + + InternalParseResult parse( Args const& args ) const; + }; + + template + class ComposableParserImpl : public ParserBase { + public: + template + auto operator|( T const& other ) const -> Parser; + }; + + // Common code and state for Args and Opts + template + class ParserRefImpl : public ComposableParserImpl { + protected: + Optionality m_optionality = Optionality::Optional; + std::shared_ptr m_ref; + std::string m_hint; + std::string m_description; + + explicit ParserRefImpl( std::shared_ptr const& ref ): + m_ref( ref ) {} + + public: + template + ParserRefImpl( T& ref, std::string const& hint ): + m_ref( std::make_shared>( ref ) ), + m_hint( hint ) {} + + template + ParserRefImpl( LambdaT const& ref, std::string const& hint ): + m_ref( std::make_shared>( ref ) ), + m_hint( hint ) {} + + auto operator()( std::string const& description ) -> DerivedT& { + m_description = description; + return static_cast( *this ); + } + + auto optional() -> DerivedT& { + m_optionality = Optionality::Optional; + return static_cast( *this ); + } + + auto required() -> DerivedT& { + m_optionality = Optionality::Required; + return static_cast( *this ); + } + + auto isOptional() const -> bool { + return m_optionality == Optionality::Optional; + } + + auto cardinality() const -> size_t override { + if ( m_ref->isContainer() ) + return 0; + else + return 1; + } + + std::string const& hint() const { return m_hint; } + }; + + } // namespace detail + + + // A parser for arguments + class Arg : public Detail::ParserRefImpl { + public: + using ParserRefImpl::ParserRefImpl; + + Detail::InternalParseResult + parse(std::string const&, + Detail::TokenStream const& tokens) const override; + }; + + // A parser for options + class Opt : public Detail::ParserRefImpl { + protected: + std::vector m_optNames; + + public: + template + explicit Opt(LambdaT const& ref) : + ParserRefImpl( + std::make_shared>(ref)) {} + + explicit Opt(bool& ref); + + template + Opt(LambdaT const& ref, std::string const& hint) : + ParserRefImpl(ref, hint) {} + + template + Opt(T& ref, std::string const& hint) : + ParserRefImpl(ref, hint) {} + + auto operator[](std::string const& optName) -> Opt& { + m_optNames.push_back(optName); + return *this; + } + + std::vector getHelpColumns() const; + + bool isMatch(std::string const& optToken) const; + + using ParserBase::parse; + + Detail::InternalParseResult + parse(std::string const&, + Detail::TokenStream const& tokens) const override; + + Detail::Result validate() const override; + }; + + // Specifies the name of the executable + class ExeName : public Detail::ComposableParserImpl { + std::shared_ptr m_name; + std::shared_ptr m_ref; + + template + static auto makeRef(LambdaT const& lambda) + -> std::shared_ptr { + return std::make_shared>(lambda); + } + + public: + ExeName(); + explicit ExeName(std::string& ref); + + template + explicit ExeName(LambdaT const& lambda) : ExeName() { + m_ref = std::make_shared>(lambda); + } + + // The exe name is not parsed out of the normal tokens, but is + // handled specially + Detail::InternalParseResult + parse(std::string const&, + Detail::TokenStream const& tokens) const override; + + std::string const& name() const { return *m_name; } + Detail::ParserResult set(std::string const& newName); + }; + + + // A Combined parser + class Parser : Detail::ParserBase { + mutable ExeName m_exeName; + std::vector m_options; + std::vector m_args; + + public: + + auto operator|=(ExeName const& exeName) -> Parser& { + m_exeName = exeName; + return *this; + } + + auto operator|=(Arg const& arg) -> Parser& { + m_args.push_back(arg); + return *this; + } + + auto operator|=(Opt const& opt) -> Parser& { + m_options.push_back(opt); + return *this; + } + + Parser& operator|=(Parser const& other); + + template + auto operator|(T const& other) const -> Parser { + return Parser(*this) |= other; + } + + std::vector getHelpColumns() const; + + void writeToStream(std::ostream& os) const; + + friend auto operator<<(std::ostream& os, Parser const& parser) + -> std::ostream& { + parser.writeToStream(os); + return os; + } + + Detail::Result validate() const override; + + using ParserBase::parse; + Detail::InternalParseResult + parse(std::string const& exeName, + Detail::TokenStream const& tokens) const override; + }; + + // Transport for raw args (copied from main args, or supplied via + // init list for testing) + class Args { + friend Detail::TokenStream; + std::string m_exeName; + std::vector m_args; + + public: + Args(int argc, char const* const* argv); + Args(std::initializer_list args); + + std::string const& exeName() const { return m_exeName; } + }; + + + // Convenience wrapper for option parser that specifies the help option + struct Help : Opt { + Help(bool& showHelpFlag); + }; + + // Result type for parser operation + using Detail::ParserResult; + + namespace Detail { + template + template + Parser + ComposableParserImpl::operator|(T const& other) const { + return Parser() | static_cast(*this) | other; + } + } + + } // namespace Clara +} // namespace Catch + +#if defined( __clang__ ) +# pragma clang diagnostic pop +#endif + +#if defined( __GNUC__ ) +# pragma GCC diagnostic pop +#endif + +#endif // CATCH_CLARA_HPP_INCLUDED + +namespace Catch { + + struct ConfigData; + + Clara::Parser makeCommandLineParser( ConfigData& config ); + +} // end namespace Catch + +#endif // CATCH_COMMANDLINE_HPP_INCLUDED + +namespace Catch { + + class Session : Detail::NonCopyable { + public: + + Session(); + ~Session(); + + void showHelp() const; + void libIdentify(); + + int applyCommandLine( int argc, char const * const * argv ); + #if defined(CATCH_CONFIG_WCHAR) && defined(_WIN32) && defined(UNICODE) + int applyCommandLine( int argc, wchar_t const * const * argv ); + #endif + + void useConfigData( ConfigData const& configData ); + + template + int run(int argc, CharT const * const argv[]) { + if (m_startupExceptions) + return 1; + int returnCode = applyCommandLine(argc, argv); + if (returnCode == 0) + returnCode = run(); + return returnCode; + } + + int run(); + + Clara::Parser const& cli() const; + void cli( Clara::Parser const& newParser ); + ConfigData& configData(); + Config& config(); + private: + int runInternal(); + + Clara::Parser m_cli; + ConfigData m_configData; + Detail::unique_ptr m_config; + bool m_startupExceptions = false; + }; + +} // end namespace Catch + +#endif // CATCH_SESSION_HPP_INCLUDED + + +#ifndef CATCH_TAG_ALIAS_HPP_INCLUDED +#define CATCH_TAG_ALIAS_HPP_INCLUDED + + +#include + +namespace Catch { + + struct TagAlias { + TagAlias(std::string const& _tag, SourceLineInfo _lineInfo): + tag(_tag), + lineInfo(_lineInfo) + {} + + std::string tag; + SourceLineInfo lineInfo; + }; + +} // end namespace Catch + +#endif // CATCH_TAG_ALIAS_HPP_INCLUDED + + +#ifndef CATCH_TAG_ALIAS_AUTOREGISTRAR_HPP_INCLUDED +#define CATCH_TAG_ALIAS_AUTOREGISTRAR_HPP_INCLUDED + + +namespace Catch { + + struct RegistrarForTagAliases { + RegistrarForTagAliases( char const* alias, char const* tag, SourceLineInfo const& lineInfo ); + }; + +} // end namespace Catch + +#define CATCH_REGISTER_TAG_ALIAS( alias, spec ) \ + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION \ + CATCH_INTERNAL_SUPPRESS_GLOBALS_WARNINGS \ + namespace{ Catch::RegistrarForTagAliases INTERNAL_CATCH_UNIQUE_NAME( AutoRegisterTagAlias )( alias, spec, CATCH_INTERNAL_LINEINFO ); } \ + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION + +#endif // CATCH_TAG_ALIAS_AUTOREGISTRAR_HPP_INCLUDED + + +#ifndef CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED +#define CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED + +// We need this suppression to leak, because it took until GCC 10 +// for the front end to handle local suppression via _Pragma properly +// inside templates (so `TEMPLATE_TEST_CASE` and co). +// **THIS IS DIFFERENT FOR STANDARD TESTS, WHERE GCC 9 IS SUFFICIENT** +#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && __GNUC__ < 10 +#pragma GCC diagnostic ignored "-Wparentheses" +#endif + + + + +#ifndef CATCH_TEST_MACROS_HPP_INCLUDED +#define CATCH_TEST_MACROS_HPP_INCLUDED + + + +#ifndef CATCH_TEST_MACRO_IMPL_HPP_INCLUDED +#define CATCH_TEST_MACRO_IMPL_HPP_INCLUDED + + + +#ifndef CATCH_ASSERTION_HANDLER_HPP_INCLUDED +#define CATCH_ASSERTION_HANDLER_HPP_INCLUDED + + + +#ifndef CATCH_DECOMPOSER_HPP_INCLUDED +#define CATCH_DECOMPOSER_HPP_INCLUDED + + +#include + +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable:4389) // '==' : signed/unsigned mismatch +#pragma warning(disable:4018) // more "signed/unsigned mismatch" +#pragma warning(disable:4312) // Converting int to T* using reinterpret_cast (issue on x64 platform) +#pragma warning(disable:4180) // qualifier applied to function type has no meaning +#pragma warning(disable:4800) // Forcing result to true or false +#endif + +#ifdef __clang__ +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wsign-compare" +#elif defined __GNUC__ +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wsign-compare" +#endif + +namespace Catch { + + struct ITransientExpression { + auto isBinaryExpression() const -> bool { return m_isBinaryExpression; } + auto getResult() const -> bool { return m_result; } + virtual void streamReconstructedExpression( std::ostream &os ) const = 0; + + ITransientExpression( bool isBinaryExpression, bool result ) + : m_isBinaryExpression( isBinaryExpression ), + m_result( result ) + {} + + ITransientExpression() = default; + ITransientExpression(ITransientExpression const&) = default; + ITransientExpression& operator=(ITransientExpression const&) = default; + + // We don't actually need a virtual destructor, but many static analysers + // complain if it's not here :-( + virtual ~ITransientExpression(); // = default; + + bool m_isBinaryExpression; + bool m_result; + friend std::ostream& operator<<(std::ostream& out, ITransientExpression const& expr) { + expr.streamReconstructedExpression(out); + return out; + } + }; + + void formatReconstructedExpression( std::ostream &os, std::string const& lhs, StringRef op, std::string const& rhs ); + + template + class BinaryExpr : public ITransientExpression { + LhsT m_lhs; + StringRef m_op; + RhsT m_rhs; + + void streamReconstructedExpression( std::ostream &os ) const override { + formatReconstructedExpression + ( os, Catch::Detail::stringify( m_lhs ), m_op, Catch::Detail::stringify( m_rhs ) ); + } + + public: + BinaryExpr( bool comparisonResult, LhsT lhs, StringRef op, RhsT rhs ) + : ITransientExpression{ true, comparisonResult }, + m_lhs( lhs ), + m_op( op ), + m_rhs( rhs ) + {} + + template + auto operator && ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator || ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator == ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator != ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator > ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator < ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator >= ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator <= ( T ) const -> BinaryExpr const { + static_assert(always_false::value, + "chained comparisons are not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + }; + + template + class UnaryExpr : public ITransientExpression { + LhsT m_lhs; + + void streamReconstructedExpression( std::ostream &os ) const override { + os << Catch::Detail::stringify( m_lhs ); + } + + public: + explicit UnaryExpr( LhsT lhs ) + : ITransientExpression{ false, static_cast(lhs) }, + m_lhs( lhs ) + {} + }; + + + // Specialised comparison functions to handle equality comparisons between ints and pointers (NULL deduces as an int) + template + auto compareEqual( LhsT const& lhs, RhsT const& rhs ) -> bool { return static_cast(lhs == rhs); } + template + auto compareEqual( T* const& lhs, int rhs ) -> bool { return lhs == reinterpret_cast( rhs ); } + template + auto compareEqual( T* const& lhs, long rhs ) -> bool { return lhs == reinterpret_cast( rhs ); } + template + auto compareEqual( int lhs, T* const& rhs ) -> bool { return reinterpret_cast( lhs ) == rhs; } + template + auto compareEqual( long lhs, T* const& rhs ) -> bool { return reinterpret_cast( lhs ) == rhs; } + + template + auto compareNotEqual( LhsT const& lhs, RhsT&& rhs ) -> bool { return static_cast(lhs != rhs); } + template + auto compareNotEqual( T* const& lhs, int rhs ) -> bool { return lhs != reinterpret_cast( rhs ); } + template + auto compareNotEqual( T* const& lhs, long rhs ) -> bool { return lhs != reinterpret_cast( rhs ); } + template + auto compareNotEqual( int lhs, T* const& rhs ) -> bool { return reinterpret_cast( lhs ) != rhs; } + template + auto compareNotEqual( long lhs, T* const& rhs ) -> bool { return reinterpret_cast( lhs ) != rhs; } + + + template + class ExprLhs { + LhsT m_lhs; + public: + explicit ExprLhs( LhsT lhs ) : m_lhs( lhs ) {} + + template + auto operator == ( RhsT const& rhs ) -> BinaryExpr const { + return { compareEqual( m_lhs, rhs ), m_lhs, "=="_sr, rhs }; + } + auto operator == ( bool rhs ) -> BinaryExpr const { + return { m_lhs == rhs, m_lhs, "=="_sr, rhs }; + } + + template + auto operator != ( RhsT const& rhs ) -> BinaryExpr const { + return { compareNotEqual( m_lhs, rhs ), m_lhs, "!="_sr, rhs }; + } + auto operator != ( bool rhs ) -> BinaryExpr const { + return { m_lhs != rhs, m_lhs, "!="_sr, rhs }; + } + + template + auto operator > ( RhsT const& rhs ) -> BinaryExpr const { + return { static_cast(m_lhs > rhs), m_lhs, ">"_sr, rhs }; + } + template + auto operator < ( RhsT const& rhs ) -> BinaryExpr const { + return { static_cast(m_lhs < rhs), m_lhs, "<"_sr, rhs }; + } + template + auto operator >= ( RhsT const& rhs ) -> BinaryExpr const { + return { static_cast(m_lhs >= rhs), m_lhs, ">="_sr, rhs }; + } + template + auto operator <= ( RhsT const& rhs ) -> BinaryExpr const { + return { static_cast(m_lhs <= rhs), m_lhs, "<="_sr, rhs }; + } + template + auto operator | (RhsT const& rhs) -> BinaryExpr const { + return { static_cast(m_lhs | rhs), m_lhs, "|"_sr, rhs }; + } + template + auto operator & (RhsT const& rhs) -> BinaryExpr const { + return { static_cast(m_lhs & rhs), m_lhs, "&"_sr, rhs }; + } + template + auto operator ^ (RhsT const& rhs) -> BinaryExpr const { + return { static_cast(m_lhs ^ rhs), m_lhs, "^"_sr, rhs }; + } + + template + auto operator && ( RhsT const& ) -> BinaryExpr const { + static_assert(always_false::value, + "operator&& is not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + template + auto operator || ( RhsT const& ) -> BinaryExpr const { + static_assert(always_false::value, + "operator|| is not supported inside assertions, " + "wrap the expression inside parentheses, or decompose it"); + } + + auto makeUnaryExpr() const -> UnaryExpr { + return UnaryExpr{ m_lhs }; + } + }; + + void handleExpression( ITransientExpression const& expr ); + + template + void handleExpression( ExprLhs const& expr ) { + handleExpression( expr.makeUnaryExpr() ); + } + + struct Decomposer { + template + auto operator <= ( T const& lhs ) -> ExprLhs { + return ExprLhs{ lhs }; + } + + auto operator <=( bool value ) -> ExprLhs { + return ExprLhs{ value }; + } + }; + +} // end namespace Catch + +#ifdef _MSC_VER +#pragma warning(pop) +#endif +#ifdef __clang__ +# pragma clang diagnostic pop +#elif defined __GNUC__ +# pragma GCC diagnostic pop +#endif + +#endif // CATCH_DECOMPOSER_HPP_INCLUDED + +namespace Catch { + + struct TestFailureException{}; + struct AssertionResultData; + struct IResultCapture; + class RunContext; + + struct AssertionReaction { + bool shouldDebugBreak = false; + bool shouldThrow = false; + }; + + class AssertionHandler { + AssertionInfo m_assertionInfo; + AssertionReaction m_reaction; + bool m_completed = false; + IResultCapture& m_resultCapture; + + public: + AssertionHandler + ( StringRef const& macroName, + SourceLineInfo const& lineInfo, + StringRef capturedExpression, + ResultDisposition::Flags resultDisposition ); + ~AssertionHandler() { + if ( !m_completed ) { + m_resultCapture.handleIncomplete( m_assertionInfo ); + } + } + + + template + void handleExpr( ExprLhs const& expr ) { + handleExpr( expr.makeUnaryExpr() ); + } + void handleExpr( ITransientExpression const& expr ); + + void handleMessage(ResultWas::OfType resultType, StringRef const& message); + + void handleExceptionThrownAsExpected(); + void handleUnexpectedExceptionNotThrown(); + void handleExceptionNotThrownAsExpected(); + void handleThrowingCallSkipped(); + void handleUnexpectedInflightException(); + + void complete(); + void setCompleted(); + + // query + auto allowThrows() const -> bool; + }; + + void handleExceptionMatchExpr( AssertionHandler& handler, std::string const& str, StringRef const& matcherString ); + +} // namespace Catch + +#endif // CATCH_ASSERTION_HANDLER_HPP_INCLUDED + +// We need this suppression to leak, because it took until GCC 9 +// for the front end to handle local suppression via _Pragma properly +#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && __GNUC__ < 9 + #pragma GCC diagnostic ignored "-Wparentheses" +#endif + +#if !defined(CATCH_CONFIG_DISABLE) + +#if !defined(CATCH_CONFIG_DISABLE_STRINGIFICATION) + #define CATCH_INTERNAL_STRINGIFY(...) #__VA_ARGS__ +#else + #define CATCH_INTERNAL_STRINGIFY(...) "Disabled by CATCH_CONFIG_DISABLE_STRINGIFICATION" +#endif + +#if defined(CATCH_CONFIG_FAST_COMPILE) || defined(CATCH_CONFIG_DISABLE_EXCEPTIONS) + +/////////////////////////////////////////////////////////////////////////////// +// Another way to speed-up compilation is to omit local try-catch for REQUIRE* +// macros. +#define INTERNAL_CATCH_TRY +#define INTERNAL_CATCH_CATCH( capturer ) + +#else // CATCH_CONFIG_FAST_COMPILE + +#define INTERNAL_CATCH_TRY try +#define INTERNAL_CATCH_CATCH( handler ) catch(...) { handler.handleUnexpectedInflightException(); } + +#endif + +#define INTERNAL_CATCH_REACT( handler ) handler.complete(); + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_TEST( macroName, resultDisposition, ... ) \ + do { \ + /* The expression should not be evaluated, but warnings should hopefully be checked */ \ + CATCH_INTERNAL_IGNORE_BUT_WARN(__VA_ARGS__); \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition ); \ + INTERNAL_CATCH_TRY { \ + CATCH_INTERNAL_START_WARNINGS_SUPPRESSION \ + CATCH_INTERNAL_SUPPRESS_PARENTHESES_WARNINGS \ + catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \ + CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION \ + } INTERNAL_CATCH_CATCH( catchAssertionHandler ) \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( (void)0, (false) && static_cast( !!(__VA_ARGS__) ) ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_IF( macroName, resultDisposition, ... ) \ + INTERNAL_CATCH_TEST( macroName, resultDisposition, __VA_ARGS__ ); \ + if( Catch::getResultCapture().lastAssertionPassed() ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_ELSE( macroName, resultDisposition, ... ) \ + INTERNAL_CATCH_TEST( macroName, resultDisposition, __VA_ARGS__ ); \ + if( !Catch::getResultCapture().lastAssertionPassed() ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_NO_THROW( macroName, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition ); \ + try { \ + static_cast(__VA_ARGS__); \ + catchAssertionHandler.handleExceptionNotThrownAsExpected(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleUnexpectedInflightException(); \ + } \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_THROWS( macroName, resultDisposition, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__), resultDisposition); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast(__VA_ARGS__); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleExceptionThrownAsExpected(); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +/////////////////////////////////////////////////////////////////////////////// +#define INTERNAL_CATCH_THROWS_AS( macroName, exceptionType, resultDisposition, expr ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(expr) ", " CATCH_INTERNAL_STRINGIFY(exceptionType), resultDisposition ); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast(expr); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( exceptionType const& ) { \ + catchAssertionHandler.handleExceptionThrownAsExpected(); \ + } \ + catch( ... ) { \ + catchAssertionHandler.handleUnexpectedInflightException(); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + + + +/////////////////////////////////////////////////////////////////////////////// +// Although this is matcher-based, it can be used with just a string +#define INTERNAL_CATCH_THROWS_STR_MATCHES( macroName, resultDisposition, matcher, ... ) \ + do { \ + Catch::AssertionHandler catchAssertionHandler( macroName##_catch_sr, CATCH_INTERNAL_LINEINFO, CATCH_INTERNAL_STRINGIFY(__VA_ARGS__) ", " CATCH_INTERNAL_STRINGIFY(matcher), resultDisposition ); \ + if( catchAssertionHandler.allowThrows() ) \ + try { \ + static_cast(__VA_ARGS__); \ + catchAssertionHandler.handleUnexpectedExceptionNotThrown(); \ + } \ + catch( ... ) { \ + Catch::handleExceptionMatchExpr( catchAssertionHandler, matcher, #matcher##_catch_sr ); \ + } \ + else \ + catchAssertionHandler.handleThrowingCallSkipped(); \ + INTERNAL_CATCH_REACT( catchAssertionHandler ) \ + } while( false ) + +#endif // CATCH_CONFIG_DISABLE + +#endif // CATCH_TEST_MACRO_IMPL_HPP_INCLUDED + + +#ifndef CATCH_PREPROCESSOR_HPP_INCLUDED +#define CATCH_PREPROCESSOR_HPP_INCLUDED + + +#if defined(__GNUC__) +// We need to silence "empty __VA_ARGS__ warning", and using just _Pragma does not work +#pragma GCC system_header +#endif + + +#define CATCH_RECURSION_LEVEL0(...) __VA_ARGS__ +#define CATCH_RECURSION_LEVEL1(...) CATCH_RECURSION_LEVEL0(CATCH_RECURSION_LEVEL0(CATCH_RECURSION_LEVEL0(__VA_ARGS__))) +#define CATCH_RECURSION_LEVEL2(...) CATCH_RECURSION_LEVEL1(CATCH_RECURSION_LEVEL1(CATCH_RECURSION_LEVEL1(__VA_ARGS__))) +#define CATCH_RECURSION_LEVEL3(...) CATCH_RECURSION_LEVEL2(CATCH_RECURSION_LEVEL2(CATCH_RECURSION_LEVEL2(__VA_ARGS__))) +#define CATCH_RECURSION_LEVEL4(...) CATCH_RECURSION_LEVEL3(CATCH_RECURSION_LEVEL3(CATCH_RECURSION_LEVEL3(__VA_ARGS__))) +#define CATCH_RECURSION_LEVEL5(...) CATCH_RECURSION_LEVEL4(CATCH_RECURSION_LEVEL4(CATCH_RECURSION_LEVEL4(__VA_ARGS__))) + +#ifdef CATCH_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR +#define INTERNAL_CATCH_EXPAND_VARGS(...) __VA_ARGS__ +// MSVC needs more evaluations +#define CATCH_RECURSION_LEVEL6(...) CATCH_RECURSION_LEVEL5(CATCH_RECURSION_LEVEL5(CATCH_RECURSION_LEVEL5(__VA_ARGS__))) +#define CATCH_RECURSE(...) CATCH_RECURSION_LEVEL6(CATCH_RECURSION_LEVEL6(__VA_ARGS__)) +#else +#define CATCH_RECURSE(...) CATCH_RECURSION_LEVEL5(__VA_ARGS__) +#endif + +#define CATCH_REC_END(...) +#define CATCH_REC_OUT + +#define CATCH_EMPTY() +#define CATCH_DEFER(id) id CATCH_EMPTY() + +#define CATCH_REC_GET_END2() 0, CATCH_REC_END +#define CATCH_REC_GET_END1(...) CATCH_REC_GET_END2 +#define CATCH_REC_GET_END(...) CATCH_REC_GET_END1 +#define CATCH_REC_NEXT0(test, next, ...) next CATCH_REC_OUT +#define CATCH_REC_NEXT1(test, next) CATCH_DEFER ( CATCH_REC_NEXT0 ) ( test, next, 0) +#define CATCH_REC_NEXT(test, next) CATCH_REC_NEXT1(CATCH_REC_GET_END test, next) + +#define CATCH_REC_LIST0(f, x, peek, ...) , f(x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST1) ) ( f, peek, __VA_ARGS__ ) +#define CATCH_REC_LIST1(f, x, peek, ...) , f(x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST0) ) ( f, peek, __VA_ARGS__ ) +#define CATCH_REC_LIST2(f, x, peek, ...) f(x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST1) ) ( f, peek, __VA_ARGS__ ) + +#define CATCH_REC_LIST0_UD(f, userdata, x, peek, ...) , f(userdata, x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST1_UD) ) ( f, userdata, peek, __VA_ARGS__ ) +#define CATCH_REC_LIST1_UD(f, userdata, x, peek, ...) , f(userdata, x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST0_UD) ) ( f, userdata, peek, __VA_ARGS__ ) +#define CATCH_REC_LIST2_UD(f, userdata, x, peek, ...) f(userdata, x) CATCH_DEFER ( CATCH_REC_NEXT(peek, CATCH_REC_LIST1_UD) ) ( f, userdata, peek, __VA_ARGS__ ) + +// Applies the function macro `f` to each of the remaining parameters, inserts commas between the results, +// and passes userdata as the first parameter to each invocation, +// e.g. CATCH_REC_LIST_UD(f, x, a, b, c) evaluates to f(x, a), f(x, b), f(x, c) +#define CATCH_REC_LIST_UD(f, userdata, ...) CATCH_RECURSE(CATCH_REC_LIST2_UD(f, userdata, __VA_ARGS__, ()()(), ()()(), ()()(), 0)) + +#define CATCH_REC_LIST(f, ...) CATCH_RECURSE(CATCH_REC_LIST2(f, __VA_ARGS__, ()()(), ()()(), ()()(), 0)) + +#define INTERNAL_CATCH_EXPAND1(param) INTERNAL_CATCH_EXPAND2(param) +#define INTERNAL_CATCH_EXPAND2(...) INTERNAL_CATCH_NO## __VA_ARGS__ +#define INTERNAL_CATCH_DEF(...) INTERNAL_CATCH_DEF __VA_ARGS__ +#define INTERNAL_CATCH_NOINTERNAL_CATCH_DEF +#define INTERNAL_CATCH_STRINGIZE(...) INTERNAL_CATCH_STRINGIZE2(__VA_ARGS__) +#ifndef CATCH_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR +#define INTERNAL_CATCH_STRINGIZE2(...) #__VA_ARGS__ +#define INTERNAL_CATCH_STRINGIZE_WITHOUT_PARENS(param) INTERNAL_CATCH_STRINGIZE(INTERNAL_CATCH_REMOVE_PARENS(param)) +#else +// MSVC is adding extra space and needs another indirection to expand INTERNAL_CATCH_NOINTERNAL_CATCH_DEF +#define INTERNAL_CATCH_STRINGIZE2(...) INTERNAL_CATCH_STRINGIZE3(__VA_ARGS__) +#define INTERNAL_CATCH_STRINGIZE3(...) #__VA_ARGS__ +#define INTERNAL_CATCH_STRINGIZE_WITHOUT_PARENS(param) (INTERNAL_CATCH_STRINGIZE(INTERNAL_CATCH_REMOVE_PARENS(param)) + 1) +#endif + +#define INTERNAL_CATCH_MAKE_NAMESPACE2(...) ns_##__VA_ARGS__ +#define INTERNAL_CATCH_MAKE_NAMESPACE(name) INTERNAL_CATCH_MAKE_NAMESPACE2(name) + +#define INTERNAL_CATCH_REMOVE_PARENS(...) INTERNAL_CATCH_EXPAND1(INTERNAL_CATCH_DEF __VA_ARGS__) + +#ifndef CATCH_CONFIG_TRADITIONAL_MSVC_PREPROCESSOR +#define INTERNAL_CATCH_MAKE_TYPE_LIST2(...) decltype(get_wrapper()) +#define INTERNAL_CATCH_MAKE_TYPE_LIST(...) INTERNAL_CATCH_MAKE_TYPE_LIST2(INTERNAL_CATCH_REMOVE_PARENS(__VA_ARGS__)) +#else +#define INTERNAL_CATCH_MAKE_TYPE_LIST2(...) INTERNAL_CATCH_EXPAND_VARGS(decltype(get_wrapper())) +#define INTERNAL_CATCH_MAKE_TYPE_LIST(...) INTERNAL_CATCH_EXPAND_VARGS(INTERNAL_CATCH_MAKE_TYPE_LIST2(INTERNAL_CATCH_REMOVE_PARENS(__VA_ARGS__))) +#endif + +#define INTERNAL_CATCH_MAKE_TYPE_LISTS_FROM_TYPES(...)\ + CATCH_REC_LIST(INTERNAL_CATCH_MAKE_TYPE_LIST,__VA_ARGS__) + +#define INTERNAL_CATCH_REMOVE_PARENS_1_ARG(_0) INTERNAL_CATCH_REMOVE_PARENS(_0) +#define INTERNAL_CATCH_REMOVE_PARENS_2_ARG(_0, _1) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_1_ARG(_1) +#define INTERNAL_CATCH_REMOVE_PARENS_3_ARG(_0, _1, _2) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_2_ARG(_1, _2) +#define INTERNAL_CATCH_REMOVE_PARENS_4_ARG(_0, _1, _2, _3) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_3_ARG(_1, _2, _3) +#define INTERNAL_CATCH_REMOVE_PARENS_5_ARG(_0, _1, _2, _3, _4) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_4_ARG(_1, _2, _3, _4) +#define INTERNAL_CATCH_REMOVE_PARENS_6_ARG(_0, _1, _2, _3, _4, _5) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_5_ARG(_1, _2, _3, _4, _5) +#define INTERNAL_CATCH_REMOVE_PARENS_7_ARG(_0, _1, _2, _3, _4, _5, _6) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_6_ARG(_1, _2, _3, _4, _5, _6) +#define INTERNAL_CATCH_REMOVE_PARENS_8_ARG(_0, _1, _2, _3, _4, _5, _6, _7) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_7_ARG(_1, _2, _3, _4, _5, _6, _7) +#define INTERNAL_CATCH_REMOVE_PARENS_9_ARG(_0, _1, _2, _3, _4, _5, _6, _7, _8) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_8_ARG(_1, _2, _3, _4, _5, _6, _7, _8) +#define INTERNAL_CATCH_REMOVE_PARENS_10_ARG(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_9_ARG(_1, _2, _3, _4, _5, _6, _7, _8, _9) +#define INTERNAL_CATCH_REMOVE_PARENS_11_ARG(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10) INTERNAL_CATCH_REMOVE_PARENS(_0), INTERNAL_CATCH_REMOVE_PARENS_10_ARG(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10) + +#define INTERNAL_CATCH_VA_NARGS_IMPL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, N, ...) N + +#define INTERNAL_CATCH_TYPE_GEN\ + template struct TypeList {};\ + template\ + constexpr auto get_wrapper() noexcept -> TypeList { return {}; }\ + template class...> struct TemplateTypeList{};\ + template class...Cs>\ + constexpr auto get_wrapper() noexcept -> TemplateTypeList { return {}; }\ + template\ + struct append;\ + template\ + struct rewrap;\ + template class, typename...>\ + struct create;\ + template class, typename>\ + struct convert;\ + \ + template \ + struct append { using type = T; };\ + template< template class L1, typename...E1, template class L2, typename...E2, typename...Rest>\ + struct append, L2, Rest...> { using type = typename append, Rest...>::type; };\ + template< template class L1, typename...E1, typename...Rest>\ + struct append, TypeList, Rest...> { using type = L1; };\ + \ + template< template class Container, template class List, typename...elems>\ + struct rewrap, List> { using type = TypeList>; };\ + template< template class Container, template class List, class...Elems, typename...Elements>\ + struct rewrap, List, Elements...> { using type = typename append>, typename rewrap, Elements...>::type>::type; };\ + \ + template

    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%0Dt zX~d48`?Kvic{C?ir+JN-q!$auc9FbYEMoIIwTQg|rY&Z~9yORqnh~3O-E5mX3L`dm zzeVf-GCNG?wd&^@ctd0cERr6_W$E=l4Hb< zpmcgiLf>;p{2Ju{dMusau`de1k47e;OjH6S((xBj#bP#M`wZ|CBV8Tv>w?$(6nD%>;Rl&&n*oz}!0}TC)}I zYC~&KE5Talvz>2?z)mk&eKgRTtovvTju0XYo2HBd-ow%~R>= zNR|vNdE2RLc?zY^^{HFb_~D2}p#LKDJ@}32xsHLq4C06%VMOeV5pZ((G-7juP?-CN zY@6G~A~sJW3G+=f+B2Q>w=Dh+-$M%^%uP_XpdvQEI1cmWuPx4q&AmclUI}E|^+(bq z!L~0E_Z4DtBM-PRBQ`Hq37-VKSe&*!do-COM{M4M5#|Lewmsn@LP#jKhr?})8L@f2 zM7RSWc+)c$&I&<4BWUs-~PzfL!+~W`?2HAnS5wW?SCd|DWw(uf0x7&od*U7f;5(Kwzg}F7z79OhV61q7P zjoAG35w#nXh|N#p!~Dj+*sa1{W`l4Y2oakHNQHUakZqG1vH1n1Z9j>*TEyn(x3*9s zHaE)KcE??$-?EZ!QqZiH(OpmI{CEeWKPcC#>rdkDp0l!LhU9^D&wr0 zIc&HED)yiK5Sba?hTVv&J)pg-z_s4kk4*rY5-!{g&3G!N)}a$VTKtV79AiRv0K62@@P7H z8xq3ISlKtgDa@Imo(KCWW#5irv^?qe9e6e*2}!#%Hmc2fUlP9BS{{fUJdbj363Kn~7@ zgct0Y1Lo|&_Yr7zwWqX?p>#2uZLX$#GQ=>3!PzBkzyk~LN!D7ddkuK{0qkyoYv$yY z=%9|kHEY&2Qz{x_^8nl@XFjVA;W_f|8xbx1vbBY6`a9IMNJ2lC-rJ{Nz87b4T)r7O zGf%S9Tr@s^7Bu_bu|~VH8}JS9dM%RbOKyUszdb3bRsjlelgg7lS&PORtv1cZ_ilhZ z>I!D~g71M^?fRNHU*-)IB(OO=iK~l?o9N@p_u);if3DZ*XKy8Kv<)7(lcmEPlr*7C z{I#^dU(!pf#NR~wdl)%9&8xZ_PHjJ&%Mec0gx~N|UTUZUf4>F}7CcsJWp+e!Tuo4~4FeB#%Ok^%|g`4=oODX)diQGpj{6l8) znX&03YwJjl&1b%*k1W&PVfoC~^ierl^&lgsIVx4mRXxU69et;?6dq+FxiJZ${?w4_B%K)2dnLo0d633Q0Kay7NIE!1aY5cWb7*9 zVabe78INET@5 z(<5$IkF4EjJv`3MeAm?@bU8&KhbOlsyHPLo^JhGf|3fvNT1VI0LAn}G?V!E=bTyuq z>*mrquV01=c0+0w3e;S5sZq$2FRy}La}kUTc2{%JwtDkOO}j8yQ;xjs$$%g4jgOgN z|Aaw+zjzV91Zu9MQu^_2P2R!ZqVKQpl5Y0(ldpkZ@qvhNtftbGrajD3-!lUjQOpMJ%J(?{ahE)6%PI?`|K(^WE z?cx8g=SMCaKrYgwc2CHpCX#Mg9}v_=dq}kx_2v7#X7OjmT(g`D7o6= z)nXB}{qF3UJ{^yzxYakSK;P+PyL@>ISa;7dc0<|$2e zUVgl(&MT!G+nqL{>JjSgf-ZP`7p5F{R@ZEv(YM&s6mP8a^5czlUMby18TV2@;%Va6 zS5K3$b9jp1536;?#LK1Npc_jzMZd25ADrmA-b8srupT3tsLs0O4wG>`y{SL$yJJK@ zBZp@Ju5*JsQ-_KQdLe@ImHUVLAp_Bp4+iBRW~ts~;|yb>E8W7E<`S^P2v;Xo=X(KG zKz3O0H`0C`BltUL{~&37p`9vgxHN};4S8{lxyUeb_z6+D8%BvA#tDR>$AYI-!I!!f z!avbSd0I7^0TFf_?RZGx{P9{SJ`{EQz)f9zC^}SiC_3a1MMb>yY#0P`+$hxcqc8zf z=>(Qalre$hCtSCK8g{X1KK2m_(!EXhl%8V}zV%A-+a=FRyaPQEe+XKBYDM;kr?pGA z3IDi2J;GsPr&~&VVyFFXyWFapXnzl*9gkX^-b(hiC9XQ*0etWm`Cb+yDB@@LR;%1MlSL8^2T zqi)0{p<Nh&JFux%`kwdSHI};{D|8U6da`o5o_0Ivdk{(WDpy%=&`G^stfF2D78STEPz@*+4 zkJpK(AnrHihPncbb?srsz#DQ5<1IjfhXA{23^br4l2P@*OXxJ3|ITOH0_mwfM@7kg zvl-p0VRyrrt%iRJ%7G|f4HyHTgr*#5>Emf)Pji|k5(`{SbpL~<9G;YUzMGIiem=ZJ zy_`!h4StGF8HhW3vnzKX?xNgzggX#-RdNb8@>~zZ-Bgx05a&FIK18{}p63T!__5c` z>`}R1HzM849@RkmwQk&~+D`km?$DbmLw7UfMiFnEEr+I8@79W2`uh1riWF~G-M*!J z!G*bU1RlE=+vcKB4!?Z4!Ih3zzDFSa4`R zX!3O>%0s#MJ8o)Qt@r~}=}O72)Rj&^8wo7Bb7s=3vrtMKRT0lU4J=wX z^Lhne=~AGjPYo=ZJJXPA8GTGuW3^<(ZT5R7NNrI`Y^JQ*&32-YqFXhA53@Cr;D16( zAgi10n+X4t9=~6+9c$s=<|(*;rjf%7>^HjcZ?B_|Oy^m)eod5wGz3K_L|4quR9=;e z`I)Ni4$gBFuCH(E4h`u3Z2Q}5@x06PbnkKlijSmsNI(N7$!euMBqmj~V(6?9Is6!5 zj4RXBkKAFfbtLwyqAHQtuNv`_WE3R$nB?qNWqOh`$S54O&MN$1bTP)D~QU z+m4Um+io{3uv%lOLy~sy4m4IdRkZ{0*FLL^Z($$Dzl6w={V z$U|i4RuY*a-a9w~f-P=?D*WQL|2I&j(vV%LYy4ko{}P}ZvXA`#t@gM33d34$H~#TL z&-(%q@n+V~sp@ELKP=XXY@sbQk(~LX4C67E9B(;1zPW1483T&Wg#W{qqlXD;IWM#2 z@EqwiZa}Gi_d{{mc!6xy2r~be}Lx&JR9(bp;CToMeIwr8`Gun z)bU1z=ZWIds>wcOOhZ~nMZ&nZLvEJN=9k zkK!hh&CuJEDm&t!ioBzEt>y-ptPEez4|?yG>dChFu?Wvqie-PKXU*RdJYToHqgR{J-i zy9Z^Ii;LHj_d%5mY9P%M;qh>TFF`d=z>x5AE7y|(c#NJDduuOVr+tI{$F9Mf!FOBFi@wKXB;%nZR=&rI1GFnYRN3$Lp%+nI~ zD5#Z7-e|Q5*u9|sus{bM&xAuBw%==vD>AI*M11fI>TVZX$B%F1TUW2QI5DsfhQtC; zyWoHN_Z7*YVQ zfG!woL6KlOP^$WM%D5HwGW<&@P%;^YG4N`{=V7?s!Tq|)67d9fjqS{_?B^FsL8t7Osgr?I01-usiB@{0ChQ@IiM&TSZ$LK)ObA~J94cH&yUqa!MwKN`rfv#vUM$xjo1yK2&+wt&(a-@D5 zZc9j(D-4RdpxQWb5>|@(|SPr-n zZ=Sv}(8ZPexcR{SPb(Yq1Laj#Hf|2I_E$DO7>{EFARBfy_VYD9;f2f!B(sYJz`hIW zQ}Z+?63rs^H}DLnr&M<))LCOF_qk#J2mU1#FKI!eGYq5f*cdzq!DZeCLsW85 zk9Q`mDV1=(GPc5Q>c;sjKYcqu%@ui$sxkC+Z-8Qc0z;H>RIQ|p@VjorPLH3k&)-#6 z!&epsHCN=RY%_-W98k<+7^18QF*8~dm2n3yy@CD3OGM2zz=_>2tE4v%iT#=`;10hU^Krvr{A;AHu(c5+#qrFbZ$Q81yY%=1CZ$fMZZRHXSH1ekW$GKVz>2{v|{kg^eIr z46j)N!5;$K3LQMkauRu;I-i(vTitP~8fzubcf5bPQFmk@1CeG*32 z(%3EVm}_8&DEs_MqJ;l-1W(JbpTxg}Xrt(iH}TakTufEb--!#lEKS%*MwyliTB*tvleoHo{F$Y|};D*wh#*o}8ln!>*pM z!*(lM_4;mQ(?M5n%b>AnH|Q}}-#2bH=#Y!tkjElq?%aD8Vca`QLm((WwW8p7rBq98 zlw_yY@oM9sS7vGKVr>~xV(ISV*8gD@Dde8V5(H&*gdy#dH6q?VTQeSo*g-i8_H;MI zMsA4M0|RO<<=M6bTjxq;ECivIi;XX!+*KJ{$jzAdfnw~3;Rjr>0=reicIsp_se&o* z(JfV^;Nq(>aM~?o(_U+8I)*)Kzrk(?27iAAw5?X;|AshGHCLN*9~Q^;GjsV3Q()0= z*W~UN2cF*x-y4V17=boRVMrXk5b41#@)+lR*omEoY~iWvLwPtn>h1;xA) zhUnmMXS62j)m_S10sF$!bgTz8SHz%WY7giL&4_IU(R>AlsNvXDsT?TLWhhqrV3(by z?-x*WMIQPpPGT>4BRtP^rz02%g)hb)$RrRv)iZN15XYS}bH|Be;mq92#DT)SRvfctBI4Ze z8>WU<+u=(60~2UBfK06)0n`9hdcE&}V~uUa?WAR(c5|^AKDO7X*h20tJr7j#Mi`PI zR3kMukP)x3fsA;K4P>}AmfG&a;dl?geuvLN_)XRp;`JJ+xuP2L_!01!i$>*66njwa zRbuxurpmWC0qaBhzknf8;Ab&LPb#Q>7LKy~(=d3@4uARDg8EcYb483vUidOTH36l8 z+i;S6Tp6g6JygobuH|qb;NVJpoA%DDX-EbXOf9W>wThBh^I+9;#Y=z9j< z)$#VXq;%EMNX9(moNAaIndd1dGl;86n|?;$6csZYpwn)?tq9_i=UCY6ewnI1xd6U~ zgqXM$c1javFmD#%Z(dp9v#wU=P56HF9uQbbg{7`1e~O4+tIS4?(SUY>f=MSI-^zgQCp=*A-jAAgB zs_6Vg*k6MAQ&m7L0Uz+1%am2Wog0OyiD?P`5`{`}kG*RGxk|-uLlH~jS^(9~L*n*1 z#$}7LCgQz*%f?VJ5WFGeGr~9~Pl3NpS@n`&PXT>~$5VvkTDdS7&nat3x-y<+8t(w$ zZV%-0UsTrZQDv|Os3*XChJ4Abk`Bp`->t0SC%{whfN{_lP7vlB$|^&asvkiA)8pyd zq^0*M>ria~RB8Zi6n~xBFG>PL#eQY&Mm15*!0cQFpjfF49niaQh$RUKx@^-lrj|WHV*Ve2lnGiRD?n#$?gcF z|3#?bS>_q0^9TB*96DIJ#lb=r2Wx{kSZd;68F!()Vd~a#ooU^c<5r++5UTPGqsX}o zu%2dv^je_n`gWsfU5c;Tq`ut?_$Eg5Rc3U_iMQdr+q9BUuaw#e#w%p*C-WR(-e+2$ zppmMNK|kv8)F%WKoe$IOW9Bl2$|hIKJZ@SiN+6RK!m1PgqEFG~3i5_K^Gq|BQBnyK z&U2iYhFa0fJsnhtCY2A$J zu~PSe`>2oji3qLYC(~M(0K{%E-}3?4wY;!3>bPmGL?Np0fH>i!7?6%(LrKhEII9;e zJS~i^68P)%Gb{nAOL7saMj8R@%2H*t2kPv9K(3JzTAt^|{c-S~it`itfPWHc zL$@etdk4IOasJCpjUBW)q5g>e|AO~NoF8KRQi9gs=rx6(o`5b4e>eQ-PB?ReR&$Jk zFSSGbnuFIS&c~rehFK7_UPgy5HDmyI=g0ZgyF$KJ(AtU7Px#ZoyUOP$Z(NA_{Y9vI z5o*${ATJ|}#V&o1q4__Bda)yT2)rFt_)6+y5zomsyP2h9FeOp3;T(_$2CccMPK2v3 zVI1@1j3VC2X?8c;OpT*23|ensB0!MJh+txhzncL^(2JWF1+Di{`9xbOcx}nol~edr zg4Pg>jv{{!c!PcUgdvR0oS?P6I#Mth^s7Bt9eE9y7qoD#u%Q-%dAAQZQNh+$Cm$L% z1g!-e5+4I|n+GrwK4$Em2wEEoz)DzB`~c>kK0s^l%nEieXpQ5D zk>X&ojlWJ?URPAE(CE-%OgyArHU_KQW9t!23Lr+HnH92<(a#F%A#&p#k%-$Zr zNLbJoyrUs&SWECmf>c{eZ2#6P}qGW(# z#NA+9hOKev-xbdx`o1bu28K$|im=rhU7QLfV(lFNN}1qml?c14uMS(sF*#GE!1k?* z_f@<2o32G+^irYz$O$zX*hxNK4P%}(<)eT_Y>;a5~b^-9_s?bv#dYSWtp9T=v@V6B!4{+LA)KxLFncP@FrB{ zCw%`X__YuPw(Hqo-c|+RHrzd^$>s>lYL2<8xdDi0eU#K)-!Kw>V!i&4Wer9TV!i{| z$5o(4!Uq_f%=wnJjn(=WFb&LQb$LsU~8~Rg|9^Fi_DNTYK>(b<0ITKASP8s$?T|T`eAVUn>G8^gwEKJ&*7V9n&G3k z-0Eyl?t{#u_}96<1S=G9obh{4L_x<`oC&{u1)0f~-G;IU0Qu6x(^DBQ86`sg9KSR^ z$IoTkY0u~Q=5Pd}+8 z*ta{+ioMkNK~&5LvF~**6?=oTMC?t@Q(`~pd@T0E&YxmG>g2Yh{9{fhu^)FX5POSr zh1gr2+r)mtc~I;poma%(=G@VWa!)y%#eUj(L+tI&F|nU<5?ho1tkYWT9nJu;pLeE< zz0+AN_KVJ=V!z~kEcPzPXhXS|odU6UJ1xb2#Tg{_tIm~Tzve6x`*r7OvEOjs7JHBL zy=%wXQqP-CL)Si2?6;gtTzj6_dz}rgy<6;k&X=z3U{;e8byQ{}aYR*SFL5NQ%&FqY zRWYU|Ct6*_nAtheLKR~!=R}KDjMyS}MR3>XMc6LcJn@Qj%)(=E+lhUhi{S|wQ@}VY zaT6-2F^HVR{>js@l<+2`4&ra#2dzrj)!!Ko_Bqj;6<&6O^2g(%vtC^T{tEE!^ZDB-pT~!x#OYS-Jj?@`#OJ_&&BsU> z8grHP@e3~I2>9Ro7}1mb(vQ${tyTAK=m;X@B>W}q?h*or|HSL9Mhn0%2CtFFR}9v; zY(XL97bZVZZ0I?05AgdCBRO-93dnV5U4UX11BuuZ} z8xmdZr>5eaA{dH999WL2S(2&pmqSU5Xk)C?tpzicr}L^<>u6C1X4+q)kYa5cz79x` zPuj6|4LMEEykG<9Whry;fVB%kNAdpwfAavCM&|yd;C9aYpugtY&=kX8bETW4lEFiV zPL~9thHPfYozK!CulTo+ccYLH@{Q=R%Yhq(|Hah(QRR>yDbw8Rz?tiFPY)Sst^;;( zz*SJ%ry*kzys`k+5iqsJlE%?hpuD*4*z zG5ETtPDa`d38V+eM(VnUG`1!xWE`6fUuA4Z!IpA$4SM@l!FD|b+eWZ&+y-pQnUQJW zo=Z>4ne~6fgOHj4f|=c((XgrL@;|Nyvu`PZ%DCWf#4@#MV$1Zm;Y}-2(f?%Oy)d82 z)9NdWmpDk%X#)kSoLaJO?G9eCD$HyOjbxUMo@}HwQkL_ruA4`xnOH4QHh!9s)=XI= z5GfXMLbWPvCz1z!ZIx9q3Ts8sSwem{ii^R;AH!+a4WORND(HgA87MtHkl}QG53K&m zdLSP;3bBbEOBQZ*9Go>102;2W#WMzHy zz6O2dgJhYC8Dcm$GmoxR*2XV%{{2SK*$B?adS(|`wNxRKYLo6fMaoPphyI5377%Ko z1l(xfz74F|%IX9?%)72+QIA%3;pj^*GSY5T7JC!XRr4kY%*WbmNE0S|0!Bsz&6Z_m zwB+-LO1n)($K-fry+T>d2V!p`;e)9ELW!)D_3f%~P;*3yZ`)({4s{v9D`63}j0FI9z{*V&}&vOcP;ap+t~NI?nctaGHSvC2I5KRWN4kVQROnJ(*} zl=ad=E$T>F|EjFb==P}V0#87fHOtHhq&IRdLB|(JZ|qzyb`xi|*iD^V#cuA@??8U3 z(^BjfPG_-OI(@}%?Yt(qHqHUD+d7BEZs&Y2cA2wQa2=faVs~_w3%!$bpV*z9$Hea9 z>=3(~GgxrloiSqfaHfjg)0ruDFXvCeo#|NO@9m_C-N&gRc0cDKvCneupq)|bJS}z$ zM|GsXrIQCcc<>kW*eCPeZVh+e+UTfzHDs?I$eiiCMO@}AC)kPh4bFJ6Z*t~~eY10~ z*bAKPV&CHI6Z=-@E3p?jX`Lyz#Az({Qm4DvcR3@)Ugpdcd%3e(?7N-k#a`_k7JIF8 zTVd06ZpGI_*wAoG{Zg1WSS&3s+x zzh!6hl?R;=Un+?|u&p2iSRjP~U9h3kr;1DhJz-P4ERe+B%lIwF_4RmX1mUuL7J zydpRZv}EY{$?0$%}Dq!dBaSr@wMRX1N|e9r)P5|B0SQx=HX#d zssDm|(nF{yRb0h+WzHxw@xUI8zo00UgHUVXFJWlZ@b8ZSHP*~sf+{;aAs3!;W;zD~ z!(If1Mj-cWrx?|jLn0$Wc@v6!NH;=?zdR`&b{%7R4 zi5SpR1Mg^fus`JT78LT>&${28iB7V8>esL$HQ;Y`0RFPnX0XJ+ZYBI3QdhyEKe&l{ zAFatK)xFvRuT$FPu)2|VHuY|)$z;~$d8kh3v=mq)sP{Q^vQC$@r(uads{;P6X=$+N zzxoEOKR6ZH%;c^kOcYA@#Job3)J(kMOE&vO#~0wC=onYz&d$0Y8ES-np{Kui>>je1 zH_%#&74qMpPCW>S7)EtjWI4}TfyIg_l;q)WQiJjhqxzFvO}fDPu(>iCgWtl#7}aZH zP2L=4J%YuP3Q*7SI3jJ#7)SOxoD_aqVYp%t*VU{^2+MGTk)Se477pHL` zORi3yIl(%Ng`YK$yN|MuGg+E5*}4_!ej3zW9!KpEw!AyN)+)z~!GmCZehOROe%@|9 zfgNn?dZ-q`raNNgj(8vfw=H z5K^wXg5HY)Cm9LNT424-)w^LJU*fS;2<2&vU|S0=P92ApKL-S*<^Zs;Drn?wD*(F7 z%D_t#wZ`M==8OwDL1?*zON;hg73JoNEV=q}p-S9~C^)=p+kRSEdrFn@9I(gmS1AnZ zBwR)oUxC{5mDC}d%q+g!v{$J_=D!wyMOlroBZA^h5I|g9(Q9PQK(n{+Qi-cOV$${{ zVr%0C`A+1@P#;ZM9iqcd-~L@$$NxsQgM1Z1)tDX5w!L6su`*O0uMfbw-DhR-an4?# z68YjZtF!@d4=S6*>%T9QFZN^ z-JO!1O$h0Qkc1M_Nk|Bx_uh-ro6-dZMa2q=id{e~C?a;Sixqpp`dVH)))y2DD%dNQ z?|II>GrIxxk8gj!nYs6#=bT&T&YhXF^DMx-FRFKiQe53+^dClojRu?_psA~J3`W9* zC^XA(20461C76RM z_`r3$^D%m^CyeyR7AnOR!k8eE=bTlanZ`t<&hjN{I*c5}E`O*EU-`O}WzFM5;1`|O zfM@&yY!_n-)zMl+-swG=y%*)rBJ*wNRp*H>OhMca)FW{uPyWyo*{o^SCD$VSrnB=a zQxLm=`Yb?Zy@L}q^p5lGm!{DJnfwKbg*vJ7E9p*WJESa60VJiq)Z`taku{v=KX(SB z1!nf=ap1%KQLzl<_Y;n${Ohml~~(-PjHt^9{0%);qtUmv=ztbLKo7 zg*4?%X4HtVsiHN>9FPj%+j)Y+3Hs^S6n-(=zvb67H^4a-;&u>q@Wtvx&*C&59pT)H zv-&vThd_LY4>9Fw-W<+f(b{B=V|V%7*-MS+A?ZE$!mAAU6M`LiFFLUqi|mGFvXc>+e+R1Ow6|;wd?KHRzBC4iUKW&DP-p7YcV%MMT7sC?|H80a6NIycQ zKX5j}3**I8&&_szsLZ_l|23l?)$P7onaM2wf0jl)9b9z`&2)-Qp&8xghoM9LHka_f zwK<wC^$3vgznS?(dWvtOSQ;+m z{7Sux`*Pomg#XP9Z{m&i<-F+HUA*;`SXFd@WqXu!HkL5vSlFG2E%Y=`6D1n!tZoa@ zkw`wl7n%PNc`a2ZI(Kjxb0K8weYu)u+Hk_Md*;biti`2^5SilKkJSZn=405sK!wj> z%VfxC!^?)2j5c%)vHRr7Y|(=2 zNPCX+6c(Y9T{R#*sKBb344GX18Ev?Hw7ciYW2jUv2JPdWQ*hxlX8^M}&=4b3Gg@## zXrJM%fzOH9IR~j15y+aTNsV)j;j)|3a@)aHVTUN!cVQf3nD2Oe3F}23d+0dVp7mRi zXymUt3orF&rte6_f6bBbC2Xtp_n<#9H5JZkJ_Hh*BU2XP+!<}peGQ_y`IB&iz$vZm zZ*L>MAiqt6j!*vq@kRNEz)w)*zidQ&asG4YT#0{oD&oiFN8v`txV(=j?9!1-TK7=o zCD-)AUL6aNTZBzr*t=tEgws0Mtl;q}*AjH;n-DDPeJ!+Pc9+Xz!jiW+#|nntiMTWN zhu#$>Fz_<8-@q0sV{QDQ_b%R}n|qM_gD*1cMXrb5b*P=0ghvAz*hIDI(Bnc<51uJb zsK^wY*#+SKROnAJL&4A+#T0+&am5-8y*F!2V+^3?GVE3c+6)ClZ;B}Bq4x|tNLVa$ z3wGP6z^a)H{man%0?SqNJz%~JG{gwif}yvg(iDqk1kD)5CN(iqxw^DhhYrIP(Cmcd zf!KnDqO35Ps^70mY2qu)RIV`X%R)b4QDDvnY;mHpDm&2${pxZ|r@dlA0Rx#g2OQ8@ zSTgYVHr6RT4$^Thsp}u+a>*ayTj27*%m0hWN!`Qv13V)FIuWMI@`t-%fOqSz2dp08 z%dzT`0jvl3B%E)F13U+>a1#f3LAi>{a;mUvM=q!0%amEexuSBD+Q&*T|I2+(Qe#8E zVK@o!4Y-MDo1`wz1z1{`%Te7kv4zG#XtWejcP9&o^+>(mm#F1b*85m^C-rhhqK)}h z_F;&h^dW|l_H$Bk%fw0PT}XCPI-RDoxS~oL?zyT$G?GKz%5J|i_k4*QHqmiG81Y2iV&jA%NYI&jM z)|rJ38ySlD-euA%Gh)p@a;f1`FGB9-)|uglsJ0H_Hg;xvq`Pz-iIBUwt(7|gVa45C zQtR?5uSM?Wk~*C;xtmKGlDc(*n)MobtfZ4fQmt$dm=`E2_)`gcM(nlf_EOIxO z^vk*r*QFWOimwnEknu1g^DJ^Vmkg3pFSaTVMP#r>C6lv1 zfaG$E+|4CZaz968lSS_4lBrUh%@(;o|FZ+2wwR;yPq=E(M!2UkuU7N8PG9WOFVBn=_Lu zn9Lm%he6RHn{z4HoW~%In<+aE4j;y6t{D;QovV-y!_F&jK?VHIv`3#Ilc@^rkl(o! z{LVD6fyuJd8BVA6^a3Ej@=OFhj6_kFlq}DsV0osDUPnqs6CDhXEYGDY6w5OKvH+C& zD1b930|2l*vt0C1Qbig}mgiEiJTuu@iRrTxEYBkm=}in9&ScDF6s^Lc?~vuW6fDma z(5*?e$^lqs+cKcQ^32klK@@i|F_0$6@>~j*XPUS(Fd?DD?4;w!@>~j*=R1I*9k5bBWSxfCqV1kl^)fTAjc-kumx zn&p{DdVR%hsb+bmoNi(Xa;NVA$iec=HsWk$%1*|v z?t0FTF>*bZ&Xn_EDp7Jiu*Hnnkt-ltAeqzGEM7VzMy}`5l_H}1S)zzs&!ywVAU)C& z4U+4*^dTt`ozxPv9CAIEg6o;3{W?%%Ore;DURaB%_-x^NE^{Pek?XlENl(rnwm>8* zk%&dE=Q2+su0^irvY13-R%RI@$r4Gmc07$pibOK3U!O-rU1V}Bay^%&ill{=u?dmp z5-GCC^<0(_<1JOGHK92onawz|YYg{C6f{Pz=h6?QGW5QaDi|?xJ(tdwmZ2|Ryk+Es zG-Bj>E?p#zN*}#=^Jw{oHIPpcefsVlsPB;LxfEQ_Y_&Q9q{k&B4XL}Gof{+9bLnFO zrQcsXFT?o~ZBPoXXWo-94rC0W12{aK?}z}`GjIOsC8)Fo5hK@g={r(LIu0fjQsj>L z0_5O&X4`R#>zW+JSa(?{jI9 znzHDpDCfN4koUP1ywA*$Zj15itEP6y`&` znE-k~DuA4Rs%YeWE(Py1%RtviDFfzx-W--{-e=0_E~#btC+~qw@jkN`=|QQAPP>K@ zE8b^jOUKH1wnqN;W1+2hpQ%lM%Xr1LSn)nnn{Jr#S{eCESYE~ZOl^8+Cgv?-#rsTc zI&CKA&4*8=iuak?^yN&n2A>o0`JFPN1}1r*OTqih2V?Stj5(Q2-+^)^)gJi z75XhB)w%9E#_TqXg{<>%p1FK9l#yypLb)$EO_O{-u6f1}6^vVHeCHA)7tCVkZxl*2qZ$h=rsnSvv^f(iU7-M)Gm8l$T|&8QmLEib&tHkx-t+MSkR~?-8!d<@p}D z@im02@_D*PM&lNuyguzX;&XmRxMTY13^$vFa6|fq3|l)9?v!x_! zJ7?U_^!>EcCH*Oeca2B5YsM=Kw~Zk@C{6PH5=;N`!7AU|(R}5XtMcr^L|48(UobmS z>53dx9vc;{$W>)1K;Xt6``fE1A-Bp-O-c>zR_z>a;=19kq$-7Fo z51G8HhN!k8lXuln6(*B+)p(^#Chw|AD!m=rxoUQ1SC)ZH-c@t51|qB&x2x-1vo~(B z$hcjtZlny0jN8@fM#{B1e~L&Cx!Xy#$hckIPa-*1VF4ojB~oOOal3keL`tn8G%!#i zH5M7Ss|QJ>(He%KUp-hNy(}_rR}YcMAgkazM25;e<0z|`kzo=UZIN-idW1yASY+I; z9wm{nR^2U#jFHGVi;UaV<0Nv3)dP2~)srQ1s71!@>M0T#Z;^4kdb&g=Sm!Y^Qz8>B zGHzENE|EzV8MmuvOJuS|#_j5b5}9I=al3kvM5Y=sGHzF&n8GW43pAumL9)m<=HI&+ zqEoU;k!-tk@2VxL2cmMHY#IfJ|A=|=>Xd3E6_9Yd{U*5@6_9Yd{WWrlE|^WsjS6!O zF}EuW3AfwdA(-=oaJxMSw|Ry~{`(0QLPg08+wP69eZJY-t?e5AARC{9LeyG>>eO~i zl38`g(X$sBwcRBW!OQ|oZ4YZRV7*go`-acO{R=(Jluo}Cj#xwK^p}WhM9u@Ic7XN1 z(itAU6t;X>1EjajdDLMV+#R*epD3KE-*ky<-j7F2YHQ~eXWfvNMP z&FCDbQ(tE45z?-7l~bwC8Gj(PKAgha=k&fv=CdNTlck;P`T>uxG0d8OoKZV2oWi!I zcbys&(%R0W81l6zhGe|Z<4&9ZU>=eW4L4&`(*e(9JIl^+%%>r{A}r;kQ=X{k>*;QG z*9~gbPDed;!42*k4QDH^p|w{jWqR-(2&n6t20)K+GTr**pATYL?W8`d%@Q{3QK4jd z{7GGm!B$r!J*~!D-6=OA@~oLm4?vTb6ny*qa3mco4c>vNQX+=XT|5b5?koWAlvbvr zU>u+_h*g9jzem=cbRaxX?ks)>@>EqXdKL=6a9Wfhd9!K{IvT1KxGW^pqVL1U0Jui! z@kL(zrp$2OXD3Vwx8z!gFZUAO)5SiCmTY3uY{1{56tEb7l z&|D8A=}m#s@l&Nb$+%qA{j6pT`hn_Xemkn}SCve+P;KMxW03r=*r1cB25&tNsh_B! zPM=YoTyYMP-%~a+2kK;#A=I30;j}m(h8r#a-esxs1jRg%@zqGqG31_7{B0p1M& z451QHRMsK+QQci3IZ^5Hsx9BmM)_1V3LRio^5CPe9I5+CPYWYnLc|Ft(;-%hX2i}p z4M}UIh3OuvQ~R=))=4UzW#iSrz&RA6`$EZdo>h6&y^1rquEtEJAFZkoCltfE{syGi ztGwx38<)wHq9)AwzhGXeyG@!bw()I*ACjq<&bQJ(hVyI`smoQH>|=7g#|qlEhO20m zXcTzQB3vzDTijTqE%( zJztF&8Lc~Yl4oRebyXrd#~QJA6xF9OLho1IdStY2xUxC5FAq{LHa8Z+!#6x`jR{TW zOLxhr>}_{R5zbdSMwUy^mY1bbm#?I4m#`imEW7Tt2H56_>QA8)-w}Le$oF`FSaqpZ&4j-qgHX zG%H1u3AW46)VTcHuI=)_tuDV(5Ose+5VwpL_e7M7Fe>|U`6vr$k0EVOhWDaI$0-h2J@jWyl-KqQaxMe6NoD(T)EHQoDM$d2~qro7lrCEa_Y zrh8un+1dl-q-Qw=!9$GBPq$u2*2f*3jc4oLh>R5@bb&dQ+J!j zZ#SWU_~ohto?cuo#JsoZ^x;AJas>Mve;Zz?wF`3&0x@r&705n_&NE8*qIx57Ta_9f z7s$`ta0^nC`9a&EL#R5>$XyNW3rPL$E`{Ow!k@WepO0;?u&qhTV$aEw7w2ncRB)}! z?-=Lub$8nlXi;sVpRxcGBazzlZ8vf1ZMPIdnVtaCi}9MgIbWvYBdhC8dv!qty+-gQ zP{Zg-f4nQT@wCABN-<6f4V?L~a5Q|(viM?}_3F!a-HWtNb)fSYbPD;cV>mPy(Q_48 z#E)dWJsn8-{kq&|pztA(1GGM}m!G*Igyu;o_&inc`HM*)h*ni@6Urg`U64mlEt~3$ppqqYzVHDAgaR<~xUt*Wek;77?lY)W1a7Hn6 zTYy*WDWmXTTV0l(L0Phqnl1XMW6^e;pKXy68iZY7YytZtT3^Vn+hCG$GFo3L{*}d4 z-};eh9D(DMJC#*Dca@*H;S8i^i@i1Tva1n6qhxoHBSs}ZB6b}jjdvA;bk2a%mLfxV4q^kq$ z^+IaUF$a&L%bMvmZZa2`@0)mW@Hj&(n+f}wN1i90bRGeWbPM99vLnZm0&?E3Ui=0`I$;b?^*|gkP$SEUqTquca1%3j! zlGL`L<3mx7BYsP_as-?=Ld!xWye!~Ly|}P!LZ~bKTrbc?NDGSaDy#>tz&Nd!!tb?_ z<&s&FpQif;k!f15eV~^-_Mpn6T-(e>`F7zNoTZ;&aMf$Q@<4A4^n$^lMj6=Rnv62A z#RVgRAHZ7zl~xB8{L}*qU=(eu!owY;hAzcUPBTuk#&9B!#M!hB$24sRT_Qho!;?tO z7ByZL&W{+zE~NZ$o07*z)jp(3Z~qrYrE!+vR7l2+(+|=qIYjGlk>=~rmr~k|pJW*a#MWC?CNqP)E=H=H4-_A8KH!q8s<6b# zS5+8w1isu-eLA4QHM4Ts9%OQi6IGQ$hw`(ITLG!pnVlMB)*N?J38(L%IrO8q`WMMc zeB^J}VQL&89`?w2)I_b0#*p7gW@HWaeuHUrgzY|xz{u>+kvKF-jox{6L@_+?}`3*o^P>ku5<=sefW!J7KXbzj zED3^hi4*e(dVE>K%$EF?6X)g1^U;ac2(vlwez26QB-ykz(oE%0m1$bYOGo($n5O4^ z0gcfr0q5f=PZ#klm8((tHI^5kBu!SMeGnRWTNJBql;tp8LOd3gpSfW}VhPb`m|4+= z_eWZ@fSf6cZo!FgGf<&Nu#?flOI~~^7SqH4tjTxc*q}402r}4%)NIk`P~?BPenv_t zIx%4=CKx09KX4PQf;>wbi;u|$q-KjgjUA0l`XMDW!Z)@YB{PbNx*Xn$OK|*Rvnolv zKqn$KThw5q8*kpiZS4(6oN$wZ;)Il+xnT=ZrTbdT5Cmy2Zv(@H_J1H~qv3S{d`D9_ ztn;oioNfOG!HG92oURiF$8fyw46O44JZinh9HUKMWrE-!oSVYg5PdP41PAbx3ium! zYPRUZV#y~(c;ADRdW~y9VfZsQ+>KNjs}IUhL=7$|!UX}Tq5ohfHK52SCh|(mQ2TJq zI4HlLk(w=P$nWaJPp0$U@8D0SSE%K*x^KiM(~07&Wc-SgKVnR3k0%;4mi~b7Is4Qn z(;v@5DfI8lG5DuEKbhXf7}pyMI{p*N!>88nF2mKeq6e_4ey#WOW_@@qNy>=U`fa=%hd_nHP!ngU+`&saUIvAzn|&FxIzd z+LKUz)Ol>AlHLW${k{Ps_0<`WPVIOm3$CEgIaxau>h#o#XZ!#ybFzE4lW4XcM+PS1e=)A;#Q_}Q4IHD5chG8+IS#GR4KZ$(?v`hC<7IV&{2!L<4w!?-L! zONcuo)jJmG8E)~w0DU&THjn0gIzUSuxHFWw^G)ZsB&@6h0PC(=Gv>5_IlOkf8A+Te zY^)Mhzpx5M%RHXw8%-zn8vN!UE5W8l&@A+}(Xw*}%oB$s*S0XeyZy%DT07Zw$_K7h8kQlsJ9t_ zyM2%;U8_Kkhn&rs8uStXI|7iL@(T2ykn`Pz8uT3ie*_>oX%*=GkW=uZ24$mwt+1(9 zkY-Y#{IC=Hp9XaUU|;}ZQyCF{``zjib{=1)Pyd+!%=JN9-Y4wbh%1Gh=BGinigKAj zEBWnrYe?8>*sb-if$XM0U&+UWoq3zI{u7Wr8|bI<+waz4HMe1!G9&!-yEQrNT!X6< zG3Gw(_`!6kmXXR&zgsgqibJvj&k8#?;7K+yWOIlk&Y8uO~iyF%7Gkh}8b_lLsHiP)(IJ*hTaDQhtUgih*0oVxP^*+Fe^h<+mSJa zQob+LQs+bG;(Z0T(z67*B;@o_v2AvPUWdTS{Ujn)|;tV}igYE+0;Q*wjF9F>V zaaQGN&|3iP3P5URx{Fil(-G(PjvBNd02_~*RKv}ZlUP7+MVt>l(V!v#IyM2RD<+4u z5fS)D5vS}~4da^rv}xqm5oh*M8hHXxXEZ@-5C-AQYcyyh0JjIA_-Ujvj#|z` zxXj7*;W?mQ50Fx0_kZlg{+2TqyrG00}(Q~bB+Le)Ul-h;p(9u~u;W)Q^rQ!Pl&BPTop}&JhRvo0O|GMLRHdE`g z2fkmRBV8#wHEN|qpE*u%EdHbx(*RxeH}C^%@rUCq#9SmgYk|M%A9Qpr(p+c5n;QNE zpzr++JYhgev4*Q({WTNKAN$Y!-f9|${p+sN6RPZ#62N=?jY_;9Tiwpf>)WpL)>}$tBH;4_ zl{hfMj{{quyUvYA=|$X1pe`p;7CF)f!8kNre(llv&UJ8M!B-vu+ZGsQ$&AR8T#Ehf zIz4W}7ZlMC=Ia2wrGsB;~3@V3045KRl7s8UJA-ymOMXa+-!82I$cNJh&2SI)0>3HAX(-q5&VUX+7_N)(K$0^D_bXD^!+|;`KqeISjbaq`nIz{n+=vMB z0-&x6kO_qqtX=E3mh6Koj!V0o`)Zqg*u{jH<69VLcg%$Wv6yYfi=jYR} zI~Z<61UWtG+d;;2WdP>z0Q10(8{Da3dnfJEP8~6pdT})QJHyp|Fcx6!x*GbKIjExelo717t#B z1^H3b$-pTq)p``D*8}8%Ei3SEqRunE;k|(VaWLG72r}e3I}g!@vvcwM6Wc+<;QotH z*fbz9TlB^mXZ8kabbypnac4xLeAL+1bGB?(j~dM*fI2QfvRWE+y60@(szIv(xFG-q z=JfhPY;N$JO`mD_V}O465AekGg(%+cIfJg(ioZZ9jN7GnH|xSY<2ku|G^hZ84gn}$ z7&f$q@A90Avow4dpmY8KuFlNn{7yc*zT~y%-~(EN0I7TA1yK^4v$GKI+92Mg*ZOQB z-nB`*duTphBz5Qs$Q*ui(FXDE7u^tRNr_i%G6)YjRz|-wpgWX0(lPm*l#(PpCa7nIf`{cUcK)C+^fYAm3pIo;&hHVRM2^JzG*R?gdt`wmGfB^)t2nl76 zkX+Z+%4Y*~{iG$UdW7TC0lWw{}3T`zHhuJi^hri_j<6%|m)yU#3Qk z(hkUVyFofIK>SB4ASQfr-Kh{RY637ha12*aKDq8nATAD2GO`kE?bhVFTY$Ky3CeK! zfoOY=Cf9ud!Z!nevOscO+b7rk62hN+fO^iHOmbaElk0jo|_aWG)REGCIR+w9rcZn zIy+8Rk9n8fWO6pzRHFcf>%2r*WC-j_Y}TO zVFz-$+CI5%5|$Pj*hFT2K!AKt*ao>SYiK4>s&ssE-R?*k9_TQn73B+pAlGG)Ojq*3 zb9y1yT>{iuO?5s-W?GToShYc}%f>a6h*R1=x$YfEc`(r46R%@HuKOya?+1vliBKkd za^3GJEb=S5y_cW2LiyynIY5*KC}yNe*itH^$#uH}FeU&oF9DhDIvSXn1!*X9-MK)W z{5QyPGD8W{C)ZsI*tG{kjVhAs+5x%lHbA!fu!OfJjwaXrk)`<%fIU9Ql;)Dx7`7(Y z6;K$<&=hQ{=cUCINR#Uds1$&@0K`_qUq~*&`0>eg2SYe90LWNiziO0Eu6q;^Ck7}n z6X6Yrt;uyc#>{m9TtSeG;T*m&wLz}?JTf)q1&gi8bqO+`#O^twWl$@*CfAkI<|D{H zr(CSb3lv+E>xzB|Yeg5E(pPd#t}FVjAS?}|ET!Qa7F(0+5@e3T?ogto zG&y|3VuM`w^*CCS>k?$1ik&dxifws?Vrz0;v9=NN>jP^_uE}*p|53=cQ?B%B%GTt% zQuYs#usbg2D;8Um>x%qO$Re!+eZFF`HMy?XZwXnOxSX$8Y)!5!@*a@&i_7^6!Pexu z@(N)ZWV7OOzJjrfB0{b!Bji-b&WOwTipAFCx+32Q+4X@unXgzJO|H8Q$=fMnLz_e! zO0LOu-+^pT6S*nlF-N|r3Ub|5Sdy6XCcxI@x`dm}+hA74raMr+pbB!`i{ofbu1k>F z6TALIs}A6M0b7&ninZyG&8A!pPLXSJUD00-*_na9OLAS?C)d3a={Neis_+Wnlj}YV z;j;l?znpC(*R_3e-47uA*asN$Jlyulb$>;Aq^;k6>Qvi%ub%Ny%iwxT**IfeP@jd{22wfrb$#qG=eU&d$O{Okjg7V3A?*`(jrYMz< zpnP)OcYxT}6eSlZsh!H!C)bU%!vh~|@#>p0=O;jYa^3cT4Q>hztm@{FQuyS$(}6vq zDLyc*@%;C(pDKU?wt_c=K~Cv+_{cVuKOa=-}YsuYB>UIpImn@ zgues;)o3KwwL_X*H>DJdAZ+S%b-Sf;z5%l>N??{Fy(TWZ-Nq>P$#n-H{ZL;flaW4O zx19o%Pp-QVh~t}}jAWAQ;%S1A>z)tUWliNS$#or{T=zBzA87*6*^u|eK1`GAz7E9a z0ZPVhu)`-JG4^erT=!4FlCV@&Jx`S3l3dsJ$#n}MEDr$EVi_dYbriWSM@XnIpTNb zR>JP}UJE(i==GK37H^&$Z}l#eHTj?Z{I%tAdrTic#xdIk%dIn+0kGV* zmH=38he`k}x2#LH3zl0pcD4(aTefnx3zl0pZ?+4TTcr+`Tcr+`TdFIT+oZ|Sx=K9W zBg<`)X1T3ILTDKvIB`-CZry4#LW<><;6AZA{QqQfMKzu#3(IYEq*s85Z5$23=;W0c zpvHVkqGN^S_H<}nK&z+1swv{EH)cYtSZ=R@=q6umWRc}Is#tCxLh2KNq=+oHQN?mg zBkw@+KT6MFVUs1p8H(lh2PFR%C@PU=xouVj8Zd0CFz3cqHOp;#$hrjb!KjxutyykI zLN+Ooucm$meYv8F<@Qom@fgTY4KR|2!YGzo!CVG8zn-qjA$F3;bsA9R5#p!;?P1HcO&}g#UMitBLW)?Fm5E)71&|2Z> z;M6)+I2`Sq$AlxuavN1Fw`>WMiAH*7tdTsh+#UlX?Z|SQbSQ+1 z%=3{;5t0qXatrKRO|bl8dLlMgupR$IzW^JmNwoXR0oXLb3d?QEuxLAAM=_G3S#FDv z5c)>7C=D(A?PLf?b|la=7VX=PL&3!8A*8!))*-oG=x$R%ciX80T9J3jshaNgSZbtB z!7d9sBmJU*kb&-&kA#yb>4V5+f>lqwyyX4TGQRmB)po$WtY&`n(me<-})fk*Ladl2UKcg)g`K`GN``Rbho_#>Pip; ziJ3@WYr0#?X8avU`dZW75_Dz&lD=kx=)Tr;w@leY&;X!yUxV(J3%n$ztG?EBw@i46 zU}n_JZ-e5Tn_70KbQ14a24f8&b<8W_}97lLR%5ju; zrr<_@^L~}%4W4~C?cC_)%JC+ziySw5ljOL?J5i3ecx&W%tG88--(+=@a{QRJ zrZ4q>%6eJSf64knj=yI0n#J_rvJ5%y&nlAR?^%<1%skAydkl|%t+1~kbJkQ%INA!;zFY?~N zv3_rCInHcG1vcQnJXD9wG(FxE0v6(K`7Un*LjPyxZ8fSqa zlj9?a!gRi%$O1zq=N_g0yy;9HsML#)L0sKr)JP{oW)>JSkHy$3ASqH7-g524FdPw} znYGF>#wVFsV90E?9ZzA9JfENxl*ovYAu|gMnX9olVp+}zMCn`#W`QA-%YpP)kx|yg zW-?zkr;{!-3v`*RfxL8*SH^|T_qar5xA!)8#*xp-vm5fn3&0*%fk>CMCs}s+cVBkL z9GPhCoMw=8O@AK}H_Hek(xdr*F&#u>5LYVmrA zt`5Zc)BDSNb0dkp-)`j7*xj%R^U;GY-cyY%?u{Ih?gxDMpQ%U%AM@vkjQ^Pt&@^}9 z?oFf^T_}4Fp`$cc^8|1;^G{vXz55x)V_o39_2Wv`pIpt`5Oo<1xSHD|r6ab`*{qY> zgsXWd(hv1zYD%gS<$$Ys5v0p}gn1!NEa9x@b2YC+ifLX9#KxwmiC^yp3S7-Taoy1HUe z9psr{RFkW@y)WY>P`nnns5Pp|)jZUfHSuULs>#(n*OxWbvu-;auh-8lrrD#()f`b= z&4gQHp$D$!pHZRK`-b5etm0~330Z4$HAfUzv&6~O98p}&j9Z$knMG<%uI7m1YJQ9| z&DG3mw$8%nj3}<=_ZTNvb3}19OFRctMMQBmGky%Ynj=GU*~op!)oc$;<|8P@)ohQ7 zeS&GhCRejPCZ`+?idV*rjFpJnjrXLs;%Z(3q*()q?2IgVW~aEC&xGg_Y#~}OgB|`9 z%7>GRt9c9Lcla11i(Jk24B={i3aKyq645r6lB?NPT+JW)B8(M&{e6;fHQRGz6^t1+ zxti?->6{!=vnaC_S92b!S%fXrz-lRp;%cr(YENHcb`!C@ia$-bn#V#k?Eta7OjlgZ zM?!3WK_J2kL%5o;!YJv16~<_EMSO)JT+NRHyqyYV3n24X7{b;3 z4w85KBC|c^{tAO!%^i_ontuY21lyvoK>i9txSI2PnZLqd-`5LQGp|JS#|f@PBT)L_ zN<^;a&QP9%&Fsp&mLU|s646c)g@1n~B3CojZ*HP)GWri!B62nF2+-73IR;lEay7FI z-&53^%@JIQ$koiUq@X%V6kLh;9zMAEu)1-NheF|MM&~?*62*taJ7LzFa`)(qUGSx>nQ8yX=hi)Q~ z^6~&pU6o_dO(arg8LlAcHa1MqO(argS?&!)(itqH(Vpza?Z|H2zBgW0v?K9uI}-1v zJ^ULC6>N>A;}U7D!?L8{zKVRTA}lsY!Tl9nKv{ezTJS){g)`8>89!knK%$Wrx|gbt z#6|?FPb8>5S;3WtQhlmoov$jsaqTj{HVxxg(#CqAjg4SEGhRNH0LIuZ9(FTfGVJd6 z)ZZK)UV+$)&I4^|@t5R6z!tdW_gLUze`=ZZC(^)vm`KUG0 zo`t=au!T-WIkaf3)ABNiK0@+dUu2#x@>;4+bf)cuJk$pY*hEzgCHZjRQ-g#_5Q@%-1*h?*#l=ckglIwB31k_xD-N}JA zLwJ~yg&g|iu?@`(E@lhoIG<0_*))g^O9T6nzk_{k8z z0nF||gLM-%BZI5b!ZVzYZc!G^KOhRDDWxXr5gRY%MiOu46i07Sr`SXwgj%(zOa7k_ z3$l^9NgW^7$11E7 zna<^T#WhGYTC6(DFp6iUKaUfJ%jZ96anlS)x{*Y*cvkaA3$d7lJ@ZDS%Ff6oiD>cM z{I~8<|BB50?QO&t+f@$o4;Xoy6k#mjncgt9y>m9C86EOhSqK31%)(!*X0+~@R8--~}ZXN8-~sUC9Q zu@P+*&N~LnJTnvHBp+L-5vy^dgUCw4&d?7bt3`S@UuO0oKwK(X6^1+f(F=eG+09$k z;ZLSGVTd$mVYh%P{RGX4r&Uq7!?%Ja!+9%sHT~}b1v1wHd3k`2kmI~n*RbUR#X~JL4YK_2PrnfdsK$CPPLJXV_LP!;POv<@m?UR^#!X>Skv(-=z;#&Af&rn)DX|C>j)W0;^$MiOmx9&ni+K9dJ03?G^93$((i;;ekFEdLB2!>B1a*Ge2U!n?WUI+LVs#FTvA3l|W_J_~W zyA{ZM709;(bTE8U(oquD_FKsK$#hk?VE9bMTqPgbXg&xt1vZf%FnpdpQyXajpqmeh z51&-X#mJ$M&GhBkh(CO4V!B=@0dN*Ute449eE1Ye<^17u_IjP~?Er0~3R_mG1jA>@ zGM)MB0DMSL+-@*@rv0uh{Q^K39hqp!A3mKp8={HK0su-0O0eV)pY)G$Kgd$_0br01 zQp*PpiiF`qTZ&S>XjbedK!sAhXs%o-gi^g|fx3c_QoZO1l}<|aqJ{CRiF!%1lXDQv z?EC+kQSXI>QXOVG;>7%al}5da5=wPkB2T6nQmW$;$q(TAmq-c!+a;2(!!)Hj%siD~ z=DP$l68<+cGSw?eb(rDzz5UX>g{i^YC@@gJ7n8@dDFET zZ@)}`twu_9;>`bH_XQQ2FF=f;V6B$T6o0K&z=*$ABc=M!)aEzR`Ehim%}}sbYb^?T ztwu_9$!-K7)2P6znGF5QT1_a`R{*m*&=4b33)X6+R2Ms2ka`D!tckk7^XAM*VmB#D zb*y%H8^%@7nLX5TfIi-@kGw^!;FrpR)etGwc{l1oQ{4gkt07XV^A)!#_sZM_t07XV z%W6ljhDfO{alINMrF!COh?MFQ*Q+5?sx$7dhIr?hbR6>XS2_cco4?W-jVN2FvTBwOXAuy98#(uP3_CEyDrdX zC>VOji-I0{q*Ryeo(JR|DzIuML;o`Lgi?J!FdkY+X^0W31w)UN>SCu2K;;CoCJ8N` z#L+fM$j&k3IP5BWsbRMl9m4oD9p^1?#cS*(e-TcibKbe04!i0BfIsX=bbb|6_~JjaXsuvbS`nd2q)3G#PzTv(K+M(nw$6E@q1_^vq-4GGZhthrlJDR zR8-(dBo(;0F|>X)oAY+2q5@B1`1n;{;p*MSpyNV!GJ&h0(fz(vemK(omAwqpImhiz zCU6x_H8K?w_%hdeWIudvGqP!=hg+hEz~4h;M5Ls7_;CappRjS+O-m=DaZfvh)1w3! zcHXgwG;?IVYtv_}zEkp{dZGrWdj(tx+K zGsB~CV$!$HA`N({m0O9hq5&_fb@`sjo{Ia8vO1mdtK$%9Na9U}Yrlp?Oj#$1q}qH; zSk@?!9Q*Qn5$P@Y+| zH+ut-vu)CVmrYFW2m`Ba(twvu&i)@Hm)oQPFPoD41tObl(twvumEvr+NdsOsEs0~} zPP4R{4;z-eGHlVztftfThy0w6#GP6S;rMNyZu;#bH(15O#; zGL?)bN{tw4z$;cL8gK&sdjKFx8t@9xfU{h5;#5T%NE+}8(10^Jx^f62paEw~XO07g z4QDcDGKyB=(2utJ5-`w!Q$W8@)hY*IquZ7N1sZUcW&%;%!9+ey>{<;WXuxUWjKGA1 z60?(zBMo>3Xuw%Sx|1fhC~3eeKm$%0T}(x0L`ef)0UB`TO^;JmLb0sdi!|UBng*OG z`lG7uP=F|Dz$-ulPRn#sH5t(TNE+}8(1261J7qF(sAw{ZO7?^#7NQAF15PM?TMvXr zNdsO18gK&Wj(I>)mBHAa7*Lu9oJhLG#*3>!(eJSwssIf*0d(k804Y(7G~gAQ2Ap#G z(I&{FeFs1e8gRCeJm!;~j9uOJoE~KwNg)?_#Y{OV=zgn8%-S0%N3MWqfs}wAx$z_KHeGJc+n=^HfA)5{cQQ0Z_)XcG&>{ zsK8lWI(;8xm{i~upaLg=-rxrTNCjR2DsTemCawT-3aX-2{t5u7z*z?Rk4qUa_rFw( zbWH_L8GXvNti{QDAX8M}>_xhntD@7cp~Q*`oY~U*Jf5x5f>huYiVB?CbV`p`T#FSI zIJN1k9RpRz%vyScoLszWGW``OvMDAshGeWm!7;Q zS7O(v)jB-fX!PipJE2*ZoW4jyDd=nJxu;|A=)FpLqL%6OPW0R(v3K-drQBA>wen2E zsA`+Zg`!0w@T!vR2N|ZvMOC{z7Rp*X2;tHekBvb%|4xLXaqEQYO}2zSa@%Ld>YQ-_(@6wg)g^sB!z2Q)>Y8x_!);>-4@#4KzdRD*!7AU|-$VFvRi0g# z=Bn1`3uY%OU7e%KW22(gxvC5#0~z;Z=b8m*&lUppQp-3 zBJlS4syrkDuc^qni)AAbcui&Q^9+*+yrwF57sDh1uc^-cmEk;;v~$hu%;qcuiNI^-WECK+h`?*> zT)JY~Bm%Ehw^D{Zq8}paR?4+Ie~L&CS*WDiTb3cxPa-*XVF4ojB~oP1qJaStDYb{t zz(9%A*dzk49VC%Pdl-g(?O=)Yvaec=$PkGPvPlG9JJjW>Xp~*d$S{eFws#$e$Owsy zu}K78J4zyBZ4!akj*-YXn?&HX<0Nv3-2=C-wUZ@ssJ-h-M5ah&yiFqT+UXLRV3P>E zcBVuo+9U$6JzOG_Y!ZRj&X&kzn?&HX3nene{(#mNNo1;#LL%_m6H~alqc5vWKMrtr_xch;e7w9bVj6e;@3JOB?2ANhS!g>G5|~8_Z7mR4L<}C zOxD;>VO5VpKpse`r&3X}hS!5NoU*eh;|>bv_`a7kS>DU|x zs0>m_8eV^otWfFje4sqK_#MbW8qNaH6IuX9l%(PHAPr}G&@o!A)n&<{mWLz_uLo&3 z_2^lk0J6@Dk~F*?q~RR7^fpNF97y>X7nu6RZDb&$=qkGul7`nmCuTuI5BSBmg?DooPw zPI=M~H7^1<7Ah+-eNMoP)hR!3Agz%!yi-fT}~q3>tvFKH-I!;20@UVLelVtcO{ih?HWwd@CJ~E6HFg>olMg3 z29Sm`IeU&yHW@gf2yfTqO((s0#q&es$uX>+niV@|5? zC6}|O;A|mjdFQL8igfT+kL~CJZlsX3yh|r}qDP-^C8C$OkwVh)F7;`Q@TNrf9!bkP zU)h}6c|qzKW;QMwN#R4*n9yVi={M}j-f{U6x?EkvAoK32d=_z;{c&8v}ib0AzB2v@?t*?bs+Cw-yO zb1nWoF&J%bzJav=`RVFa-I?ZI$C7rF~CuDAiz@ObdmQBA~=faHJx* z0hRD1>^+xz$CbCGZb=WOs4$&pJ@**d^DQQB8)a(d`!UbuTS&*{J4#2wo({i+6wl?} zarr6?13>l+BNrJ$v+~)z3>UlndL9;uy|~ZA9uqkl-w}R$$L06KJi!!8*m3y{GRNho z5>- zzVv=b9_fozdnbR2*Pz`rU-~S_j`HOu8`MZ9UwSvqmwpCh7abrcUwSvqmwr8DH~VrU znSANpG++8-NPaplB42tp&6oZzl6MB84DzLSQ+(;1KFnVs`YRCIP?aKd_t`v6tf3 zY=PAR(kTubKx>(?^I=VA>IiHCAkzX^Mo(JHiv8fjj)&-!KwL&gr*O<|31chR6rogA zP0}%KAxs*G85m{sgbSy+W8>J6;SubH1^W|lCNh$`nrE?H z&X!prTy75sn6rWa3n6MtAPZpF<*Y_a85q5cBqFNYAZa#)=a|Q!L}q@n!vj0pG$&H? zq@%Ipg$EN0lO30ONi>LCJM5F#FP=-8=h9TM%$uIec~WkkIB%5#y#>c}P4^O5 z>31E4L3aFY=)5YqW{1`+?6d;e2hn-P&_xcOf&v$M4ZAk{ir7G$KyAp3P7h>b8jbvj z!hMY69&FQzHddSWVQ*cUvLCTf%3`fs(o~oD-*=-qAa9FpI?+Zs$4oy&C+QL+Q~8-2 zMia5 zpG6ynTjx+4%&x{dv#Tyfj)q-gz9q5=97!Bno=e~Ta-Kr_A(^4gqPyj1ZpdEJwAh{I zjYJ-4t$C`E7qOftX#+qVv}#qLI_7UxV{ui^PfGy$9X-My&PDl|8&36ARsGSKoCVKE zs&O@T(wS_>cxMiyN(0WUCvkjH8*CpK{0~xlQJ*a@*xhKWeMp$3u}25kpA)g=oXWBw zJo;V*$O>?+kt#jv7qXnQV;`hWIS4!QAS@@`Bau4bAS~yDCUzY;^^=%Bv^Q$K4uQ~3 z*hxE_#y~Krhn_>NbM#1XopKpf*#fTY7WW)^Jltz?$EVD_?PMHg^V#J(-XYCfadE%*_zrPRMXJLKzt`LvcpTXCQgeH(;c_Is?+F z9e1X zuFWI=L0mIpJ`WiQFXM9aTMmUbWW)?1AvrQ`k?KHF94t!F;5Ku65`HC z;~&>U)B5#BYnuwK88OL>tO_I{?u;~k068?nU4c&1Xw8WEZh)3LaAzoUnh|q<0ASr! zYbHA_U`{h)a{3_arRo<}!DvH9%#dcptbvTImui@SOB?de8Hit_7%@jdMw-inVHotA zYR)#_ZGc!aVlD^tqJ!c1l#L6J&xm;g5V!a!qr1p_M$9LW{-Q54H_bwUl=9=IV#NFi z!o2}NN~{1rBWBpfJr1^bl~m;uZ263sWW((HH&AIOWz}cIoCw%4{{T%arq75;Hq4Cy zUV29wE};}YBj!DTZEp%qK>3WA?*j34fD&6AjEQ;sjF^^#`5K#Qfg{+dsxm$!W(kB1 z0pKeP_e3*3Bjzw5rUWRqbRx=U#5@{^(*qPU)2O@IpnS!MDWK5+ObI}2DnmZV9MX)Ka?&3Mz{x&H%QYjWoaUE8wt;e)K|Aup5FyQo zDf;(8_HdxD_5;Usi7HmSRj#_u(U zW_H{Y2Wv)5V$2%s8VHt>$>*3unh{fsje_h@%Gr>Hl50jx(O(SNadCZqt~s<^F=9%| zS3`DbTuzttkY>ab`JIs67nk#M%^}T*Dfa&h*;{crKi3@6jF=+-2C|>xa(=KQq!}^g z6iJO@5r9qCkN^8e%PJK(D**7kSy_o&d+*-=^Sm>= z=LGP6-|v5Zzq3=`=Y6N{?Ck99K4TyoAIf9=T(kRtWyG9|_=S{7CkxL=$Djg6%u9f{ zsu9YGkrC4k7%}gHa9aRygb~xVjF@8c70BMCT$(6GMoc$g#QX~JzXrNyJdW|(ye>Y8 z{lRl+-yBQ;3-Pz@$In^2mJyTJPgMz7E#+c7k8fhS6TACEAQDDQ*D_)fqmIO3Rsc4s z4c0VAes88OA`U64Oa46|UY3dS;Gik&wgf4{LE z`OdX#88HR)I{^us7&x`?FXc%gV!=*iheK1`ls|oZW%E}e-dQV zQu6C@TN>!w;Y&c45mP{$0JtRtnc+)7mJw4xy8zf7g3RzGAj^m;pw9sK zF$9^BiR_iGWyBOvP7>FD{7nOxAyq(@5mP{9!yMKKWUiR(evS}Rx|R`B;4=VS5W>St zn?+hiOhH}@)VfAU3&Q@Dshe;QF&8a<7XW+}Hq}SWOxGlA88HR6!-=}ZwcXP^(IKmh$+ZjK<#dXbc7MpwTzeo`V4^ILQrb>F-XgZDaa<-j#G-i zsbSMo_{nnDGGfX#h-{dnLy!#4X*LCJ88HPu8_?4m!_y2~ModZlQlPF2kz&(Sy4bXg zn1Xx=s5kaSrdO)ySVm0IAsc39PEasF0w~UwqF9o!6UpPLH!}{2fDU6tc90t_n z#>lBV_u#B}GjWQ7_=OxH4EN-DPlxFb}P1bA?S5!1Ddn3BLA zpgszbOu&LHBc_1V0A1brs&)N{Eq$T$f(1E)v=72qO%A1uR@&=sbtjYvg|yR)G}fc?&BV| z74KvJvfaCo5!1Ddm{h3;eB6FiQtjAJ!BOrIlq$YT1HIC*AU2#4CJz|kUDShwK2jiBc{Ml1$1c$53ht4X&EsE zxe2H{LS$N%iA~FhDadDmdMiZAy)NVN9WzlE6!@!v ze)kvf^ifF^EhDBVCX2BWh<~aoY-TJYrhv$XIXDERGQ*m)aLb4(@Tq{F`4@20*_%$m z^u&9?i`|JAWP#j@zqcF%G)H}NJqoYEs!tVCX*%OmNWP2xe!Am41N1x8xDJB-X&he( zK^vywdMZ|kJpg|Ip2SnCzfy5xMXv#Uf*U(+A)2T&p#2EvHm?1pAd8P4zn;lHQTg&y zxXVE{E6EHf&%WaQkcA<_>zM?vXUPFr0}@`(BzZln(0-lfHvn=fc|DWh_2kYXrwt)V z%jVT*okOcUCV=j zP8Tbd*RyRS0KOYXUeDwd)k+@>%{U8j6nQ<9me+GEs@@muvwra_! znGAV7--O_uP&p>TfYsbWvWtojL{BxJ)1(>DnvXd1rQSfuV)Vkhcp66$8k(T z0k7v#K+FqK(zDWReQ0?-&jVsrBa{>4$3&B#T3*l15Z)dFj0N&~CIep2T@daL0A{s3 zi@cs${i6+8*o*TqWS<9eC&o{aCIeni7iXi7ziFmsB$*g@9L{#0y)XAcMa8F~w+<0r z&m`zPmvzKTg!Hg;i-(OY9`*+Du+_xFHts`xJl&GB!}5Ac2Raw2s_@{n;A5>Mcs+l| zaA9~ola|+0;9CH{gBg99%~4Cn$YjXt`4j{%Q22KWdy6pO_52X=Uj;J7uQ)g@_`ov> zUQd=##VIv90k3CKDIV$LFZL9DR*?_Ili>AamQ+mA!P5re^&A1z)W$j=A~CDTFIy+U z>&ePhapH`2!0UM-VlE4{|D7sh$m@9vr1yo0uZb`w0$$JOA$&UosQy9P1{Lsneg{N^ zvrJZ%VnQZ|ZKN=k*Ru$KE+L3%2}m7Pi&PB~JMB)dQBHrL4%-j%AQ_>=X29!t9AIbd z3&q}We5NxQ@_McX7mP)uIAk&tX7}3sGW5cs-Mr*OPrr%?IFQ zf}{_(;A7t;cs(=wLne=jl9tz#AaxZE*AXq9+Q==hr<^tqLAH}}u_lj!l8;2ZjL0GSQMZc@UJeyq;q1bjTJ_ZpxPV6RcTYPtjio*)=JBJ}63BUQfyUHpm`H z$@!otiH8_542vRv6S8+way}?ZT3%1F{|jXQNy+)3C~0{;Mc%9pw!YzS^Unt%Nz3ag z4?^l7>zk7EK~l0bLwG%P=xZpF4oS3Q zQBv;ZOTkzRR61<)tk6{Dyc}CLmdJ?Wa$Kl&R&uPJDH%ah%ew#vDUQdD) z$uCRsw-vyr8%fLSDb{*I)k!Od=fY);bgkuAM6C(>|GT`-`h4|9~nW-{!0TWcf>v=H{S2sqP zbOaUfdfpAh(~VJbfiig(Xu#|F4q)FmhRT?q1`T*Ua)>v*lDwW-0k7u@2-gGvCq~-Ntbo_^M#SG4$dsu$0+Io* z=Ti{A5&}%6k=GM@M!YpXrhuP9_*DRab*v6&1-zco4p<4o-<--Z@_Hr%Ue7YbR|PUN z5i)t-b{0?pujgPO#x_DZS>*N1vb>(hKz3qdd5pZCSpl!-G6=6|1hB&bIRcUaujj2m z>`PuIx+HkCIep2Um=WQE^FFbYD{=Nvkb2%dx+Z-@(#rC zBBtE=?DE?mMJfTWXI}_Mheo8o$PCG#0$$IVK%CqdC9|V&vMsmDX0lz1bSHm^>4$r5 zvq*F7R{XLjk{*62l6Ho2vuQVYBH0ak{y4fT^&b#LvRCPjSbvCQuh#v7ub7;oDJmu&`eEZt{IM7Uc4!JVK3e?_aCuv^T~eG+^K={|G2C0iVbJ0_v~%pI+> z5fHl1+=G+9vhSWjNv@&$TmY>_w0ak;DiJs3E9<$2?(ejrF#aYpkEB#B-DeqOokKY( zAFXLi_t_7!5uyAE>I;=;uA%#UmPMQi`SBq}(l8i9_bHg=kgp9fVke7qpShOq^Jd8I z4&?S0pO@!cOZWLSWUmHtMU&2%E6bp7=sso6`UT`9uQW9@m2{uEhVFAWv+1L7M&!f~ zLTyEIhvu|pfg`zf#f(_UZ=vQIx=+@GVx*z_%mdx$jWE)kbf57d5at%#4@7=l;znn|p8LdO^ejqjhIzYF zzhFsXJwgW=-cLzw2~VQj>u)pI-HotM?u9)=u)_NZyMHvoezzC)B*6;rXOj`}R#>*3 z!ax(t`&ohr_XF056Q`lG$otu3bPa)c=}UM&^%3#hiMW<4JvlxW@ttaLKxS7qVchii z(TtOIYbW=NV;Of${0znsjOPS@09RO@tSWc~G6l}id0nwQR*i5D)#bpY z9w*7IfC_ug$r;L+UI7TJI)8`Aa)wf4Y9NwjT9bz)IYZS{!x>r#&;y)aC?jSB3QqWlz^M|>PzBD=2{l1m zTh7oc2yaFE?Ip9TSPpQ8YIM{%h0@j=4QD7b^fVQSH44(!*Bj1Iia%*AHf?P=LsVD!@>5<}A>m$VNrhgE( zMyqMW)#{|U-E}i@>-1$J@2NM5Td%i@+e>c~w~szfaDDYSar^0+65n5+AnpKtmbe4; za&ZsRZ3Q=2SBX1B_ZD}kVYzHNTt6YW5qh_{BlX+jj?$lsJ4T-__=ELSx0RGt+G>)91%`9i=SAopTBAhs% z(M5{E84C4C@nXDzOBbA>;x5-0i+hp2S=^QS5pgfpuZg=#eZa zn7Hfo(c)gI&k=XMzE0e$^yA`g)E|p`o&Hta&DuMLc5cwc;@+t1#l1;S6!&I*rnp=5 zCF0(q?-CcBp^}du3cost`ac%FDDgiRekSfOh5Rr@r1;lDCGKy9W#ax`IEik_G@XAK z-RWA*raM!gChpOCg}BG)P2$ed_lrAQzbNh;{gJrG>fgnkt6R>Y{&BjmxF_fd;-07% zi@QK?6!&EPsJN%-55zr9|0?e3Iu{qoNXgl{rMTznDsj)#gT*~xPZM{kK3UvldZoB4 z^j+ejeZ*a*UxQmEoT1G@0mgk#LIKtsoS}S-o8&&QRuIBSG2R6p$omXmiUM%Dg-fiiD}HIXFW(9T3jY=HLwF<9MNMYYxs(mOvh8 z(c`oi&d?SI>UVnDSFc*s7R$y5;S6ojGw&A|H}5~Ts40?xRyadj)aU0z#c%3F@CeCp zhW10m!T7tUvf}7d#F&?~T68ydvqZsihMolR>4Apf3~gaJL#e1P!Ql#u`Dp~h8QQ{d zhKlh!Ai6IUpUqc8S{Tky5x)e{>!G+AI73-0PModZot&ZFH*dsvM9$EbhBGwI1%^p~ z<{(Azf*w$hE&JpQbwL+8l!pXjoS~Hc2f#(-3_W0Q!EF57L(;e3K*#wRp2bQ?LrX~- z`YpmS21_Tq-W@NaP{$zVIQ-q^EL7}!%BHwpn<2eDK&VwT zu|#p)E1lsc-*^GH46J+g93XErhRylv3!uOndKCKK9I}R%f;E)aHYeT>P&^15t8avM zr0fvAUfe^?ib~ley-mV1^{e8}(qD-?TSt#Wxyc$jq8GZ=KKmY=zGMxZ707rIlsyrg z);fL38hTzJYqVd&=}Xqoje)GOp0I|ty0DC9&rzfeO&Hox;)OP})ylF;_$$5~fg4&w z8~PB#qzz3N+E59THZ);qLm3v@&{lW0W}YfY8=5e*p}$Z@+R#?_v}QRgNE@0kw4qIU zBfR5Ggbi(|go}nDY-mFnK39=9G%>6htND;=E>7XWNiK2aF2WP(oaC5983Mu^njBly z303L{Z)oxm3HZZh?b+~#-U54yU)_*{(^S?34R7cUh+e|qr3Dop@ailVKMijvIWYen zV4SAp4NXoF-q1f0E993c#q$)2Lz9L$RLCzSZ@5YVd%hCp&?J~c88pnH$vOEPB66Bi zmNd+vhoNjo;_ve1ddEl%bLa_(T^LAIZxPGG{w2a3x*DSOdx_<7yXnq3*XuhV->(OZBKD-{0Ih6F6 z*Ws^vF|B*xOI?p>Cr;u1uSaAKrTV`bsVfHm;(A2p&?d-^NsPKC#qfGW=1}ILlA!*q zj_`U!=1}Hkcqj_5M|{#BUV>QM)Sim=!W@dmar&WgIvos)VdDsM=oNrpjlX*~QwthL zm_zSE^uvKjokw}lIAjjJkQJu>4!{SEK|$jPbLjVhENC3&uLqe!<56U(N|;00Our)( zHq#W?4x5S0p)DXChQGRrsZN3~)l9S)r*QwxMCMScU))GtG58nFMCQ;3Lo{_wieWR6 zIh1*LgQ8nmF<~>2Ih1+%HWW!?Fpo|TGKY32b7+r#cp%fA%%R=M9GWZ4q596mr2ZHT z+kA+pBzJe@a)z*o>U%ql#dJcLRP=qFIHeNq9({kO<+$2-WD#YgQ}yMQSX<4%Cz@CS zJNcu(R!;uC(I%XW$lA^gKs&iYHL4# zi2e7{?W3f|zHA9Ep4JJ?F)g}z2*z%}vIZcFFI;1?Xx=bqW)+L)6t^0M^q-IBe2?)T z;3|SY%e3IW#}hJx_AZRR^0Bc;ip+3_V9K6TJPF11r$@VgubeHXV(bG>O3hp;lePD6 z6Uday@wDSKJo^qHtQaM=ldSs=JKn!)8od@S3$};J1(#kg*m4-o@szw*EK?t&`f1Z> zEgq&&waLK$gQ`@lsCpMYsE+wxRAmw=n^=?QAvHHz6wQJv86{6oSCyTsX8Y=7 zDcSC((Wg;C%-;W6DtWogxj>OxHV@RYT*a6rpCSRP?9e?BBFm>Ib!~S?UM1 zESLI^Cbev9P|LRIoW%=Qq)nGBcI5U#E!(E2J{I>+S)`V2W2t4^qBnNJ-#u{#GH67W zTDAev!vm2zOXTE?YGbKor$BaWAU9);e4C_A-(u-*LO9mOP|Fgh*5Ig^O>qR)|c zM%(l&=2@lW;~s4q%)HuYPZ4U_o2mUG4tqjv`W$&jwN3wGo->A8wvC~dmE;_hH3xqw znxaqfR>e&I+w?A$$$u7aT-uy!sAa2x=^tu{5vm!^s5XXLR_shf>{J3-64U3+T%7m( zxesA>q}p~*+y_L?W=zN1_AGf9EtwPj1^#;DC&gUbzRkF5o^#1#@HZ3@!!669Z4xcY*5KjfmMu5j zvZpdObzUDpZrO6fEz4Q?0i?AmH{7xko{SNw+;GcEn6y^qhFey`q_rwH+_DVIvxV}W zHM~2FKZ&$tbS|&2;Z3G+%a-@5c?v?|mM!mH!@EowRm&S{nqWi{#x9pji2#?MG0uK$qEh`rQH%9*0b^*8S z0+>4kf47bUX>XAQ+_I|?zdn#D8EIu(PdjkS9)ywDkb}0f+_FTfoj5#Al|eMuf>Ww? zrIG5Mf+jg=JIgIgkopFPpF*^df40L%DfvR}aOkUC+?zMW-(=3nEw`+Eoumq~UV&Um zClv13c9vUKjEo0hQUEgKpzSQTtQa{3vL%7s8ky@Mr+gWZ|N%sYS-lPg^)~E)8*W*##Jic+ z_@`SUIcPh}Ei0CK12BZ3G)p80ZD+Y<*?ejm0J8#6YF6Nd+_G|x4H0fxcAxFIe+#>h zT!vEJN4RD0g0XEhSO)W{?jzi?FCujk?dzaf4JY1|lDSw~L^I?sH|M z?sMXY2Ba#1tPRm&_sPn4oUSbG7|6y`E}09v54mOKb2Z09c4i>otNT28zBO_g0P6!# zs{4>zR*c*O*^WTISN9>eENejR0pKHoST03hs{35rsQZvxRx+PN)feF}nKvq7_ZfzX zi6mYPKyQLlcEj#NZdtK(7y#4uvJ`Y5a?6UPg#aww%TmyN$Sup}Q=0&|F#wtF!%mUb zeP}E9?jm5@&PZgA#HHd>%p=+!BbSOCxrEFymk@HxwmsIw-@gq0xv9&Ec@QYvvM@99 z|JRIp_V^*@mCViB|6eoaap%&LXr_DOEt;{{$g#La1=mRN|F>)8aDbiMg|2H#ypy0F@ zZdpv$ig0EHleJ|naUbw9?EW2pcffJL1(UVaZ6W#s(LV8SNAw*v|Su0{pFj;HKKrmS&w=B0BtA#i$4YlbDCu?m) zfeX}_tdUz*lG_T%LsVeV6n+0?vL@WJ?*Q{vs3AtE7Ead4Eh~0>RwMpW5_5s)?Yk3a zGvzjGhuXuehd1h+{XB*ne!Ayc_j~I$X~1k~76RdHh}^PVub2bdW+5e*4Ut<`2=L~dCL+u0DgWhHE9L*$l~u$>K&TbAKqHZ&aBiob>&1T&o>NG+J@ zjDkP68Y>{2>6D>>!A$3HXvs{63j$8s+J$h-qU&8cHt1iLTXrP055eC(l%)x}o^Z>~ zLi9<2NKFvA?Rvs3y9}~R19{`F$3=&*>ycZQIJFIj$Ek2M#q@<;Z!Tkku6JTedx~(& z?xyxn)I|1;Hhp2&J53a9*CV&AB-b909#mk_6n+1t>j}5)1YqWb8e)WMVb>$Ktk^jh zvC9c$Nz!UudRwk=%c83tjrL@hn~lbx+tIq~t;>axPT4qwU61^-^BZsxgl)4-6m&iE z%Q~>9WUYvYu1xvA4L>GL83?t$?{Jr&$n^y{DIRT$1J_b3>oF2XGSj^<0 z<2Cu#dV+-j)%+}!O77Wsk?hQG5*vEgIA^MbhD9sR1PToWY@A~|{AA23G&EX;hTAjF z1^7b4m{n*PvkDERR-6NQp`jba=Z?O310h357w6bqXh?D6y!ap<8D$jdz6uQuSE1qQ zDm3i6g@#?X(6H+kmI?tcLjQ!i>>+BuyD3dwsJ?jx--Cg#`avA{uaoN=K7zdTa}3-a zoL><)g4DYm9DeZA8FBB@z@IVV#V_b5#2-QGUE|MjE>ebcw_`z5Dvk6zWvSK3>>=Z@ z+>_BMH_`*1!H?nwrc+)%5raQ%2Y-H?07po7J7s%vBOs)^oeH9bkYqU3tlH`DN;V^o zkn4785{V&7$aOnsHlaAqovcEx+a=oUBKUJB{D4bXMU~G7vO=y~(bXnEa@~sB81JeK zxo$;w2^ezSiXIX$V90eVhDfdrxo*W!2^ezSieb9NRBVVB za@~rNc~vOZVjsCx``Yt4f zT(@FUv(FGPMHs>>}U+-z(n;F_$um0;Cn^x=%=!SVgYXi?2iPgH_ccM;`Dx|LwkrP4!`$-yR)NA1ZifB=&&5$_No*${}2Am~;u?R_JtqCX;R@m~@#h?vFNE8c!zON-*g%T9Zk)5=^?R z)@j5Xz+@Ow45B93&vm=c00WaQ1>90?YGN;}CX;R@m~@$&%|!746KB%Id#fP?lP*o{ z4o!$JJvrLcWYVn!lPW~G5 zWzr>zTfI$l7=Y$GDwSZ;rDg8_R`i%k(;a_-3{1LIypS?!C233sQAiGLNtY%plP;m$ zHoiAh|BYD%lP&?=>AY7~l^9HtNw?B6=@Q8u=c()(kS3FEC75&x;9hA1Fb2q^TWOhe zDeu)-t_K_hIhb@=N3yCZ2kE=E={Xd}8JkTe-O8zQB5-HB$uUdsWY1d+(HzMEH@l~@ z=wy>gxAI&OasPX|h)lYbhlxRMiBC63Cf&*hBwO4ipQfdcUI-DGbeZKQ69cudkrm_6 z6!*hfsYs<;d z>mhqnGRZd=(lbd5npC=#pweaC@s);@t{t~YpIZs~T+SuLu`eSU^tn7?_^w2%$fkNV>2oVVpUWchC5n9vlRmc+^tlA^ z?TUQ>q|dDceJ%lf?ZN=$yki46y7MmpfIgRb;QJVo2MqYnmm%KL=TgRZG_0(6;ir%p z`dqdgU)wNQr(MU04SgJh#>+{LMJ}_Gn^0?8f;kreoD@ zn{e_bgtyh@O*2pkA-t__SIk=mA-t__-<-2OA-t{bP{7_7KOVUd!rSVOg`8mv;ca#2 zW;|!3H{d*~?oz_jQwVRXyX7?yU-T2=Yw}0XpFIQq+Wf=mkG>0k_ktPpUw$+EJ@Uo= z$Y$`@6)a&q32&===C7pxJv3x>eZe~V+u}-DJtR-k{R}r-)k96XB)qM@!sLg9x7F)P z1oJKm-L=T%hlICXo0&Y2@V0BQN%za|;4d+0k?^)#k;(JgA@Dad`5d$i{$i6i65e(z zG5I+J`K;+ww3&G$;cZRlW)IO%!rPiI&0eFQgts*n&Ay<&7_ku)p` zZ);-}Ph z^|_B&2ybi6?TsUZx3%W>#t`1t_K|xKLwH*|Py&YVwsw#N4B>68x3z;MU-qsG4K!Xt8)((?^A-t^}?sM{D2ybggNWc)@){c^ZA-t^}BLPErTRT<)hVZub zPze~q+uDf|Fod_YlO$jWZ)+z@z!2WnPL+Tmyse!s0Yi9OJ5vIN@V0iY1PtMA?Qs$~ z(#a;_ZS5IZyc%;OwhS%iQ}@T-a}z{o6@H6o-{-FFYNANrDL1LgDJ9`;_iM6#2BP#D zbmQ(Dh`CKLs}&h|-<7%Ayz!N^Vizg&vq+e&rZy^v;+PYpbnsyE& z`E6Zq30U&mI*{K2HZrHqlHa1M8l8bz?CVx%kOVCGZQVi9ca4rEzYTRp<#Xt^I-@0E z$#3gGehZk8-`0`*76IR%h~weR8uyaRikVq9({0wF%0Yfh*#(sG0ELU-T%wX>zpbCG+i8*ddx3Ofutvgm4gqze&tS0+y9oTPqH_Scj zseH*L%p8UQ55l1tvrlpA$bO6Z;J$X#nWVDy!>eHj?6>Sf-0N=5ll``i?6svh_t;8*&pC)Q+IqD+3f(B zNiO@bFA@8cOij3BV((mLU-uN`&&$k&J1O>&ll`{tOqru|heb;6WRv~2?rfP6o!VHG z+jk9~0`-jNT!VOFzwMcjr6I$9+cTNX6*9|y+cPUd^~;3)wxUy3k3l2Z26rP4Ck}A3 z;>JZHyD;ecTM+0`i7T`3zeO+EZ+-t`cm>Nh9RzFHZ|e`uV@BePFD3hJ{qn4qqRpka zQnKIHUnnu9WWTLnVf{WWViofW-GC z`)xhgZ~2miVp^!K2NCs}KsSZ4n(VjrV83N+^9>9G)?~k}2m7sbf-pLp?6>uMB$lsd zSn!=I5DWHOg883W8LH65vu-|e#;=3l+GTCqI!G23Kxma2^(c|Z19#aqYTSoUB z^*jP#zpbKNij~ceThw17V!oJSV+XL6)=Dg2Q%M!W=}Gq6da&Q}wH1>_PqN?EgZ-9o zu$Tg|f*pPRX2gU2mTB{?mXyqlzjFQ`OZMCPtx{##WWTL{K-!0|y-52wn(VjrV85lE zZx~IFNxPKnx4pZFMyY-h{tEFYe7;?h@Jr>$Ekp_b6&!tGzm1p8b)0g!3d;$^uLa8q zlnp>XWIfIpjEg1IXydvO4H62|^b9o!qY$dU1DP#pX)D?u1j5gdIXfi0J#@AFw{ z!siod-{;d)-=BhGoZh*@ejAB+j7iSJr-MTF+j9|fG5#)bs^TOhAwprl-H5m?p|D#h z6!zPPAlMlQoraM8_BF)48^oK3iB|~w?I7x_b%y6M#eT~?sZ3-_vVa^j!k2<1Y(XX> zCgJnw`+T08@TX&VOjtiRfG7Oh<;dr(3I9E*1U@fL_?<}(4HdyxCnUEbH$Q7H}$s+r0gJr)xAF|bZ$;p1(VA*dsL$)Q5J6UAE zZLsXOI}p7qB_jK6gJr*c3(@a|B4NL6FzmM+KGd%eIVg%LkFei16qK?)9AUq0Xp$hV z2vz62wAR4x?-5?#S|0;oQG$<)>@{(P6uRB3Puv$jNF2jux4SN zz%~MMLkP=S4Op~I=4E`0`~adK4Mhd5e}Jfc@>W!>d@^SbMDJ3}>UFYipl0XHe^B!W zL^~%2H7~W9)iU38G796%U_~{7tR#>-S$9#jCbKPypehkvABfDnJSzi9Mtf%NqUkY^ zO>8W`QnAT1nnjz?wmK2g(*lH(MOieezC^**N<@?O()0)^g;a(de7 z7-zjDe0JT0MEK&5v!|5Hz@G3qkjw2I2iDF|91eGbq37)h?^Qz2%loW;r01P{AnLu} zCiIp!;ZsMn}nWssf|Y}@>3fQS%5A=dfsSnnN)zDw}kY(VQ`jH#-;>$ zk>f7Fp$VCB^H3*E$Yjc0+)jTQA(QFf;O@(0x)HIhMSsmKgC&vaPQ>m@Wcpk>b^u=k zx#)D0)nenIC{0hsmWkkvkCH7uns{0{=UZTmEjbQXlK8YiCOBm@-vV*hIL-jRCUUkl zl@*#ANK?W4Afvg>m8`P|@->lqi1@>^M)|1?O9>9X9c|LRu!TwJaFgzZH6}R58NiJp zZLNvI(8L2Y5$pyjxqBD4inO#@ck0hX89xAGF7mkXejw;9)n#OjI6nT(P)0I1m&MN^*zMDk;sQd@(q`D8ialbqwWA4q)AW1 z!hm`2p&e6O^00Cag^MrJI7LJj^~M3yROE3fe1({Z^Eb{oXqN4W4Zp;lmdC>-kM4K2 ziN;7C-S6s5mWPbycfHv}WB8KvZW!sd8TEo!qz7c9j7}LpA@B~O-5+p}tgc5^2Tqn{ELWo%5tE$5I*+;96~*(9U%*Gp8XB(RrnVX~NuFJyn>61EZd*2AH)*>Q+cGp==mxIIK9OSF(nQ6r}brvn^ z%v4brQ)ih)ZA}=1A!%3pLB%~Bhg7#_ko~W1xjU$IQ#8RyWLcGfZrb9Z7egS-v?MMOJgXG5gnJ17 zMFcrzWM7>MpL-e(d(}^Sw>9&NH(nrn2Q9c9?ppkds8KWr2d9iQsn^2i-h)GEAT6I% z_yMz0SpZ|0<&XD1{HYDxN7-8R zF>LyND+Fbp*8q=M`wBN%n*B2ea>FJcXz=$3dLn;n!%M*LyG^sC06EN@Uc^))YrZ}U z@PS=**dU?EjH9@1E89S~Yp{NlxbMY>qCGHOtPPc-=}M<~F+) zO&nRX`s|79@|p89f(W!EB6kpIM_he{acIHpT|0 zBd7iy0qSE_al0%(wc()ss@Aj)Re8fP6QF{9RF~{mwR2gZTF+aVjR4(wpGj@18>D(` zx+?3#spl=x^N5aH@J$Ab8s8IuJDkMg9PZTfUho&h-py`--+1Ey+hmcg34@(ga@`%M zi38g5UQ}v=x18MonqyUmhN@!%RZeNcN-PMA(~)$I9!q>`vZ6)rz0zO*A@K?v?s8p}v^a{|I;4 zJtq0Pjf29MEk+k-GN`21*TRjg8I#%iR*4wWdb_v{t#^sw{zcAwu0mn`sv2r;FB~Le zTo7`uQ?%9cVC77K%RRUJwJ;7+n!Ok)i5^a-j=bqzhM3F;4WKZ@U4~fcn6^2bj=Yb) z8?j$Mus8P6eXzVWe;2WP_Q8I!50YmM_!vDws9UlM-h7?gZdkHT?vbYn#a`Ca2P4`2D+UA?fxSMn8P>u4&;E1ooIf zMGgX(M$Dt6p5uZupbQFKtZ_#0r#8F*6UTFOz_>7fG!4LZ2)q-mRMzSbF+`Y{HHGz)K-Y@N{KsBoR|F;Mt2cE2hq!+IHTVdhzsJs zZGhdCc+${fb5W{je|N&NF?AomcHhrh|4$bGIQxlQB0evKI(}AmE zQXHb3rl`COXZ#>E(9zOBhoExVK;cb1yz^%`&M_w~nBla?Cv5P1if_v&@Ga#D=&x-$ z^>Lii=t$k61UEsQN?|B^c@`&Y?G8XmokB)MH@H3qzmpL@AAdJ72e~Cit(bUk6C{<+1QO@^XB1Qf1Xau-)Kg9ERBF z&53Uy>i64to_*tTqPKXQ>-E28GGtrxTfln%Up4%<<}=>ByB^bwjD-pOck0^f*lgTN}ItEd9dK+=Z9*yV|@OQfe1$GMSU^aTM z_sw$D1w^Yuu_WGBw6}ZTWa6PL%-sa>t%USoCA2;2F(^OmJu=!zcR})8V8D@gcA`ht z^k&8l^eM0KT?6?Bu%ALhh5hni=w+|h5qMmLDRPNIsTEC)#EQ_ zthkl(Rwb~30pdd;nn1BsLwmmh+O^92_I6AYk>p7bog0XyB#QGdr?m5H05&M^b(~38 z0I;<&NU|%)_T>)&iI1pu-eXMe0`m2J(N6n^7Xx^(@-kbR7WxXHUqhf6D|-{CXLN${ zu1B#;GEf1ZW4F}9S6(L{(}ev2zNrIXuJU&6!tfFTQq^1b&u0L@hf(jm z1j}F{Kzuwnd1P>j9yRbv)V4Bcd@FS|W*N7HXz}r2z6lqd;=eg0L@xse6smVmh?X+& zfZG%%ev$Hije)p11hDL;-jiN)0M_7BsOT>oK1!kxN$z=YN{e}-U#+~v%XoAHSv~%y z2aQ2%JEe66kZ)36ON@MDAe$4)LnCR`S<3J0M>nIsbFkP7C|8KmI;5oO-;KJC-ln{2 z4|&-P#FhYsJs_0bj}oti>`}z?4$@eVVbmz^P~N+j1MohCUxWb3u>pX_>rt#?;A(+8 z9{f{9GKEjG^$*a6v1uv*8?YZ}TAn{w-k+GdsUrY8=`WyWv^Tl$2{*Bg%Ovnq$MHUw-!cTYDn*!3c}A!-B=lR^}0Ivq9K_4JpBIuQuok){%}sJqy# zYg}*fqd;8&#B~A6T-1beDZ0+}YAcZrtv>|7Qvpax(;CnY*So2S1-%cz7a>Sac>{XZ z^}fB>f;^<1hrh{`44ek^57%q)g9UX4pnC|CYBHdbi08gzK?egcDFm^q9AR9F_KbKt zmfF+*6aW?mAS=h$F>b(>LQeC`A=^N?jG$HgI%9NL#H;<#>fa05gQ32WkHu#vHd_7H zA^S(DpU2mvqthza^+cTsAybqevcT1e7!|>|5W`=}?&Oh>DLS?0>J)fJ#M|84U{oc5 zwFFDfgpVnDT*MnwW{r)3Ys-3*)a)sS7Dl9P`q zx)k!Kt^9V#?oG+b#}r*1@h-s$&N8T%aCki>Cm&OEUBvsxY%Bj7vL91&@-0QLjdbuh+NIbFvdNxbqNqxH9|T5?<~d(5%08)0Ne%PwgBK{49tVh`;F!8RV;q zdKunlJ5pNeWy8T|B06mPQ5!96Q6>PQ@B1z?k!e1s`Fp?X|O zqg{r#9s@OjY84JwQX{M)rwY%mqP;S_c3rL2yC8p<7-qp(70kgIUNYC(c?0tI8`}{g ztLW4WkMC_sV!soBIg2gp)H2k=+zju}Gi^f6A!|js>FXc%L-9_{@Mg@l`n@3QPdPK| zWQhEn3~%#uR(}#?(_M5H$nb8hv7nqJuK)O_=Se`X zXLxUaWI;6m3~K~3S4_DKW(fTK46nnJ7Cr;e1tC1Vv^fU(RfacnzC~UP)VfAU3qmKH zy2*m>0$^tdN}Wc=Ts-PMFvcR^2I`X#DJAybVJi-bdWT$v&hsaPv8XfOA3+Ev46+z*j`Q ztXnL61E9Br@U(gp~{a&~r__$bvot;I|NzR&RoQD(a2GBw6y= zBpb6j{7ok?J!Q}+RLh@H@6HG9HK->5qeGBfw$f}0d_<<#^?nPV4e05O;c14C$@Gd( zu&G}P)O8_JY??|Jn`dWweP6K1hk$xxUu1fviq2)3-ebY_`5WLfbAqyo^|YE5_)VGK z$}emZrGQrM3wMNhExIGq+i{ac4g+d(W8~iT@p7hjAWnXn_n!{v@(@m+y%md{jEbJy zk`?M^{J^<#w&(5o(WY`cfIC7pNq`5(AX|A}ZiP)?4^SV4NG4!GpycXxodx{|(b*U@ zO-oBI1nCdpg?WhQeS0M`))t6P0m{jk`UqrGJ#XR`o2fyNO$g+v+P5<@fuHJm%Q1jU z_gVnxrGEiWY1?#Gd)`o79Yk>}l%Cv=Vp;=AVmEu(^w<3=opUE1vhSsaA(q;3GnvuoBaY|1Zz$hsmGh=p;Z_?gzeiDgN-h zxfqK?=SJWk{0kjhiag)j@S26c4(QkWfv0syDaCN#`)QuliRWV}3IDyig1H-(J4w^< z<9%=0;Z~;)@Q3e5M~cEj&{=%%wIZu?BJdaOM<;bRY|@$QdkyDWog0APu^$~7b$GDp zobNZ;UT$^v0RL5}6C#z2I_;O8hd%tG?_r~#)Uc0x*jD)eb-TAeirxMd-|GuiHcCC< zx96*$dB?l-~a zHvFx8BUgM%VxISeSuj%VA*)EqNmUc=6!Tm}Nxp`_b7UY--R;YH<75cDF6Nzkl!c!P z=+Y1#UI{Joh?qA8vsN*@38*_lWLlMp%{eiz6|QfBd={v;LL|>sn|gm{_SBen$6Aa0 z0jOwUP`PQT3vwN7?y$%Mfa(?^!_?Ca-x%|1J6iZCK#$rN?qrDJ`(xhGnHG5(P|HGO zT4rA@L*919ysfxNkz!p7)SV$REwh6BH0GUnfJHtB)O#Uv@5~DPr2y9;mE>H3%?1_`}c)A8G@V~_x|T%i+mZV_d{e_W}oII?YOviA!Y!Q1%8|< zfnmv1Kw4%6xjOFkINT!3fvOLYduLYQSI50qq82_5(3$(foeV+V9``n8S>z(1R)xs4 z%pQ+B^XMaS@05ov@@Am6g~+tb3iAE9SAbJiiuDRmpM=Q0Gb`|~xpnML!NnY1%n;$nzjcPGa zD?%iTWkKg?@1{E~XfpuYLr`eWUSP%M2JLP9mxaFy=y!hsm;PltnJC_>y&>0I#UyT( zittZWh0V+^?KS(6lsgNJ&Bkz(kHRUKo@Bn@#ZcTU zfZU3IVmStAj{4?$B;&svzNn9}W6qb)T`nMTx8vBHVi zR{=OTW&M?kli(I8wr}T`pTd$?6+GWujeQ-puoPnh4;a@J-_rArQ2Jjj@nEC+eTGg{ zS?(V&+pc8;Aal>hLqG3i)$(;L9XX|hc&94.=10O$<--81KgqJ_#`j>=hu=qm$} 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 DFifAU diff --git a/shm/Store.cpp b/shm/Store.cpp index 28f4f6a7e..1902e4549 100644 --- a/shm/Store.cpp +++ b/shm/Store.cpp @@ -4,10 +4,19 @@ #include "Time.hpp" #include "Store.hpp" +constexpr size_t numberOfPossibleFruitCargo = 4; +constexpr size_t numberOfPossibleAlcoholCargo = 4; +constexpr size_t numberOfPossibleItemCargo = 4; +constexpr size_t numberOfPossibleCargo = numberOfPossibleFruitCargo + numberOfPossibleAlcoholCargo + numberOfPossibleItemCargo; +constexpr size_t maxQuantityOfCargo = 1000; +std::vector possibleFruitCargoNames = {"Banana", "Pineapple", "Apple", "Pear"}; +std::vector possibleAlcoholCargoNames = {"Whiskey", "Rum", "Vodka", "Beer"}; +std::vector possibleItemCargoNames = {"Nail", "Hook", "Screw", "Spoon"}; Store::Store(int money, size_t availableSpace, Time *time) : Storable(money, availableSpace, time) { + //SetUpRandomCargo(time); storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); @@ -136,3 +145,29 @@ void Store::addStoreCargo(Cargo * item, size_t amount) storeCargo.emplace_back(item); } } +void Store::SetUpRandomCargo(Time *time) { + std::random_device rd; + std::mt19937 gen(rd()); + std::uniform_real_distribution<> distrib1(1, numberOfPossibleCargo); + std::uniform_real_distribution<> fruitCargoDistrib(0, numberOfPossibleFruitCargo); + std::uniform_real_distribution<> alcoholCargoDistrib(0, numberOfPossibleAlcoholCargo); + std::uniform_real_distribution<> itemCargoDistrib(0, numberOfPossibleItemCargo); + + size_t fruitCargoNumber = fruitCargoDistrib(gen); + size_t alcoholCargoNumber = alcoholCargoDistrib(gen); + size_t itemCargoNumber = itemCargoDistrib(gen); + + std::string fruitCargoName = possibleFruitCargoNames[fruitCargoNumber]; + std::string alcoholCargoName = possibleAlcoholCargoNames[alcoholCargoNumber]; + std::string itemCargoName = possibleItemCargoNames[itemCargoNumber]; + + // std::cout << "fruitCargo : " << fruitCargoName << '\n'; + // std::cout << "alcoholCargo : " << alcoholCargoName << '\n'; + // std::cout << "itemCargo : " << itemCargoName << '\n'; + + + storeCargo.push_back(new Fruit(fruitCargoName, 10, 20, time, 15, 0)); + storeCargo.push_back(new Fruit(alcoholCargoName, 10, 20, time, 15, 0)); + storeCargo.push_back(new Fruit(itemCargoName, 10, 20, time, 15, 0)); + +} diff --git a/shm/Store.hpp b/shm/Store.hpp index 38e7b787a..3d9ffff2e 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -1,3 +1,4 @@ +#pragma once #include #include #include "Storable.hpp" @@ -7,7 +8,7 @@ #include "item.hpp" #include "TimeEffectable.hpp" #include "cargo.hpp" - +#include class Time; @@ -47,4 +48,6 @@ class Store: public Storable { return out; } +private: + void SetUpRandomCargo(Time *time); }; diff --git a/shm/island.cpp b/shm/island.cpp index 222a074a9..fa3088749 100644 --- a/shm/island.cpp +++ b/shm/island.cpp @@ -1,5 +1,5 @@ #include "island.hpp" -Island::Island(Coordinates position) { +Island::Island(Coordinates position, Time * time) : store_(1000, 100, time) { position_ = position; } \ No newline at end of file diff --git a/shm/island.hpp b/shm/island.hpp index d73fa75a5..b38f9bf54 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -1,13 +1,15 @@ #pragma once #include "coordinates.hpp" +#include "Store.hpp" //Class responsible for representing island in game class Island { private: Coordinates position_; + Store store_; public: - explicit Island(Coordinates position); + explicit Island(Coordinates position, Time * time); Coordinates getPosition() { return position_; } void SetPosition(const Coordinates &position) { position_ = position; } }; diff --git a/shm/main b/shm/main index d0a9564f93bfff5dca1f8d92a82adb15904d78ec..759acbfef2911b9be17289912304cff0d48d569f 100755 GIT binary patch literal 180744 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ĹB0?G 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 KR2yZ#4*mz;4QY7* literal 823736 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

    O5u<{Ga+=s#}!I#RT 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�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 z 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

    5VJUGxBXl&o+!J; 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 diff --git a/shm/player.hpp b/shm/player.hpp index 62f013a84..e59506346 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -12,7 +12,7 @@ class Player : public Storable{ public: Player(std::unique_ptr ship, int money, int availableSpace); - ~Player();//{std::cout << "ten działa?(Player)";} + ~Player(); const std::unique_ptr& getShip(); size_t getSpeed() const; From fd93d485201cbc8b17460313472fae41ec8ca433 Mon Sep 17 00:00:00 2001 From: NikczemnyOkularnik Date: Thu, 29 Jul 2021 22:07:59 +0200 Subject: [PATCH 069/151] Added player with ship --- shm/Game.cpp | 10 +++++++--- shm/Game.hpp | 1 + shm/Map.hpp | 3 +++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 9fe36b9a3..11afce9c4 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -3,7 +3,9 @@ class Map; Game::Game(size_t money, size_t gameDays, size_t finalGoal) - : money_(money), gameDays_(gameDays), finalGoal_(finalGoal) + : money_(money) + , gameDays_(gameDays) + , finalGoal_(finalGoal) { } @@ -28,6 +30,7 @@ void Game::setPlayer() std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); + std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; } void Game::menu() @@ -37,6 +40,7 @@ void Game::menu() } void Game::printMap() -{ - //tu wypisac kordy +{ + //TODO:: Make friend with map! + //DebugPrintIsland(); } diff --git a/shm/Game.hpp b/shm/Game.hpp index c97559e5b..8cd3c2b32 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -21,6 +21,7 @@ class Game void menu(); void printTitle(); void printMap(); + friend void Map::DebugPrintIsland(); private: size_t money_; diff --git a/shm/Map.hpp b/shm/Map.hpp index 3847b41ee..6b8021dc4 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -12,6 +12,9 @@ class Map { Island *getIsland(const Coordinates &coordinate); void addIsland(Coordinates &coordinate); + + + private: Island *current_pos_; std::vector islands_; From 393628a06fecaf71424967b951473321b5109013 Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Sat, 31 Jul 2021 09:05:58 +0200 Subject: [PATCH 070/151] changes after pushing branch to gihub --- shm/main | Bin 827568 -> 827672 bytes shm/main.cpp | 3 ++- shm/ship | Bin 827568 -> 827672 bytes shm/ship.cpp | 1 + 4 files changed, 3 insertions(+), 1 deletion(-) diff --git a/shm/main b/shm/main index fb6ff9f31c12dd75b54f393db87d1fd7bdcd8a47..e2b455a97f2c02b25029074bf521d450b43d0e66 100755 GIT binary patch delta 16179 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 diff --git a/shm/main.cpp b/shm/main.cpp index 03a25bc8c..8374d8711 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -66,7 +66,8 @@ int main() std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; //No available space std::cout << "Player: human1: ship cargo: \n"; - //human1-> + cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); + human1->getShip()->load(captain->getShip()->shipCargo.at(1), 1); human1->getShip()->printShipCargo(); response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; diff --git a/shm/ship b/shm/ship index ad1222315bfbcd28565dbe029b654d360a77457e..e2b455a97f2c02b25029074bf521d450b43d0e66 100755 GIT binary patch delta 24807 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 delta 24275 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 Date: Sun, 1 Aug 2021 17:51:33 +0200 Subject: [PATCH 071/151] working on remove Cargo in Ship class --- shm/main | Bin 827672 -> 823736 bytes shm/main.cpp | 51 +++++++++++++++++++++++++++++---------------------- shm/ship | Bin 827672 -> 823904 bytes shm/ship.cpp | 23 +++++++++++++++++++---- 4 files changed, 48 insertions(+), 26 deletions(-) diff --git a/shm/main b/shm/main index e2b455a97f2c02b25029074bf521d450b43d0e66..d0a9564f93bfff5dca1f8d92a82adb15904d78ec 100755 GIT binary patch delta 76666 zcmbrHd3;RQ8~^XUnamA0l87Xd$w(rbAR;0n2_i^{JqUsz_Ry3d)DkB4HH3?!YKhif zZDT3wt3+$7hN7vaYDrNIQVrEMMa}PX&bgC}`S$z!{qf7|HQvv8p65JgKlj{wr_+sJ zL>&7dB0of`TC%3eom!U!_P6Mg>MDjsBxLZUg@OxDi+~=V85vXpXIQ9C5gXNgi>E4Q zTd3|6FE@> zUp&kWdu%e49OwE%8~wvCxc-=p-tQdO7uo1{mvH@sH}xjr&->hP=+WLO!f zCQZ|4+32Te`WZI*!CC>iHu_>spKqg|F+Vb+@!4L{8t9BlN%G`)+BevhX2w9%W=ig+MD8-w&E*N52XJvDu}jXq4% zN89LMpW<=iZSLx@GK9MZlhm*hU+tI^v5)PmW^K0;>=)r^uJ~K zjny*b+GL2;cC@87`eaR?Z=)Zp={MTwb2NQ{wVsauKFv^QZGgT=>xpAFdduo4ve7>& z<2`Y~Mj!eU*I%*GpM##wzcL#`sa9~gjXv^E9;nJj@2B|-8ZA9)sc49e{)!;7K;f44 zZ^>ZUO5<%ZlxZ1~ZS>(H50q-7w^S&@Mn6OI&#Kn5_TwC&DRQd~yrnm^3`=eFmWpn) z(N}2x1vYw1{6ZW3bCZ_gn2o`b;ew6+f*o)16&t;!#bq}7X4=`M+(sX*rA-dGJfLL= zENM^8fm+-0&S3vq3ZnWTe6)j=kYwd=txx|SdaZ#bHnP?k^8ZJMJ^w>r^gr~a|3hzS zIc-2)I{z&#xS(AN^e`mgWBI#crFXI@!BQ)ID=U4Ol|IHwUv8z3wdm>mtF$t-vlzfC zD}4tmy^A(vv;`4XdQU5TV=H~UrniT#iqo`mEO)u zA8w`BS?Qy#^t5oxUwn<;#E#<@LsE@_6>iZdTj?zmmD*CR^tCL`V7isQwv|4^O0O`z zw*IrM431VAW?1R#Sm|@E^v+iLrB-^&yrSlOE4{0g|3;IQp`MkYz)J6CrQc(vcem0P zTIoHk^vA69^{wC3G2Mk{@}mA-*?{bA-x zD}#?!hAJz)ua#cVRtIf>pOxOhO5e~*?_#C*uhwJyJ*^A@)dmE$(g#}UL#*_{R{C%& zeIqMT^yyamFe`nAmEP3c%8+Gc z2)EMDu+q1%(&t*~TUzOtTInOL^!Zl$D6Z%0Z=;n#yS-!P0xNyARiHgq`ZiYjLMwfo zmHwEOzP**c$Ruk!9Xa)`=zXZ5QJTZra7W+XqL8$xC|fdLNm_8mfuC&6t?u>|g=glV zdp!>|4S(Ct)I$`UeQ}}q-Pz{_)NgltGd;#8J=7-M-zMGDCY@-LZfBD=wX#t(vq=Zp zq#M|z-EGo!Y|{2N>3_Pu(LhtsA8#sxezi&eY?Hoalm5;oeaR+$)+YV=8)=g{=+ie8 z=Ae&k(mQR^TWr$nZPIx*=|wi_Io4?t#(bK!g3bY(^cb7;P@8mrn{-c`bfQhVomJXI zCtWKm1x+`zNe9`a8`z}XZPImY()Kp#f0C-_z&JMR|EN*0^shGQpKa2&Y|`J^q%YZ| z&nBsVNBOkC9a2(WojYeK+8tOe2xj+#@O+++cHVyd#;lUCTTN>YvOBuP*qH@EZJ6e! zZkydbz#dtAjgL(z0_&%f2b^l%=kpA0_1tQ!mZ;lp0P_f0>_V zbl0-X!|^C-*%xrX!rZ?v-#bwqzF>pjsG&UOH@MpHm=~&@zA4|5b;y0;cu{&G9Linv zhiLp;5X#k$S?w3%IUH(#0V>pfY?Yv{S<=exsn*n6OZ=s0f+{Y3BvlHBeqFl6M=VvR z?H=m=10qDNVi6jZvIv<_AwsRvL%;5xSKEUQ>59avq-8FMe!CZSX?Oh6p@kS%hx07M z`{&h?Lzlga5ozo^7HQzu%&-M2M2h)Z{rqqn@r?TS;Ue+NL&rbO6veL&H9ES;&KtqY z(`K_gJ=vsbwT_i%-~6n4{&7-TWd(6ptM8IO8Nb-~kh=-|dJRdbT(K4~fcMvREb&k4>oo zDrCAxV`D%+n20eCRlA()DjrhToEspPspaPe>5n1bJ9X49=f_F?oz=qgO+7n#(hOUY zFd38b7R6H_`&Ae9clZEl7n*t!oaf+^{H9Nki@NQ?IO%>})#0nArpGu7!YB1jpP4wa zCaqY+aw04}|IzT7Uzp8Zmz}XHu*uuB{PnE-yu>0js34mAhG$aC(4texxSWFayBI`yPdS`b59t`2mC>;XIzq2d`iR8y^@@o!XX`wEos1$ELSU|7Vr)a!iK2jzXi;6QJ*59 z$ET|E*S@`uOtY@x0X&Q@Z_5L2!fi6G;ZUo92gdzN4Ii-y8lJRbeX@GGxSq7`u)5}J zUsL28k(<-V$65APo?7G|c{Enl=G$9 zN!?f6MCyG=yqE)9upGhsh z;IMy$#Es4mYtfaXQMDz?sBeS-%UsA*v#3VdsfnsC`q z`t6`vbj8;+dkIgA&T$E@rJ;F{kQ&La9Fp?HXBgXf$^*DgO)S{nErZrf>uRaTr=dr9=(AFYa-A_iSuS+~4 zm%#RL-2ccJ`)?V?u#Eb4G-CtxYDqom`3UvYcOH_F8BEVdz)*tXZ3?WwPXCa;HnP!| zQ2mbo)}NsImH(~Z0sZ55Y=W$&%8^tV!1n;w##vO`lWOUhu`a=&1oG}1320}zFPxI{##9dJkfvTe8yxukek`5#QIqs1p`-5bH`@S6cn&j-~+FC9#yizYSyhFkDH7_5hu1z$9{I{0xEUcO$vc*93^ zxwTaC8KQ2w6(D&HR!`lEmYNS@)%Up_;M58yG4wFY?lp*2zbKVe|M9?oDd8M-=hc6S z8kAp8J#_GP15p|`P`!Gmd*m0Nz#NlU>8uuEd>f&AaW8Pb{6nf zH>vUWnoH;Vsgv)umg4rQ`|kNk#(iq>y#(p{Ue)z}w8w&~6kRaw~=g^lZ@ zHhj?7?F+VQtGjU7_vJ-()nN}Bx&DI6p|4vYIP2>+yH)a_q4a#0y7lj7fy*{yF~{~n z$UOI^@6jr>nhq5fa~+yO?JxDl?MsMyYl(ARZL}7=&)mf~S6OTr%2q1-4P z->n9h`#RnG01mV-k^TH`wO{#&HrZ6g=fy9*YdTPKnqFi53fA%+z2LpzObE7|4nx%r z3Epb$hj*n-J=G@p-;LuuSG^`l?gO5Yw+AO9L4WxlVvJXtIibyYw4puYOa6Q6K1ol1G` zO;*uv80I9HEY=tkl&r!uDgpKR;liZDiY* ze?xPx7+R%{NN`KYb8ozY^%15n9fc~bQb@8@GZmF$>IFq?Fs3F{r&-r;e;32ve4LjW z{;XI^{YriPtiIHAvs(Z6NliAh4Fe}9w&t1lTTFGDbeJkM zZjT^fRrW?%tSjPZMLp-WYw!aMk2hJ)VO7=VF!apEj%wxeM$!tM>h*_T@Y8dwLPhkM zbpt$VKsV*Nr!J*v6+?mIVmhkB|1h|H)PdH5Hq}!74th23kNWKm-2L7X?tTw`kL`Kc z%W&aaFsDq&_B)k?*yRJOW0YxK(22#Un?p0_waU|C%V7o(h5Fa7@hJKMJCj$5VeAx%`5MJXy>{lE%+il zX@x7g(tHhg{*T87KCr^{dBz_ybOLaR^k!Wg$Zbue?wFSO@fPgfmn zI1itX7pZ)fv96ig-UP3_R&!}a1Y4(NqKBjv0ydryS{Hs~LPdCgwue*oe(;Ru(9S_e z;xLLnmQ|-Iw?nC|x^w6(1bbu3I;^Du7Mw{{3qSHv!~dFMpSuwKsQ$AspbPFa@fH*f zdUqKbl!8Fj#ePqtRxcn-ac!DERB357(>`b&pZ0@>K|l}2S*HC#q~Tb}Bj&XWp+!vP zQ7dWN(Hplod^HC068PzMUVVpXrYKnU&RxF?A+HQS+t*ZMwT1s!H#{J#Y z)e8>R*TT0|b@ty4rC^m^3r}D*lxMc1rMVB~vwAOGAS>+KYm?jDhFuFkKjIn|PwSu! zXZ<$FgXC9V=36El<{GTiDiP{$yzbJT5Id*^!|m0$J9TPdQ>Vp5=c;Kh{G_e1>f9IU zl3T7?_F{l!%vGabCP+u-BITu$mwsMDcfva+@rpB{^Uo1u5s9b7<(V<+m6t)vrM0kP z8kbj)wXfXWKB1Rqx_sGkKVSYm%&NJ&A@~>!kH;|eig>o+b)|8&je&P|>z(TOSAo)` zwd(3u-n!8=YkJof((h~4pI&VE*a!Pxp|_Vw%h;-s5Wn0#rurIDJ`=JwO}A2U!I|hGL%($P&Be+Reha~kBd=9oWVCb$_ajxd`Oz#}cq<^nfCaEdgWLvUq18D%yngA=07 z<{6+4ZP^Tt1&ctxShM*)xEw6^5`-_n9=?L$j){~BP6jsz;yrOLgcCRm?*(6hDVUvw zA%d_3%*U-&2~C5)f`?HNJ1m_Na02L74{w;UtlNU!z;rMJ%mwqo0&oXd1Re*=z#E`| zhP(j%+%R!nuvx@I5e}w<$zU#+1zrI2!E&$=bU=%~p~Um&V(il4U4Rpb&BnNB@ZU)o96X3^S8Tcot^AvFrus3yazl8UI1T%5C-6on-9JZ7J{8|LM{a>!74BikMuq9ZHojj8k`QMf{Vc!U=g?xyapZv z1)TOv!C;-z_TN%^AXz(L271Z}NApnHFeGvfs6D$G?`k~9ggP`DpmZYG|!Bt=a zcpDrIUdIjMO0Wvt57tgKn~TAwUG8d^;V>63^Un!AS4| zm;ycmv%wo9(9>Y>NDNf~*8cGY z49`M=_#(~)FdV!ICWB8wQx*hyG71ETgN5K^@CsNAR)STaOH&j$1p&YoU^18uW`T>r zeDEi*5OkV~{9puF3DOsiE}@vbU^v(f?>myg)M;j{e+W~c$Ok_G3&GRi74S7!3AUMz z0L`$D!EkUim<;X*v%oLF=b-QoCSMqKNH7vi08_w`U^ci0TnF9;4}(?jVEvaMqr(hL zj^?Ww8g8oY|Nx_leXmByO5HxLuumi$z@C;ZA-Ut5#buBT5OA!D} z2NS?Q!3=QSGVBB332;An87v0NzzWc5IrfoAOg=Ca>w1-NPj#=I3SyI?r@1(*z$fmvYaO3WE>C0GdF1FwJ~d6+ZcD$peg>wOh^7Bqn= z;0Z7rd%#kDdcBgJ-}B z@ILqg)J5aqLC|yHb1(_?*@&J4M}kYizVD*pCI}lK6oZ$*3NUyRx-Lc#=7QniS}++r z4rYO`!Fk7Pt;P0h$g&cnYBebl!ql z35J7iZP0Qs65I`@fG%4R02~0W15bj-z?)zxSa%y%0oWY$Y>SG6(O@B%3SIzbfH%O6 zV21*;$$SjLlmY|*mx5K`CeRbhZK zK0MSM3B@e%6?hUfVo01mMgTCFva=v;1k=F_U@rI?EC544!OjOx z2g|_VLJUC{LFfvGfE&Ohun^pgcz3}Qpz8sYn`lDKA-sYj4m2V_3fLnFd;CFk85jkw z19QQ{;B~MBoO=j829|w_gG5(s*++1W03*S4upgM*4SPM91%3u*q9T8TE5XJ`>H3GT z7D6$&3#-od`03oQr?2M>blz-ORacR{%L zAM_wt1*U-^ComM?E6}tVLX*$YC15sq6AV0w)zAa87z_kI1rxx_;9&&550-#0z~`XL zDXb3I?_xPcacq2Nt$B=`!<1&w{NuEDn8=U^K6BbWoe05^j{ zKO#Ta3A_o81Yd#kK_hx(GuRgV7)%3;!5q-^BZSQmo=`;!T6z;*4_1L^z>r($dN2;u z^+(Tuf#Ckz7*p^8mb@JO+LR zmV&RrDsW^udJ-)Td58*v10JD*VD@9!!D7%jSP(oa&;uq22@ul25-=CM{wp$qyPlvc zhhPp=V!40^pQ4ArYhVe8FKwHjgPlRQG#oH~$Lax7!4&WwxEbv9978u07aK4T+y|zi zA~(TqXHd{<2=~GHf4~s|Z-9ZI-=FAmFaw-{KrjBnBm@1cFv-ATFaZJE{*4L_C1LeN ze?zXH+1wm;6B1+>ia>lK@mcCcCe#;$#Vce@eX+jbf)Sgf9d+P;MqnjAEt--m0{ff4d{lpXR#9+U>|)zoZ01?o(siKpnJJV4r)rYCeGt0P5s z`)D}dC2xC*z75M@3xQ2YbaGiNb*iHuj$laAlIed!T~0oNn{=}&8HNhjAA{-|`4uYh z8mZ$2%QbG%drDaMO-U~=(MP;MJ-qd)T(t@+#mN_21Y+uxuEZQFdXXz$qE0Mej-=8` zb}@)Lsh}xAE&~ZiqV{bcv-uN*(yb;XC_0E$B*=(* zjSV9{%}`FHJ_pL#9_Xu zMz09kC{!nc9FIZ2E`=>Mf}EtfZV_Z~5Of!~?lsj7iy%IJ;8;e3KBSf)OhhcITZCAY zCnLyKPJ6HzFJ zTGDBvCyJqoT$)%MNvm!k1xVCB7^&5NH~H8f?Fwr}E>j+BMNW1`zmzK2=UNe`0IZL| zC~~_6bVf(qhDMR)Lqvm9HtbWP%;vx7a(hW;1t4$77_x~nA%-&B80@eFnNLOI*kk zV|m#+?DGpXeIVrdv1D)~#DZ=XWe&=xTlzxSrfBhZKpq`ShsA?bHWD3_`LWtqyw`@z z4iLTc74YcOj@QPqE-okS$gl`R35A^5j@(Fu+ynB&cH~H?=tBxZFhyeH_-ZbqiLr5H z7+tt!G_gF6&5I3D{(+p|e-9|`#-$!m%WMGC|x?O8GQ*^n#9 z-X^%hydsyV^)NL4@#INU(Z{|N@)%M#6zVF7v*Jk@)Y6=I(u;CeJd3SQb;F%iJXu9` z1@XN88=>18PcBp485Yi8k~{FhdIg)Y1Dg=RMt4C_I%t<`%N{(I@2`H?8`{Ed=s>1~ zVhug-K)c_A><<+kBx6U~=l)_j8QM&&Pb#U-u@mi7e<{8b?NDq`ok(09_A?JbXxE7j zgpV|`6PZhy(~0h=KGJ44auTea-pOq4M6X+S$OELs9I_@%^d^2`xNc^X15}Qu@>p^; zO!RfmM95KGN>abUu39!{y!1hPFWNGBSta2H65gega|5zd@jjs#siL;i}JLZ z3vLDM_esN+s7fX2Kv7OcP&^>>DE=VZ0m;8B4edb+x{12P{WxFkN->)oSjSAMiCGN$ z4%jDK+ocTVK#yh>_~%d3FcRS_NC%+yU3h;Di|#*ULL?ftxIeo}>9bLUMP64edyuk7 z(V=!An)M228eJFiEK&?Z#T&Mw9oK{GYl86z^+AXAAj^k~hM*ph>6@+Qn3B~;6T4uM zR>=>lOxUlJ?X7UWNa{_uIBYSku&u=RCJ$PnKE=I>J_;P2OoF4ZB0BaV-H;B}quxoh z-jQK7ajlLssW`bdNukFjA1Nw@d`$C1Ax|Hghd!jXEK%*4MtkQ3@{CU5OZz6|St)D- z40;8b_IfgWYVvid?p327Z9|{d=+!^TWQrGL4Min6K=FiJrKliJDR9V&7JdEo{mo`n zqbA^JK8%PZ7#rffMSs#a8V$xE;JWLh9}S%_fbUZaAv+AJ%fsjubTni{rB_q?g^(-BXEa+a1g97NGf*J}t3WyA=>zCR z-Jo{}z%hRSiHk+=P8dLj4a7QzDg%+IYTW>OO{eSm^H@Yv29n!U9X^oWg7`?&2NIt) zXj+R@-h|LVK?q3Y$BG`1<5T(dITP}LR9ZO?SBSzH6wx_VyR`j6F1A4|_aXd}QvwIS zA*><#=a8L;@MD2nkRUW1!pn(-TyF@!PUg17buxU27OYDMzfRIuUBWQlM*6x-8pbaI z^pzL%^de?YUwb_vb=#p~GlrAkj@S#6+hNA;7|v=!vS{Mt;dGbAn|#UN@3nObz->$j3*r>oX~eN1wgs1(7nEc*Ub{=m5FyC{_dFM-$GY z$m^llCE{tKuVzW7iR4l2ibZm1B54#Gb5cMPv7^YY4(PvmqsTs7(?}Urt{ufrQX4u# zUJ7r_cj8AAvqsTT^_O;`Bzjkt-VsBx9|?55eQHy>gXVR_5_?QO0;H5gav76AnwQ9~ z0rofHQ9|l=f=3ByLGg(6;h4;^hT{Om4RV#@0eQ+%Hvy?i(t_dz=>zyL9A!4QwC>yq zH9JKbwvdgZ$l3(dS3ic`9g-^vm~O7L2HvC+vgE26ToRG+8ACi0QQhbBo_|lwHP=t&}n2Xm|Taq2tKy&Zxt}acqF?E0AYC8Q&Gz z9m8>Q;A(v+w-ql zWCa>FBtgy`NAyW3)HQ?e9BwVJ;c9Xuimf&0YfC zbd*CM0z8Mj2{F6DeldeibL@P>$X0rY%PC)DFLU)x9BwYk$m1F7b(Nu;;ksb zEDF@*=a3Cd_8{@yMTg+K=(s6#OpoH^RDE$AUwx5_#&f6e41R%6g&dFW=#JqYK<4$t zUbGRa(PVp1oM6k6MV)gc;;+iULqQs{z8CqcJ8sK8#;XN=8UgK%~@hE^MI*;dz zC!rMzC);~t28@O{W)j)d11*>~i5#aqIf;+K8Q2a^;;p(5d5iBT`jFjTwo{ds@b4=Ak)h6?AeAs6Y{3<^sc}Vv=Z_e8tK@-WUUYLNo zN#r0{I|JV=_y+NG1>`pMbZnXL$gCdN zx>rJWB?tOoAofFa;9@bv*F;RlG4DFc_@0*W9%+({n2WP$dvT@CA`>WgWRc~Rsgub* z%CVElWn2?_Rv<+FWNjFKajWSE+K2Dg^x@4Id=+a79$=!3>b{y?V}AvEThg!}Drk(w z8+_8CA7%#a!Yh%dXewXX z`ypp$^9fQ6c~&-G1{IJOOs!spI=y3CTv?~Gl^9D8ETiENJ|FL&L=^U+>zjqW=7pug zj~3Q2+iad!2Y!UC?I#9@9SC#j7bZwsIda2Xq@*yxu7!P=%QSGa9nDQIuZ1Y{*nIZv zOn(J(<$U(&OkW8(WC45hrgv$Fw>1mcO_e?za*qZ4CMg+mhXr&y@*w#sqRwd#GPPWQ z$H270?~<_on4W$pWCt8iE+m&zL?0&svfU!hCyn{IVj~tJpcWIhW_sry*_~@B~t;XC&lq zmiUlSH+H$phTK~7SqFJ!j@5KK48`i4>WyC)TmnVuO1y^<@MqcWqz-JN8KHU(yOhV* zl^f1$RV$g?JQDH~NNBF1?iX1b+`7?Y zVfep7PmZOPn~TSrR*jTWc_ZjZ>_DE_JbK9X2=hbw4ARMYX7k&S-^gS2UZos9oAUV6 zYllQZIFv_kz`X4t?#kn5nIy=Cd3>kJfP6BKP4S?mkV_DLuyuH;PxZvu1G^KsIs|+2 zl^{_Ud;#fzRc7$kXWB>6(LCGu44B^`W}$?ui|$l znUJ@xVuxsbKIHOM>{i0Q5c0#CqV-phehojI@%5FE`!8X~1icGht;}D-E`4En@)>OwchAuJ6}E}a91PTgx~ypJYu1KOUUtI zqK`BE21NE6?M+m6En@D6E$TUxd)Ba{LN~W0T*Khd%(}m6`d$docHc z&8$T1KiBi^Y(JNAlrY#AL)MY2>6nof5Sx&v5W6{IFS@(o-&ZqjbtvqwU|#|Gjfp>} zrf2B)KFZ%E!FUCx&xYKd@P)Sya@2eD1nofzN8r#&%ZYE6C` zfqK1yIGTtfAsV}5nv#Yi#ZLOs5cj-ybizn+z9bcUlP9Cai<00?j*k(8O{E6>jF4G$ zj+lrp7VYnf!b{N};h|e31w(3KU+gZVLU_ymJA+Un+Hdm^9*Xu0J%o9Z{bP3_*UtWq zhp^tx{)~t4k)8dA9>RW|{kHnTX`TJT`oa%7d;I#!YaPvd(BA$=eWA$S{%n2WnZ5mo z^@T-x6HR=gr{;Tl`yHObQ@#CaPvHaE{*U^?5t+&_Wcyz|g{2PmrJlkO2m4c=!fS_M z8m^YxQZM0dtpv!2Yr7SA3HNJL`H13n%u9HnQ2Cgn+ZD);KS)Sia(4UKOL*zLkS6k6 z173Iu7aO|LqJMX_|J)$Vt7pH*Abe8KezifkU+@OYJqgR%8r(rof*hS=Oo`+ZK! zkHlJB(r1&1nc{G9Hd)K@jHB-?ad=moJWtAaF3T_6p8LrXh12pIpq3x5wOIXTlNYnZ z)+i%lw%Ev|MYUKhzY?qcM5#qBSbhxF@(ZFCgXKqGZT+8XzwK(PxBP~y<)>6}dgOnW zA8U<956u>P*Zqg9y)^TT8Khed9v;jf6LLh8IQQtI9I?JA%@)-IlKWB5x#Ck%%H;{a zT(P6K^h+Hw`aLmNDk>o>-xI@3#ozHr1GRvG*SSCss`M{MOUJVmuAf?(?jiKAOiR1- zr0|E9wlqMd_aXSBXH5Ecu9R~;M@ymk4_vZ1Jh|~^`U=}Ca37*xV?#%Ia*6wf(@`qXKQIoyv14?CwBIC`c1o?@a-*}F z*Bsm4=7Oc0Jhb*&?CF|4O7q{Kr7aaZe4CuuB8K^2)AYWY-%}eu=R3r4s~G1Wc85DO z)%*r&X-m9!?vPCQMQqUYmUu_BH1<9AcSTEEI^gada&xQb<0_PKyEBL2Tt*zXiE)yD z8R@YN|8oVGpSb~BF8dp-r9HHCmQ8x`&t(5L+<6}RnG}P4ZQEJ;fM>MSvr0=_2GV94 z3I4xue@ne1e<5uP#4ri7C9^;rCawI16c>m-{x>zhv0A84M(=xMj3F0i*(w0e9 z^pLE4AB{6SBKyIP|F6mL-;Zq$x;T>OE5+bix3#NP3o>e_*rlV(-`w1gLx|AQ3$*kR zEp6F4onCN5XU(4Sf>i7jCrX=N98KFL_7bJAS7iTgETRFgj#lgzr|uHx9Zl~gby)}Q zxhn-<1HUQj5PaN-&4Zc z&-q&4M7nZ^?D-n{BX`K}U+X(c8}1x!U91lmC2T6=FF`Tr4*BR39K!A#t-7R-5hd(O zEx*wxNl$N+Ip65#O4n{5{pTCKmndOd^Sr7Ll{VZaov-S%rF3j_SM{G8yZzA{hr=DX zmDKh(%f2aY?n+Ky(+AbhfYEjxh?^IYf3E5M^kH$saS|b>YkK#<190?T7=YW4O|*#_ zg1y79kn9~=kHpgsk1_b7>Mauftv*gVeT!s$tB;Zv-y(ay)whwdZ;_vAdcZBxpakuX zzD2s0=!Zy7x5%y%eS7KEP4Y_#@;$nFw9$9^RZ>#7`@QfMY%gv=^LR%$s_yS;(6U-2 zyvu75HW9OY9kd^7m#DVYz6VI-Qhkto3P$PPUedo*-)PVQBz)1R=b&yMjO`o>Wc5$>AdSS zWa(pbqrzVzZPe05bEC#%UFsTW=?inCKEUrc>4NG^VDYZZjT(U;P0U3lT|(CSn0tnaVA-O5&0L;=SDKeX-0sZAJQq=>J*B*Q%tI#B*mD!WT+rJ^3^ej!DnYLcv5FdII59e;;^(8~dM-z{Xh81~EVI8+bXhMmCh zQN7zLr<7t_JTuqbR{0+O@up{AHOg~|FH0*Yz z4i3vjT7-+Q6Y>~{JXH2Uoq~aGhU4;6TrO$755trGHl6f0iWDM;eF5K-@+s`#)Orn; zQfhrdtsYm?VIA6P2(1KnC98(Y4G?xekN!2sBd&B9Cets4gb$PHH+#DcV-*-bOb$e9 z72se~quv zO@t0%S927m%XoK5u5eVQ%V9|Qj*tTz7(Nl@2pRbf*bBl@e0YaNAI7s7e1&rai!zVn z{Sh+0X+th?RE@wcVIUzRnX=zV8SmQ3OrF{?lI1(gm5({EINs+t z&r!iqcQmVY3ywYV z^VCj`A2{kvVlEvxrcGj=J0{8WPk7h5RTZVTnSw4&Z z1dZ-0k+8+q*gKU%X(0Dd5!B9gGV8at9Ai21IgU?eE)RLC-W2B9j$_;uX4}A1MI4Vf z+@>;Hr>QK%+Z=@BG`Cgqlp&kBBydd3X8E@8)On7l9NyE|z{XEwE|aFQQQO0nm$>rP zGz@|_37;;v07g<6$U2U5997e0`VHXVcjN?6Bzs{5E^<8PaGZ&rHj=2B%w+(_^qI_)@YGSj z$9O@MN4&{l) zpE#Oje#q*#V-_p!EMRQV(LUY@-hI*S^ox#KDZjbkL>9QH}hH#qc?yobjlq@G%N z9#TI?4stg3ki6%F!cvO`BHeT3CT_+~lBdUd>V66Cnq^rI>z92wtW%4T8GZYV!*dQB zw~ic{bL5}^V{1EkTtix60b78A538{B;cQgOZpRHlXh06n!E!N@A2?of1k7cTyUu0B zO_(eDIvbPlOHiywT07C6-v}l09pfnFsA8Vor4}2RC%sAplA3~X=J z*zIWr>+0lxBD4xDf^9{O-SJD)UVW=?nXw78T0SkZ?y4)F@6l%GyMk43N!gDake z?dux5Pa*;Y>Eth+HT%!7J+8Jpf0&Pfdtl$iA0tcuk7EixtaC&fP2l!t_T6J(_k%4w zNFZP2${xYAEOidQBYIR?LQ;(61Tfk;*9><{t zI3OCyZH`(CacVS@7>WjD{6gewK$b5=z6N9$O&Q5~AjT-k@)`$Jtbb!HV|=v6wZ&np z!2{8Lc>rvap?{~w_OTufCw_}q>75s`(Bl@N7aNczT=~%=R+mz0Gm^i#i(xTs35i?G z@{L|Bw~W=(U-%IQ(wnC!2ySl2Fjzh@jx(C#UEV|Ncs^~K^~IEu$9Rf@Pupg6dPNT1 z3q85I7`GKZ@E{%)Q6@XXKtZ<#M(6YwG3m$1y^m&l=Q^>g4ar_6%BS2Gr9 zb`;u7Yk@t=Qi};zwHQTf5k_l7uJS;?A&^OL2Y-2{A8ztq8>o+-ZgNx3ZbsxYwdzb6 zp8>(Ob{)4%xK$GUdelA(^H`ej>(TTn)_`~t3aJ7)k+%Ty)E7B0_HIQTMIpN{>L_}4 ztDXJi3sHKq*EsTqmadT;UnX;I1rLvtdPdUoCO1Z?iTDix#MsYG>$?N>r zDNRi@;|8T8p9j2|dfj5`(kT$+EE;>oyMiDBHM3}W1? z%w+sf$!FZJ9A&KZxSGQP{Nd4IG!5{l$G6N-yG{AjVf7>EJ4H z_<#r@z+ZA3NdIXbhNa**7FW#3I>F(%r+0$v5ZGJsL_!g!z|g18!#M)J)=4da{aok| z-jMpsWlu4XgfEx9QUV7!x)tN+01)Xv_(=0miV!&&m&L%;I$oIAH2b%({6MWssMVRp zN|*n6grRx@HT~5ao{^i#mgQJuf#h?JTO9u^$Epe>4OcKEu3#=>R$$=;lEo`zpMinz z$}13Z8_E#tqMp1oLEj7Eb%9-7!k~i?W1xzBF}Nq{nCNhPD&E+`B2um36@!b6uOv2@ zjVNs#aY)mXmn-DPjrD2p>Eyo$jw1~XfO$x}P5uXIm&uN2kys;+$P)z@(sQM3GzG;g z-RGmUpgiRvBI$xwD=!yN<}0oXDc2~?8P_VwjH;5!xK3HhxL(=8xIsD1NR+#b8A5^o>dMpo>NK~&nwRv zFDS}#xUQya>9L9K6 znWJ$t<2B_!8t;ICL5k=x-fkt897PXbCe#r<;+fzrI?>hy2Kk6iw7&y`8j4P|qXUBi zMJL+Bfk7dn6VKjQbmG~Yh)y(nbGL6X-Gco^N4r*dRNi2{AOw@kt7LE2;6SlqId(LC zhnD!}-*){P;OqP#YMKcR;@E>l(a7l$~)u%FF?1P%v4NF9$gVtD@s?xWH+3JDyMLwq9&_ zjmBz*O7pt?lF#aWDx9YyWj~RVhB1@qvpzA*wb{4!WBDuQE1dcab}EAycr{vW_eWKN{L~NQW6oX!`tHr>xuWG?H_@@Rvy}CC_}lf`Xmpk6oS_$m+T^r~ zfvrt$su=CsL0=o*hv0@hHDRiYTjDLoi7 zlu?Z1m064vlzhgwl--P(%2$kUD~}i_EB0$?oGD6E#%!fK<1{6c(KKCI#e^BkPR5za z3C6j~SBwjkn~V#UXN-%KIw}pgMDb%>szfucP=+z)DQ_{ZR_1}t$9SU?>Ma!=7sukt zva~J!%cFd;4t@Sw=T&_qNYr}S*RS3Ru@3DA{YNqIq7S$0Z4>Lz6P4yQZ9Sgv)q7X0 zGaS<^?3c|n=kE2gpQ+y8ScPZs9Ta4YMG@kEP^wVpv#aosBsm{Tg2wD$ZStb0%X)cY z9lBR|T}_9dD%PP-n7mq{ym}vt4zworPq(6#5QLWU?|5w9q`5M)jrOFtNtA&-ky28c zHo;9otgDLX{F!`{R-Wu;SMhX)rA@t$U~%vj?2sT?8{`0|Carm1XRh160rR2>Ik5qo zK@;*L$BPZJe@8v-ur|HV;-8%bm}kcw@bj6y8+JlT`lYDJ+pn=44euG;K0{*WUo^4B z;5Lx{vkMwwpn(h{a{Z>ELnKAaLBH4f0~0KCxFjFAhHiQapTF>tTCIa~t>@H63J6XT zq2x4?{ek;L4(b(}A$i}#%%4@u8y@2&H@b@m`md2y&^7C;^h0)Cvwlh!#uR>~Z`#=M5dVeIsz z2Zp7c>qDRmY@MRNM>@{6CBV`uvkO=wSzAr+RgPZPd94t@28!_aA_zJ-Z>DSg#&H)9b~>-J$5_MceH*aWrlj+=n|x z#o^XyFJ51|ldbQ{9Zbz5Y7c>G?2*=@&^#jOi2-gYP)Ik?cyt=|pSmg<#>nQ>Q4}_a z?_)NK;bZl+^%J2X;?6J;KTN4_K9kvXEe5!iy^S7jG0^RM+Jh}pwe%p3gBfREYa^L1{;8F`*t^LN314W_(+|S6dYB zBj2O;LU%!`qE+Xn$?|Hn?KMob&`@R(Uo$g%&Nfeu7e%1~Od&RA{&el?dw36JB#+;d z8@OT5u7p!p&xrz>t?k*y&1}zZy_xOV12@Zoakbx--SOl`yiX%m;OxPlHVJy#)y>yo z5ZGQvpO;qebuMtzcCpV8itTmOT^~-p{$;PLLP@rJU6U_p- zAK|nvN#Ck<3C*bg9(n$)OSWzO?=HEz70*xU_P+{cJVeIPC_>DlHRanssk2RvGokq{ z6VUw2Q(&lW{^7Hz*Vo8!6(8yAjaJS7(FD^2sGnL);&p20&0qU}Nc#@(DvB=boxNrE zX47tZF9ZUF9tb701VZn<3JD+}B7&fxf)}uZ1yC834x)mHfIuLifC3_Z3Mc~7L5hHM zK|$32Ju|a6MZfQV{^#F3cW36bIWu!+=IqSuChYH~OgjbuV;1B_;V1Yd(SSGRp^n}* zI?RTUiop2<(ypB)5Lx5$AXO*xTa>7iU%6c;o0(w^XIe{ekHwFjq0F8~OpB$ZR+=kG zj+>DGQdwUyW84Rly^ua6Sj^9m2FoOjtfi;YADHoH0n^U;bECXvmO->$N45M3{*|gw z0%`U$RfvC*ZLt7D0yyIRD8DiO?L)Er6Dz4*eRvV(-)l_2GlOY;!4WvH$7tXJy%A+?~p9Q4pI?|z-hl#Y9wkaDe;^GbrElyvTz+rG@BbKkg zYi-Wn!ChNonAubZLuucDUWjW}avT!kqAvD9_Il4hgtYP(8%$3{PcU2 ztHcb}$2`llKnRJ(PhgnqZ9+Fr1LFw2YgeYVqK`Dy_2VtVPi)^2_{a2Lend0*QC>o6 z?iI+zAV103(=+06Xg>NdY0iU|z*%%o)?a*|Y4p~`Y+{TS*%5{FdHvQI#LtkZ##!uwS2+xF!QIA4{ z&&M;Zyp2=_Z#3x()w)N{MM2y(fvg)$MfWn}>OQ8`fq=dM<`Y*o;r>iet^jbgpJVV1cu~$oX52f7PPYqi`l6)F zten7=W5%|DOgjxQePmLgSZB&j;wv)aJK}8(OZDL<3225=1XY>gox`+L;A)k^ODR%= zS~w5@Q)aC|(bZ4YvpAb9W=wyAX~Tef%#Rl>Al0bP40AR{rWb+aegYCuQrQ;FsQ)3; zR)TaJBt-Vqv19JYQ`G(GX_zX~{Ib4Jf(`Dt`4{BcZ38 z#=+dNFt8ZsRAyD~i3I?PT!L~ULRpFksVgF6F(Q&{M`j|@h6HJPP(UVfr5xSt1PhM)V%;*vJdjT6T}z~1)( zz1C0SBN8d2k#0Oq9cVX@hy4U3LuOu1=-E;?_QL|M5COb>SwNB^h-9ls%C@@k((_D< z236G(lxRjtDjG&+-CsA7-$B;RK-aYdt(~=`8l@W#j|SCnP)zVsRfic$1w9tE=~CTj z(E(Jif#PkON_Lw_a*TY|E?0BZ^z)?iS`d6{6ERU=Vn@>Xxo)KGQACG8aK=w0YD^Lx z(v2y76w!SU7#-{iA*D1AEqXaG=|-)-&?gbdYWVp|*aWq#B8zqyA7CtH%|X(!w47)< z_2gW{8gItv%pA1y>8#{1VsQqHDA^OZO|)6GXbV)%B^ZV#_^E3-j6N%vAYy~w1?dVR zpH8_qcyQDZ&6({mPIgq{b^y1>FHYi{JB&rElz_9qUGnos_ax=sWi``#QFgT1>g0=; z8m>H#8C%EejU-Me5;X}5m7g%(SDc8=^GFnE-lDWkV?%o1!pRiF-X8-0>~;li-!*< z-(E~10jG;8=(v%SvyW7|E_Me3)I?ULcS731*A_+ng+Pm(v)~76jLUydwz2Kq2;$t*Nez*HrHc z!Ky|weliE@w$gMQwCU^&a2a2XRFn-s)uuG1$WKznyNq$qDayg18e5tY15kfB0zzmV zmoeqAB7GHPOG=XpTNFhVXVaW-xQv&FDDo{J{jwCfCW-jyRkmS?GSE%)(Bg!1r_1<} zW-_B2-kilxmXwBD&9gKU1czKk-6J5V1Y~uaK=aTBwzIC=IM^F@mIruu8z(1F*&3TB zfhxystS^EasgD53B%;<*!|A|BjHUEYKr$yd`r)YiX zS~6cLcprG9hfPDZqiFc*)kcIIT|}J;RJkJZAtMaqQ#=5*09y|~t8f#9-zJHY4Pz*# z>JcD#sx*=G4Pw7znze!%Pd)=p7lPtr{KSJLCFFyp9w{^z`HLq@M_3ewLEd|fkrXFT zq9xn+LHX&Xg%wVipsJ zkg>EZ1`{kTib z-MN{!HTgyBf!-`ws0AZwI?HHf{Ea6FVq^z!J3{CW1ezR#jCMxt)_5c*^ex=(`q2|; z!q4brL{DQri4Q}eV(^pffdgBJr+m##PE5naBe2l;XlJHH7?Yq$)Y`!DAT`RLg}&=D z=rn`zCX6j=Llv>hLOy#`VHH{&FlauC+E|5Z))jFFTju~m3`Rm0Gc<5^FRXbyBbP#B zh6h#%8v|8=zcZV%`804pWg|pyFCqH#DpWgC^cPij+M)@lMXblODvKEyNMAv>B^OA^ zgx+!wIiLXbdP4#gpw0g%0quO)C7_Q8h!PM`t8tZ@Bx$`Xus;OFcDhbSPOg4pM7M_4 zOKsUvTT4_<=@L+%wM*cdp+t+0Tw_i<63siTGZKSBVS>nQ09AVu9}iI5r1_3O4~)3# zH^>GHGRj)9PK}cSr@<@>P#eA z%#l%(X~7vzqawyx!n1F2J3uU{3-BnQ39ltM&KdIs^k9w{c<8~^oyOELOi;1=MA}!7 z6E)daaHK8#ttCihI*raWWq^of;8xR5?f4NRS#Vvau>tc@RcO!J0@s=FqAWg1(Aa4V z2Z0zOMgaM^O~7bdS#xxtTv|Ad)pL}T*Fo@>O{DPcoyJwJgnSHKk&RbE${m4_?oMMc z9uGxM2l~SPPZCusX+|+En(RF|+*z*;ESNcx<|EbHX}tfg%Gf|1h2baEmn@D)N$^0Y z(dmQ|TonZMh^SbuV;U7jgN@-EWJ=smg zs8MYg*%ms(deBMR+Te<$=Tl*xVpy%Q7Y`pSDbNhu?!@%F!oWa~fgc;XUmC4^;I)N8T7g#7#@cK`|ov)0>Sf ze5r5EW+S_{$RgqXFEGDdt}!o2{>StGoj>Rl=Hh6cv<1}=#CvQp=pP)+*kZ)Q=x{5v zpr7_Yd~@b{0DXbV*{OgRxXnat1`Itsd@s!Vu z1Qx;@e`cg6AKHpa5RcH}Mtz$ROba^uHPeFlq|b0%kY*Gu;f;K(7w5Sqtdt&5^}(<} z=MEgSfG@y=C+lmm93(Yexw|Dv8MHQ+eYXaVeiXCF-kuaMqs6e?Udg!ihq!)!!*7U4 zvpho(EPIJ*X2iL`i-YUH^Ew|2(1j48$>T|{B5}$11}@+SVEY6=J(I=@fv)rRAxzA? z|5lvh5>U}aT=a65iwfeKyb<_2u9tsc+EZZlVu8Huh z<(fk2b5;crUa(q-@MkL@;XF3vp(nI*KRC{v#?A}`6b#|NZ8gGub?OCvfD$DxGjXsk zJANz5p6I%ZctaWAJ`M4vv2=Pgan|RE=fr%1xX_D^YG}?1e^~NBk&{{SK#_}CbfC!T ztr|@JyVF}Om|Tt8w~nD2yxCUvP&jp&uzPRkVaAy>0DpxF_wdty#>A~~-O$;93c)jU z9DV}DZV7xX;_YJ$I0bwS;IeJJTs4ZKImg>HjwXK=Ir|YL`1Nf@TD&(mjywY<-mmlK z$nyet8z|+|7jq@S5^3z3X`+pFg%8YmXh!y zI)7F{_*YFqS|2ANp#h6R0kpP%!I-o7#Lsc0DQj5#!H?x3rHc0s0X!o9Oo~bm{1xd( z;+FwTW?%7lSZdbj_=Po9`sOo8kBuJ_CDY;naaMK~9r|!LfudqRC97f9Wawk;&j)d% ztU*8;wELRXI17hIs!G=>D<^CF8$i%{MpkatmxxEa@DUYxeDErgH2Vi2ctNdpS`KuW;jZ&yQ|QcjX*$WAQl0E`#X?etKgX&g%dl-HK$HaIq z-IioWW@>K`NVlc7!}zI4QnGB2=MYO9>E#H&CB=~$DaeK2g4ZHWqIVM&8;;v3Nsip5 zThh>Bd=Z2Z6#B52fP0PbLOY3X<}i8#FW!ax0Ju+Vd`Y*ZmBVPZtD%ze4Jf|1sg&Q+ z(P2CUypVDQxZiEOk|KNpzIX?o_S=vqiKs~BrzAP*dqi=BpVG@=%)&ajP`3q$I^!oR zOt3hF1Juu9EXKemavK4H$BC#|uJls|I*j2yCFyk#ydx#Gv2&L$&tQjfx}OrY4isC7 zs)Q)vcn)(IkHUVa$=Ht|I4OwuGdt-(7ip2(5~G4i7E)_u2@4V4c(H|4jst(j2>6!x z>A%y&?zfP}uL0K*@GdrviJ9MTA+MIQklzC&CG$NAdLQvPp`G$b+rjp1VIp5XucQP%4Ex1T zNfDkeEF=_oA*CvC^=y183puq57D6Rq{edsGkjG0|$V+dljGhD0>wZCk#cv^PC#c+( zgJ2yI70dNo$bkDw(zhV^QA%oS=kB+VdKkBa;Zg@peE965S1Fo7iekRSi- zOCze0n|LGE#Q;}lNZ=%(5-;Xr)*2>etwb>jkC3z3+1r3WEa4kpLY#;0HlloB+wuRz zHnMm^{0l><7IAi=%-wqA|0Q=NhA-P~gwU+qmAKWcOm9utvx$iRui1qBM=fGvHBzEp z;M*m{T$@-dM#TS{nEvFC&?!DG;bzG%9TER;a!AZVQs?RWA=u;=FXY$b zuYYC4rn^bte0CiNd+KE+x<;W5YiHEKg97}6$&cDT0RQ$YY&ClM#jkKu$jd!@@P0BT zb~^ZDPwaK~$cg<3!R(3sR0)D{AfSo;ynxAxec7IWPV7hb(8NCbYa^|Rn@%f5#8!kl zn270k4^7COU`P~(s&I-5mmsWqI|s#-^D!^@+K7OkD`w!Qzm_v_-)#9HW6!|l>#DSx zfqPU}X*C1yuAtIt1`ddpX?q4fj7;5)p_y2hz~mY*yLfU9MLZ(YP3n&ietER%pIsCF zgV_}|{Kpu(hC3VYq=RlfByGk|j{>XT0Xu^8X>1?BM{N{dp(4C;z?PyA>^g9N*!a>8 z7@bB^?bP4UQ}A6t(DBXxF=ELTt4>(E#p)E3@@xN*EtV}{vc*!q`Dcsu{6@H9Pk%$M z7`0NwUPfik44@-P)Kqtx$*@p`m72?R8-!KqgRH8_3c{C1G3`F;v;#Qhp)A>eL%b1A zrVS@(ds2sPTE%JK!B-g;->9)_q0;sxIt zQI*g<^Tye2(AnsSM;dk=`QO1${|S?yY97AuThS@DBJiP8(8HU*vKN2Jw7O#f=#Sel z{Pg8>kfIn?{;(C zV6Ty0)>EFj*C?Ojea?6ZPtZq6S~`kV6+fX14#gEQ_|re^#Y=l${?}fkoLb$bGKxod zdGN@;IH0+yStDM=dJMHOJvmVu&%y{rVK)`hXJRQ$XRfN&$Iaiy*FIumiTEmXkcZ0b zHjc(Bi|28;Fif036VIh~BRA}(+D!S*6R`~-d}Y^i(svGjN~KjBAMY&FcF(1i zes>=zZ~M-4Buw<;badmZs8-uY{uS|vBJ3_vH(o;=(nrqQuY6?3gc2T*SoA3NfHrRc z-&HXEil4r&lm~PSEy4nx(6mVW1dh?ViCWr&k6h3TRpIxMziol%e^9c;uI?n@ah}_^1_}8xmX6<>}@yYP3>Ci5!pTC;U(p5K*ky11hnW2Oqg` zfXb*fh`JGrkSkdH9?+rJl+KTUU;+_|Dw2ZzF3_)7ND(EU1&aA)M2TfV_{iO`qAZGE z2!hY0C|gCjI13-S!&s(?rLJQjptUzq4lSA%$%7Ld4I1~tKs)PuZ1%WGR_@*Sho#xHRvDjoTqi+)> z^G(Bj2Ju`FCup zzXRuZQsK)w&98i}q$GkO&88}Tthzr=NofpRYa3tEg7}RCuq!GFdj$AmlUXW?V?S2i z`Br807Kj%41ql|v$!vW<wVtr&Ls$xrJBXJX>hs1F1oM0Z?TJq^2erjAWbko^3*XS!Nc(vBg|@_Ef$aO$ z;GmnffHj>4mgx@H3vFox<=!GAvP!W;EuHDJQ!$p(;A@)nuCr;SR|a9aRM~iO%cs$ysVdV%am%IEV0Gi|3sbNOcvxNNR7UET7 zsQ|`%@R1r;i>Jymx?DlLPS~%MW6W=eXN7CT8!`m(y5WHocb!7KUPKJVXD`P?bi?}L zB7+XGKs1QRBE%mgC_6lt;-`Bd-Y}vA#VZ6N-a1TVd>PJr!!|PGRYwt@BNaOR72cVSF;YD@9v~aVLZzBOB%-j5;-nf^QMN|$BJ0k?TJITrScFRF z&|&#*$;-$lOetIEw}&Umn9NS{t+WGI{RTS zY4npH>3!}`LcVgusN&1+?g%DpqSwL2I3x!n?`JbW@{}G-+S4oIQmps*aDaO{Ldclt zjd4bj#ZB|Foxr{02&9Iix5xzxBP-UtXUQO!IYKBkmvG{Cd?K%V)ChKa*VX}=w>^p% zC9?4)L!(@s>__z=devO2Gu+h>1Us3K-DT4INPNkHVkQGmR-whOA4~$aLqPBB)uOn4 z2ua4sYEw+~lK3h*$kvH>{-698ym$1Ez=z5r%&-YGZ$f2~-r$&#>h_-4O7Z+-MwHuo zjB0~VJZ8j4XOAvV{exD>RSSH6m5{5B!G+G|-^$?XF+6N$bI)<3y|1x$5yS_nCdCfYRqe1ITDiNNt%r;MoK-YRzy&y#fYEdW6xh}&sFt;V@V%y@?59zOc|7*Ck?!;Eqhg+u(&%dgC5u^mE^wD6j=n%3aGG}xbjj-| zOGO_fkX1)bW*4n;FeqNs15*%E(dcspvW}>t+G*akRCe7F5=(7HA2DDQQ8k!BwZ;!Y zJ(kD+I&CDoy_~Y-X=m_NmOS3(41sR7C(x)f_*zUJpLWKGb9FR#E;sFPAR=WvG|OkDoOX+}@ia z{`Xl?;qm9F!r2}|H#}#=ySK#UGj7Z zrq4VSSGbxnvk!y7&4l9g{fB=jUSTx|EJ;8ghWH1;08~wOUWlZiPew=z(S>E%tCEqm zlSWM6k`PLuSALTUIPZMkh%nn}2@@|;YUFvi8+m-X3|7eCD;fMO1LJ}qNk@>9_ic3j zW^%5luS*mwrzI@jLGp%Nz}|iye+k4H-U4cb$t>bGG%fA$%G&6RhS0oI3Ac$w(e#?b zZ(K0K-ChfJk;gAyFnak6`uI=F80qc3*&6X!>EX3_3Gq1T)O~>3ZW%8fxo((DTUCka zgQhaPLlCbTJBH$OmLpy*_GOCyNi@}C7gIbALvyQIu@6$*IE8p-95u7iDHieCzPPt2 z@l!7(>co9S@t%Va&yJ#b!f->mR*k~RWR1TcM7*(#$A5%)6B+M8^sQoqQ|uyo#qYgWfRB;>qoS`E%4(L~Ihq1JMYovrgkBF0KiM52XAq*y~pKueLRWVQ8?gjOO| z)5;7clJe0@Cx+YdW|xh|;l{pmm^e~`Xf`oTIvL>Rvo7Ny*lnSD15EmKMS%DMLPXP_UG@7*vBW3%b5c2Kt{Prk{)IQiz4rDk~+a2D;>|cydxkfYacjz8Q z>~8v~Ma}X}0eCt1E5z}j2iLFWk`;hV6Ofw2Dpy(PFW64)7$0|wnC}oM zNtU%2rk#$-0^VgDth2*yJ%~P&!AP_g-(d?tKL}F#XoiG(gJ6vvev<0_2I`5vu%W2eVjSvlPF5^^a6^HsV3g^=J6|ypnt2mmLA;K9 z>Y;CN$d3&Rhe)b71lo7FBMM62=8z8x%KyIwWI z>UH=<7PU*qZvZzOLG&#U^=$Go=AaIoK@_w()iR%Z)rhOwVS^q--w2VSyX?n9 zPluW;h&~r06(%QN^S--`I8I+R($hM8B+4AW;1EEYMJJ(;h=>~0yk7X*>SF-gwQpfp1djYa-M5qMv}} z!Pkwr_Fd`;$CkcNA$=$MqJt0jA^AdhKF>4_#fq}c$Ey3OXmXYM^8j&JC zvS(Ec04g$&rsxc0ZgHsn|6W%godW+LflQuzyTs^noF7k@HOxFt5HpN z-{X^hHR2ua=(qXYUyYOuclO&Pg9`n?UPch1*oN)un3_96?6vTX@xKKE_gtXsj#2A4Hq6vmm>MpHB3w#{y~& zLb?K&D-w9;I{@G(@v^xDK9o%&e0ktn`|)CM;45w$Nnx&N_G35*9sqK@AmB$xIaeaP zLK(jT7`GYaK4!?Dkmv{xNR9@6C2)l{o>4_>k#tJeRnAxm{#7Up+XwtnKaFtXB56_B zRl}$cQG(`I;QubBX-LCU$XQ@rS?*z!QN&!hS@_8kl4WQiH)=7>mFwP3_&UJl2|QnO z2S@lE@qw{{x<GG6j^gNs}z)uugYY~G@N=LakGAENoF3m;xJA3*gE74W*K-ftVCnINBNgI%%tDn0C zh}aMy#|Z*{`ZrXPYpnZeYUP&!ds{LpKIzeiya}vpj(am?uvH*fXA@~_*|k5>gfrZ2 zP#@@A8ksZu4*0`OR874_drH+6srq`0 zFMdTW*YoL3#d`n~6Bt+M9?>(G!-oV@6!_Z&IN8U4fx82D8gW9+Mn_euMg)TO4llTuMe4&c!=0)N{8g2<1s1&O#4L~$i(Cm3oF0|^rFzxd)mv05;RfBL5p=Z#KfF=Xk* zmG$$VMmhcV5<2>yRtv8KM3-unms$Bzt@1LfX;)GH46361zrbF5DQ#UvxP^rT^96vh z*ZB6ojJV{;!RfM=hR2Y$k%ODaWPS{_awNa^myxPF-{pya8?g-{=Q(0aW{Vr`J-m98lOQnPRpMj(^8iKAY8DLmAQj$?rO#KDIW@0L&;CcRfw3Lyr zRTGC@-ouc!NHT}}WhA}FA7N$!4!%rdX2tYjAQIAlc~7&Vt%AXkD)FUIkuv-pWf1(#x|A7&eEL5#Vhk@`5$2xjde3s zZ~Z>K?@_LK)PswRP4c@l5uWzR8dx@rLG-|P0siEn(dB=sOj%3 zbGZn$r2eCD&gYtLR!;vGxH9G3Rl1zJsGLn4W@5{Gpsh?*fo~+G(`S(&OH2J3ImLc} zmw!>^bXAlAnx!$IqBV;19gTb!JIu=LG5$3~`dYmh2R9#dTkvzeJWLvID2>a%;%O+Q z&Rsm8>`f6?d=7(h{NCCWXY}>wXIa5%Kn?}czx>f!ZGxolAjQ30Ng^Blha_RdO44!q zwDP}*ihDdCo&@|Nx;o1M#Tf#@fdlbH7qX_nf%rg-uv0Nq-(bPg#*}^EVDU1o?E40* zDATRAYIGdnS;!jln#RvN&5(c@NQip6!vA)n>*yVUBfcd{~CC%g- zi=z*EAycGB<1?0xVb`n;&v%97XSnC(+B!j+v_oFqQx{$Y${G-+WmWUclDh33pgkQ0Ox|*U?gYV2rM|5)Y6{ zex6@`FF^g(Azrv9x~A*+Lc@&odS{6DL?Prk=ADt4v5xOF%w)EUpEJxfUt}#-MUE50 zg|mTlbD7Q;&PHUW-x*Q!N@p#J-Y-3XEcDB`iB?TOtF|9F@F6WY)tM$WtXh?gGGLw(6|(3K8Cs85Z_`C1Yk()tAq zy5nOd|JZ!H1=1ZE;&fIHN!*9?cIRcT0L_G?>NRY9NNi!>B5)9(@~jIvBfCcfc1En~U$nCeiC$Zv(7zAYo_K>RlNhFa#&e;t|PN|gbI-oAi_2_dMY7$m5YQt6`$PZB*= z9_czM1JH9oMdu!_I(N*T$ynH38BO0fpuVl8b{mh8VYOCS>#w+n`nl<_li>auioz0w zB?a>)fo7$LDy~5l(3|+=iTmGJ^bbVDN*=d85Xm$Kq8B=1M+LmwX2@)M`E%N797np?yzc-N0~Vp>7a~g3>iNVtPghkU}NmZV8w;2HISqP00G~i}^F&%&n5{&Hh(k2 z*A_D|0!v@2D7G-PIu96Qgr;)sySEeFptt~vw=5LH9Z7EazJ#4MLkejSy}{)Wabc%MXu zGGQ3!uY2eQ|CfB<+EX z(^XFfDA^W3MS*ezEzRAS7`w~wt?4rh;6~FYnT~?2x~i69pYLaznWj}yh3TL*)?!7%BKPc4T;=Hm4ByPSE=NZ&_Dh6x7picYkEpG4d{ZEg)k&~k_>1uwn- zjBxgAQu$1O8Eya?CfG>EhUQpF1Vs02P#WxqRcTd->TewXt_tuIN=7oAPjRt%SpbI# zJ_w0xG6+3Y5moooybK!uOyoBZ;Ub29U3yCT+Mbe>bI@C>M&Azn01|X1Hw<$5iOz;Q zdOe^eTU)C}9~?ZuYlWePPTREt=Xy*rj0Z}TjBT5Nvu2h z_HhO)M>AJ^IVEjNKCZ`VcxRF&*Tf9P>RJ%U@e-ni1Q*aXv?8R^@XaZg> zCulOkrX@|qWR7q?erd#zHV!wf)g&nN31Wxv6AG1@$NUNrR4C+wdh$^>X)yTDflW6y zs;s|%19oxVL>cBq?*~?>5jU@@RD-g}d;(8_Ag_d98ZoC`rQ1E+v?O|ix-JlU8(Sb| zW3AX&Gr{H48qLM0i9nD~B8Xf|I*Dm~6k_@W-0W!_nGwmvVElJfgsRXX_>^@qX4Jk5&BNymPXuZ@6l~7ZrEIC(Hq0XXjrLhlNzfM zWHVsw92`ndAC|OgXHMhb(ALJo?Q3F&}x5To^~3`pkY>wKUW>M-D}pSLlkA0rGtpP+^;L zM#oYhy#?_FPl?1FyU#`z@urb@x=1P#PZyQsq(0q|Q|jsB6-NXA)5QvS6OD^zA9Y0d z+7_uC$m0+bY=0mh0<>tFRHMCLn>a3(z-TkwmlowChUJirHh&WQ_E0xDx1l zSi+S_!qM@3?Q0O~XK?c$6c>$M?15HyB$MJ=6%yJ1X*>gL#`oJ*hSmHTCIjjh5hkR< z=Q_Y&i-P+xiGLJj##IRF8>0LV`6PgJE!9TBYq%7nG^=^E@&*Q7Qyg_!yku$F_+7X) zZ6f4DW$%^)E|QniD+V)t=%*X! zDMZV*)Pldy@H+5ZMa_k2ded}-K!f^L{U z0gS}wP^toc{$mJS3L%g|Em1-vB5#z#v?mcRP{L3r;$rir z0vaaxXZj%RFe-NjK>GW*`75`3V;FMWHde{|CfG8Gr#YUTHX{52zck`VdmA^XQ(x2e zBc`9lO$eYlt5}^(Vi@@aHYO1MfnOR?Ye_NnG5mXIXbZ>9&!}Y*4ZUGi9^ef8(uhb) zddILgWcW&MCy8vvay(`|g&}Vj^^da`% zm}^JWg*=V zKOsnacpyNnk?dxJ8><5gmG>JR|L|3JI15I9Ro+;&y-R46XIQyP2++;%VoTo~^6VM(Rf(I`6wJvrG18`&C)qrLwc9y*eMqmn-}$YsjB$E7n6X!QPkqLZIb`g~gzg(v0#v+Xh6B0?jodvYmjD0W>~z2VYA9 z@kokjzvHOL0g^=GSilZa*-Z+YCf(fxZoK~EfE<>k$Wf!%SK8kMOaVVK$nKVH0kapaDYklt*heZF^xwM=o4`h9lZ-8 zlC4UAL@S~G79#AfCMgVy=mfafJklpjFvA^q0tssB0F%^jeV23$F}@_|LEMDsBt&E> zs%${?0u1af!eAvDL%q1zJgS^9!3)XzKq4hmUAEr!Ir2B$Mk;9Znz#wkmw}RXS|t>) z=ds1#4dI5nQY1A8U0AXQG)(Y9bOsVqG#&YA9gdsZFrFspG~9$_I(;Kg{ZttNSi^AL zr+tJ-rV{9G9x$ky;+ds* z#8A_<^iab`C1AOT4!Ep^JoAPmW&VB^ysK<3Pr_DRxhZxove)KTv-?>~H}%8j0kn69 z9y2Iki5zMxf&SD|ZJ6X>?4-jtzG}#2!gWc3Cn0gMd2LGOjWI4pWSx~LJ8x&L8XfK# z4x+Y-wRntst~BfLTB9C+1m}K|{bL-R9a;(^jabRf;a`c1&D;8~yyg77N#nu$4e_4B zO|&vKLGg53g(SGpJsn@-$@`j=TWpwtfQAu2jnheVI?5LZkk$=1zqFL;G$==h(v*|( zn}{b;yu(9702ZTK$_NaUuIMar>Z%G!ZGk+WKsfEH%rnv7jPC*(M!C?y8kQy^Z~DS& zh{z0|FRY=6z2pmPDI$}7S`wY>T8otC*j-YwyfEY%Disq-h9(s&8Cpfe>!%S-3p$o1 z6b|i56)zPI?JpH3mHtG*(s!f&`(Ke7SMzI}k4(cTdo+C5W)XG|`%;9R!@d_``>>ND z%n7@Ukh(zF9RYw#M2FT!L4@{PDdk0#1z>vvm@1UTQB>LcK162!A~irS5Eq-b5zsJ_ zK^lw~A+}oHZ;QE}68mry%|$MzR)wfN4>Ro+!e^9cSv+sv2Q*BuQJb%Bg%14{WJKTw z8D5MILI{!V*@cg=@R{Y!$c8yUhY3P(wWj|_;+z!Rg&2oOM(HD$usq_(8;F0O!B0bg zZw3hv43sUMZCpUyYiw>B@`|}LiTr6yEuSOYjb9p3YXW>8;2)7X=?AxdM2>gY0nzW_ zCMtu*J1vK(lDgmnxruu)G`}b+R7;cr#?N#>!vr7HN~J?=EdV+3yCkUPr=t^&Z50$-!M9g1BP$mICB%}l)Cuct zsI6(=0*Xh$v08c?mi)*okhQh&?+Rw&&m5Isw;_D%rIAZM?15+i#c9oMXqGWZC<{Dr;4wwUNKzg zXPPsJ&TY1JwR0=wO28VqP0HHgHm8zQP^GxdMdo<=a|D@f&91IGW=EGrG?IiQm3KQj zn&U*C=Fo#Cm58~AIzwEsZpTXB45!lx+yTC>f@g&OpC5Qix+hgHe~@3=V8-(S=^nQ} z@gV=Wp(oxnT!!Y+w;be0cbf?+b?PABd&-Q$!DAP2w-55k=aKS=lyQi!sOXvICaztF z`I8krHS`)k66`ho>JfqC7fwNxTL@ltjPI%BY0BFcni;%HWzQh}(lH^9ugZWH_hkaI zb;t`o&TmxqBNvU%FI6si#N!J^l;P*2;@jR;v68R_i164d}`s@?@bQ2F1G7O5W zJHZ!K@vPLpJHb0vMHV+s@P$o*4G>ija#GOpMO8gR_39_NSsRQF`-_{?hO>Yi9V zk5>;xk-<;QQT1?1Ji^ zTP~+LOm|3hu|ZT;hEwhW-}WsGN6M^offv;C4AG@UB=Dc=c|Or!xxnYt_cYdzUEqi6 zdnzkajYk8MINM-z8hFa<&3@*KFPky^nFgNp)arH>egi!cZ@E&C9shm=I!q2>Ywx^nY{%8Jlwx@!gd{J81#%xc94s$x2?Kh`#dgeu5v!Ulq zv;G%V-A!>aSE$+86>V0RRqql;KF!8scyUDm?=%ld-DRP-UF6*xc{=KGm-y+Po*waDZeTlDc?Af3ny~H1B;%Shmol<&z zja8QL%`!{3FlcGsF>dPZ(zu`2126LdO)+RlyH3!hML($bzsx81@kDx@Ucox*GN0MY zgD=I22K#T8EwQld!8xAZ`mxLWGkhX=@J!IY`0Cs4L9=rEo%PPXJ@T7Czg?<7NZRsjjH=t{NE8t1ocX z>g{rkb49enXc}M+bv@*GvNuq@T@RVnG2~)U-|ZSAB8^-RA#|EUad*2{x@sT{aPLMI z2)DaxIG&v0V&)^}$9!&E&om>%<#Ie`F5vsJJk@+qB-1~H$I=kK07E#Sjx(BGnKhbf zQWw)j728jU5jO=;)~x*~8e=xnA1&^V_QP*9zSJ2pzIY}#~c`NMKwHt@T6Ih>iHb@1f0CuIWy6;go(_%$E&P2 zhckRLljB5-Rc<>Y~9AjQdZ8vq!}y`4Pt52kB%5+t1{<>ild^3Z=m`}2%h0m14{ zo)pt5id+3Y|E37%JDq&QMY9QlXK|)hf&-;90XHN|l#`m5@M&bO*S&&$~ z-8pj~i{M+jAcr7+tP5#2yQ|1GsjG*S&h09+eXy&iGU#9L>d6IgKam7;Un8MyP&d@A zm)Gb9{la=FF0?#L*LC-guLLA+iM&umb3$ptW)Px=`p3FSdOf%Ec8Jq2I; zD=1|&kKbvg1Nd4`PX=UeB3vXt($iBOxW9XP(i6O*cHE29m@*rt;QdvODG@xk7uaI> z$X+6!X}!ShFN$ysgr9Xs9J% zJKS|x%D2NBKZ(8XTZ$L+3<6G#xquWcBt~w z`j!c8*Uk=YZ_W-2&++TezzQ}hzC-7E3ap}U+4`~lxZjl9X1j0YE=c{#n4MnOY( z!cFTu6Z)61y2&%Go&m2YI=F8+u)>UED&6d7DgVEBBi;H%igl;W3r|ADw6h_ycS@c!sOd zsRI5~d~ga+QQFoUooX`GXQo=Ad+Qe(+T%iRNp;()ou=+8T=A zRp_ybdzM7o;0k`Q%uEUouonxD|IR0)e+SqeX~)Iy0Q;yxwfluBbF7vup!$6&xW|1y`faOjfPF^s?)}2mZ(Hjeyyhay zT{v{U^(>b^Soa&Fnnp+#u&e#;5z0}%@;GPVM-nGUfmAOm=E0$TW6Ulob*z=wMHhbS15ZCvB zRJw!G{fvP{L@iW%{{Sy~AN4%kQCf}7LX8BiZyELGxk$Y*ZKR@iDtTWh_~ZNw&iwn|MAH86k?`eMN zBdcYm?SUjIwu9J(AvSxG$x`s9;SwHvj}Ka9eHLerG`$u6u?UIBV}AC>u;#K`MXyCl zJQms3ehjU#LU!h3>j^9*@xH4O2HY(CZnag9v8Q;zTJYNrad{>GZS>PnEnZ8R%%`rk z4(eE1>H7(4;rwl0^aMD9l`EMX_?V$7)&%7|QnU>gA*&ShyOo9)hl( zDr~mF>d4~kX$KV`uAqvN5UWrt3aOhH9x1e%=(OY*S7bdAXZtEc75$Z}k{+uQD~hb7 z%qc+<(WaWFrD`$Sj4}<>9q=%esrW<#zgJ|vKua@IH(M>^?73j4lE1Wul#d2Ivl%7F zYGAW1DDl3NeA*V&nAmXyZ5u_u3Hu$?l2`=OKL!1?t9;O>D92r<$2`|=rzd|quy zo_Uv-`wZq*=T70;&#a-0mOJCNA)nn2K4=>dSg^dg4FYU8r-u@7C>!O}kJ(>pt$AJ*LN?Xa%;>^aZg zt_f%%6?qprwQ$CFVVK^tTfcta_?7GbS?VNA7*hj(3zMwjTpQhYy zEA&0o1YLFwBy;b7fX+n!C#gdgOSIh`2lHH@+e}pGfc_GlDg$kYf|u>}^~Or&?Kf#^ zDEfnZF~s@)Qf!Z@URhb8!!ah47PD7NKvM;$fB8%BGip?^d*wvHsn>@p&&~GqW-9u; zB~k#!8gcCu^ct`Cjpfw?dh%^=uqc+u3%-HvKiE^|QT7G8bqa1j{bndxU-RYPST$lV zD73vI7_QLC{05}P7W9%*%bqR2%~QX%qV<}+r4B857bM#ZL}#b+bZ;W1j8MWR15V|) z*Qspd-wHTQ4b{}6j9bxv#n(Vw>>&i7%WSSAvo|2T8Hk#C2pZRmp^q~n}?$!s_4 zbp^K02eeT2s{?=c)VA+#e|PO*N9>U$cm72k%1YhX=~scE2XU_6YD6 zp8|B;*9zTgq(s{l7MU-aDYjO=V!tHuwxJK?r%C!;gF`@up!21(zi1+t)dYJ8|JW#SPW?hjnGl*y`S3Vs%Fs>of3B|r_=TFf8` zFMIx|fr9TTGuMoeaBh5$@nO{wA=-*I+5@!6#%M%~jr$c>$q!D|CC+E9|NB z8lOq%hC?KGZ;X6&CCfnT&bI^YJFn20YJ#;bA?-oQW-qPPRcsF^xV;Xk26gRSz{x_& zo*n#5(ZBJy6ktyprvQf)XJ|i{=?<3_!xlAk*bMP}$^rP|!}yv5DAoL-QoW6jNU^G? zYG?RqLK`RzX;bzXcscI<0q9FWQ>#^)C%NsBwF1v2^w8mwJO2}jZX*Nj2|fmBebsQ$ zJhgN*Hc7Ep%WS*NQt-7aB_B*gTyOCGVE1iR=(5x09R;@+6KyjukFl7tdF4?l##VM9 z;4}`jF5?4?Q1tfBfL(!0C7cgCi1A^&A}Tuo{DO^Mj1Q>~%RI|Yhl3TotX0eh+^f+7 zknA3zs+X+eH%QzsimlEXSp-|9%INV_G<%V|kwk0l0H@}g{j>zwlX!pLUx9AJ4O8$W45oDTkb$;=kAb*Y6YWTBeHFZ-Lf7Mq z3Ef4Z^JhqSzCwS?_Y?XTps8vaZIJM43Vn~WAE9gc(aLmH%|$D8PrxZtd-?NO1s|s1 z1Js~mj}91HATD;LLNA^r>Fo-=z-JOVWsH>i-A58#PD$;;w-fqBg`SQEqRVc^`TPc< zcPMn{T@oE71MLV;Jpy#Y$E5IpE)s4#1LJrXLQhrbA$byQYrcX{0owP6LYI9{sn%Gz zDpGclqY2ML~v-lQ~DB|I=kl`kF5Wx{d2`i7xxl9;4u8U$cBb!R@^YyI$Vm>=<%e ztI!)@M|6eDK)cRs0j<|~Lh6>!3y^fpdIDVwi}>LMA0tNfWABRMpN)yji9SQ{U-D(z zo3cYL}<1^ z!uu%nU;H%C_*dq4kHay4?I}q$ca22bo#tDfdjdj2(KSiPiZU)hE+0eap$dJzqvVcM zd3?wh6M8GqqW3=y0luHmR~2`DI|&a_=;oZA1bXU3Ss(9BmhgQF{VuNsbejV} zlWO*+U=@W9oh0FzN+-KoYAg8lS0$lc(ntABi1W=+XnRX!sS8C6^ON}v zLN8P3uvL=HuHuV4^(UYMpOf5W%?i)ZKC4+lYq7YHKN{c9(Xcu_-}KyMdOrA+b>-`a{z{O4LMFtY}e}ZGr^C!*lk0 zBgvgVlli_g=ggct_spGp=guw#%7EWyoMQ^TIFpqV%sZrwScoBX&7)H7z@4k|A>d|9 zjR{V_(9{gO`zq-9Xk!stS&VP#5Q%LAmro~}Z zF|BQsk5ZWFV8**jn~%*~V0$s}Aq3bw;12@N_*emh@1%sNs|DSRC0;424KOZow%QR- zhZ&c~-;ArEarZgeaEaIB*FZaeLG!hz$4Ib+qrG%)Vvkn84Rb5sQ`~Hk$#X051n~2C z#x$d6A5F74e=q1v#6i>gB)R|K&ROrP)_I#%+bw8qWn4P32IIaMt>}dO@CyoXkXFgE6@wDP5a5qs{=ubi0&nvwUwQtb~)4?TOT07pS_#)8TfIHtB z)-WzzX?jxyjlcF$&MaFyWauzxxOs>+2>lt;GL*Jr1y!w5u5YM;>EI0*{r^-Q(DxkH zMw$&HyMez1{5A9~8#phKSzYcApnq&oya{x6clzqQvAbKzMb0z$X@hE??zbHC>uO2~ zT?5*AmQj=ff3ZU+K*vt1@&dHr5^%Fk%#7}3J!);VS_L15{C*0vI)5AJqR$ogf&Pd_ z#M*bDH#ypx`62wwxuk$*u1&z5rJ9P}fTSZBnkhOaba_Or<>NZ6Rw>u3G%fT&(1nwVmw+B5_diUZVp^0B zf2p`}^jEZ2XkS#7`%WlrF7igIVLJ0!rt@WeOj0 zIq6j?EC5aK6~i`5Ig94pIz?lji_9~0b1X0mwC_n7Nl!rwNeY0t#dtEUPbB~)Qjs2?ey-8xxUO!|Hf*r-(shK{2ter zYkHHl;8Xj#p~5c1#Y0@b+fIM`bFQzl(+7OX_0@Lz>PuXI@_D^UaQlTD&OL7s>i_2Y z%Xa#5t%uBZdZTsF?DWG{@Hmg`^l=4LZ^FAs8(x~mYkmQP;AE#y&;ohc>EpD51MKt> z+R#MV>9aKdII5@RTZdq@HUvp_89MLd6*AiCvow8%o&Ez&pJ}Imx|hevveDD>g+3p1 zL$-~9YQ}2%JUe~9re9#EAFUNoV5dK=>C5c&3yMWnzOcp4VC}kcJAJ|dUeO9W{Y*{2 z+fKh<(^uK)zdX$2R2P|^ANwns;iO%L2b%tzonC*02fA#hzo`vnt)1Re>$wM3J#W7t zlxdUVk=4NC3Ypq66V^Om(WuY3gOi^20W!dT1)Np;aoxV!b=h^8cEzSa_ zNB>)w-!v^lfnA1f+KyIer_a#zWp?^$ntqF&ezB%6x7E|}|3EYBwlzRst@T8eo!+`S zs_pbnH+WB+wA1&|^ylpKwa~NqS8HdutQBmw(@*(}7x2hVAE5aQ8m&EQt!P_2{W*b8 z<|ym>w`Q^mUqlxt-n`f47~!-lS!yvNKpSoV3$d>3ECJ+3Bq#P+S$cyr;pRpCZ{qU z&^iRxw3p^UtqHs{*k5ZwR3D1BcCZqRHvYEytpB0c8fao8Yn!3$e`KimANuP5p}+h; z^wyTs1~jMh-`awc>v&J-VMxK-`Z{N$cd;tL%QpHL8-1;fKHf%ew$XR9>goJ@U}NZE zHGq$7^vO1QH*LshbvxVWy=?UDZ1hQ*-VwUKHhQm8k*|LlO5S#E4S<2Zs9s_c|I^k+ z?_i^kveD~o^l>(NTDbL<)TlSH+5eTc(Y^iPag*ve7rS(P!J} z6{gqLf1ZuO*(SpR8+|hyeSwYM)ka@vqqoj0YA&~UCYz!xDGI-nQ&)MjGZ1k6H^adM!t&QH-MsK#!x7Myd z%>2N{;AfNJk&WKpMlWcqgEk<*M(<>!546#{+315B^ca6H8$)n|0YPo_AvXH9Hu^9d zeUy#9jg3CeM&H&(pG5U^{?QhM+Zc>C8QRw`Hu_8(eFqzTmW@8rMxSk?H+8fz zud>l6+UTp-$=XgwjunZ9edTS&I&Fw@_MadM#+B9cB+EJD@*1ZvSPo0fPvb=4 zp(XUjxP9%TUT`pt6$Mv+Tqu5b^?MBU3!|S;Pqj;rvr7-ROAoY5r`n}^*riP|c8U&m z=}^0LYrAwyyL2&=mT|^NP@WcIlt((m&Xx|818(W0yW|m;Us*w8;|s z@pB4G=uW%z4!iUlcIi!a=@Ps2O1tzcwrLZ_{6$*@odb61sdnjccIn}E>4A3XRJ(K! zo3x2ex)>V;O?R+MhuWoE+ofCDrJLEM9qrQpWH!u!>1@{j(WqeQdv@uc?b1KkrT=Z0 zK4X_Yo~iyF>(}XoAQ(%U{fHYSV@Z!a>jc5laxXmV%aFVc!C2z>6Gi-^c`c2_j-{EZ zv8%5WGsNu8RCBueikWIrSHE^>kMLsq;l|}X++h`rML*ATHWv5jgM|63Cl-r&ip662 z((#p1`_6SWJBY*febT*+-Y^K(w)GZ^v81JUIxQ_`3{)uS$w2i<@&a+-zInYo;vHN? zK@A-1p}x6jKyXWB@jJw_xO%WGL!d&I-&z1gC(L`Q)ZcElRbv(pmYl_Xg^Oz(BqwoS zdO;g0;GZm7vlHe)IMW!5J~I{%zicc{tu+>XX)OB2JT70|v@BM7FH1eM%uDJ%NBw2l zSl^CXmZdlz8H+xL`#I+Rt@(>Qb;9z^0k2HpF~7mphQ~bF;Pj38VE(?AD`tpNQ*mFx z%0EQkCaAr-i`9OG6RZ76s8IW9PNKSgb&LaUTUb+nSREuuqAC{Nkpywyy~5RgqFH_M zy>W)yf?$p4pfNH#Jum`drO;oUZSbgN5&#I*si5hmmY_H*tcS@QFQv2 zWqA8r_2Ry>hO3A)Z7GX1@_S}@11dy{|6cuce|Pbs`uF~7@n8E6eVikT-|cI2aHT^q zf}6)KVtEGso8{Ta%5&^UQ|Q`XUqj;>CSi4?F0@Q)>CKeDSM& zEvgTSPG7OS+rLsTeD&WBPxo zMjSsK{53MU<*`iSDVC`}RLFFL#zsxv$z}6k;6z#N|79QX3w8aMBgAv6`O8uIlgL}< zs`foGU7Foo-F>3H*Ek%#j74u4F-eUjE0ZV?;;y^;JA8n#C)<1N!LbcK8PEG9x~p%V zoGv|Up*nrlev%{i$$Z{NZH}BJF&A;E#bEr5c9_d&Jy%kv7ie-5E4U=J8qN;5#i4cR znq#q~l}xQZmVv9K`Q=&axN{M0C;kEVU^3=5s-(&QjyP4v=OXRL7t8 zPi?Y*8mZ%#sDzGIVjc63Nv8Ee_T4PWL+Q9&U|e1uaFkxBsl!MQ_2}2W(k}!2!F!d>xjidw~!yr`DpM_dSgV@FY=f#@rB|5#k2mV`}1hEt;0<}RWQ#(c(f!8H`TP@O)SZW`}Q>EjpoqFahQ6uO|m5B zF%FtgRZ!JrnxnDZuVEYJ6+eY`HMIK-^)i*jT;(}u)12X2&f=A9iJ|mT+-1>P)P4%@ z<<(A9K7EYFXI=5#RGWy4Y3|0XL$$0sXjWuH8jeqzqw((f|>3y0xnsr9ZOd1d2hx6pO>PKh2`^2R4QgWzc8)j+P zE~;oXpIgLhaC)a9j>55V5ew7kA~u z9&hqwpq4CSNj^7kPKIY=JMZE?pXTV%P?;v$h=#bZ-Q?yTI}FRm>+Jgw zJFPjE*XmuZRwH@xJKQ(Yh(?=AZk@!Mvxa(>^vI=|+fg%{7AEUL8+X9EN=wkG4Xd<_ z$DP76ccz)|(Rhu^JES4wFx!k;g;IIOzduFB{Ve0>7~ul8e7`j>(&3KWX3&~6=hYwc ziPnJ_GS;46&KNTfoZxs;+HKQeYQb3#Q~qq)NNW$hK#O}ck*Z>jX3N-q)?|XnG@aMO=!^x^FRBoeb@or*3gGh zyyW||m5S!cWJp7^e&i#sNjs~!P{n6YCnbV4DY2?MI zh1E=R(d*VDY>;V1H`F~BJlx;VQ{CmeI_iY!aQm^Ee4&M0W#cl=-sKQ;SFW z`r9bePH!F${rUgYpQHLu=(B3O3{}+dmX?8bueBi)Py+hzKN_-nJZlIw-yLHYY&3%1 z?PI4*rOHlr$|$PzwNo0X(x&4IXwO`GpU$4kRBVsVGwV^Xu|yquv3cKeVFHS9^r$A#->Tbxpsh*w)kuJBU_2_h@ zD~u(>@rIsn`+cEaQ9W-cSDi4wPTh*BXB8Xj;^9@AXM8QK=sj4n(Q%Zr^*)Uxw3YW{{c1YlBX0iP8~ET zQTp;@mbyAtU6LNyeCNmTF7`rkwKU|mkJS$@-IMN)RbTx!Sh_VvJ^F2&_*C`35~jAk z9PA>EW~IMLU2lz6(=WG4D1pkh`&rGZMm?`&8C05?SM=l$E`}SOR5v4CitDk)r zEFB%C-uf<1x|pd3Trs*_8QECU(M(p-R9yQ1qogwU*(zB{v*4+fRF0aM7iFq@F1J>@ zem6o*`@XZJ8>JR}A1ql$syn`qlUj~MfuXAIYOsr8L}Q_r5vXYapqkJQ>I#8_1-t+nxiE3u24tS_VtKs$Y9nkI(_EeqJBc>LgzSC(OC;seOLxEII8^7yc9xcV&A+ zVV@1=8!O+b@R;C)`ADPn9azmva94u*#EluJX8dJT!)~;ZroO8Vy5TMLe^;G(!?*b) z6ljxQ-l38kU8TM6sON5kx);CGP*y$ynFkJ1<(ut1D%hfL=((bA&6nKNl$&kb&!BX4 zaVIPy*2RH4)K_i>N>{e4DoyLckz|ENR*NeJsq9n6Xe9iyeQj08smV1F<3W zY%-&q`Bc8Mq0nC)`ST{})(-Xl&%RRm4%PXVzspx|!A$!HId<+)<8Muj8ckJvPMjIo z*eROR*hcF|u$tGT?K^eLNpvb0zyg`ojIDm^qhF$1)NgAD(>)C$22x#`>8pN|<*Cjw zm!KgVZhs;jds}sTsjc+Y9`)zjKj_ME>`~Xx2vFU22dMhH#nQk7s(Lp;`s9Fm{%)`| zq+A{MR;(IPmm$5|SN-UnR_dlYza~G^8B@~IZL7NOUQ73Nukm_dz>{dB&i7Go)Wu76 z2UNd%t^Av%Hdxs`OLywc+Zxo@V%hMUhnjuQuZcSk+2eH@QabXg`tH2}Qu7q`_j~cf zuCmQ1)yz(k*1N^-iXhzWZr$XInUxi9?rpp3xPg`2?A3;n>r>T&`$^uP)4G)mKgM>= zl9(T~WBb=B>Ua0MxpYJzSdP&)wMbC|e{I?I0?sCP2U`o(_S(OC*%qi}xIi=WX3DAR z3%~k$-cErA)xq&Y$BrNK9L*p1R^R;9S8{z-{q$GgkWq*Zk4M&y9EHGInl)fG!B};i z?yY)0IBn>80;RU10gWXYPN-+CwyK-IrvCF_cFSdKRpW+-twff8@D_FHZ!Mx0Fbkf` zQBz4K@(!oB9+$OC%O+|rrb%||vww?P^IK@EW?y1Yp{3bYe^~N{hshpeHX}n3GSIr9 zuL#oWZv`#f&q2U?8pMO2FozIz;lo7f*k<+cLvLwGl6vW38|f_v)$%Yv`nE<5{Jq8W zo}1ai@~1#3|0Fchk)PaX3Cmx(EX)hwk9O2VS}bj#wW^``Y}Z&cjy9~Cer(bj7it== zrNE*9_ zRsZ^yl4p$?Ti<5*4%oFrWK%SRP8)g%GP1+KkLFd4=DVnhy?J`0`83QpQ`97lNgk{2 z+0a^bo#_~Q3WtL#yy=Mn^I*8ySUm6nnvSjOEbTkDr~E3=dc&Xjjv32o;-3}4eM@4V z;Dcoxl4oqeeiqWh=7{|s5(q$dZp;@9rZ%9TY?mEW=jE0zzi_P}HRdiCO8 zaZ*%*>hh?)`|b75@7Fyxr~@7aN`J0r`}JB{ctQd#tz`#30bYg*`?ae!yT0kho_Kz` z(@9^_@=2*+eQ55amQQe0PygMl$w3Rt-ff*a{_g;(JYFsMJ4^ChrxrZ+R-gRcL-Jdv zc6*#6Rh2*!A3A|vz2Z~Pxe|J%c19mJ#jUnEHx6nxOHY{7MYYuE9sLbzPJ7sVpD&T# z%wCLj$Pa>h*p`nat!4WT{;FkwPuL+C?oQ?2No-LMV3$nZOT35Ux2v_^e!rSv{im4C1PVr&J3c`iDjHc;RevJH!^k{jKs#D)#)i>Ww zj`mdntGK$?TB#%rh z=`m}KAS93IS9B?Pc)y}Ql7}T1JsoZ=>98N_p=s^@F)pujGJn%)U&nvWi~Gg4l2?c4 zUIC+%Qvx~#^cp^j%#p+t5+#Xkaf>RDk&?K^lrwSitbp0m0_NsToIF*qre2txJN0ED zZ^qQz88s`9ADJ~HVDiMg8S^IQb_;k;J9pmf{HXzX`3t8`fyE|;cvLy@_>q?bnhH}8 zF41b9ZEN#t`rqQs?iN65CDB5jIEXz=^!wYraTDs*-eSpwTo`Gw6o6a6E#RY07E2QN zQ)i21E1qX{>teBl;F;c?80;_L=B^gYJTMBKyan6<9s$$hEtXpF0C>||5blFUe{^*> zizOR;1KbjVkNztmRD}q_zrjaf0ai^V?sfNpYw0KXSi+T{H@F)W=?IE z6$j1-$ATNd#o!TeD|ik(0^S0zf_m&{Pr)$I*TaM_c0ou$%f^CZ!NuTWa4T2?9szHH zS3wO1O(E1Vg|IFcv%sjs(r%JD?M0yDrmW zX$yLSgIpodN_QX%sSmLqH=~0A_;+z(VjMSOGQ}jr?F6&8Ra4-%uf|=k5Z~-Vxu~;sHE}$14jZXpNz+x~H+y*WHkAPdiIGiAAk|_G5I2~LxNFY z9+&}^f_dPlU>Vr-C2Y-L$V*uN=a4ZPipzL19JL4m@N793i~_fT88p2Z0ciRa1OTIv zZ$Fp@UIZV3_2BLT3=tl-?_G*XNgui|!`$g12%EsG;4bhS3O)@!0DGEnHg-e7!@wwT zCYS-nuD~n?M}S+v`Ct{e8O%iBYv5wA=}JseFdRGrE(UACy&(Nw>@zR`Okagb3YLOd z;9jr*G@XP{4&fG94eC}S02l-cT`-1V0Js)R0)q;1tpKaRLeLCWfRDkGpmPysIoJ(! zipJyv+k&~E5iA9>!D_HD8teZYgbFB{tU&<>->OTiW3k}YVs z3Bu=(>3PlL#;ZJPM|Px4;}Q{57;3G=i1jE8uC6J`1S>pMh@O1i}4v zv>c2BGr(zJ9=H`O1I?gmH-y$(F)P9D-~(_h=++%A2cy7$ff-=J8wda{1IxfW;C|3) z8&(0>1FQ$ffF22`I2a9H1&4w38PPmY|0b>h;0teBOqTr+wn1?b+z-}+UxFT3E}rG+ zdN2XZ1U~>5gU7(F;03U{Ct3{Ff_`tI>l4v4U;vm8CV{?hW7dNiU;(%T%uK~WW4X0r)vs4*mpgM)O2A_h?$*A#r7<(`ROangvb3mm6V-L0lE5Ru6G*}5f z08fE#y>Qh7qrj%`W9UF1Fb|9X%fJ!fZqT$6!bJ#Mzf^Y_m1DjSNKNtZn0DFR4z^PzW3f8|0;W8BOf{(yE zpcjUu+fD=khfwwrgc@)xSPw1+!*^j0fSKSC@NMuaIOHP?L0^2q4GaN42UEbS;1|e%P|X z1TYI63!1>R{@Clm9Pno_8x;vXfH?pT2P;evjzTyIUI5LY8FWJ6XJA{<;~-j$fLFnC za7q;>9oXd)taoq;=u8U&Bfx858A!i*=QcnP{siN|ki!@Xa2U7%YosU;a4$t5MT*Y@wfF)`FeEas)Dh)!=xr7Mus3ga6y$1Mob!0RFSiV>JxL zwE#Q~o(D6azjgsV3&#EnJqwnCPJ?jv1KWZR|7AkWAjlU{Gte6>1TX&^lL}0}gn~ig zGB%_PT(!P~Kll{P23@Ye9}EC1!2aNAFdM7`SAouhvAVzr@LymW_%oOTJ~BaA3nBe` zv;fQpPlFX;9rz{aJOsyaFamVAiU43Bm;)w(Yr$DyC0GQW1}nfi@FeJr9{CB30PDdt z(ESJG2Tg$x)p(91OaSo&d*y znIi<@Fz7rA*M^@^Fc<_rKsh;}8{#YjqlRJqZ-I~j#VN1?0q)$uh6FafiRA@GgI);O z2aE%^feXO<;1+P$&zK|N8n7081nNc#LZ@3;|6mH30_K8Kz^&j4@B+AfB-Ve#FIY}c zOayO&S3q4R4xwNO=x0U%Fc-`Q3&29~K3EC5-bR;$DPSE~0cN1Zxpz=eaO+)6X7ErQ z{6P16=m~Hv=w=#?nnQ>JeeUBj3Httuj9?uYHwJUyH*_)R@({}mj0DTUv0yd$HdqTT z{2j|~EUuzp0GL>h3WINg=fFDf0jU22J%{*h!9G__wo2;VOg{m^kfbFq zfSVWj0dAr*`G-OxuXu?D$ICECq=y&Nj02=c;be)I=%>*~pDCd)!pTwSl%9U*3xv~s zZzLTfMDNYsqE0%;GWd`H+eDIO*&y@)3iY{@TuB`G>miBk4Y?&gVkYryBNmL}OP7_*pUp+l+FZD%@N;{Hk{ZZv=UsQQ( zN76GKiCUW2+mYPzMg82P$gX%O16o7bGm3<@hB7yb^r0+`B4;CDETF~>QRG=GB+6-` zFpAu#*{W%x8g7`dq?RTgMUh*`D|!$|KUD0LKMC{0yzuCRMN2#L+umf5pV(T;=|pm2 zpe&_af^;f6DjO3rw-Y%_b%mYCeaeNMh>Jf@pGtv`89t?*NIKPRMn1}Ih(q~tC$fw3 zK4O51PiKqe9a?Z=FY;rc=uO-LP|MAoiDv+689-tJP|N5pbVmD-JZeJ%HS!^4G|{IE zs}|W!6R}-ry?n?yn#kxvE9XNV&_u5;w1z&!Es$GiHAxgrjOaq^=|eJTV!W2fqlsxK zhg!;L;*~D6+CF4AO&mZuG;t1zrayJj8t@Xi7Knz8k0#G3&C$fACpzP@g1tJL^bEpM z7#2fZI*C4!zRtLW#$f+N!y9If)R#>ix@pWqp0{EDi>|h>$p=A*mmf#cF{Jtx$U85N zwN1Yr@-$6f19^HJn=SgAkkvSHmip_O;Z&^ohd|!uL)HW%-gzJL0p+SVa*Fau93SBA z@cA%~b+Nt%@~3fp)!c-9B98PAfv;OUFF(Wudrv&;T73#+=;;#FPk|g3Pqtw`>Q_Jx ziDy$=za4VCrmunARg-T*j*aK#>s)d6jOXQtK!y)nwJDI3 zgFd>2Ahb^;N3kR6he7sB`_me(I zB;zS}CXywTm$dkq9)j=#i;tZ@kzAv;vn-aMRL|lBiCsyLaM7TD3fHtGK0AC{;{HF0 z7Vp_K04pT{>HbON?e_KKCvE6OcF}ZYFS@zT{um`c(kQDk*0$)((%%C>sF(Mu5CPo>kbK{1GwL}4#?Gm_CGMIXm(9~_>^8K}fI zG=R*Z@FMFeJjou4P;wrShM)#?LY?a;>QXCl z3cEDaVrgv~b68`{)39HJeU7bN%4QDq09S`UVPtR@g!d(LfTr%lES9ff(G`=|x}Z@9 zhOw)ho_^9}mFcHFT=pbx(V|n+VQAJgfKXldr9HgJC z#fgSmq{03t>>V+a8|H#Tm`EK0pvr+=PtHf4;>&r=cy{Rg~uQ4WMmV8jBteBX3cJlg}su z$aM-oB6bCQNgxGIYJe0wj2_86N!fU;Am2dTBn%_Vx?*l&6mSjq(@%jeYB=8{S3r&% zu3d{Ehih^TWZ&WZx_Fc8*|l32gbh>k34!c4oR4@4m+7%aKLs-4v%}U3$N|IIp+>(Q zay(+vGer$##9{TJpJu&_`ov>YDv*!zwc&iTHU{IKemLzd9Jdh%#I@vJJlffP1aavG zb=C-a2jeHbJA$NlLo+9iLDkN=9hJkP(c_xnwJv|x%X&(Y2Do&m)5M&TCi4a`K5I+ zJfg<&3-wmWoyYOU9pU;?ToA2t->~#ty$zg)xDoZ$IDN8J&Q#4MBZCj{DSJ-7H7gN!Vb$3kZa*b3r&N3 zKZ|v=V-92;Io}gaikiqLeS1^fR7kAUdf=O(Y$vK*sIf-0?x3p&xxk9g;Zpl!7K8YQ-NEA&}P2!i) z44U|05*tXpM|&)D1WiWPtCMI)`Z;Do7e+o!M&}qN^NF+tsud~Z8Fkx}Li~D(L73~w zy|A=(WFmzRS<3Mi$7dYZDVh?oH{eMEIg%*?$V7^8vJ?oS|01P}ZLiMcy&3@BSnOOU zCy~#4V~}H~uq|$L3fj zrt)+A6l|nFO{Mb$_Y+g;LCQzJ9lE-y4JS$`<^EKQ1-rJO`^Jxa6M`oSW_Xxs%ME&` zju5BP73e2jo=Qq7W2cc_lrK%=9ajjS8IY-N>@?!i2Nl^rjnA?=*!E5%uNhIWa}*BG zT<;hGc`tb(6-A^$d|L~Z19{^#y5u}t&~B+g_HEPn(-xi5n*7*KY)RbuqWSNmAnar$ ziYB&BBe8ukT)oKoJ~;5^^~F7V8kftcJc4xUgOY}I!eg}Q{B%AKa{uXkHEo34V>;hj z_CwB?&U@-2_wQyz!*ZvS(Uc|A*_P%Q-5J*rG8kbUhe50)duR#sAa0w^_x6pDcfcF- z#&JL7eca_D#CK5`PU-r3$fppv9|Av~PNzNgzH#I%Ju~d?hjGmx*KmNq;d3UP_I^_O zOn!RakI6KCCU4F~$ip5VqEndrbc-dQ4)AK6vaHV;q!|s@^f)}c%9>7t z`bl}y`8K@(x>eKZr3}~V>Es!x97UYnG|n$xq|E@FEBj=#jv`qDFbMs!X~pp{fhOi> z(~A4)Q)2K5MK1YZ0K#m_C8sEN25vX~=Yh{LmkRkpuBmHoa@`30(`h9@$4AdqY-fAj=m3 zRVD162cEaMgL*m>$GUl5L;9-PosBk%xXKA_e6&_$+F)KZQMK zPQ$dtv8Nk8kDk*ob#;yjP)Ovh3^aNF9KIwLL$!wdmX2m`g;>DFBM|3Pu@xP1or?$3 zYfACFa}=`hjHg?=tQYL#Y>ruHC~uPuCTuGaJhrVpp(hV;bQt_U9q zLT;$n+{X5#z`nMKUn!roG6O%z~sjq;;{33qoI0<>4CYvGW zYeAe6(fLJW;czsxEo76XH$t9MM0Rz=SaBCTmh#aTLVm4?_e%xjZIJ0BrjwBOTf;-% ztI1AD_yDhnK3O(6Li|Wm8zJx1={eX0K-K`M{HR7Qnq~b(U704Ay=|cr(uxk*J3hIPD6cco}N}BOgik- zXq|_UJEPI2t;n;slpdq;C}<3B?T$e4b}0!TgNoHcu0uie_De_=1jluJz6U^lRLbvV zk|0a#_zsf=*=-%4hXs(s;7{jdIpnN${H$IL`Nef4axC<&rq}WSrrl;SXShbnWFvqQsHRf5DThSfwAe8P4J^O6Nu@YVomlAGLedP5OHOl zDE8Jz55Pz1TMwR^C@zzvi1s9Xig-%O3MW2O#V}J`IDQMtBD!|Y#U3g;{v--dL`Q^& zZmARosgvVYA0ZRMEXVtP!bQ>XS0CZF=y=gbSSmRl_7Msk96vG$n;aZB8ibt=j!%4q zN}c1c2H`WEBff_HozC&FL0INU^M2^)_`a|3iK8RFZvBg+;}e7Mk=_&r!wtPhjjy1} zDUg4bJ+Ar+o1Ccpi<1YwflZoF`F0bJwXFrx^g9WOXU-nmTML!VR?x&z*I<0@`iUzo zV!NB;GCyIjo8!IKLam$Q#n!^6=I2Ei>fM81^AmQq7zcTaNAO2}!g&uW`yFW+T;nJF z-ST(p^|)2=cYeY_uOl>Zz~_?gVAeEosi>p9L6%Mu2arYUlqUFRRki-Ouhk{1m~@_jwNXqqa6IG~GE#e`NYyAma9Ps$d`Xjq>=%HESpytoG+FLU(C?x%JaL->zX6A?{ zvGm}b9I=%s6^rT~spUbhT=6$iD&vWOJh7KS!jtnU#bTKB-6gWNSd28?qNjSiMsf%} zFLNPNOK;ZFNm}}nmZn<_eLdFF_*{d%T)*SAHXu+-)AJvF)n4J8!4WL<`<_cy2d5vN zPoKO-a@LA|P0q1hf<87|zE(h)GmLymd0_K zy}p0mZW8W2uRzPV<8TgPgqF5;)Sv6P!CC=Ntp}|B3pIb-8M4=IEp7Eb`&^owED?i( z>NK4{%Ym;kUgv@}PrK{Hxm4^KWYqNSHNUxbe(SH39QbwKt?8}t&S_~ME#Dn2ZSC}@ z*U8mV(a+uIC+>iI4)$vI6LDTA_LLHSB5CXJUuJ~=!u8mA*=wGb_SDjA?9%1Gkjizq z^}6s2ISmf6Z|6fZ&uFcu`)!`K4z}GS6B0DLwchEsNkW+zDbcxACXSchy-iM+iGD$U zYJStSdj03(AkOPiud#PX1ZcAF*Z;qhY{MO1@C#b`!d)(~3n;{REv>bKe6?O|9`yg3 zcxiXZ)AeF*(0na39{sV`b}en4a98eCav#AOs@HwpLK8xwKT5U?DbzJ?PBDU z{=7#jH==&6?vvA$n6!12Y4?fqCehD(tR5$5!F#tOJv`yH`#ys(j{LqDAN8);Bu4de zdCYZz972?qUaqD0Yia9l>imQoaH?dlAy3HDO=7O}+LMDho5gfdiui{dAy_%X{yF%R zh;!c+*B{L5DfQh5R$Y+7E`UF7cR0Tg+~cp?zZjghRrk+)a7qiucb0-qn;aJ`0hhMW zyOe`v`}8;TKGrL-^}-=;{a9Su7QK3jlpNCgxT)fX#c1#PoDK!^ae`9G!9)6Z+9wYW z>HA4OKan1X^#dg=__c@i;nJP!r0OvA=dKfnBl=#_?&}Bp9??gM5_Xc8KZRoMb@J(_ za4=p!=yX&cFG|>odLPppCFMFPIi_DC)zuzsR;~9IrL(o9?PvN3X?HCd@tJ;}w6K<( z{!IU=F|y|b-0p41$A5Mkr?@p9+MpG|xP^U&2zR>rSzWr3&_#Se|heji^D zE9L`k-I-A_XrFJy&2*e;p*>l`ecNyd;?}pw^%MG*t*WW<8rLQ?7=IwmPU=JDyD&hCS@w!6DIdN49#F z$H;8;oQaWh=z8oPE04sUdT?W`JYS@ntaF^aP{O8L7$*;-tLj>u%vP0iyqrxJ>il>_ z-hG`MikGL-O+K)jd|bk&Z|){flD6L^Y28t?`F9U4=q}fb60RD#J>*DfL@n9YL+&Qw zj_FDd1d6{)QhLgEf0Q`>k(DLb9AC{dt>gOP1NC_*pXIO}=$-crSUnNUzaHd&?Un zT(gIy$O%%yZBmwkF2Fo}mLjux+9g%)E4kk$i&NzR(nB-(Diu9YS4;f+$h+tn;+sBl zloWo8h<)XFDf(xU&{zImdVG_38&Q$k8>GsJim$yv{xH%WxIqH@$%CXmH%NXzq@8Y% zZT&DtILqk!%ZU=sCVl(MG18h}$ddlB&-;aZ&|jV*h5tfY4v@D=>M8Q^06C=h(pT|M zjm5e1rr^K0NS};8NSD2V(dn!LFQ>~P zNNofBy+;Q7I?x6+#b5n~uMj=MYYU>szVSV+^L3VG^B|Vde~{c38I6PFc0fK)y*`Nb z^szy50F<>HVul>h(c2`-dpF?2104#edj)@(ME?k$8}}$x+Tyd?3*0b88ZFyP%Xpe!Ez)L9S6%Ht-U`I<<2s)?ZGpJgLq4-85T=|wL=Hu&h^O`sVfp^el}|VVhccJGLzyjmDC^4- zj=db;ay;b-9L6f0%rTK;Dd6HgDQZb~RNCPrrh+%w#dH&6mfPsQ=k8B948vKd?i^z{ z7ID1JahT(Kjwc+35v9BY#GPy%!?J(Pm4EP5$XL0Zi+7G+6=tyH@W)o#4`ZN%|H`qf zfDe#rjm=Shh+RPJ)EuVOz&!U)kUJyvFC0EuY|-}4k|Ryt51nLesDk(nK0~~MH>;W0 zdLwiWpVM)D>LmAk58v0s8Aq&#!(-~iHYSJW7-?^(CUS9*X7|9h?1Q&vFQ*%Zp@}RX z$JhPno)QgPw?=#K%TRig-%%0NE@&d_w=|CV9OWFRCNh`5c`A4k^Bl}fK5=B&hjgJF14^xL0^R1kGByd+Bb_)W_eaPr1m8nU^;v{;mi z@FVt-P{&(MVkWguW?7etQpYG!@DT^WI=aDQd}9RCA{*O;fy8Iaz8;1wF=%ccijZlI zMnA#-aAhDfvgH6bLy72q#eley!w=o4_SI}GW&`;IM&Js^6As@Q=tcwSGlRKI<5)F= zdA`R}CjdXgNl~8o43kDo#X)}n-qJE!vnGjdv;}00bFsigIL# zD2NY`=ZQ6+IE7`t&FZ(GXZ|)XpQ$pzj+(CzeFidreZy5S%6kmj@Gb^~SlmD1#C z5p+P>N=iMp$`C4?M>jCxOlwWpX%$>hEHmAQ#z^xElGbCZXUPGshJI2+5r$oKxFpfm z9GE5h4>7zU$*y>&DT>hnSSNT(uhB}!J^L5x@}4Bu;*%FK1Nt#mn^;aAT8-`xhjhs> zAqgR6YUO!In;bdR)sQ9`UcncD#U?Be8IvQ2dl-64UY?t%`x&@vmRECFryj~-oq83S z(YMkI3~gUv<2Hn2F_giEt`73_Kw4n|JAi^WtFZLpB2>y@`xV?9k(w8Oy7cmqzQ~O4TCb;!9SRCXgn5WDk6}AD5_7k+$PCB`l z1wUg!D=-zdS&eo_TEXTz`Jc{O1y;gV+-P_H0(OH=j>gOxfSwk2(BCNfu+bq&!ITQn z$tSP~HeztaHi(4;LSQmq|pR! zf9NE`4ihme4CJpoI$V9FZli6Kp>x>4rgBW>SUHEy zgm;0ShWB-H2|8a43B#vyc=Lg2@*}oD!$F<=egJGq&=0WM#CO@+W)4J`k0XuYicX$E zSIaW^6k7d+mZ=yUUy_`U3!s6_%x5!tBZV(HnvWgXm(=Cs#DcFr&Skc4b6LH{%*Cn4 zKwg^5rtKRXU(Ce;(LnBVc+bPB(Lnl9_>!0BA)haKZ65OZk^?klAm0M<21%CJ13mo}dd;>=kCv0D7g^~eUSy$PdJ)~|O9)qf`XZ}~ znc57b$$aJ#KA$xueLl-KZ@%26o4gh?Rv1Zdonj$)cvNAuTE{ytXpb*u+{TvIx_gHq zm{at7DQt>7~s z>Lb%#F8}yeM6PMlEPqBe1ox)RJkH=oN%T)^dK~6yG~u7t{x>WF@hB8h9daUXIpn#I z7sEIxhB}JEydkKg*s6cidG~7|v>escW6WMEOlbNH4yK6f_=|ohX-Sono4R+vh58QH zEu2Ml)0>7-9recdLd1XI7|^+yF3_aRKtZ~|0_6?HRm$`wG+m^uVqB}d#aN;oWGq$A zFs@T>Fs@fzOjz@}z>P|K6V13;>Bab}GM@1@Wg+A1%3F+YD4#QyD>oV6Q64ewP#gz5DDL79Pgy86AVNtlFcY*8_JV^0ELJ{&| z7~JgkD+0b%K`p^U-R8kS+ANg4#9)%NQ1%`cJi^)IG`_-vNQd#3mZB6PdJe9O!I{mx zF|ld(f5Gw{wXUXCR~9Qv{^t&c>OR!<4H>zK>|BU77EI1?+~a7r2&*cXbmADkh`GGD z2rDj_Y+fY$jSPNOE=I^VQHIzY_2i`qayr86g8R8eLI)wuxv4yu6TB%jv6QlvfR{DZXX9OvUmtQRMi z;6HyN;}*-lrjR6Mz%rB;Qli{OBwffl<;il&GR1ub<$9$f;|3*zQB`snH!6jUo0RR0 zo0ZQPiSiTU7UgfoR~7wA8s{~o1LNz;P{yrF9%#~qyrFDmifu|2W4ZDT8~Pn4GmX~siJ3FBd9C*u+24CANDJ;tMocMWQ8q9h zSN1V}sa#|{q0}>;RFpMziG+NmM697ar3_^JTFGTRt*m1_qrAs>R{28XPmJFvVlmD4 zjS|3kPD#`_p7Ff$ipH&s7nH*qe*{B96wz~r!&)jii=O^WXeN3lF~K0Z(AI>6_=zsG zze7R-MHkx9At5263+>^MkhY==&)!aS;n~AQ7n;4J$GB~%rif5in( ztJ|ppTDMJN-~}4111iny_E!O`o99wix7ekuZey0R`15({b&hI|pE;T?lYLB~o5eu7 zreykEWnQ;CqC5ka461k)Z*e6$OK7&~6V&UzC}*Q^dOiJwng~qnkMPpe+0%s3hoXGE zjAw1e8uF(o@9f7FKU*^hj!oV0{0}h%ohhuN@)!0rU09UjKraemofKEb&WeFCTIqlf zKXhR+N<3q%lFHas8O#{3oIxdYVcnGP7`rP!GbSj%G4@n;Fuz2lgfUrpgXw!I?}H{? zSa0QHrbtmfW9*}hV~%~58H`5dMaF*0QpN$wKg=&pX~NP2m6nX@N+4r~vWIc7@+xJU z80AyOSjAx-O?OrNK>d|Jur*que5>eS{?ZkiL1DPi59mP86j`6LNkz2DS;QTaM9gLY!A%w40DlE96!tnLa1hwVkB=O83ULla)#gg|6*X zC3rpMG$odCx{}72txRT|p)6#asgyC!Qr=_CQNCh)LAk>?M{(Rh0Tl>qkDz-`7HRUVl(=L$vXz+x$hF4XiXe{+lE#`5W2{}^m3 zwFkxRVtv>XDP>suaQsSVH+L1$1@=U~U5ppI+f}?=Vd>stCoE3>f&&tyV3i!~(ylAd z>&kU|R$*SWBd1qkGiXQdax`5n2lbL^hjkxx9DjC{W1byy!VSrwz}_fHE<{aUc!uTZ z{ko6GCrG^f7frn3<1v!{c^4XCq&LZ3Ew^glevG7ui_z~*{=fulKS7fBTtGMd2A{w1 zmSQ%-xk){>k=?6tl4wuPqkN!#wH%t>K3g(e#mryW!~l;Ok_X*I1o>-Z6?73pl%dG3 zix{f(WgNz@^buo~sVqHJDPYW2US}lJ3+4GH{m#jP&|yvBL)2=cIC(~{;FaL+a1rh6 zfrbvf17k_xAsBn#Ps5Lo^l-lo^o6Z=+_y;gbngPN^mYuASEBoy08Q&FY2dxVF4T9i z3|p@jF9FM`Z3vC~aqy*tAuxJ6z}UM*bKp(tT#Z(FrL;H_sJ#weumce6!b8JuCHocFJFFnYvB01R<*}3T$sHPq0iU(hvL+|^*Z5R~NRWu%* zM*ZiO#=#ifkvfXPX7O#zMzP~GeN#CX8Y1q96orm?`i?I%yDn;kN9_yf;i!=w-_jn8 z%GA=MG>&FmbfG&=Y5bF<81mv8IciX+cFiUvp|U1CUve{KIDeFgAflis(FkT>JGL3enH58=Z82>xfA(fjH8HFB`YFiyT2Eednt@iN{L3*;Y+ zrxAuMc@I8hDuH&3)gm(U;u+LDS^lD(D9|s`^Gt&LH(L10QuL9RVY+h!O$ka5T8o)2 z=n``Cr#8b2@{OjVKz}>#PNFbCkRH*hbJHAo9oqH`rY2}8vxv`_nLTJ*Dkq7!YlEq+ zotZygyIzb>p$z0nvE14Nd-el38NG4^G+W!VBi6D#yYE`IXHQ=%hxBans@xKfZp523 zVja#N{Be^Y)2{Bg5re??I{Lu0VXt$8o3@L6g-~p-qwaDP_4+S+om0tw?seTturl4r zm=f8i9o^UP8!7_Le;IF4w;8o=*w^TTHNKURZ6$K6L1KY1t zd%UG28i6;vM4o|PA`+9J9$+SFB(+Vnvwj+l)b zVCvWpvxRjDec;&8B|!+MbxB^S)+IEf{4MhQf2_R+cojt#H@>qs_wL?o%1!SfArK&h z9$J7v2oM6H3Q|ORlNXUHisb^L(nLUIKtMXui-3_LMX>-DK~X&)u0hZO+V`nK?T%yZN^&S&uwR4*!MIuz*U#|1{)r8I1HQ02@l0%Hf|U zylG^4QT!TBQ2cL(1K}(F=Fgzl0WciGPhT>-Sn*GJf%*~Pn>LEABfKpB%+QAonYI}K z#w^H<#82=`qV8|aLmkaATFruxa=>{7(ypDw5Lx9)Z&fGrn-;5+-?&{T+nHevWLh(D zkHC*@qs(4KOpBqlR+=kGjzP$OsjPj>7`Z~S7tjX;i})GRV0j56>!VZY5oY||i)laj za-+OumVvZjN42~uk7+^)q}gt&5Z@%*^gRp-;E3~~e8%|Di(>gER#Ln2z-^d+e`Wfe z=}hYij({E=hiVT&CKaW6&?^6N21FN_{^WD`AF{=XnoPhW>MMXWoJu+r@i37V(>7(J zgZ1~Dm7{48zgW5O4FtarSYq4GZJ0Y%FrDBnILL^MkIcls^hS>K5k&nk@{=5oy9bSe=0lH@<~(60oJGf2{q^^mHXTf}i1AmE z9Z@)5)o=G_+A2V|*cf)N2t8F#`w!Fh0rkBPt<9mb2=3{6`$PD5zChjfpaYf*4hStQAB>4`IgjgQz+P z=n7y@;tHkQBszi_wVN=Fw0|Bb%2iJwv{!ThM-Yn?9e@zEXrIp!!;ItIn4nw*;07N@ zpPTTa90|<0cNCrObHM4P51CnMfh*07-94CA2r#_^B2cV6M+Bc zg^}rXAi0l#1Qb`cDKqMsk`4lZH9b3DO}@lP==1-KeMJh3oQQSNk*-^Ahpr?-->@XHZ4` zSsOB9gxzvhg>2TSk5O0A8MBO19zpj99{9AtYg9$N7NA~&YK;R@0l+5UGh@)&Y$rJP z;-_a4vW`IFX}reAK%NBr2OGzl5`oxDbG*-D$-J3CSjqDjGaBpyPY}G&MErz2Mlr>h za|5>FSjJ+-(}zJAx5&-VjcC{v%LSy{qns_NxH4aQCUVSWQDPW2h)!~+>PF&DaK8%3 zbRT!SqLS9tjkBjgz~1)){eh396Ol+6^>yO~>OfxtNncNux|0lMBda{Qtj)w)8T1RyKn=PhOv z)Ut{!%3-X)Sjuuh()v+3QFQ3Zv5+;`j?tMpXzSBa-eJVx1Q=1WXK{PcX3?T7P&pQ3 z7<$e}UCm*1S;Yhq>%A1DtBAZ0~!#5MF4V^9Q+&rUZIDZwlf{e9mbQ5 z&<5S0^8oycT1t}y+Z@IVoj~vskZ(Lfz+_Y2r<}2`90apqOF*&GrqaYoDF^nHzr{zw z#E9@IaQmJl0$CTdXY0VGa`*0P&-Nm4mwou)ulwPIOk-yj+MPWB*xmLK6{9{3(ly6> ztopOUOz6CogCCrWB2vwYK}d`06$$79R(pIAO=&-4+YqMJhcwm~w`WK!X(US3AkBALC1|8JY>EqHhdTY%jj?`;T{~O;f!q7^@nk@RK=Ex0R;jpj~H&zth+^SW(smRolG1RixtCN2!7-;%>m&%u16kQ7(A>0v z?WpB4j&_EfH37VXjgu3oY>llifvSMsKlUJR4eYw7|i|q=*~Yofb=xTeo~}?s*5=8qTBoP zg$sO!OKZFSd^Z432}=@nBwKIs2^8Qvm+{TpvX1qZ9k8*9Uonf2l$DGJJjXQ`9z7N7CtzbEMH^gO1>D~*V*-X5 z{W#zkNu*HoAsjd@;ubtb|JBaL^Ob`4fj2tZG*ml^hVNczgv-%I)R{n)-bOxTxM6&Z z2cV{4>*!+@Zi4XJBvC2D=#Qy-5D3ORN+f-Qn8Qr-U&V~)Uxua&K(QV_@nA^_`CzF> z2+c+Q;>pqx8i`?$4_ss<#tM{Z$^0%TKi#z88*qTpSc{ApuV9cx7tw$o9poc!Cao%q z$5Uf4>ZHcxy;z*X(sD9pF>wYNOUq&~!P2r=S*}MD{=cp)cLYYQEN6vik2CER0N%n+ zA44MqqbMUHEs|z#tUC+Aa^1OcNOSUwwgA0duuuy|&~#QI*La902x4U4<93qJV+EQV zgbFQ<8qM)YPUzdX-SwfLqY1x48zX8m!#^z`d?*SPjh|!>=+RU>pdu{}xM)6#_^2Y)tTX%$ zy$ufK!wrmtEUJINtWH?-cv&umMhy%o8#)ZC0Dor|W%F^sA<9OG-cwBUCl#r7r07p8 z&bLJqPz&FJXH^!}Bj5&DZOOf)WJ2$_ha6CV+MOYR3Xu0dNXRMkEMlYCN#ZSLZ3e^#~ zWIyBaqrlAte7TKd6w{(+{sd-^UjoTuj?}_E^d^`$h!fOeP z^^5)#dN4;cJoLcIe#ZD=Oi;1=MA}u56E)daV1zCFoyAC1_cPkklmQ}^h8ul?9>PKG zIDwHYu$G_kA?71L^k~)sxVD5BW${Xa27bms5QrgS5Rjv60!G`)nxhrv($vq`Fk4A^ z69n(rL<*npXI$q>$a>(m*?1+S^hpTm;Aix~wG6b3{eDGKy(YWbc7tezo&p z!OW2eL||t>v!NXPMKMR6!kBTbl$p#gpN~Hm0Tj&g1KqqbMLuUj%p9=F7!)ldp z@$kVC0?dFzKB7P~>Sr%CQuvX@Kt{Y3Kn{x>SKh68VKm~R^Utf9gt*9+9)HmL7J)o+ z1Pka2`oQK`sEEYz=5Gs_7+>lG=<63ujHKcw3_B|t>wvVhz_Q+W4Ke=keH;#o;?XN` zS|^g%UxA&7K>m_UEm~p3csMnU;0n^N%+eIKT4$wtoZ@4En11=-I4sel_H1mRYrPHLVvea6EzqZ|0ZorwO(aZvuL?m z3+#4^SSGK6Qq}poRd^MrIzLK5B!9390-|`s)kaE%$g|Gb^|AWB47>e3RH^BJ8zYFg zY4MGqbU2@~+Ng;y_wHG3WY!Q_#NWS)>E?6iu-7F2sGk4MA9x-!ZzQk0289mb{ni+n zDD=WLDBO{ir0K=|B>q#tmFknx(Ba%%YXkDKXVNjFR%=m~06uK3QL{`)3+I+^nMQ^Y z(z}?IFmn@$jGBV+g705zlncsxFbd2EoE5O*IkY!tx*47z8bjV>NiM8sT1X#fPs|#d zc-3`AJPYEj))~pAR_#J9h$m)oqpr*drUhO)fF(`-#yXr1qzOcef2$|ctR~Lq)<}n^ zavvC+-(H-nz|_x#BMJG>DqK9S5K^Lk#qc^1vGJ0;@Q4dR}7 z2sa@t#d7zB!7rQ0G&AgnfXjU{u&n)~2biCNg(jmC-$3FQ<7;?)E5No1Ki!`OE`iRN za}0<0`QY_9v?ZXTM>yjh(3cA09s3dRcbt=sFl`K2eHh7(lXhQPhhD_)Wb$$AyRj5r zw0;%gCCfRE(mz;bMfj7|RD?fUJrT}heV=+(OFrWGp%5D}5YVeHH#Qhy-Ws(7R-i-) z%S`x4nQ^;N_5|l$#OulUp2>(ejG@D#2{S)IyixQf#D!jTG6M&f{<7rxAwOox^FvN% z(fJ`iPkIo!>wca}LF8G~xP2Pc;K{Ty`@@H;4#W4f9bjBY0q{4da1THIXUx+I_n48$ zfeP-YX|ebT6uT|()rhx?(fvH|Re;O1@p6$UlBO6>!&sW@S;VZTk(jm7NQv`g$C4kw z#JhB!M)Guk#Pci=1bG_A(rnHm=)8o7KeN#&ALMBu7y5$fB!q`A+lccd9=;#sUgI#? z!pB%gW2na0P%66`sfz4s6!HI6jbe%lAAJI1GOGL2dvSgU>EEbP_=XA}sIXKf+=Jmr zXi4#}qw{C<3ftEZq;+ua5gM>a6hO;+09(%BQ$N4~ri=k`N7u_EN#*Vx19(u}g(Q{k z@f*@l$1MYxtiIfzFw~5paSN)d^sSeX9uYSzQl`am;f&0hbi~8Rf}&#gB%@xoLP5kr-8ocWWT&lxpc@{VWBY7x( z0>{MYE}fK8j_S#sK_H!!8V=*)Hc81cLEea1lHc<}p7c_Z9MvNPx$si(7Q{JpZlYoX zaT_AZK`ot-dJf~$KvW|1VH1IyMtGr}#5Z;roq-oGKCS?6lZ`L#q~tn`#-Gv@3W9M9YT=g_$lR@`|6g)fV)&Mij9{9S+Y`5%l<6G_do~gA|23PC|EPt( zSc#OV9WbYum|tHk5+maOO-wg(N9fF+7XC*QDThu*+3GAWrjCgJH#sC`0jcxC{a|cq z`@MpAExur@5tC|=!1?S3j`7s0ncy6PHms4BfyV;42VyS|D>fEA{O(qq3-WNh zI$tUX^Ew^#QS&-)woOj#CkbXx?B|OSOaK8*>^};aoY=Q)`{%@dWt*7TJ==|xEQ1aw zg~ybGKA3^&G!M=0g^LlU|K14YloK)^w%rJKsVR8Mb~y!i&6LkA_7q&E zmP)HBxMO9NR#WhoWmQ^D!TwP)ZBN0+k*U!Dnu%oy%&z{kie^_2;^Ea@r2gojNkdKF z^qRf{(<`d@FRauk56pNs6?9u5X*+&;Bv^e8*hw5mV+R2~WusWUz$*uA2@1h(0QZ-T zf7Ah^!$+#2x*2*BJ_ZOneqe_YL%vvL!rD!iQAElg?vPEEDPXe6s($>>ChPyPXtF6E zlP^ZC6#gxvGFSJf6G+rlcN)vEK!xRVWI7LF`aA$tll2N)8OgN!sMA*9lxMJH1NIFG z_hZ^Xg65MtbkoXBJ`87NKwSL>s*&zBk&cx&Q~^}0c7+KQcdVkztF&s>gfy9!eiR?J z(}*mO=9xFrZiBW)Ydq4h8_53-e)>hseyVx+`kkUze2c(~ULh81q&M5mSo8%t)(Gg^ z4YvXK>EmW2MKLXsR`pQ-^!((HdD?sK7=LPRJHLEEG!pqz7Wa7`a~M@}RZ${F;{ggk6a_>SD{_H~E#1LM zF6gc@Y7U~uh(*X1EIt?L7?#9^&QF8jIU*8OBnA6?px>~zB1%3J6!S}n603l4k{`nY zvJh1Of={Fc66()=_CXsJz7@{e%a>7(|U%|zE(K{eo=o2JZd?vH&NtN3+5PU{NMRI)>^HZLZbPfc+NJ%tINl~`R92=`d`Jr`# z@hdLM_L?gkXBssbs{n#3Hj(Bow*$*{6&>yz2w|-O?}DH63ZAuTL=hFu#9Eu5;)qK8{?&NO;Ax-ZU547c6$OEOD1vV>roG1+P6o>qhx4@-G=lQvRYpX`B8gfm(`O}PETzHMH0jl5)1-HlQ%&RNV}SF- zFN}H_26>*pQ5cn6tKsY#B8SZ_%6_?_*5vz2DudX6(u_=+P?*3;#1WTL*C zGSmhP@AtG;w}D9bX|A)Nshj1@23b!}-5kecJO|D9@iYk%>uLkMf~l!UnVM?~i0U?T zj*?8R9IHQ<3wbi5)?s^#GHN3d;8_Ejx^0~+!DE`_@*DJ=oXT7kF(w$~;k(ZE!tz5w9H{P4QW< z8*gTvFp)v47$E9~*CfPWBq%d1o8pC?5U&^BisEGh5N{qTGQI-mJu^>cyzUg@v!z0X z`w*WKM>LC=X`12e1}aqrA_0Z17c14cjh=q!M?-qYTkiJ9ElVJpq5F-9 zsJj0NA&oBjke&&D6LQ{uqoTKN2S*TD6TST{#vwTvd3H_*$rwF|w5K=1rC86IfdD`5 z2qt5q7sMG!7B|hqJ_GJuM*uY(y)-UZ7+JCAxkLuJ%n?kfxr7t9GcWRH2aF(>=YtHO zdDjDYFQP6!TxgWesQZi_NN<))bp|@?f#5SHWVd_ieI&kMfze}uC#%rnw)7zZhajMH z-3_9+T?k3W$ZAkb^pd!WI>%@bdNr00EQB)dFkcTs%k zS4O1EbDC;{PyNb>i>f=c4D}CMAy+N%$#p{R{0c5~U4B*u55B_FW?dfhwUO_wuU!Ul zuOWBvwRcUFqSuG7+i|~M-@*<-g6cPW75d^H&GqqLn${pZia2_jSwU?2F&uLkkN>0L zmlfhDgGiS>7+JGI!-%5GWegHoVgBXN_?i`qPMH-fhA7Qz(Pny9xKjrUhK!jIlNI6k z9Xh$*CXucPl4{Uf->$PT_(sl{fry89{T+w0va6Z&ilg;p9n9r5q(tiwhN$dXZZa9u zI-HF}ZISR;^yx?Yh=veG&ul_?VCt;=v!v+IdORqOX$B$N0c^HaIUI>@F|&|ZXnCJSZ_j>G zD73<|{y?I;o0@xrRYpgmhd=d|kE}Xqx$K@ox!qQL5)!@5d62MIb9F~cG&V%5cs8L2 z<;1gKvMG8YUv=Yt$TH`sF2EHCOg9YG-NyGque?s!+j|l8#>e7bJqXg%+5b z3glQlAPXVoOWy=2PT=WJDjt&>(1!wK1_QgGigM0Ku;&#_TseH#LF%66u2B5PgGN${ zXDeK_oHBCI81yQ5>4w608jrFUq7HL-g+oTF*K?4H`Gb^39~UTI%o=lnyCQM)!2yBO zJhP!oPHR~z`u>2dI%+bzXcdA$@wy(6gpi6xUnh`tL>1LS^L#*M*B!wz)MoU}0!9&4 zgK1Q2{3oc#@LypM8>L(xPFeCAhw%}X9NtBMZs!x|<-_kQ-KUy{%Hin<;&Zl(@tMAEP>j&iABD={y}!d&XcNO6 zj>*_6gfG*?t-Af$cqIHq!p|C;j)Wx=rWN8rB0wYptOyLEO#(&2V;%nti6D^(x9;vk zLJmvO)^9N6CLV!_x55`95h4;v)}c!&NQDQ`lvCd79D+ndFpcn4HRA|$j(eqm6s`I_ zzMz@In|+UgH;4B}ket&^m^gioLAH}HRcb8Fa~NZI4qyJgQ87MemneV6q({qt1?uJS zYu_93F3&9y4?ZF)yy6k6aJHY&Edg?QUPAxP;e(He%6|iBujd+86mpWJ5n7WWnHpL1 zw1@AKqf0P-)uE`u)r^^W90V>V6sONU{6q1w8$e)50{RZbKM1;`e3?1Hl7hYvAt^)` zmSs;TBWo#*m_8jLlt8ciIvH@@^QaMSw$S2VyiBPVkHX!^;d5oMO$H}q@TUx-jtP=l z2$FKXiK^3B&h_*$i6Z5+_(gk3-pFIv?$6<~L7e94MU60)h5v!3r5#>b8*R}LnrA%W zwz5c?UK??C+z4}dEZ9X3zkAH+FmRE}9h@mLJa&8o%pqquP%@#?YE%&s;u zh}ZDOzC($Nosh_gT}$!Ddn2A1N%Mru1?8I64n2FZdD*n;{)j}Dm^(ezN{pSkO++HvDwTjlQ;|rr`jUWVB2nII z;Ux*VB30F@NfMfiL>((1jhCAz5{<0+7;SS~h(vQM;T94tg?HT6N~T1rte3HDV85N zX#}ube*C17+@<+~plU!=U4X9He4!Y1s}|Nme35WTtM>aH@#T_c5z(xZG#80xy`Wji zYM>)F50xW>`krteZ-2^Y5av4g11657K$=ZVla2-$eDNtf1REBr*WaWsRrre!9)vfX zfu7US-_rsJ>&!MyYZ)M18qHdVk+NlAF!^?PetQN*Y8m7x4Kkde?EvqBdrli|vR#cK zAiqN>@f-9Ji>hTB0x&6PAL4k@gYQ>$@hU(j3rN+0u%EETSywj?bfVUe7^UVKU52VjxFcPiBwb}vD5kX2H$&gS_Aj~oU4>?lNH!~D? z2l{6IT?wX7Xeb$*uoj$uGGKKYDvG|Sp{PH=K$QQ3tXcZNh5}c_Fq6-Fo-yJZd*Y`e zo*^H5=$jkz+rq*llIrz^_W5^2LFro@@(F_`Al{TCDmxs0)Lk4}B=fo2Yz0qI|sf zStGP|{#9AjcCEh#+;9Zaw?EXw$s|ld`7=c=)0aRLG>2-LuRd$UrssdC2huk|r08~s z@YIuEl?Br0L8QXukBLt^4{mL#bWT+&tc9q_=Maoa8e z%M;HVvH5Ll3(uCmM#TP#48g{CIrnwzY z%-|Ew8!e&2!SnbYYZLzPJdTOA;PHhVNL9s8Cp^p8i@evf5x+9c85d|EV8qN={%n5tq7lWMJmiuQmN|+z?(74xW)OiX zGBs$6$6w@Znsl1Xp!HpU5jD-lIRGr-uU#@KwK5I^QQoBYpZ!gGP1|3@O_N?mHRw%e zf3torkr1G~Sru`AaW_qR@zbC;h)t8;_BIk`{b1l@hnYO#2cw+Vp!XWeoAg?vznOvV= zymyn2NceXVv|8*}#i#>Wg6J#Yk3C8ge2EmP=^8*8T?OtBAD#?G3%*$mr-8FwUlKlG zF1EVxlNBZmN@k?Hp>3QuASOW9L?LT}svc3+pjwUS3N_ou2h0jr=ng=2EkfTlfldf$ zVkqJyI8tB%lRu%zZ06Q0-hzdGTWDqrDL8Zi&&D4+GykMhDsB~kDrIV zTKojDm&q#o5E=S)bu|SMs}E$pO(5{nzYpF_M8jP#kOA}p!LWZLdK*~3H(lF7%U%P) zRGUcK$bS7Bjr+PQ50%4oj|RiX=OI>sV1th+crME9H^z08_&)>qpp9a6g|+Vs0p9D{ zN=p0y+zlU|YD$YpM~nE)F_+p^=Y~NAOvn)2R|$Nyr)Mt6f^EdcC| za1%4%(U{g2(apT|FF5So(UPrm(9>BWT~?;s27Lxj z;H$}Wb1imnH@*iV!-g*`nR_75y=s(>TVEWJM%#w?2S7o`cR>!H0D_$GMa7QXO9e)= zNSZzL8A^fCEKR1B0;5@Nr9jPBzNZuBmm!D^=KIXj99vSXseIpa5xRuWbHo(a1!+~wQkU@g4om5hMkgHf8I5Yv znsYc`^D7Qt1mG#)QR9t_E@r%eaBC`pd;;2Zv@c1n*HZKD%vUsV4hpslFQhmKoHhfXZE;FbRi5{RT}78oLfzenl1x3dN_0Ht2&i2P zrGjBHKrP=~##h~h)9c}1+%(EH&0JpWeUEBAdi2sF&xX@$Bd}H^dm~v!CVOhJ^m2(u zwOdV}#HGvm!|O&&ZRA-fTH=?2HtJ3a9#wnv|_LVS}F}I9lJ??#eaE+0WD-Ca_ zBl!`-+v%t))5`F6IUutWAB?~{7-zSQh{*2mD?_@B`9hXs2u=v4 z-!>|wE&@)R1nTnwKK>%g`}w2g{T$`xFWfc~ntcu03PggBDW%f)lORh={uvov1?F>9 zJzeEwfU5PZ_(#4&k?&dL%bIfYHzUE@^7UA}0s^`>@pDcZAk8|22JqkT7?qTPxgz%4 zBw^n_z`A0;twC`{pNW2j^(qA9SOEQJAg$$ANLmIdCu~V%p8t>}%v(u1BTjSvQ&jAz zp4jYxGelQg8K5||`Jvy8*mjXOS&+0VWyLpHoJ=b#zRAkTbaSl|9U6FiB|hvmO^ONi zN$UfsFxk&|{ojp5{m4o_Y>g4lhyHFjYXuA~tFjQL6EL)i$|3q4%$fni!f3MAXEYZt zQtC6XsP;0zeD&`}xdG-X)Fh4J#FBOd*-$ejz738@p!9UyM72;~NuuqruwRnIOEis$ zbwXpNwIRB9rK*WOje7zbDn!f}7+Q+gy<;S%ECb9pT1wmamBrHMzK|)>L-CQzF?TS! z$FCNK-BlWPjy=oCDhzMJRA*3z-IR%UBvC?X*v(k9ZP>8|s8aIl>1rYaG|r&ae9v_w zBK1}P4(gn7G?eA;9JCCBUf@|r9hq*cCDZ%llX%-djEENdupB0u;Hf#-ZJzOw7YYx- zc`8>Ty%_D7v4H?12vCL02LCF~TeIwIh@5qWrh`JC0eKxUvS@rg-$?%h(zq z@?~t1kL-V)(aq2gri)ifA!7pbOixIoGkGX447yD(xTFhZ$%;mmIS?hr{roQCeJ|eV zPs8aAuf{5>$xS#kNav{8O*k~+)qM_+nw#2ciS)|q`w*w^#7*`P)MtK=9#3h3$$lx~ zUDZaE-{w~MsuaRon9b=bvV~iKhQ7bX5bYegfgkwONX&X19-L@j$0sb2UYLgs2(6H= zBGWyER!BFL>CU2k9iOu33|{W8ks3P_GNc`CXGukNGz4}u;I2_R?W~Q*JNy;st$oy4 z&AC0%D7Rd}lhP^Ox#kZIkmj2}?@e20%R9nK7s-QN9${7JgrGj7r)YMhv*_b+;MWpQ zVcDS$IQ7Q3i5jA&(;AU9zj;jShfw?{7yyIuql?WO0%)jULx+of8_igWcerPSblV7o z^IKF1jn>iRh6Q^|$&p+7B*9)au=msw>5$kiFz82d6M1j;wN9!dO`HyEL=q3;JmB4R ze9t|cM)O~ftOXbP=9k1hqo>yL3WmfaU~=(u(mX|Dr)+S0aE-Yw{XrTMV{X?KgX?ir zqgIiMDLQqLpNEj+9nZEImPxM&$r0bjvXiNcA^xH;ie2CsZ7SBs- zqUe(fG(2d@kB!D?vO(kR?;Bx}bi7K?FM(>XOJP@m{Du2Q`3CoZ`{%K&AbYqXR`TlY z;Yy}4yu8*L?ZVIBHzI1KZY(xj(NIx|PBAtG^pYxS(d^RRrd`4-{%s^0Ymr9wyw~qW zc&UH|F^|kH3(_B%UHB`18_C{6;;`SJjE?#ldEY5T(*$*pFtys_d^lw=sOwv3lB6e*OWLyc-Ki_}Bmq-x$|NY9TG^ zka*!5(MLH3A<^M)Sv%AP>0!KXbmO2_|U>qBcYnV-X_BQlf;Lp%Qp6yC=++k^BsEY2Q;>AA@94NI44 zISC_OU#8_G?D&>N&C|b~x6M#9jgZ!+UKBE_$ zar*MpI*_HSYANydV;9OCQhgcy^bcD4$ewEp583Mo_tx0*4>g8r z_{d)ZeKOA;^O3GVZ_`|Sv4DIwK;LiPe0D%eQKhdFqE z9T5FAZbHUNl2MVU9^x4KLxj&N8KrzO%nu=h9p;71Ok~|=>1J$&-~*4&HV5q4M)?Gt zwMz6A!WTZ|=Nn-%nFtBRn^3DnA1izx&>L^aY(jmxZMJDsREt$|p~b!f^h-rs)Vk+w zTDx^yw!xHe2hi98bO(Ea@`|F8``>}w{}_XnrfI2zn4%1(9&oqz#|l5#TG0bZMz0#; z{oKSFb@12;sNMlLAtz+IqH(`bTF_J{uEg<}#1Rg~FNGLVa&gmIz66E5uOYe$zkg0r zK80vz@+m|KEwK-7AAw6hiJQp!I}{=5N6hvy^P&y`D^!h{moC+y9I8Ky{~U$zFZ@!7 zIb}})CexI!5!Dju^=$V?kQk4fkcg?am_=46w)%77W&mFUzZ9a@63=0Z&PGgciJOm4 zt4<^@2I1=#2z%p~LPT2P>$nX?OrMDx$h~MkpXLjSX}+M`alo-`1iFsBn6?DrCj3%} zJLP%0y^0(5DVlc1kTA42o}!QzkC*YX88ANf@lafgeGBMZv@cyf#hnJmmRs@9u>8#E zT>2n^aFv4ID1(iF9 zS96*X(WAF2i&(vY?4h%#q!ItqKXFx~=(`bOaQ~^Jru_(tG&NM<9^0Y32tt?eB2c*# znE#MC^~lr~CcMf8cLXeY4ctUE(D0Gp!;8nam_WTW^-w(D^rA#f+5ISoQaz9h!VdVQ z5PwQE-OA#oCDZ2xMbT8uw$nwG~u zFI+w@c5c@FGC3h{n`UY6MMz2evo=))p4HhkOkOu;$}DQh09hr@bz%(o7(`*X`AVi$ z{|nr6@iBlh0H@)XLPT2P4$RAS5Yt=YCdg?TE}FzD60N%{(}s8vsje)uoiD%9fQAYI zGy&0b0 zOlL?(a7A&2)ZL0{MCA1w;d?&_-&4X+C*orB zIszIh_-A+_?Kmp84?y}D+eSJ+ zrHJVTxCsF?-4v-)ofrmxipdb+H~6IxwU!uN2c!IHMD-tW^D%1GiH2Uh`UBzL_@xk$ zmN?D8ffgFq5^?h>S}Y%;{e3asKLNfbeknw)J@Xx%PA)$A{O|a779`eBZf%0pr z6aD>57%LGD#V>`(wPe~AdlRu8e&aY&}xAi0J7F*`C#o;+;_#CWB9T}@tWo+;%v+wDae+OEN{K>S$S zeF_iu?c`L_w^|=0x{(V_13Bt~wkhX;aMd4D&M_IFgI)ntj0IE|G+Ot*tZ2q5nvVSj zYko65a($=g<6jQOclbfe*9BmFq^(W=Jy;)9Oz;}T#pa~~>Jtn#n)St&r{5&8mq>$W zCEC?&3ZhzywUUpu*Q2Zhqu;`grJpyBb~ovfx6%f%js;PqSMiqe@y;vByM#7l$0X3c zq#=9_z&6-L9$rOifoDkUAbU0ECs-Bv zO^U$#iAvNPfcgqgwHlpBvbx5QESdtPu&xzJ7_G~_%Bq&Z(Z5loY!8pjvC(U+CxAU5 zt7Cu7uTR((#OS&CH8vga(MWkaqS^b0{wxq}wO840AUgKa{GN)4L$8&s-{9CCrfmSp zV2Wse;`GQ;VjywsB*71-Q-k zq)6(FbYXu9&``k((f53!=@d|I7;a9(XbBR%t1X!h?#P2c6*B>=hx&MFFUnt4iGD>& zhUjS|S};R&2NHt%$Zh)$A`W8#rPtvmY9by$)&gBaYeZc8u!nyLVUUuU?2~x`&``k( znJbVGeaX=Sorzu`Dx-S9K_5dOKp*V^OE%IWj8wY^^v+d0GZl{*XWBhF&hXU%X0n$K zw~U9p(zhik^Yyc{|H$Qe*s5Q4lAVj}XW5nPe%8!|dh^Tir`;kfUH2ZNME19pK!0kc zwnrLa;G}am-oKH{%v+KI4>00l^I|?PRzmc&Xpwcz1lf7pYL)0*PaP2TRjfq=T!%+l z2UZ(0>S-MLDdijB=-ki<5XBNJ8d-yLB`&N_{3~y1A8%qC@XiO3wgETM$~3eW&9xOt zf)m~IJA|LylyZv<^E9BL#7~2CBAt`+{(_X2@HH}tlMyzLErC?eCn-cUMp zNDFJBks>nIt0mGAuklD}-{IyfW>S+-=;N{uV|G_Lw3G^Xs)@S#&g*ddgQux;oP5$1=k7h$8&?FeZS z2>o0D;1ALHwJeCxI^b5Myr?q&P^kfBaSBy7+Kb4B>rw+)qPW<+iGYTZ4ALN1gxDH+ zzXhB;N-V@p2qynht4P%D|1j-SgfA<%vS`x$3eZr&Ms2&yBpAdH+P_5EB2(7)J z&uD3cS7-v181^V9>Or+Xtbq+;K=JrCLMxlcNTPMk14Pmz<%uon;(5yk@AA zIsVqRIZHVn^54SU75(b#<)V4Z2zOkwk>-oe40E*8f_@HjywtLVGs$H>XSTv$TS&+@ zTL=MW|Dz^VB6Ick3wFl190lI#ettmh0G45y=#gk9)^3m>T`uUTy z%DF4>=~3X#JH=;50cM_|aH7iQ%d`Aww7Vf+AMH-$5i#zmy5BjHV@r(`sd&BoIesq2 zov61z#~;SHOX)+;@uXOHyguz5uT~D!ZlTe_bKH~WF3n$#MTVyy5p+$ZWa+f?{CuoC zRe$_Ezefyxzc-_JN*o|#&hwUW?i78)c|J4_8GLh|Pm6P}(XXE8_2ZGY3i-y$?npi~ z9$8c({Y7ofC?+y8xNg+U9K1LWe7F=W)M~x2p<$q7&U^ z^wdN65b2(h7;d0{Fz zg+)}+>tCj3i`QFU=55Nk`|2=*E#=(b>dPbtS3tqK z{leRAG^6?83hvbZUh9T46dFr=iBT5&sMW;l(q78zGk@WkY3@q8c7;Ec<}Rz(y&`Oo zFHdu)>C#q`VCB?|%3}2VD?G8H`$FSquc#7_^J7kr*}xfPR@Plqa3_wvyY;0uegYaS z5_muJm~2of@8lKUINjY^&$!Cl6qpHoeY(3m*}{o*cYM-+vjvy1A!(wKC>xbj8fuK{ zjZac3y*-sbLTKBBTaIU)9f()j>PENr_}N6M7u9q+U3A1b^1 z>8aOveie)b(uCu6X}r;VSrz2)>^1&vF6=r)=rr*fzn1HcNtNB~zgerqN^9+`-?_#Y zG>6shsfxypy3Rjtj`2pXhD3!6ynHoxrk;PD?>S>uHm*g%jnOIQhD1mlM51+Ug| zUeDCW$a<)pI}Y({<=o{E90CZzjr#5cH5|SB7eBbn z9LW56+rwskX7TL}-0=vGH*hE51JZXIxRY@1H7d(p3VgM*+-V5TA2dswvO--`c+y%k z4kRnG-1Hrp16l4A1ixm1-ND~DY^EUCc-W-Ww-f~PYlltxSI=)W6eOz~LbQh;Xy}er zGLKK=*H&T6z`+9=xswzy{qI>T&3M4tHF9Smm<|;3+1SWk3KZ1eI{eKu*O*n5IWC$h zCzDWt+cc9uTw})Yqz_CN|NV%0fQ9jwzK0qCeE#=PF_33}FI3#~y-B5*-&mAlPh)ol z)XbH}?rZ=n zfxe^>h=_98*r1J%G7#!c5^qPMXP>@Tnx_=ke^#X0#b5h`|Q9DFp)e;wkWj@%g!E*(l!Nl;C^fl+e;>E^_E_)*O!fUOFvsb5Em&BKgkK zW?2Leo1@hu`L;7=Ed*WiL=BD3b0?aSBEKff#HaxF0^rOj0sLYa4IB}#-^_F4=U;F$ z&)Qf$)^kku-Q_C$M1?1gy|qz~^gn^8PP*Vso_^6v^*?b`rhhobU+iP0dVf^p4US8A zmI`N;2#>0?9o|!EI}AP{`Ry=SrS0(iNr|_^yi+3GQd1GlJR=G0@QbrD{iO>1&Z)H8 zo%&UU2h~dW^(p-ROI9l#OX*;|o(_T$Q zw1Ghq;A(s@JNOX1ih|6y6SJsI(ofFXUH2KWKx3f2%@!-nHj1JG`&(c4$we zO_#{B^iiP=ub?JcJFItsPaO-Zt#8AB;#Y^jYSWa{WqW3JXggzexKPpA;USf_C%h*o zNj(lL_)X=Gy{F*z23U#uY^m9PTgYW8AXJ6*RanBzH5=Yq;q4Iq+nRAGV3C#c)8nki zy~`Ed9TnO~J@jcZKO5fd7n%OQbz_?^T=Cm{GZeoKZ!Ga%t)xZ#f9)nSRYnh0s9lkY z*DVpY6zTe!c7Bc|U|6#g*LfNIw{DcL1U-9&4}Qh!@3sBRB?@l)l_yo&4l}MwxvJz^ zA5}v({3(U6gpDk^I;rsg(gj*-|GS^!`)Nw>1r=6bATwyILK_ZGblwE3S&QElUFtPS z_W><*lVxN1vbis+F2)(@j+Lc6djn|9hY3SHVBXri;2R z^}etAe$Y~xw&D2-zg)q0sIX{Eko0|3L)mApY`*o^Y2u4b`(2XtQ#)hyjVrqL-Vx{q z3jLM}ZS)%wZG$f>^c#wMjYQkvhCXm{;r{meX5c-3dWcnvw|~Z}+QN2ctK5^cwkNwu zrEM41_F3)F_EhZR%NdV2fpOx(89H!oR`ewMNqmdQZ1Xu^4qk#HMNn;rK7FP>jDj z!>Yn2^8GWcTsEU1bf(1_o55GTW$i*R=xq_CynpWE_w#)p;Zvenow;_+J766(!!5>2SqP0{-aE=~JX!F!gF zL#HK(zE=r2GiCnwE(rlST3sb5OCkFFC;>ecya@!6!k;R*U62Ec-t!ZWor8kxE|HO4 zkSG32LH7Qaf_zy*j$M#_CE%spQZIFCpr{~S6{6&EHM<}s-)Q|o(f@Xr`@d^d)<^c{ znFvEl_JCRZ`FE|Pyb@+u)t~Aq@*nn`t>7i?zXRY*m@U8Xu7xGNi+uQ8s~IivZJTR# z*FU+*W9LB&IOHwnS)*fAcG0Reco235(HggY<|pTY4Qqy_=UdBlOl$k+!v?4DuJ2jR zs@o1#qGCIWjUr;RXRVqF-Vkff1P}O&AAZl;8EX$RofUp~xWr?HV$}jzbIIMTX%P~S zwZYO0p*0pw+Ap-8#ex>!Phpwg3K}o6YBM&Ok68?U`|+TRl0OIi)T6~|Nz?hQ#nw?; zINHAiwGjCSPg@FkeQ)uuOHs@*=L;4uwIW&R=naXaprAvA&s>H6g605%( zED?E?G`y@3txYe{Kpg-NMVX3DT<}4wt=DM%^VVvsS*$(wf2QOwsUqd0LEEoE$qyFt z57wZ>zZCL&NXLpzQPAco`mNO@J=T+luLb?m8~pHElw&&A*Fk;z@g+@>&#NKHtKQ=? z*TLNS{!vhRz15%5y4&Op$mb(Jes}{A%?o+&jS!%nmz*7yfMb~`ryhqlp!hA|_4a@9 zK_8%kv4Groll7W^;X5d=9-=+>fFIrjL&Tcan9Y!f)o=eT&<_iSgSJ@LL!RC!1y)va z8}M--T2V1=o2u%)Ea7&wzr;5ZdZt3p!qz)oYBN>)lot~EJD{l%%HzY%boCT>IEOr> z0BBD$Dcp7qY#V6Lvw_Z=sL=M)LJP(HF5uLJ&t8;(NCjW7=xyiN?nLGIA`&+(SLW7t zq@?GHEwQ2lx4y;MM^;qzRf^4i(r%>K9xC`wWJed0;!4WnyI*0E zY#8qa_Lz@hFeJVH1c{DPWZ&@_gbqPrspH>Q%3>T4S03L(=m`qF{3!{x$B~ctO+x#% zl-wCTCE9M(ES|j8it@Hq=x!S%8YU#JISOw3)?F3+u!6tYLjr8$y`$i^EBw5o=lL@G zo!uqC)^3M{^Mb8bNX%tL)O~;?!dJ(|HJKMeN48W3(L7`uG#=1eN~||Z64~S5N(Hx9 z4Qva#0C+O$_oOs{{A*Aq}SInf!72i z79)?i?kf06no@Du_88GtDy=C?urs6oo zC-ZbImuXw~TZ-O(?z3~x;_Y_8@J2l*#eKh1vf1d9d>o9Wzicp;%zDs;*5AfAVO4D@z|?mp>J?u$H|(0?lQEM@c!B^6%l9!BV17*MIeX+KK1 z?RGuO7XhuW>L{vB|5b)D`s1=BCEtr{!P!noo1@V7Q?1=&Ht=dYF&TWtdl8jiCn;o6 zUzw*}Tg~_kLZ4LVCTLl@Y;*+QL+Fa=1Y|}-F&5Be*H#mL6X?8tHu{`I+nsPJ;M6sk zdVp|Aw6;#sM{bdTDhj@Xx7&r>V!FuO`cIW`+fdf>aX{x?RA}G2fZ|TT7(zDQ-9V>4A-U~m*dZ#n={y_g*y9RqKe8n&^zA34 z?dR}eAY)JRMI>xPH`#F}mYAfr^Fu&ae+V>by0?jxVpnseCnehoeE*%UsuHc$eNtpn zZ8Gpwgpwyp=PP*0p0$ei+5>Hl08QE1>l1c%fqVv`yJAQsbmi4DI}D=YdV}vF^h$;H z?`0Lk>BefRgdf`$?PQzd-7?b;7ydp+3aKaII!o< zQRv@P_qFZyq=MTkAk{Q^b%T;rLm%yx={yC0iWfp$%mkpRsLhl?+QaH%9`Y%2`xxjD zI6g@wo+I}uHhT&0DJAu91utoFiF_Eu#kA=yb1Sn((%XabTYM3rk1F)fYSjHhmt^(% zAwu`-Be_>AbOV*?TF&+Y{k=kaMoD;tLMQQRgszMJPbF6=ALKWI#((T^e}-8ozrV~hK=pTf z_!!UIeFmMrQ0S8HrCkM_@-BI{+d$E%h-nzp=vpNM?OVPP;$r*@Zz}9J^g4+v@c2Smd_62e~q|jwlC&^H{x_C99^P2xhN-f#e;{gxR zXmx}M29FH1If~wYgp?Dl#2w-@D7T=&Qk=a$jfGipRpomKoeea#R{CxUw#WQ7{3fC2 zEADwY5?x*f_y@T72d`0iKPz-PMo7Bs8mRiTtg#yGkk7|KT+GV~ z9lBAX@x&;uJ$xgfA1L&FHCZMrbUrU6W#(cIAmPmvcR7WokJu8tYexyN;qlK%ch-HIOa}q!Da|uZ>SV*uMxhY(E0ojq5CQH z^5-So9xY~Ywjb!P6ndE&Eijvj%gL(|y4El$Jgub!+rzt^+MG(6D754ys6KMU-;c^B&&yx?J(&;T8W9v{y!4DQnv9U^ecRmi{V#X-+gvk@B$6+tT=@)aH(HULe!lzc7j7X>f*rq$mHzHN$>6QRU4Mr)9qtLG)ao|wG~{{8C` zj`|fBmvH|6S9sVtqKLLVE0K1ShVw(vF{UZNB)iEniMIWj(VTsaBD}58_TDP~x0tvt zEBMu(GHs91Z;h7XO8O870H?KrXf=qKl1=<;Cd$6-S_!Z_a`1CP4(DH^2>p3Gzn6Rpsd0H>_&-3)sUdtJd@sugVb zD&FoJMNk=}SJh zw&Wq-!V{bhG}S=oPb8b&b(R87WvioR2#-W-TVIf!@nprlu%JK)=2!zifjO1 z1a#gcgxo3U2S{RaEfb6})-0<~van)07^xbjN!ron2 zqTt^FPK8)eVwyXn;JZt}FDp4E-K+!@3-UQX2%E`~3C-SKO|zBYd!S?9Pe6Mxsg-o$ zZY#FTL6TlM1zH8K)P3iA2~Skw`tjsL7@X#NWqlvy?U0PQ4{G6xY?5Rf6m>WsN7QL! z1$DJHW2MlNPva96+}@jxRP2j*AxS@_(AAZ4wk}w(I1F^daWeAOB{!CYb}Q82Hz~K*6}sfQ_-vm1JQj^`b;SCIc-NaMJ1Oc?l?`;GGn_u%iUn zjWmlFQf{ji`uckk-9)k7kmz*GA0)NgL`fQ#=+q&LU@bMVa=!%em zmJBf@&faFUC(q`55yZueR%rWVMK#4Xg&zW1zc^8LB|pxNBJ<&sq_C0?)Nd%beaOZh zVD|z}6+3X76l>SeN!|t?`I=BEz^SMu*J9wa zkhr-D{a$~mjIHEl1-Cb9o2e?etKch?W!uUJ@OH*`{gETeE+vPio(gKna98fEB)#*10el@UcIvaB~4 z<{+64UGTy{3{VnCEkvj>kwCkaZsWM=7{h2VAUOVZ8>U$``bbOd;srvos78^rT2%EE7{r`dL+d1{G#{{T`+)lbIa^Es7 z=Td@^ya@E~z`b|swR!cg>{CZu+=!whye6ImZAm*%L2i<9sr9ozEATh)&_R`Z>9hiN zOR=7D@%KI_brk;3V5YnPongi4!bowrXmNpmzv2voGXDyi=2}HwXF${rKdpW2=3VIcpVK-?D%jzhDTXnnQ-i^R|N=tZCyLRsu>Sr^ag}3)HpwAeWLDhh7RIN}y z1^*jp(M`ZdDSU(L{-+f_rTAN**HE3%$qucXcgy2zN-!Pxt3&I?D+ZhK9i8fJxo6gU zR~eTE+ICmfi%`ff@IT(7Kr8UgMF3Cu}~c z+{+$0-b$6y(xA_6P&pgV_{>Q)NxhpA5J#*bC39@m%!pf^)O=mShkSH3Z*cpP*W^)Vekf#@n8R&rQP?*M<` z3&pJ~pZG*e^L{hpf8ZJA(p~}W-Az0|QKmP34tmQGRkahp3p{`u3|oKC^k`|`_dv-D zx}^a_EvjS9UvpSnZXFGBae=LB((TdWh0$;L5-l<1D7#8SeYb$G@MtZg+A-cUEA(nu z>Q(hed-y6TJ;o=TWHnJ;_NCIhpgKhTLQjF7^bFwzG%obJJjbPTyl;@`q3}3&&Jfcg zZV9~B^E1FVqB6B8GBn`H)dRY z;Jza2&bWWGJ}mp=aT;Oou%$iOX9GpD3|rQdeKt{Z);%3WZc{Qzg{+I2c`Zpl{Kp(i zQfV8rxRBr8MU7%wI@5bpVAI*|^IpHt*SchangeTime(); @@ -31,7 +32,7 @@ int main() // buy zad 1 //No cargo - std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; + // std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; Cargo * cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); @@ -66,32 +67,38 @@ int main() // sell zad 1 Response response1 = store.sell(cargo, 2, captain); std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; - //No available space + + //No available space std::cout << "Player: human1: ship cargo: \n"; cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); human1->getShip()->load(captain->getShip()->shipCargo.at(1), 1); human1->getShip()->printShipCargo(); - response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); - std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; + human1->getShip()->unload(captain->getShip()->shipCargo.at(1), 1); + //response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); + //std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; + // Store store2(2000, 0, time_ptr); + // response1 = store2.sell(captain->getShip()->shipCargo.at(0), 1, captain); + // std::cout << std::to_string(response1 == Response::lack_of_space) << " lack of space" << "\n"; + //lack of cargo - Store store4(10000, 10000, time_ptr); - response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; - //no money - Store store3(0, 100, time_ptr); - response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); - std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; - //correct buy - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; - std::cout << "store przed sprzedaży \n" << store; - response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; - std::cout << "store po sprzedaży \n" << store; - std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; - captain->getShip()->printShipCargo(); - std::cout << '\n'; + // Store store4(10000, 10000, time_ptr); + // response1 = store4.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + // std::cout << std::to_string(response1 == Response::lack_of_cargo) << " lack of cargo" << "\n"; + // //no money + // Store store3(0, 100, time_ptr); + // response1 = store3.sell(captain->getShip()->shipCargo.at(1), 1, captain); + // std::cout << std::to_string(response1 == Response::lack_of_money) << " lack of money" << "\n"; + // //correct buy + // std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; + // std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + // std::cout << "store przed sprzedaży \n" << store; + // response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); + // std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; + // std::cout << "store po sprzedaży \n" << store; + // std::cout << "pieniążki store po: " << store.getMoney() << '\n'; + // std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; + // captain->getShip()->printShipCargo(); + // std::cout << '\n'; //zad 2 // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; diff --git a/shm/ship b/shm/ship index e2b455a97f2c02b25029074bf521d450b43d0e66..8545fa51503228d90d90919fa7922e6106661bbb 100755 GIT binary patch delta 92034 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%0ABigXf5H|8z%uT3lL#SDBnjJ#> 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 delta 92137 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 S$;-eu4~@Qf7W&K!P5eKh1&^Kp diff --git a/shm/ship.cpp b/shm/ship.cpp index e1640bd66..8c3e132e8 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -67,7 +67,8 @@ void Ship::removeCargo(Cargo * item, size_t amount) auto shipCargoAmount = findMatchCargo(item)->getAmount(); if(shipCargoAmount == amount) { - auto i = std::find(begin(shipCargo), end(shipCargo), item); + //auto i = std::find(begin(shipCargo), end(shipCargo), *item); + auto i = std::find(begin(shipCargo), end(shipCargo), [](const auto* el){ *el == *item}); // tutaj it nie może być równy 0 shipCargo.erase(i); } @@ -114,10 +115,24 @@ void Ship::load(Cargo * loadCargo, size_t amount) void Ship::unload(Cargo * unloadCargo, size_t amount) { - if (calculateAvailableSpace() - amount >= 0) - { - removeCargo(unloadCargo, amount); + // Checking if we have enough cargo to unload + if(auto* shipCargo = findMatchCargo(unloadCargo)) { + if(shipCargo->getAmount() >= amount) { + removeCargo(unloadCargo, amount); + } + else { + std::cout << "Ship: " << this->getName() << "doesn't have enough cargo: " << unloadCargo->getName() << '\n'; + } + + } + else { + std::cout << "Ship: " << this->getName() << "doesn't have cargo: " << unloadCargo->getName() << '\n'; } + // TO jest bez sensu + // if (calculateAvailableSpace() - amount >= 0) + // { + // removeCargo(unloadCargo, amount); + // } } void Ship::setOwner(Player *newOwner) From fd60bafab577847c3068bba16c68017e1205b3b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 1 Aug 2021 18:54:04 +0200 Subject: [PATCH 072/151] Adding map generating to the menu --- shm/Game.cpp | 18 +++++++++++++----- shm/Game.hpp | 5 +++-- shm/Map.cpp | 7 +++++-- shm/Map.hpp | 11 +++++------ shm/coordinates.cpp | 2 +- shm/coordinates.hpp | 2 +- 6 files changed, 28 insertions(+), 17 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 11afce9c4..59670b377 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -14,7 +14,7 @@ void Game::startGame() { printTitle(); setPlayer(); - menu(); + //menu(); } void Game::printTitle() @@ -25,22 +25,30 @@ void Game::printTitle() void Game::setPlayer() { Time *time_ptr = new Time(); + Map mapa; + addMap(mapa); + std::cout << "Set your name captain!:" << '\n'; std::string playerName; std::cin >> playerName; std::cout << "Welcome on board captain " << playerName << '\n'; Player playerOne (std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); std::cout << "Your's ship Uboot is waiting! Good Luck!" << '\n'; + std::cout << "You are in start point. Current coordinates: (0,0). Choose Your next move!" << '\n'; } void Game::menu() { - printMap(); } -void Game::printMap() +void Game::addMap(Map &map) { - //TODO:: Make friend with map! - //DebugPrintIsland(); + map.SetUpRandomIsland(); + map.DebugPrintIsland(); } + +// void Map::addIsland(Coordinates coordinate) +// { +// addIsland(coordinate); +// } \ No newline at end of file diff --git a/shm/Game.hpp b/shm/Game.hpp index 8cd3c2b32..1f3a27a6d 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -3,6 +3,7 @@ #include "Map.hpp" #include "player.hpp" #include "Time.hpp" +#include "coordinates.hpp" class Game { public: @@ -20,8 +21,8 @@ class Game void startGame(); void menu(); void printTitle(); - void printMap(); - friend void Map::DebugPrintIsland(); + void addMap(Map &); + private: size_t money_; diff --git a/shm/Map.cpp b/shm/Map.cpp index 501611b10..bfe04c62a 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -14,6 +14,9 @@ namespace constVariables{ } Map::Map() { + islands_.reserve(11); + Coordinates zero(0,0); + addIsland(zero); SetUpRandomIsland(); } @@ -49,7 +52,7 @@ bool Map::contains(const std::vector& vec, const Coordinates& c) { return std::find(vec.begin(), vec.end(), c) != vec.end(); } -Island* Map::getIsland(const Coordinates& coordinate){ +Island* Map::getIsland(const Coordinates coordinate){ auto selectedIsland = std::find_if(islands_.begin(), islands_.end(), [&coordinate](Island& i) { return i.getPosition() == coordinate; }); if(selectedIsland != islands_.end()) { @@ -58,7 +61,7 @@ Island* Map::getIsland(const Coordinates& coordinate){ return nullptr; } -void Map::addIsland(Coordinates &coordinate) +void Map::addIsland(Coordinates coordinate) { islands_.push_back(Island(coordinate)); } diff --git a/shm/Map.hpp b/shm/Map.hpp index 6b8021dc4..2be3d85a6 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -1,7 +1,8 @@ #pragma once +#include "island.hpp" #include -class Island; +//class Island; class Coordinates; //Class responsible for representing map in game @@ -9,11 +10,9 @@ class Map { public: Map(); void DebugPrintIsland(); - Island *getIsland(const Coordinates &coordinate); - void addIsland(Coordinates &coordinate); - - - + Island *getIsland(const Coordinates); + void addIsland(Coordinates); + friend class Game; private: Island *current_pos_; diff --git a/shm/coordinates.cpp b/shm/coordinates.cpp index 1ed63a90a..830cf159e 100644 --- a/shm/coordinates.cpp +++ b/shm/coordinates.cpp @@ -1,6 +1,6 @@ #include "coordinates.hpp" -bool Coordinates::operator==(const Coordinates &c) const +bool Coordinates::operator==(const Coordinates c) const { return positionX_ == c.positionX_ && positionY_ == c.positionY_; } diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index 823fa69f8..b7a50a033 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -20,5 +20,5 @@ class Coordinates { void SetPositionX(const int& positionX) { positionX_ = positionX; } void SetPositionY(const int& positionY) { positionY_ = positionY; } - bool operator==(const Coordinates &c1) const; + bool operator==(const Coordinates c1) const; }; From cb7cacd89d836bf161c21808729d7cf0427d27cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Katarzyna=20Str=C4=85czy=C5=84ska?= Date: Sun, 1 Aug 2021 20:07:47 +0200 Subject: [PATCH 073/151] Some fixes --- shm/Game.cpp | 7 ++++++- shm/Game.hpp | 1 + shm/Map.cpp | 6 +++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/shm/Game.cpp b/shm/Game.cpp index 59670b377..ba0020aa2 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -44,10 +44,15 @@ void Game::menu() void Game::addMap(Map &map) { - map.SetUpRandomIsland(); map.DebugPrintIsland(); } +void Game::travel() +{ + + +} + // void Map::addIsland(Coordinates coordinate) // { // addIsland(coordinate); diff --git a/shm/Game.hpp b/shm/Game.hpp index 1f3a27a6d..ea7f7a085 100644 --- a/shm/Game.hpp +++ b/shm/Game.hpp @@ -22,6 +22,7 @@ class Game void menu(); void printTitle(); void addMap(Map &); + void travel(); private: diff --git a/shm/Map.cpp b/shm/Map.cpp index bfe04c62a..646848900 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -2,6 +2,7 @@ #include #include #include +#include #include "coordinates.hpp" #include "island.hpp" @@ -18,6 +19,7 @@ Map::Map() { Coordinates zero(0,0); addIsland(zero); SetUpRandomIsland(); + std::cout << islands_.size() << '\n'; } void Map::SetUpRandomIsland(){ @@ -43,8 +45,10 @@ void Map::SetUpRandomIsland(){ } void Map::DebugPrintIsland () { + int j = 0; for (auto &el : islands_) { - std::cout << std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; + j++; + std::cout << j << " | "<< std::to_string(el.getPosition().GetPositionX()) << " | " << std::to_string(el.getPosition().GetPositionY()) << '\n'; } } From 31395e89384f0298ae0470b0b9e48142af56fcb2 Mon Sep 17 00:00:00 2001 From: kondorski Date: Sun, 1 Aug 2021 20:20:36 +0200 Subject: [PATCH 074/151] Menu proto working --- shm/Game.cpp | 15 +++++-------- shm/Game.hpp | 10 ++------- shm/Menu.cpp | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++ shm/Menu.hpp | 23 +++++++++++++++++++ 4 files changed, 93 insertions(+), 18 deletions(-) create mode 100644 shm/Menu.cpp create mode 100644 shm/Menu.hpp diff --git a/shm/Game.cpp b/shm/Game.cpp index 11afce9c4..e901e44ef 100644 --- a/shm/Game.cpp +++ b/shm/Game.cpp @@ -1,4 +1,5 @@ #include "Game.hpp" +#include class Map; @@ -6,15 +7,15 @@ Game::Game(size_t money, size_t gameDays, size_t finalGoal) : money_(money) , gameDays_(gameDays) , finalGoal_(finalGoal) - { - - } + , menu_(std::make_unique

  • x(}!t-;EiygK4nIuDX{pp+*8G`!Nwt{E2E8{ zU7W4VG5LHOPnTejQL00qbzTjbqg1z~YGZX^sd?syx(&|H=Dm2&@20Xhl9_xntKDc) z*h~&|2;d+o%K!;NxjbA-uqs{^fX4Og1EZJhzhu9K8(^7QT0E1tO%L?X!fUHHr8n{J z_~H>cmq!Dh*i0wiKD%=Q(r;FFRMZIr%mkDSLYx@O6k}}te>k|FqG#L`a!gp8I@*wVN&jf+F2X5*XmUKtM8hz7l=0%g z{%bD+5F%0`Lt=W&?!5isl7nCbNkR)_!v*;D2q)$6e*mSq;y^w(C7>xojU4~PqjX_x z4Di*5I(SbH@}Tf`g21!~Ccxp*&g56GUr#g$OBFBTK3-k`NJqdYrX!HTMUzfbaK4i| zbbkq?#t>&=@ceKk3R;Ve=|o5fXRkzX7yb|DM)hD6XDPsqg2<{ zvG=yZUc4Io2msh#Iu2wi%f|*$w0e33KJxoW{98w*>{O)H8s45Ji-v7*>G1yL4G zmqSRk%5TJ(>ocY zu;y7*UgD6j5R^R+ZtGSoX=Hy9>Xyt0>)Lq3KxD5&)9GuHjCyiIGh|QOz~0Pl{kvgG z*qBdJcPLuog|ml{99H#@T8Blao^u@F=`qIravJv4AaI5Pm%zqOwoUXhDl+ zeX5CLO-F`Oc$!lv>J5S7VBRAv;(5a;BE0n2x0)x-o=PU$v5A5m_7b99%N>0myTur- zSrPCyGrMK&$^t=ER`qOHk*J+GCE;)`KgKzh#4#%Ct|CvIZN3lB0Y@hU`3AvkT<_)1 zir~07dU;hlO#Si5;#8zKWe5}~!S3qyOZ1U*{g(NhwWV%K& zuOP3rCY07uoDATHF>sD zgrHV3O0_OBj4vVCP(5v^ZI#8K(-SG&ym)pAg!hOP^onRfoQdjLGbEIF)Vn}D)m$63 z5EL{zyMwSll>I4vCsLl%i~7a`Ak%mEpkz2x1_8;zd1l|J`kCUN-;QYyo)HUmk_M@0s!X+siw`Sr-UOtVO zuH7QST!DMQbL8<5tg+yPM{-3Nu;mf5Ahej%5wIeyky&?`83g~jw!ndf$c%<_3kfRX zoznHit0*>E`_OUlu*WAThbisG;FQD&y`@of^Saz`Pb*O5EC3Hrr#m`e+0x81Bl7}> zq5(F%rH0rin}N~e`C&pPxBzGYGbK^l`X$?Kdde~DBFR`~7;P?Oa4}xT3;AWsx}Sfo z+x>e1q=`r@!wLiBXc0r`F*vE1(`xR^mvG=S<6mt3hKM=Tc_IJ0p>;p}qk^H$3dHmX z4o|~w4@js%O2a}60((B{HNbA|2CYpo+P#T(9EkXLm`(^a#6dFd1{d1gg4S@*SH2-) z2OLXxqF`S&tVNEybQ5Zcoq#kedwiY~O&f;AKT$i5<5I?C*08L{Ml~ltp3OroS?c>5 zTWHqR6R!`T$*Zg%*sMH+SYS)0bATi?NVp+rI&qHLm{pXR@M={IV1(q@Z^1UXKb5q{ zQrqvXVHcFBdv_%;70q+T*b4n|o$i|4S?43L@)Y^3)c~SZ?RPGctJE2V!^fWmLQ7`x zu3(=c$Cncp^ORN`2oF!IzzV=_h~~g=2t^;El&Jm!%XGMdUuzT)?;_*#C-6{k7CzNp zSg1BzsYo?9$v{pURx;zXm#f;mM4Uw!%u=Zv_-dD>x*`eU5d~j35GbY0l~om{)_(f4 ziC{W(+Mb%rcA@uFvA}6hHK5h-_8!uWwx}SQjaKBWS`aWqNf4R!Fi^qU>r)b~zomrzO(q zdiVG9R>P1DD|t92e{+cBPJJ&q+(UKjwK2Wr-DT5<|9zOT~jXz z1K3Q_GvwF6k(+~KUhd?2_>UKP$bGDJMm^(Mt!Lh0AQ2=L#*DeGg55Z1#+k}$`FI#* zWZ#~oXCio&x4rtONjuP$@Ft%}(VwS!Z7|&(9v3xqQ}hB5hgeI~$p!rKmq7a|%xn)6PKj2XCYO58zGl+IQ2Pz~yAwS^z(iEjhDAe-kLW!1k7l(q(y z#_(i_408EI;*k2HH@`+X?cr-cEi`t=avYjy%qRfgD*3^9d zha^O#9-@grI!TmWAH@Yc-t}XI^$R^7b~~w+dF^%eHA^VAY$I~WQsXU^ zpeXXAh3y_U*{mJd_<%=SfhI=}2&eC{d6eZyAxGLo*D&?*W%WV%3rN|1TPlxjC9Z_0|8i@`(SS3Q6i=2I5<74L!YdnD? zek%`C;F*%q`hE}V7w%n=_^e^$?=8}8MJfYsxPfJ%hi%X=KCO-(9(a34=YA*MCDvuZ z%YStP&XeH*sbcxpFXo+eIGn7a0@L8-N=KgIaCXm;NO5{w^UDZz=ng1IVl!cqMTNsCkWVRlwmp_t1vNugR3y+=fQ~N z44U+)+O;_wB46VUUg%DCm*3Ao_0sbkD{>|1wSi2Mwd%#X_rp6IyyDv&b*NhCH#A#4 z(=A?fS@Lyun3A3%+bn~YfYzKsh&fhXCXD zbCPEeNzAOmXP>$jt<$%D4lSWuh(HBKM>$_u5H%wvj_##wx6C$Z@2w^Y+!^3T<{{ z8;LhNS?s^eN8||u7G7I4?8)YNr*K*cLF4oc&`BzSH-4!f*4o+_47#QA}Rrms^ijL72cN@v>3FCXWYyvs?o=hJ3r_ z6#P6=WndJg7azMHgZb?eW&aiq=+*bjQQ<=Ux`u`O-vLALms8Q*!qMa zrqj15YkS$*Q^9ppLB+`V`KYbwm%)*C9>SFMoW!tH~lpv?mW- z0@m8ZzIc#s;baZi{x}fRtpnhktkEj4%pV)A$C)HPoWns=B(Lrona9V@$Xq-i}8P z)#6t^A5P>QQs5u0R&)4~x(Jk)Rikx`Y#>NKbT$`eE;_{p=YOP?&C(-3-lx_&jY8N7 zFO3ohWMyj2Aty-Hqxk5ZU6dG#w(-zp)W_1weXrzP^$zk1xb1Uk4gJ}N4WgvnvFXr6sJLb0kOO#^$WmxSfnV$98<=oIo#7bJ2+?T8LQIU1 zD{ku4K*~9c>zIjNoS+6ocOW^7Zar~buf8!@jFdM>K8PxH>Y$2%DF{TI=)o!nFUKZ8hz}tLH&TY2cWfElx2u(Ah>fftl zU?)V7eUd^=?%6KPC`}f}^FZr4FN0(m&4uCeQsrLl?FMI8c%7r|r9&=9Z3Gk! zK{awQJ_Ja;9%b4DaqskAt4%OU5o5XqqXg;{j}k=YF6=UM*5}2fJ=*;m?j2DptG*cM zfjr@9h${>nZcj62mlafoz?zlGtiA8*w5ZmNSq19w0dvfY0-86HF?6~Ikb-OBI7zCf z6B_7>vT#=`Y8WKjpRI&yEv;|B1!bc))hb(*R|JGP7G3;+X0JIlIhtz(Tpd=1(%_+w&Kcd*0zph3ih-GNc9jH8&VxW37+y( zR#jy;-0-$i9X41;`Kd&#)k9mV3m=Vmo?uv{!fXy^cp~&N>fo}#qDaFD>YiOj=7!zp zYL|Xc{A0+_0d^$%QmxV<6@$@-R6r4*#y*vi?8Iv*!3Fz@C?tS3&&>8@<|tc4@)^}N zwl?6F#*?OJbb4g3%G`>6iVH3aVPx`)fEE%GK|zX`ML2Wq+)U&_00|{h3ueCsa8A4Q zWX}XqbSSThs(#gjRGe60Pl>k*qc6++=r6dH!8?a1M@Fep?5mNi+5u^zueT5KBIpV7 z;mu35V*FJRKB&ZDD4;7BAmfaAE=pE4A0BXMMtqSh7-`7r>RcRn=%(2Y);;j;_D#zD?QX==ZBK?x@DgfI8%xIn8 z)s#m&q}sv20#QAJk!L{O@Bvtu4Tno{I&WZ)Kxpcm77qXt_@_W9pzi=h;$xgXUH{(p zjxzAA_DCg_x#u%H9I_oTTu1VpudtrDt6te(hCTa1+KisM9xQVXskDAI#`;&{LnPno&>CZI@?$dY z8qXGF-*RkaykXW@ZaEMiYHnOoz=~X&V4|Sis5z1{x6(ckyW5gDV0{9~+ZRZgBG`q= z@tp$_@ij;cVj8{``Dr&c>(B<*rAla<+SnD!QH#1PUy{QFDymAsTx}rTdiDBVo2o#J zb8pih4P>Bafq?J3p^6uf+kk;~2%+p~aTFVmhpoeHU0Y9=HKk&bJw~nUu1;Rv>)N`u zY{H+8b#0wJy_>o>clCDktZVDQZ*TJ{expifZ&&Y@&dt5u?I^~j?)J{kOw5ZeuPn2X*R)#`@7}lE z#_!Af!Bn4m=bd}*Id!V)RMn~D`!7}AlUjI+j9rCNre<#bHYAY#c{U+zk$@&1e};?E zbFKJ-3nee#+Xko)G>lF?mlCO-u5eVo=(#SE#D>yZzVcz9Du>ouBxc-mKdIM z=FItKFKsWGLjqVPnaYnS_v+a)u9ZFTn^WB{It9X_3rT6Aut<%S*>A3Jsz)1>5fOw&;;sFTd7 zK#Irp)zQH?4jtw-y+!nY5yvjVi$ot{y6k8r!p<`#mzcwS4-p_o4PgMX1Magk(3l_* z8nf7dr%dvhR25&8rVFFn#Vlch)S|Jx;9{3x5l!+auj=$1ENV@u7sZ{Kng@jl8u(ld zDIX9ACa;BfL2DTrzeHnsAXd1tF+M6IVhYPlu-OU8ssF6$AgDpu(Vu@oE!-ZKnsuccNPqbe`RZOSe)(rTcF*JoN_Wy z0Me;&zs_)src`xuCegB=sb*G1C@1Jfcjkdp#Lh)UN_w&-+;SwGI(euB$2KJ*8Yyek zbi0U6+8m4z@;V82kl}UGa6ZIUq&cW2Dcp@{`I((7n(h%1$7PD&CgN~x{Bn4=s+o}e z%IA@tW?rH;OP+i8JT-I55%}`JpyUi0#@TDv9(R{6Plj=~d`!HbFDNp%YrIzrA=E2( zWlhv4YdATX2*>riTk>8%$}Jn%WCDtezoli|q#O<&E!HukzQI>pg=r}ff3!H@=oT#K zmk6Y~6@Px=qh;!71JVBzstMgQ>iSBYd znT`1%r}(AoyKchpAK?%-bPZjh@)vX=Ny#?3Sch%M>$E;4+X(`^{23DNAKLuXWqhs3Ecu4t@L&4nrQ_A!gdfl zc7#(KF&-5!=6v(3Xz49EnxE4UmegT`s@8UIN{C{pn@^C0Tq?R~gi$#54V7Ws8|7pLF;s7A%S?J)*61IQ1VbJXA)#&Vd%0<|%u7D+# zV?$695HDZ$std+n(-pNn!J4oXoPexAsiKiwxBZVyFw}JPu#28I^J~8g7~C|8VC?U0 z+LQ&HZ@l7hO_E&-k{G+#DbS7WnywW+zL5K zMVsxU4aMI*UN?QX6uGi@uh32Vq0@*fC@k0)NeZ1ErTFjh#NQK%zhO4?6c)}+;f{=& zKsvJMZz#CY-%ELyDE+^-tLwnT!}3CX=azRAvVJT-4|?@cpGN48<#l~vax;tSGl546Ez)8syDwdRR&er&$6 z8z&XdmE*}0lCgkHLo?N#^Rr8H;0gASaFbCkCt{ezvnJ_5#L$#|G$1ukqGHg&k~$!u z6x;NmFlbfWSCA)u=et}^Ci+%~>9%lXikr1tt|C$PBBdn3ECLbd%6-cIGYtN0nqqi< zPpK(dZN8ujNa85$h3B5!$I_A7X|^!gTG@!F?Nf3rT3jcXRE%r4tEbY|3fL_Fx_^ou z-IkN)!`R`rR2ox+mxymt#d~=J56uda5EdM@8@f?m_V8{`ghQT@O))2SVa^2*CK75% zltn_n+DZXXI(H%d?4XMYC#Xiz?U{wuwBBU33RXsX;Ej!%LeeIJq!-Eb#`o3|w-(Df zK_AUx>!Hs~f0hyb%x|b%32VUh;L#Pxh%74irHVQL(>pYYw5^D4iQbj%q!BMm=F=iO zURt?pcDlZDuC}K>wQ}>){KCc)Ph2@WJGat~Qk{$>N60}`pE#KjOSnyC=gNg$+D(J0`3JP zm9~J_z`>Eou{o+4bM?;U$@$uNA|gLti|GYSeMSA=*weeaqFcZB2=cU!K^Bm2cFT=| z+dfpTQ7ksuh^*5qnLVDzYa* zJeeT%>eyV686pazfG68EQhinPMd~8PGq9nFb|JCTw#7y&+h;2~sldr7F3HlF+s;`5 zm8RUkV(lq?r}V5id3tearhb~nUN**2tj&+_I&JTofs+UNSDd_a#mU=IXR@}iZwBh} z?9A-a!pTcBd*F3Ec~O%?;7d46$1f3mXc0j%v-2lID2Uh7zZl2;FT4C}#Kqu?@ySG4 zrXV$x2nc8}5VBhu)FmaUCUAm()6f=7c6ISG3n7o~h&5b$8aXPWKUxJu2$zf;K{RF$ zL4|NKPHbM3F_fU8O*GV71bdvGs44ffCN+1WYlhi4+e98=YRG@*3w(5SwX`$3w=VL# zrPo+$5?n#blM%vZ?Ok=F+U-O!JrVZCI5;JF_QDw zC24g>y_1YF$)xe-ZNi2Cn|^RN#t8qf)>dVe z+*y!YKO@1^z{#w%t0bXsJ_)fhk&NPz8FA&h9_mahlcD&QsqKbbOp$Vb@<^1f%G(Xs zSFbBQ;y@qr;3$cTs;apZo9D)Kjk)=Z=XE=z5d8_UjgZh1WFYMRa>^GP--7Kn3#j0| zFp}=pE3Z~_BWJtT*8cx;4O^Ko!Zwjew#NC9>)0H6l2)zkri^XzB@ zOOX3xsxiLrDL6T!8CD50d%BwAg6F2ALsTQPKF`cf)Yqj)<^=c9#*40h3h#&1{W-6e zyqF|u>}m5e=#;vbk$FojsKBP$^wfld-DjZ9g9aAnFlcq`$zf;JsZw?viA9~Dktnk6 z-fUG=8XVow(;L;@i#xz8G09>WTBXFjB{}E4N#d^b zA|Rqi|F4**zhzuudupb=JbsI1Q~W9j#>IVR^}=gr?qS-`Z0b%XT;ayc-NR)jDvKu6 z*s5a-U1Diwv2?kt+SW^_eGdW`o?Ih`xT2l+-u!vSF?1y(73lPqX&lvG1+UzaUW<}2 z6t^K$HOVA`dqII%XqgY$q0u$LNM(c@w;wG$B1~0|oS)bMn&3g3BzB#lp_UXb@&L0c za;FQH={qI#wb{BTVn%Ee?j>fokRc;pgPkls6ICr%i!`jFAZ8XF^2~S#qrWfrK)XeD z1QkH$o$N*sB!c369HCBj`?f03nWwKkFY)lzZNdyA(?wU4SeD>nBvYSC#b+Baz`&*4 zk#m>HSehkbcod@-M={(TABhW>GwSbYYQxo(X3j2FALZs9&T+rk9fUO+yXtCa*3Qk& z!D4~4U(Q=Qd??KxEhT((gtEgn)ei2V^ii_(?#3b+dEDV+;oQ^Q2H^;FHh)->!V0&` ze5O?k)k3?PjmYRH9IC*|G6m259UZ+DQ@pC3r~LFsIAqc9b2 z&swQy&YPiz`9s>sRA z^N7Vj!W$xyI_tEiQb&Nqyv$9!T@qnyW6)-;`UPgf`y#a>;Sp*7Zk4{( z9UY(MrhBoO>vi^~Iz7J8Lsq0_DU+V`HpIC~Hym8C;&)czCrxzDxl+fB5@wR_TJe)v zm)rdL)FtRGW7p73WFluVl2H`oZefbH*y? zRkv*)*}8s~w;h(hc}!xLOezY@#!GfA zvXXve5Mq%Xm?}1V>a|O3Up=%1qu&c}c4(>-M-W$b+IrMvOlUt%!J28Np^9uZo3FA+ zZg^D%h%^h0HEhb$me|g?YSPqO55&%9I~iSD6UBvzBSnoCX=1I6jBFp-cvfZOW*Lci zE<2J+)Ox@sl>Aue8n}PKHLtI;f?UmT}VQI?{ zo2UX0M+td+rsYc6$kWm3CbXlyikwn$i=VIL4oM1u8I)bqLVFmZIMl@yei%`NSHLQ!$mF#xbA8**JX-L^i#SSeA3Bv3_h3$Hs^BYAHU#rjrYErGiX zYAWcZ8Ieq-T1w0)*<|=}RAcCTUlU}pD$q?e;bFa}v{}(#aef@>O=xVDQ7AV3;2Fg+wx z<1@Ex->`lQ8eZB_9jcHwL$a(%}gxiXBZZXigaJpY#F@H zb%lP}&inSZfTj@NrJkI!We)iS(yVu&(p4z^Js=9_SERpAp zquS-xM-HDvR-en=pQq&Ap`Zd!YkH$VBWN#{OyCuqAeo4kkyPQzIB7+Q31%{5M%urF znl{Bgo=Vimw0_Djx||yqWSJY%v>Z#(Vd38E?Ii(yb;Ib;VN-35CSv7FcFyTV-`V<8 zmyAg0BoFA0qiGXzT27moF2VTInA{h*Ax0`2&lwpVI=2$->dF}cT=yK7vK!RUolV{h zr@pt(-68684_w^N#mNs=}{pYd~`PXrs?!Mlg$c(Pl|j)TW`16k~C;$2N`3&0Bj86UJ34 zo4!{KP^xQ)<`t?&9hyQr-r*T<^P}j(8xjJsYw?lvlNLf;tbCwS2*M4N8x0sDX?n5%gDlzsM!lPNY6Gs(7&a*`w%)YY{ z{colhG#wkMcnYACV9h8}dH|du>S#CgC8EfNC)$O(Nic4vGdbkHlX32j?cpBO~*aM+yBD51*jGRrlCE82D0(7dXYV#q& zHa%vXi|vOX#3fcJP_Nbxt{)zwc7+L1`Nlny5_y1+PX zy5F>ZbS%>GI&7*V&rM5Jq8NJ~-@U`QbH~KvelTo^(g&lOwmY#;g{Lt!q9Vdtit9Lz zC)5TKXQH#iD>~6-k~d1YEizUX!zd!Gy(owZ!;+rX!OEuf=WH1h^Yz9!_SHpDcN`lj zRRez7BTYiqW#tJWrZsDltP{4^iL}B(>5{CF8GjQ0`AJhVbn=lV!$?n=C=1|0Rxe02Wh3<3{On z*&x~bcGv(}La9|CTbtlJ3uj9yHs)tisWgkgc2cJ-VDozdZrRI+4&}* ziEAV-0&PbKoeBrHH__woksrF*_0p|rgrLZsJq#XM;r1^+qRJu_Y!n@TmNlS zWQMXA6B&C6Q|?tEsc6~;dt~^c8!wQk+s{Z#wbo2<%0?cQ{KYz3?Yc%iuAWB?^`b=Va>^AZPKRz{SOB;LQ=i+v&z93#UMjwTHa zHZaJk1TTY)3igcnw~~$tQJlSqOMUNC7j2gNF1qMnhj%V) z#!G@uvW<&)QH(IwB`^9K8n#2@6=WV65$h1#t;+adG(yTTgg0qCrCkFkb0Yzw{7E#; zf^HsG-${-PHb&4V{c)6Pf^Eoly^OwkM%OrBTu>q51(t^umri+}h}K7|lAQmK$g)g|BM_wZ)G?Hs0B}1#Fpyu_hU?ria}HWp;~?7AQRpK|7E$*>N66iU2RNi1{vH4A~{e_ zFb6$o&yy7Sba73t8LuI*yOGGo&|{8Ti9;Rgmsh}`^rzoU0$nheW$6A;9V~K96+}D- zzVqZ&p~2&j(!%twFb$!s_na<5U%;us+FtXmnO0OCny@p3c|UT#gbrmmU%-uIsEaMh z)a6ym6$>mVZUl9_s?!qI&ICA4Zy+=?D;MH}wxdEq3KNy_QbMddV#4Po?Nk&?-+Bqh zCk)CRlLmx_M6X~MkNY~OEs)1UMcNREn6i<3PcHmikaNE~>ta+r3wcv4vb)t332kCa91%hs0ZuM&-zNYl#rG)z?w!^#C0!R@K}6Eq>rl=us@lw@zZ^A3$`TN zNAi|2HGTRviO3F z*O)aYWqU@xwZO_Gk}7%2DWz>bt4}#OlN!Jbyg)8WB9@=*Ol61MJyFeKZ(~)g4rt07 zO~wBc&aU`5CE+0DwPw-n>#Z)Tl_|M{%^K{Mucv9xn-d|bh<8yh=?@DFwesr39tIX3 z*~dWCN=l=mD>i*kMKM_$IarW9`V#aB_8NquklecwN73%Q(9+{s{e()IMQF0=uua)o zCAE0j_}uzND6#_QsXXF~O&c0<2s+auoisG&Dz8wFu~>>zM-XgNK;IG3$|Nu{Or$F4 z0*TazLz-#|>l4;EQU2@^#?=|0P&!T z$*DDyFJN=pP#vwb7TJ*Z@x|cDY-Tb;iI);1b6*|GlP>DG+vQ+|IF||CtVIRS0M3a) zXv%%sMfJ6K!qw87zn6m)9o`I!u0AU9idpj5HJ?nSeVW;pi^&jWm2PZbW;crO$~61$bQB|Yg883*!A7@p*`-3F=n z#y&P-1$xad_BIR2REa2 zCbrxAbP}hLeKZTK57$0yPip!{p{-nGM*`E4YyQOAty!f-?Pz20mf*11-aS>v?KBg$ zdEJgCi8o;NkO;9d1SUZhCTD(4>Dg7sb{D3|3fPL?SBcK{#8yyf>182<&@QiPyWNKk zCT*ALCCw-uI8tz|6?@oHbt5dWJCSX@xWbjVa8$?|4f)j`?e@{lLIb;B?499)!3Sw2 zXzyHK9mP)D6Of$Dy@8u7Q@aBCVPw)%9-#+f0now=cc1el8kB#Cu zu)$A;<|U~yODeZkpysAl0L;dN@;5n5rSX--l(-5*lRV7`n zLt5ifklw>8cO>xIf8&Zo1QCLsRNSDhUNl{Vj z7DI3De0RlzfY48vgmCvIOltUvE{rOC5Aa0onXk>oh6uzA$Sd)!+LG3C#dN|O<_r4t z5+>QAg)HGKBh@gHr8!eOj=@iDBE}_L1vfr|fY!$si(`=wk1JEZ zJoeGbY!}m?gNyN0^>EV94i{!fNZP0`q5O$_+1-n&MRqLj37n~Req}PzI(7~ul0t0E zh7=x0YEZ~qU6|`elrk-?X&g-YtP&YJrDx~ry&EgcTyNpig$3|{`do1jsbun0mupH0 zx76S?D0Tu@<057oTQyaIDZO(zW+FG7_1*@&T1sA1mm=TQ>!-$Ncg;>|#e5woSABss z(vAyB$3_>i;th~jY+(;T~eF~MWUM89ET_N4cYb$k5x-WJVu$j!Y0FWB=1*5 zfqOZl31!TeN9%ctz7;JWBWXt%v29_vo>O_}H0Y<73av8G&8Yc1#A>}DexWvM101ia zJw+-*&WNO(#0kEXBVOVSPfmM?6^yf}`aPmz^~gAvMK3t-p-C+6+?}RtA#Gk>4c)3h zXr{Nq%JwRaPIrZ6ZBaU}8#8Wqmy_v`);5h^O_^_0>4()gm?*QsGD9-NXl+Y<7CdkS_UAEqfP%A4EM zQPP!c)06WA?BzlYCQD>C4^kqY*;uA3zaYdl&6;ahA;dT`fO7+g*zLgMoyotzq)u9q z`Z409ao1rGCrzeq?z-3#R)7kZ9mbas%+anmXTC7j7~^Iml1Kswb&F>~jc&q#noXji zV@@P5luTpE^P`kJa>;t18;o-UAJh49`#{!I@gK(0Z`>Gtkt8FY1 zL=^p@fu7O+mlYzZw=CMA8A%LJ@q_hwndX}oZ|e4!VpFkdUKSYk*6_?xH!AR6fe{AI z&%uV%5xSl-+<tvTq;a?4!MwFRKL|(jdJ5i@FtFqH7i>=r>bIt%5mvaMBE|c?UY*0p|Lg$#WXsNpEdmUK{C;a&YkM z5#9S$cB`d%tST3%t8$vZBW-1n1*L*Uy(b0a0hpz%H(7490z_NE0+*p9Fu_r>c- zZ>>Er_$I;RMBI82-qZCCoVUbebPF3Pa;Pur6m+qGLkMAWJ+xYC{Yj;+tOP zhDSt5c~#V^c>o|OD%fGd4ThU%=BxfF8He=@5i2muMs#LIP7GxC@?~T1kYu^7pg-Gi z3J<-NQxD~8Y)>#z2saG!fZz;OZMr@*iuktmRk$eS&?Ii&!KJ&EfvTpCgFjseIagYB zYi3s?L2|>`%Ye$%E+w#2#-b)uNes3)-ThdODAni3ahnE?lG&>UE~-#F*4nzI{=yNex>bU!#zscL!VF4<0!+B2eaZ1J%-oXnE5m{8#L;(F~wf{^lTEb&ez zXMv^9!xuSn4ZY3MtHdYgDt3LzLQ`l)I$$(wGmuM&8i0v&f$9#m1K2~6WN4?eL4c?Y zM??p1a}XEc|3`Xkwcg6TNo#EUhSu}6o8Gh`=e%}YAQDP_JC^o&^mzKndwjOvxRQlV z6x(5~9*+-(W7XqgbtGc6G`tDwEWqaa|0Ha#-A=5HZr_jyk+JC9cT2{JkUHE#GwYiW zGti5f3^}{Nz#)0^&6t?Pg42PesIl^@0=C$L@RDifhw#n6ybykrVRMmvZ6Z6e1Sh}% z4w)E+-Q+N$q(;|UJzFJMW%qET%z<iidK*}A=GRRDk+?TSWc!2 z=hI1a@UuF!Fe+c*4#mu!VKlWHBg>m z@p$axPUBl-_TSx52@ad3CKg}OL8JzELWLGLY&1f`ZGsn)QnSrlxfwgM5sOBM0C(Bg zQ?YUb)pA14oXsYB6G%LtxI_1vnV?+M-?P$r1?%aYJ>Xd59KgLWBrI zQ=hYM*WPC_~l(}}FE#E9nV1yI?tu9cPTmY;C<1wxxbk#5?V6g@BR z*~gofal*bYwp4k67Lqs0ffyN(yql5t5dD?7RpT=`jIL{~Z6r#RnbV@4QnIaobsm2V0>IKEb;D8lIhT7qkEa`3_2}`Funn~ z-JAN0l02~}I@UVP2mp2iEu!;2izFy+0b7VQx?Bx6FPtcA-mowsz6vZKa9ckKVG^*l zV`8;urjX4<o)wyX)cF+we@Dj6O7?zDLL*di<2uwVbfeTTyM9nN} zE=IL*k^>c(u#EfDv#iau)%wD8FGG<%_A*3>=Xj5zES4dUe1j25&|>OzkngWpBN_Qb zbW67!7j$f0O7Q3m+3FgLXejOC%qL(AYRO<#qPW4ewzRi=|F{~`}->m`FFFQG7)eK`HIB%BU^V$bUSynfNyh9v9)$DFpy z-lI7uEjFgM4Yg>Sv06iqB_@pkIqGcUysdOhS$mFB5oJAa{n0&?#zN?^pn}$VFye1D z)K|U2)zoHNV|}q<2VJK_2Tg-bL_}lATp6*gfe0K-3g$<{aYqn$Y425liN<<`hehS; z&>qi%32JHZ1R;o7#|OJWry}LPovxGEc`MhkVQBRR%EH^M)Z!XMJVXWFI2OR-z$g>@Cl*W&n{}5)A=SIcdWSXA0u1DkzKvezTb5j+ z4SlYv+*fwH%T*0y$w8Oo3t2N|*%x$6v0I(YQN)UGpjC_%n;_f6M?{29q7i>gIBPf0 zc~Zy)q_FPDKhWC0>lQ=2Q|tIu_Q#y1dDf?tM&cnr)KwY< zbOdN#k_QhLV#$%3N;DA#ni7Z7^wOdn7>tau@&1{vcS)j6_W};&Ow3O6Ld}SsRS`=? zjkrJ`GS1=T$(K~9X0RyRCBTX2$D%zGy`Qf&78eRf0JZYGoU~&1Y-0jr)8x?ke`WP4 z%oE&Rt2X+=twfx~$t%4nly-~BKMgZe?IaQ50#2RBe*H*8a<`bpPl~J6o+hW*`wTE# z?oYcn@lhzGp<%(vQBn8WW9~5CIK!Jr64Opz`5rb>R$wd;M;9|W!GVem?OL}sB)E3K z5llWn?qb&~m$_(PQ2qalVFU+F2J#u>y|r|#oz}bV_*=C&MEj{6L8R)2ni`mtO$;lT z)9gsJ@^bbQDVY~{GwT3H;_N|dburGBsfh-blQPA#R4qrAuF^|rv4wR5;tu2}r>1{; zN$=chk+Z1SiVSX=ij2XDm2>YhIoHaHbyqf((FHSZ9nK-n_-N_S%&z)8%yGC{BQTR$ zeq0;Xl+!obU_};x|Ks#hb8MlR_9SSKf2lIlW(=EIS;A-UcOfW)WaM8Ktz$TK^T6|i z#!urDZXFu^+Vr%zNb}c#NXyvPx#>NM1dXyGB4XYzEioHUl=e3q*?_NmlO!{kMv>_Y zXQ(r1L?aRg$Hu277ANPb8f#J+K{U5onF^?(P$;@ggrNR^jrsADAc0C6o+L1Ng$~9O zmT!Oep%|YU%DKp5Sh=+iO-hnhDm!c_EV#7XSDToK-EC1ExD1xnSS^=c57zdX1upI% zL`2h_Q{FRd!f`YvGpGUXf^xPiB=&dusD%!F}*Ad zd&C?r>k95J*kNV>^jsrL z-QqPaDK#STs5|(Mq@pe!VeZkqr|*_a#6N@BEDRujt)+sc6WfBqTWif{VKNymdl8_+ ziR-0`F!}TZXyE9XTefdlzXj)1mUdK!su4$oF*}t)6{FN~42?wKx-TP#FDc{H%qFn) zH5M(oFUHtyM+IKaLjoctHtieeYr~)~eR9uCn>Ff03Uwj=5@l#Ftd#han$)p~?;>$cnbwj&ohd}q zbi_B+toMs;&eKo_?G8&bhjY^z=EbcOp3=5;V6xhCUKI>mRegfD!5YJ zeiONDE5l<|q{Ko90z7d8s(dHLJ6Of8H^xzOGRP8CEPbM;x(XKvCPTwy0@PHSxaXC- zJ5voQ!V2)q$TpeK$HA6EQ!VZn@mPM%g$4Um;q~lUC5*#Dq@=vJop5L;Z4iowgco>q zD38lIgyAHPX)CBzr{%D*Sq4)^CKI$SLbuyA_X#1IBb$14QPd}EOH+#~eeHftlS1vd zVr#kLC*BIliy{Om=S+P2S%47S*tWd4wzN#)!ikJ9rTScB98s}qqKP!?^gI{nJC*`e z9bX6_70D+lVOzn~xnd+pe@CN%xnyx>r^#)AP%~NM30{`54~8Vee`*zn!5t zam!b2!>4l7g+kPtI84t(AXWV2ag(&qpD~Cl(CXr@`Pn^o8JY?CNCj}6fF^|4E1z+9 zN%P?fq4HpRpFcctkQ^9kzVk|NU`QEa!tJ{4k}y^LqoiBHVLN+Yj7dkC%OonW<--${ z68$M_pxAR6AZ016Fe;eHNL8uUdR1FVF3l{F?Nb=dY05kXZN(E++MOXLY64;0dMU>K zX6`+3EVqx!Ruk)XL3E^9vhKJaOgh?A*%P9Ty|)=j7S>2J*7hCr+N5pWQiM zo1O-PTDh=mdZn5!PZ^(^3z%}&%(s@$2+qV}$Fk5XtI62XK54tmI`Z6$64Igmj@`58 zZt6sGG>5C3KVxB`v2#YcDUZf!@(ibkU5$!e9lz5B(lXcRswiFa|)13 z6d|BoTA760LlNDc)NY7fc(kxSk$5DPI1Z*ZyA_<-VW?VMCmWN9^rNKy9w_Vq?ZXSR2|@* zxbkQ@T$VEr1h0Ea^stTgiS1MKId?NtRlv{9VuGs&c-Z7mM-}lJ?NHjJYzaAPQsU5v zD?CU!wXf}&cZdU3Dr4mtZ+nvAh&8%x!ep)k9 zZ+tr|l3|lw8s_)gjrbC5f3PVw3?+7AVl(ylFe6CO3}NeAH=VM zY#NcN#b`uSi_BNCx`??K_g@?}>zOc@Lp7#F6&sON2(wybyh5SHkn*jlYT(WZ@EH}5 z?U;SDR+8`?EHBhjFKF@*?<$U>R(s<>@4zM+hM6$^F$RTxgrS%L;qpFNLd}OOAryGJ zvhaSOi1||b5(WziyDQv@$Tt~gtBBUPY4CCcJn5p2v1)a0dAJb*a;qNL8k@-^X606wuHd2QH2LmsZR*=0W?n)rN zhEk?nUYv#dWYH1_iv&hREa3zE=z z$Sq(MB((0S!Vou$ zo@_uYPl($>PUVixPAz#nT4%UL%!zX%cz3tGHZ)q8!s`+~s%7d}eqr!2Ff!dxOU z2KaJn%XpiYdqO<9Wu&$n+iejUqkfVzmzTN`GO;qUefZ8er<0T)TR{`2uJu}y*u3vC zS;hFMpKilC3;Abi@IdX{hQRE1JItKlT$ZY1AB2R7jL?kKvTojn(jPiy98=ioiZy|6kaAo+5C+B-62r`pG- zqEo!Nv)s?r(`nO+_&B-z)|jqWCMWSOBFp4N``}DTI3*H+>+KW4Z%8Z9?3^P{h(a?Y%vu7Wwjf&y0v9Ig z8I5B{5M4VXC-RH5fT@=bR^=>+^d<3rflr}*cj6#F*{yhxU)$fw&Kf!_-Wu~%)Lks& zuHNFNkfZdBoM1MAh@kszghij0%U&`@8B=JCF)=iqOucX%=<;^o$IhkNJkGK~K6Wy% z?vTRJbms*NsYFXsZQMNa{e}D0k$x8 z{_6`1vyO zYf?nx#tM}Wk`h@-B^J`U+MI!;XRi(M%aV)ku@UJbt)pY%qL*(Hsfc`O`3tljQLm*k zS>=WCC8a%Bq!#NcU$QCG_~ddHr;DgW8=Wkv6!$cqJ^^cxCOHnfDjV#GL_>?C#&X1r zuj#jX%eU{Uk2}rguP`5h-!kGOX?a|zU&@A?$f0>PLq>Hd147bjZcERNXposQB@=#K z&R&WkW)O7qQ!PkK?eLig(>hqLvHBqk$ycdPXeUC~2-O#4NGFln5QpCdEd8Vv0V4W| zXl6-0F>D+3J6fNbTpsBe+jmWBd2OjeY{5z~|8B#}K&6mnF+ah*Rpe;H!Q3UdSruC6 ze2txLPnvO>#aP=}9j|Si+pJC0=UpApoh;RoeDzMF_b(5WXX{aSd{!SjyF(AR&6oT* zPcBU~iPq*dp;F8&&t0xR*I7GSdTvqav~sx5q!{g73T23du64eoZ0=LptodY;*A*mW zLNE(zZRw0W=sg=pjLyQ{3+i}>0NH6DuP#>Br| zjqkSMvd0ap#`o?mm+>tE-r+o{O^wg)nuT88q*nPaeMaKvNGFD)OA~_!Y4C+z!<@KT zQPaoUVcpb^6`=6K?(+sVr z<^J@;2#iYV7rtjrmGDoe+DWsnQC;l`}^ z$7|sag;I*Bb)C}D#kr}W++O5AbWEaEHGk`N98}QbmC?s7NmqKjr*dHJ#R2768UOT_6dMh4~VqZP1K#Jta_8O6E@F$bos?AG51OHP-` z(9Gm)%m?KKmOC*zDR`XShQ&47#E*R^aiY#yw~Hz<#m&q-Vn$>i%YP-IH4jSHQNw`d z(`YVPM{yWRC`{{Kq@513z^6uE<&ez3G8+N95{=!=fFlcO+)Kk`Cx9cmQ*jYdT83z4 z&EDk>CSS`v%d?QeFQP-%q`C zxjr##vaBo1jzco$s*NcNl_jesRR`knNQ!pT(I#aKWyDxt4K<<)=+Bc1S5(Kf2>wDe zl*G#_SLDx|xKwh$;)kY{Gix@%V!bidPon|GQ_~ZlnD&(1E=qDbGEQve^2V3~O{ky0 zZD43&3Q1~FOnqH=nKZOHe`G&GX{L4l;F@nN?z4eaY;qbgEs9GIqWzeYsRf@k`$i_s znx(D|JE9Vie(i&g0Upt3>)7g7GPH){LQ`zhL^rGa*6?yEeIV{n+|%W(VsEf0mB_gH zjBSoaDAM#Vmr0CAFIZ3ZgG?r+P3c-r?&wc|_M3=4I=!@OX}UH8eLOhsF1nDJfmR&< zq^CS{&4r?qiJCKAyQD7X4-mg(-u1H^jmF6O)z!`8jS=H(63T^(U$&y=IjATqm6#If z0>YoP&7?1jr`^D=#=th!L71XoEh-XvxyNc`fY74bh!zu}jnvk5;F#w4P>vulK9{JXhDShr1S z`_r_n3uT2G|iPG%fq!J!MY19h-p*GsY%CsKTZ@Bh;qe>2;78ZRbnfGKP)4 z;&k6#@ldS9ur*qB2}cmPc6^7rZk;{5!=s1t;1p+TDah6o ziKR2LUI@0;`bo+jobi;f%OTR6sA=^X3HPctCWp>jn1^J6KWS#7iW464r`(_|(Ol># z>|;vexCQHyx(4MV-9y>W%|yP%1{xbew7#S%TI1hZ&JcNyepRWgGW*(Yu51Z%9z9d{ zzd|JBEKy9J*p0(bU<`(5qiGIGZL=bD{Re0EGh{1x226Mocih3D{nb3Q-^4as$V{~g z&h4|4N40g6I1+)YOVm`tU@t6cE7~2P1H+np6`L!JZbxB+())&njc(?TW#>0KS64F! zZp#{9nu2{{eNzbgW{sRpRyIAbYm%kU4Nle#NE{mF)A9|XwHka`8?EdpX?;IE!_Lb_ zM<~R0j-3tyBnZM8$tuL=EHS!;`JyGj^&J~K*4vjemeSL-@_;w?dF(ARk9g}~xGYZ8 z=T+G4#u|t~k4=XdIy8OvfkMTYTDhE9A$SS-*6FmR z%!$udF(M5#j35V*sHW@4{Ok5E9=>)WJ;9aYY=FxrP3V2-Lv*hJyuWgg;ocn6n2q5c zyv2?4^*wYWf|OGes`Ougtt1atN_eZUnvK=b4L)4~TfwR^ag#_UB=$nAIh|!C+tTGG zMKM>Rqcjgw+lz{QEhqNj&7IZTZlk`Eoy0zBH`@y_2cV+c9tlX`^)NsX2n}_@|tD>bj}g^p1(z@w!zvMdc}$Wf5;E z6nF0rF@A$vsq>?xlN*BMx(p(j{Jak|ZLA;*Np>=(aWSb=nn+Mfwb$Zm zTq6nbMEOTcjp=Crx~`N-J`&tJU0b*WH)SbT(HGWTOY>ZeKuZ*cn|C@U?m1Una}(-= z$G0N-aHDq@YIO&@b;(?pxnMQp2_G#M?3nd0mvrO^Ix_5vOw$>m-hcp`JynQ=$QLUe z^B^9ZVeM<=`&IR9LG}sN(!I)7M13#FR80Q>lW#=%=ZYFPWPDtO&!r#e&5UHj7D>0o z%F{q3;c+nAC1Mvljo~*(Kb??Df<^|aJ(YW)d~B`lRe`Av$e{_&i%f~t>DL$;87W&; zD%4E*!m8N52N%s&hPld=!t^`Y9I;t%Nz_PnHJ2`z*3xy;0eAir_x@^={X#Fv)M(y8 z$-uO=wm81aI!Im-y@AdVk{x4hMxm&^$-u4rNTUj!A@llNm`8OWVHA@w zk=ym6a5n9~M@IYkvS<=po#~Wg@0FY$iEufa9eH1&OPQVYd$-&*`(nt;(q~Rz>O>q5{?s25Wax$g@kV*d@JE62|q>nJ;Lu39#XOAJ1m`PWrvStc?IES z!YzcC5Ka;PBjHB~4?WA;bGVLWhnrd6Lio)gtN$&+`=4!PhZ|WQB%CFjBfOgMm4x3R z{4U`Mo2@;E7qRScmgPCZgSJ}zg9%p>_7K(yCkcN*_(Q_pZT5SISFr5x6D&LYAp3kzw=d*kT;Z1}$6MiRvr=Dx=JN!$Q9X{ph_WcQjw*~NrEIWMR zc~;-y$65Xa;Ze`9?;Sqi0xKUzcp~9Rgr^6v%Cf`1W!d2aFSPa^MEIBhF0i~v_<{ib zJmc6bZR4)4Fye($iCWrxEoJA4+)4)5RK z?+K3y;3X_i5ndC(8(4PuDV81nisicqPrcZl=kQG|JNydE4u8Y4!wr|%?;SQ+cK95Y z9lnlbhX+`8c;=L~=kPf!JA5h24sT`I;RmMe_YVKaa%sl!cLuP3*6xh5|tA9G-g@n%{d@kYTgl`~xBjFDNc;r>q-cf{Q!d}7`5WbM`gM_yd z9{N)Iy~A@^c6cqz4sT`I;lHr_CBmNt@If!L_8p$UvcpN19bUuotGwRJ?e`}Tel~zV zXZcRTgI{6w9X^a@hZ|USIL`6};qCywn&oQ=KO4ZWvivo|Bd@mSJA6FLPayn60Kdob z_X+O~;KN>N?K!-NWrrVQ+2O8h&hmMLI|KMymL2{r%MO3Uvcqq`*4jTnc+l&td@$jP0G`6K!>_&G>N`CC zdMi5|VcFreEIa(mH&}g#pJ&_@?C>)zJN!P&p}y$&d-%P>!{2JpbGXE^ z!y8z3_+geE{xi!CAM-YA&*31;4&TGF!+&Dg;n!KVR^orZLHt8+G+Zd}9!7j0VL#!; z0elI|R}tPscr)SW2tQAFJK-IKN8e=6KZbA>;Q(Qca0lV*39l#o=FRr|ZxNpSw^lxd z@Uj5zXW8K=S^gB^4+wuqc%OGzdk!DZ@)HRA2>S`&6TpYQ(|+&pi7Y!@&GH(;_Y%I3 z@ZSP>7t0QhdY85D@HmzqN7x_0XR++?l<> z-Uh<+2@M-g`z&v4%-Jo@jgd<{sQrELC)4m) zmK~nLvco}^yM3PjZl1q)KZ*NA9RGTLANSP$x}Ny8pRw|(gu?-xWZB_!SZ>!}uXhvc z-%R**!mvN@`FF#d^%a8?gwG}n>w7!T=I?yp=l-Q|Kj-yc%=X&R_m!;oZNdYDYrbkd zak!Udhu5?0@b6f5_(_%>Uh#En&*6_*c6jrD*!K<_-?Z|@gf|fSzRLGg;eIY$U*URc zx1aLoe1Ok$_<5Ec-o>)RqrPSRb=bqQ!woDud@joluV&fdn^=A`;eQkU58__eFMIrz2e!PbL3GFkE{{z2o$1g*Bj{mOjc6;B@z7x{>a`{O=pYtZd zHxvFx0DsDIxZd0Go1gJ_$KGM@<94Pz`;yy{+&$7MHJ`?hzcKkWypP_x{ zjQuulGlc%!V}D}!cKkWym!W;c+c|;lIeZPvFFRn*aX#$O-!tT|q5Z?#`5@a1?IDi; z8NUzhA79|}ou7yHSO4A9ero*;|NY{x40FF<8$5z=k}$0QZPs6PSGxYnocdnxrL6Du zw&m3Kdf#Dvub0=K5x&>E|Ht|h+GEm}Asp8wz$KIdNv|BdjR-`MZYC45%^ z?_$~Ey5Cy;P@cJ8qEmlFJA1M}=l}f9o)_Bx-Ou2D1&8ieaOi#ohk5>mcJi%T{u;`| zQ2vGTERs6kG0#*Ul95OT#t6Y zg+upSg#6m^?#FQ0sXrr>kD>euBrz)Mf0{{8?j#e+(ZDh>aYjhp>jDs57H z^L$OSodZET`?P-ZyuSwctp4xU`bVKh>F0h(@sBD!E$GkZS$_rV-ydc9+=>4WDjiii zKENM?W(D69;GYV-jKiAK^yj6Tfzkr;A35C+Yly##_`8W8CH}&Lt(~DiH^c?R|AzRt z5ij#0pQnQ#$#dUF{8J2FdI#~}B>rYRPd=0P$*%t);;&q9^_(3H-q-4Xi1@Acb!n0K z`)@GBBZ$8m_*V1sF^(I%Q}THk3FhT`v?JsEDb`2#^z%vLKO403HR3-P;JyE!ezyJI z`~L&fmvKAlIfnQCKjhHX{l6<{-}^tB)Bpd;>Hj@JJKq1_2YB!Q@Qc&^e+2p|{eJ`T z-v86u^ndk1HuB;4j|Khr=f3mp>E~|ZbAL;`KX*r)=U$NW+;eiC``q`XpF6|nex7)L z?#tUe_sX2-o}2UB7vGwG?sa_bZN&R?f1dN)Kjz@~qgkQn@8|UA={fzm{uAl`Jm7vd z@3#~0{iy?=weIF}@ZO(a<@D#goc?_I)9L=~V}DkB#_-;sueW(_>ELWSd`9qG=L7d) z{g4mbKWN9-(E|d!)AP~)p6>s5+5a8Hd;jll)BiQpXTo)Keop__v3}V9GlF)!|LX(% zK@d!`-mm|j^?$8_(&@zC_Xmc!hQBjmc-*Q5g`}@kg zWv!P(p~oLodRS@84xd>*AgBJrRPS%rZ?Ap6^uJj@f3mjUtbg`sJI6HXvFnKs_1-aU zr&(XU82HCw+&rSew;wMe-XlV`^R>PVylCy==ZO!rcHA;{7AtH5UbL(8$%kFDyny&C zzH1d9!QoqAJ06k!G2#!$&`3Z1WZNpXe=70r5&kIaUk$uG*CW49Wc}-j_sEDdi2r-G zt(;IB?KbhyxJ?lt$-{#Nj6n{j?BSlVOmA?mG`spY1{C)2x-Xjxz zd>)O)WnNYU^Kv5a(vDkBhS~l_#QTY;hZFy5;@^0{5I&w?A>KVwzApa!q1L`zv^TMx z?Zm$|7`K-?e!o?8y80UN9>OT>Sc^*zGsc;dfByq|#b@hm~$N;_+wXBD|UE*%cMJl9WdyL?$myhng~ zJI^8BPhR_by_$Hp0DJv!5r6ZI_FS+35Qt29u3LP49yb#2ky$JGUc?aJ>_xMzDFcI z_8|MgDDhWpv+@~i=k35BsVmPa-iP@2v%a4sK9l%EpwP;^xQEo+c{=f*;tOHe_46X& zg&y`k+sYs({anlXezM-@>vrNjBK0Y({|B~n^LGs4^ZsBga33pHRnP~#^fMg)XA|!c z(!2PhS8F>*lrDb1A%=*53-Pbx18*h%(`?62qW;@|}|3~6Oed)i5znP2yMg1Icy!FQ;C^z!Cdw}=8 zv8sYsEB=VmL1#yWY4O0$2Lu9#)qN z&jwzeJA8w+>vH)GtnV2B?&NcCQ#=a^aHqDDK=9Agv2l~<`pFunt0~~K=H+>;?~&m? zZm%QWBZU38w*fEnbrX|46)N6gZsquR6*4=^kmHmyZ$ek%^P6|5L~R z#1Q^ozW~9=czPuHIzC_sf>P-JmBD^z40x$ON4a?>+n)wr#?3v#Scdxf81a6x%g5on z#DAWI<8=5?5QenlnR{Fh*+IN#D0nj4-%q?p;z8`{=U^yu(vC+2_`d9X;{9Z(^V_=~ zVDIG-O`m2vZ(;p#-~FG&dnTo$S^sY0J=4r;;-3NrBI6dyi&KG@e$F4Ticllmfk_1VB6>;H~;kI?e@+JXfr?RzE$=U3Me?tI5*7p-z+YDWLFzWf36Q$tkz{_*}M25@3y~KM)t#$m-*K^vr6L^squc4j%{;Yow z+o`<85I#N|un^?Ap83l8wuT{{liDC9Uq6cv3{u6eUo^POow>V&m*wW zkmve|TTF+3D!@zs_fp=0&FW`_^*!UA^Z!eT_e@JZwr?liBhb%bJ71OdvEGm1diU}9 z73+J(f;Y1MNm$_0PtS~nY1L1i_**Wu^0CBUN4#hH@cw+2c#kMOi}jB`)W*{@bKG-? zeQ^is`)^rQ!FmvYjQ8GEl_4&PC>$6e<+`;;ufy?>rsrci_L_Pm= z3V5BbcNxa{)yIhs`Pd(T&+7m2r&~Lre!iP{kI?jSzKM9xg!4gm=+Hm6c0A*s)5CXO zjprWR9C!2x)R%E9QE&eTwllzXJkyN#`B}vKiEVHHrNnzCKp%%cJHz_p8LW49`$qDdV8;1|I*6W5?=*g<}0-KzMgnL z`R&jB67hZ_<>_qaZnhuN=L0ub`+nm2p{#!)@t#@H*Y(SZ_Y*1p+%FLCnShRFJ3lAh zPkcN7>Dy?}^^??(XZ_v8dxp%95`Q)E9vSKD^y9?)32vXS`$9m-xP^Rg74S|QY+Av~ zSl=@RJ(6GkoOnNh?Q-fg2vBL?PaZj44HF;g;m-wL_~8L~8|C9`^RHRoGjveRDt!`o zp>sc(Jz9D`g81e4dLVbZr1k`O-|2GhQO8a@r+#Fx6COyKpo zKeLJ_+iRDuVSPVY?ESf!_%&a(`e(5HKN26>pI1Pk^)X>p1(yOZ{qd9DpXHbTsP(Z= zd7&X5PW+cy-!n;hn@3^*r5(@EA=glU3P=vZ({vn)(`E3uO;43P@T{E|3>`PRYROW{N2R+NvD0pUk3$D-q$lA zdjCI6{2YEKABGW>ZYSO|=y}}QRa>*?<*hmRW4GCJ{p9_>*kejNiT4xmK5jP=??74SvJWu48W58$C-^Kc#sSj$Ne!fP0sL%gE z+rfT^^zZZaOV;<3k4Lec(?_j8eiFgQZHai#$l&$ALA+{SUEz=pXzZ@u6M%e~9-?CV$R$ zPCduo%QGE=o$99syzrSXe&5Qj7wu;K!8aQoVnRQnfBP5`rQqi|_=C^2=lY2lABVFY z|5w(^x7pZhiT4w!&aZ9(Uix|Ztyawr}j;6M+}L5&As`wf+&MF?R4`{;1CSo?*c0_N~AR zANvmXkB74UyI9{dx;UMDn0U|pRA&80Jj41EzSld65ADp~Bi>IKJ3Txa0!7{{+&A?Q zfB8%7flmKVBi=Lne4hRJJK$v=ul1bEUj?YVw}bcWx(lK7CXevNoP zap?5+E8w%{YvTpk_zQuT_x;aj*#lScxwil>eDcabfBO*Yhw|l*#D{*UlP|P(ZlvG2 zhwZNgKC7QsDIRvwUt2||&o>Ys^2wWlm;S%zBCGFo_3y-w95B4k*Msq%GB2J9=BxI# z+IOTK&u|5Cub-E*{x46p@;f+>Hvup8J;Sh%|8Ujtq5beO;yr`B%aL1%_e``t{=Wr2 zYkZEm$lCXl*}mQfiT8}~-v0B55BDjrCEhc7`?J15yr0ze^>snb#_a>2D(MGmq<$KT zXCVPz2)vAsXJ9&p-@Tdbgz--Q2)x)u!#IJ@u^rFM&|o{iCq7({kJ(|*{d}PRY$x6` zjJX`V26%t>ME6TyVSUet=y4S5#;twN9E)w8e(J<~M#a;Je<$&t+28fa+lcoJxJR@8 ziV15!l(TDzAKqyd4`=-^5bv3vo&N7%=lI`Y6$e;<1Mz45$PiG&^z#znWnJ|D!pc_@ z{}$Hwj7&aOp9Ws|!;b>~@FmvwlkHx=G->_u6P94(`Z*SgYu0+)!uo#V*x&04;yv^7 znQZ5ui1!o0PbU5+z)SmE?ly$4_xoWSg+4ul{LQTYFU0%F&l8A0Y?sydjN6Xi47{{| z(R;0;uZw50zGo=)akxh7v(W_jFV^=H{mus-34)h?dImg@y?*u*?-}sC{kIYy>WBY9 ze8@K*aIv-jvRP}_-)j(fncuSlJ$XCpd!`?M?v=#*iC=H$2I52h{IA4^{`x~NvHpa5 z-C4wY1`Vg@D}X-|=ehj6+YtxZd%TwQ4_mPEu?9;2O1x*Z^Zp+`WzY4DE$djn2Y8v^ zYoBch*F)A5f6~X&`0a}4j}zbxY(I=odoS=uChGa0KVp5qalrf8Gi~#7XCO~c2VUqT zjGx>>yl1XHi4VA(c+d3rIO0D}{8unP@_D?0(jSQTjP}P7zXghlJl8W-okRTViT4bF zz8-%{{Q0ct_(y^Mq#e%?hGnat0pk56`$fdRmw3W z=RXga z2JoV{e~EU&!&rYO>rb$O#}a=v@JI3QBsjqOp4s9=et8Vmt;7w6aaNB9UgpI!MS1_% z5I=vw8h9kzc^2?O59htz5Kf<$vA$>QUd8%1u)b%0d>`@a@Pe?il`e7tPW;ccJ_`x3 zcF~?Y_CiDcEx+3ey!78Qoq2z5A>K1^ypi?qAU?F;{+@Wx5Pmf4Z&$NHG8c6kpqVJ_xb|x;$J&9@UMNB^*tl3)80e&T05Sp)z?cMc%hRp z&TWzP{l;~9Im6MyVwhWDG0&LIA|hgv^FyZr*|d*)UjxAzkNxQna-$IDFt z^4yzmG`!EtlfX{}AKF(p6Yn=W9nJo{5_nywpD={;pSJ=pMEdhZ_TZ?3=`YEWqE+cEWwrqw(T0FP_Qv47R_Kc+ZG; z0`bo!-ZO)&BL2UC7k(J-*M7zNe$xxoY5hFqFGvsXw(?_$uM)pmJ_P-y<$3F*N=rD|P*vk5zncCZb8SC%A$2x*-mwv8ieb1cc z_5X)>zfsKjM)?YRZWvd#5qKE~&v5Ge`8BM6@Tcv0R8vatB>t*T8Q%4-TNQ7(a9y1ELhFxb6mxp$13rsxU(EX9IiuGQ@0ppew8xiLyvW)Q*Ts3n z`we8rvHshE7y5b94TkXb`#IKs&LxI-dN|}St^O(BHT)>sc_i>M&Y}MBbmG5rj#YH} zxmMfZj}zc;S>JD1802?%=F~sw#r9mk(Z$De8}M1vHHo(a4>_l@i9H?QMQuVMWMU1*4- zi2ttEXCVQ8%le)<&i898ud(Nb{=`kd%X4=>&l>T098-LvVg5Pe^`FoB2N`@h+xLvl zk7oV10Wa(5EZUUUqF1w&u5AEn-=`Nt|C5+TX-Mw;d|Xd z{DIfn1CQf#pMtWiN6(b$^7oa*KWEA+K7{ojhlMHi{f35z5xwwRq zxA!X^`%UP@^0}7l>nm)>Z;bKZKI-+>pU`hOLcHIgaI`g7x|n#snWTsKmjW+z`>c-} z!s+m}#NYC1!~6WcgYEbYWIjH>BR-5%6@Q70TWDW81Nar}LlSIf{m@_eQsDjFll5<4 z{h9rS9pIOLAl`4LcDeuFH&}l{I{z8*VZ6$~8?&E#4)81ZtR$Gtsei+vHqN2_@MEYi zU)OWb$s|aY(LC5^4F~IH$dOS`cK@S{a$;4m;U$-NzZ2e z&k!HxH~1Ox;lB0gH(5KLIs7qfXCLrNZ~tuwsB`*x1M6?tW926h{~6-_1`elz-xBXP zRjpuPy`Lf6J;0{)P2DL+x?=^4PanKl?cVClX%{`5Pne=P^b$DuSnzqqitG&y<7cxj?OU*FkSSgg-i7pJS^ zQ?oPmg;KRTFWlS>Q`Ynh^ki46PBvy5)!O`g zZC|xMvpB!6G&x_Ju2(0Prlcx0U<#+jDF4joOZ>`oflS|HkdxM+S$stskpYw+?Nq zbWm&kc{#QEhDNun-!?c}-MIanZDUgD{B3>c=h~h1#i50%+RQ{{WOKQ^advioqA^oj ztS?lyZ9ZpeWPo2{L@T5HRqgj`jLk%~F*&qtZMC{{W~n;9cW-%hwK_99KaGKIU=C^+ z?4e=)cyw`KcYRziqrKJ9n*3YAr)>xDc&S>gj8#V~^50mGbRhB6Rn_Y3+(Nlrtq8@*G!eh<_HCn!<$?LS{I)t@pTwe>8L!Jb_b=|7t5>#na4$NZ(%uZKpaK@>y7{EjGrLlQn8njmuD)ovC6>suOkNSW@n3G)mPo zw`||AehYrGw4*vy#c~ujvauIFtx+s-VO`{Xi5J|`i)T#KCu>Vni`A*w@k^?6vr~=n zeZq%?MfTOEfEA_zJ}M&)G`pm>u@cMm~hCZJUZ|dYK`Ar?& zY)lXLk2R+2CHcpC+EiI9=quHx#%FiUPUX~Fz23eal(!#8&u4QguG%PHqD3q}FiPQ< z<#O+i+5*NL!`qnIIW&%iSsve2gZP@SH5M0!#w(braq!7$@9}udob@@A^Gl7zyeDpw zFY&~Y&C7Y_^mM7A(m@{s{yLrWynZmy>197|U8#X-&h^pP#u%bG!Y@+3u6k(=vkU+T)I@R&MnRl z^^fjq%mLT$3u>Y++RPB%sZzlTUBK7T=xF8t4P(=`Bb|?oHidEFLatUfjjZ2_A>B4u z#Xwfi+;&d2au$(i4UUwmgU{Hue(TUie3w$yCejG-zs4VRU*R3;~(4+(`< zDr;D|UYQ==tgUVCo=2=1uYuIDaw@yeIOEJMLmM`pcV4ycl>SqC%hJD?Vx5E`1cX|Y zaiM}Uveh&7y^Di2G^1}!5?q5fRt8p?w$^(4rt9+y^_iJ^b#agB-1V8AjhXt;^p@$q z-pZEgf!==n+qZVL{9DF9y{iUR_pj+2D6c}HESUb@wf$=cR`;$IjMVEL=o?tuyJn!j zN2&<6zo)l%bzjfwRnla6js8>a?eFXBUDa2qK<(RF-C3WhitM%?$1h6#L!?~~UUco; z(!#Flj@tMoP;pd?6m~mZyQE&Vm1V2y>_($8vVNetdAu=V)Fley;@av~)I0}EP&B17 z6uAYk?5TQncE`n-$jac{cB-Z(Im#Trls;X*6ufv;Nhzk6>Bi7-TJ4Ts0W&1smwA$2 zWQunXC|<9;YN7#>QeCd9dK{j#zB)RnPt)b%GmY2oQ{_)|Wz*7~F$$;Ym0wIPjEv5X zY&MZ;Gmf3gM12u#6)zu=GsbhFz8aITYj*aM$}q+?O?>55_Txz6aVf~pnwNsSt85H> z!8EW*LzjdS(P<2s_qYm0p}uo=e&5jWxXey@RrC!-r%cl72j`1Sn~>ytZ<(&VEcqbHQ6nUjINSl8yhkXVJ|IIBBUiOyDIOJ&$op@`KIzZ zz14Gdx1_^6l%gRg=Rv2in36J;zse`=J)mF6Iu*GIUX*Iy->kO>^yE)b1$2CNZlCbckZg5bS1|O` zXnVC%ddxWcr@)r-X^cCdm?FS)eUBP&4ot_^>iDiYbk?c*j4`0)j`NobV*&z*0U{%c3U>Q=jTiy{(dbv8b1S6BJ zdd9B;l@)_Zp>DpfCJ(p2vxDwuoHq^4jR%4y)sm)IejjUe-EvmA8 ztU4kxt=Z%x#Q1-kyOtQquCrW_@CuI@B!~qO8j+Xgww0QtHvJs_vOFD1sFc2;>c76CooZfs{>HvH>=*Lt+_;jW-C`g$=C0eE;jb?zxYu z8K7Gp-|nh=?mdtH`ThU-k6=zb_hx|-9(i{%yP7T?E3KwTVLrSATZKHLxqC#aI|8C8 zm;~(-0=n(MTe4H$Vra6{xdy#@^N&WF)1>ykREKUshqg_JmMWkjm<*0Ao3Dp&iQc=W zm$K3`Kar_$6+aOq@7ab8QKLAg3o%fV#)8+bZi2o+pe-$L9c?Rf;HzmzvNo3&^Vw7QN@v3EML&Oa zfqZW($4UMwnR#3sR;3xOc$_G$ziMg)1p=HAM(F=KFtmI~2_`mCB0gf}!Y z(KxhJpAsbCx_FxHwj>Wl4lG&h-N#|PsKzu>o#rK18R(KB#zbWXp-&;1Rn;WA3V`1d z^C+goPQpH{_N`5YvmAga2|-BU==YchC>AxixN`^b*1K;U_SzfU)QJb|QpP}H_e3lQ z>0~lLMqA2Y{@Vaw1vj`T3*?-S!d(D49?nf926Kv;7%h6!tMM4=HspWIDWBw2j47c) zuSr+ZqZSL_yhQGb#)esF#BXnq5E$@~c#g2<1JBJC8>~Z~+g9SaVWQN@qr^^@Jsos` zbC$^Qi{yo@>kdg43_b_2N>|pOvSafjFDMa>}4!j7BdSa4GNH2*k zF>wJXqBN|bn*6=3jjfF|n%dY5B-3Um>phS&wm$tyxQFryg)hN@Re`%Wn#c+G(hnss(_ z_pYYn8A4Jz3KH@1{=ld=W3zL=I~ddO{da@$+4B6dCs-a5Y73l&07&H{1E0wxdJP8X zF-{{IlOC8$_O5Qjub$4tK(v*ju2q6Ffk>;g)e{^`V0~D^@Dvdv+U&e_#Pf>RrC~ts zT!-T%+e?lbB78AH*7+fYiB6Wg{NdqS2o}*WG;DHgS+%0{>qy?H(VH)!4Z&y!XQVl> z10Btx1NxvC10d%_eG>|dK*dBsk<~&trpk2r+HFjsfs_WvC0vuPG{M&9?TZ!eeH7NEjXo+Nn-abXbf*BrVv!E}m&WgxSplcd}D4RVC>~Lm9GJh2v4PwVCB%Iu} z7gfkzh!`J)!&qzdsXdXEv1(GJ9jMQR{D>#Zi{5ZPpUsgK5W!VWu9#O81R9MrRpf0` zRsmZR8r)Eaq?{3rB%M~64k0s}s5a=3|S3AQDfVX6>jWiwB9Am48qxoNHt zXy6ehA(99lz^;VRbC9SZ6oEuQj|$#~jmE3Iz{VD z)E$pTlA@BT_m4uIB{5aiv;=^)_YrCQ`sFciv(Y_eG-W5tml0>zD0={PHFSQ&H#N|C-pOE2~7j# z*D>36PYgO#feooDdZJZzKg!j9#)#L0{$;fW{Vkt0n6vTYiw2xEsFF}TS=x6IglNnDOBix#MZXzoYCNn8VSaiFTbfT zpI0GV?Tpaq9aZ^Yktu2m;*AGTyCb58%*_TG0>+fM3&S+Ykx>0(Z}JHs4Gj)k4 z6qaVib7lb+ebp{2%jHEL-z6{K!O_whscKeQFCe>%Eulkymh`-=r9 zvVu3xXPp$*1pVwOVPK=4=Gqh4)JIYG4U!{S=fcFwZp|&st=PiEi$R&<&yQzMu$ivZ z_poJ#fO_%Z07>3h5~Q41^gjtrHnTCx>TPOL8mDE9$%j}3``To#!u7kXM`ZIO?LlOL zhwdY0(?2^yYR6)Bo+SE1krT1-;xt)Ydm~18BlZPhiA8GF`B72ocHeBU3h1_OYt=#un!iBdyf>5*V-wk{aj;iPu9bc;;#m|3k;2NMHzat(s4-PAo(~1z!IRYUO;*I zMA<)-)GM;dtiZ%FLNZC-FYzXO%2iAWLLX!wO4e!M72xe5eX6NY zwK=V@Uk^-5|J4>Ez&qAe!J!|!qke4PMc>WH#S0uWXX6nNuCOUsBy~^H90FpRat_9m zb6crQHLD)!KDH0&Y2^eTNurKdLJ6u{u{neDFTF#g2~yrki{9WwKfHJBa?!02mbOuM+)jJfEk%kPYB@C<{lrT~4jGNuuhSGC^^~51Sf)$8t|$N4>-uWJ z2T!BSxi1sS_QH-=c_uGl;{n@_t+~RkIY?()RpC!sScxI;#957br4UbGkQM8IOi5ut zNOW|rd;T$&brWTQ^TU88K_s?Q&3qD_4X_(xIYjOp3dcN=?GsV@M?3<_0KvmSB8#Wk z`X=$ZT;yO6?hT69V0*<9zhZzr@=`G}gcBshIv#zK>mE^}S{tA8?7K9e5ycpQ)Khf$ zz`lidjG8nYexR?A8h_0Jh-(*-g@ye!8+~e$8#O>dn0MvmZ!}KRH2aizKfktV0bw_- zMb!v(3`$ZJVPR4woH-0la*vbXYfKZ)TESXA8!c1J@?<$iH5*K1w!95(jogN%0q1>& z?Ha@W1hE~8b7N0;l_&8j?obg^75A}iFxaAXs}4Aoj{0ke~3kZ|3B3MA4H zsfe%!7ptIr2nkkb3R*4^A1`wA)YQJ;>fPmSSr;SZ(yeVwdKb$C!coEsaKHOUFc`IUky5yauCn8W?gca)Z8=8FG$Iy&J1bNP@!>%&F30 zpHo9EU5(~iw|21|#dMSIWi>>@FFZly1-Hx$G{2mID}`r3hzX;42a!-KrR+Lan}f=c zabVrT2-mdJ+^o4SM=vnz!)`M-7IBn&^Wjs0R)a|?LwS4zNy=KW6@XqRMgRm+LH`d( z%I{(`K?R+S%Jxl z?jH?UmSw#mbk^_D>hT8Y&02Amp^+4FG(GAH3caxDt+`z(vMiEXmkPTp!6U)8(Ll zvLw2XgXAF?{;N)-Lk45>Sf`PN9EzC*W`fwQx}v1#V`nZ-kRz|e0V8P?wYq+mj_;uW zuS_ayFqCs{QS_GmTAQC5LE!V1InizJ{_ynb2`We-e_sl#vlSO)i`+z)&=B)LZIsv` z=9FMPWAioD&+c0i=DI{^)NtcfM97jN$3bl7C=_l58iSI2gNtwW&QX@qV@^A?cJ-qW zl~4jzM(;Kz@}uSPcm_-&q5cau0p*-oZp46qSFsMlAve_bm`RvYWI9mFwl^VAYF`V7 z9-^kRm&o=^J|V04520sx;kt!TC%n4ZmoF-jJg@Mv1Ggxz=US)Tk%dlIzx ze5%Zy%xTEO_QZ0+NpyN)zn=@atnTQ5NBZOlmSn-IQxJcQ zh&$>Zqx!(<)p@2i0ciwEWEQ|DE4xWhZ1tCdTss)vKsep0qU9gg@QQahStiG|Nl{NE zhEaLNB=Me%{Kcp?_dcA?oK0i~l~Z1!G2|<1b|1S5phZ$V(o7->zs8GG6NH77SThRI zKk3|`3TwDfDR#n0>G;g%Ov=^cd_52a9rRL&L*ynU8jGimaB3JVfMk=dn8aKGgUi>B zp~nT3oG<_zIj(?9hN|N_!L-4ZA&J0Bh=-<-c#_oS6;V*2O6tm@Z%va)RGJ0T7lMG5 zStJx%fg^w{_WSf7OfH(26xxfotqMt6k;S?Zd+f#0bzGr{rh0)YijX06c8)wuQypJBrf8?rHt%#|YAd*|&huftX0xeN$$P}2P5iQxqkG~AN<@QKfVszjiqsBY zRfIqQA<)S)l`;HiY2*GIJEH%j*!;I1mE!bG0?6n%BWPlA%_tA~ayWD+<$z>L{Va8o zwTAHSo3p3y^rz1sopL@}ovsZ^8azTDsSC<#sLASOQd1f0U|Cs*HRd;~o5kjfWzXuJ z!;b1e0dNtjuz(n`#yL)u!8u7dT~P**@h)W{tUgH$0VSbW_xiWffE?zG+NEY1A#*#Q{gyUyVi z#B8iz5i7t|;Ikm?TQUxBpp_04)N}qQHa@`GL?~ovAV(RQK1Xu{|bVmw#t-WSwsNsxwv!oDvHCzM)gBd3(uhS-G zIb~x4wNQ0{ zhbOqyl8r_YY|KfeWPOP^znsQxwkA3^p4;F!B}8USja%8?sM^m`4MBlq40f`9Bo7Cu z;p?wepW?<=4syEb6gN)%>>gVA$L?W}uRuJ8{W7(Opz`J?AA?QO4fpBncX)$jb3?pX z9%kbwyBb#sR#gvdHckf)MXja-_fAol!R&cnSSK&xA2!=06wqfATrJv}yejiJznKbn zNqGi9guU6h7CJefEHVEdCjJf=H>q>@LmBVl&V00{_!un6L zU380?%rtl!ucDvoy<+kkDi(H|DeDbcWqMXuZ#+6he!$|23+wRE$^D^?FF*nx($V`TizlLK8azyU<(V7^|o`lDE=X<`2o$wLypOrcUWQfyggGnhSMB__r zEu=GE=vZNJ9voDpLZ7-s=&C(hMAe|&@Wgns%bl6-PF^#PHi(cd&Vmy~?MNEgk_R2f z1J?3!WH!VvlZ~eRWqGY^3}!DE`Hct@$@s;s_Yc%cpl!qv!ew=H>u?QF342iiuHh*@ zdcTR!N+E+-73Dc9kNVQx!IUNpqSjM{XyS-LUXbLlj{pV$O6y_>tk%e)yPEQ0%&}(M zkdv4lSktCNt-IIAo1@LFCpbDBVP_;{QCWMWKu{g+Vp02>l0N{lvS3K5u=0ol>7fr z;0xTdrzJ!Cg8|BJ`P{Q*{|QrIARlrf*T~n|kysX!+MR&lnKT33G+LMPqwoEb*4(&Z&D1!YZ6d zErxXWaR2UjFuRy>OL-x|Z*#OGYpvdV5K-`kxr zD$!#M0mto8m4-ooI-8CVd_O#Ud$PNY(g-(WKQjdyT_Ds%uu-<69ic4}&3k+6YreSr zd*T$;>4G374-=HNT6n3Q5XwdP;}E}9&ftX=dDz}U(E4gnwnGrE6;7RcMrV;vpJ1o4 z^W2(x6CIodgD~=Mj3|fiG(=_WcnrX7J zl#c{FhF0_^vqiT?$CADW_0r^6(&!1^e$&@7%p~H2QDrR98qO&d=Y_H(1UNX}T@Le( z-BUV~brf+FO(VZGJpV5tQ!j)xOP7reo&2qBN_@E*gBOdoTMXYO_GLXa=FA(+)=Mad zB*_!e;?$&2&@5${Dt<_0EtejjaM-09{d1h;x^K(i&GGu=BLF0LlzQrx@O+uqPJz@Qej zkn*P=Ips{&lEfa+S^HF&LF4lb9au^nZW?f&e1U!iV%R>tdhX7J3C>|HWcEPn5&`3^ zVp87103`yNJ*v>R)7VecU*-npKEIg}JNq{|GpyReYIfjUV6h}DWH5x;8s&G^Gn<1) zDeUa>efTU(!&fS0M#1-lyQJ$ue7oexL zpgrV|KEg6FZLG3OH>PQFp&+}(9!dA=hD&3srM3NX>Y`jC*tFRC7G}G8jXXF{$+i>& zqg2Kot)G<1p-Da)p7*cDOD#MgH2{+sPMPG*!UL?*8lVFVoB=j8bl|2q1yn*=todlg zBXj>0F@{0p@C>1)Isvh-Fpy<&Z?4?4HB{BCWfg*)~cS)p~ ze3y!RQXDkniYOJW%}P2m5_c#eIj`@)TJn_vBeZ$Y+0(lEh~<%h6pz}@cVd+vNFS24*4;OrbE6`wc4EPw-jm5}Dv{Nmr2xm`Gol{zUt%FDCIN$|J|!&PAzME3 zA~Xn&!iSRng7H+max|MBo>2{|o5GN??MoD?pFask z2nU!UokLkv1_m-V2ay?lJ350Dv!`;=GbzTzOLcjLQZ(12`SPld-Q(eMk;_o#FsyER zS?vihNn}oYyQ_pL5|^xI=%q$aI0KB-s?uzBevR1yen!Le1hSLhT7Y});2QREZw4#` z>561$^*US-tYJMsTQxX!`GB7%gqox@UpobZN zDQvHD>ZDf0lsYywkOW3t?NhiTf1SP?Rn@Ko@E>Y7Thy8r2=dXfoM}#>;lq9BX3To7Md(`1^{Th$`T`i4)eyH8WBOUviMN2gb#@!9L6GyMq1e7{Z+8@~Obzqn{^ zpf(0xA=l+xzPZM+P0+#7A3b~rcfU^!^ta3Lvb8~&eQN{1ZakUkFN@)zwSj87_>*1W zjrokW8MZct7rpa23aIri&hRw*3$GdA@SA6Y;UxjLgl_RuQEzSD$6)9g_B%a?x`9V> zm#M4=e&MGh&#bk96gfJ47N1ce8#JTCsqne{Nhbr@@BP!$`S9BQ8jq%Ut=xqPwqLb* z>m~gB5}xrx`1iy5tXDrHzu5JQ`ng@`-tgy3_~Xa$&)Oeod%NBWZ^rLGp8UOszr*(L zYJ0nWIl2F{$=`=b``^;`cDZkQzKW_a2exW(F=iSnQ+4VxlWAC^2HvT`> z_HXC|zx^xni(Oy&5&4_i|04dS?f(>?(VW=xTbuZUe)LN89sZ>2{~df8w!fwA?0Tu| zY0r2?f3fSIC+$DlmK*G9_m#E(Uef+!ZEx52Yu^7?N&D8mzDch?|M&K0xu*U3o231# z|0Va?^{34If2Zwj{be@k4x!Y4NhUmf|34({|Mj!d&aPknIeM1=NgmhwCwxUM z?ESBNLE78(&I8|;elz;9PyZRegzb+`rM+Fh>Ih3(r0@SveEc)`XUp{L+tU8oGr7Jm z&D{U({dWBfZu@-D{`=bg``X^_vj^DUcKtls)0^!5pJ@9}wEZjgg+9RA+4H`L#xz8` z?FYY4PiwV)@SAddMJJZ{pMI>pt>bs`S@{0eA4xULd(LaPEo%Rfw)<_l z-qLn_Rhg-O`yG3eT+{YM?&)WA=a>FM+JEjZ ztJ_bteL8=yzxNZ|@Pk)l0-_mOR$p@rWTdlhJqvynL;AX8)z9a45@5("Banany", 10, 20, time, 15, 0)); - storeCargo.push_back(std::make_shared("Apple", 15, 14, time, 20, 0)); - storeCargo.push_back(std::make_shared("Vodka", 33, 60, time, 70)); - storeCargo.push_back(std::make_shared("Hook", 5, 100, time, Rarity::common)); + storeCargo.push_back(new Fruit("Banany", 10, 20, time, 15, 0)); + storeCargo.push_back(new Fruit("Apple", 15, 14, time, 20, 0)); + storeCargo.push_back(new Alcohol("Vodka", 33, 60, time, 70)); + storeCargo.push_back(new Item("Hook", 5, 100, time, Rarity::common)); } Store::~Store() {} -std::shared_ptr Store::findMatchCargo(std::shared_ptr cargo) +Cargo * Store::findMatchCargo(Cargo * cargo) { for (auto &el : storeCargo) { @@ -27,7 +27,7 @@ std::shared_ptr Store::findMatchCargo(std::shared_ptr cargo) return nullptr; } -Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) //Buying cargo from store to player +Response Store::buy(Cargo * cargo, size_t amount, Player *player) //Buying cargo from store to player { if (findMatchCargo(cargo)) { @@ -48,7 +48,6 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) money_ += price; player->SpendMoney(price); - std::cout << "Line -1 - Value of is :" << cargo.get()->getPrice() << " " << cargo.get()->getName() << std::endl; player->getShip()->load(cargo, amount); return Response::done; } @@ -58,7 +57,7 @@ Response Store::buy(std::shared_ptr cargo, size_t amount, Player *player) } } -Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player) +Response Store::sell(Cargo * cargo, size_t amount, Player *player) { if (player->getShip()->findMatchCargo(cargo)) { @@ -90,7 +89,7 @@ Response Store::sell(std::shared_ptr cargo, size_t amount, Player *player return Response::done; } -std::shared_ptr Store::getCargo(size_t index) const +Cargo * Store::getCargo(size_t index) const { return nullptr; } @@ -99,7 +98,7 @@ void Store::nextDay() { for (auto el : storeCargo) { - el.get()->reduceAmount(1); + el->reduceAmount(1); } } @@ -112,7 +111,7 @@ void Store::printStoreCargo() } } -void Store::removeCargo(std::shared_ptr item, size_t amount) +void Store::removeCargo(Cargo * item, size_t amount) { auto storeCargoAmount = findMatchCargo(item)->getAmount(); if(storeCargoAmount == amount) @@ -125,11 +124,12 @@ void Store::removeCargo(std::shared_ptr item, size_t amount) findMatchCargo(item)->reduceAmount(amount); } } -void Store::addStoreCargo(std::shared_ptr item, size_t amount) +void Store::addStoreCargo(Cargo * item, size_t amount) { - if(findMatchCargo(item) == item) + auto cargoPtr = findMatchCargo(item); + if(*cargoPtr == *item) { - findMatchCargo(item)->increaseAmount(item->getAmount()); + cargoPtr->increaseAmount(item->getAmount()); } else { diff --git a/shm/Store.hpp b/shm/Store.hpp index 01526f4d7..38e7b787a 100644 --- a/shm/Store.hpp +++ b/shm/Store.hpp @@ -27,22 +27,22 @@ class Store: public Storable { Store(int money, size_t availableSpace, Time* time); virtual ~Store(); - Response buy(std::shared_ptr cargo, size_t amount, Player* player); - Response sell(std::shared_ptr cargo, size_t amount, Player* player); + Response buy(Cargo * cargo, size_t amount, Player* player); + Response sell(Cargo * cargo, size_t amount, Player* player); - std::shared_ptr getCargo(size_t index) const override; - std::shared_ptr findMatchCargo(std::shared_ptr cargo); - std::vector> storeCargo; + Cargo * getCargo(size_t index) const override; + Cargo * findMatchCargo(Cargo * cargo); + std::vector storeCargo; - void addStoreCargo(std::shared_ptr, size_t); - void removeCargo(std::shared_ptr, size_t); + void addStoreCargo(Cargo *, size_t); + void removeCargo(Cargo *, size_t); void nextDay() override; void printStoreCargo(); friend std::ostream& operator<<(std::ostream& out, const Store& store) { out << "Store: \n"; - for (auto& el : store.storeCargo) { - out << el.get()->getCargoInfo(); + for (auto el : store.storeCargo) { + out << el->getCargoInfo(); } return out; diff --git a/shm/main b/shm/main new file mode 100755 index 0000000000000000000000000000000000000000..5a47389db13b4bd460dfe6851f67a9b74de0588f GIT binary patch literal 164288 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 E2H0!3e*gdg literal 0 HcmV?d00001 diff --git a/shm/main.cpp b/shm/main.cpp index 98a11e594..76c64252b 100644 --- a/shm/main.cpp +++ b/shm/main.cpp @@ -23,63 +23,15 @@ int main() std::cout << store; - Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); - Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); - Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); + Player *captain = new Player(std::make_unique(20, 300, 2, "Uboot", 3, time_ptr), 1000, 1000); + Player *human = new Player(std::make_unique(20, 1, 2, "Titanic", 1, time_ptr), 0, 500); // no money + Player *human1 = new Player(std::make_unique(20, 10, 2, "Tweety", 2, time_ptr), 500, 0); // no capacity // buy zad 1 //No cargo std::cout << "-------------- ZAD 1 BUY -----------------------------------------------------------------\n"; - - //tutaj - std::vector storeA; - Fruit banany("Banany", 10, 20, time_ptr, 15, 0); - Alcohol vodka("Vodka", 33, 60, time_ptr, 70); - Item hook("Hook", 5, 100, time_ptr, Rarity::common);//push_back - storeA.push_back(&banany); - storeA.push_back(&vodka); - storeA.push_back(&hook); - std::vector shipA; - Fruit cytryny("Cytryny", 10, 20, time_ptr, 15, 0); - Alcohol whiskey("Whiskey", 33, 60, time_ptr, 70); - Item nail("Nail", 5, 100, time_ptr, Rarity::common); - shipA.push_back(&cytryny); - shipA.push_back(&whiskey); - shipA.push_back(&nail); - - std::cout << "PRZED ZAKUPEM\n"; - std::cout << "SKLEP\n"; - for(auto a: storeA){ - std::cout << a->getName() << " " << a->getAmount() << " \n"; - } - std::cout << "STATEK\n"; - for(auto a: shipA){ - std::cout << a->getName() << " " << a->getAmount() << " \n"; - } - - //Cargo, amount - //chcemy kupic 7 bananow - //store:3, ship:7 - Cargo c = *storeA[0]; - Cargo* toAdd = &c; - //amount do kupienia == amount mamy w sklepie - //Cargo* toAdd = storeA[0]; - - toAdd->setAmount(7); - storeA[0]->reduceAmount(7); - shipA.push_back(toAdd); - - std::cout << "\n\nPO ZAKUPIE\n"; - std::cout << "SKLEP\n"; - for(auto a: storeA){ - std::cout << a->getName() << " " << a->getAmount() << " \n"; - } - std::cout << "STATEK\n"; - for(auto a: shipA){ - std::cout << a->getName() << " " << a->getAmount() << " \n"; - } - /* std::shared_ptr cargo = std::make_shared("Kiwi", 5, 5, time_ptr, 15, 0); + Cargo * cargo = new Fruit("Kiwi", 5, 5, time_ptr, 15, 0); Response response = store.buy(cargo, 5, captain); std::cout << std::to_string(response == Response::lack_of_cargo) << "\n"; //No available space @@ -95,9 +47,9 @@ int main() std::cout << "Store money: " << store.getMoney() << '\n'; std::cout << "Store size: " << store.storeCargo.size() << '\n'; - std::shared_ptr c1 = store.storeCargo.at(0); - std::shared_ptr c2 = store.storeCargo.at(2); - std::shared_ptr c3 = store.storeCargo.at(3); + Cargo * c1 = store.storeCargo.at(0); + Cargo * c2 = store.storeCargo.at(2); + Cargo * c3 = store.storeCargo.at(3); response = store.buy(c3, 1, captain); response = store.buy(c1, 1, captain); @@ -108,30 +60,30 @@ int main() std::cout << "Store money: " << store.getMoney() << '\n'; std::cout << "size:" <getShip()->shipCargo.size() << '\n'; //TO DO captain->getShip()->printShipCargo(); - std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; + std::cout << "-------------- ZAD 1 SELL -----------------------------------------------------------------\n"; // sell zad 1 Response response1 = store.sell(cargo, 2, captain); - std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n";*/ - // //No available space - // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); - // std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; - // //lack of cargo - // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); - // std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; - // //no money - // response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); - // std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; - // //correct buy - /* std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" <<"\n"; + //No available space + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human1); + std::cout << std::to_string(response1 == Response::lack_of_space) << "lack of space" << "\n"; + //lack of cargo + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1000, captain); + std::cout << std::to_string(response1 == Response::lack_of_cargo) << "lack of cargo" << "\n"; + //no money + response1 = store.sell(captain->getShip()->shipCargo.at(1), 1, human); + std::cout << std::to_string(response1 == Response::lack_of_money) << "lack of money" << "\n"; + //correct buy + std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; + std::cout << "pieniążki store przed: " << store.getMoney() << '\n'; std::cout << "store przed sprzedaży \n" << store; response1 = store.sell(captain->getShip()->shipCargo.at(0), 1, captain); - // response1 = store.sell(captain->getShip()->shipCargo.at(0), 2, captain); - // std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; + std::cout << std::to_string(response1 == Response::done) << "done?" <<"\n"; std::cout << "store po sprzedaży \n" << store; std::cout << "pieniążki store po: " << store.getMoney() << '\n'; - + std::cout << "pieniążki capitan: " << captain->getMoney() << '\n'; captain->getShip()->printShipCargo(); - std::cout << '\n';*/ + std::cout << '\n'; //zad 2 // std::cout << "-------------- ZAD 2 -----------------------------------------------------------------\n"; diff --git a/shm/player.cpp b/shm/player.cpp index e6dcc7c46..1ef1dc3ad 100644 --- a/shm/player.cpp +++ b/shm/player.cpp @@ -26,7 +26,7 @@ size_t Player::getSpeed() const return 0; } -std::shared_ptr Player::getCargo(size_t index) const +Cargo * Player::getCargo(size_t index) const { if (ship_->getCargo().at(index) > 0) { @@ -39,9 +39,9 @@ size_t Player::calculateAvailableSpace() { int cargoAmount = 0; int capacity = ship_->getCapacity(); - std::vector> shipCargo = ship_->getCargo(); + std::vector shipCargo = ship_->getCargo(); - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo * c) { return i += c->getAmount(); }); if (capacity - cargoAmount < 0) diff --git a/shm/player.hpp b/shm/player.hpp index 7055150f1..62f013a84 100644 --- a/shm/player.hpp +++ b/shm/player.hpp @@ -16,6 +16,6 @@ class Player : public Storable{ const std::unique_ptr& getShip(); size_t getSpeed() const; - std::shared_ptr getCargo(size_t index) const override; + Cargo * getCargo(size_t index) const override; void setCrew(size_t newCrewSize); }; diff --git a/shm/ship.cpp b/shm/ship.cpp index 93d0004f4..9bf17e4c0 100644 --- a/shm/ship.cpp +++ b/shm/ship.cpp @@ -50,7 +50,7 @@ Ship &Ship::operator+=(size_t num) return *this; } -void Ship::addCargo(std::shared_ptr item) +void Ship::addCargo(Cargo * item) { if(findMatchCargo(item) == item) { @@ -62,7 +62,7 @@ void Ship::addCargo(std::shared_ptr item) } } -void Ship::removeCargo(std::shared_ptr item, size_t amount) +void Ship::removeCargo(Cargo * item, size_t amount) { auto shipCargoAmount = findMatchCargo(item)->getAmount(); if(shipCargoAmount == amount) @@ -76,7 +76,7 @@ void Ship::removeCargo(std::shared_ptr item, size_t amount) } } -std::shared_ptr Ship::findMatchCargo(std::shared_ptr cargo) +Cargo * Ship::findMatchCargo(Cargo * cargo) { for (auto &el : shipCargo) { @@ -87,37 +87,31 @@ std::shared_ptr Ship::findMatchCargo(std::shared_ptr cargo) } return nullptr; } -void Ship::load(std::shared_ptr loadCargo, size_t amount) +void Ship::load(Cargo * loadCargo, size_t amount) { if (amount <= calculateAvailableSpace()) - { + { loadCargo->reduceAmount(amount); - std::cout << "Line 0 - Value of is :" << loadCargo.get()->getPrice() << " " << loadCargo.get()->getName() << std::endl ; - /* if(Fruit* f = dynamic_cast(loadCargo.get())){ - std::shared_ptr toAdd = std::shared_ptr(f); - std::cout << "Line 1 - Value of (Fruit)toAdd is :" << toAdd.get()->getPrice() << std::endl ; - toAdd->setAmount(amount); - addCargo(toAdd); + Cargo* toAdd; + //lol no + //dont look, bleh + //Something is not yes + if(Fruit* f = dynamic_cast(loadCargo)){ + toAdd = new Fruit(*f); } - if(Item* i = dynamic_cast(loadCargo.get())){ - std::shared_ptr toAdd = std::shared_ptr(i); - std::cout << "Line 1 - Value of (Item)toAdd is :" << toAdd.get()->getPrice() << std::endl ; - toAdd->setAmount(amount); - addCargo(toAdd); + if(Item* i = dynamic_cast(loadCargo)){ + toAdd = new Item(*i); } - if(Alcohol* a = dynamic_cast(loadCargo.get())){ - std::shared_ptr toAdd = std::shared_ptr(a); - std::cout << "Line 1 - Value of (Alcohol)toAdd is :" << toAdd.get()->getPrice() << std::endl ; - toAdd->setAmount(amount); - addCargo(toAdd); - }*/ - auto toAdd = loadCargo; - toAdd->setAmount(amount); - addCargo(toAdd); + if(Alcohol* a = dynamic_cast(loadCargo)){ + toAdd = new Alcohol(*a); + } + + toAdd->setAmount(amount); + addCargo(toAdd); } } -void Ship::unload(std::shared_ptr unloadCargo, size_t amount) +void Ship::unload(Cargo * unloadCargo, size_t amount) { if (calculateAvailableSpace() - amount >= 0) { @@ -159,7 +153,7 @@ void Ship::printShipCargo() size_t Ship::calculateAvailableSpace() { int cargoAmount = 0; - cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, std::shared_ptr c) { return i += c->getAmount(); }); + cargoAmount = std::accumulate(shipCargo.begin(), shipCargo.end(), 0, [](int i, Cargo * c) { return i += c->getAmount(); }); if (capacity_ - cargoAmount < 0) { diff --git a/shm/ship.hpp b/shm/ship.hpp index 2283da552..850d8b884 100644 --- a/shm/ship.hpp +++ b/shm/ship.hpp @@ -21,8 +21,8 @@ class Ship : public TimeEffectable { Ship& operator-=(size_t num); Ship& operator+=(size_t num); - void addCargo(std::shared_ptr item); - void removeCargo(std::shared_ptr, size_t); + void addCargo(Cargo * item); + void removeCargo(Cargo *, size_t); size_t getCapacity() const { return capacity_; } size_t getMaxCrew() const { return maxCrew_; } @@ -30,14 +30,14 @@ class Ship : public TimeEffectable { size_t getCrew() const { return crew_; } std::string getName() const { return name_; } size_t getId() const { return id_; } - std::vector> getCargo() { return shipCargo;} //instead of getcargo we use load atm. - std::vector> shipCargo; // TODO reserve vector + std::vector getCargo() { return shipCargo;} //instead of getcargo we use load atm. + std::vector shipCargo; // TODO reserve vector - // std::vector> CargoOnShip; + // std::vector CargoOnShip; - std::shared_ptr findMatchCargo(std::shared_ptr cargo); - void load(std::shared_ptrloadCargo, size_t amount); - void unload(std::shared_ptr unloadCargo, size_t amount); + Cargo * findMatchCargo(Cargo * cargo); + void load(Cargo *loadCargo, size_t amount); + void unload(Cargo * unloadCargo, size_t amount); void printShipCargo(); void nextDay() override; From f8975d37390bba3441bdf19dc60e1089c7d65dfd Mon Sep 17 00:00:00 2001 From: pwiatr3 Date: Wed, 28 Jul 2021 20:22:31 +0200 Subject: [PATCH 065/151] Everything on raw pointers --- shm/Map.cpp | 7 ++++--- shm/Map.hpp | 5 +++-- shm/Store | Bin 827568 -> 827568 bytes shm/cargo.cpp | 2 +- shm/coordinates.cpp | 3 +-- shm/coordinates.hpp | 3 +-- shm/island.hpp | 4 ++-- shm/main | Bin 164288 -> 827568 bytes shm/main.cpp | 5 ++++- shm/player.cpp | 2 +- shm/ship | Bin 0 -> 827568 bytes shm/ship.cpp | 2 +- 12 files changed, 18 insertions(+), 15 deletions(-) create mode 100755 shm/ship diff --git a/shm/Map.cpp b/shm/Map.cpp index 44c8cf0f7..501611b10 100644 --- a/shm/Map.cpp +++ b/shm/Map.cpp @@ -58,6 +58,7 @@ Island* Map::getIsland(const Coordinates& coordinate){ return nullptr; } -void Map::addIsland(Coordinates& coordinate){ - islands_.push_back(Island (coordinate)); -} \ No newline at end of file +void Map::addIsland(Coordinates &coordinate) +{ + islands_.push_back(Island(coordinate)); +} diff --git a/shm/Map.hpp b/shm/Map.hpp index a1686efaa..3847b41ee 100644 --- a/shm/Map.hpp +++ b/shm/Map.hpp @@ -9,8 +9,9 @@ class Map { public: Map(); void DebugPrintIsland(); - Island* getIsland(const Coordinates& coordinate); - void addIsland(Coordinates& coordinate); + Island *getIsland(const Coordinates &coordinate); + void addIsland(Coordinates &coordinate); + private: Island *current_pos_; std::vector islands_; diff --git a/shm/Store b/shm/Store index 100c3292c2dae8047e29d2ed3abe0332f04a5995..ad1222315bfbcd28565dbe029b654d360a77457e 100755 GIT binary patch delta 348 zcmV-i0i*t~!7{MHGO%a^6#Dg!yAv<8#5kUd4UQ4=8V1fRzk_@OhkOG8w|oNvlTI5D z4d$c(000YRTL1t_5gC{}000O$6Y&55NfMVTQUWId6Sq=Q0+9m{Kmpc?0007!Y!rZY z000L-xARp3LqP#{w>OspT~h(!x0UJwkNW}Gwn*vjyw|0qVCFwgr250fo1cE(TPw z0TH+7-v;7)0T+kLTL-twTL@W92XZF>00RJ=m$4cNCbv+i2+s%?2H6No1sCN77=i^C z2rdNy=rEdNJ delta 366 zcmWNEPbh<79Dv{7`+o1Ym+xa^OTO*GL5o5;V5B83BxS5He@^5ewKbY7$qrv~@GoA6 zWho90WYm5)<;aB;Nunqu5)KZgte&T*XaBfrKf?%fgkJt+{y@+CMPzLI$JLG9PtAKKgugiP^kxHAe_t8gaHg#!%M@@4=Znz%Wk(7Ca4zo;DG76T(QG z%gr<4kVTimzIHAO<*hR-AP09up4|Ho-O_p`{21F2af`ys)oWRt6b?9))k*PXY)ywn z5upmG!-~NTm1&ELg##PM#slH(g#xor&&rsMeY&=>Xr|*DrsH}Sg>2c8&}*Pv&Lwm& KY{-*@{`?QrGI_iJ diff --git a/shm/cargo.cpp b/shm/cargo.cpp index e25db6ccf..9a6f4198d 100644 --- a/shm/cargo.cpp +++ b/shm/cargo.cpp @@ -58,4 +58,4 @@ void Cargo::increaseAmount(size_t amount) void Cargo::setAmount(size_t amount) { amount_ = amount; -} \ No newline at end of file +} diff --git a/shm/coordinates.cpp b/shm/coordinates.cpp index 8613621ca..1ed63a90a 100644 --- a/shm/coordinates.cpp +++ b/shm/coordinates.cpp @@ -1,7 +1,6 @@ #include "coordinates.hpp" - bool Coordinates::operator==(const Coordinates &c) const { return positionX_ == c.positionX_ && positionY_ == c.positionY_; -} \ No newline at end of file +} diff --git a/shm/coordinates.hpp b/shm/coordinates.hpp index 1d1dbf433..823fa69f8 100644 --- a/shm/coordinates.hpp +++ b/shm/coordinates.hpp @@ -20,6 +20,5 @@ class Coordinates { void SetPositionX(const int& positionX) { positionX_ = positionX; } void SetPositionY(const int& positionY) { positionY_ = positionY; } - bool operator==(const Coordinates& c1) const; - + bool operator==(const Coordinates &c1) const; }; diff --git a/shm/island.hpp b/shm/island.hpp index c78098690..d73fa75a5 100644 --- a/shm/island.hpp +++ b/shm/island.hpp @@ -9,5 +9,5 @@ class Island { public: explicit Island(Coordinates position); Coordinates getPosition() { return position_; } - void SetPosition(const Coordinates& position) { position_ = position; } -}; \ No newline at end of file + void SetPosition(const Coordinates &position) { position_ = position; } +}; diff --git a/shm/main b/shm/main index 5a47389db13b4bd460dfe6851f67a9b74de0588f..fb6ff9f31c12dd75b54f393db87d1fd7bdcd8a47 100755 GIT binary patch literal 827568 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