From 47c0d2e9028ac4e751dde8d20e7bf94f3dc85d96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Trzci=C5=84ski?= Date: Mon, 20 Jun 2022 14:31:46 +0200 Subject: [PATCH] Upload project files --- Board.cpp | 94 ++++++++++++++++++ Button.cpp | 63 ++++++++++++ Field.cpp | 66 +++++++++++++ Game.cpp | 46 +++++++++ Game_AI.cpp | 110 +++++++++++++++++++++ Game_look_for_win.cpp | 206 +++++++++++++++++++++++++++++++++++++++ Player.cpp | 16 +++ Textarea.cpp | 43 +++++++++ classes/Board.h | 18 ++++ classes/Button.h | 22 +++++ classes/Field.h | 27 ++++++ classes/Game.h | 29 ++++++ classes/Menu.h | 220 ++++++++++++++++++++++++++++++++++++++++++ classes/Player.h | 11 +++ classes/Textarea.h | 17 ++++ fonts/comici.ttf | Bin 0 -> 221484 bytes images/minus.png | Bin 0 -> 1156 bytes images/o.png | Bin 0 -> 4503 bytes images/plus.png | Bin 0 -> 1437 bytes images/win_o.png | Bin 0 -> 7861 bytes images/win_x.png | Bin 0 -> 8311 bytes images/x.png | Bin 0 -> 4263 bytes main.cpp | 207 +++++++++++++++++++++++++++++++++++++++ 23 files changed, 1195 insertions(+) create mode 100644 Board.cpp create mode 100644 Button.cpp create mode 100644 Field.cpp create mode 100644 Game.cpp create mode 100644 Game_AI.cpp create mode 100644 Game_look_for_win.cpp create mode 100644 Player.cpp create mode 100644 Textarea.cpp create mode 100644 classes/Board.h create mode 100644 classes/Button.h create mode 100644 classes/Field.h create mode 100644 classes/Game.h create mode 100644 classes/Menu.h create mode 100644 classes/Player.h create mode 100644 classes/Textarea.h create mode 100644 fonts/comici.ttf create mode 100644 images/minus.png create mode 100644 images/o.png create mode 100644 images/plus.png create mode 100644 images/win_o.png create mode 100644 images/win_x.png create mode 100644 images/x.png create mode 100644 main.cpp diff --git a/Board.cpp b/Board.cpp new file mode 100644 index 0000000..6c6e277 --- /dev/null +++ b/Board.cpp @@ -0,0 +1,94 @@ +#include "classes/Board.h" +#include + +Board::Board(const int n) :size(n) { + field = new Field * [n]; + for (int i = 0; i < n; ++i) + field[i] = new Field[n]; + int x, y; + for (x = 0; x < n; x++) { + for (y = 0; y < n; y++) { + field[x][y].setpos(x, y); + } + } + sign_x.loadFromFile("images/x.png"); + sign_o.loadFromFile("images/o.png"); + win_x.loadFromFile("images/win_x.png"); + win_o.loadFromFile("images/win_o.png"); +} + +Board::~Board() { + delete[] field; +} + +Field* Board::get_field(const int x, const int y) { + return &(field[x][y]); +} + +void Board::unmark_all() { + int x, y; + for (x = 0; x < size; x++) { + for (y = 0; y < size; y++) { + field[x][y].unmark(); + } + } +} + +bool Board::is_full() { + int x, y; + for (x = 0; x < size; x++) { + for (y = 0; y < size; y++) { + if (field[x][y].get_owner() == nullptr) return false; + } + } + return true; +} + +void Board::draw_grid(sf::RenderWindow& window) { + int x, y; + float posX, posY; + + float lr_margin = 50; + + float btn_size = (float)((window.getSize().x - (2 * lr_margin)) / size) - 2 * 1; + + float top_margin = window.getSize().y - lr_margin - (btn_size + 2) * size; + + posX = lr_margin; + posY = top_margin; + + for (x = 0; x < size; x++) { + for (y = 0; y < size; y++) { + field[x][y].button.setSize({ btn_size, btn_size }); + field[x][y].button.setPosition(posX, posY); + + if (field[x][y].get_owner() != nullptr) { + if (field[x][y].get_owner()->get_symbol() == 'o') { + if (field[x][y].is_marked()) field[x][y].button.setTexture(&win_o); + else field[x][y].button.setTexture(&sign_o); + } + else { + if (field[x][y].is_marked()) field[x][y].button.setTexture(&win_x); + else field[x][y].button.setTexture(&sign_x); + } + } + + field[x][y].draw(window); + posY += btn_size + 2; + } + posX += btn_size + 2; + posY = top_margin; + } +} + +Field* Board::get_clicked_field(sf::RenderWindow& window) { + int x, y; + for (y = 0; y < size; y++) { + for (x = 0; x < size; x++) { + if (field[x][y].isMouseOver(window)) { + return &(field[x][y]); + } + } + } + return nullptr; +} \ No newline at end of file diff --git a/Button.cpp b/Button.cpp new file mode 100644 index 0000000..caee62d --- /dev/null +++ b/Button.cpp @@ -0,0 +1,63 @@ +#include "classes/Button.h" +#include + +Button::Button() { + button.setFillColor(sf::Color::White); +} + +Button::Button(sf::Vector2f pos, sf::Vector2f size) { + button.setPosition(pos.x, pos.y); + button.setSize({ size.x, size.y }); +} + +bool Button::isMouseOver(sf::RenderWindow& window) { + int mouseX = sf::Mouse::getPosition(window).x; + int mouseY = sf::Mouse::getPosition(window).y; + + float btnPosX = button.getPosition().x; + float btnPosY = button.getPosition().y; + + float btnWidth = btnPosX + button.getLocalBounds().width; + float btnHeight = btnPosY + button.getLocalBounds().height; + + return (mouseX > btnPosX && mouseX < btnWidth&& mouseY < btnHeight&& mouseY > btnPosY); +} + +void Button::draw_button(sf::RenderWindow& window) { + window.draw(button); + text.draw_text(window); +} + +void Button::set_position(sf::Vector2f pos) { + button.setPosition(pos.x, pos.y); +} + +void Button::set_size(sf::Vector2f btn_size) { + button.setSize({ btn_size.x, btn_size.y }); +} + +void Button::set_texture(const char* filename) { + texture.loadFromFile(filename); + button.setTexture(&texture); +} + +void Button::set_border(int width, sf::Color color) { + button.setOutlineThickness(width); + button.setOutlineColor(color); +} + +void Button::set_display_text(std::string new_text, int size) { + + text.set_display_text(new_text); + text.set_size(size); + + float posX = button.getPosition().x + ((button.getLocalBounds().width - 2 * button.getOutlineThickness()) - text.getLocalBounds().width) / 2; + float posY = -3 + button.getPosition().y + ((button.getLocalBounds().height - 2 * button.getOutlineThickness()) - text.getLocalBounds().height) / 2; + + text.set_position(posX, posY); + +} + +void Button::set_color(int r, int g, int b) { + button.setFillColor(sf::Color(r, g, b, 255)); +} \ No newline at end of file diff --git a/Field.cpp b/Field.cpp new file mode 100644 index 0000000..3cd502b --- /dev/null +++ b/Field.cpp @@ -0,0 +1,66 @@ +#include "classes/Field.h" +#include + +Field::Field() { + mark_as_winner = false; + x_pos = y_pos = -1; + owner = nullptr; + + button.setFillColor(sf::Color::White); + button.setOutlineThickness(1.f); + button.setOutlineColor(sf::Color::Black); +} + +Field::~Field() { + delete owner; +} + +int Field::get_x() const { + return x_pos; +} + +int Field::get_y() const { + return y_pos; +} + +Player* Field::get_owner() { + return owner; +} + +void Field::mark() { + mark_as_winner = true; +} + +void Field::unmark() { + mark_as_winner = false; +} + +bool Field::is_marked() { + return mark_as_winner; +} + +void Field::setpos(int x, int y) { + x_pos = x; + y_pos = y; +} + +void Field::set_owner(Player* new_owner) { + owner = new_owner; +} + +void Field::draw(sf::RenderWindow& window) { + window.draw(button); +} + +bool Field::isMouseOver(sf::RenderWindow& window) { + int mouseX = sf::Mouse::getPosition(window).x; + int mouseY = sf::Mouse::getPosition(window).y; + + float btnPosX = button.getPosition().x; + float btnPosY = button.getPosition().y; + + float btnWidth = btnPosX + button.getLocalBounds().width; + float btnHeight = btnPosY + button.getLocalBounds().height; + + return (mouseX > btnPosX && mouseX < btnWidth&& mouseY < btnHeight&& mouseY > btnPosY); +} \ No newline at end of file diff --git a/Game.cpp b/Game.cpp new file mode 100644 index 0000000..3da42db --- /dev/null +++ b/Game.cpp @@ -0,0 +1,46 @@ +#include "classes/Game.h" +#include + +Game::Game(const int field_size, const int req_length, bool is_ai) : size(field_size), length(req_length) { + finished = false; + board = new Board(field_size); + winner = nullptr; + players[0] = new Player('o', false); + players[1] = new Player('x', is_ai); +} + +Game::~Game() { + delete winner; + delete board; +} + +Board* Game::get_board() { + return board; +} + +Player* Game::get_winner() { + return winner; +} + +void Game::set_field_owner(int x, int y, char sign) { + Player* new_owner; + + if (players[0]->get_symbol() == sign) new_owner = players[0]; + else if (players[1]->get_symbol() == sign) new_owner = players[1]; + else return; + + board->get_field(x, y)->set_owner(new_owner); +} + +void Game::remove_field_owner(int x, int y) { + board->get_field(x, y)->set_owner(nullptr); +} + +Player* Game::get_player_by_sign(char sign) { + if (players[0]->get_symbol() == sign) return players[0]; + else if (players[1]->get_symbol() == sign) return players[1]; + else return nullptr; +} +bool Game::is_finished() { + return finished; +} \ No newline at end of file diff --git a/Game_AI.cpp b/Game_AI.cpp new file mode 100644 index 0000000..f32e402 --- /dev/null +++ b/Game_AI.cpp @@ -0,0 +1,110 @@ +#include "classes/Game.h" +#include +#include + +Field* Game::random_empty_field() { + if (finished) return nullptr; + int x, y; + Field* field; + srand(time(NULL)); + while (true) { + x = rand() % size; + y = rand() % size; + field = board->get_field(x, y); + if (field->get_owner() == nullptr) return field; + } +} + +Field* Game::get_ai_move(int difficulty) { + + int x, y, rate = 0, i, j, win, win_points, block_points, win_diff, block_diff; + int minimal = 100000; + + win = length; + + win_points = difficulty == 2 ? 0 : 1005; + win_diff = difficulty == 2 ? 0 : 15; + block_points = 1000; + block_diff = 5; + + + + //allocate rating table + int** rating = new int* [size]; + for (i = 0; i < size; ++i) { + rating[i] = new int[size]; + } + //fill array with zeros + for (i = 0; i < size; i++) { + for (j = 0; j < size; j++) { + rating[i][j] = 0; + } + } + + //give points value to the field + for (win = length; win > 1; win--) { + + for (i = 0; i < size; i++) { + for (j = 0; j < size; j++) { + + + if (board->get_field(i, j)->get_owner() == nullptr) { + + //Try to put AI's symbol + set_field_owner(i, j, 'x'); + if (look_for_win(win)) { + rating[i][j] += win_points; + } + finished = false; + board->unmark_all(); + remove_field_owner(i, j); + + //Try to put user's symbol + set_field_owner(i, j, 'o'); + if (look_for_win(win)) { + rating[i][j] += block_points; + } + finished = false; + board->unmark_all(); + remove_field_owner(i, j); + } + + } + } + + win_points -= win_diff; + block_points -= block_diff; + + } + + //Look for most profitable field + for (i = 0; i < size; i++) { + for (j = 0; j < size; j++) { + if (rating[i][j] > rate) { + rate = rating[i][j]; + x = i; + y = j; + } + } + } + + //Find lowest value + for (i = 0; i < size; i++) { + for (j = 0; j < size; j++) { + if (rating[i][j] < minimal && board->get_field(i, j)->get_owner() == nullptr) { + minimal = rating[i][j]; + } + } + } + + //cleanup + for (i = 0; i < size; ++i) { + delete[] rating[i]; + } + delete[] rating; + rating = NULL; + + //return result + if (rate == minimal) return random_empty_field(); + else return board->get_field(x, y); +} \ No newline at end of file diff --git a/Game_look_for_win.cpp b/Game_look_for_win.cpp new file mode 100644 index 0000000..c8746c6 --- /dev/null +++ b/Game_look_for_win.cpp @@ -0,0 +1,206 @@ +#include "classes/Game.h" +#include + +int Game::look_for_win(int need_to_win) { + if (need_to_win == 0) need_to_win = length; + int counter = 0; + Player* counted_player = nullptr; + //check by rows + for (int row = 0; row < size; row++) { + counter = 0; + board->unmark_all(); + for (int column = 0; column < size; column++) { + + //reset counter + if (board->get_field(row, column)->get_owner() == nullptr || board->get_field(row, column)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(row, column)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(row, column)->mark(); + } + if (board->get_field(row, column)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(row, column)->mark(); + } + + //check if counter get minimal value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + } + + //check by columns + for (int column = 0; column < size; column++) { + counter = 0; + board->unmark_all(); + for (int row = 0; row < size; row++) { + + //reset counter + if (board->get_field(row, column)->get_owner() == nullptr || board->get_field(row, column)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(row, column)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(row, column)->mark(); + } + if (board->get_field(row, column)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(row, column)->mark(); + } + + //check if counter get requested value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + } + + //check by diagonal ( \ ) + int x, y, i; + for (i = 0; i < size; i++) { + counter = 0; + board->unmark_all(); + for (x = 0, y = size - 1 - i; x <= i; x++, y++) { + //reset counter + if (board->get_field(x, y)->get_owner() == nullptr || board->get_field(x, y)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(x, y)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(x, y)->mark(); + } + if (board->get_field(x, y)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(x, y)->mark(); + } + + //check if counter get requested value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + + } + for (i = size - 1; i > 0; i--) { + counter = 0; + board->unmark_all(); + for (x = size - i, y = 0; y < i; x++, y++) { + //reset counter + if (board->get_field(x, y)->get_owner() == nullptr || board->get_field(x, y)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(x, y)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(x, y)->mark(); + } + if (board->get_field(x, y)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(x, y)->mark(); + } + + //check if counter get requested value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + + } + + //check by diagonal ( / ) + for (i = 0; i < size; i++) { + counter = 0; + board->unmark_all(); + for (x = i, y = 0; x >= 0; x--, y++) { + //reset counter + if (board->get_field(x, y)->get_owner() == nullptr || board->get_field(x, y)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(x, y)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(x, y)->mark(); + } + if (board->get_field(x, y)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(x, y)->mark(); + } + + //check if counter get requested value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + } + for (i = size - 1; i > 0; i--) { + counter = 0; + board->unmark_all(); + for (x = size - 1, y = size - i; y < size; x--, y++) { + //reset counter + if (board->get_field(x, y)->get_owner() == nullptr || board->get_field(x, y)->get_owner() != counted_player) { + counter = 0; + board->unmark_all(); + } + + //increase counter + if (board->get_field(x, y)->get_owner() == players[0]) { + counted_player = players[0]; + counter++; + board->get_field(x, y)->mark(); + } + if (board->get_field(x, y)->get_owner() == players[1]) { + counted_player = players[1]; + counter++; + board->get_field(x, y)->mark(); + } + + //check if counter get requested value + if (counter >= need_to_win) { + winner = counted_player; + finished = true; + return 1; + } + } + } + + + + //win not found + board->unmark_all(); + return 0; +} \ No newline at end of file diff --git a/Player.cpp b/Player.cpp new file mode 100644 index 0000000..1ea9150 --- /dev/null +++ b/Player.cpp @@ -0,0 +1,16 @@ +#include "classes/Player.h" + +Player::Player(char symbol, bool is_ai) { + this->symbol = symbol; + this->ai = is_ai; +} + +char Player::get_symbol() +{ + return symbol; +} + +bool Player::is_ai() +{ + return ai; +} diff --git a/Textarea.cpp b/Textarea.cpp new file mode 100644 index 0000000..d86aa97 --- /dev/null +++ b/Textarea.cpp @@ -0,0 +1,43 @@ +#include "classes/Textarea.h" +#include + +Textarea::Textarea() { + comici.loadFromFile("fonts/comici.ttf"); + text.setFont(comici); + text.setCharacterSize(12); + text.setFillColor(sf::Color::Black); +} + +Textarea::Textarea(sf::Vector2f pos, int size, std::string new_text) { + comici.loadFromFile("fonts/comici.ttf"); + text.setFont(comici); + text.setString(new_text); + text.setPosition(pos.x, pos.y); + text.setCharacterSize(size); + text.setFillColor(sf::Color::Black); +} + +void Textarea::set_position(float pos_x, float pos_y) { + text.setPosition({ pos_x, pos_y }); +} + +void Textarea::center() { + int width = text.getLocalBounds().width; + text.setPosition({ (float)((650 - width) / 2), text.getPosition().y }); +} + +void Textarea::set_display_text(std::string new_text) { + text.setString(new_text); +} + +void Textarea::draw_text(sf::RenderWindow& window) { + window.draw(text); +} + +void Textarea::set_size(int size) { + text.setCharacterSize(size); +} + +sf::FloatRect Textarea::getLocalBounds() { + return text.getLocalBounds(); +} \ No newline at end of file diff --git a/classes/Board.h b/classes/Board.h new file mode 100644 index 0000000..b145874 --- /dev/null +++ b/classes/Board.h @@ -0,0 +1,18 @@ +#pragma once +#include "Field.h" + +class Board{ +private: + Field** field; + const int size; + sf::Texture sign_x, sign_o, win_x, win_o; +public: + + Board(const int n); + ~Board(); + Field* get_field(const int x, const int y); + void unmark_all(); + bool is_full(); + void draw_grid(sf::RenderWindow& window); + Field* get_clicked_field(sf::RenderWindow& window); +}; diff --git a/classes/Button.h b/classes/Button.h new file mode 100644 index 0000000..2e60601 --- /dev/null +++ b/classes/Button.h @@ -0,0 +1,22 @@ +#pragma once +#include +#include "Textarea.h" + +class Button { +private: + sf::RectangleShape button; + sf::Texture texture; + Textarea text; + +public: + Button(); + Button(sf::Vector2f pos, sf::Vector2f size); + bool isMouseOver(sf::RenderWindow& window); + void draw_button(sf::RenderWindow& window); + void set_position(sf::Vector2f pos); + void set_size(sf::Vector2f btn_size); + void set_texture(const char* filename); + void set_border(int width, sf::Color color); + void set_display_text(std::string new_text, int size); + void set_color(int r, int g, int b); +}; \ No newline at end of file diff --git a/classes/Field.h b/classes/Field.h new file mode 100644 index 0000000..a02be4b --- /dev/null +++ b/classes/Field.h @@ -0,0 +1,27 @@ +#pragma once +#include "Player.h" +#include + +class Field{ +private: + int x_pos; + int y_pos; + char sign='\0'; + bool mark_as_winner; + Player* owner; +public: + sf::RectangleShape button; + + Field(); + ~Field(); + int get_x() const; + int get_y() const; + Player* get_owner(); + void mark(); + void unmark(); + bool is_marked(); + void setpos(int x, int y); + void set_owner(Player* new_owner); + void draw(sf::RenderWindow& window); + bool isMouseOver(sf::RenderWindow& window); +}; diff --git a/classes/Game.h b/classes/Game.h new file mode 100644 index 0000000..1a01c94 --- /dev/null +++ b/classes/Game.h @@ -0,0 +1,29 @@ +#pragma once +#include +#include "Player.h" +#include "Board.h" + +class Game{ +private: + bool finished; + const int size; + const int length; + Player* winner; + Player* players[2]; + Board *board; +public: + Game(const int field_size, const int req_length, bool is_ai); + ~Game(); + Board* get_board(); + Player* get_winner(); + void set_field_owner(int x, int y, char sign); + void remove_field_owner(int x, int y); + Player* get_player_by_sign(char sign); + bool is_finished(); + + int look_for_win(int need_to_win = 0); + + Field* random_empty_field(); + + Field* get_ai_move(int difficulty); +}; diff --git a/classes/Menu.h b/classes/Menu.h new file mode 100644 index 0000000..faecd38 --- /dev/null +++ b/classes/Menu.h @@ -0,0 +1,220 @@ +#pragma once +#include "Button.h" + + +class Menu { +private: + //Elementy okna + Textarea* title; + Textarea* choose_mode; + Button* one_player; + Button* two_players; + Textarea* choose_difficulty; + Button* easy; + Button* normal; + Button* hard; + Textarea* choose_size; + Button* size_m; + Button* size_i; + Button* size_p; + Textarea* choose_win; + Button* win_m; + Button* win_i; + Button* win_p; + Button* start; + + //Ustawienia + int players_count = 1; + int difficulty = 1; + int size = 3; + int win = 3; + + bool start_pressed = false; + +public: + Menu() { + //Elementy okna + title = new Textarea({ 0,50 }, 50, "Gra w kolko i krzyzyk"); + title->center(); + + choose_mode = new Textarea({ 0,140 }, 30, "Wybierz tryb:"); + choose_mode->center(); + one_player = new Button({ 164, 195 }, { 150, 50 }); + one_player->set_border(3, sf::Color::Black); + one_player->set_display_text("1 Gracz", 25); + two_players = new Button({ 324, 195 }, { 150, 50 }); + two_players->set_border(3, sf::Color::Black); + two_players->set_display_text("2 Graczy", 25); + + choose_difficulty = new Textarea({ 0, 260 }, 30, "Wybierz poziom trudnosci:"); + choose_difficulty->center(); + easy = new Button({ 100, 310 }, { 150, 50 }); + easy->set_border(3, sf::Color::Black); + easy->set_display_text("Latwy", 25); + normal = new Button({ 260, 310 }, { 150, 50 }); + normal->set_border(3, sf::Color::Black); + normal->set_display_text("Normalny", 25); + normal->set_color(176, 176, 176); + hard = new Button({ 420, 310 }, { 150, 50 }); + hard->set_border(3, sf::Color::Black); + hard->set_display_text("Trudny", 25); + hard->set_color(176, 176, 176); + + choose_size = new Textarea({ 50, 390 }, 30, "Wybierz rozmiar planszy:"); + size_m = new Button({ 430, 385 }, { 50, 50 }); + size_m->set_border(3, sf::Color::Black); + size_m->set_texture("images/minus.png"); + size_i = new Button({ 480, 385 }, { 80, 50 }); + size_i->set_border(3, sf::Color::Black); + size_i->set_display_text(std::to_string(size), 30); + size_p = new Button({ 560, 385 }, { 50, 50 }); + size_p->set_border(3, sf::Color::Black); + size_p->set_texture("images/plus.png"); + + + choose_win = new Textarea({ 50, 460 }, 30, "Ile symboli zeby wygrac:"); + win_m = new Button({ 430, 455 }, { 50, 50 }); + win_m->set_border(3, sf::Color::Black); + win_m->set_texture("images/minus.png"); + win_i = new Button({ 480, 455 }, { 80, 50 }); + win_i->set_border(3, sf::Color::Black); + win_i->set_display_text(std::to_string(win), 30); + win_p = new Button({ 560, 455 }, { 50, 50 }); + win_p->set_border(3, sf::Color::Black); + win_p->set_texture("images/plus.png"); + + start = new Button({ 120, 650 }, { 400, 100 }); + start->set_border(5, sf::Color(3, 163, 22)); + start->set_color(59, 255, 82); + start->set_display_text("Rozpocznij gre", 50); + } + + ~Menu() { + delete title; + delete choose_mode; + delete one_player; + delete two_players; + delete choose_difficulty; + delete easy; + delete normal; + delete hard; + delete choose_size; + delete size_m; + delete size_i; + delete size_p; + delete choose_win; + delete win_m; + delete win_i; + delete win_p; + delete start; + } + + void draw(sf::RenderWindow& menu) { + + one_player->set_color(255, 255, 255); + two_players->set_color(255, 255, 255); + if (players_count == 1) + one_player->set_color(91, 240, 109); + else if (players_count == 2) + two_players->set_color(91, 240, 109); + + easy->set_color(255, 255, 255); + normal->set_color(255, 255, 255); + hard->set_color(255, 255, 255); + if (difficulty == 1) + easy->set_color(91, 240, 109); + if (difficulty == 2) + normal->set_color(91, 240, 109); + if (difficulty == 3) + hard->set_color(91, 240, 109); + + size_i->set_display_text(std::to_string(size), 30); + win_i->set_display_text(std::to_string(win), 30); + + + title->draw_text(menu); + + choose_mode->draw_text(menu); + one_player->draw_button(menu); + two_players->draw_button(menu); + + if (players_count == 1) { + choose_difficulty->draw_text(menu); + easy->draw_button(menu); + normal->draw_button(menu); + hard->draw_button(menu); + } + + choose_size->draw_text(menu); + size_m->draw_button(menu); + size_i->draw_button(menu); + size_p->draw_button(menu); + + choose_win->draw_text(menu); + win_m->draw_button(menu); + win_i->draw_button(menu); + win_p->draw_button(menu); + start->draw_button(menu); + } + + void action(sf::RenderWindow &window) { + //Wybór graczy + if (one_player->isMouseOver(window)) { + players_count = 1; + } + if (two_players->isMouseOver(window)) { + players_count = 2; + } + + //Wybór poziomu trudności + if (easy->isMouseOver(window)) { + difficulty = 1; + } + if (normal->isMouseOver(window)) { + difficulty = 2; + } + if (hard->isMouseOver(window)) { + difficulty = 3; + } + + //Wybór rozmiaru planszy + if (size_m->isMouseOver(window)) { + if (size > 3) size--; + if (win > size) win = size; + } + if (size_p->isMouseOver(window)) { + if (size < 10) size++; + } + + //Wybór wygranej + if (win_m->isMouseOver(window)) { + if (win > 3) win--; + } + if (win_p->isMouseOver(window)) { + if (win < size) win++; + } + + //start gry + if (start->isMouseOver(window)) { + start_pressed = true; + } + + + } + int get_players_count() { + return players_count; + } + int get_difficulty() { + return difficulty; + } + int get_size() { + return size; + } + int get_win() { + return win; + } + + bool is_start_pressed() { + return start_pressed; + } +}; \ No newline at end of file diff --git a/classes/Player.h b/classes/Player.h new file mode 100644 index 0000000..a38a967 --- /dev/null +++ b/classes/Player.h @@ -0,0 +1,11 @@ +#pragma once + +class Player{ +private: + char symbol; + bool ai; +public: + Player(char symbol, bool is_ai = false); + char get_symbol(); + bool is_ai(); +}; \ No newline at end of file diff --git a/classes/Textarea.h b/classes/Textarea.h new file mode 100644 index 0000000..60e08e3 --- /dev/null +++ b/classes/Textarea.h @@ -0,0 +1,17 @@ +#pragma once +#include + +class Textarea { +private: + sf::Text text; + sf::Font comici; +public: + Textarea(); + Textarea(sf::Vector2f pos, int size, std::string new_text); + void set_position(float pos_x, float pos_y); + void center(); + void set_display_text(std::string new_text); + void draw_text(sf::RenderWindow& window); + void set_size(int size); + sf::FloatRect getLocalBounds(); +}; \ No newline at end of file diff --git a/fonts/comici.ttf b/fonts/comici.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f1e7b0a8de084f29f76ca590d25f242574e9b7d1 GIT binary patch literal 221484 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�r?7c8IAU7<#Qn3&xmik(`)tOsG_6No1Z-UoPfxOaoqr;SWA2H$1#K*k`m zlj=YnjcxlvjuLCqIGGK4X_0&`W+KoZ7A+2Yn5Z%HoxA#UYIxmfKB7PkuUquy-xw;a z3zM>0({X#*tc7t;i1rEdfIk%iekfGsK5gWe_y$%>#KfVN2=(VBMPy2Q$kUh>DIJ5o zV-XcLGNqJ@PK<0^Lm-vgr#L%H3Q{F|5k`82t)l!`La0Urx3?fm-V2Hp)k!zD^ zL@I$$eWoawD1^eMx}!D~1N=Y@r$QPs+Z-+yDr65wv%+-$16HauIo93T>vvmPvf^^v zvjCY=#iBa^ms;d3m_U&4Q@!Sjo;oL>Q&Qa~ci&vIv!QSWVw@B@_0Xl#4p)VU#qsTdMfIxi|Q7geC33)`$HRb&Q^?@k$2V-8Bd@wKBXx9DC>q6(= z!eo*#{)eJHm<{t%xal{Zb5#ER8+;x`j79&(anxaaKl~oO9kQFk6QW!xpsARqghKvQ zQzA>lYo-2LZ(WDlHtuc+9w2J>2p*HeQSFCXYYl~!V;&&vI*aAAn@5WU(M;uU!(&qo z{!MpfvQW5Au+m<0YwtzZ_HU~7L$SiATR%n$z8DLAwJoHNwcA2&V=k$F5B{p$ifd79CS z;nqfF&Du~=Mbh$R5hJR z%{+s`*xSf@P>*@#y&Y8o{qH=3bT$HC)FZOQWGri_2v~Cur8^KuDW| zt#xqfRO(J92(7a4Ya&O3ka7)R!t66dA-W|C2{6?D78EeSdP4mnBOY+7qmiTQjy%w8 zZ0k#uHI&r8@KziEzum)A_~-fetN4WaVT1Fm`ia>NXD~TMUEI*vuOhdQGKHqQ#-iua zUm&R;Ufs5o|BOFUsPdN=jJ(S4j!|?~4v<^84Qq!kvX!rDHyZtQZ7CU?tkmJD6AyH~ za9`@;L621=9<{=IqL3MY<)pQdoBTGBd)Q5a?m;)_Hm0Rz8;#Ozl>tq>gN8u^XF%?W zcgV{HP~<|2zVy`G#D9e>;jrB) zpI4sGAj#rif8*2mTx*@orP!760RJ_YNLtILaW3-N^CV`~$f?}UYunyicITRfF+HAY zOCC9k6z*BdJ-=+%PX5(SJ27~~6194jX{B2sPtGo^z4&#K^!4rM@S~i455GEo`XgPF zF8l3!iSnbj5+5(fpM#3#BJ;@Kq?b#7gijjzhMAeV;W!eE8;nB}C$2!;mok*X1yV?g zE+!J2#)`34dhB@Z1h_j;ED{k-J;VdZSOIJR?=@`%4qUn99|l)fVtjIKp2eK4Dd%70 zH*F8Txo*kp!`2d$n_v9nPy8NYCnKbwNxCP{wqmZwWgA3qBYuEia&qr2R}HK$cAJ;; z-;sPWi!^id$-N?u*N@&ReO|U57#wtE^E>A&Nwac5$t^IFX5#=1ssyDtE+r)^TKh+@ zjjk(88a+BJB%JgCAUw07fOkbfHUVQT=#o%0^F4WVEjUsH8qq4qlgEzEM0CmmxY=wu z+P@xHvQww4bymzHg%6V+$pXHM?{0ma#5A`9c2sk$;y+%lIUI)wgk#`%hi8?&!4;d;EN?^EO!kaSQZnR~kg6 z;%cstD@==)0j7dv-T1=9l?I2;oKyIW2sUimvX7p=^=cQ>GH5DmZ+-{ z?jSAp%TyQq-sj6_KqQ|oPtazt9b8>MIq;Nc(m5mL4Ww}CMI@~>d&*s~h`ztSSDII! z`s{6~`FC2h0bBLd#t;#c{Om4$@*a{*_6D4B+Pkm6TUs`QztE=XT@>f%|Gd1SL?iB; z&XBV=}JoIQ^?_h!{8RsLF?FFmcI?z*0;wd*GbyR^Qo)^-`~sW~bgy-s?S%qXe` z#@T?LjzQI+ic^WRM2;ef$0Wv2(r^_CRt;8hRUSzaEmh7Kl|o=}#MC8(?VzcUQKt=1 z6k--$!5u{zWLn-OvI*#o7TyEUk8MIv;LkIskOcT=n)-U0TK=(2(SWp1>q=ML&HSe^ zd95|BGBS-!MrALjF7=yTmlIcmD>-rLTbD|U_%4seljUnxD9T2<9A!oM>0fgXleqaA zn_Tg+&P-dwB7e(mPnvTyww`KJo5F!Li|R%WN*6;qp-QUX71clUluG@iqTwPgSVW4V zbxV-?U)onXRLTX=aW`F$_0v2LAv;gFvEgh`NjS`hgh?u_ISQ8%jvlv|N-G0vEi`V~ z>}JD&lGO7j-^)lgImr8Dp2c1EK<_|aeMyPVQ5yToF@8EXndlZ1ZId(Acw58G9mOhR5^D}N; zI*p+1f@t~3W3tE59m6Z~`g0fLl1VfNo#cu{ld^}ixgZ)xa-7~NNzrTN5}fqw)a!>; z!YvFG1Qkt2P1wJSf?JSFk#jY1V0#(tQT819fNs}N!;x-;jG$gb^(=Kvi(zo6wP4!h zwe^KLRflJL_KiH{xM@aL%2Y>5tVdU!Yc5K1aYw4Al8YXkUVr|2l#u_J|Ma>ae&}3W zWUX`llcXJalc=3D_%HZpyR7*a5iyr=9+})`^_Wxpfz}@_;GdS9k{*J-ZTF|;SPX{P zjOf`~#3|@3NF=eS=^Z{iYGklSg@eb(=%dUijrb#(Lqmf-fa$@w6qgt0DxsAFWz-C* zyR=@TB~=sZ-25Kb7d@uF!YeEL%*nYouHz5BB*|*3T6iUyMD}hb{Uy0=j~*!tGL`+Nt{8FLw)aRA_pC%|vE-R7jhh$T-eOXj^yPKvm?6p>`2`dD5>nXe zPmhh2rA60b75Ax!)LcMK)H1pp_Eyr>(0j-+?+Ttg`i2PJSX%NDb2gh~EF|RyE-#`* zAk$Lvr}IiTEZ)804*tzGebQHE1ZJN*Z5AgzC)?DRZFXetF#1a;Z(CROUbAy;QMxn} z$(ApSytA+W&4-?zSasI&Zc@eRxCt2r2w8C&YvxJ`CytF7aW+0PLVZQO>RR#?=%<0 zG$Q@OV>Tzsh?VqibCn19Z%vxDn|CI0yXW&oZQtxN7&`hEJxvl{BOhxxoYt&+skCb?VjL#{*+OB+44p4;KhZ!PJ*_jsIiLE%aKjOFa#^O4YI?h2|Lnor|6ZUKKCEG>u%k- z=;};O5C7YxFFq1<&0dh4H>o)E>ojd*qivl^F3IY-Z$rUZP4T_cmdvr(V>%iQYd8;g zU}i8UJ>OdYUEjh|>o@!+embUd&dAe>$E7@KebxJ&dfKFd+2q49Bp5Ro!}VnkWpe>Y zhZvDqk|s{j(zLfZ4za^6fx3o+8=vC|He|Iq%>Yi4Fj_T}#XxC#r-tPXp&%=(g0G=% z2(U&GCq2k73{I}-(I`Dq{)i{fV$1H|xNBMYlD2?OuE@XchvN2gOADn*F`V>nk}}v> zdy;?NFY)|#_YDhoFXrmL84=w&vpK8pY!X0Avx*(hUCVFdtG_22uI-w`TW{kJeRX{1 zz}NiLte9q$*lyyi;7|U}(S5RKWF4Y9;J{KX+P;{f7%mWlyvky6a<-rqQU7rKNHWFu zz5T$6EefPft9)tl#5IeGr_N)|_7_QXlr3423}|%Td_$f@4mRzYzPG%EC}F?e%ngrx#$N%vBa%?BEU9we_vI5L zhFrs++{LdMd2xEOTPhAs-L|}QJxTn4PvtKhDJGT^|K!rE8>$@q-aB@@$Q2Xkt1EWT zN-oSt_5t5F`nlvzyx}HDNSi-ZHD+Jr8f|I#k>(%|n+72SuSD$R(AGJ=1uk zHB`tm(2mwX(@F(Hf~-w!lU16nR=F#qT-=+*Klz(pH=(Z7|4;HBdG%Qm!!P7d<^(0W z35#mJzwPE5xPeOEZY?RX662k}#F1Ci1(6L@8f^rcZv-M`Ni>y zwwIPny#n^+{*mVuvmozv$Tsu)Eozb8A+g!C(X!`!BuFP za>|;;xCOn8<(?WLf55_ip~7XHPyo zqs+Ycwx#W@6NVl+07z5{Q81Z!`BPG%qXQq()}<4La?GZsDLcOqSoKX^DGM47=z6;t;A1dhBk-hA`b|j4zK{jVn?(XW<^Rf)M4Qb)@5M7M(|@8N$u!v8x?B2Lai{jz+b z`}rpF+Z_JGf6Xo}ZJcsT&wWokKpIqhgQeQ7AN_bf$-V2krOIvf@|c=5Q+cO<3#r#C zul>g*5B^dkwykW+J9pl}CnhcbkiD#lyhQq_^f6f1uq~DPq+vM;$_J4jAhwJ9a))xc z0JOS{Bx+k?FCx(|>s(Neq9=eXs5{_)Q3 z4?g!Azl{HtZ|`!t((*~elUM)n_^LY(t|c!K%{Ny{elDsiEqd{ingwOd_>cIz zU)@sGRX=C$o3CGbFyFZ#H049mz8G)ghS5{9cIn@MzR2~fb-I}3$ZI2Vh-2uD#f-!1 z4DKp@?C89fEz&u~gE)PDNDQ8vm$CZ&d^=nC3Do<*jSA}Rc;vwx^;aT|l73rHN1rO&@+-(79` zZlnGDP1m>oxdO*plPf;N9jvzW&pK!1JN||d9}-s2CLIs7c}>30`S1BRckoxYX3jc+ zS!R#ks<=h2Lq~2O1k{Q*%8B&VF*p*{|h~b@Jb(#CePDR`nvOg}-Y>d$ujvrxed4_Yk)_ zxzG}5+|BRjFXS)%bS_!{1Ihkm_!Itheh2?6dH7c{XRz6nJ@W0nBe#`hW!4Nd&ER_f zvGKPXF3qr!w05d(H;x>ayQJSE%OBddOPo7Sh}!LG7V((2OuCD%TZ-v^@deO+k zI(U&9%4Y8|E7vEsygJD0KkWiM8OGmHSaWXmk;Oh5TK4G3>lNzdCZ_8j-Td zmYb@?;j)fbv?>SI1c7g+Ru2x3K8aW&@rfdNvrNO5fkUCN;gJLtl`z~5SLI}N`g&R& z-qh;3eywIAY0M^hM1Mtfu&JOvS)!c&_wV;jyW{Vh_>*t;8>?@;YcV1H|ZnUVdqzg`= zgpe#S!O4VGo9CRjvCA`m{WP1=$Pea`5;&E!%twcBk=);G$v?qRlNV; zq8Hnr-I4RJE3Vzmzr0>j-7~$;RO2knpZVZB{sKw0wP!xJnIu1!B+kh#_WP{;kI2PJ zMSsh{l==KUH2;YC#uY%$!;M6vG4)&zVR0(1Lu%sgYiu>Ajf?aM)QHA}skcI1e3Hg5 zxhOg}8@tb>mLG~zzfX3N7wG78D*K5fH0cj!BR5Cs zw;^Eq0*y$BxlSo=#0TAeVf<)Bg3VukZ}b}S> zvVKJHyF@en711t%mGSKF2rcUxO_T1RrS98I?a`hGp9w`-+|!-*uAIGD&K zq7|c<`e!_NQ}DLXWE18)E@KSCBy%FY-?#uiS~>!5R>5xpZb1RpG1n!O09uHx#7F-% zm1NY5gA9~tSsuzo(33JoWLh zMT?1>Y}q<1MM5qwnRYqlx9j<-($&%*(X+|~enb5FFX`bJq&Q@))Jqt%(HNxQ^;JBE zv&s`VlT>hJ;09FQqLJ~{p^gb2{}^wE>0gM_ZzYGhI!ZrC>ACr#VDBH$zZ0cDENbIQ zD19p%e?h2Y(wX$~o1^sGM7u$s{uoEvz@C`V6QM~#;TsWt6Z~9?#rO^kA$q$+caR@h zJP!O%-Y=^$I>%NJrtXhYZ$;&cLv%(BY)1Eoyw!g|zb;CDSR^B#Q+gkxPY;zfo=Gn+ zi_#Q>`!RX^+58)=zkvn3bN+*=b z@xh2$Gd5KFFQ4!q!x1f0zh92d zbK&{CPd1a6C_f4F$qY69!F(vLJWRih+)IuzeySAs>DN%TL--3(e)?eaZh1Xgy;dWd zLt~9KMFp^(O)`9UcAh}2$)OtMe>*6Ner^AGS>URo$t z<`u&wA}-_{q+_Qn^A?rC`B&j>AR;c-~LZ7qp_mK#Xq>S z$%E{X5pt^apwnkUC-NqhxWI8pqEaY_1!l#?Ec#@0E^7 zUx9U7Df0QV3)~lpbQ(=XMTv}Sj1`dOg-9aM2a)z`V%Bwp!YKR8$#u-@$^E}p3x(ghkJ2Cw2skpkmAsCKM&QHrVDAgZ2plbKiU)q zC`w7tbL8FldxBncM065;lCho%^zU)n(8R7Y^p>X;^zI7uM@2`VgMc1dHR!WK-K}TP z-zG;_(J=inbh$i5>4R)NSBKhqPN(O)XmmbGf1DJF6oO7i?4gO>Vd8N*9o0aDxtsv9 z>^L2}m(9f%8tfQ9HjDm#!Ol+4_UbUP346<4JhCk0Z_6L|LNfZ#<@DwV^hYCS?Pqge z5~{B{gMKkPYk~e4ny)b4U@sn77piXf9sL0sjgE{D)X`W@fG5;c7ba%NP8Ppqb2kWc z7oEb`6pK}Y$!sVO?n?#6l_>I1*DoILWq9kY?w9dDRtt~ADd9ex2 z1#J@iIBF$2hc+e>^<`dE8#N_pP7wVsL?eojP#0WS6bcDGa>IWM1Z&`84O`aHhm%SL zpRq*BRb+Cj+q$$e8X1m7y}k{tp{8N`nE~Psv=fP)GRbbeFhSd8M3`8qOI9JKT>RT7 z(xf=a#43b~oelcLg!=Vjem#Hx`u`L&o$yf&Pd{DbUw2`hrkh#UE(Ol#c}Zqml82 z_pvZk=^IZknuA;*#Is@5*m2g#1u7DSt(tYAnzCd8EJ?XS(D50^2_qj99S~+BNDFJI zq-tzr@Wq_bjWIhAYj7bWpxf^)>=^DK!H&TWuA^Vv0w5L%c>B>QwOWJlR7%u4YZQ;w z_Z7kp5l=1s-*NSd5eR}T7h=%xYeK?nz&11lZTO=IH2Ruxa$^`^4rfJJp#qn|+w0Rx zsegm=Tr~QwC|2dX{QR#AwI+ME5$7ZZ#n zYEo@-)VY02&f0nIx`5f$RM@^H*Oa`7|0TcBclIyg7=2(snz>@+x8tMVT_5U8OzOW? z{OTSW))u>SRtZ6EXKO+>e+~SQ3-l6~!PSP}CTLL(t1W3JnffAmRY9D_;<`8*!mp@J zpsxyz;pem4Y79%7*}}OLGY**-Ds6~i9b&>chYyb&pz(5W2(@D={_qA-_{{mcLal+U zICi<&nX?Epd$G)H?5(f@nUtw!W6umZOH-8*S%A6B01h%JlYyHk?1zpGdm_wF&xLHJ zcv*OCL}TdKyIAzvkH~1Uv($svNiifL0ZBiqVIzhuqOt2p=5A=1RC)FteO1QP*!blCRd`z(W3MmkUwkhARk6*SouJAHudsowu#BzH z>s9}^6$)|)tK#8+@%KvIr++dZxtiRe;GJxY8{a|#Lqz@L5 z9cZ>ps{yS#waLkunR261H6$hhale?$6^m8$+QRY8>>L*|L0BP22zD`YH7PWW&XsvW z5f=+vHG&IV9*<{oeR{S(qQE#@pvEM;*!Z#zkEzyN<)^v_vv3(F3l{Fyh;GE* zZ}L{CzWp={_s)?6G-{7q!sx-tUxJfqpIdWhOPCV4=Gz@IRCv#@bnj()fh0mKhmxZ_#4G#(| zfj9tu$39T>af&!vl4h*?1#=Yw{M|rmcg8KXr~UfGHE(t_IaCRE-F%O8ATW0$^VnsKKuulSzTXU#)od)`2rdEGFDZTmk^iUT=~Mv z2^+Si&e*)Xb0bN7f78o3wU#2guUY28OUvTa3aZCaAR)CsElls_CNn)-8EWk-99PwG zR0du}TsuM!Uez$EOLL8yLlb+##7v?KV^e+=#y$aiSg_~%F!;NZyT*?!Vi90=Yn3YLZJGczaPX_4m==1KHu{#OBLWv={ziH${VJxWc&_&{`Q?8_78 zy_6O6KSZO;`CAk{_GZQNQ^tp+tF|R}m$#8wj{g*whSXzT8>YnyUX}Mnn}pL4ygWCD zy8pn-!=#)*e?+uVpci&|MX0g*54<*1ixudPislLQaL<8{mOwQE*`{3qVuOxQ5gS2=`sSGLYdL8(*Mjdb>b>j9iHEsWnG8^WmDtGpT7N zkyxNUA^M&(Qacy!GK?+_wbh$_Dp zPqq$zvI4}eFn7|(S0fjVzN&yDWe8q1nr-wFY|6(erPx4lZKIUxhfuxZw|7D%)nOAf zJnk{sIySDIZ2CR*h%4kNA7{s47B9$N1vM~T&ErRgv>e$Mik9OQM&_@GnT05@S?oph zZ#*@fM`_4c6+RkDJ^J(La`_+|`L>sTM>}!=rFeZ~nsp?z2fh*P8@?OPWx?lc`kBZ^ zPf1rvzl5FugA6+|FuGsnm#xKT3DXBVQ98|cFrYm3s{BHS+$jh)%bdW`&k?4l9Ng%sFo69za!KMr) zOr>?$w+MxUT8h+-hyXu+G-Eghw9XZYWn%KP`>%cZMyLAxN%PLxd%fM<)2dV?D5bI) zp+8-0Y-rH;@P`lcU-Cbuoqr{Hej0z9$C{g`e{1t&CrIWG*9}}SyUtlOf8^tl<98=% zyYD(F-a*cNk^h3uKa8Bk{0rFWhcTu246PG2Mh8ZZ1IPW5C`n`$)roX|&2SnCrVXZX zX+~pQl}kh7s4h0HvnQ)>D*zTy-&SyxilHjeeiDL3frV1bNro!7Ooxj8KA%;Il}Vo8 zJaXs~ygnJ_MVytKZ+6wY+aC#7%J`+{&&7wLnXi7>{z7lPzwz>o4d71;`(TFOycD<*5Jq@blgicQbb|AvP zSTXci?8tMY$7EHoVrAqJwj*JrCjLFmrX!+DkP-P6a4J63>Pkc@S-U3Mvr0<$f-0m8 zm@gESl>(I(t|^-*M;U3HFGEWq7|k**ur0=X><@!MfC3wk6beBF`5rHdxjoal14oM&^>&S#2(v8}15@pPpn)pEohS=C+0TZhckz zfIc@9w=dFJW`Rg?4xf*cPfFMh*yW9HzyI;b zkEHLi250BwxlQIP3#!-N>$qjs<}F|HU5}~T6iFJZpC6cHwmXN1$;^t?pORvde&4f4 zN3P?=rV>vRTJ7}P>(|}w06_54x$742Xnb^Zu$O;LXECOmTQjQ)4aS;GdfrTmofh?O zJ3Z>%`Maq1I39__uKvde5A(|J8jlVjsi&a>IMeUY0oeV2@h4>u!naq0?zFkX)g)Lw zSj|;Cq%K#c)TSO*lc0J~&8aiREYlKQtH<&z*-6ksrSQq%IH**GT-A;>tp0uTRrqm% zOH4#YA|uxnC!#Iwh3YhA;(C)eAz3boOVt>j;9n28ZHuS-+lk&0TCvDj*z7F%VEPTo zs@*%uA%5xmxz0^jzQw;ci97Yr&BOfhB7Ksr_JXGFjU<+AU*-y`RkFBPv~>umWVc*j zh1|tYM{X;~YVtRb8}B2k$a_pJA^ILOtt%YaA~bmOvem29M|3Xi&-J69OV=VR(@Xa! zh7%==lCz_!sg8pDF(+qs1i2YDiP1NYI>F((rU79Y(r?4Psp-Rm-_W|;9OYu*QSlqW zj4)BAC4ae(xK&o~B_k(MQc|++>>Ix8%`p{OKmPi>Cq8|RJVR2aSJ+D0y%TDZwPm&U z^S6nOsUA+|DQK*1NKJEPXU^MsYl+WbD7&ebkUjU2U&)Oc&m}YVw6rGhuR*$m(ZG-{ zu)reR3D0r(js5@O)=2&l#(?hQkVX6Z9Kd`y)zgqP7caugG-h|6=1nnMZUn z^O+Rr`x@C7$>}nVz*tF+jk0s-Cx(FmnYz*E`1=3B!CfcsH-JRi4!Th$`VyDpyJ5@{ zXirCCYxB?zRzH&pemm}nlAGF^+M7x(PerL?svU)e;-*k3%}5jD)q>S0SXT)DFjxUz z!xE$w8&X=aH8~tc18jugKTwDRS|^p=xG08L;h3D0S1}_ai~sp>ZCGFUc5M0wHXj1Vmy!uhBhsCv`rU~N7n97wXj^WM8z<22{4)_KN4ZIy8 zMd`FHq)v|6#yHZ25$^L7cT%hSg0)lTb7AASr%+J!Bn^ zL*EbNeEbit^FL*Z|GzvLw4d-*hZPU|*#I#KT?&+ezkwN@F!UkoZIHG+*xvwbZM$!0 zKC_8?b*Nl7LPyo5$>P?x*svIuKWGyHTf&;Q;!PjCX2}ID2MrjBE=j-u~fQw>yL;2!LUHwb|(6RERP0ku${bq zD_$mytQ}-|kSr5`eSTql5A_MMymRO@^DMcRhZ5zV=npZzf(Rinwa{PR&@YT)#^0a} z0yUJIhF;>7;r6Id0m}NJzcHG~GL0-_{%R}4BVkhZk>$Ak?D@Ey4-)*xXf5R+rh~LH zY7G1jxpW$}v*bt#_#d7^KSYvR#(?Bcqh7vanMwu}2?VfoA0B#?vk_}BD4XI~n@+^_ zn_%wzg|Dl12YizJxM!f!dnmk^gv@<|&oyafy@A{XtX%zsf)Uc z(f--L{~#`-mMcg{d;zfiAc(0h`ZkbHjgdctImnZf0w#;g zX4XCMk16*r@RbGnjQN`A!NOg4`A(b++z;cQM9iZvqwl3amduEjB9mF1Je7)ZC)o%* zg%Fhpo4~f4q5A7nWP@4NoyaG6vMq5$nsC&@lMh&vjK)Sj44g=KH?U~k?+}MSJNF(c zb=zd-z~ggYd3@WLalaS#ESgmu8%R$wxlyd)mA}ncir%mN^mF2=Q(dm8xp?e@Yvyba z@bWA4xxy*Ks+#o0a<8#@%L7~IzUPHC8YY_P$LOmeV+usujwDY2CMboi(Li?cMzF&J z*R44BgDua=sSQcUTpJ{!dQdA;sf+VI~80Md=1b*R#jVTotX0Y^$qmjhvl}ttk zX$QOE+jASbRV;M- z4KBel7H5W_7R^2=vRXt&KQUyI$So4uu{rNf{`eFSs>rEQdy%6!j0&#ZNRQ0Ta2o~L zREkY%bFfPpEbyoG>K9;=K!sdjr|4&yDUg}ei0Luq&#W~N$5hDbPD3SWO^`C4t&Be_ zekqtBW9cRFj96^D4IuDz*dYzfGy;CTfk_peYI^N`;$iUloQP78q_4tm@Xi0G^-2Br z$IlaAJ7>~*YtB3Yb`S#~xj=x}k2<5726xZPRm8;E(*dza?t4dt-_75N4n{Y9DMe4= zpHQk0s}Tl+gA1Dzey3m}8^;=0zX6JbLlg!jq%x&#bBVRoYeE z<}-OmqtJtYqn+TgXl3pgn;GynoZEL7G0kvp=M0}A{eEy)vb+O2xBG@J(a$p=s~klK zJK_*~j{BD>lF1m|HdJD3vQce9<(=f|4Cen>7YY6a8})+k9q@nfs^e=zY)*h2wkJ=H z?~MWsqSsfV(BIIcs-wMAiD!vlFMhoSJ+^&IQ{T3GPCPk1v~$|IU9{x3?JuGLae2}^ z4LO_ohltM}-L)8HK4YD|vbpA|?z#W0n|N22MhbW|fPv4KJ0qLbpz2kvr zFt8;8^_`)!Z&QW8yyy6Af+#A6QG#}o-_*8 z)@48O37yFgI~nv}(jc$tuJWSE71?4b1d|TK+ClW;5sxapUsAs1%0Z*>;Y_1BI@#|Z z0hFZN({%Mpx5GEg6@{@Ts0fS|s4$chSQ*N3t~!C;pnQY8p1>|p{*f#v;10?^k>$h+ zhw{&4IkE1b{0mu5yg?}ci!3h#3NK=cfpe3Pa|Mz#eHl{@lvf$y@fFF*3YO`wQzeE} zdVkVe97>0Tk^h(|u${Ucz6ABug^#?=WpJA!;&)soPg(VekNPJnJGk)*@gQ>Dhf-JFM*vh^rCDjGnfC%_uu~vo zFq1;z8)O3g6#YUy4V;l>T8^F!8sG+eiM5k}utGs;ip7X|g;0pWj4Q@SJc^xm;g1GB zQzZ4E>2o?K707v`EBH#{bWzUpn<^ujY8&JtXVcLYhpT-=s@~_Iucgv*idhG%s_tV` z!x7KJ$47cBDt4MsY!LCm+=1un8m)k>B#>fYte2SEU>^=(NvKu=Ny|*vfcYai4H(+9 zVTIhLTzK31HsvDu1FRp2BUJ!l`m1;HLh#*Cr9pjFi+=9FKMY6(>J2h zS)g?W#dNC1Jm%W+!oEX{o9!+3@#FV@6b8luzJwzf^HXB1kdb*}pYan>WloRHR`(QA8%n|!`9Ep^N6 z#vYijakOkYjkz4wSMrlmJ&nS~>xHB_28eV6bAyG@IEIO9)B(BE*s@E$dRJp))tskd zt}l*-Gd1c=aqhzZCS0z5CeOlDvVX5B80G;sIWnBUWHgW^bz+-!eQ@1+(vg*?))mFg&vz z_7a5r@99&*&&-BIbA6>R%?PrhEVB4Otu6^{Bv9t!aMP;?9=J@zL>+CTbKE7wpT;hl4 z(aV7Jd1fnrpONNfpEHu~+ zpeGIW-C74{E)AWhO`wV3O!81Sd8TLRNt&0I3TFgEvu~|}Iu8yVqG5j=7F~$Xz#CpQ zbT6xk$%c5NYKXLq_b?LKp5=^17N59RfXW3UATS)cafjs%aCabmE$L(^I}j}>py7}M zN`Qz**uQ}y5?U>I%QYA>2XU|hIp!s>UJxJ@sxcX-(JsPG%=wX60nYhYb9FjWY7fAC^bTEOO6j*?#ak#5az3=EMBAjLYLgbZaw>b}s9ZimPL)&2 zK~ntdd?YwzjHf|F#q)yqFs;duVI5`#M;(D_!I~kA4S*ZGtul|}Eqb1pooe6}o@#%H zc;Kls#5r&rdseFPx#n!ymG$(>(Z39AO8VpZSboz>FO6Mx`SSegh=0M0XZt6;^wOj@ z`tNi)z4>tCLgL|P&)jn!z5Z5m8ry&01GehPeTdSyK#XoBJM%aksjSpiE|YS&K#zvL z9K1~LfpCjVN(Im#CgKk{M2*bTlnD?8_Z;PI%D+H8GbIvuO`H1GTk7!yM&T#zUKA1eej3TA>Orz zPZ1d0k>>RPp>b+M{(zJ44c8#vIw*L_jbAI+Ibc;}>jDE$6X=}ya&dN)c*0Zu z=?a596>?%%b*ht+v}NQz-z3u^BJD(xCwLUE{Zr@_-rPuZ#>!}eXMBlaw zj4cARM^KIp%1TG(o4N$6BovKwT)bKI4+9ZzMMxfzB6 zYqhm#%Qmp3t6EU<$mCzMeHJcnV&{o^3zH_at~;<;O=B@sT?2^ql9J8iF?_b13AU1@ z#A)KicLR3!i-t{1MjDUn(6&BdF+ZTWp24=GHD9-nOg~Ir6=|wHJE0+#Q9S=t&&mOm zzX=^DtW@@>SmnVb)#q;waFPNXdN?1c>QwpFC;AXI>JsrJ&Ni8}v4MDZ-F@L4J?$A| zad~Awm^ZS}Y~qHXip>Sy(gs-eCS?#XpNw)QVwB13_S&L%UVZ#Y`s+uYfBwjdXeF(v zY4PMab6UH47I!V~>hF0Pu@O6x-qFM3_1t^?`p&OcuL|G#8jkPR?ccxd`=TQ~>(=!g zDf*uAdjE$XzJB4t>!-np48rBXjw0`=nKS#1Mn6QO!=MOzdicOV2)^`WL`%qrgChu$ z0E&O${EhI3&j3G&!IlJGuLxUD;{cfCUHF>M4J7}z&3D{31ruAqa~Sz!>Y9*zF_cK| zoPxEEPatmylMS3;9z%1SKmdh^(~wY54$u^5{jV@b~{L10NYR!IbeWz*SHc?g+CYo zfNz3{BU@&fSs|?S!F}N?EE?uD;#HW*Qv$YZ?bAhe6&T@8Egz&sxm<-RWXg)g-iyg2 zEKVrXmp1(-0U0N!6z3!nE+4=}L+joTb}WPuXfnWfA}A$xTnQ%eV>}jl)1a^S*J(k}C>rHWrSKxZmhe z*GSmj%3cvI&)LCG~I(3p)o8T*r)n)qs|Oq|rxoctYRiH=%Lz8LF4p(;Fa-E|_P+N4o4nO`F2 z!V$!ks6r~$8!a}aE$fj$@kHXoBCVnZ6bcHaT)w*?3n%2%SRTx5;|37)9_qk z;WfS7E~7CN8Ap1-Dg5}h0)Z@=)pOA= zP`;^VF>&<)wCX@bU04>4C39tAL;9$U{*2VtjgK2s)tb~;xTS4U6ToOcS$U?=GePH((5q^2=*46Je zZ8DucegDq0v^|%iJkTr!P!@#-2GnxcKE;ah&}>ect2hEqAmRxB!f8bwefB7gMJ z;d}PH*S5H?tFMdO7Rff#R23C%;#0_eoU2lCF&qmoW5SA|kp$0dvP?p@>NS#>!sR%e z;!1D<03UllVCfE0mO#!blImd!gtM%YD?1)50E81WR$5{Jfva$k8~sKZta(`MW(+xS zV5(}x8@O;JPLMwnMqA+2iZ7DX8%JJ?>lbmKh-8JJ!vyn<8)H(N{C>%f;{^$+IvNg7KFhGZZX z%9-HX2T$jd;f^t;it`#6Tj16cSP1BL5R|$2%72TWV>La=JM0kDrERo5Ef7=HZYbhM}CC8&mNENo)y&tCJy*zB(qE{dA2inGUI* z=*Dt$IV;dQVU)*WF63&(_G%^T-|xw-Y*hDJd)B(1Xr)XsiKcO8`o5LO>{|c)X#%E{ zUsINyk7fx{#G*<))gR4>@n|eISIpvM*~`Zgt39SF%lp!DRa!RlnnDt7Xe}J6qhH%S zE7j<*rU`qSQ~1HPtHS$aPQ9^ob&F1$hoOk5isjeh0g5N3Z=Q0o~o?F0|%p} zxn+u&@z!~7G^=#-vAZ{P%`C1mctvj$uhMIYlfHo`8x|BupQ()oOM zb5c^nJmOOgWKI4#H%F4G&mvxGSF_pL;U7Z;8ST_*F^4S0>v4OVn|FrSIP=Ob4PJ?w zytSwJ%5-ZTF~IE0X& zy(vGdeeA+zQ2|N?-vvFO3nvmFAIgP;MHxaS%Da?zktAZfv1z;-t1QFZNjp?&bfBwesODA7q?GexvnlheF z$1Br7oYOt5mrh<9{>JC0XHUN|1UO58Cs`#?Pk8Rn!z(<8_4fd^fQ3SdZ-8Prp{0`0ERRDpiHn$bJ`?B( z5DCc-Ane89V_=;Yun2GwHwQ=!-(dYyVFc|03W027@s{sY!LkEx3F8H@4Z9um8e`1_ zb3$S)j2EF6nLi$1h=(Eub^r>n#{yaqvNrA)L_>^ftkyV(B$u(Ub{+RZld;ao;|$ciCu zo>pi6L%_W->Y(|#hloESZczbZ(An(AX`I@SQl(OvI5ea(R#*z7XE-6A^kSDI>=vh0 zj7ZlW>$8g#)vjRI$5V6q(^N|J>`2MNwP8cqrh%fi99OPTl$~Caq7Qy75sVz`48dJG z>%shhlt!aZ*mGf;$2nozw1O61nxm~nuAi;a&YDqGkh?y&i1|W=&Gon5&NS_|M=j|G z?5SE5Va6sva)YKZAGD9|Xt0@LY?0TR6%4W%Zevl8b;;Pe$~GJOk2e?^GmA|ZgiIke zT^6Z#)NyWrtuED+F0`puNsuh1e%Mx>a@Lg3OKkI~{IURwSqtZjbLO7xDL%h<78(^n9jXHOnHg;0d|$e6a@zSFnm{nByiX~aOx z2CwM;m*F;ZG=I>D%mDjO~qLffXTS_Hw1zbG#Bp?YsWy#0Am7y0-lLv zHK1MiOAN|trCD(oa#o1#m+_O?>puK|I%;xkcD^F5xM)&SGE0)4(Rpd&qS&aqk;N@5 zEIG?x-cYD2EDSDi?@nfW*B5fZT+ks7uGgc-VpiqLlf!%)zsTTYDC#mCrXqo3wq;YU zHu&4c?PbxhHQQ;Q|DxYzNk8SdKn&ZX-IAutt;~Sa&5leTG6JPjp5YfGw8 zA{u2yAH8{S(kSF_8b9C7=6cg#VG@6zRx-9eU` zik5*_I%e?WAoM5X2+y4ZxWVKT?*M2Z+!v^(LU9^IrR#MROs+_N78W~JJONEgEM?GF zC1hA~6BXw-#LO|alJ;Rn8XzG-JuyUq^{?0zZvvEII$)YXO-7PR>=6sU;)(zaBOypA zpo^!#z!gk-13j4vm>^oCH)PZgob2C%vfmr2Gkc8wtApPVzYy1mo$Pm#RxAj&zyHc? zz55wr>Hc^77D;7w*1#`sIJD}a!524%{o@|r(bANk+?YJVN8R|UN0gkC?o{iifa&AR z>qzo+FdCfbxbZMjqdEWX@MYExBVPTsnf9sQGJ2cK=k;%bfX#X|2VJ&jx|vdZkzfl%QS!Z^d%Du>(?#rm>R2}OKbx(vqQ%18*8dZEU5~F7QgXC+kr)LRVQ&% zXM1kzcf>fiG7uiU@V>@%9wTwTHqSVVn09E=T!*tF#c0f&BhJ}*Vl@gP=ef*))~etR zvWcOOpCk?jO@Zb&I<`F#ZT#cWOuMS&QeH4n@c2{Ty&YXrAoA`%6zF=Qb=6N4Hu4M} zlYhyE2uTzTO?jUO&~?6K?5KMmGU^CO(S2j}kG`QsaF zK0SpRkDYk(SdKln6_|hg)#pDH0gHGy>V^L+A#+q3nu?}^ zWl9q21^$ra4nfm&XLg zMy!D2<60=ds0{KaiTtfl1J+y|v**+B?K&*jCS*o(O~TrRHA&H1$pF#vI3~s#V?&&_ zKu^$k2*gPp?Y8$-9F>#$CcKi#BtHpe6K{mDFjvXK0wly30OO>1mw@R*5V#pIePRF- z0D;7{I2pJtB_~QIcn}lL7z*71C_#((z~g~VfS$@5>U@kINtlzB^cuJ>N5G6}2p-*4%M=BOix$yA&Xf&~%`26%PV%El!uXXI7JLX`i zUm5UUTQmPim{UwV374DGkMt~WfL>q!z&9XO`MS3 z@G@~_5&B^0QlC9v!i?Wpb#1cn5GB%j-xh4t{iK;wD7jH?Dug z^!{;^H`n>P_c)k~UHN%w3K~5vZ}ZHu4pgh<(9yRM?>OdMky2$;%Jmk_yqRMcjeBN& z#GSqC_+8eux9k$}Dqqp0ypB1wwWCgE%?i|vGif@!9B$UV(>4&s`h}gP1O48-yj;sY z!!KW|DX5!sBGZ?2eQ2d&yVg{q_m}^FdElCc<+Wcsl`aJG+D={tsDIO!aHZ)=#XeM0!Mqt(|yCc z?%V7%dr|!_|M=2uX~^!Xs0f-$qW+Sx!-uc&v<2%n4}bj@z5b)RiATFPY%cVB_Rm;0 za^Z=>g{^L7y0*FXo40D-5m{UzT5E7$*Jg*$H;JS*MWRy>4WlXVf1rIF)E!P}>Lb zF(?%TMf4179AyRN809J8W&Z$~nGX?}wP+-o0-nb!&=w>-x^L2Hw24v(Xw!wdk2gg| zkA5D_rMyLX8HC=2aI86gIwyQL;LmnspzJ`)P&Fz-Ge8W7^hn3vdF91ZNcYsxN6$TX z>yy9z`x#L3l>=J+_S(Oqe3TDZT8WgDLr4RHvj9;k*Flc&i*O$~{)p8mrYvk9{{nQ| z4TyXh(9VCu4VtH(dSvy&g{vQV>IJwdAI|CE+FYo!>8bJU$=u3QO054o_b1W6ja314 zV&n-_-|IaGqBHs1>xC1EEAR`7A|HIhRs2O>JqNa~!gH5#HK+jC_J61cNwJv3Vi=#W znDXFloOYWlPUr_oghHwZF`go&@&83X7{3N6?0?q~0tS=QSwWIXClQ(tHsAm;0XAbX zflCJ-1_Wd)=FWXytmMOPbRh{InHehid~voW1mB5YAzTl5YoA;Ow;GN31LNmEf5h*D zTa1Y8mZ=+QRf}a=@ z)-m8)C0I)t$GJf(M(uGb#`w!=1~Bt+Wn+a~3(7{5K^M9*f5H4(BJPi>=ACW|a98h^RDdPKNJJLVsMbOnG) zw$)aRA3t}~D6DQwj#^5C5|vWbKNnf=V>+A+;h0rpD;bXFv~-pGeKFJOVu@EQf=JrD zF%nMZl)RFbB?Wo(0I zdXI%Bt+ClAEIqMw?DF~HB(6>1^~>#Jf(BE=&X~)7bH_oiuTyKvN9HssN2}W~EL_zd z4OjJ6BAYAbu&6UwZkNFvc4&%&YfiT;Jb(0@VkJ|ht90)0bC0zndXZZ zFQT=zwH3tWDYBXxw0KTa(e%nlG-%Wivw~a4Pu)X&v2W2+0jrsrn!K!g>BmzW@78d< z?t(&HwNb2)n|72q3ejfb*SgA$2FR=Penu)!s2lvuRX8)^&Y$X6=ec$H+NX6n0gFCA zheD?`06skr_;d+mSN;*AY25>9Q~@XMq+9|eB(Lz>Cr4W-dfI^Cu~Ue1{M)8)N1sBH z6XEO+)~z~)lAn6%x1ECa?#Q>#A_-^}j-uoU|ED*%{6NiDc^#8`K-NK_=NvHT&7`arb-TODvUp|ZfJCyq1lJqWZKaU_DZ28jnGw^)EJ25t~ztWYR` zdCS`kkPprnHga*E)?VdIAeF2iig)zaA;~zilFiW@8qA$k#l`LCGK}0K{=4xe#=_?s zjiUr~YDa7)@wd>ufLC-%cV_{)i@_Jm5_qMl2ICcf4pHzrxr@==Gk3#ij8@pba7oB6 zU3+sW^;fg0Cet-8YsWO?Jlq62oq-8!9oo^pLhx#US;iOb;inTTS zSb3@kw%rVsCi{R}Ph|{G^Q6{yW++lQmL#4Wg2q6MBtd#Gm@d65=jNggl(nG1RR|um zTn;PKSQ?`};OD7JtT8r~%@!LtErFPn%VcCe)Z?woj$?pjc`Gb_d+?;guMp$Si8*x= zw&p-@?_ry{v|Kip+?^;+r+u=tH@E0f(447?avMn`@Q>6xNMQPchn#Zt-veeND*G!6 zSiC=4k_X!prdz}AnoXs0xRYI_N3@0R(u#5RE?3KeH#bt#?5cDLi@}X$W(MX39w%skvF%a&5YA*SSF8fdbQnyv$@#h9g+q`+82s`WAg}v(-YOFenR& z{Yk&Fn!t{+1~d*AD8EsC02&~D3@GzR)mmI% z9>N+90A{AqihUbMjs&2Cr1xZ*Wwj)zHOc1S%3ywTyIt}QEM4LQs4=iFR`NFn_Yi5z zfUR($0;JqaC`s^dxeQmvfQYSv@NcM%858JJPPPuP$QbHJ!l~jpk9bR+x6o%OIroW_ zd#&K5^vk z?dzwHtFLi8mGx1j0)e6=T;0}S87$(PxEvbRtCo8|f1*M2gVt93c8$xZ(;38W&{@_u zJuuT6nK{O(57Va0rOvvj#gpdEV9*zuLn@n4m>a84uJMicmjgftbIdt*W|AY&CpHz^ zymX16v?JZc5o-VFF81p4xQtYGG^{J4nYNj=Da~eskLi}goR!Z`pd*Op$ZAsaA zkc;i#3n5w0L7RE^ig(6#tA#8zvZBW?fI?v+8oA*oYgQW3L*x>Ni36X==&4C5qI65h z6V1yD7hK-j(=`SaplqSwkA~LBWyBj+%jffwZQ(%JSHypp-5n@qvDg=l%!W=SmBwae zT9k-qOK+K3k)?^0eCu|-mOCTpO;NNAlUb*Zc(Q%+=<sKUUH|!8ba`R@$dhZExOI?skn_h8SJOyyz=cg;GyLNCVEI z;Gr^jQ=G+q5PX}?P{u?&Wt7Y!i_@7|W3i;p)az5XN|T-t>{G7a2ZwZ*;1O0HR@bcvYk5*9N-6@UW7!2qvhARVBe03~=r)qv%Bd7Mtl?@&U#qGgzB_(S9h z1_+^p{t#<9;_Rth77z7q0j&g!gcHp2#wi?Gju$cP(%`buz!;lP%|eG@^Kn9POVO%R zsy8nEhJGT(5>qF=urGL=kiAOmD605o*0<4V#G}WE?}^PQ^OFvgapT%@ML?SM(LucB@h;dv6eVE`EYmrzF|ct+1yJLN=4Z;6Ug-I-N?D+GiByzt=_&WP})K`wt7ihzFy|Z6bqSJV#jkY6Ca@LXLV&JzRLQN5Uks=EiskGV1Vj~sWg{+OYR!B zUoIA!^Q&_gKYZfBf}lFRN-?PdeT4WsuCJ?a@6yPX5aKb~I3txI52PgheEjSe#A0HM z-U_Smt3g8a5xau26=^8#rw|*I(Y#$7PNAfTz(?3=@{j5_$m{Fn8))HENEwmvE>5`8 z!JE+0F@Z-bIWq9ik{j4Y6CZI7E3p(w1Wwv{0Yb-X5u0S%xxR$s933LLB$!x)0S}|tDt;f3n*ud6a0Tu(_2WS}n;`5Qmkho~yq9@seCJxN?0c}qqZ|Ch%>#zcQR|;t0*23A zRQ%-i=H{lRx^4Fi?-)R$Z`SSsn@H->nWM^)HKVsJwQ83|t@*jq>n-vKlT>=D8cize zBEI^j$f>4wuF20`of+zWVWEboy#A%WK6q}UQcHZXX>*g?5!9$es@A=G0{|zx`f=WSzCFEuZ&!%Q)Te~&zeBnR&E)`J zSEhN&c;eGt4xeAE%ATCgrdOs_zPs1mu=jOoL9JXDYP3aiC+qX4DJ@}&N zF7`Z1gfakm7{ta(_3+5V%Hb0y4zHvo_4~#ok)ZcizymOoYp7c4Z3VQ|MYG~HikBpY z8*n2rQNf@b_8LuQxeRtdb)e9t)5T%{8M+?q5Ooxw5n@2quqfdm78Y zvWZUycYJ!3SbVQmM5iiJ43M`_sF?ij*?@Z3hJ%4hM{6!MW8#V57eEp(ME{^i$cFut z!oef5*V&gS*TG5tee@+nA5cTo%mOt0=#EoSDK(X{3<3+JqmPjhg&|1CLCQKRiz))9 zSqOT%h15(m02X{>(6-~fO{vOg8r4Z*Qp0E$+Kxs*2A5v=eSn%vVNe z_VNd10SZ!6pox5NT>l0Acx)4W8IF|r;+K?LZ-LVAWpoXlKrewqJ{5flG~+Y$8RZr9 z*747N`|bVbLH9U@l0(&^0cg&0V!^T(DQ|&h@*33q7`;V#9})q)1;4&T*G{}ed2!i- zXcBa}1P#C-a$v006cObVq`_E+YEkX6TI2L*A-D;c2~$qNdc??{+=}@xi5pamaq0kd z{<1>@1^IvM-9QolVLc+2$+2b;ev?)_u+W5B2;anc0l^cXUrB8Cktj>DQysP;%E1eAm!&;tM{ge>v6YFHLd zzy-7kH;^zAhYlHBBiSO%=36apDkdKwoxq?$wgqkow?q;#lHreUMZv~V973`Azg$Mc zln~!dQkh@~TPTtvgOscBA(4+~w927RXqXh%6IRGH08fh*b6(`7+YQ5`Vb~@2VxTo9 zp19ip4x^XihA|T-A;*V79rOy=Dj^h%13MTDK|MM?56=SgK$35ZRZ6seV+M`l6+$*E_!Ur2tT`l;c}<3Kr)TPNzXSz3 zW5qgK(MaAnggUp?og?yUs42-AgVh4vI+s|}ljF^&~>?=C%%3$tWF?M%DEAiBp z;Jm47Cx^+}*t_QBU0KzR#;VHs_f+=nanEY$ebsZ!J?nw-Bc0x=i^Ojxts$IkOAm+B zV$R%o*)JT^_M6P`hEzz~ z6XSWB9UTQD&W>Ayc;#GSldg8cq?D>RD0$o0i|R_mwVo#q@AqAUI{&p=6P^+EN~yH9vobe(N~* zz8UHu z)2ZulBcDmHm{zdwGv-`6!7P8?N9s=650;?M(A?iUOT#BY{f9PV@9^Q zEfS0S7?Yx<0i2~^0O8M;<ct2a zE1Dp77f>#Y*)bZA3s?9XP(KhXc_^p{&o-GHpOWiIVFs`(Xab;tgm()xWF?y;o5aW& z#C9tv)&MOh%z4D1K_+`P!c8=)Cpx% z{KXglqXvzvmr%n0rA<(ykPX3O;#=Uk;MsALSXw3L2I~*;m3T#{LCz1plw|Imv61*Z zYs0e2Ljz(1gy`Kv%(#E-iK^OKwy>g-VU+ECW%S9hV-dF|r$edUJoopV1*>E9lETrT*_mVuUdbkLVxpj z#mj3dtMkW*#LH$jz0^^2ILgiHmx8^9Wkz$uhf`wZL6``>AYjs&*-T~L=+%84Q}mfC zbq`{ne0U32FuRb$lS$^~>eAEAK4+^$4C-l_-lJAp^>wud2EWKXz937*;L8n*#yXR- z1z;s85oDI%-PFXc*iq{6Dk^FV3yY%tb(#W0AzeAI_xJmf`Jns{o|@B2{C;aYw>A(R zdA)=_FC&W~=`U~gD6?rZsyjOG>i@l!Q&1T!Ys;Q0S|my9iqh@Ak|JJGnp&AMcdu5= zc4nKhD%a`1xxnF>=DWtC3wg6O0tGi&>!hlz?Zw_ry0&2AU?5E>GYJ%8kJz|ob;|24~K;Uu4Mcy z#5giZpQdH6LkuD3n*~=-BXf0iO-*$(71Hf8yDrbY$fwhjqXmJSid}tMp=L{AZF%pg zK4M&`YGUEOiq7=14c6YJ)3dL3TJ85fMEv;VPDCFJYBr52DxWhqjc(vF#Nj{_JIC%g zT#>9dE99xE8oMbqt+QjNM$Xhbtf9Wl@IA)Yg#y1t>q_#5(+fO0f!wM$`b~w7=w0dR zJT3c=tip`^=0?3N5VA?L(u7h&R-;uXm9mAZ5|_GeN~)~LVP2y)EOO{P&5c(iLbutd zmZ{aHm5TH%7LTL%mXBw!tm4$-?0N~Cr2p(h#L4R9Hsi(A4Hc+0XoCk}KQ4x=k zQl@$CjaIp@Y{IswZhlV9?p-gvvTI}S$OBJq9J%DNl~2x}|K!TYmWTV8eBK=2-XPC#zT&WzR-r6Oh-f*+GEJpJ zDk%*c?U{mxa=Cd&vAMw7=yTJM*l)~jT}_-V9X*R9om?%ni6sqgJ0na)UY+sQs?$jJ zawvK}TK5=}Dy%YF$HcO-T`O-gc|4)ls5VasS(AdAa=%mPA3rBxC^R|KU;WqeeW#8W} zq&4IOHhp&213A@(oKRKj33TSh+0$sGJ4^l@@c}_6&Z983F}FmvnYakSkjHM!57@_` zx9Ov@or6CNE?h#qTq>%5b>{)}>@7qyIA#+&E(|Uw_Ja9iEzM6XczG~J{C<`CByrtU zV(>2&2twK%RBPL|E?{=+U!`Weyrz6aIDJXy#mDM0?pkAwI(7EUZ;9)Q5}VN+&MIO$ zH97lEqc)K{7a^!p7>2P0^}Z#S{*z9y~0%&iaZn zjIx+=FRb9#DBpt5eg-%h9(Wqm!nR|o-+u)biVHjIE5W=o6ZFqPN-d=sNh86m3tu0+ zeEEmBzuWWb{tE-`Kfdc^u$v-&t^LBQ-~C{J zLGUa@99BU?!K3A>|GD)4G(?I6!JnUTrbY-hMqtYi>`Ve0V1b1sK1qIKr5}FE5K5^RGuOilMGRuk%MRAAiQ#1yWTY112UILRe9Uy#g>Gi6zi4 z3<;h}D35asG_Tx>8)QMSa1s`&ed430gfcQasz zj3vyl^+Y+s97bhUc6OG6&(mpHSq5-#SL*!URM#;18J)6>&&W}$?N#~73U6kSjUyH0 z+w14VTD=UftuE9#BSfS9UTkSfm558CMRexRPly>IoiWT~vA6;*713D%Qw@jCC|1g4 zDlU~eTBqoRgv)0+wt(YzEEf_E;>l?NKH-MJSTc9EiW5AR?SbrDXAaQ= zwZ`@#Gv(WU;2j$G^mK zL)PpvYUO?J?C_h0Wlku1?ixgf3n(S1mn{$)?f1phg)kD^be+Sk9pQcG)e-r}?2bx{ zDcI9$F`2I7y&vB$qCHvAZBF%X0JFf__L!r_XMCJ^|51^?(1Q$uIg{Pa3_I~VT38rb zZz5*wUpc~Jkf_E#g4}0!m@An}>-wH19-kZRjieQ1mSiioBKcCw%|i|Y@yD$PVzbMO zm$-0bvL{gk{R8@8$Pw*}$W58)whS)S7b<2_geeA%CX^D&P^2WF7-AL)F9T#^^FXi$ zyiD5Bkc*F8gty5Dxp-m8LmB?x78|S>pfJRcE7w9Y#&BC4I6>3*W2a0BuTQIA=jSIe z>1u7i(@-i>j#|#oa8`1pKDnlhxl*o`Gnw;q#U{4ko*8m3J%y&%xP!FMUst{V^z|nbY@s3ZxM4G?a3S)gvLY^$P7d~ zOMi)Crif31`4U~j)nIoC9M6EXa|GxDy%Q*&;#@i4i1^q6;IYmOKQwim$M4S^PfR2( zWJ!H>3Yn0@P*`?HpHeYglh9K27d1337?#-NL?&@UqwUzzJ<_I-FqsM|e>N&xV&)4) z_KzxHEGy9z#*_5r5YN*ckufC#UJ})3P+CkD$UI=8`E)jyk9-xk_XMyw=!F-8jV0uX zc%66y7?2HoCP+6asDbQ;Uj&JJflEiMYh+Q*cZZq#{v zV<<3z8z`$8-H=_HLs>-GLfKErj;LnMn164DyTmtqQrZNaeC=YsJk8uuvh`jTHNLR0 zcnb%~1!44$|L`*b)+QGa#9oN27h%{i|M*SZDZ}PoLUO_j5hTYuCGyo^y=P)B;!4oq z?OFM&_89OoSXjz2+XCuU2wq6eli8C3B5}Mv^bC`RB}8Z@K^mxievM11Ez4skOWYon zt8QGmI3m&t1a%?Tq1yIBr8*{4n@v)!U7_kPHD|gqb)x)ywKQXdP{^_A8uenGPN*>j z{kcjoDH10I7(Sgq0Q*u(k2bHLDxxvy6;7F*#u*eznH*NO+1A5&JyI9Uti2^;8I9?# zm`*OX%cPQCf6+mDl|^k3Y6`X7p?K49hM=G&(J;m4sVT#0sV~DVfI;r#WMez!+GWhtWL7D*91M z8ijuxP=kWv{>1wlSRF9&{J?AhOvGOa%n~q!kd6bkMZL(9uXXMTWf*hP9Ztu$51{{# zz4w5Rs_6cQ@7yivz4uM;$)<05BbAUq2!T*j2#^Jm5JC?n0YZ=_Md}Jj7X(5PkS+#L zfkluasE8B=6;zC#GJHGP#Zl%O_P2Cbt-{R=1t>5nZRyFp-YYQ)o$w?fU6pKNf z(~{3=j%kN_SLlu4(J!MdPd6pQBtQ{;}T4%TrABg2DoGjZI?a=B8E) zzs8h^KX-nm`svf=J4E`9v8DO(MGx1mu3WvzH$KeHAwJtbHq_oRR&^&sKPt;8Ag&@E zYhT?Vh9Xl@1ZISl;VZPHB#BWMlcbSDy`Az|#^0e!(oiSH!GUoan$$%cD~UB5BzcAm zRNB=-PqzcmEP|);*+2}zM$`|2Qrhr#6+X+R%?B^FFn2&VwLnu+Xh}Y&0@`_zntRbT!hWT( zp-nF4-NTHHa>MchL;5C%r3WU&**N*xIyi>}ywyKkmQ@rl?JCSQ?30sTYnT{UyC?It z-sw$KE9?4>b(2po>t(Yb%GJx!#xLH{$RyD(&_B2&B0psEfC0TC{1TIGq8)uhJUrsu zocyKk9(m3=%7~osAX#oaBZi%xjn$nuF$Va!-W4mhMls1)x!=mt#L33bGceS|#xpe3 z)5b)Y6f35a>w?30F4LIQ5E8WjP(pGpEuLdE+b7Yhlq&pHZ)#lfjfQ~o8+RtKNh@vW z-FxT)j0=Wha8|5CAn3d_(L%2zvQLwo< zeb8pr<*?|k(dkjvU4o*YVU_7b zCIn;QDM`Lq0^ZwK9!;{Mi=x?RsnoDMk)$UUV((60Yj^AR^DJHtsro!PB6+5bOm$O^%$D0PY6!d-jn~if#OcRX_ z3=IPv^?f8h21enrgUwxPHdQ7*Jg@39!A(EPzxT)fLbzH0~k8f5mpud;xfyi_ob#m9|;*S!qY)|{@Ehr|6JV9unMatAD?aO$j8Zk&*vjaG`KzP{5=d~lVl`dyPIKCkJs~)`II$l$#eNm z6Ju{nbs4`nq>i6KCI!F83qp zeuaLlUxao0TGq}criQxhn_F7TGe}lOQ3jjA=+2ez+OSRaf!l)V zKlQfHUODMYl?rRs=}K-4-dEYY0iCV|dofed?kM+F5L+FMKFy{%bJSQF`Tf3y*Y zdCjkW`i!7LNVP0BXdy57(CGo%=zi7YCJxL9wo?77`pV42$jn<;XH;x; z`2$tIBQX^P=H|T%&a_H zi`eW#s+(paBeP^vZ8X+SSi^uIUM`Sz1`?rK91R_PCV8__){K<>MA2?((9Z&&L%} zP07doJfDwCm0v|c-;TJ@AbcKHV@2sgW-!w;DWto*+?`~(7h#thlm0IK+5Y`AY^jxmjdNHPi!K$fU4NQpqijT`A({rfd6+Tx#*m|r`D*hl*L85^4z8>!O&-8x7AAnWN-GOuklV**{G z#{}zF>9hJGGsg7B*#TJb*Mc|Y+6M~H7Zt_Ve}G-4vs7#2qQd%2?4x=V9VCqdyR`Lr zx|OXG+F*?X?1N}-E-beu>DGnTthJ$|(1Z#Uw<|Z~$AU8qb+Azmgo5SF6;4phNolw+ zJ;*bTjmt2(*ff7tc5qa*W14?~gjBKKzJ0=NpB{a>a>}2?IMOd&kvALzv4q+1R3&y7 z_hq^;;YnD+RqjHvT#68gi}Ok{3nND5dL&)1P>71feHMW!9UTAH3+&R>7P)|G+=gT`BNTKOs~oPet`HGF!GX%pxa z&N4pEpmw*HJGL>Rl|wZa+C^Gl)M_VRz4h^vDA|JP`6&VW+nDe$f6qGAv3Oy$i%YE4 z;4qPXR7kOrsUYXB>fFGefA0T|>JJ@pp?d@wM)b#=`FMER0F_LY;pi9X)u)im|2Sh- zQ6KZjc;tTpcARw=6=UU0?2#%rB3VX7My!#ZfU)v0u|ln(zTht5)+COE_T=T4b}57m z?H+ej4?l4W_sLgplAmr4oDlA2;o;%2Sv5iRLz%ABx5OFCW!rw z1ZAiBhuGSjSMAu1l?8tc5A!AW zNV-uW^5~=QDc2`i`bCf$F%xcD?n%-;3q4s+YX{z1!At8u61Zmrd`=N^s=9qYibwQZ;9Tn%?*Aral?{U z90?JLFqf4upSCG=|dLpL;xgNWzM(iIw5{`b#nkq+#xvKfGaVlsJC@ z@ju=>Fgn6NDss`x+p3;^C0Zv=gf}^f@lUc!kjVt0K}6!{U}WXt z?+>501s0R1<|$o*o3m7Dg9f(&txy!01u;MgI`kCvOCM-!IO5^nLx3 z);#i{ASxibS9oBI;3qwk{$@*6YZmSGkIK~{2WGrybNfhy%IE0PyzZmc%@O1qWRBAp zV(A2{yiuwh#5mJj49pgVnF=r@+HEKz7T5@R17q0j^;6&1@fiVNPAE>YIk01ABOkkMYT1 zN3^IGv7(l>QwD(w4yp)op;!!Wa1;}gm%Q+sDDfr_41Ok{lip$MMc>JH(%f9JADM%8}oslex}{`)tTc; z49Fl|)mFdg0*hh&l4pAs+ub2OKtZc>f$kWTeL4?c`}~4+OQL6xjND7AH}daHG=$d8 zZM%To9QBz27$vmLG&W9fc22g*%S#RqPd4}U@UUUTVjH?kIsb(Kj`&c3S}JO$R=0B2 z7IbqfUfpu$AZMxQV4)7RK?Ws*SuScbk_8dGy{HIKt-?+A!$dzg7S!6AfrmIMoOLI1 zx1`*Z$}_$Wi2*it24+H$u8va|sb_>&q;O$CP+wv)EHbKK%)?T*)NqfCTVhL}>_F)x zgFMgZ$RKl9=R%A3RmYlg??m_38WRa#jen}Q$ z;p$;g?%C#Hs`NdxRF9)ZMh3}PlT*H!H-*o|pXR3pxw#O_AM06GXT55l>emSOXq*0I z;xS_zn^nY9So!X@X*4;BgL8lwE&jo-M;J853 zN-em(ehp*(7`_$LxlV56rNY z#(dS4tZtXcIb zNxX6T=cP~Ib}U{>>=YySEEjz+{Oq}^4dinC>zj9dt@?v(+p8G8WUQrdR$5n8w#4#~ zys6tD(6+vz7BawY)?410O+}+%{Ve-KGIvYEm&~YK&o;~u8Ufz6Z=+0!{ znTh=bHsM}<^VdzNUzF}?qGuQxC(F$;iuDdI)D`QR?OES%UaIS;RL^LaAn20XwtYe? zaew&w{TQDlI|uMJ$#N@lW8JV%Z@Cvq_bT*az4SCBre#3psR-fgcwQ*XIX`y0;|K;E zzBm!m$zRC1puU^UKvmNht9PzHdM9MOCqASwkS*Du6lSH zADmx2vvn7d?H^XUBFNRi(9bO}FRjVNd5mgHv#R!!6BnjXZZ>TDO4KTh#ae_ONtSku zdy3F0-6S>%3makycuW_iq=w~1+cz7!@ed>)-V)>(`%Oa7ZPeefd3kfp907U9G#9Go zJ6T}h4!E~y2VY`_I-s@*cE%~_?%}lNPHc~y*kZ*SGRGKc*UOGIzSg}9*tn=gb~O%G z)`eX>L)O{b**Y{jx`jkV_!40s415)&n3B80g8a$2sL(!Q)!FfzNBc;uyuyFjx_41@ zt{x_gtn2cI(@X~|+kqjT;ft;9Y;ESf-?hZg-pL31GUr#lHZeC*^=%4#S34me6+(aP zjM9hOsf(U}K)t2(9G?8^H#z?l2{!X0t3m^eeKmeBP|g>6z!H7!D8@0#G}xMPGi~2a z$H+=8L$r43Bt4!WkRV#G936NSnt&A>c?C*UB(Ec3mxl{&j7+k^dQI^1H@6$If2o{T7!iOA=iL!BfYZ^Aj6~+4a z#Ow}`#HH+6Q_?pn+;gN&_O1u2AG~~{1C!4Zw^2SQ|7`5HC>3@=`Fn8XpV>BD^qa5{ z=iMa=czaQRk-TX%5A8z*=^0@!RYVBqa<$8CWg9LU&z{|UGte(mxqw_kirl) zL|-h{r$WlL^_)6{c^8e^^yH^pdef>zeL)49t0!|}ex{8zgtXoBAb=Qf=iJm!luLAh z6^hLgymG|T8d`GP_sCUWI`@u|78wl_$0QD&DRH(=i3#zL<+42aSrw0V{FN&8@K!Cq)^}3B#ajYNV@j^E zYATiN*{XQ1v{|t2+|x{KEv>^%+)T;?NP0kF02|<7&6t~)$CLEEkDv|LF^K#?9B?9O3RZ=IH`f|7>oO zFu*@%xEFY8w<=mV1QHZRTMKU!#>C1bv|WDCS)(#@j&c!5z)K6K)lgo}V)TeGRm;4N zm=_l~71i=1z=tDL0}7bT*lxQ1p#}Cj#7JMLQWZyLd51(MKt>wZL|de!dluM6=>~`l zBD>}oyBMq1dU#};ydGo}5@2I=7fYN@uMc#${NSdl4f5en<~0%z-|l+jRKG}6=M(4B z-PF|fKE{H3b2?9L7vr371Jw2%&Wpe!EMwgErTBeOEH`?OzG zF#jl_Fuw5j&#@N8XiS(uHx!2VT@pZ@z+_*VMtVm1=!6pO&u0u=gMMrScHAOYt>;f_EMXs4(nhPaS_@O zA{0<6GM}i!LfA$(xUh&`C%Wn|uEUQ{|G z>M*^&mkVRTB4#l8LLDZsf%*69(fBN%z8>yIvV8h_nEU3#HmKucgK&1MIxJ>9*c0lo z4l{)PMjh5gp1)Iv^*~QeI{Ktqz?WSQb3Y11tU8VnyIfSL4jZ>$*GGOd^wCEiH1sjR zbxWOxTzmsum+JEA7~;CAZYX!%5Z42AQ@F4(uIuVns>4FYLw76}hWDQ_)?KL%BYj<- zRuXTguTovZC?zY`L&Ccb(6JHFv!`cioPr zqc>3Y(CY3@R=>pkM)d(d?B?bTtVqwm9o z18IEye03P{^#{^0_T*}(Gs1|^^MkHd{t>46;qq^&6(8aD_=Z~aN0_7k+mcXeNQk6c zMOjVN=&B*LlGLi2>Z+QO+KQ^mAW8Cw5t96hp~GrNOY+M{m)DFf9~_igHL{{i(zB#; zw4__ltlE+h6=m8_x8LM%b&4(FuN9Wpj7IX3h@g-V?mkVdThGAfo~RftDUsCHlngE( zSyD4xQZ+BMW0?}1RWTzGE`uf5 z6X%t#CKSNbrtekKjGQ zu2+?+Q@poP%214{h2Td^P3cerii`$^K=)A^RN+cB_rC;JDiEr~xPk=py++_C!S_cM z%uwvOSj$l^pDD+&9M6o!|G|ivg*zpPNz;DW8=kKL?WbNv0quB&+8F@ zG{thX!xE-|D+7HOA5X&c#ufV1MEs|89f5IRN@Gg(N`waEsZwUb3v=Sl<^S*BT8sMQ z%i2-mA;<&GDNVhEt5fEa4N*|j3P&`q}g=pHEJPqUGOTd}*Z9K0@xMK}R3(B$8NM!`# z)gYyDNQLHFf^+_i)+K#{-lvqU<(}i~v>NC1dHVh!JVnb`&0x7H{Kj#=Ahp)emX;uO ziG#VcXby%V?GijW3~2`=_mp~6PJ)>tgva3hlrFUH#&8s-e5R=hO>CNDs*`A*YPh%Z z6z`~aO>Lwxy_g)xC8ZOUT0S*eN}fuC@s={YLBiDmr2>6d8UDZcy&8_7oHzo{Qi{>H z)*^KYLi9eR5nlqzvGgu|7p-IZ9?AhU#Pd7V8qb!S-XFnHzz0wHA_kSP()Kq!PYs&( zvnl^`8g-;j^UrfEmA%o(CCxXb53fHc&1sCzW#`}id@aQywuS<H=WCu1Q;DG*Pw7r;YAo`=%P*e}mDmx8 zp`F^ZbPR&GtfO_TLJGAwf3a@l+sGHi@6gGk@O1erpMN%P7t#Z{tbOG(+Ho{3dDSbQ zpe4|bsVQSQB;{45>#!AQOifuQpzdC6IdqOm%lI`)MeF0$`Ro)^XfI3^CJB>;GGXYe za@i>!|K@*UrF4o(q{t)RN)Lb4yE?_|&Qy^Sj?*gtrd*w4rr})^@iyA-y^8wU@dW76 zK4uuzPs~ofTld_5>>Up)*aRb*ZLo=HpO5~yzMsty95JR$|7-?I8*KWD_52z$8-Ft* zI_%m8o36N&flYcs45WHuk-xEkwHGnc60yEN*47{mQTQ%!ZBJbl0BZ3t~hU(wsCQ`%ZhV* zg55sI4y>!XX5}0^H`+A%%Ok$6Lt+C-Xq(DAbJM#c$SlR52X~iEZTO@A+WHwY=Qlq( zuw?yt*{1F@ZM&$7g-jlNEsR*VjLh*8e8806CpJg@#gnu`ZZdB*K(LY5h8S zl?dxsO6!+RGwt_D^^X-btKEA{vE1Ele%qP1YX1BD)?mWC&&-L7Ycji#@VM-UuacxD zG>;a9vx9ymc?e$1`IJb6PAMaYfF?$-HZp&FRp6Pb~x> z?1?o;3afr9>+*IN=Hb#0S6+5JV6eu{Xvx*<&f9$_|M+0j=yw*}h@Kz6Tz*(K@?z6Y z_orXozfz&Mu<3~EYvxe+FTd6OVQL;E`rdcx;*{Y&qxQ=d+|)7pXuz;@N2VnYAF}1p z{zLP_KYk=It(*Ak#hWQ#O;UaR^*gG^UtKoZQ+;L8?Yw=mb#;N4;y({JD2-y*)XUvx zKki?)ptbfJ~D9EqT3{uiYh3MT}LCKPHW zA}mC$a3b1IrS;SQM>LKR$2icd!ftup^EC=e@Dc^}x4LKJs9M`IpDTi&{9I-?ZT)_j^e>YKI^mVd07vD=`$a{KeMdFZmp%_%{7YjvZ&9@ z;(DLXl=QUz?Q9>_>8CHZo~WMQ@4}-;i3hH2cym2dxwZb> z!x-WAEN&iy3#;ibkz`@S2G51V;! zcHKfjc4bkjBva9(`Y3Jxy&NGiC{?ce!Ev$Y(@%C8pZa~DhyA2K>#p?Ay)g8?TKD`e zt^f7Kx~D^muhm>SV^})q%k{Nu1{p6;-qOz^)r)H|oJ^?HLy&c*aqX0oyU)uT zg5tBKhwuMYv3bzcle0E88rHpit7!7)O_#@w7j5$Rc<}GJJ@$9;nQtFZpzBj}(#1AD z;5_49WpQC+$)hW!F-MqOQSgePlkb+LCdL{bouf1H>+wm)z8bHbC0S?p*5Trx*1VJ7 zf2`$Ghw-ATWn+fdKb@7neS1;Mhy%zq}^oxpfU(dN=uNtg7Xy@ag1EHQ{D?ER>JTJoi zgU>y?K>NH2?K6|tKBjVm6?w-Q&uwO(r@8c*ICR}JB>V5TJ)Er*DUA+^l!oA2`6z1Z zMC0^-!PY6L7+F5Lwq#`WKectfh^qW^=Z7iTqijD^W+wDJ{$!iw!GO?1=6U%aPJfUP zb}cJpkD za`O#7pLDHI=rH!(k%LEO7kvKZ&o_>(nSOfOS5tG?s3pH1U#(l{JS^kfwc}&^2T$JT zDcoDwPwrUOHmxr1;boy`x9D-TIs;Dh|Ew`8V9ZCx-#JI?)s0oXIihmn%^wmLEL%Ow zc#vP7ZE11n>WkBJ{oVQxOPg~ec!p{B-G97mKX1fC&s7$`pE12U)3~)^?C8i-Z%kZw zwpjdwsJSt0|L;rs%}AcnXXcX1W|x4>vsH@JoAP^8z2*<+^-TlufoAr2k;c*e|Aw_= zD%Ml?HL$!dOc+MX+^M>ko4D+~@NHci7aUf6_fBkb>ZwnpcI^*XvO+^=eK<77pcj(L zBzLxio-?DgEN8U%oPt`?%`D_ZUH3y~^WQ4bA;xp7)8_p+y5LBno+z;GK#!g?9Unw5 z+`qoi;Ktm2u?`phd}s4V`*-zlb*R#isxyNDjYS*UE_U<(= znA@s2QJ%fh$4gQCnn~6s=;>zNxP zi|7&-7$%KK4U9-hO%K5ys5GL$!m*Vb@T&E>+x5u!@I>O^R%UbvUJjuB&np-`Ks= z-^z$L(+!Fkp7za&xVh{Q_HEmW@3S9x2Rw`$*Kfn6>J?pk&oKRDXW;L%oxb_bckj37 zSBpzG*A$$HJ#{|uz}L-vOh??^c=dx5W1^0<&iuOmp3i3vKR?>>bHn;8R|V_VSk3q| z{>iql_l17AmL2@dH*NM_qjY<|X2m|5?mafEVbtayw}*~Db#;Vwo?H2{(r)R&ZSFf~ z{;;X~h~Uii&q75f{a;VoxB7BGpR6Lk>ALr}g@M`;)+-(}(&l zo^i47TkhKCREOnsZ`tGDew_RBHx;*whUNaY{I!W+t_td8DZNl*{5zIX?da;VlK+UM zq)Dmv#mbsG4BG8K@$qK_kkeL1iQ@(>j61q9V#DVm(F~WuM?bFEbXs>_@Sbytqb@hr zjdS_(dz;-y>TdtB;*ow@=61_N6#?KaG&IDm884o zm{EwZ;j@T+h6?7>Ia|k9O!IrQ_7L-Y>+={77q=gFs|-M;mm@5cODcuc&bey!EP@IQR!yJVM&-kSYuea3yG zg}PV!#4d0iu2=E)@yxnj4T*yoS*k*OHu1CIV|kBWhOe*MyW>cyQC{E=A1oSogXB&0#O3L0w}{8iHWS^tY&HdbG& zBiZ3MTU&pMwoYpQnw}uUP|Is3glDS5t7Z^lEY-ei1+CHkpfCho{e+EMFZo{$bBTJe zaLbv2-{@X3A3H=kL@NoykUrAFwE@%oUOKk;-00<7Uei2YYSY(FsID4XQ&K%_f<&A7 z;A9du5N1`;*@1stDjr!?df(~n7f1gzY#ns_J>@4AnSUKzJ)}KV%$(jsLc$a7M{djfC@DSnjeuE~b{ZM4I{e** zR+)HlWzoehKYYGzWWR4#RGh!?SMbMia_iw%TaF&KJ23iz%e&w8d2N=<^3OKz4|~|- zZntssR#%y?sJ%3`G->kj^()Wpt31-E9CW{^QEyRo<5jZN%Iu+2&1TyX&Dq``-&rDg zBW!@4fpY7IdX@gWzpY!|cUMWm+)~sx z^iqqj{94}Ur`MdPt}8#2`CWS2+4NCwHLxzy2G*gYmc$_qtRXJx{@2;@*(MU~*wJuf zX0w@gl58i$J=#A+=6^Hg4*Z<3~Q9%`hwllwGmd}bSxFd)yT-G|} zr>7xTK8hWo94d-8uqb{rQy%8n1`x_qEjyQjB z(&!7R!z;tTmw%cyGR5#$ztSu5Gg_5BDq~OD&%FJimA zCM(VI_NtQEpJdf7pR+hquh+C+0x}#wyWxz zzdkb%D?SR!Ce(~zEQi*VV?2FCNo^&@z-c@>r;Dc25hj>`%jOhhN*LSxylxUkqK?C= zk92&1J|kpA!^>+hLdgC1;{FG4|3kU|GNejVe%XJT0_GYa4v<+#bHLgQ6NCxkKDw2{ z1l?A>t-7s-D4yXyBgWXzINW%w@ib#U6MGX6lOWUOhWkwHO>ddm0{hI4TNqo|;-{j| zQW)+t+=pkz(l{2zrnjtYtwOD2R=bfR?wH;(9;>%iZ!3Kp{aL8^d-SgHSPDGp!T(He z(I3*s&vd!jKI3r2{!ni#a^itAKVv_uQ0oNlec@al$C@suKjf3<4|(HqXKX#fT8V`o z<{87#SwS#e~VpTy{$C=_V*mJ9r`=S9r`2G-=PJeM-KfR0~`Zz)*tt9$FUN>8QisO z+?6}tavJ7z%30=E={(=1&SjCr)}g;-H5b3XtF7xw*Tb%dUFzJt94p7=H+n{X>;+NPC1?8 z9T><(4YA9AT{wvXnO{49gWXV zx|tl4920jVxleq4^1kFg3E#xGq~s*Wq+CpxpL8?6C3RTp(k^?u9PM&6Eg(H6JtlQn zx*}sNy_zwW`?X{|?y@&^DXz9;jHNMf#5+7AeRlJ7qd7p{%oFA(%y+MI=nt*{NAX9d zk?qT;Gjr@8a2gz<%HW@E&jwIMgO%599gMz=yy`z{kKD;4E+naV`T_fU7wF47dhd z2W|nkfjhum;33}i2aZpGKY_p66auDAE+7C42mtdorNE+1EU;{o39NA69@pG(%@gN7 z2>X#nfj`?v5P)leI0hk3Fv%835sp(`62#+rCgNlP*+5qy2j~XmB2FIA9q0k{M*K3w z9}JWOLx3v0XCmTaKXgGIFd3MFxKn{?Kt0~q089sF05kFKMqn1ug!{9B*MK>|Twors z80A@kv{&NzCa?k6h_dX$wfz8SEI0w2LV8MEzeH>WS8)9na7R@wxQje|hkM^+RX&F{ zrO**@0&?3F%uH~G9GoEsXUM??3UGlOTp$M*$iW2)aDftBAO{!7!37F-5zdzY%YjwE zYG56(5qKNe3A~HA`+)tx0pLC0AaDpc44ei&1U>>j2F?IyfeU!{Q{WQ9mw_w5Rp2w= z8gL!B1>6Si0C$0h$kQJ`G{Wt^hVlccy2II z4h#V%BK{4AXv}OaZ0ds)4z&v09(q4?TA%WlmCAdH- z*nwwH;0Os3+(o+g5r?a3=0l+~YB;)0A&dcHfjA%@NB|OnBp?|`0aAf%W~nd_#~y7; z>^tp84nR(%kP#^;@&puVgxa4(>3lOPz! z5S)hs;cdqR`9J|M6W1GoS-^bUTYzg++KvO40V-kN;QF_~J>Wj>f8Qo!-hf0YAyG<5 zloBP7vjf4Q-~^OH&Q>El3K)a%I2;>Kh_5sKtBu)v5Q$pgDkT?bVK5zo~0B8X&09c0vQl^BIDIsM__8!jf z1K=L^d*BD)0k}$tl8FE@V1yDI+b~txH9CxM?x>hXk!qJae3hK(+ zsT+oHIH(zc_?ftu1%T@yRZAgNOCeQDL4BE^C!Q_9u{YAhyi&n1UsbXPOd(i< zcyBR-A!!Q1W`wsOybZ_ghzBjl>EAsFzY82fzK-H}90093U5xfl@Dbucn}K8G0<>>} zFL3+{*Qjp3i@bK`AQ>;cZSr5w`%ChnIf!BaJz+7M+ zz*7~i4dUFz^PNi~hXikB%+-9|A+a42s?Ap~lTbM{QnRpoTMLsda6+r*0_`9n-w9k1 z_CSkCIn5Wf;)k$5?gaut;2e#{3J1j#5I+$}0+N9g#7zad0BJxvp2DjU$7`kwN3gpmAi-I5KD)8E5fb!tpY21wi}! zTzhPRvQZ0-w!w}#I*}y2B?%UqLJ*1bC_n~812I4>&<112?*RvazqeOYP_h)1Eag99uUfRFbh1?)!6_PQ zxZyi}pSCHSWfF<&QGg7H24a9%ARcjg;aCX3wuj}>49lY#mPa!zk7npXIjAM3)Pio2 z|4SA@7gz&nKst~CWCFPWwGz6k^%9lv&TVpsg#V*97^x{~YK#%;jB=F%^`bz%C{Qm7 z)QbZ3qTt%GOE_Kzu7FD{0JK4j_x~VY(wcZ3{Pa3%p&5Mn;u`3nzKm;mI;gFn9LbCq zxH99Jp2#QdU1{6Zlp{Or>X-MR#ILlOJNKaeeOsCDJ&8FxxkElRboeLoDOS^glTq5D z{SDX2JK3RKz@=$GI*!-|Z+XN1JdEWyqF*u0t zS3GPx2)(ok{e(^ECu~ALVN-h_!5(2=FAYTf4@CVd|AAhTYn5B^56a!y{(hOX(bhlx z8SbHdb8YUCqtq|!fBz@BhxWgp?P+!He|P2{Ij7O7UP28)2gyN|gMY&f|BNbBYf#FF z;ep_-xs~7uYPC^o4OTKk&^uBx&YX?lM^>UY6NBDN40`*`j0hHq zEi4jSwC=WO-EGmj+cHk5N$Oo`d4;Bv!!mEzbZ9?Y)Y?uCo?HZ-v=ThI68yLbEy5zS z2#e4nEJBO02ra@Qv<8dN8Z6?h=i4~m0hJ86o)YX<^c&iHOR#?xf;WJrz%l^z5;P;W zExSZ@3H^IHygf2@6~e25bvWOM<0c&626h6w(W;mOi&g7jIg14=aeNcl0Bl5U<882# z#jtk8uxQ2bJYd5T^pVWazfq`tNeXxn6zJC|s2_>*-_Ty}3gkz-r@IU1x1dQJ07n4+ z3&x7;B_URO4~h1UUY5!lq(J-3n{nI*>;ztvs*vj&XmJyz2c&B`mt)Wa;nl!8F4vU* z6rhI!^q?is(Bl$HAOk%vfgYDYk4vBjrEnA8DMLwQD2WUuk#Y18AvWKiK)*m^`(r5& zP(j_>Q=qq}Ku?dRAww-G8GWvAsNEMtKM-}QM4c*8r%Kc*txqLmf&9xrZ3Xf!L*8Ye zwv5a7Zlq@pEJm6<#buBo8R#VA^7}k}6kKYw?r3Tqbq6U#>0gx^E#I?ss9-3yTTs(2 zcy9~d+k#TRM50l08vhxtWpt53hgXF5+4x#ka(y-Q(~#l-FA_a(1=nMvy*2d4 z7@KzAXg=;10?=3Rk;>sCmBU9WXNTdM9H>ON3ZTBy(MSc}Ex}<>>I69a6mSkWutaBlQ$`15((I)KfZnU^`Op@Wk?|E08+vP14lmNL`N9ryzBjviyamqJ2;? zN`(~y+Dlc4nt8TFa$M_N8YSLEeMy>kQBNXY0t2-VL&=tc1{y!c7|>uGXpPnu@01I! z;b}@uA>OM%c_|fXFIWlP(-qv72k<$Ofqn|mkG_$Xj`}TS>e4kcwhX)tj6Prp7y+iB zViJzU062`<1MEc@Z)WxZs0HS6n}Q^_$w>-w6^_&gv`vB6h2~g^98W>LPeHv;p*cnl z2XI%FxT?feCBD!x`|*q z@Qe~XqXfTD3M;`cN|aYg%ZoJ%=zC14{sZ8DxHbW()0^#S@mBS7;m=nv3M0lFzbH%c=FXh!KJ*REOY;6lrPiNR-Lwau*L zY-Y$23pqlM>v>;&XM4HbhmJLScuxM;IDvW)>QLL$0Ql&*w>KgD8ZZ}Sd$~t}jv5@q zsKG&u8XUx^!9n(8;0$mU(DpW5#rbEzHQ+jM3%Cv30qz11@!mghd;0RwCf(|8Y*?2_?1c-PYaDiXk_P^dZoIfy>7!n@p-@kr1(0p z2)F=ziaHfSH$oGt{jPKbgZf()@V6@9Z&hggtz0fT%epCY+>r|{n^A(#Rx~9A9q4T+Ma6K1o){C z*1Yd!Z33)$Z_%dL@^t^F_zmskJVD##*QLH67oU!!oD&k~7{~t%*hhb;v%( zX4|RtycSXt8K(m{n~AJN_$^=^umKth?E#@}+&fkOFS*z2Iy zPCKPgrkD2j_`V!s%eAD4xA(N92yGVaGq*ryTOhM7kl7ZclGl3USqr1s?gd2bvpv>zy zE&`SSOOXS#4r~^}Z*cq; zxQ8CFW{d~xezzTDV%iRpdSC&t5Lk>>`2UXmym+J>mP4npA4^c`0K7v7FgkWZ;Em6B z=v)^%&m{%tsX!MX4X6O*z;IwBFbZ);1GRwGd=>OU{>8ooJl+@K@xI9DKo37>H6efe zcv323qPoPzFvHOU{hvU@mIB?NHTpq1OL46Xcpcb=INNcA@1tE}TX5|pa2nS>0;rVg zw#kS-kPZySc{y~~Y=q}Pqf)7)7AS9d{=aSv3**?XScRehG?6p#1v40RVKC~#VAO@l z0!{L9EC31-?gLaH46g(;92fzN1S)|lpc)tj)Bx}$FcSb+V9X?-4wwu~K^jwmX+S-& z7T4Ya;H3eL`5y0aTz?<91Hf`+{=!iOx-tL(^Z)|@eN2MdCguRV9>fE5_X7d|l!0Uc z=-ZNR0DJ?a2Y@^h@&A(dI2ZZ- z39SltVnyz0FUSd{qkb6=grUYeB*EM(TZV zUIg?7`T^+wGw?Qnd&S^hF@v!1!_ydNyS1OHMK^2ciVv-z)oCm z2DEGPAo6t_*WL%zy+BBg7?LAqKEbsMz(oKvt5Dkt2HtG6e@$rr_?rJ6<@f{FFvAL5 zpkSWj9GrlO&du%IpxY+qI6@!CXSo7&=QzV1mW2nxUZ`b^s(?!r;1UH10;E7Xo~0a< ziF7H~WaIcO=j7vBPuwfOu@{boIKtZmiI)>_KgU_4aHQM?KNUDkf%ckmnF3s<0GBDi zWeT+43bfx;Lx?$!gO(t3aSfb@HeG=>U4b@Tfi|7mi##V{R0`Zk+jk|j$^RW={%?#i zzpN$U^Z^#S(X>#|LY$m?v~6Od+Hzn`$YD*$+vT$q*UNzIzz#s8<@Vw^Ew32lViV+I z6V-TVQ8uAP*+e|sa)>vO41R#e41BtYjKg_7;!r-CjdS>&IKEkkBjugNID&sT-pOps z0lz5V|4_pJL1$Dd;rHNsqEyo@0Kjwb0laEtNC7{H5`GXR{2)sBL6q==DB%ZD!Vf}y zLoM(fv~(Ihx{B+c0oQ=*z%Af50F4fRh!VaKC43=D_(GKMg*@NW6~e;k@H0_cRWll; zfPaK~xU_u|Ewo1rKbk_|%*@3I)Fwe69E*UyKtEEaG?T(3h+JHi>;kzv^BJ)SGHR_ z@E8AMi|00;eGL2wsG!FfKw|;9b37`84pl;bDmiNiBOjftAy^pygBH<$WcCCJ0Q~|u zO1dHB#?7c`0IeICb7ULd*c3qBkUCy=ZfuIN45{|ZfJ1&PMC5I&?=Papg9P@z! z#3=;$He8N2T&~rI%iG)Vm$%(=SXy#eT5?!ga#&h&SXy#eT5?!ga#&h&SXy#eTF#Mmd3$@Dg)qh$V8O{@!O3C4$E!WPYU8iv! z-wVJ()o?v;p;8UVTc#SW@93ZCf}`}ni5O3O<xGpq=YGtWWt%`zzGqq}C>HX)4?M zFB)#2jd#3;`*Q%=qK5;t@6y4=|Noz-L@l)ruOob|paSi=akD#_8ETD9c~8b^>R0m{ zZ58=m)XO#SKkMthj&wSDO4{1C!$a|`cIErLJa54=>eTOjUYkDO|JC$lXfNj39*j0G zRpUPGsnC9KM^8lDiHFet<+LDXb8<7k=HmFO8DH9S0w2O-j8;H^RzSc40zflM%N}7z z)gw*cS`dkF6d(hlffyhb=miu4bSBqr9PeNrPc-HS!~n4X`23aMmY|-6X#iwF2#v0u zNvdS@xb|Dq-of7HY~@3$Jh#NtbqQ|?%^t+ zGpJvP>HuoBQwxZbQO+9wZ_mS`^3l=0tILaW^0Sr`U>6r-?4%gwrQ;06hz)C5t0x0G zb7K!hxZfA(4-^BtaeWW47tg#4>;v`#)PgvK>)!!7$xjwzDLa4 z%u2P*tW?{~O4!Vr-mn6;bIyNk?ynU}EC^fa|6bwIlp(&LNrIMjkGL(w<^zow? zGL(S#?5zOrp!Lw6-^O_$m~$pI|UMj0gZBq!4q6$VP3i1GxXvnPwZH^Wb}VZoXQmx)%UX6#SNS2AeZLOG^El8Y$5DHECX< zJxL@G1<(>l0~n#ABSi!~L2?8*2Al-Y6C~&bl5>C(I1hXR;F~&f5%?6i1YG9J&&G45 zl5^kjtwd>7fqHZl3}Zm;BVlhNOh?PWU)($~e&h+`&8QbnY1m(K8ee#TqQ3vGJj3@M1)ZDkFmsBNs#+LT%X_;G})byx&diM&wi z$v{0Bs3*gl<)EI7tik>DxW5r`H{pCU&UXMiaUW#?Rb`;63{;h2)JsNMa1AqaF#06} zg=L_y3>21u!ZJ`;1`5kSVHqea1BGRvunZKYJShi-W&h(dDSa6cct;jRL8L{K=q0 zsdkZpgD7n%*C@a(lokqbhk_dqg+Clzp#VovE|j;3d)em``KTGG{)Eoy;|V9@;V zx(ED;xAMA22HhhAU-FhDKPLR2nZfA_Y0|v0v$orc>r~@Gdy#j60|2l6lxpqAfA0(V zeW~_C+5)NpH{-YsKnY%`4M7`Fo9Yp24RW->QNtr0a!oY{)yprU4X0<+y7@mdAJu?d zg(kQOP>q5fH0H*=eC}w*3-uN4&ues4M>*u=8dAIte2MbhKzU$Ak$b?82>*m@k8tl- z;CH+gWoCtd2$a?Z^bkfbhBW}-OJZS1u;#dC1=!%eEjZB**BlT=tHQb>3|~77Yl-z_ z2D9Ec`TzlVHVEfZ#GyJ$vo1hB?iB*h&J^vKo%*lOePy{f<89c}>RG#omW?ly5@k}d zCOGe09tFyy)GCkixw81v=;P@nt5*>wZYAQgT&F=P@pyxs0}%4 zL$0n3Ich_W+L(gcP@pyxs0~^Za@2%ET@&(-ngG@LnvkO=AD>YOq618v%~G{ZtYCY-jTv%{1OEDOxVR6+yr+)p_f{X`ZX za^#txJMG%3{opD3eA~fOlya~PsmatF+zgrGDd>(jP#qA!QD`voM&HzVR&EWhVHWNS z=VY_YCd|GPVVxp<>{>^#uYnoPoET@!ee=NHMf%u7CLDVjL}FJOdu|f~7jD}D36q4M zD^^z;$ha}Z__ zn9(Giq%&hkCdp*R5`16Gj3YTD2i8w6$z>*x?xZ_2k>rznW)dmDXh9t*B!$dm(uee6 zrjWj*FEf?&C;gdeWFQ&H)RSUT%rsz=>QZJpwqhL2%pet{f|*H%li^Gw8A(Pmvq%-G zVw%V(GK!f^#*i`0Yh)Z5$IKxU$OL9CnM5Wr^T=c}nVCAtK>6gH~Es> zWcHF<}2K}b}BoS`Ic>98<~4- z6T5_Yz%FA~F;Cbx+0{%NyN+E?2)mKpLH?At`dZezC*F}t1JiCsN*u?Mjo#QW?? zV#%InuMj)-bM_13%id#Ki9h=X`zMjHPX!hvR$wJqO!5Uw1#glIf;ECQD2ff*YdF_f9uD)@1z0s;Qc)sat%vU-#?R%X{BFzjNu_Bi~>L zcFMPS39rdf?7}Wp?8Y7i_TnSfr99EM(59^B(pwXJuFus(pYMn2@wOIOjC&5-f3X(Y znYI?%u%FgHi>2$E(CsZb9pzSkm1djb~lVSdKW&Na?NlOV1S6M?Reu;?CkY z6RfZnPqvTaFO(AaS0ios`Yrg2$c`L8(l~CUmvjx4$PCj8(<;+y(?yfZrcaeCOqZLk zDl4BiOKvhF4Xqs*|-DX;Ay2G@tlAlO-o9;6`VEU;k>)`M_2j^aRh62@p)24RM zziLo3RCt}#ue_U&1}ozQE8qQ^#@M6vE310)Dh!^TKviC4&1~zqUu-qB`=U&P2q(NE zf7T{;yD^ouE_uDx*Eggag8QR*B|3fwL8aDU&-!lF|DKM$w_|+}VT1SZYp*MGMzBwP znncH?F5qhaUmETkrbYU7;XXPp(zlQF{Ud$2X01f84{yhoNBXtlo=Y>@wG%fvvRxhN_eA=` z;XXbo(x>p7=4yyKh}**2O+l?u&v8GKF}WSLl#%}^Pe+z!2V1Nzzfc$G1zOEJnY5SLrfcu2<^{y+&8+wfYy`tXp)e*6OpmQyvTFqo3;M`h|X}U+Z`Jz5WOXj|PZAESlgr{a9bo*Yyp3OLyzrx>xto%H>OIY3&9ZUkx$7DlonpYJ62_d^JqY zkTYD7bdpYPxbf8pBdd`{R-=rpMjKg;F|rzKWL0crHO|Otyph!eBddu;vMM#QnkuDIO5O|jYP#{&4CAYr##d#=SFi>}jK^>)1@U=jU;-c1@=PZqg{Byz9vZz=RaeTYYjGU|5jZZ?)0 zBeg22mA}g&*WKx&NOX^K3{z(AopfeEMp{lXs?a$)S3_E<^R$YLG@p!>t9hEQgLQ}& zkhKbRm=@`9^43Vw)@ZWUSd!K_9j_B~qE6BholNE`C2>vD={iHt=WD3cDI_$5D5&Cvh#JP{rrQ7JxC(NU@^ypJ`>9h3k4!ZP(h^qrXAN1q`kCvL#2as zaD~!QI=W$!Dyj5sXX#Ae_L5$1gk(yl8!6e6&D<ng9%+o4_RYGMhf1Nc;Dy5RXt&%F%4xBIZnX@gB1#XU1b1k8{QX@6Y+!o40 zS1F5R5%agjvY7eX5?R9hZJ8{iZ&%0)=5H%yCG)pcvWofJYFX{7HC@x)g_^0Eu12#N ziH^BJsZc&VPE|S3aOg<$Fl<&Wl$M z?|lOwp^S_&wRHvJQDb3rIl=v_vbMgw|+-lhGEZ zpdC&{dz^+2I2|2v22#-pozVqd(G6$fEc8H6WS|!^k&6PPBM)iljvQQwVK@i9aW?wk zT=YYK3_xFGV-T`17(J=L#AM9EB^Ze@7>*Gbi(*W~B+Nkwm8imeRHFt9 zaWO8%Wmt-kT6^DlP2?DP?I%^+1WPsxvcT1oJS0@h#*sF z=bHNNzQ6D3d-!y&KAz!wafW1|@5{Qkef$8Q>9e>OVO#lF3w_Dyv4A_7Q>qG8F2*uVZP88@wW2Svw6gAd_Tf1W;2|hInk&17Toe- zPUGw)_*w4cx2Gh)4LoO-1^Jf2``6%erMc#QxF6w1`cZzgALGaRVn5E0_Y?d?KgpN) z$$pA2^;7*cU*>1|>3)Wv$!8_XZrRO9vS0S|_y^hFk*A=N69SwWxK+ P^Bit>Nj!hgyA%EiFO9~B literal 0 HcmV?d00001 diff --git a/images/minus.png b/images/minus.png new file mode 100644 index 0000000000000000000000000000000000000000..5e6a315e84e6a7a0e8a7aca5fa16ab2b0fad827c GIT binary patch literal 1156 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 CUvN$U literal 0 HcmV?d00001 diff --git a/images/plus.png b/images/plus.png new file mode 100644 index 0000000000000000000000000000000000000000..62df5e3f0c1700c78b1d676002defb203977deec GIT binary patch literal 1437 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 Ps}ZTc)KRWhwE6HKtt{ +#include +#include "classes/Game.h" +#include "classes/Menu.h" + + +int main() +{ + +/* MENU */ + + //Build window + sf::RenderWindow menu(sf::VideoMode(650, 900), "Projekt CPP", sf::Style::Close | sf::Style::Titlebar); + + //Init menu + Menu main_menu; + + + while (menu.isOpen()) + { + + //Check if game started + if (main_menu.is_start_pressed()) { + menu.close(); + } + + sf::Event event; + while (menu.pollEvent(event)) + { + if (event.type == sf::Event::Closed) + menu.close(); + + if (event.type == sf::Event::MouseButtonPressed && event.mouseButton.button == sf::Mouse::Left) { + main_menu.action(menu); + } + } + + menu.clear(sf::Color::White); + + //render objects + main_menu.draw(menu); + + menu.display(); + } + +/* GAME */ + + if (!main_menu.is_start_pressed()) { + return 0; + } + + //Build window + sf::RenderWindow window(sf::VideoMode(650, 900), "Projekt CPP", sf::Style::Close | sf::Style::Titlebar); + + //Load fonts + sf::Font comici; + comici.loadFromFile("fonts/comici.ttf"); + + //Load header + sf::Text header; + header.setCharacterSize(40); + header.setFillColor(sf::Color::Black); + header.setStyle(sf::Text::Bold); + header.setFont(comici); + header.setString("Kolej na gracza:"); + header.setPosition({ 50, 80 }); + + //Load X and O textures + sf::Texture sign_x, sign_o; + sign_x.loadFromFile("images/x.png"); + sign_o.loadFromFile("images/o.png"); + + //Round indicator + sf::RectangleShape round_sign; + round_sign.setSize({ 80, 80 }); + round_sign.setPosition({ 380, 70 }); + round_sign.setTexture(&sign_o); + + + //Init Game object + int size = main_menu.get_size(); + int win = main_menu.get_win(); + int difficulty = main_menu.get_difficulty(); + bool is_ai = main_menu.get_players_count() == 1 ? true : false; + Game gra(size, win, is_ai); + char current_sign = 'o'; + bool game_finished = false; + Player* current_player = gra.get_player_by_sign(current_sign); + Field* ai_movement; + + + //Main loop + while (window.isOpen()) + { + //Check if win or full + if (gra.look_for_win() || gra.get_board()->is_full()) { + game_finished = true; + if (gra.look_for_win()) { + header.setString("Wygrana gracza: "); + if (gra.get_winner()->get_symbol() == 'o') round_sign.setTexture(&sign_o); + else round_sign.setTexture(&sign_x); + } + else { + header.setString("Gra zakonczona remisem"); + round_sign.setTexture(NULL); + round_sign.setFillColor(sf::Color(0, 0, 0, 0)); + } + } + + //Event handler + sf::Event event; + while (window.pollEvent(event)) + { + if (event.type == sf::Event::Closed) + window.close(); + + //Mouse click + if (event.type == sf::Event::MouseButtonPressed) + { + if (event.mouseButton.button == sf::Mouse::Left && !current_player->is_ai()) + { + //Get clicked field + Field *clicked = gra.get_board()->get_clicked_field(window); + + + if (clicked != nullptr) { + std::cout << "Pole: " << clicked->get_x() << ", " << clicked->get_y() << " | "; + + //Change owner + if (clicked->get_owner() == nullptr && !game_finished) { + std::cout << "Zmieniam wlasciciela."; + gra.set_field_owner(clicked->get_x(), clicked->get_y(), current_sign); + if (current_sign == 'x') { + current_sign = 'o'; + round_sign.setTexture(&sign_o); + } + else { + current_sign = 'x'; + round_sign.setTexture(&sign_x); + } + current_player = gra.get_player_by_sign(current_sign); + + + } + std::cout << std::endl; + continue; + } + } + } + + } + //AI move + if (current_player->is_ai() && !gra.get_board()->is_full()) { + std::cout << "Inicjuje ruch AI - "; + + if (difficulty == 1) { + ai_movement = gra.random_empty_field(); + if (ai_movement != nullptr) { + std::cout << "Wylosowane pole: (" << ai_movement->get_x() << ", " << ai_movement->get_y() << ")" << std::endl; + gra.set_field_owner(ai_movement->get_x(), ai_movement->get_y(), current_sign); + if (current_sign == 'x') { + current_sign = 'o'; + round_sign.setTexture(&sign_o); + } + else { + current_sign = 'x'; + round_sign.setTexture(&sign_x); + } + current_player = gra.get_player_by_sign(current_sign); + } + } + else { + ai_movement = gra.get_ai_move(difficulty); + if (ai_movement != nullptr) { + std::cout << "Wybrane pole: (" << ai_movement->get_x() << ", " << ai_movement->get_y() << ")" << std::endl; + gra.set_field_owner(ai_movement->get_x(), ai_movement->get_y(), current_sign); + if (current_sign == 'x') { + current_sign = 'o'; + round_sign.setTexture(&sign_o); + } + else { + current_sign = 'x'; + round_sign.setTexture(&sign_x); + } + current_player = gra.get_player_by_sign(current_sign); + } + } + + + std::cout << std::endl; + continue; + } + + + //render windows elements + window.clear(sf::Color::White); + window.draw(header); + window.draw(round_sign); + + gra.get_board()->draw_grid(window); + + window.display(); + } + + return 0; +} +