From 27d0d4f9ec351febe864c007285c142749130837 Mon Sep 17 00:00:00 2001 From: Stapletonchris <91710281+Stapletonchris@users.noreply.github.com> Date: Tue, 19 Mar 2024 17:51:23 -0400 Subject: [PATCH 1/6] class-Diagram.drawio --- Untitled Diagram.drawio | 124 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 Untitled Diagram.drawio diff --git a/Untitled Diagram.drawio b/Untitled Diagram.drawio new file mode 100644 index 0000000..9cf3226 --- /dev/null +++ b/Untitled Diagram.drawio @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 3a01331d3620bfab4c0598a402135e99aab19fa3 Mon Sep 17 00:00:00 2001 From: Stapletonchris <91710281+Stapletonchris@users.noreply.github.com> Date: Tue, 19 Mar 2024 18:04:02 -0400 Subject: [PATCH 2/6] Update Untitled Diagram.drawio --- Untitled Diagram.drawio | 119 ++-------------------------------------- 1 file changed, 4 insertions(+), 115 deletions(-) diff --git a/Untitled Diagram.drawio b/Untitled Diagram.drawio index 9cf3226..7fab8ce 100644 --- a/Untitled Diagram.drawio +++ b/Untitled Diagram.drawio @@ -1,122 +1,11 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + From 79cb04c3d8c5c89614fc8476760d1af2f9a35453 Mon Sep 17 00:00:00 2001 From: SeaRisk <123013406+SeaRisk@users.noreply.github.com> Date: Tue, 19 Mar 2024 22:31:24 -0400 Subject: [PATCH 3/6] added reddit API in Title screen and Exit button in game --- game.py | 23 +++++++++++++++++++++++ main.py | 43 +++++++++++++++++++++++++++++++++++++++---- 2 files changed, 62 insertions(+), 4 deletions(-) diff --git a/game.py b/game.py index af2a738..eb9d953 100644 --- a/game.py +++ b/game.py @@ -5,6 +5,9 @@ import pygame from constants import RED, WHITE, YELLOW, SQUARE_SIZE from Main_Board import Main_Board +import sys + + class Game: """ @@ -82,6 +85,25 @@ def display_player_names(self, player1, player2): self.screen.blit(text_surface, (715, 350)) self.screen.blit(text_surface2, (715, 400)) + def displayExit(self): + + self.exit_button_rect=pygame.Rect(715, 450, 140, 50) + pygame.draw.rect(self.screen, RED, self.exit_button_rect) + + text_display = self.font.render("exit app", True, self.text_color) + self.screen.blit(text_display, (715, 450)) + + for event in pygame.event.get(): + if event.type == pygame.QUIT: + pygame.quit() + sys.exit() + elif event.type == pygame.MOUSEBUTTONDOWN: + if self.exit_button_rect.collidepoint(event.pos): # Assuming 'game' is your Game instance + pygame.quit() + sys.exit() + + + def update(self): """ The update function updates the board to show the current board and features. @@ -92,6 +114,7 @@ def update(self): self.display_turn() self.display_piece_count() self.display_player_names(self.player1, self.player2) + self.displayExit() pygame.display.update() def winner(self): diff --git a/main.py b/main.py index d7bbf32..6fbdf88 100644 --- a/main.py +++ b/main.py @@ -8,11 +8,34 @@ from constants import BLUE, YELLOW, RED, GREEN from ScoreManager import ScoreManager from SecondMenu import SecondMenu +import requests +title = "" +link = "" +subreddit_name = 'Temple' +url = f"https://www.reddit.com/r/{subreddit_name}/hot.json?limit=1" +headers = { + 'User-Agent': 'MyBot/0.0.1' + } + +response = requests.get(url, headers=headers) + + +if response.status_code == 200: + json_response = response.json() + posts = json_response["data"]["children"] + if posts: + latest_post = posts[0]["data"] + title = latest_post["title"] + link = f"https://www.reddit.com{latest_post['permalink']}" + + pygame.init() pygame.mixer.init() # initialize pygame mixer for music + + # set up the drawing window Width, Height = 1000, 700 # updated size screen = pygame.display.set_mode([Width, Height]) @@ -44,15 +67,22 @@ def music_loop(): message = "Checkers with a twist! For all ages and skill levels!" credits1 = "Developed by Wander Cerda-Torres, Barry Lin," credits2 = "Nathan McCourt, Jonathan Stanczak, and Geonhee Yu" -background_image = pygame.image.load("checkers.jpg") -background_image = pygame.transform.scale(background_image, (Width, Height)) title_font = pygame.font.Font(None, 64) message_font = pygame.font.Font(None, 32) credits_font = pygame.font.Font(None, 25) +reddit_font = pygame.font.Font(None, 32) # Title text title_text = title_font.render(game_title, True, (255, 255, 255)) title_rect = title_text.get_rect(center=(Width // 2, 22)) + +#reddit text +redditTitle_text = reddit_font.render(f'Title: {title}', True, (255, 255, 255)) +redditTitle_rect = redditTitle_text.get_rect(center=(Width // 2, 99)) + +redditLink_text = reddit_font.render(f'Link: {link}', True, (255, 255, 255)) +redditLink_rect = redditLink_text.get_rect(center=(Width // 2, 120)) + # Under title text message_text = message_font.render(message, True, (255, 255, 255)) message_rect = message_text.get_rect(center=(Width // 2, 55)) @@ -89,13 +119,14 @@ def main(): elif event.type == SONG_END: music_loop() - #image of the background - screen.blit(background_image, (0, 0)) # display title information and credits screen.blit(title_text, title_rect) screen.blit(message_text, message_rect) screen.blit(credits_text1, credits_rect1) screen.blit(credits_text2, credits_rect2) + screen.blit(redditTitle_text, redditTitle_rect) + screen.blit(redditLink_text, redditLink_rect) + menu_buttons() pygame.display.flip() @@ -386,6 +417,8 @@ def settings(): button_height = 50 spacing = 10 settings_screen = pygame.display.set_mode([Width, Height]) + background_image = pygame.image.load("checkers.jpg") + background_image = pygame.transform.scale(background_image, (Width, Height)) screen.blit(background_image, (0, 0)) settings_screen.blit(title_text, title_rect) settings_screen.blit(message_text, message_rect) @@ -495,6 +528,7 @@ def show_leaderboard(): elif event.type == SONG_END: music_loop() + def board_customization(): """ The board customization function displays the board customization screen. It allows the user to change the color of the board to red, blue, yellow, or green. @@ -559,4 +593,5 @@ def board_customization(): elif event.type == SONG_END: music_loop() + main() \ No newline at end of file From a61eac1346742f9e289bd9ad8380d6cf7e5e5dc4 Mon Sep 17 00:00:00 2001 From: Sergiy Date: Sat, 23 Mar 2024 00:35:25 -0400 Subject: [PATCH 4/6] Added menu options for difficulty. --- .idea/.gitignore | 3 + .idea/Project-02-checkers.iml | 12 ++ .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 4 + .idea/modules.xml | 8 ++ .idea/vcs.xml | 6 + Player.py | 1 + SecondMenu.py | 103 +++++++++++++++++- user_data/user_data.json | 2 +- 9 files changed, 138 insertions(+), 7 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/Project-02-checkers.iml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/Project-02-checkers.iml b/.idea/Project-02-checkers.iml new file mode 100644 index 0000000..8b8c395 --- /dev/null +++ b/.idea/Project-02-checkers.iml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..a971a2c --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..011f0f2 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Player.py b/Player.py index 7c82218..bee363d 100644 --- a/Player.py +++ b/Player.py @@ -23,6 +23,7 @@ def __init__(self, username, score): self.username = username self.score = 0 self.win = 0 + self.difficulty = 2 def draw_text_input(self, player_name, error_msg="name error"): diff --git a/SecondMenu.py b/SecondMenu.py index efe27dc..dc72b83 100644 --- a/SecondMenu.py +++ b/SecondMenu.py @@ -106,11 +106,44 @@ def start_game_menu(self): button_text_rect2 = button_text2.get_rect( center=(Width // 2, Height // 3 + button_height + spacing + button_height // 2)) - # Create button on screen using position and size parameters + #dificulty select buttons + easyButton= button_font.render("Easy", True, (32, 252, 3)) + easyButton_text_rect = easyButton.get_rect( + center= (Width // 2 * 1.35, Height // 3 + button_height + spacing + button_height // 2 * .8)) + normalButton= button_font.render("Normal", True, (240, 205, 7)) + normalButton_text_rect = normalButton.get_rect( + center= (Width // 2 * 1.50, Height // 3 + button_height + spacing + button_height // 2 * .8)) + hardButton= button_font.render("Hard", True, (240, 42, 7)) + hardButton_text_rect = hardButton.get_rect( + + center= (Width // 2 * 1.65, Height // 3 + button_height + spacing + button_height // 2 * .8)) + + # I'm pretty sure you can't remove anything blitted to the screen, so the only way to get rid of it is to + # put something on top of it. This is a workaround to do that with the difficulty buttons + + arrow_idiot_workaround = button_font.render("^", True, (98, 0, 168)) + + arrow = button_font.render("^", True, (133, 9, 222)) + + arrow_text_rect = hardButton.get_rect(center=(Width // 2 * 1.38, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=(Width // 2 * 1.54, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=(Width // 2 * 1.70, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + + # Create buttons on screen using position and size parameters pygame.draw.rect(start_game_screen, color, pygame.Rect(position, size)) start_game_screen.blit(button_text2, button_text_rect2) + + start_game_screen.blit(easyButton, easyButton_text_rect) + start_game_screen.blit(normalButton, normalButton_text_rect) + start_game_screen.blit(hardButton, hardButton_text_rect) + button_rect_2 = pygame.Rect(position, size) - + + # Exit Second Menu Button position = (Width // 2-150, Height // 3 + 135) size = (300, 50) # width, height @@ -134,11 +167,17 @@ def start_game_menu(self): pygame.draw.rect(start_game_screen, cursor_color, button_rect_3) # Change color when cursor hovered over start_game_screen.blit(button_text3, button_text_rect3) + pygame.display.update() elif button_rect_2.collidepoint(mouse): pygame.draw.rect(start_game_screen, cursor_color, button_rect_2) start_game_screen.blit(button_text2, button_text_rect2) + + start_game_screen.blit(easyButton, easyButton_text_rect) + start_game_screen.blit(normalButton, normalButton_text_rect) + start_game_screen.blit(hardButton, hardButton_text_rect) + pygame.display.update() elif button_rect.collidepoint(mouse): @@ -153,12 +192,17 @@ def start_game_menu(self): pygame.draw.rect(start_game_screen, color, button_rect_2) start_game_screen.blit(button_text2, button_text_rect2) - + + start_game_screen.blit(easyButton, easyButton_text_rect) + start_game_screen.blit(normalButton, normalButton_text_rect) + start_game_screen.blit(hardButton, hardButton_text_rect) + + pygame.draw.rect(start_game_screen, color, button_rect) start_game_screen.blit(button_text1, button_text_rect1) - + pygame.display.update() - + for event in pygame.event.get(): score_manager.load_scores() @@ -186,7 +230,54 @@ def start_game_menu(self): # score_manager.save_scores() # now inside elif so scores are updated before returning to main elif event.type == self.background_music.SONG_END: self.background_music.handle_event(event) - + elif easyButton_text_rect.collidepoint(event.pos): + player1_name.difficulty = 1 + arrow_text_rect = hardButton.get_rect( + center=( + Width // 2 * 1.38, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + screen.blit(arrow, arrow_text_rect) + + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.54, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.70, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + + pygame.display.update() + + elif normalButton_text_rect.collidepoint(event.pos): + player1_name.difficulty = 2 + arrow_text_rect = hardButton.get_rect( + center=( + Width // 2 * 1.54, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + screen.blit(arrow, arrow_text_rect) + + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.38, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.70, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + + pygame.display.update() + + elif hardButton_text_rect.collidepoint(event.pos): + player1_name.difficulty = 3 + arrow_text_rect = hardButton.get_rect( + center=( + Width // 2 * 1.7, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + screen.blit(arrow, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.38, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + arrow_text_rect = hardButton.get_rect(center=( + Width // 2 * 1.54, Height // 3 + button_height + spacing + button_height // 2 * 1.5)) + start_game_screen.blit(arrow_idiot_workaround, arrow_text_rect) + + + pygame.display.update() + def start_game_vs_player(self, screen): """ The start game vs player function starts the game against another player by creating an object of the game class and passing the screen, color, and player names. diff --git a/user_data/user_data.json b/user_data/user_data.json index 225923e..c571fac 100644 --- a/user_data/user_data.json +++ b/user_data/user_data.json @@ -1 +1 @@ -{"Nate": 100, "Checkers Master": 250, "Pey": 150} \ No newline at end of file +{"Nate": 100, "Checkers Master": 250, "Pey": 150, "s": 0} \ No newline at end of file From 6ca75ee3e954fe3dd2179b8f7f38abb9a43a1355 Mon Sep 17 00:00:00 2001 From: Sergiy Date: Tue, 26 Mar 2024 12:36:53 -0400 Subject: [PATCH 5/6] Implemented difficulty selection. --- ScoreManager.py | 4 ++-- SecondMenu.py | 4 ++-- computer.py | 21 +++++++++++++++------ game.py | 2 +- main.py | 2 ++ 5 files changed, 22 insertions(+), 11 deletions(-) diff --git a/ScoreManager.py b/ScoreManager.py index 7dd951a..7a88b21 100644 --- a/ScoreManager.py +++ b/ScoreManager.py @@ -60,7 +60,7 @@ def update_scores(self, player): self.user_scores[player.username] -= 50 player.score = self.user_scores[player.username] + self.save_scores() - - + diff --git a/SecondMenu.py b/SecondMenu.py index dc72b83..2533a9a 100644 --- a/SecondMenu.py +++ b/SecondMenu.py @@ -345,8 +345,8 @@ def start_game_vs_computer(self, screen): while run: clock.tick(60) if game.turn == WHITE: - value, new_board = minimax(game.get_board(), 4, WHITE, game) - game.ai_move(new_board) + value, new_board = minimax(game.get_board(), 4, WHITE, game,player1_name.difficulty) + game.ai_move(new_board) if game.winner() != None: print(game.winner()) diff --git a/computer.py b/computer.py index c54ff82..5813fd7 100644 --- a/computer.py +++ b/computer.py @@ -7,9 +7,10 @@ from copy import deepcopy import pygame +from random import randint,choice from constants import RED, WHITE -def minimax(position, depth, max_player, game): +def minimax(position, depth, max_player, game, difficulty): """ The minimax function is the minimax algorithm for AI to play checkers, and has parameters position, depth, max_player, and game parameters. The function returns the best move for the computer to make. @@ -22,21 +23,29 @@ def minimax(position, depth, max_player, game): maxEval = float('-inf') best_move = None for move in get_all_moves(position, WHITE, game): - evaluation = minimax(move, depth-1, False, game)[0] + evaluation = minimax(move, depth-1, False, game,difficulty)[0] maxEval = max(maxEval, evaluation) if maxEval == evaluation: best_move = move - - return maxEval, best_move + #returns best move on hardest, choses random move on lowest, on normal returns random move half the time + if difficulty == 3: + return maxEval, best_move + elif difficulty == 2: + if randint(0, 1) == 1: + return maxEval,choice(get_all_moves(position, WHITE, game)) + else: + return maxEval,best_move + return maxEval, choice(get_all_moves(position, WHITE, game)) + else: minEval = float('inf') best_move = None for move in get_all_moves(position, RED, game): - evaluation = minimax(move, depth-1, True, game)[0] + evaluation = minimax(move, depth-1, True, game,difficulty)[0] minEval = min(minEval, evaluation) if minEval == evaluation: best_move = move - + return minEval, best_move def simulate_move(piece, move, board, game, skip): diff --git a/game.py b/game.py index eb9d953..1068997 100644 --- a/game.py +++ b/game.py @@ -34,7 +34,7 @@ def __init__(self, win, color, player1, player2): self.screen = pygame.display.set_mode((1000, 700)) self.player1 = player1 self.player2 = player2 - + def check_turn_timeout(self): """ The check turn timeout function checks the turn timeout and displays the move timer on the screen. If the time is running out, the text color is set to red. diff --git a/main.py b/main.py index 6fbdf88..56ed711 100644 --- a/main.py +++ b/main.py @@ -492,6 +492,8 @@ def show_leaderboard(): # Sort players based on their scores in descending order sorted_players = sorted(score_manager.user_scores.items(), key=lambda x: x[1], reverse=True) + for a in sorted_players: + print(a) # Extract the top ten players or all players if less than ten top_ten_players = sorted_players[:10] From 483798a159323f0983b9d8c79c52c2fe8af92eae Mon Sep 17 00:00:00 2001 From: SeaRisk <123013406+SeaRisk@users.noreply.github.com> Date: Wed, 27 Mar 2024 11:18:25 -0400 Subject: [PATCH 6/6] exit app sequence diagram --- checkers.png | Bin 0 -> 82512 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 checkers.png diff --git a/checkers.png b/checkers.png new file mode 100644 index 0000000000000000000000000000000000000000..caba07d05b0b01ecec85b97168a07dfec01bf615 GIT binary patch literal 82512 zcmeFZXH-<_)-GB_VToEOf{NrEL_sAfNeWN_6$D9=6^fiQ5(`iaNDxs8B85m!l9LEV zf+Wcq6qFn!O1^WsyL-27@9*}#=X~dkamM*0j;d8Fyz8Cmd7e3Mt0>D;?xf#|LZK)X z6;5A5p~x{P6lR?Q3!ez}xmm*>w9_SdSyWa7;}{CXic&l+qwa1n8M{4l-!P~07(1Mi$o)%U%*X1cG==+xq|Pq7D&lif^l zGgV*OS|8ucJ5e?{UDt3ytHZf`LsD{Qi@ssoTHAtixxT)>ny#*{l{FO+Mb3&sQ{Yi# zzyJ5N90^NDrIcmC``2&qm3#5nroDeT9)5ZcK0p1?K6=+rCqm8%$8Y~%b-X#Aq`TQe9Au_{P#6zqCgW+ePq9U zPDO_%;0ZgDOMYLe-+zEYXA2H~d1P3)M|!>K)YiJw+GJkiR!FE|BiTI?5|5o#T$ZuDtP7Xt-Y>mQ$;;Jb`|=1HuRHiNlFYn+myw}I462b zoD@y$ss84&i#s^EF<9KeD|@6CR1#h+el;prN$a#(`SPe}zEOH$sna;rXwOyYKW~!X z9zB{>#UE$BS>B|UtXyDF?$JeS==G6v;oSkq$`!Sq$m7Nre4ltumz;GQ z8>py|`aT$7A{-^h_VdPtdvc&jiNr+;nT3?KZ1uSf)XOa_v|My++-Q{ET0hgWIbpbE zxt-aabCppeXyzv{n@aKzDJw?wP#VCGxC@LYpJJqPZMd^{pPG3KrbohL_$F;}i!`HGd z)0nQj##6f4jQo5lTKktqKPF7h9s0Kg{=ToMX#8?bDz~$EU9rl@3EY@{vuCk*Oo^<= zrbz$Y<*fYXb4iz1dX85y8q*rMUwvn!^6R^0#gdtPK-E(;)e+aHn$I6C;0Tq>eY$RN z?aThFvxo%<=KAN^8a~H>vU?Anre`k$uN%JhAFVW65az#Zqxbv z>Y}Xq`$`?F%m;+awSm7rcpzR|@XCE9(HvOd_}%YGG69nhb!`>*g&6P@w-%s-U7C`ycQSqL~wzjsOSb!~88td9^ar=$pVcXA?9KYNz zz7m71l;a0}GZx=<2Yr#ylbkh|Z{&AG-WCb;|Mm4ALhicPd%3T$$F{63ed!FXKH*Iu<@slaqFtU( z7520r?y0iAewtn`{?990Es0JlB%FFD{M>R!1Q(`t9PY5w!0X#Pag^r`XCC6ERJVRSx=(Cb&aE;H;q1p|9=YfA-wnC;yVFYWqDUGi2&;wo$hELxJHLMp&T z_r(QHV1`{=)3=EnCjJ`bQGU%7>gw2(opHXKB{rpFNlCA~oqD|H>&@V0zKBtp?f0DN z(lYecc)raep)&p^vyQ#A>%SN0kL^UVAlv^4U7}L4);BX5ZIzWu;mObH{%*fkXCQ;^ z<$H6y>hw!4fmb9CLvvjn zV*S@QcpSOAn=Vc}Dfq`psCXdtdVDRp?XRb#Iu2jFtw|pH<%|FP3%_teCAe{mi&Bf~ z_MK0><`gIT%G~T1pUVFABq+Zycof-Mtc%|-i{Z{n#3_&o1|8**c_8>#$3&8ar`b=Y zc>LEhTC%Bx<5J#wpmp3>eI+&)T5N*&3wdK0tgsQmVPt=O->gIA=fcqsu3S=66AHzh z1moaS6*l?9YyUe|HsO$@74z@C_S@U|FOpUQ%KP_M_V4rjFFHQ^v=fA=Z|C;O(eZOW zUu@Scnx$~PiFYJFxreh#^lP~1!st~dapzlfGWtC$Avby`zsA^|>M;u9=QEITG;nyf zuM_9TnRPhM{qv6W%*-2}DDpe?M+I4l1P$H&%97tsODy*~rDt|)=nwd8tae@BL6cTW zseVeAJga<3M`EE#F0YMO=f1dKl#m%aW>b0>gWZdq^6#I6Qb(@utUEuLn*8M4X)L49 z_fM{09%%W$U?;b%yDMX%#`}9f<&zb!psFDnZI9o-N7>JXywrKj2no5Wr^C=^t{NqK zkyWF%Hqdl~abkO8c!)UCO->mU-K=z4HIdWfvPtb}ta>0v;xl;^T^O?`%e{N(Q@rww z7`j2}75H7oVl1#2t^P|kTt_gy;QWCc#bCVg$Fr(EwMdQ zSB@7=HsHJEt)E&=BuA+cw8`lkaD$R62O7-xG)On@AQL26&{et}DbKDsTCr~A^tCQE zop_WE-_Y{m+5wJ{I6Lne;tg7ZPD{&$YOHQE`P_UEP9fTL_{)h1G~~SZ5#N7LE!BD+ z;;=KraU*g;QtstLnf}P-!4bdd2cNm~EGZ>}#(isJ*#;IYtK$Lz-y%5pG)N%#>YG55 za$WMSm)mIdj_s#=zO}j5qjaKgA14i;hCcaHpPM1W30pn=MDJQ+U~^GvwT8US*4(3t zP6N*=4J~Z~-eow`(&{!&;gm}?ahQ%KUXrYuIQQKlpH7gpV$ft?k0Rhb2I%3R$=iB# z@LjDvu3#SlpAuDLULJ<7;W-I484T_aDM!LaJk$d56VEBPn zyos8zxME1)CYLL=yrq2PZtgBPFHpj{FR3*Fxsl*V4{%W61nM3eg(@%R<^at_ z$*a1yB__Ojsq!@7M{3+C3HZ6Yw^f+I*IipbNl&MevWFG3bMM@;m|!J~6+4$4>?2%< z%DGHFy5|EvYhCW`=jO^Eu>_p_7knA^18M0Y{D_w1|fi^T;NE$?5he2wwgN^;Yfh;6gJN)78D zNBd8oZzrAoWKLCgifY36ab54lwkgQJ3ynj>lKLx_CpsFrFGN!9G#vj(1WQ>F@WUxQ zIli}+gNWk|Ws&E=>|BKPW0T!HC6E1Xtn`cku08w{{khavABZDQJR3X~$3^xW)$oF> z>A6i|*L!C0Pabg-!5Ad6%U-=8HHZ9QX7^9~P*{+p!h*-{V;`PzA`qq9PoE2fYtv=L zN6^2(nST%9wvXOx-{;aH76_|&*9M+_(OsZ)^yw0kT|hy`w9{<-+t!blyzL(@0;LZ2 zvG3-J>-x8<4&$~GCo|8@m66Qzj|5z{e3}(`y2M5vtJz7HU%N8dnGx!t2K-C8O>PbM669JPYs+QRr5{}3sVr;G?EBY_IQ#cIf^XqkW>nk0?$ngVdp{f_ zaR)1gOj&tb+JOvQ=e3d8sh4Zh=^bxjv-M5Gb@%s;f}fC%)7KIi*P_LbqK7YR~YvyI?6pIT_QFq!eQsV_TZ)4R2%774qw5 z$sk-{II(ja_Tj0af4XZP1Lbc_H+@^ zn6Fpo0TSskjj_=b&eM18dN*CZ-0!hAVT0j$Y%lxK0P%g>nPIGMn$^L@z6X@;x({k?w# zFJ4Z3W$1WIeIGo4YGj&g@)bg5+~xuggP0>hDlEExtC}OU6S9GJqsr(V_OR>QBy0iG zDMG-VcP0+_FJP*CRk^9*|HVa6z6!U8qfmmCLiUZH{KL@MFXrxKLRLL5ys^19Q^e%j z8PCZny*?XYk?Cg^=Uv$Ut&~D)I85#w-~E7E2+q85SL3OX!0_!_H!PWj8EJJ0a`Cmo zx!S`WR@HS;LYWW~+6Ibu=7U>B-`dYdMyJ9Sw(mYYJe1{VIr(l`tTn9K5)^r@RF2eNzX&u?!dfaJq^ z)oc!H-u+OnqRKu6GSmvhkm)F+=$af&`K8F{nl2el&cwjlocK2RP7ce8NlVn?z@%}h zwdNgy*k-*PtZq^%&*Du;&nivZfGU5Hcfh$tsSqAt>-u^Xi|-^eZKSx1W%=B6$p~`~ z82VxA0NFdpsy)$2^<>AKTT-5hvN1z%~c&P=Z{HI%o>;&Ak%B`>paG9Hz zX$~RD1fe+ak|m!YeizpAQ{}qNBYoE#$Q2}11){gvBXJ-or-nNQLAf3QLbJsJyJW5$ z{SWQ8`~#|7RwbLdZs346VQ-5Sst7FWbjdoni9!Imy58)O);rn&uh0xYX}za8ht?|) z53x-C598IM0H)p0*SjTRV_hlW5uCAp7fq&OQ-$x=HKUFBxGm>Uf#+Q3VVRE@J_z}T zA=|*Dvics!)J5M_wemuMS9-vU8R&v@EI9bG!(v^ISIqFx<90R;w~6WJC0yTwOY<1}syXton74<$b~ zf;uun3LyVi!_;(C7x+>Xkfe=&f_^)rJrS{u`4@MJOcDuJGl1t0XhKHj5gaY%l;kqn z#HLHhpCi)7iedJgJU#)?nT6`ujRQIQ$`ID;UW+;X#%$0u`xL;`TaYm z`7T+RirkKv%vK@bKV0U(eEo6*XZ~_eB0r{G*G_6}ZD7kls|H|{frt98+6=)Nhu*7bVV z(Z@R8Mih@l=%|bu!q9A{H^jdHQInq`&5A)5^|&cpHA;VEY*``ZfV~fdn5kPFA;&0> z0OA!Jjf<3U%Svyt^O=u%XvA;fYl@Ayo>>zh9QH_$FJBRB&OHn3eD#r`&$aSCkuE5@oLPRGB6w9_n3f^)0dVoY*!rcZ9^HYL-hC@q zZ*x7gkCUFS6Pk9C+DvltuWi026Vq@AV5a9_5pVR(E&0mYYd=mn6^t?Fw`uB@1gT3I zEX??B_2_4OH7Htx9bPJtEWX_Wl^Ara{?w%saKdYn3Qi+T8O_#il2{^3qzNCEII~kt}C6;&no`BbJ?@o-n0^&@t&5u zA0HWb)GW#^8c(IqguSGpue8V+=}nS1Tey7dWm&X?Jz$At16JPKkvbd+7oKVntKVyQ z;;ggFm!dO)DREtF)9L{e5ot8$R&?pT45`w5TJc2S;KEo-U&&YhT>|zavNk%G*MaLQ z=rHu{TL{cSiU7#f+1)4;=Nrj(9T_yGjdOTUm*kVEM=O4DLb5GEeov7=l+jn|J5OC+ zcNf}B)YjDFz5`Oxd+i$lhJqWuMYest-|<5aj2ilGWYI3JKw^H(G4zd{WQ>ebVS_ zxzM0VNU^7PJ*DI9_KkIE&q1o5)x`-j8Xje5X`>ZEJnd49O<`0S>f?>#x&nbYv-)V0 z``k)%52*;m6RqTY_we0F(Hw; zs|I3I&&$>E!#tD=CGC;-RGMxi3h=>$XlZ>#49*Rm7Nof0HdDS_2&qEvZH3qX=T~c$ zm_5a>La@9OS!G!a2Q8jw6FjHF5zCNab4(yD5U&z=u%xJu7C zHYEnRfQWaJQ<#y38WX3O@U3R+lax)i#h|%gJe@T#CXhAVKOvDO)7)}V+9q6j{KG1xW>5au zTFT7VyL3X2i(BmSUfQiPD;^nT*B{`boE5&+I+Ob{PoDYOvx%+okyC}RyPQTeD8o6a zT$B>m$GkWc(-?$4=Y76&xODz8_WjmMqi?TRUQ*I~%B*}v72D^pu+tt&BZicNF%lOi z4#p-sZ?t)`eE(ewz@18R>IH8yRC{TlC1V(Pj(WvzC=-kij9YoMl{CaX(sR5mF%38C z67-l>+>N%>pjF&NyaTz6>xRmPVSo}PzU}6&jV0mtS99JSnE!YqHi8)eU5?b)Z3w7) zSbbl;w!v(1Y}%^j)$TE2ok-N1#h*TZo!&W{yH$!n4&%bnUSU zlxOE=@Z;>tf+~%V#{KcM6acd2lwEFnSmxgPEzsjs8=?gd5E7u^x&`ne`CMX^?wM}@K@ z7O{=aPnv_D0DRY6qq0NWCi+Wag;n9Lmpo#0v*1xnwJA#Iu8fC{s~vqY>o1Xf;9r}d zk5Hi95mTac2~VvvGGx@<8Wxc4!x)4MQ)sp81IFue$3-r-wnqzVhaD1}ZV^Q-ryn`=;t zoz%??^6isRmspqyu0c&D@7iZ0e$Bi)!-wEyQ;jlwc3X|lPuPSwenc@@{w;6~lSxEN zVt9;fwnZ&H#fd@-oiqVcuI=j{~+c5rx6qx4%6>Lk!JDcQ0Ko-pMU~;!M5s$EPi&Yq34T=kYG8aRNz7lw#kP0_VQ!fT2`S^0#aPD%pZH~m}Z4*g2v}}63o+@j2CMT4U1LLK_eU`}&{I*X7A+X>J zfheHvsD_<4Aqq$`doQTEjU09BP;#RX;V(W!M`9tDl7B`?hab6F`GUOpAv*0|62UU; z$j3)(PtK8zig`-qWsFq^+eABN2fbV0)zRytRD+^i5UJOueNalOlioho=|x8hY6H$K zyZ=nybi0*G+hbg{^vvjI?Z!4s)H8lV?C3T58kGK|sLM_D5m`ly(nOo)U0hS;1tIp! zLacY~yx?u*jXE!D#H>bO-B#4*;ZBomCr)UtS!q65O=4F2h!=1h(R4EqA-2>pJxK5t zsn?4Ucwb<8QJE-G=l^ooc#DT<-|~SVocZ(%K6KgycYU>Gu?ROtctb~s%sDtIN`tad z@kT?-oqI8Kq&X3cy4r%qb}7fiv3`$yPD8B1Tg$JvnOB-U$mp9alC)mJX?pcXJyb*U z6$FM&c~e3>oX>QGi&q_JNeX22TKsaEKxCHrXiX{gI=n|1bI48VC>xhHNj{<#-tPi$ zc-D?N6FisipKM4y1{WsN-VH9uQc94ti@r}v4%?K&rb6$R5AWnf{-C~X3#*LVfC#?* zU6cU1b52T-yN!pbs`PZUW_DS$ILqjKZ-l1ON=IHWy`g(mDs(;0Iv0`W;=yYU5TW{(WEqA}Zy)2D3*+aKdpJQw5xd~JYaj2-LJ zkZKIV@lHvojwQ&3p@aEZBL^DbMc#08`Iz}KVy)leYbq|uyvGUl_5D%vjiwAK>G5H}ut9MMjEgwE$X8Y)WQ;aT*rlfQwp}5;|BkwYu3M~9L zk;vBWBPB|C@AG}`cJ6QCCg5{7F6Z4{(9L}37nh0JC#HFDFJ=!_Yw_MH@K$zWJurGG?=s>o^tD z1&RRX;O2a*9lPH(rAlBFvB?az zsMs0K{m!R4NJ@E{b0(D#Wj>$I`aIGv8GqukxnV4ei`k2&lCq{nqv>moi>mx5dAdkl zA&rI&STz%??(Cy>XCx@-COrH+Lk>1F$ z>d}#+ElBYas-@X)#_u{;vm-Mlb4cT%!ANo$snqJBuNJ?2an8K5 zQ|OM-lltyyFFpEoXkUfz)~P&Cdpua*UexOXe%BR6dxg7}@dEm9gAAu%j3#W&TfX{w zNGk@{^xAK=Um?wcQ~|jeQXdWpylz_-xqs$xrB%z_1C+haubxy`hz1MvFX|NPU*9woDvS2KKx$fiijAUIxZ`Iuy7%DiOs591 zsznEz8{Kc~h=jEqA19IYixmYr@)v~e<+oq=dBpXcGoJITb6>X8-PMS!J*}aOmxHdm zpEtqB4-64>*9QPxKE+Fu5Q6U(!Wb!R+ePs{?8~^VakLO7Erzk65eS3p{Fw0Z)Y3PH zk7vs~Xm3sl{<#Am>QG-uS3_18#)jHC?>(*^ z55!elnqq8dfv9==GXVCL*`mqFa3$u+-VWJ7>#s?@6AfmzE&7V}S5n)RvKN{&BsJY5@ArWA`x8Vumq7jzrtMr@)`Y#6^Dt?k+iN^=7>pErH_?To>5_A zw(tRr>b}qA9FfuHiT#VW9=uItHu-2wC^;kaCT(iVk|qe(#Br@OkXgv|u7#>%rb)aD zC#PNR3pPyd<33bRAaDVPe&qtHqk(1Y50jS1UVqFqu8H%565{xg+~PfgtU=n8#Y*st z`vLzD8>=R&2<}xxI1L_pfB=WaZ>vlglS0*0q z4suLj$JBBiT>4f`d_I4_q?-+B&_h4bm-Ti35tlqEh`K?0E>0nzxte(TTj}dRlM?Ce z35QpN8taH(J<)(o+wJ%ZKz##HFXn>vyl8{Q*56 z{uz26B~*fzRsU@ImyLYw2_IM+p*ugV&3q&fA(e2$ztX$`VQ7FeG7%o~H{nN-@%&Pc zU5{mYrs>SfwJguLNl1;&M`GQcD8-1@gZ}I|0$XeIxp% z&N-Mpl1(8J(lgaw~>?gpURV0S)3QeY^ zXXOU$7Ow_@nu689%W?oWz1qSPF0|3Wt`|>N#&U*Ur|<)NCVv>lm$6$A&}aU>1MpAO z(*({RS>l%Cpc0pr@s|4@Y}ECNf6^pN?&oq;7gn=G^2j84gF36741vAki!Y z_x!5geTWj+nrHf;bq1d7i0&1?ZMm@@D|K&z1<3qt0iip9m9P6d;;Mj;KulVm2zi;%6-eP_zfIrzz%b z)iyw`%?dW$_(ggQRDYGE07__h_E_52RV+!LxjVPg?euZUIn6wvxee&dPe71SQI+m z`2>L&dI2~jsCC2ua{tmabomFfy^H};dw}Mz%=THV`mST++RSLcg{!h76VkP@tc*M0vw{V13Xl|i=ki?h{4%bIIZ2rq;0?;=n%~lKF{5x^@AS z1B1u?{>DlD|InhaV`OVib1ouc3ZQ}ikyzvm_Imhjh4GJ(xMG0Z*e%NAOvgnYdoak` zA}&QK^4P13_D}I73bNoDB1lFvZ*g>OBirISX45UaoD{!q16X%^yxexGC~afGE2FA% z_4(%x$7qp(aKP2Bw${c&e+itY>NoMB!?ebAlhf3a9H|Q#X`G3KdG?rVcdhKDmiK) zcsV*$)G)$^1BLc*uQ@M9$5q%j%PGj|%+f{>3VC)S8RnF1-Xg?fCNkw8(e;}O>HTXY|4-6j#Fx}41n6s!3l z#w|}(l=m;+$uWGAIZ5cwLbes zBX-1SK4zTEzYh1^SA_G-+lRb6)2(IQ_`w$u6Of?)!Fw#1K#Ju{>=9h;puK z!r3k$F8s*+Mk($xNwnvOUjr7;rZ(cx$AUO4kNhCqX&y8tl%ZOZFBXL`NpREN4NqWY zO>M34_2o$vQR5G!q@$91Xpz8%86~G8;^`3vUWLb00sgX?aOk?oU zE@2pU1mP%nXj?gD;4tz}mxRe#n>fM7V>w*mgHBJp;}r10Rif?T_s~xuLH%!k*-{6| zJ{@^9v}eZ;$=(f6;Zd0y)TV13G;;z~pZ4(RHQ0EP%Xb`x-gf~}YzMVuCO>HJpCr%- zaFglq%$H7NIVtsns4o+Q@5e>r3T07bhxQ(n_IaTccdAdc+ni(KV}ks-0@fqs%^b7S zWi#Ds7o|)PD@8~r{fm@3488Ej+5b>Y0!KUhU56V7({&_8DM^WB&*Y|l27rX2)!z5wW0o*y1-w%4h# z>z+Kb#Z-4eUKO+FkvpQvd>C<;ae|O(-LVZ7+`(h4I|qdYnaIM?nK}iIuXw;$OL;C` zNM=6`oiR_@o66kmkY<%-TT= zNP87(Y{;*w$P-kZapa(gyt1*jT(p}>yb}~j#^#Qtb`a7|f2{I1=Y&j0SY-#rX%NR! z>DOA=W55BHp1uT2u6QrFNRL1q>E*ykVnR zcH%Y-oWlW%{2s3(UCXbzN41D}0f&e<;v{V`GU82(y`%S;V6QvC6q7)57Zlp`bVDT6F)28jSqitL94p=h^uG1_ z_irwkg68N~sz47Q(IFEAJhsU-_jz<1pGe7IA?UC=kd=Eb7b@Q8E_u}iX)H~sJaOmV zL1mX4_~>BBX0dyit)Zi+=#W~HdWPOk|4M)?Ok*Y7Tv?MY#@RASxRUQAuVp`W^)>kf zbTfkv>=jh@+M3#Jj>rC`f&9P@Ldjh$+aZo}QCk)Wjr^_!0FgFD$QwaK?;oX(?Vuvy z?GL4{?qtJACPPL1#7~}aHyxG3oP{{~CD3{+>^&790I!*XoiZweT#)s?g;Iek?DOxC z^8Ak;3N5WyrUF?V4_ZQ{9B-QBF>wQ|SmHmKCUjZ)o1-64Jb?V6wNBj*dNZCl-Tb?} zdb-^kvSQhL4J`|TCIjg2D_6||Xd4kBS&vy;X4%)i&5ICzIJJFW@ zXsi*ycinsE`rL&|0tTBWdaU7>Hg8@k=bLZU!(NXaDL%Ix#~ z>T(xU*=C?v%gF?tPO#}Ps7DH<*FWuwckf{?Q$K zSP2za37N!z+GluJda?xtS#}J&Vt$n=J4W)gW(t)_B{;_^uuKt`KyV2IQgXgyiI2KP zd#sH?v{A+|yoXt`69EWx&0<|9;YH^mon6p*YLlK>mzNeU4fJQdm^-Hn7{gRXUPJB=ywY<XDz!M@!jHn-$H%Y-+-Urj^v5=52htA zA-%s$F^FajvNDz!A+z0rmGf>tR^c+N!qqPU-QRhr?%)RbZ)`fnIiDuro39TYMz+KV zTP=#x^^vZvSPPkZH$7e-ij5QKS!h?pisGn84%x``xX`|8DGoIA+gA!)U> zWvRzq2Gv(D$}k4o2FP9!GB02Wbe&!FRvDkL^(BG@ow37}u(UJS)fHXaEs(}`C}M38 zQDYy|3X@xJjw0PL0OM$rQ->Tu3zkJ+Ee)OAS@qp80Ai0WsF`Cks%@y5EE}O)?vp7_ zf!qr)X_vV3?!69GOyE`q4!wr#{whKYJ=kM86o=;(tn~eGJ5m_z`A^SBe4wdQ)7RHN zN$f2I1zI=AH5qs?&>6#kbVK%CS&`ma3Du3XgRnaNk!-_L89SN>VN#B69gi*heJN(u{^dH)?XRB4ghaqCE2chb(K=fy~glVF){JSpmn}6&sR-w&~H1l z`O?X@ixYI_8-8mu6$6x;B66}Zn*AN(6k<^ykEOVm1E#hJY6R`3yXbZtZ{#JUM_KR! znAoS`=KQCS-Q0QoR+$S>iwIP(Tr?yJv%NBK>!ktNhc-NHPZf<_bEo_c8?4O-ikU2i z&WU?|2=G!imI$*eQ~?q%^K3A%+BaOd=hXK~O+ANq*97N4;@AzX&SOa<6W_>f#Fvnc z;-H) zztC+Wv#8Vsvyg<&Y|Sp4f?)iZ=WvX5?rnx!hQQg|23CTXFj*}+oK^g^3m9$*0bjHX zzX$IpQlUlK7NF!q%q~shJMS!ly0qAZ{4Jq1MOFE)=mIG1kU6&C~uc zcY84RSBckmUIUN z?Jn}0M9l8zZvEG)`bs)vJ?I%H7X5EBd!%>@7~0X8-^MldIq?@KYwg+uHpZ6Kr~leW zi6ebazDk@adQ>E^R4BU&%Xw^JtG--`R5C>WQb#3JcJw0=QClMOJ78NH4FesT4|3xu zph^dvLPgDU1}91GmPmb*kzbqF%mZBC)@h)Wy)fu(Mh~ zzx2BWg(?*DDLd{mOLdnwYX}v?1fKL1?WXT1cdWy02<<@kp_(Vph*GHEA+}G6uMFSU zcYuK{A;@%u2Yk_v>|CUR-i6Kr=Bjqw=)uBho#61!aSDo?2gn$K;`N49B&lc@BlHSR zy98KoQV2(&AB2-_>fky50%m-I=er&glVa5#fvc7ggGQp>A&kd7hT*TB`uTT(3pIJs z*+b(eD~LKYcxdnSpS#Zm0XqWhQPVf!&I7c9-*}@4|Btx@e$^DS)XUY>%1&%3KNTpT zWa}>sFIuMJ@HMNS6@2+xS_(CGc z4$F}A=!pALP9Na?xx>7g&#%>_5*RV#IMA_ct~6&+?*L0YnzUS{X_}q`^6p|XI~KgW zCO1n2*-voIGbL6Hx?_;0lmT65vozUd;l%25g&b7Wx-xWEka;fM$Q%<;S|%Z*A&{OW zY`ak!G*2;Jv>Y|2@PaMh)tajILv0BW{b2M3hH`3(E%GJsojs5_nIRcUFr!%WVJ3f* zm>;=a6{FK#tKoOFhSotxU%D4ET$rHdnFU`~`mz=Dnq_cJ>QGu)qPht_Svl4kdM#Yv z)0uT*8LX+u_KZ_e_(9d8ahh6@499Y+H{{f+xfL*RR(-=Y_cP5JpZMiRSVA?W&HZP@ zCN`*(RmFkKZ;c3uO!wfcfJ~4Wi<;C%+&K|PHpDdx$({B{Lo5?cH}Ja&^n0|hFzdhVI|W zlxkF{80S86)+>QH675@P=c4l5qmZ=$L}=%G9Y^5%FS2uBjHagiiptdKnpDV!qodBy zQGKr`ReBz53m~$9Q<8psn_2+8Z*fWLQZySTO)B71n>6SMZZZSCCH?HIY5OI*rU>%t zTpTF@9`_S~N!Q~zEF+J=Z*ski1(@iloR;oeNFYtHN)MxTg@{$;k^$NN_U~$mveZB= zZ>veVLsfkY4iCH^b1#WY>H}oN_d=+z2!)~1+=;d6*THw-kvc+SUsf27SCb67&v?hw z_mj~yYJ#LhxK>!f6B$od z6@Bo*Z4ZuG>Ry8_Un`XOb_-0giG~lHmx{&HZM6VRVGYiFf_C;xTwr>4!j(1H!VuUP z$Nhl2;1+yzrnnQ-PSAfse3x|w@|%4(QXM7OpuGhTgjb59W@FV82V&Azqyo5;l@ zwX*|R+hGjVh1+f+3h?mkiq1RhPa|P)hz$xin!6B4Ufg*Nxzfe`_fU1Xl&8%i34>fr2KqJSfcmg-gnM5X4pEtBGKZE?Aua7`hh z{|@MJ>(zD^Yot3E>6ti5`#nxGEhe$^}zKTcn@-JrDy`w52-F=&F_%jCWAA#9*dD7vwtY*1m6}+Kp%Dy zAQ+}u!NS!?{h)AdI~&4i0dB1rIwjxR%|<+JYqgAc3uuKp8r}Xe#h+94%%202`Zh2? zjc2#d{R*t}A+r+19!8M==CAQJ1AHRD>Qu;tcmEue0D|9(|Eg&v4ScxO z*OU`K1sh~e8|gH>Wa?KA2Y>xW2Vzy4h!f1A`3uI+s)BHJw+Bz+e*Gqs91wk^tqK|D z_5%+G@V-FsS-%FJR9M)qd}@WD)xr^S@-_5%M)9SHAb3?;Y$a$Vt)P!B9+7fD$G^r@ zef%bs`SBl12)zT!h|gt$<}dzJPcW=a`~0@nN2Far7*QH}5vp{nmL$sOtSSfmkj%^$ z=0fQb?wuKbPieCM^0w`?Ai2uIb)~BD#K1U*U>50qn5n0-tvJP~fEwvcE3j;<)$oOO zxpqjcENyl!!o;z(TX;yZZJM7cA{Z7Fkna229;eBY1j*lrFiqI5I?wd?C0&TR6eW9T z8<{ColmChrLBGX|Ph@_%6c>Q1ukoz;0K-fkYG@WPJ|3?F61%|p{&+TzAZgV}VHc}P zFyaFvMaK0M;VqnNewKkuC|Q;J-#~Us&&S`_??}D$Jq-PTT~Uk@-u)=e14Mrz{E_Sn zAX&fi4KwlS#`e<;yO4Hd_s?vY&ou?v580t_WOM5z;!XbtS=#EmxGSIKsWuK(P*)QN zFI`&P4~Ua8+ke8_1vxPOBt-zH7W_Ej=EI-$D0KaL7ZH2n7;?V|UC4tr+31BlrkE&n zSA!jWCOG0G$c}&IqyH1`^>mSO8hAe zYiL+8Qp_19(D(F-Ul1$Qi{WchZN9QeZC8q&JWtbxqCOdfyFf2`%j$r{|7(+ z-+8Dnv^D1=v>*Z^AeG?A==Gr6L_#IZNcbAhYNhN!*zQjMXVl9K~GYa{vOF$Vu4kMfRoKL8J`_5 zfNDU1yiS0o5jn^*gJhz)NI^k?M?Cp2B>^N__n<5~9c~`IWHytDhqUBaFdVf`O#n&@E)3e4KHY-yN#&9}G8*VCdpgBuPeQIl^?f+yc9Sm+U5L z6u&#^2dpHXW-C5bDicoFL}4iPJJ<1=JBB}?_%m`rS`vAHtQ?5suNHGiR*fVx2ok9* zy|FMD_G6A|4cDV$@rQXxP&$4YAfyk6lDdpn=wfLbk?8?Qb}zL$no#%(%g_lesGf)z zo?$BJHrJnK{o(gRj;Zc2mm*H?MFRpKWPscWH5mMI>N$`x?dc7G0GI%qY9EjfAmZWd z7eIlu@WA`}LZsWC`16(V@kdJQe0Hi-HK0Hiw6 zKIazd^Iwkr5i6)n#Gcxbg9>V4V$sPlneDCvkF)iCV_u-^ia;~J$iyeV1`7ZuCI;*e9&d{w&)7SCGd|KDV4QTP6PI9t}+jaCs zQ~B#NM@3ia?LcG>vdJIa$;Z~=1x!Cs58wS~m268{PeD0!_aK#X7x3U#u*h?gbhdZ0 zYuhuhx9=k3UJH(&cykq|&mwX@q)D~!)aQ?-E>>>ab+V6@f+}_j(8wa_{O~T zQ5@;MhKn8T{IC!$Hnj#orI;US$qo!B=@je3t?yORdi@3-V_a3Iy`gb3E5#~qE@`O( zM$;rM9b$>T!KTS~enx*9dgiUvvf}oQ%hzk@yjWYFv5OAR)@B|LN^8;3(l>!okWOmz z`{ngoL-Yn1#GO+R!P0adV7iTM4$u;OG}4SIdxOhzjw_sSpLzR9sLCf1_%Y`8H)LK4 zAj)c58&LL@_z@rv@R%T2WaM#`o& zXsccB_snJ>ScIj#O2xL&o5Q#wEoJ)As4+x~OUW%lYOAyZVBZBJN?9xt?0xUd0S8RU z4=5Ujd7b#)&N>cQt=r7kwwFJem|^D5bVJ%_ecz2mfrnUU>K%wQGJOC>x{MQu!`HEu z^arg_u{{gQiy*!#MQ_0L!BMPBIOXBY{P6S{md)Ai%Wg~+O|rYXKm#(hI~H`zdKn0$ zSQ89vTAkFc&1~O|50vb>e3kwNPslWfBbKJbXLpRO0m-x_W)E>`b1FKTAX&_DMBd6Iw-^ep zw(NU%#EIM2!TG$tO|=-Cp8c|0*h(%}-sIffULYov4d8v=D6I$?u+FQWOi2iF#CVi< zXn%17rVIoPgWcJUoUyGp9bNXZ+|EQsmw_htNCzx80^xt1%Xq1yfE~?=01~%!hPZms zwhYFGOaVxrFmW`x;1$B){q`1{gkjPMQQ$p{ZSg!o)CN&q4GlRp2g&al_F*@SXtL9_ zOiiQ?(y)G&b{~7HbUst2P?U1h*-bBIx_M$c8LM8R6mXm}O?bBB%B6tWQ0dKL+rfEo zE~PTjSlx+?yb#c5yb~^NO`3_WZK-qs>8(@1IYmDhnwyv91>H9K!k0VrJt?cX(2g-l zn^vf3Xih_?Jn3uqxsxfAFs(i@6Dm1(3(=J;3oBq#UeXU*HpTQfKhj%V2c32ApbqF( z*6(C1*|ZF5Pc`}KvSW6Bv*E=!%WGrwzkT?Eza*Epn_KzuD7MXV04#p6`&mS8GRC<$sFwM@q43wZ3++K(T$;8YhZF<6_;gX7UTlf=OW_CR$ZWAg7CQV)TDLDsRSyWCmyta$d)oWhb)}USYsy8Y|A)OdkEgPI_lB*76&Vtt zCCV&gEK?CJWS%ml2uaHvl_5ihrAS3(CUfSQP?;*t#>|A2ijWK$8dQ3ZljxmkOX#6{+S6rNiH3{rVO!QO2o}891)3s7(9B0Dh%gbTbULE)Bxn&e8rH{}ucF`7fQxsmb_ji3|(5wN8RzpHYbQ z<>bWh+w+$B+gO*Mf~zz4ZTMX|S_Y+rGGIl(&5YHsC4R5IK8^AW0*Y#O7j4@VjY+zm zX-<>G6?J!P)MzFuT-9~qL(RcS#ll(hn(+P0`8%Yz_c>vAy((Bpc_^`kN<^KQxxe3V zP^PHj)u4LZMYUZYm^vafl{gBvsQEpY`=z_wVj8-gGL}O>q2ETw+d!tV&&KksJ%g&3 zYBNJMN3M}crGQ+O8}Wg-5T%T`l030TIq5}-ImVAfJgdX7X(`3mttA1IB#;pR*L3Ec zM0o>tp^-v7BM*@Iqs5a$N&7SI1>K?VSQztTT!FjfQlaS#>u7cwd%u|$ZWPz0UxM%8 ze0h#QbYY!fybbI}>M4dkSs#`+U|^KRR;7_|#y3+mF^?Uf`~+6ilGEIHZkCd|*(9TD zb<4ITnt~9cEc7Wc|?b19#j5+Kya=vud$0dDlxAUQP zqK&lg`<9`k77r5waZhW~M()7o@Vx_2P+6Dx-~-wSYPe0!BI#-kkh}vSaM#sUaS!7^ zj1EDNV%o{uG(YvHZB1mE!$Z0E-0n2>5f6gbGqNjV8Maf8?pcpyv7DKw&LSyWPj}ep znPhros(FveX7t#e<(L@XaM3h=D@%u|tJ1pCm$u|zT7bh^xMRSYx#^#Q7!iItQ@00K zF@@>5=Uh}&l-`u7T+OW*Zz02G){fYzre5!R)a;)6U0HM-q_?>-^72|eVmPk6;5^dV zo6oiDgyC`?))#L*EKQ`_@y@Lhceh60r0&s8V*)Xpsc^=kO3GXQ==186Ztsdo4Z7@*C-*G8Okyq-e&To2@~jtwEr7q2 z+Txq@6kiM)c2^HUE(hDDo(5yOPY`KRH^96;6y6(8T{$g{iGUdkaqFP|H}v3IFLB6d z-|wI#R03{gM_dT*te>9BS7D(fr3}9**`P=C%u9*zfNziIKa&PE0T86Ertl z_ulEG@`r;EJ~Zry^Yb8wkUu*zl?Io;$jHEy_O0)rkp00}^YHQUps$DIlU0hog?oD> z<8BNdrVJe0$4>A&HiG2T1mbnM7d}UC9n6@|^Dhuj(vM=H5l@9+#ciw#;#Ck+Tn}26 z!L~rAqZhU=fg4mM{D4j%Yc$61{a(s|lTi_!*DVy)==gPTjyFT@u)L0o5xiI=OJ8+d zi;f01g(XSlb_J+o`=nE>zeZvvueUpsK;74BuYt?032hO80ABj=k?@YbN{srjyg|^^q-J3Tb1Mlr!|tYKoKd#tUU_ zx){iz%?@36BR}U3dvl3>`lz*d{=7$-v}p~q{=2MbrkrEVcjrq2 ztqK_M`-G!oO-c~pl2kJ{b%~y4k7lo#8eH!PI}M!ATaD^?7MlIIs(JxVqiHIcon}F; zv|PhW{R^KgHW5DIf}M|NU0HVd*Z?_2=JIsvSXF7es>=<6$;XV1S;1ZY4B$Ye6#BxD zO+e|!u4im!f*X4-8h_9v5)&-IPuZ&iPyp{A;6)%&zu(G5oGE{4vrIS9MbNQRl@{CP zXCs=9L)Bjr#JywBiqtC__pM@ff-xz4zn>}e9m$^B}CzCm^YDprUB+ph;c64 z2v{o)$%llvBu1V92%;^NJ}+C{U-T_$sH!|Ow_yV)Om628!Ncp_rxv~a9h!<^krO) zCMmk!74eog%eJ5zB)-yZm;9~ixBQez1E7cwY7(+-K*^~?pvyFio zYJhJ*`s<%Tq`^)qo>i4+ zgaBt875BdLMDWu}p#z>*NOwRi=@j0eEC8g4&m3e4a4qex{{0Mdn#pgo0e;c?{5~E) zb8>60+|oH7N@GKnw<5qHrx>p-jIez|Jx~wXCKemJGa&w&c$5kSlhuI;r}vkHZ!slEp%rJ@9rE=GA!q zp!0dSI8tjD=P2ghs?}p3f3Q0{Q)>bRG9?+AOaHGf>M!*vFKw&{B}WWJO(cA?SCxn4 zXk;pESP9%)3K*`lHjuQ@((~DioY_X?L29F ztS#?0EpsABwovS<#C<^a9YL66dZu%`0uJj}YOO@A_KBwc5MBqk)=Gi$a0!7sg`_YQsijIj6P1h}Fvw#*?YGBvGlQgYga6QVZo@-Azzxw}7+`%dIL@ZSzXW?%O;Ss!>h)7=5 z`e$&^YT=4&-xWgq{0ZPty=3Kr6@FU=f-~W>7d0MTUj1c}cG$xKOL0zS6n}tX=Y!!r zIw#hx@$38j#=eMKQF7$>PcM%H{*eXwUG{x|#xqj}KV0QtAf;`xd3NYl*$vkrx$6fv z(L*Q5tvS*plwM_CX+MDcq#*2CZ^O;R6$}sU0J=pG&Yrk5)xV?mWB14?4fISKKBAy1 z3IKSr#H%_~o2au!x6|l>0|Q|_XtIxMUh1ifnQaBl6trZ#wEZ)Pc5`hYV~i;Bq9&Ps z@c`86YqCP=)Qe0Ya6NzV&osa-Hp~_(TRusM#)G*N*r{ia+P_7)z@~I5Z zP_YEYm?c7^Q;I1Oax4*}q2M`TBkk}s;#$)=`t!VPGR)ve1Gu6KW!0ZmkWzy?O(VQz zppcHhedr7QHCe!|&28*gU%+3_{(q#rULn~LAH&iE zQPa;L!mY#V>){GR=^Kg6lrC6U;Z&pJFlk%Vs&`{wT{>eDg;}J9i|z*t+e964kplbx z-oXzkxG9;{wz%Gd(<#tgV=7UqzhTzot1sm;+nKtNJLK#$`0ci{n5G+dGw4Td?cDVl zFOCO76(Vu|Lkb`>1Ek|cPNvbYm1%dmW*=KyBmOhr_aFJq|F$Uof5&e%Jxg!X`Gvby zCmfXVj#321?Eue?)Pw{0{ulnFp@`mQZ;Wj&?eL~x=SU2xOaU%pq4aT{eh#>Fih(4G z1Da{w9HgBjVx-eGVh z{&9D!=5R+MPQ5iR5y!^eVT*52;#@Y3g6ph)#`f0Qd%XWDR}?1hm6mWQ9C*F7?FQIr z=HU}@4muZl)iWLuGHR1FT}@Wi%Kx}&|MyAa|1xgMpNL#Kh7n+C5B8n8sjv0!4uPHwCQm~mCDj$l)O zOrzIGTr_XQYkIKv#uS3ELD8wO#t6Xp7(OIyhqzyHyY5{5g<+KC zOxwTe@JHcaCg^@G&cDDe3eX3^Pw4J!LnC+oIywtJPr3H_;AgasOBqSecu+}zU^1d5 z+^v&i$$h_egFk+f9#0fn14IA367Pi+c_#DwP7;4V2oV%NbAVe7rtI=K2AON+pgxOY zSo=}(I_%2UNWeDxr@?V`tEBq%MdW7M;L1lub)Q$#@R3V3j9F(A(P|dpvxKocfsIS`;+o<#$EElz9W@2K(2!AP4n)P0|LR0fe zaQtcOu7x%WiASxeN?(V<_!m-ld6-#f1BW~osLEzPVv6&ed2TKuDwCuxX$W-o9P(E~%TFi8Z*uB(G1a@8ZSv zlOSy}Rg*Tzpn`H=TwPr~Iw3(wgrMdK)kmS;+TJ)408745uEL?$q6PdWbee&V-0BP0TJl} zec1qj*~Jgb#3{i;E&y`53n<8=E8l2XkP2^;vzy8sCI^spc|GA5ca)KzkAa<)YiOUQ z2JT?#?zNl5y^abA^E-optqUpE>{na{aNpQ0y-1w0;tMyFrxuHsQ0#z6bOg%*xRhXnE0ZLaC3I&zKRz!=S5P?-7pBH;>0UeJk0v~1}H@49x9l>Wmn+` zych{=HU!^!k`n}*z{rKI?qI#qZHX7R0}#mA)RZ685FwU+lR5JMf;F2RautAUlb7QA z_9_A9+&Oh+Ux39>sRBr&A<$zH&CxjWq})F{7}g zmVFt7Y)2knUtf0+)h9_Af__6-R8)Fl1r*xiC{1N?s{eQmEBM|I>je#C?>37RHA1ZC z4xo5q;tp7w!&Tl9GY)4X0c&RrEWL&jcRt&KU?QOPVA4wppy99~RL3pD#`4K#p#%W1HGG0>$tI5`y@F}EtYYw)d17>R;a zJ=1E{e}IZa+5_yiVf9~U>YN6Uf%L6MZPo}FI0!$)hGg2&c)zW_qZ`f3ZGsUO;tm*k z6BL+M<43Vx*AJQDEWvy*57lJyuCnWoIp#q)q@}HW0V(RcAXLF59e6$K!CS|V=jH{( z-M03wWl>@GwP4@Ma(+^tO}85!3atL-u`Po8UOwE>s(309&gagTB#AyD5GHM(d{)a{4~=HFdN`Xq7^<3~;yXUbETQDb)`UaUTn{a3h3vx4pK0QUjXB)=Xpe&K5Z<$5Zd08OhB0 zF1&35o3bdXtDC;S!xIN4Tb(orxS0eA`WHBTFO|}8Myu?@r>Ae&zw&>$Q8V$IX$V4l zG|tH!e_;vH0^+sY{U1!)pKkyQ84X3i%nC$P%Cx^JI;br~={Y09y66_*>_AjFrTD)5 ztpBHB?_4&8abO9Tw$Yn9Px$Y*Cm_E~Q{23T!**$$U1Fj){z ze>`RmZR#aYD!&IucRu?)8I7a)btE$NN5T zUq)P=Z1+f!i0^eLtl-6L5m15UZ)^7nKL;!JuYNYka<_F$=zMM;DuXmS#tH0U_D`3# z$jb#708s$)*yE(uL@8Oq2=HVCI!B-yh_n7v_bm@O8z}{?_*dq?bj-Tc%4^7;IT$Zt zp+a)BVBNqeRI}RA#;BRc*p<$HDv7UvhxcMh|l?shWs%Y?)w z6lFeIT~A3RD^xOc@mUVUQ$F?N*#l2Pk_TffGN_Ay)XlCfR(a*~(Fdd8|B+@U{wTN| zu0kE!y#7Cbb)T5AR}_Ta%smN4ilj$X%@nS+iQUv?ZmIoeM;C2s?%!ASg^L8kZlEH` z_L}O;y}NRz)ceWO<-2lLiSIJ4)X!cF?z#EZE(($3?hsJ^{cN^GhnIxkxZlk48V$V( zE3eyGWpxamJY`pQPV{-)HYq#wBjHnV{bRF%jP|anH?%jBC3L)^is_DU$@hB7he(iR z4_IwS>D(IJ*-7&qp=EAu{kd0UCsKo^)1xuKL)L9%81y_@6eRDp+A~v~d5d=YEbH~|_9FU@ zRS%!h>lo%MKoen;Q-vDIiGfG2%ea!r0v&7*_`l%aTiWc!jh+!X3L82_ze*332}UgX z(pzD-nM*v^?eHAjt&R)F{0k?!Y+Y+9`s*r1=sXo~NlbWsC~6O!GN-r!Ot; zB9(n}YU(H((vSGYTmSe`0e+=>B73URZw@L_5{~38bSzLW`hFXeW!?{Fs02fwxv7)DrsK(Tm5b-|$k3^>2lW$VczNB$xl~nBsQdyd>qjC5Ni_<0kI; z_YFp19W|4?U2gS!p{#vC+@{o#yUJjK0tYA+2{JXRjK+v4FG|rU`5Ur-n0yAQ zK#M2#*cF5cpjpC%<7^$8+ZOfCuujwO8!%?C8(c?In9;dB!N(?YV6l^mRSBXOvO|;CM76_KbDng^pwnss4YS`r4B7Cc6svyFhJO_RW5&|a$SnU)K2t0s^8j^ zrzo-bjXG}gpr_*9v~Oj+Y968z5^~d%0zCqYA?jknQt z)bHQx^xf2A!eE01fo7tH7Y0OMkioB3*J9^j#gY=U(94aWKd*hwRz@Fn43nuAO6B_O zy9&g6;`4~riA){hLw>2*Nn6k5t)t4l`T7Yz!))$V1>(Nh#T~Pk;yaXX@7gaL3SJ>MQ+yB1x>A?Vbl!M9{}nd;uY?pPZ|DT74@i=~6qR+kPC~ts z?mJ%RcDP^d{UQUl>Kr^RG7;O-4cLNX>9y=aH))v#G~s@#lY;L;8*)PZXY0SWb%3u{ z+GgO~rjhwy{W|vrxOUpbBD+=(N9?0AsH1*;piv2c;Tb#&X7#YPL~avs37uDwy2?w%J;IJrDouH?^1YC@GMKz_W7HLE zx$Y;%z?zPayv%TALpI;T{$Har=c33ac$81m6fK~O!oFa@R?+9iu%9Q$O;s_BFBgj+ z(+&n(eWG`*mh8z&A>skSA+PH7VKv)lRwm+niheU z?$WVixb-m&^}Y)v7`_aeYZg?@oh7gJ?gQV*Cw=&mG`GcUdHD=KV!qpD}J-3ALBB%4`~)eM$VkU3h&rqc&dWr5J#36oL^YbZ(VEX zV|qVR>23{%kRDwlqo~obG41{P_s=t18faJpnx+-QzuM*c=o4o_3_wtqGK#~(!yW~? zG7O%Hdf(&o0&um(TG+z1!Ng;ft7q!^;FlKQpguFy{+0!)nD__GKS$ipZNM6}kkQnz z-RtF{lY=e(P&wT6d-2NS7x*aMFYm0TK&7Z*6B(7-rv~iUTY$b`4$jd{&;iz5zxnvx z?>CRZWL%yc!%_f(a8#Ffz1{5l`hpN)!rYsEn6cyv6(>mLyFg?J7I8@<+<9p@!<3@& zPtT(;f&D_4E7hQRwE&JTK3?bK$?IbiA#@kuc~_#}I|ORkobqzX?8PR4zZ=O!wGB+g z;uvGFhTzG0x(GXDwzAG^;-O4=ZAdx+?{x+2xs)4F6wS!%7zHW<|GvZc^4+x1bu%dp zGehcH=#Y-=WNDcdRmeQB_WCe%s|(=#XrDDFYLHpNfm{8 z+94z-37eb~EYiX2Q0&5q587NeEOSU9YB>I^%Op&&CG){3 z`ur==y{f)zj=ctSc-0T1KdX55$8-W=RZPm)ZUbX7mq~vi1!6Oz?7Wg7cZLAi_n$5(8KG%mbF|ao zq#?80X^ry3vmsX0oefnFWFh_eS>=S{XlIC_;|{n<_1o2Wg%90uWkGc{vQ2iG>aTs+uc=*O^_vVf@lNzcm(M9CSiC^6@(bvqo<+8 z+@gXYM!vYXxUOPzX>(|fhYik6T;R=cp|R3+M3XmVAh6NsOH@PvcHwOsOPn6aj-x;# z)4xK+x%Zfrx0?o!m+d9OJ8hvg#PTorFhOAC27RLp?eedU=??&yJ8~Di@NbJJ zeyY;v&Qa8j*9%j#{PYGrL^OH4-O(;sJtSz#tDC9!KmHS3Jr@Oc?n$BKzaEu{?wC7G z!nI$!!>?_N0;>!c^YcO0x4*c>wR8Qp4YPIhjWIgR&Nz(6_*2$^$|C?*`N}&=6t*M= z@ny^^^xcFVCGk^O7uvo?lgM`}ePFMtfSicrPsISgas&gM(e&-hLJovnbQSI|>gW=B z$@z1y2k6;?L-uv(=&pxc4?Duycf^AluiH}BPd~IHrI`$td0jiZoVA7SBu#x&=SH-S z_R)|pun6fKIdU!QDsTc!G#7|4r75SlSnnJomxzFX08frVDU&3XM#N?wN*sOU+U60q zo{E+5$H6c(<>Vj;te5W`O(y8wcF z0%EyF&L~I)0L?d7z|oWhG@tp>BF`3BK1Ir<|L46t+x}SM_c#^1!0{f7%`Y zXDsV0AKpA^0n?@c3eQ2Zgm_3?l)-{NK3BU2jNLz1g2Ob#223!((tGXO)5IZDChpre z|8>&b{8Z1G^9u{3As}iMAFpha^H9WR3SDftA4+Ejjg4R)h+1@#zz3B7P3y5TnmMim z-C!|HCF?3Wu;VMs38w2tUS3`|&Q^!~X>t6u;x%l9{e^EXcBuT! z5TJ_Y38jEXr2@d+CIEK1nx4_G`S_cF_s|Nw)Wo#baWDx70}^hC@I!M*q2a}|<0F+G z3+Totc7NFb*fJkQ;I|K&127|W3VTpRr`XlwKTo` zm?_cQa?fneE^jcMiYX;EWU7a^ie|rl20m9|l+S>q7^`ddCQt7MNHXF9Pl^twiS5%h z?g~7&*7Y4COq%RE7PB^2q)8HvoPTB9JYCj(ltN z0U|0$Z99QosX^&b zZ?l@!j^067$K5*bS+}je&+HPcTKjjv7+7EEhT2XSZG!=s9 zZ!fFFfuKnK@JmQtu!AI+c%%ihUw-MoaLIG3Pak4jS{nCWYH^8swt9Ud4`B`Lh`^Dw zZP@#L>?pKFZLYZyTV>Fumvq?j#%*{S>_r6-Z%r(vov=k?s^sV%fZbWP{}qAb$4`1< zFR+`gH)E!ryFsdcC-oB8oCLuf8;|M}nzJ#6$^+lNfd7Nwot_Rbd*^r$P#51L*i&Ht zmGgcnKR{yfg?y{lENbMn*+{F<2VSrxdHfvk4UOQ883hMTLYmU)W^h~_4bnMfc28-Y<0h7_*57jlC7LcfD2iwCLG z%*h~T6BNG%QCnzF-wioEf_*U4j~9&#&`XxnH#4_m-39&rC_Lb?@K74f&(Dtn?nO8m z^ks}4A?xPlh`>N}5I#8L{eEXeU}S!gJO1MN?yqGF{ma=!_lnIc={3g+^qg-2%`|jA zCdKNw`JL%8h>4MU{RXk){-0lkIhl83uveM)ndiR@uPWGwhM`M;-~OGu+!8C2f;>8W zxA$9yL1{wqJ=ntBTsS8u$Jo-66MNjU*+bpCOCgMlkw93GU{*ITY%zkU>aHj;JJ#@^Eo zkfhBv1$1HBu^YW+f@$t0`T3IRhkb zG-q7?8rRIYZSed?KE2D$+P!#k02$t=^vHAN8isXxbQSN8x zM|fdPwq%+!0(d*fDrItpY^n&ae;bzvz+&5bLucocl$AR``sdd~2HMdK&4NfevQ!@o zhA*vi^!Ryse8$lGbr24?l{Qh@;j)Z#Por3-mk@a+==M-4-O1Z5WpuW2TWYtAKrZj5 zOV_-;;`>YMW)yaTlL&@oO@H>A4}>cM*n<6-GF+>h;aH5j`K-S;5cVGJwA$51iyPoXnB;IDTX=9=pLh_fpe`W?qKDRT?5QC zc1k+MSz{+<$r0UECo6W{N7q^!#Z{<{5h^TChOEpTLP*_Vkglp?yO zwi9nKKt4P!zO8S~{vj#vVuYO?v6f@v&3YgYmbJnjLmO*pt?(H3Iquxh1)o8vTOO@) zZhvYtN3!TU>LzP_dLPUg>u*TyroPoohKG9iJofh2;`R!cZc5zJ<=bwz%gX3GC@D=2 zEqGloJ@m;-^eeQ(AJM)1wq$d!=bq1UBiW6*uWlJ8sX4GuT%{CYUhKHjGx^0Y`i`6C zfvZMem;9D@Ur&?G5O>CBv`*oQ~7Awp`Inl{Yu1r?KB@XA3-)js=HQ5Jvz&58(BDh7O(sw)S zJ?Qn_%9iilwj^;^;?&aIF00ll?Qg=t*M{D}Q>sH9aL0N)$r&-U-(X?QT-RSv-yu&w zA^O?#6It1W^9DU6_=TBAro+63w??55kJ*GQ)i=Mo9E;;>mP$^=)VAF%<;Z4aG94(N zzB#nQ5cG5dQ|tUJ3xQkL=8jkUe1ldpe8*?mTpD7~vMBt$i$-rACcv+&-i@!{WMwJN z$B#QzqTCBp;)?KNgL>sRr9;!+5X9$kCh(nC;Bx)#7g7C{IGE*eF9IgvSsyO?1X|BT zhn4+W+19rY9Ks=**L^ffGl>%8rBYl*okFm?=u7<);_Muh^QOUk8xI`I(C)isVIOjm zR=z;uihLQH>BeivrS^U3fLSEn0&quRXds?Sgwr#swCtOS(={yjl7ecRz!rR@Hp8Ng z>R6tGM7G7d-ZK`4aS{V^0d`q^f{K3ec-FMuo~e!t%}z{>uDgTT$*$5}gl*RCaA zmgK2hcgIfM@Y9vroKv`o9p*-NG(JN@m}J=JNtcak$CfpyS($2Gc$apD&5U$t3V8Nw z1|;2iYSezDL;mmtp20|lMBKCqf7BOR3QP7itZNhA=IZuWW*{DFxPigYRCBLBO{2(N zoObd6M$*1@v&ZICw_W{;i$=Hd?GS9*T14%2udr-S&l76ZW6K`;?dr%e+bY2rAaqmt zJ_x*#XWSS!c(^Pai z+@L(7gN23s?wzv-6XY%q3xQEGd143{yiYw}XDVN1JJ4hsJUHAr?kSaDwkg8ap#ed} z5N??{OTGhJcIzQ(jxNI0yBEV=zkYo#1Paw9PAVl`0Bx-$uV_rX*|Pk3Z@?i}d?ZKK zHKfIV={#5C35TAf`LJ{hfQAZzzJ`@XG7dZX1`jYGDdHjstcW30{;`;ixli`d@|Ev~ zv?O5&Y@GX?ay!H-=f@r{646$7N(}Voc8mYm6Dhc0y_(3&I>9h%yRZBU@hlvNBLaFu z9uP74Ya?0HA7JKBfM}wamc&b05r_KDmWFi%fWjJ?HVqTtIceOyUj~GfohL}Ki|EYp zoe;!zJ`I*PzubsKMeIN$SuY3v&wFWo0EtALI6z$d!bh3uU@?CF-<{r46lM~P2HaDG zIeD+2wg!K$xGBFb>$1rWUNr?CjzUM7_L=hKAw-onHUQo}{`bN}(7ZWxbO zIh0Zk0qQscRkLJSK$c2_0~X}_&K*UxF5~fj0=E0{auvy-4NhsR4+M;Eg zYk<9*1W9>aFj#uBuVf2}dqg()Tr)YAYTw3=>XS!frl9oM4p;3?mFtih0QL!0Up#K= zTI}`wya&55-kt!1@9%wcf=!h4iS>ZSSz1#wvu1GH3%4c9CqV9H(Y-g1j*vBaYjraJ zgym7`XWSv!_%d@lM)Ge!ig-bIz@&sXb^pG`fTVx4f+KG`y*3QoEt%Dat*0#3KFeRBlfzk1YoK$T@|MF$P;vJzeyin?` zw4RQRt1YA)zP}dL^2ce><(5Ys*VNjE%{Zu3`6Pjg!b{qaH*MOa1&TVy$(ZAew5Zob zY*ffkc`0L-lqbz!58mT^!`(>U%zmZdw;k*E$KC;Iy>FYd|1XKb?|}-C)O8X?H^OqX{T_Az& z%XqE2>11fty2p|T9){8J@hyz3tgKz2^&h!Pk#XeDOE3rm7`BKBrURdly-%<52<)>A zZ=U4Aah74j?76ZfU562tQ+MadLxPPIFGZMte1S@`UvhGL<8LiMydtHTG_R!${4A7< zn_#-4gN;-cEVE zZH;|<5-Ekg}p;9*nhawNkPQ=aqh1VxO7=a#es0(`RU7)fa zeX2Mc3$gLqj5|jtP;rLdH<;8Qf*5l8EpmD|!1M2Zn-6~viT&;q*TR|s^R_=D?>cCT zCeDSNS&uDgf_^~&1zq8%0IrIH!L9p1(;TrKoJOLfU~q_m<+}-fTojP<=t+4P&M^r} zod?Y8=ir1X!rg@JkZu+e3Mi5U2)ox#*xl%x^G2uG@L)U(_5yTvjt7Oo5WR*|w%XKI zbHX6ajac1yF{vLV&#RT04)*BJlNXC& zq%t9vK6cejLbXN;cSybiaB64?B^<59`#K89Kp7>oZV$7?RtT}?mNtl5QpN2(7Y$>dEWuw!MluivQ5_vzYpP;@$~vgyI~2bm z-Wz-q7647j!$Ajr0As$QkJ}A1b}Qg%>u)5(o!jsE9uPhlz>?!Sbdvza*Z~;IyG71d z*%b+2nEoPs`HHBR#dY;7+$g<%O?0%C*9+i)q*%jUW1Gy6UXoSSNw)-TfhHA-fUD%P z+Hh|O;{G_>c<&tPZURA`G7vCHp||Y|9q47?KdlMGu}jMCC&1j09ArEVryC9IpR|Oy zA{JaL*LOo|cm_**iu9auk{E9KB{6=TB<@RllQkPTm#eNzo6Et1J;JIx>{ed0cz!@bf(4X|wqo z-~u}HPQCI)Z9ey!yNk%J0w1Im5iCGG9GN&zBPNP5#=}7S15@W5vY!xToj*%Ptd%jV zLl}+hqgOlB;OdPBqd*7suq3+m=a8cjq2T2fiqXn+Ry(uR6Jc_}P9ot~-Ivu37u5ccp3@k#vaoHNk7QT~bAD-Q zJg^)uN#4L>v_SrOOoyH}CRM$Y6eRdW&sN(8rd}hn7xa+E`}ec9a8{&3i1;Df z#Va61B=4|$Q@-)A$i3a~nV?T}%!hmMtbofX6V}1==lHU|#eko!h}Rj4kNgX{_$$A= z#Z{pkBW+JShD*US^2md8P4GByG)15c$^jTD({>Pe2~UlqP$1XM16!OkJyhjnvI}Mh zcYW+;M9w*6lfo}e!}J>@k8*tpT)hUQD3?@yuX+HLo_JAdt@Gd=7!6$n6P*NI_e^(` z9lo2Sc-bq!29o9p&OP}Nk5SNE4y3U=eU$)2$P<&Qjr?3-Ws#04MaHZapzpgsqPV>r z!*pe*uTEiz)A1}iWu;%XYxsWKQ*uOPmoNz0$YM5~vV8Dogrs^uEuM)>SEDc)zPjk@ z;tK%O;&`gt(YF2F9!3Nwl(+dDmM*8do3OFIZA(tLnSQDo*4MGjaEa#pSvX&UMfKDS zt&#&zOfJDTMqf^QXbIN*nAB5)!thOyfi|fmb8-;KG`q75a$5au{@;NmiUu51!u9aj z3(zgWWjLFrjb>=s^&ALo0zR?pqY`YRgg`U1njl!ioSyVBqVw(iPo2N#5%7<^Y=#Ag zYd{7utVxuWP=3dDR{KeI0izpta~AdoF$gg=95PfyzCT27!lBy@JI-G1x&c;0YYCVT z?m67rpAG|j0NOeU`!jJk;?*StTHeCKpj+(^#}72BJm%l8Ff89{D2Mwnz^!A-ifR>__hEa?ej9 z@&4b@$c)khbnmJ-P>KvAo$kaM+N%CU3^2nADveK7a7d?(>O&y+6>le9Vw-k_5SNNl z#)@E~B~5k=reOCw6n1m6X8rv%Ap-aN<#EDk5>aCE+%70c+=u_Jc?9L^>gWGghceVS zBn9VwU>%4`nWi8=i?6C7uVs4?XAK;1*&4c)ieN zC@&9r3Kxj`sHtZwlK$!1cp8HHEt1WsiVM0C@Hn6>*Arf_!b{M|nBsZ_;Oj_;=(HX~ zS3p4HhaN&;1=R1Z{mE*yheX`VjTaP$o(E7)Xo1~{+#(?R6$V6H<=$q3JDg-=6k+5C zbVnzI_d=pSlWeEV8{o?Rg07#p!1csq!`Z~6q3r88aw_B;5hYM8MobtX3D@$;HzuNh z*p~Zy{T-KYjH5r1$b5|_67VmgS@lE;s6B~nLQ&w>}s8ECp0@b_D_ji_*2Lx1*V9~hYA_N zp>Sy8>u5Nh1p_Ipm`OhsoQ;=>ltEV;B{tvwCH9}SBHZ~|trwLnocihQk?2*WPMBV!|Vpg@LNit5h z6-hAE7fO0TF|{rLx&8S&K&%hG>KHKT=z!t)iV4YpsZkii3e(7c$xqvz#BdwJ8z6x| zV9%bH{8mOrJgEv^>***4Gz|V$5q$Zq%m}$l*F{=|f4+*`FxCJA?*=Y%BH9t&t-T5T zPVS8qd7oMEux!*6zyCKVFw+_Oe6}bJ>kdX2&~cZ)bLBfkA~Q7KSPcO97p4rP)FGgy zrr;XkhoiA6JrM>&1HI3{tG};-|HtaS|6Be1|5zz~FxY<8k?Ge7M(a$xT*mrTbD1qu{JQ|pdjD@e#YSryuEiJrfkprb4v~LLyssG$ zpauEqLJmLs)a-RD!K zPnKUmXF!4+`3hJ{cP3FEL8~DDl?JE;N1+UrzknjEyTErbDxj@lMvFQ#$Wc$wsyj6e zJ;v7S97Frd|4!)~vHW=z3Lr-K)hJNPb8^$6bnH51*0+&2B_0h2E%IFf z1ib?C$Qxl&8y^g5{pjqbhY)MBAr+|f(bfgyVmIviJaX0!I=4?3=sdJH2ZQjS22db9 zGs<<0u?DFM0>2hZ#G`eFHUau1h9cR~Vi`}%uZ~NB_}F=5RYS3CS8eQHZ4LT%63Mhi z;V&Ygymk1<;5D-B?17X@#1eld9505N<0lFCDp zFOQG`y8z^i{M72DoL$_^jQzn^?m20U*Q^9Qj+y)oTgEf9n-0?Q{%JYKErhF| zX-pNDJLGt&71g7rm^a97N{;$cLNcb$D}B9B$Ar_|8$ zl0l)|_s|2g^8o&}Xe1p6C^J)0UjF$BwS^@l>3o087jAQ#1p9Z*C#ONAiQ+Bf0%T?% zU)mD>;?g!iKhc1?%-5@k3L5ONsQttV41g@(zs>_z(*oITV}LUf7CKIr-d*wQ3{8Kk z<~@`>x&lEKW56UZvx*_Ogww0X$o=WA@gD#0X{TqRR&zHtIW<8fjFz>&l|u;N?3h#k zK)by(o&d*3<372YytKW; zD!Mi`0BW(-Hnsf71KubM(yDHx7omgpO#CW@!3|t0xVuF8=3QVQ6fq#!fV%c2z)CGJ?A8C}EUW{vJ&28ha5GI}b}6#~qO^ zh~ufG)Eql^vqvHVQkzUs)~)UVsw2msOn%18WstJ7iJU*9cwL%1WlC{EFAAfQkUq*Y z0w7`o-p?i2EBG#Q=}?#51dvwy$I5rRduOQUXCTj6amp{xasxw8ZrI>7XtgwO6K1Ea zPE4s<&N{nve^5B}emlHtr}+sZpv9DZ69l+{eP@||kl?#ie=GmvRh=4dquKysxc$~; za2AjQ*@YhUT8YIc5qOgaRS-#HpBEgc)LYfAFF(wW!WzFEMiYmlHi#&gQuRC%hOwE) zxeg>hhIV(j^^EnC&fF{foInd|Y(fJ!Dj@gk>T_fL(9nzYR^Re0;4zLc?P%|eMlLT6Bk^YS@Ef5}3v zt2O(z+Fqp_H>_rDrd}VkBYyoj-RAMsPu_CY4MGUY{Gjhw=S3+)b~D*iSyX;X?}iuE zHYoL+$J{Qu1DlN4EiHJuQg@LJK?hvWulRisUdE$a9Xcu{AcPF%C`CI*q;eN_@i*8OdRa3$Ui?r}-3ufJy;#UkdP*#)n7z zLoo|qq_({8!7^YwLg3aPQfId!vE_q)I_fS!G%M3m!D!CNd$x|yYWPZu11KH0?I_mo z*)YuMJ#zD|11}{CF7o)Cp&T9Q46z?MzIK((6sgHudGm+HZcNtueSGh9^Ybh`*Y*i# zwgw^uxZmH}d)LJCc(}1Y@@ky7-tcCfI1`{wAl_Q;e^j7MAcls$HT&9o&Tn&OT3tr8 zK<{F^Uu4GPJb`d%(tkU|{@(i{)8cWSsx-fsU{mqn&PZd(xB^-}s>RZ;vBD;;X8uZJ z*0b?b3-4>a0-=79^&XRdW<%+bn7;LL-l6wP-zaW}m(aw#1g*5CYVO@mo%k zwThf_qq~%cZF?M+(pG5C7=By)6=$O&^ahY9fp@%b8|ev z-Us&!PGqg~GY%^36`*9>VQncSl=`XSWY;vk4+zs+k8VH_U7RqD_uQ>CzKknu*;{2t zC{*ZzXgSZJZ<5~80cByR`adqij#fLTrWO~8%D1~q$Jb4qF=hYk_rz+}EFI>!*9r;Puo2Y(bEa^_E*XVAw|R(2&=b+gp|M>nIoLu>rZ(?4OpK zRjo#*?k;(L2l78@{QFYx84kn4C-e2GAE9I=2#*f`s4qA0uvKb_reU5$z9TS#qCm!R zAOKu!C3~jGygUY(@6|ALH{;cJh-Xf`#hL%SV^7{z-+kAwjnhqJM!k(EuWZc?(|)(a zx*x(U)uT@u!`2*MM*WYBZmKjEzEL|x#{*23<#TnVBT5H|-gMayHGAGjTc4sbO`I%} z_4=f{sheQw{g*l^)RXBeQS~EjOZidqtBQbix-P$@_$z`o9CO*1W@@FcHOq zWYbF47bj*27ob9H$52!^Rt=Y} zzR7hRiCDE8@A?Rx4cDp$7gl)4pVWei+ENdM4RC_>+>)e5rh?KwR;LHaccRNd!O~TB zc#rf!b@kARqMc4mjx^ABsZI30sYF9fAf`$UIe7+vOM54U-4;x=r!vJMf;o2~>x#0- zaGiJi`?HJ4rq)4$Mb$PUT>)9*kX*kF8QhqHu#h)>Q4g2xh@5!yFr`BmZG)2_uK30i z6>Nfq;{S3AaHyI6an>e0RT{lU!nI6}QG9EZ4Yw{9O-TlNQNG2n6XhKfD`?QDt*9n4 z3`R#(b-` z^x1Ol|6%XFe=PCy-Pb-u_zB9!D2yuc zj(*akw+hu64Bjvhw_aKLUH})ju4-j2@1dwwiWrZMsi_c9oDS?qIa29RB#Jc!2mtTL zb+-j_x<7m58rK0M?mD(^o)yZU!k_tJGo7DW-XKjH#8lFlf6& z#UI8E+yc~~)O<^SHQ~Jcnq(a@$%RHG*%aLWm|~?>?PJ@rH|a8TBTb* zuqx?9I%tCZ!)cLLtD&L6dZZ;4x+E6evG?mSiodyLhR@8n-N$O;Y^ss9P~{d5xV9Vk z#C{2_y_x93vr5wLs+{(TO>IV#Rc5%+0oOikI&8YezBVzs%B zVpkT+=R<%rbTR%NUT?D@Di#HXBJ#ZEdbTI_+*Fn)C7SO+^^Atb+y+k=zTQgf&_lE8J%Q(dYqzu$?mcV7`0%4-zD>cC=9t7duQF zb^zTb^tAj*+K0QR+K+43Lo><;TRngF=oLt7aPqO*Ps+e=--O3_+yBa+2fLvgaN0Hto9r=mdT<%JPM)BmJhU4v z$RN`^y#(E)KANx;o@7|Fs6RS{Ml#@^sR}l7go$1@Q6}2ZY6vjoM&y$saHaqT_;!;O zo|`h1^qcpELone}>e+rz~n8Hu@LCQ8_3kE{@}|JUe3AA2B3jMVNoBpldcc|20>a4^P9oLh|FEoL)EvrVUDJ zQ4ijNZw%A(%%@i1mhRmypjD^@&PSVn(Zv3D_|=35GYqMTim0=dt8r3U8i;@9NBaZ! zf8*2nYr;~(YQypXFsdNa`bW2rmr*dBkAGNK{6BVkSO~k50&Igrz`q)X0LgH0c+`e4 zygfiVsZ*P&Bi^(yohJS3q~NbMMV(c=bFcy-Pg`#A7`WyHE~jo_g4KWsh@iDG(TY@| zevcJ|i>+THbQSmkjgQ)CT)_iMgU0kwQRn1~_G%PD0^ ztplYHM5&QmF>h2j(kYe)^5hEN1U4E0)IA_zQXERs!jS<~_`-Pgu6ZV8Y?y95vUK*C0O`7=ubJ7f z!cVj`8vL2eQJ?$eBOxcZ3~YI|kOwzwxj~-U>DK`FpR8P2a70Eux{6lg0e)cN6oIhp z+3x@?-2vbCHV|$V#+Y9YxE3bm+>X%{Ms;6~jsGy8`2wgA7tqlW?F*bEHtY&#=FF$0grRRzRtd}y>bf=8dQTJ9Za|A) zm`1~3w*d&Q3FBvPFk(K_j`Yi$E`biH4%kZ{`j_H$E&som$H%@%mk76j8sBU;%b3IHhr8v>i3iRIBjBE0d2!s*d|fTfw3=ia8XI2> z+Bi$^s&LP{?ia(haNct){K)bGq6vMx0M-S!qzy+muCG|kliBBRKn^zr8Ftz)US8XC zJy%z`>ke?yuDH|Y94ppOM58BgZk$chESi+M8nuC7=dj7{joObGd2U`(`KeiwOhr;9 z^gThsK6(s}Nsz+Mz#)4Q*>I3In05Rf-~HmzmlURiBM=*L`a#b1B_LA` z+#~^FdfET*E%U*Wv@&P#?mNvv&N|f-8;Kzorp`Ym0#cUJ!$t~YxX+-2A%$(TYa~<( zCWbW-k+F>#h+L}hDubf=@FDrlsJqE(ml*DU9^^Sp^QYPa6-uPdn0_;}#fWvLoa3e* zrnTdaGl+s(m~57GSezt7OLz=s#(S9vjg=|!c{J0b-V2&5;D&LkWCVEPivbyHGtbhit{ZR`(|9(n2C>-FyAizHhB!BjSZJ9&#AC|o}ncU=IF znr(%zaF=ltcf%IP9tV?e*IZRm6n``6zRQ}}+;Pg~ucvb#?Z~O~3nr@wet@%i^^lFZ zc2`&Vdz314XrIom4J}8;1-~HvI61zHYH@Z0RqyPbC1F!AieBm~cI1a?1pz+^ns=)g zxftJ@LukGOJoo1}1;SlU-E?u;%Qc%@nZi!`h#h%}-MI))kwo9joZdz0U2-%^&EOBa zo$w&{>Xs6h{)JuQIDXTv3v*(@kZ5DPW zF`X-aj$qN}so^2fTgxqJZK)?G`!x!cN?ffQGxe<~%nieg)R=t!Fz$%CrW~6SH8C{U{EgnLKuv%2UY!;cG`J#xP zK*}4`NS4Us@9(-eYY^(|4Cu-zr!Oj%=h6!)x=KljD8zMfwfeFBD%3aY?Kxt3}lJsw;RBvn~=`{ z9$bR7=d^|(0)5U05V*$Szngjdpkw^u8ktrC7K;IN8tQ%=q1z9<9M48*DL}vfKudqO zdX%Ahd%P0@t?9+9n|-DoeN17{+rj8#`(pAW#bn8-+$a2)4Bs9c8BU4%|q z6D8X>tPfGcqkZ&I0l2sD6^pqgizZ0)s(B-kZ=Fd*h^GkxcyDuT08ZqwXJ3GiS>0G5DnQGF zTmz*CnP2|6jKFj>{HD>oTh@YiQ_n}p}FP*!Wg8bk;O_o!!wcd@{- zzQix;*tzdJ2+L9W0O&w9R{5J4xR}KJ*U@jT`_xnTqSfMnN;qL}}snr*403D`evKhv_=g_$3C~2V?I6P{3-D zE;idzZw#6J1#Q>;AnV4KBgd7WX*;m6{@6+VnV`yE%7wJb&kLe5e`D@EKxeVssg9y* z{K=8z&^6sHeCA;htKG9Vw5@lyP+JM=3nnz!2zURR_~N}R z2ZnQKyFc@8W#mbAheX0b3GAE1@g-Oc1wN@?yjWRJN=xI`?J2Tr<=&ldw}GFDpZ%{+ zpAOzLVp{<@xx_8@^a^mYByMu;hAY$qUs^Zc(B}C$$Q4L3siTOYfJ~hItAPbun>_Fl zm@>ZC`O^_=I#Mfyl0_+q;c0o$@B$nalCxp$C{TU|W+P1L4EKdFv(ve7e_mTTV)O*Q zv+bp5+-?|ysKq^~fTwrr?j}tvr97;ISUs0WQ;?!k#2wA0RpO$GjiJaW+9u8^ z9b2{)qM7J3U3cyG7qJ2@>v9?p(SUenjguXJmVJ9S6Fgo+B7Ch}8$It_sUxzfL9aU- z2R1-HcaMbzt(oJT`;nRwzZJ^@gR$_DnMf0AY+3|{9XpdrKU1T8XlyrC+uG}5;CXJA zXkd=O9BZ@Q_ahT$1M8(lS-6eFY51Py(aQ$87f$^Lcde<_6{*Aaf;{L zY0q`K zrH~DB$#n*|V;l3^6|6jHIW>DQ?#cx*>jWl<5j5IL)pit{OQ9`eC!J~&==iJ?xhuq>MmQ7{KZ{S?7H|Lh7_1^g|6eq!O+RNpO3UkCTAW2PG4fm5u65C%&*2^U0A0~KCdh<_JR1u8HSxw zFdT)**Ekl49mVlq#PFq`lFwzjkD|6am|00faGlnP=xp%Ht1xG6d7YL8gK(WERJZ9( zRj3IVGh3~r)PyVBJ`%3rGQ~;zvk%gMx_yWL%X$h4v*EqfF$(Z-2j=1)P0K9U%iHv` z!BjfP>op;o9a1%6HH8djupJLyQ&VB+2wK$GPok+@I;Y?ytfv}w+fQd*Pi*r~M&oD+ z8kqk4^ED9GS;J4@g5`bvu`7FIA`GYr$}lBP+aaC+&fMb6dh_s%*qn1Ko`6W*l>(r{9d74ld=a#KlTLXJzr zR@oxpbQ9SAgb19THEzpd?I_a}>YJ)uD2 zYytwn#3AW7y1PX|jvF@v)t|F_lbDLbXp{&HYl+n$NpePwoKSu>r4)2jG$R-;E~eOO zfD&AgCCeNH6U7>yPRLK@@;QN(xY}Z(fTCFM(p|7MGH!;kJK>7;#I5}>Fhu0Q*C*TJ z)l)qjU0gb^up&_9x2D&hhps4^5?Ud5`dA6tT6n&h&R?!){7dg%ca+4l?xpOPCX?sx zOjrkSASK0SsSN(wWdH2)lR+dhf|bzv>5~1&PK%*!7l)H7WDr)VqDdSK4Sx9W&hPYE ze{@4V*1*yH<t=8r$nfM{3!&(jyx#ix$_hRn4x&_!ONck=hzLxd%4El>WxXcRf!z?>@ z44y0oY*5I_Hi%=Lzj{c95xM8UeTESrK#zWuf!A0mUSSBfWQtG{qZ?@qs=SdEvg^nI zG}&Qzy}BnDE15uNQ|V1vJTP^?*C2bI4G z7ItXs4I4I0c0YTjoRyc??7=}JPm-gwdLCK~CA+byX|klGBrgV{rIixYSlFw#!ueJ} zg&-Iw$X!Qj9Cx;El)PQ@=5BNRsltN&oNt(MV@$MAK{H*EId&bH zUEDOP?PRsaIk9cH#RxCh5We=vg(hR@AW(pd36*}F7ZkRD{XB`uCa8cFmg&ZA$R^nq zY?7O+Ss_F~buC1I2$v1>hLy|&e_!6C7@Z6=1H(=dJY%xpe(z14f=mf(ko!Fr$|+iK zzrPH3$Q~v3v`=6^-%vme?)O8;{eJ&cAh_SNAoqJtPPkKW-vWiP@HbZjlMO#~1+kKL z;C|l>?)QIP9RBv8`!fU;WXps5y*IeuPcg{80r&ere^8(FQBj6I+ZeZfEDOqT@(F$Dxf9 zBj6WHV=1AW#0F}QpqpY-8pAQqG#znH^_o%M%M4Q{?*DzC?mu`}N_Hk2!%N`pKXqf* zk2?%h&Hs14VO;Bp7plB^a>~jKRjBP5k1XXwRLTqF4v_>F$(LsRN%l-FqE#SKHZ6ed zFm!IRUnZoso&|hp)Q13Ret;xku*$L<6Izd6n!h~6L@Pf8a9aW3`t=ZxY6F;~S&%T( zeqG8$MLXeCzG-PdR#g%O?7wrPq6K^*K4t?qy=3~?_QmzvCA4(dnIzl;emT%EvHM>T zyfz?ZzK(^82=s3pW$tGRMbXvV}kQ z3

rNYvMr9 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 boFBDQKCryLW?m}I0zZa$V?Da=zT^K1o&Sg0 literal 0 HcmV?d00001