From c3be9665ace7cb3fe7ea8aca61a495c67832a8ac Mon Sep 17 00:00:00 2001 From: David Wu Date: Fri, 1 Sep 2017 14:10:01 +1200 Subject: [PATCH 01/59] Added button press sounds for hosting a game, entering lobby list and entering host menu. #story[1195] --- .../visualiser/Controllers/MainController.java | 15 +++++++++++++-- .../visualiser/Controllers/TitleController.java | 8 +++++++- .../resources/visualiser/sounds/buttonpress.mp3 | Bin 0 -> 29675 bytes 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 diff --git a/racevisionGame/src/main/java/visualiser/Controllers/MainController.java b/racevisionGame/src/main/java/visualiser/Controllers/MainController.java index 57d18830..77cf1b64 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/MainController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/MainController.java @@ -3,6 +3,7 @@ package visualiser.Controllers; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.scene.layout.AnchorPane; +import javafx.scene.media.AudioClip; import visualiser.app.App; import visualiser.gameController.ControllerClient; import visualiser.model.VisualiserBoat; @@ -27,6 +28,8 @@ public class MainController extends Controller { @FXML private HostController hostController; @FXML private LobbyController lobbyController; + private AudioClip sound; + /** * Ctor. @@ -53,6 +56,8 @@ public class MainController extends Controller { * @param isHost is connection a host */ public void enterLobby(Socket socket, Boolean isHost) { + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound.play(); startController.enterLobby(socket, isHost); } @@ -74,12 +79,18 @@ public class MainController extends Controller { /** * Transitions into lobby screen */ - public void enterLobby(){ lobbyController.enterLobby(); } + public void enterLobby(){ + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound.play(); + lobbyController.enterLobby(); } /** * Transitions into host game screen */ - public void hostGame(){ hostController.hostGame(); } + public void hostGame(){ + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound.play(); + hostController.hostGame(); } /** * Sets up the css for the start of the program diff --git a/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java b/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java index 32e033c8..f70030b7 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java @@ -7,11 +7,16 @@ import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.RadioButton; import javafx.scene.layout.AnchorPane; +import javafx.scene.media.AudioClip; +import javafx.scene.media.Media; +import javafx.scene.media.MediaPlayer; import javafx.stage.Modality; import javafx.stage.Stage; import visualiser.app.App; +import java.io.File; import java.io.IOException; +import java.net.URISyntaxException; import java.net.URL; import java.util.ResourceBundle; @@ -38,7 +43,8 @@ public class TitleController extends Controller { * Currently used to run the RaceVision mock. * @throws IOException if main has problems */ - public void hostAGame() throws IOException { + public void hostAGame() throws IOException, URISyntaxException { + titleWrapper.setVisible(false); parent.hostGame(); App.getStage().setResizable(true); diff --git a/racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 b/racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..8cb077ff33f8a648c57f565569114ad2b74af64e GIT binary patch literal 29675 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 z�TCY-y8&kEojL4t@q<*C(Ar-1( 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 iH=$Dgr+2^q+mH(%=ixymA04;!|LEKQ|1 Date: Fri, 1 Sep 2017 19:30:27 +1200 Subject: [PATCH 02/59] Passing a mark will now play a sound. Currently using placeholder sound so will ned to change. #story[1195] --- .../Commands/VisualiserRaceCommands/RaceStatusCommand.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java index 825cd274..3f92757d 100644 --- a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java @@ -1,5 +1,6 @@ package visualiser.Commands.VisualiserRaceCommands; +import javafx.scene.media.AudioClip; import mock.model.commandFactory.Command; import network.Messages.BoatStatus; import network.Messages.Enums.BoatStatusEnum; @@ -176,6 +177,10 @@ public class RaceStatusCommand implements Command { //Record order in which boat finished leg. visualiserRace.getLegCompletionOrder().get(boat.getCurrentLeg()).add(boat); + //play sound + AudioClip sound = new AudioClip(getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound.play(); + //Update boat. boat.setCurrentLeg(leg); boat.setTimeAtLastMark(visualiserRace.getRaceClock().getCurrentTime()); From cd685ae4673700834956df190f46057b11f80835 Mon Sep 17 00:00:00 2001 From: zwu18 Date: Sun, 3 Sep 2017 21:22:26 +1200 Subject: [PATCH 03/59] Added sound effect files for button clicks and mark rounding and linked them up to application. Collision audio is added too but not linked up. #story[1195] --- .../RaceStatusCommand.java | 2 +- .../visualiser/Controllers/HostController.java | 3 +++ .../visualiser/Controllers/LobbyController.java | 9 +++++++++ .../visualiser/Controllers/MainController.java | 6 +++--- .../visualiser/Controllers/TitleController.java | 2 ++ .../resources/visualiser/sounds/buttonpress.mp3 | Bin 29675 -> 0 bytes .../resources/visualiser/sounds/buttonpress.wav | Bin 0 -> 28704 bytes .../resources/visualiser/sounds/collision.wav | Bin 0 -> 16974 bytes .../resources/visualiser/sounds/collision2.wav | Bin 0 -> 37962 bytes .../resources/visualiser/sounds/passmark.wav | Bin 0 -> 78100 bytes 10 files changed, 18 insertions(+), 4 deletions(-) delete mode 100644 racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/buttonpress.wav create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/collision.wav create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/collision2.wav create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/passmark.wav diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java index 3f92757d..add1a3dd 100644 --- a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/RaceStatusCommand.java @@ -178,7 +178,7 @@ public class RaceStatusCommand implements Command { visualiserRace.getLegCompletionOrder().get(boat.getCurrentLeg()).add(boat); //play sound - AudioClip sound = new AudioClip(getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + AudioClip sound = new AudioClip(getClass().getResource("/visualiser/sounds/passmark.wav").toExternalForm()); sound.play(); //Update boat. diff --git a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java index 1609e700..86a13920 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java @@ -3,6 +3,7 @@ package visualiser.Controllers; import javafx.fxml.FXML; import javafx.scene.control.TextField; import javafx.scene.layout.AnchorPane; +import javafx.scene.media.AudioClip; import mock.app.Event; import org.xml.sax.SAXException; import mock.exceptions.EventConstructionException; @@ -85,6 +86,8 @@ public class HostController extends Controller { } public void menuBtnPressed(){ + AudioClip sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); + sound.play(); hostWrapper.setVisible(false); parent.enterTitle(); } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/LobbyController.java b/racevisionGame/src/main/java/visualiser/Controllers/LobbyController.java index 07af2b49..0524f2ad 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/LobbyController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/LobbyController.java @@ -8,6 +8,7 @@ import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.scene.control.TextField; import javafx.scene.layout.AnchorPane; +import javafx.scene.media.AudioClip; import visualiser.model.RaceConnection; import java.io.IOException; @@ -39,6 +40,8 @@ public class LobbyController extends Controller { private ObservableList connections; + private AudioClip sound; + @Override public void initialize(URL location, ResourceBundle resources) { @@ -66,6 +69,8 @@ public class LobbyController extends Controller { * Refreshes the connections in the lobby */ public void refreshBtnPressed(){ + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); + sound.play(); for(RaceConnection connection: connections) { connection.check(); } @@ -93,6 +98,8 @@ public class LobbyController extends Controller { } public void menuBtnPressed(){ + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); + sound.play(); lobbyWrapper.setVisible(false); parent.enterTitle(); } @@ -101,6 +108,8 @@ public class LobbyController extends Controller { * adds a new connection */ public void addConnectionPressed(){ + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); + sound.play(); String hostName = addressFld.getText(); String portString = portFld.getText(); try{ diff --git a/racevisionGame/src/main/java/visualiser/Controllers/MainController.java b/racevisionGame/src/main/java/visualiser/Controllers/MainController.java index 77cf1b64..220a7f19 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/MainController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/MainController.java @@ -56,7 +56,7 @@ public class MainController extends Controller { * @param isHost is connection a host */ public void enterLobby(Socket socket, Boolean isHost) { - sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); sound.play(); startController.enterLobby(socket, isHost); } @@ -80,7 +80,7 @@ public class MainController extends Controller { * Transitions into lobby screen */ public void enterLobby(){ - sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); sound.play(); lobbyController.enterLobby(); } @@ -88,7 +88,7 @@ public class MainController extends Controller { * Transitions into host game screen */ public void hostGame(){ - sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.mp3").toExternalForm()); + sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); sound.play(); hostController.hostGame(); } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java b/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java index f70030b7..b8ec3af7 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/TitleController.java @@ -94,6 +94,8 @@ public class TitleController extends Controller { * Called when control button is pressed. New pop up window displaying controls */ public void controlBtnPressed(){ + AudioClip sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/buttonpress.wav").toExternalForm()); + sound.play(); FXMLLoader loader = new FXMLLoader(); loader.setLocation(getClass().getResource("/visualiser/scenes/controls.fxml")); Parent layout; diff --git a/racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 b/racevisionGame/src/main/resources/visualiser/sounds/buttonpress.mp3 deleted file mode 100644 index 8cb077ff33f8a648c57f565569114ad2b74af64e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29675 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 z�TCY-y8&kEojL4t@q<*C(Ar-1( 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 literal 0 HcmV?d00001 diff --git a/racevisionGame/src/main/resources/visualiser/sounds/collision.wav b/racevisionGame/src/main/resources/visualiser/sounds/collision.wav new file mode 100644 index 0000000000000000000000000000000000000000..0195375d3d6b661846ad1723128cc04e606131a8 GIT binary patch literal 16974 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 TZesXvjB!EzyHh0p|MmX_=-wjA literal 0 HcmV?d00001 diff --git a/racevisionGame/src/main/resources/visualiser/sounds/collision2.wav b/racevisionGame/src/main/resources/visualiser/sounds/collision2.wav new file mode 100644 index 0000000000000000000000000000000000000000..9e295636efce2211c881582e3b566846d1d9988b GIT binary patch literal 37962 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

e|bSLk{2SPN#tC2!Z!Kq7VP2QXNtd7e# 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 PhyUe2KFg2!-~aJ1sg1oW literal 0 HcmV?d00001 From 8c1eded926c64260454e6cb175783117aa965b82 Mon Sep 17 00:00:00 2001 From: David Wu Date: Mon, 4 Sep 2017 14:06:38 +1200 Subject: [PATCH 04/59] Boat collision packets are now sent. Command class created for boat collision. Currently prints out message depending on if user crashed or someone else crashed. #story[1195] --- .../src/main/java/mock/app/Event.java | 1 + .../src/main/java/mock/model/RaceLogic.java | 18 +++++++++- .../src/main/java/mock/model/RaceServer.java | 36 +++++++++++++++++++ .../java/mock/model/collider/Collider.java | 2 ++ .../BoatCollisionCommand.java | 33 +++++++++++++++++ .../VisualiserRaceCommandFactory.java | 9 ++++- .../src/main/java/visualiser/app/App.java | 6 ++-- .../model/VisualiserRaceController.java | 2 +- 8 files changed, 101 insertions(+), 6 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index c054e2fb..c9ef3d5b 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -81,6 +81,7 @@ public class Event { String raceXMLFile = "mock/mockXML/raceTest.xml"; String boatsXMLFile = "mock/mockXML/boatTest.xml"; + //String boatsXMLFile = "mock/mockXML/boatsSinglePlayer.xml"; String regattaXMLFile = "mock/mockXML/regattaTest.xml"; if (singlePlayer) { diff --git a/racevisionGame/src/main/java/mock/model/RaceLogic.java b/racevisionGame/src/main/java/mock/model/RaceLogic.java index 5b35d449..d70b6152 100644 --- a/racevisionGame/src/main/java/mock/model/RaceLogic.java +++ b/racevisionGame/src/main/java/mock/model/RaceLogic.java @@ -11,6 +11,7 @@ import network.Messages.Enums.RaceStatusEnum; import network.Messages.LatestMessages; import shared.model.RunnableWithFramePeriod; +import java.util.ArrayList; import java.util.Observable; import java.util.Observer; @@ -104,6 +105,8 @@ public class RaceLogic implements RunnableWithFramePeriod, Observer { */ private void raceLoop() { + ArrayList collisionBoats = new ArrayList<>(); + long previousFrameTime = System.currentTimeMillis(); while (race.getRaceStatusEnum() != RaceStatusEnum.FINISHED && loopBool) { @@ -129,9 +132,17 @@ public class RaceLogic implements RunnableWithFramePeriod, Observer { //If it is still racing, update its position. if (boat.getStatus() == BoatStatusEnum.RACING) { race.updatePosition(boat, framePeriod, race.getRaceClock().getDurationMilli()); - race.getColliderRegistry().rayCast(boat); + + if(race.getColliderRegistry().rayCast(boat)){ + System.out.println("Collision!"); + //Add boat to list + collisionBoats.add(boat); + } + + //System.out.println(race.getColliderRegistry().rayCast(boat)); } + } } else { @@ -144,9 +155,14 @@ public class RaceLogic implements RunnableWithFramePeriod, Observer { // Change wind direction race.changeWindDirection(); + //Pass collision boats in + server.parseBoatCollisions(collisionBoats); + //Parse the race snapshot. server.parseSnapshot(); + collisionBoats.clear(); + //Update the last frame time. previousFrameTime = currentTime; } diff --git a/racevisionGame/src/main/java/mock/model/RaceServer.java b/racevisionGame/src/main/java/mock/model/RaceServer.java index cbbe1971..279d2742 100644 --- a/racevisionGame/src/main/java/mock/model/RaceServer.java +++ b/racevisionGame/src/main/java/mock/model/RaceServer.java @@ -2,6 +2,7 @@ package mock.model; import network.Messages.*; import network.Messages.Enums.BoatLocationDeviceEnum; +import network.Messages.Enums.YachtEventEnum; import shared.model.Bearing; import shared.model.CompoundMark; import shared.model.Mark; @@ -15,6 +16,7 @@ import java.util.List; public class RaceServer { private MockRace race; private LatestMessages latestMessages; + private List collisionEvents = new ArrayList<>(); /** @@ -44,7 +46,17 @@ public class RaceServer { //Parse the race status. snapshotMessages.add(parseRaceStatus()); + //Parse collisions + if(collisionEvents.size()>0){ + snapshotMessages.addAll(collisionEvents); + } + latestMessages.setSnapshot(snapshotMessages); + + //Reset collision list + collisionEvents.clear(); + //System.out.println(collisionEvents.size()); + } @@ -178,4 +190,28 @@ public class RaceServer { return raceStatus; } + + /** + * Parse the yacht event and return it + * @param boat yacht with event + * @param event event that happened + * @return yacht event + */ + private YachtEvent parseYachtEvent(MockBoat boat, YachtEventEnum event){ + YachtEvent yachtEvent = new YachtEvent( + System.currentTimeMillis(), + this.boatLocationSequenceNumber, + race.getRaceId(), + boat.getSourceID(), + 1337, + event); + return yachtEvent; + } + + public void parseBoatCollisions(ArrayList boats){ + for (MockBoat boat : boats){ + collisionEvents.add(parseYachtEvent(boat, YachtEventEnum.COLLISION)); + } + } + } diff --git a/racevisionGame/src/main/java/mock/model/collider/Collider.java b/racevisionGame/src/main/java/mock/model/collider/Collider.java index 029fee57..81b2ed62 100644 --- a/racevisionGame/src/main/java/mock/model/collider/Collider.java +++ b/racevisionGame/src/main/java/mock/model/collider/Collider.java @@ -32,6 +32,8 @@ public abstract class Collider extends Observable implements Locatable { notifyObservers(collision); this.setChanged(); + //Send out packet to all boats + return true; } else return false; } diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java new file mode 100644 index 00000000..7e2047d7 --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java @@ -0,0 +1,33 @@ +package visualiser.Commands.VisualiserRaceCommands; + +import mock.model.commandFactory.Command; +import network.Messages.YachtEvent; +import visualiser.model.VisualiserRaceState; + +/** + * Created by zwu18 on 4/09/17. + */ +public class BoatCollisionCommand implements Command { + + YachtEvent yachtEvent; + + VisualiserRaceState visualiserRace; + + public BoatCollisionCommand(YachtEvent yachtEvent, VisualiserRaceState visualiserRace){ + this.yachtEvent = yachtEvent; + this.visualiserRace = visualiserRace; + + } + + @Override + public void execute() { + + if(visualiserRace.getPlayerBoatID()==yachtEvent.getSourceID()){ + System.out.println("Someone else crashed!"); + } else { + System.out.println("I crashed!"); + } + + //System.out.println("Collision command executed!"); + } +} diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/VisualiserRaceCommandFactory.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/VisualiserRaceCommandFactory.java index 37755e91..0e2f3d15 100644 --- a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/VisualiserRaceCommandFactory.java +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/VisualiserRaceCommandFactory.java @@ -23,7 +23,9 @@ public class VisualiserRaceCommandFactory { switch (message.getType()) { - case BOATLOCATION: return new BoatLocationCommand((BoatLocation) message, visualiserRace); + case BOATLOCATION: + //System.out.println("Boat location received"); + return new BoatLocationCommand((BoatLocation) message, visualiserRace); case RACESTATUS: return new RaceStatusCommand((RaceStatus) message, visualiserRace); @@ -31,6 +33,11 @@ public class VisualiserRaceCommandFactory { case ASSIGN_PLAYER_BOAT: return new AssignPlayerBoatCommand((AssignPlayerBoat) message, visualiserRace); + case YACHTEVENTCODE: + return new BoatCollisionCommand((YachtEvent) message, visualiserRace); + + + default: throw new CommandConstructionException("Could not create VisualiserRaceCommand. Unrecognised or unsupported MessageType: " + message.getType()); } diff --git a/racevisionGame/src/main/java/visualiser/app/App.java b/racevisionGame/src/main/java/visualiser/app/App.java index eeae5a5d..6a7d47f2 100644 --- a/racevisionGame/src/main/java/visualiser/app/App.java +++ b/racevisionGame/src/main/java/visualiser/app/App.java @@ -96,15 +96,15 @@ public class App extends Application { ); updateMessage("Preparing ingredients . . ."); - Thread.sleep(1000); + Thread.sleep(100); for (int i = 0; i < burgerFilling.size(); i++) { - Thread.sleep(800); + Thread.sleep(100); updateProgress(i + 1, burgerFilling.size()); String nextFilling = burgerFilling.get(i); addedFilling.add(nextFilling); updateMessage("Adding the " + nextFilling + " . . ."); } - Thread.sleep(400); + Thread.sleep(100); updateMessage("Burger's done!"); return addedFilling; diff --git a/racevisionGame/src/main/java/visualiser/model/VisualiserRaceController.java b/racevisionGame/src/main/java/visualiser/model/VisualiserRaceController.java index 748808b3..47382b74 100644 --- a/racevisionGame/src/main/java/visualiser/model/VisualiserRaceController.java +++ b/racevisionGame/src/main/java/visualiser/model/VisualiserRaceController.java @@ -65,7 +65,7 @@ public class VisualiserRaceController implements RunnableWithFramePeriod { compositeRaceCommand.addCommand(command); } catch (CommandConstructionException e) { - Logger.getGlobal().log(Level.WARNING, "VisualiserRaceController could not create a command for incoming message."); + //Logger.getGlobal().log(Level.WARNING, "VisualiserRaceController could not create a command for incoming message."); } catch (InterruptedException e) { Logger.getGlobal().log(Level.SEVERE, "VisualiserRaceController was interrupted on thread: " + Thread.currentThread() + " while waiting for messages."); From 8b5a5506e770774ede2b36a65db61434e1d92f45 Mon Sep 17 00:00:00 2001 From: David Wu Date: Tue, 5 Sep 2017 14:00:15 +1200 Subject: [PATCH 05/59] Boat collisions now play a sound when user collides and a quieter sound when others collide. #story[1195] --- .../src/main/java/mock/app/Event.java | 1 - .../BoatCollisionCommand.java | 10 ++++++++-- .../visualiser/sounds/quietcollision.wav | Bin 0 -> 33940 bytes 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 racevisionGame/src/main/resources/visualiser/sounds/quietcollision.wav diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index c9ef3d5b..c054e2fb 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -81,7 +81,6 @@ public class Event { String raceXMLFile = "mock/mockXML/raceTest.xml"; String boatsXMLFile = "mock/mockXML/boatTest.xml"; - //String boatsXMLFile = "mock/mockXML/boatsSinglePlayer.xml"; String regattaXMLFile = "mock/mockXML/regattaTest.xml"; if (singlePlayer) { diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java index 7e2047d7..c3046d18 100644 --- a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java @@ -1,5 +1,6 @@ package visualiser.Commands.VisualiserRaceCommands; +import javafx.scene.media.AudioClip; import mock.model.commandFactory.Command; import network.Messages.YachtEvent; import visualiser.model.VisualiserRaceState; @@ -23,9 +24,14 @@ public class BoatCollisionCommand implements Command { public void execute() { if(visualiserRace.getPlayerBoatID()==yachtEvent.getSourceID()){ - System.out.println("Someone else crashed!"); - } else { System.out.println("I crashed!"); + AudioClip sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/collision.wav").toExternalForm()); + sound.play(); + + } else { + System.out.println("Someone else crashed!"); + AudioClip sound = new AudioClip(this.getClass().getResource("/visualiser/sounds/quietcollision.wav").toExternalForm()); + sound.play(); } //System.out.println("Collision command executed!"); diff --git a/racevisionGame/src/main/resources/visualiser/sounds/quietcollision.wav b/racevisionGame/src/main/resources/visualiser/sounds/quietcollision.wav new file mode 100644 index 0000000000000000000000000000000000000000..d1c8a01ea67021e1853b7c56f8fbee294941ebc8 GIT binary patch literal 33940 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 Date: Fri, 8 Sep 2017 19:15:39 +1200 Subject: [PATCH 06/59] Created and linked up bouy to race, and added keybindings to git ignore #story[1196] --- .gitignore | 2 ++ .../visualiser/Controllers/RaceController.java | 8 +++++++- .../src/main/resources/assets/Bouy V1.1.stl | Bin 0 -> 17284 bytes 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 racevisionGame/src/main/resources/assets/Bouy V1.1.stl diff --git a/.gitignore b/.gitignore index 48326a70..c56ab43c 100644 --- a/.gitignore +++ b/.gitignore @@ -183,3 +183,5 @@ local.properties # IntelliJDEA ignore *.iml dedicatedServer/.idea/ +.idea/copyright/ +settings/keyBindings.xml diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index cd450f18..b2858477 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -182,10 +182,15 @@ public class RaceController extends Controller { ObservableList subjects = FXCollections.observableArrayList(); + //read 3d Assets URL asset = HostController.class.getClassLoader().getResource("assets/V1.2 Complete Boat.stl"); StlMeshImporter importer = new StlMeshImporter(); importer.read(asset); + URL markerAsset = HostController.class.getClassLoader().getResource("assets/Bouy V1.1.stl"); + StlMeshImporter importerMark = new StlMeshImporter(); + importerMark.read(markerAsset); + view3D = new View3D(); view3D.setDistance(1050); view3D.setYaw(0); @@ -206,7 +211,8 @@ public class RaceController extends Controller { canvasBase.getChildren().add(0, view3D); for(Mark mark: race.getVisualiserRaceState().getMarks()) { - Subject3D subject = new Subject3D(new Sphere(5)); + MeshView mesh = new MeshView(importerMark.getImport()); + Subject3D subject = new Subject3D(mesh); // subject.setX(mark.getPosition().getLongitude() * scale); // subject.setZ(mark.getPosition().getLatitude()* scale); subject.setX(gpsConverter.convertGPS(mark.getPosition()).getX() * scale); diff --git a/racevisionGame/src/main/resources/assets/Bouy V1.1.stl b/racevisionGame/src/main/resources/assets/Bouy V1.1.stl new file mode 100644 index 0000000000000000000000000000000000000000..3ba11615dd45ce3470990c1cd54047feeadd4d58 GIT binary patch literal 17284 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 z Date: Fri, 8 Sep 2017 20:10:45 +1200 Subject: [PATCH 07/59] Tried to get multiple boats working but.... it's not #story[1196] --- .../src/main/java/mock/app/Event.java | 2 +- .../src/main/java/mock/xml/RaceXMLCreator.java | 2 +- .../src/main/java/shared/model/Constants.java | 4 ++-- .../visualiser/Controllers/HostController.java | 2 +- .../visualiser/Controllers/RaceController.java | 12 ++++++++++-- .../main/java/visualiser/layout/Subject3D.java | 6 +++--- .../main/resources/assets/V1.3 BurgerBoat.stl | Bin 0 -> 53284 bytes 7 files changed, 18 insertions(+), 10 deletions(-) create mode 100644 racevisionGame/src/main/resources/assets/V1.3 BurgerBoat.stl diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index 703686bc..2c3da7ad 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -180,7 +180,7 @@ public class Event { public static String setRaceXMLAtCurrentTimeToNow(String raceXML) { //The start time is current time + 4 minutes. prestart is 3 minutes, and we add another minute. - long millisecondsToAdd = Constants.RacePreStartTime + Constants.RacePreparatoryTime; + long millisecondsToAdd = Constants.RacePreStartTime + 1 * 60 * 10000; long secondsToAdd = millisecondsToAdd / 1000; //Scale the time using our time scalar. secondsToAdd = secondsToAdd / Constants.RaceTimeScale; diff --git a/racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java b/racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java index b168862f..9b835f82 100644 --- a/racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java +++ b/racevisionGame/src/main/java/mock/xml/RaceXMLCreator.java @@ -187,7 +187,7 @@ public class RaceXMLCreator { public static void setRaceXMLAtCurrentTimeToNow(XMLRace raceXML) { //The start time is current time + 4 minutes. prestart is 3 minutes, and we add another minute. - long millisecondsToAdd = Constants.RacePreStartTime + Constants.RacePreparatoryTime; + long millisecondsToAdd = Constants.RacePreStartTime + 1 * 60 * 1000; long secondsToAdd = millisecondsToAdd / 1000; //Scale the time using our time scalar. secondsToAdd = secondsToAdd / Constants.RaceTimeScale; diff --git a/racevisionGame/src/main/java/shared/model/Constants.java b/racevisionGame/src/main/java/shared/model/Constants.java index 18a2aaed..5dce72e6 100644 --- a/racevisionGame/src/main/java/shared/model/Constants.java +++ b/racevisionGame/src/main/java/shared/model/Constants.java @@ -39,14 +39,14 @@ public class Constants { * The race pre-start time, in milliseconds. 3 minutes (30 seconds for development). */ // public static final long RacePreStartTime = 30 * 1000; - public static final long RacePreStartTime = 1000; + public static final long RacePreStartTime = 30 * 1000; /** * The race preparatory time, in milliseconds. 1 minute. */ // public static final long RacePreparatoryTime = 60 * 1000; - public static final long RacePreparatoryTime = 3 * 1000; + public static final long RacePreparatoryTime = 60 * 1000; diff --git a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java index 2855a770..b2a91889 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java @@ -93,7 +93,7 @@ public class HostController extends Controller { */ public void hostGamePressed() { try { - this.game = new Event(false); + this.game = new Event(true); connectSocket("localhost", 4942); } catch (EventConstructionException e) { Logger.getGlobal().log(Level.SEVERE, "Could not create Event.", e); diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index b2858477..fbcf0c2f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -191,6 +191,10 @@ public class RaceController extends Controller { StlMeshImporter importerMark = new StlMeshImporter(); importerMark.read(markerAsset); + URL alternateBoatAsset = HostController.class.getClassLoader().getResource("assets/V1.3 BurgerBoat.stl"); + StlMeshImporter importerBurgerBoat = new StlMeshImporter(); + importerBurgerBoat.read(alternateBoatAsset); + view3D = new View3D(); view3D.setDistance(1050); view3D.setYaw(0); @@ -222,10 +226,14 @@ public class RaceController extends Controller { } for(VisualiserBoat boat: race.getVisualiserRaceState().getBoats()) { - MeshView mesh = new MeshView(importer.getImport()); + MeshView mesh = null; + if(boat.getSourceID() == race.getVisualiserRaceState().getPlayerBoatID()) { + mesh = new MeshView(importer.getImport()); + } else { + mesh = new MeshView(importerBurgerBoat.getImport()); + } Subject3D subject = new Subject3D(mesh); subjects.add(subject); - AnimationTimer trackBoat = new AnimationTimer() { @Override public void handle(long now) { diff --git a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java index adfd93ab..63f3b3c8 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java @@ -33,9 +33,9 @@ public class Subject3D { this.heading = new Rotate(0, Rotate.Y_AXIS); this.mesh.getTransforms().addAll(position, heading, new Rotate(90, Rotate.X_AXIS), new Rotate(180, Rotate.Y_AXIS)); - this.position.xProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat x: " + newValue))); - this.position.yProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat y: " + newValue))); - this.position.zProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat z: " + newValue))); +// this.position.xProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat x: " + newValue))); +// this.position.yProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat y: " + newValue))); +// this.position.zProperty().addListener(((observable, oldValue, newValue) -> System.out.println("Boat z: " + newValue))); } public Shape3D getMesh() { diff --git a/racevisionGame/src/main/resources/assets/V1.3 BurgerBoat.stl b/racevisionGame/src/main/resources/assets/V1.3 BurgerBoat.stl new file mode 100644 index 0000000000000000000000000000000000000000..b8f0f54a702cae3dbf3e8a851cfcc35d0cf62850 GIT binary patch literal 53284 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 literal 0 HcmV?d00001 From 643f1454078effbdb535e52af565f4f79cc59341 Mon Sep 17 00:00:00 2001 From: cbt24 Date: Sat, 9 Sep 2017 14:44:58 +1200 Subject: [PATCH 08/59] Added mark radius 3D annotation to improve bird's eye visibility #story[1261] --- .../Controllers/RaceController.java | 30 +++++++++---------- .../java/visualiser/layout/MarkRadius.java | 15 ++++++++++ 2 files changed, 29 insertions(+), 16 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/MarkRadius.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index fbcf0c2f..ba95317f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -28,6 +28,7 @@ import shared.model.Mark; import visualiser.app.App; import visualiser.gameController.ControllerClient; import visualiser.gameController.Keys.ControlKey; +import visualiser.layout.MarkRadius; import visualiser.layout.Subject3D; import visualiser.layout.View3D; import visualiser.model.*; @@ -178,8 +179,6 @@ public class RaceController extends Controller { } private void initialiseView3D(VisualiserRaceEvent race) { - int scale = 1; - ObservableList subjects = FXCollections.observableArrayList(); //read 3d Assets @@ -216,13 +215,17 @@ public class RaceController extends Controller { for(Mark mark: race.getVisualiserRaceState().getMarks()) { MeshView mesh = new MeshView(importerMark.getImport()); - Subject3D subject = new Subject3D(mesh); -// subject.setX(mark.getPosition().getLongitude() * scale); -// subject.setZ(mark.getPosition().getLatitude()* scale); - subject.setX(gpsConverter.convertGPS(mark.getPosition()).getX() * scale); - subject.setZ(gpsConverter.convertGPS(mark.getPosition()).getY() * scale); - - subjects.add(subject); + Subject3D markModel = new Subject3D(mesh); + Subject3D markRadius = new MarkRadius(3); + double x = gpsConverter.convertGPS(mark.getPosition()).getX(); + double z = gpsConverter.convertGPS(mark.getPosition()).getY(); + markModel.setX(x); + markModel.setZ(z); + markRadius.setX(x); + markRadius.setZ(z); + + subjects.add(markModel); + subjects.add(markRadius); } for(VisualiserBoat boat: race.getVisualiserRaceState().getBoats()) { @@ -238,13 +241,8 @@ public class RaceController extends Controller { @Override public void handle(long now) { subject.setHeading(boat.getBearing().degrees()); -// subject.setHeading(0); -// subject.setX(boat.getPosition().getLongitude() * scale); -// subject.setZ(boat.getPosition().getLatitude()* scale); - double x = gpsConverter.convertGPS(boat.getPosition()).getX() * scale; - //System.out.println(x); - subject.setX(x); - subject.setZ(gpsConverter.convertGPS(boat.getPosition()).getY() * scale); + subject.setX(gpsConverter.convertGPS(boat.getPosition()).getX()); + subject.setZ(gpsConverter.convertGPS(boat.getPosition()).getY()); if(boat.getSourceID() == race.getVisualiserRaceState().getPlayerBoatID()) { //view3D.updatePivot(subject.getPosition()); } diff --git a/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java b/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java new file mode 100644 index 00000000..27f68efd --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java @@ -0,0 +1,15 @@ +package visualiser.layout; + +import javafx.scene.paint.Color; +import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.Cylinder; + +/** + * Created by cbt24 on 9/09/17. + */ +public class MarkRadius extends Subject3D { + public MarkRadius(double radius) { + super(new Cylinder(radius, 0)); + this.getMesh().setMaterial(new PhongMaterial(new Color(1, 0, 0, 0.5))); + } +} From 70f4a00d120c5e7dd5a3bad0be27821c50003172 Mon Sep 17 00:00:00 2001 From: cbt24 Date: Sat, 9 Sep 2017 17:09:14 +1200 Subject: [PATCH 09/59] Scaled down marks and boats to make 3rd person view more realistic - Added boat and mark annotations to support selection at large camera distance - Reduced collision radius to 15 m - Fixed event startup and XML files as race was crashing on start #story[1296] --- .../src/main/java/mock/app/Event.java | 4 +-- .../java/mock/model/SourceIdAllocator.java | 3 ++ .../src/main/java/shared/model/Boat.java | 4 +-- .../src/main/java/shared/model/Mark.java | 9 ++---- .../Controllers/HostController.java | 2 +- .../Controllers/RaceController.java | 32 ++++++++++++++----- .../java/visualiser/layout/BoatArrow.java | 17 ++++++++++ .../java/visualiser/layout/MarkRadius.java | 2 ++ .../java/visualiser/layout/Subject3D.java | 12 ++++++- .../mock/mockXML/raceSinglePlayer.xml | 1 - .../mock/mockXML/raceThreePlayers.xml | 3 -- 11 files changed, 64 insertions(+), 25 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/BoatArrow.java diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index 2c3da7ad..1ff92196 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -81,7 +81,7 @@ public class Event { */ public Event(boolean singlePlayer) throws EventConstructionException { - String raceXMLFile = "mock/mockXML/raceTest.xml"; + String raceXMLFile = "mock/mockXML/raceThreePlayers.xml"; String boatsXMLFile = "mock/mockXML/boatTest.xml"; String regattaXMLFile = "mock/mockXML/regattaTest.xml"; @@ -180,7 +180,7 @@ public class Event { public static String setRaceXMLAtCurrentTimeToNow(String raceXML) { //The start time is current time + 4 minutes. prestart is 3 minutes, and we add another minute. - long millisecondsToAdd = Constants.RacePreStartTime + 1 * 60 * 10000; + long millisecondsToAdd = Constants.RacePreStartTime + 1 * 60 * 1000; long secondsToAdd = millisecondsToAdd / 1000; //Scale the time using our time scalar. secondsToAdd = secondsToAdd / Constants.RaceTimeScale; diff --git a/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java b/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java index 17a7e85f..fb0cfd5a 100644 --- a/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java +++ b/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java @@ -42,11 +42,14 @@ public class SourceIdAllocator { } List allocatedIDs = mockRace.getRaceDataSource().getParticipants(); + System.out.println(allocatedIDs); List allIDs = new ArrayList<>(mockRace.getBoatDataSource().getBoats().keySet()); + System.out.println(allIDs); //Get list of unallocated ids. List unallocatedIDs = new ArrayList<>(allIDs); unallocatedIDs.removeAll(allocatedIDs); + System.out.println(unallocatedIDs.isEmpty()); if (!unallocatedIDs.isEmpty()) { diff --git a/racevisionGame/src/main/java/shared/model/Boat.java b/racevisionGame/src/main/java/shared/model/Boat.java index 31ce7ad4..1e4c0f09 100644 --- a/racevisionGame/src/main/java/shared/model/Boat.java +++ b/racevisionGame/src/main/java/shared/model/Boat.java @@ -411,14 +411,14 @@ public class Boat extends Collider { @Override public boolean rayCast(Boat boat) { if(boat != this) { - return rayCast(boat, 100); + return rayCast(boat, 15); } else return false; } @Override public void onCollisionEnter(Boat collider, Collision e) { if(e.getBearing().degrees() > 270 || e.getBearing().degrees() < 90) { - collider.bounce(100); + collider.bounce(15); } } } diff --git a/racevisionGame/src/main/java/shared/model/Mark.java b/racevisionGame/src/main/java/shared/model/Mark.java index d236d076..b4025b8e 100644 --- a/racevisionGame/src/main/java/shared/model/Mark.java +++ b/racevisionGame/src/main/java/shared/model/Mark.java @@ -29,11 +29,6 @@ public class Mark extends Collider{ */ private GPSCoordinate position; - /** - * Repulsion radius of the mark - */ - private double repulsionRadius = 50; - /** * Constructs a mark with a given source ID, name, and position. * @param sourceID The source ID of the mark. @@ -97,11 +92,11 @@ public class Mark extends Collider{ @Override public boolean rayCast(Boat boat) { - return rayCast(boat, repulsionRadius); + return rayCast(boat, 15); } @Override public void onCollisionEnter(Boat collider, Collision e) { - collider.bounce(repulsionRadius); + collider.bounce(15); } } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java index 454b6cdb..10bc9dbe 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java @@ -93,7 +93,7 @@ public class HostController extends Controller { */ public void hostGamePressed() { try { - this.game = new Event(true); + this.game = new Event(false); connectSocket("localhost", 4942); } catch (EventConstructionException e) { Logger.getGlobal().log(Level.SEVERE, "Could not create Event.", e); diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 64481229..affb155f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -14,6 +14,7 @@ import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; import javafx.scene.layout.GridPane; import javafx.scene.layout.StackPane; +import javafx.scene.shape.Box; import javafx.scene.shape.MeshView; import javafx.scene.shape.Sphere; import javafx.scene.transform.Translate; @@ -26,6 +27,7 @@ import visualiser.app.App; import visualiser.gameController.ControllerClient; import visualiser.gameController.Keys.ControlKey; import visualiser.gameController.Keys.KeyFactory; +import visualiser.layout.BoatArrow; import visualiser.layout.MarkRadius; import visualiser.layout.Subject3D; import visualiser.layout.View3D; @@ -206,16 +208,17 @@ public class RaceController extends Controller { view3D.setItems(viewSubjects); // Position and add each mark to view for(Mark mark: race.getVisualiserRaceState().getMarks()) { - Subject3D subject = new Subject3D(new Sphere(2)); - subject.setX(gpsConverter.convertGPS(mark.getPosition()).getX()); - subject.setZ(gpsConverter.convertGPS(mark.getPosition()).getY()); MeshView mesh = new MeshView(importerMark.getImport()); Subject3D markModel = new Subject3D(mesh); Subject3D markRadius = new MarkRadius(3); + double x = gpsConverter.convertGPS(mark.getPosition()).getX(); double z = gpsConverter.convertGPS(mark.getPosition()).getY(); + markModel.setX(x); markModel.setZ(z); + markModel.setScale(0.1); + markRadius.setX(x); markRadius.setZ(z); @@ -230,16 +233,29 @@ public class RaceController extends Controller { } else { mesh = new MeshView(importerBurgerBoat.getImport()); } - Subject3D subject = new Subject3D(mesh); - viewSubjects.add(subject); + Subject3D boatModel = new Subject3D(mesh); + Subject3D boatArrow = new BoatArrow(12); + + boatModel.setScale(0.1); + + viewSubjects.add(boatModel); + viewSubjects.add(boatArrow); // Track this boat's movement with the new subject AnimationTimer trackBoat = new AnimationTimer() { @Override public void handle(long now) { - subject.setHeading(boat.getBearing().degrees()); - subject.setX(gpsConverter.convertGPS(boat.getPosition()).getX()); - subject.setZ(gpsConverter.convertGPS(boat.getPosition()).getY()); + double heading = boat.getBearing().degrees(); + double x = gpsConverter.convertGPS(boat.getPosition()).getX(); + double z = gpsConverter.convertGPS(boat.getPosition()).getY(); + + boatModel.setHeading(heading); + boatModel.setX(x); + boatModel.setZ(z); + + boatArrow.setHeading(heading); + boatArrow.setX(x); + boatArrow.setZ(z); } }; trackBoat.start(); diff --git a/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java b/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java new file mode 100644 index 00000000..e682f6bd --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java @@ -0,0 +1,17 @@ +package visualiser.layout; + +import javafx.scene.paint.Color; +import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.Box; +import javafx.scene.transform.Rotate; + +/** + * Created by cbt24 on 9/09/17. + */ +public class BoatArrow extends Subject3D { + public BoatArrow(double length) { + super(new Box(length/3, 0, length)); + this.getMesh().getTransforms().add(new Rotate(-90, Rotate.X_AXIS)); + this.getMesh().setMaterial(new PhongMaterial(new Color(1, 0, 0, 0.5))); + } +} diff --git a/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java b/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java index 27f68efd..1a7f3634 100644 --- a/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java +++ b/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java @@ -3,6 +3,7 @@ package visualiser.layout; import javafx.scene.paint.Color; import javafx.scene.paint.PhongMaterial; import javafx.scene.shape.Cylinder; +import javafx.scene.transform.Rotate; /** * Created by cbt24 on 9/09/17. @@ -10,6 +11,7 @@ import javafx.scene.shape.Cylinder; public class MarkRadius extends Subject3D { public MarkRadius(double radius) { super(new Cylinder(radius, 0)); + this.getMesh().getTransforms().add(new Rotate(-90, Rotate.X_AXIS)); this.getMesh().setMaterial(new PhongMaterial(new Color(1, 0, 0, 0.5))); } } diff --git a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java index af76f4f4..cf9c13d7 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java @@ -2,6 +2,7 @@ package visualiser.layout; import javafx.scene.shape.Shape3D; import javafx.scene.transform.Rotate; +import javafx.scene.transform.Scale; import javafx.scene.transform.Translate; /** @@ -23,16 +24,19 @@ public class Subject3D { */ private Rotate heading; + private Scale scale; + /** * Constructor for view subject wrapper * @param mesh to be rendered */ public Subject3D(Shape3D mesh) { this.mesh = mesh; + this.scale = new Scale(); this.position = new Translate(); this.heading = new Rotate(0, Rotate.Y_AXIS); - this.mesh.getTransforms().addAll(position, heading, new Rotate(90, Rotate.X_AXIS), new Rotate(180, Rotate.Y_AXIS)); + this.mesh.getTransforms().addAll(position, scale, heading, new Rotate(90, Rotate.X_AXIS), new Rotate(180, Rotate.Y_AXIS)); } public Shape3D getMesh() { @@ -47,6 +51,12 @@ public class Subject3D { return heading; } + public void setScale(double scale) { + this.scale.setX(scale); + this.scale.setY(scale); + this.scale.setZ(scale); + } + public void setX(double x) { position.setX(x); } diff --git a/racevisionGame/src/main/resources/mock/mockXML/raceSinglePlayer.xml b/racevisionGame/src/main/resources/mock/mockXML/raceSinglePlayer.xml index e9e9378a..c4efcd17 100644 --- a/racevisionGame/src/main/resources/mock/mockXML/raceSinglePlayer.xml +++ b/racevisionGame/src/main/resources/mock/mockXML/raceSinglePlayer.xml @@ -5,7 +5,6 @@ RACE_CREATION_TIME - diff --git a/racevisionGame/src/main/resources/mock/mockXML/raceThreePlayers.xml b/racevisionGame/src/main/resources/mock/mockXML/raceThreePlayers.xml index e0b81837..c4efcd17 100644 --- a/racevisionGame/src/main/resources/mock/mockXML/raceThreePlayers.xml +++ b/racevisionGame/src/main/resources/mock/mockXML/raceThreePlayers.xml @@ -5,9 +5,6 @@ RACE_CREATION_TIME - - - From e2b868d815988813d6b78778ccaec4ebc6eaf64e Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Sun, 10 Sep 2017 14:49:16 +1200 Subject: [PATCH 10/59] Added boundaries to the map, which are drawn by the race #story[1261] --- .../Controllers/RaceController.java | 10 ++- .../java/visualiser/layout/Boundary3D.java | 89 +++++++++++++++++++ .../java/visualiser/utils/GPSConverter.java | 7 ++ 3 files changed, 102 insertions(+), 4 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/Boundary3D.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index affb155f..195b373a 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -27,10 +27,7 @@ import visualiser.app.App; import visualiser.gameController.ControllerClient; import visualiser.gameController.Keys.ControlKey; import visualiser.gameController.Keys.KeyFactory; -import visualiser.layout.BoatArrow; -import visualiser.layout.MarkRadius; -import visualiser.layout.Subject3D; -import visualiser.layout.View3D; +import visualiser.layout.*; import visualiser.model.*; import visualiser.utils.GPSConverter; @@ -206,6 +203,11 @@ public class RaceController extends Controller { final GPSConverter gpsConverter = new GPSConverter(raceData, 450, 450); view3D.setItems(viewSubjects); + + Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); + for (Subject3D subject3D: boundary3D.getBoundaryNodes()){ + viewSubjects.add(subject3D); + } // Position and add each mark to view for(Mark mark: race.getVisualiserRaceState().getMarks()) { MeshView mesh = new MeshView(importerMark.getImport()); diff --git a/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java b/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java new file mode 100644 index 00000000..beb59914 --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java @@ -0,0 +1,89 @@ +package visualiser.layout; + +import com.sun.corba.se.impl.orbutil.graph.Graph; +import javafx.scene.shape.Box; +import javafx.scene.shape.MeshView; +import javafx.scene.shape.Rectangle; +import javafx.scene.shape.Sphere; +import shared.model.GPSCoordinate; +import visualiser.model.GraphCoordinate; +import visualiser.utils.GPSConverter; + +import java.util.ArrayList; +import java.util.List; + +/** + * Class that creates a 3d boundary based on gps coordinates + */ +public class Boundary3D { + + public static double thickness = 1; + private List boundaryNodes = new ArrayList<>(); + private List boundaryConnectors = new ArrayList<>(); + private GPSConverter gpsConverter; + + public Boundary3D(List points, GPSConverter gpsConverter){ + this.gpsConverter = gpsConverter; + setBoundaryNodes(points); + } + + /** + * Splits up the list so that it generates a edge of the boundary + * @param points boundary gpscoordinate + */ + private void setBoundaryNodes(List points){ + if (points.size() < 2){ + return; + } + System.out.println(points.size()); + for (int i = 0; i < points.size(); i++){ + if (i + 1 != points.size()){ + addBound(points.get(i), points.get(i + 1)); + } else { + addBound(points.get(i), points.get(0)); + } + } + } + + /** + * Add a two point boundary this will create a sphere at coord1 and a line to coord 2 + * this is to reduce double up (2 spheres in one point). + * @param coord1 point to make sphere and start the line. + * @param coord2 point to end the line. + */ + private void addBound(GPSCoordinate coord1, GPSCoordinate coord2){ + GraphCoordinate graphCoord1 = gpsConverter.convertGPS(coord1); + GraphCoordinate graphCoord2 = gpsConverter.convertGPS(coord2); + GraphCoordinate avgCoord = new GraphCoordinate((graphCoord1.getX() + graphCoord2.getX()) / 2, + (graphCoord1.getY() + graphCoord2.getY()) / 2); + + double a = (graphCoord1.getX() - graphCoord2.getX()); + double b = (graphCoord1.getY() - graphCoord2.getY()); + double c = Math.sqrt(a * a + b * b); + + + Subject3D bound1 = new Subject3D(new Sphere(thickness * 2)); + bound1.setX(graphCoord1.getX()); + bound1.setZ(graphCoord1.getY()); + boundaryNodes.add(bound1); + + Subject3D connector = new Subject3D(new Box(c, thickness, thickness)); + connector.setX(avgCoord.getX()); + connector.setZ(avgCoord.getY()); + double angle = 90 + Math.toDegrees(GPSConverter.getAngle(graphCoord2, graphCoord1)); + connector.setHeading(angle); + + boundaryConnectors.add(connector); + } + + /** + * get the 3d objects to draw + * @return 3d boundary to draw + */ + public List getBoundaryNodes(){ + //these two must be concatenated with nodes after connectors else the spheres will not overlap the lines + ArrayList result = new ArrayList<>(boundaryConnectors); + result.addAll(boundaryNodes); + return result; + } +} diff --git a/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java b/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java index 22dd937f..a166b3cb 100644 --- a/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java +++ b/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java @@ -101,4 +101,11 @@ public class GPSConverter { return convertGPS(coordinate.getLatitude(), coordinate.getLongitude()); } + /** + * Get angle between two GraphCoordinates + */ + public static double getAngle(GraphCoordinate coord1, GraphCoordinate coord2){ + return Math.atan2(coord2.getX() - coord1.getX(), coord2.getY() - coord1.getY()); + } + } From a7eefca13a15d34da184ba2190f4a112b6d0cb4a Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Sun, 10 Sep 2017 16:15:37 +1200 Subject: [PATCH 11/59] Work in progress, the perlin noise is now generated, however, a good colour should be selected as well as using a subject3d instead of a imageview #story[1261] --- .../Controllers/RaceController.java | 4 +- .../java/visualiser/layout/SeaSurface.java | 99 +++++++++++++++++++ .../main/java/visualiser/layout/View3D.java | 2 +- .../utils/PerlinNoiseGenerator.java | 87 ++++++++++++++++ 4 files changed, 190 insertions(+), 2 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/SeaSurface.java create mode 100644 racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 195b373a..3826bba3 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -191,13 +191,15 @@ public class RaceController extends Controller { StlMeshImporter importerBurgerBoat = new StlMeshImporter(); importerBurgerBoat.read(alternateBoatAsset); + SeaSurface sea = new SeaSurface(900); + view3D = new View3D(); view3D.setDistance(1050); view3D.setYaw(0); view3D.setPitch(60); view3D.enableTracking(); + canvasBase.add(sea.getSurface(), 0, 0); canvasBase.add(view3D, 0, 0); - // Set up projection from GPS to view RaceDataSource raceData = visualiserRace.getVisualiserRaceState().getRaceDataSource(); final GPSConverter gpsConverter = new GPSConverter(raceData, 450, 450); diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java new file mode 100644 index 00000000..a9395996 --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -0,0 +1,99 @@ +package visualiser.layout; + +import javafx.geometry.Point3D; +import javafx.scene.image.Image; +import javafx.scene.image.ImageView; +import javafx.scene.image.PixelWriter; +import javafx.scene.image.WritableImage; +import javafx.scene.paint.Color; +import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.MeshView; +import javafx.scene.shape.TriangleMesh; +import visualiser.utils.PerlinNoiseGenerator; + +/** + * Created by fwy13 on 10/09/17. + */ +public class SeaSurface { + private float[][] noiseArray; + private ImageView surface; + + public SeaSurface(int size){ + noiseArray = PerlinNoiseGenerator.createNoise(size); + createSurface(); + } + + private void createSurface(){ + Image diffuseMap = createImage(noiseArray.length, noiseArray); + + PhongMaterial material = new PhongMaterial(); + material.setDiffuseMap(diffuseMap); + material.setSpecularColor(Color.WHITE); + + // testing / debugging stuff: show diffuse map on chart + ImageView iv = new ImageView(diffuseMap); + //iv.setTranslateX(-0.5 * noiseArray.length); + //iv.setTranslateY(-0.10 * noiseArray.length); + iv.setRotate(90); + //iv.setRotationAxis(new Point3D(1, 0, 0)); + surface = iv; + } + + /** + * Create texture for uv mapping + * @param size + * @param noise + * @return + */ + private Image createImage(double size, float[][] noise) { + + int width = (int) size; + int height = (int) size; + + WritableImage wr = new WritableImage(width, height); + PixelWriter pw = wr.getPixelWriter(); + for (int x = 0; x < width; x++) { + for (int y = 0; y < height; y++) { + + float value = noise[x][y]; + + double gray = normalizeValue(value, -.5, .5, 0., 1.); + + gray = clamp(gray, 0, 1); + + Color lightBlue = new Color(0.2, 0.2, 1, 1); + Color lighterBlue = new Color(0.25, 0.225, 1, 1); + + Color color = lighterBlue.interpolate(lightBlue, gray); + + pw.setColor(x, y, color); + + } + } + + return wr; + + } + + private static double normalizeValue(double value, double min, double max, double newMin, double newMax) { + + return (value - min) * (newMax - newMin) / (max - min) + newMin; + + } + + private static double clamp(double value, double min, double max) { + + if (Double.compare(value, min) < 0) + return min; + + if (Double.compare(value, max) > 0) + return max; + + return value; + } + + public ImageView getSurface(){ + return surface; + } + +} diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 27fe6086..7b7d9a77 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -98,7 +98,7 @@ public class View3D extends Pane { scene.widthProperty().bind(this.widthProperty()); scene.heightProperty().bind(this.heightProperty()); - scene.setFill(new Color(0.2, 0.6, 1, 1)); + //scene.setFill(new Color(0.2, 0.6, 1, 1)); scene.setCamera(buildCamera()); diff --git a/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java new file mode 100644 index 00000000..a5093b50 --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java @@ -0,0 +1,87 @@ +package visualiser.utils; + +/** + * Created by fwy13 on 10/09/17. + */ +public class PerlinNoiseGenerator { + + + /** + * Create an array of the given size with values of perlin noise + * @param size + * @return + */ + public static float[][] createNoise( int size) { + float[][] noiseArray = new float[(int) size][(int) size]; + + for (int x = 0; x < size; x++) { + for (int y = 0; y < size; y++) { + + double frequency = 20.0 / (double) size; + + double noise = ImprovedNoise.noise(x * frequency, y * frequency, 0); + + noiseArray[x][y] = (float) noise; + } + } + + return noiseArray; + + } + + /** + * Perlin noise generator + * + * // JAVA REFERENCE IMPLEMENTATION OF IMPROVED NOISE - COPYRIGHT 2002 KEN PERLIN. + * // http://mrl.nyu.edu/~perlin/paper445.pdf + * // http://mrl.nyu.edu/~perlin/noise/ + */ + public final static class ImprovedNoise { + static public double noise(double x, double y, double z) { + int X = (int)Math.floor(x) & 255, // FIND UNIT CUBE THAT + Y = (int)Math.floor(y) & 255, // CONTAINS POINT. + Z = (int)Math.floor(z) & 255; + x -= Math.floor(x); // FIND RELATIVE X,Y,Z + y -= Math.floor(y); // OF POINT IN CUBE. + z -= Math.floor(z); + double u = fade(x), // COMPUTE FADE CURVES + v = fade(y), // FOR EACH OF X,Y,Z. + w = fade(z); + int A = p[X ]+Y, AA = p[A]+Z, AB = p[A+1]+Z, // HASH COORDINATES OF + B = p[X+1]+Y, BA = p[B]+Z, BB = p[B+1]+Z; // THE 8 CUBE CORNERS, + + return lerp(w, lerp(v, lerp(u, grad(p[AA ], x , y , z ), // AND ADD + grad(p[BA ], x-1, y , z )), // BLENDED + lerp(u, grad(p[AB ], x , y-1, z ), // RESULTS + grad(p[BB ], x-1, y-1, z ))),// FROM 8 + lerp(v, lerp(u, grad(p[AA+1], x , y , z-1 ), // CORNERS + grad(p[BA+1], x-1, y , z-1 )), // OF CUBE + lerp(u, grad(p[AB+1], x , y-1, z-1 ), + grad(p[BB+1], x-1, y-1, z-1 )))); + } + static double fade(double t) { return t * t * t * (t * (t * 6 - 15) + 10); } + static double lerp(double t, double a, double b) { return a + t * (b - a); } + static double grad(int hash, double x, double y, double z) { + int h = hash & 15; // CONVERT LO 4 BITS OF HASH CODE + double u = h<8 ? x : y, // INTO 12 GRADIENT DIRECTIONS. + v = h<4 ? y : h==12||h==14 ? x : z; + return ((h&1) == 0 ? u : -u) + ((h&2) == 0 ? v : -v); + } + static final int p[] = new int[512], permutation[] = { 151,160,137,91,90,15, + 131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23, + 190, 6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33, + 88,237,149,56,87,174,20,125,136,171,168, 68,175,74,165,71,134,139,48,27,166, + 77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244, + 102,143,54, 65,25,63,161, 1,216,80,73,209,76,132,187,208, 89,18,169,200,196, + 135,130,116,188,159,86,164,100,109,198,173,186, 3,64,52,217,226,250,124,123, + 5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42, + 223,183,170,213,119,248,152, 2,44,154,163, 70,221,153,101,155,167, 43,172,9, + 129,22,39,253, 19,98,108,110,79,113,224,232,178,185, 112,104,218,246,97,228, + 251,34,242,193,238,210,144,12,191,179,162,241, 81,51,145,235,249,14,239,107, + 49,192,214, 31,181,199,106,157,184, 84,204,176,115,121,50,45,127, 4,150,254, + 138,236,205,93,222,114,67,29,24,72,243,141,128,195,78,66,215,61,156,180 + }; + static { for (int i=0; i < 256 ; i++) p[256+i] = p[i] = permutation[i]; } + } + +} From 9ac9c2592332b035c86dbb8670cb6bae56cb4313 Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Mon, 11 Sep 2017 00:54:11 +1200 Subject: [PATCH 12/59] Made sea surface look like a sea surface which is randomly generated each time, size may need to be altered a bit else it will cause the program to slow #story[1261] --- .../Controllers/HostController.java | 2 + .../Controllers/RaceController.java | 10 +- .../main/java/visualiser/layout/Plane3D.java | 156 ++++++++++++++++++ .../java/visualiser/layout/SeaSurface.java | 33 ++-- .../main/java/visualiser/layout/View3D.java | 11 +- .../utils/PerlinNoiseGenerator.java | 4 +- 6 files changed, 194 insertions(+), 22 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/Plane3D.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java index 10bc9dbe..46acb405 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java @@ -14,6 +14,8 @@ import javafx.scene.layout.GridPane; import javafx.scene.shape.MeshView; import mock.app.Event; import mock.exceptions.EventConstructionException; +import visualiser.layout.Plane3D; +import visualiser.layout.SeaSurface; import visualiser.layout.Subject3D; import visualiser.layout.View3D; diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 3826bba3..d087ebaa 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -191,21 +191,25 @@ public class RaceController extends Controller { StlMeshImporter importerBurgerBoat = new StlMeshImporter(); importerBurgerBoat.read(alternateBoatAsset); - SeaSurface sea = new SeaSurface(900); - view3D = new View3D(); + view3D = new View3D(false); view3D.setDistance(1050); view3D.setYaw(0); view3D.setPitch(60); view3D.enableTracking(); - canvasBase.add(sea.getSurface(), 0, 0); canvasBase.add(view3D, 0, 0); + // Set up projection from GPS to view RaceDataSource raceData = visualiserRace.getVisualiserRaceState().getRaceDataSource(); final GPSConverter gpsConverter = new GPSConverter(raceData, 450, 450); view3D.setItems(viewSubjects); + //viewSubjects.add(new Subject3D(new MeshView(new Plane3D(50, 50, 1, 1)))); + + SeaSurface sea = new SeaSurface(4000, 200, 250, 210); + viewSubjects.add(sea.getSurface()); + Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); for (Subject3D subject3D: boundary3D.getBoundaryNodes()){ viewSubjects.add(subject3D); diff --git a/racevisionGame/src/main/java/visualiser/layout/Plane3D.java b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java new file mode 100644 index 00000000..2589662c --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java @@ -0,0 +1,156 @@ +package visualiser.layout; + +import com.sun.javafx.geom.PickRay; +import com.sun.javafx.scene.input.PickResultChooser; +import com.sun.javafx.sg.prism.NGNode; +import javafx.scene.Node; +import javafx.scene.shape.*; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * Created by fwy13 on 10/09/17. + */ +public class Plane3D extends TriangleMesh{ + + /** + * Lenght is up down, and width is left right + * @param width + * @param length + * @param subdivisionsWidth + * @param subdivisionsLength + */ + public Plane3D(float width, float length, int subdivisionsWidth, int subdivisionsLength){ + + float subWidth = width / (float) subdivisionsWidth; + float subLength = length / (float) subdivisionsLength; + + ArrayList pointsList = new ArrayList<>(); + ArrayList textureCoord = new ArrayList<>(); + float startW = -width/2; + float startL = -length/2; + + for (float l = 0; l <= length; l += subLength) { + for (float w = 0; w <= width; w += subWidth){ + //add points + pointsList.add(w + startW); + pointsList.add(l + startL); + pointsList.add(0f); + //addTexture coords + textureCoord.add(1 - w/width); + textureCoord.add(1 - l/length); + } + } + + this.getPoints().setAll(copyListToArray(pointsList)); + this.getTexCoords().setAll(copyListToArray(textureCoord)); + + + ArrayList faces = new ArrayList<>(); +// p0 1 2 t2 0 3 +// p2 1 3 t3 0 1 +// faces.add(2); +// faces.add(3); +// faces.add(0); +// faces.add(2); +// faces.add(1); +// faces.add(0); +// faces.add(2); +// faces.add(3); +// faces.add(1); +// faces.add(0); +// faces.add(3); +// faces.add(1); + +// faces.add(1); +// faces.add(1); +// faces.add(0); +// faces.add(0); +// faces.add(3); +// faces.add(3); +// faces.add(4); +// faces.add(4); +// faces.add(1); +// faces.add(1); +// faces.add(3); +// faces.add(3); +// faces.add(2); +// faces.add(2); +// faces.add(1); +// faces.add(1); +// faces.add(4); +// faces.add(4); +// faces.add(5); +// faces.add(5); +// faces.add(2); +// faces.add(2); +// faces.add(4); +// faces.add(4); + int listSize = pointsList.size()/3; + int divsInRow = subdivisionsWidth + 1; + for (int i = 0; i < listSize; i++){ + int row = i/divsInRow; + + if (row < 1){ + continue; + } + + boolean notFirstCol = (i) % divsInRow != 0; + boolean notLastCol = (i + 1) % divsInRow != 0; + if (notFirstCol){ + faces.add(i); + faces.add(i); +// printPointAtIndex(i); + faces.add(i - divsInRow); + faces.add(i - divsInRow); +// printPointAtIndex(i - divsInRow); + faces.add(i - 1); + faces.add(i - 1); +// printPointAtIndex(i-1); + } + if (notLastCol) { + faces.add(i - divsInRow + 1); + faces.add(i - divsInRow + 1); +// printPointAtIndex(i - divsInRow + 1); + faces.add(i - divsInRow); + faces.add(i - divsInRow); +// printPointAtIndex(i - divsInRow); + faces.add(i); + faces.add(i); +// printPointAtIndex(i); + } + + } + this.getFaces().setAll(copyListToIntArray(faces)); + + + } + + private void printPointAtIndex(int index){ + int i = index * 3; + float x = this.getPoints().get(i); + float y = this.getPoints().get(i + 1); + float z = this.getPoints().get(i + 2); + System.out.println(String.format("Point at %d is x:%f, y:%f, z:%f", index, x, y, z)); + } + + private static float[] copyListToArray(List list){ + float[] res = new float[list.size()]; + for (int i = 0; i < list.size(); i++){ + res[i] = list.get(i); + } + return res; + } + + private static int[] copyListToIntArray(List list){ + int[] res = new int[list.size()]; + for (int i = 0; i < list.size(); i++){ + res[i] = list.get(i); + } + return res; + } + + +} diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index a9395996..6da2e5e3 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -7,6 +7,7 @@ import javafx.scene.image.PixelWriter; import javafx.scene.image.WritableImage; import javafx.scene.paint.Color; import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.Box; import javafx.scene.shape.MeshView; import javafx.scene.shape.TriangleMesh; import visualiser.utils.PerlinNoiseGenerator; @@ -16,11 +17,13 @@ import visualiser.utils.PerlinNoiseGenerator; */ public class SeaSurface { private float[][] noiseArray; - private ImageView surface; + private Subject3D surface; - public SeaSurface(int size){ - noiseArray = PerlinNoiseGenerator.createNoise(size); + public SeaSurface(int size, double freq, double x, double z){ + noiseArray = PerlinNoiseGenerator.createNoise(size, freq); createSurface(); + surface.setZ(z); + surface.setX(x); } private void createSurface(){ @@ -30,13 +33,14 @@ public class SeaSurface { material.setDiffuseMap(diffuseMap); material.setSpecularColor(Color.WHITE); - // testing / debugging stuff: show diffuse map on chart - ImageView iv = new ImageView(diffuseMap); - //iv.setTranslateX(-0.5 * noiseArray.length); - //iv.setTranslateY(-0.10 * noiseArray.length); - iv.setRotate(90); - //iv.setRotationAxis(new Point3D(1, 0, 0)); - surface = iv; + Plane3D seaPlane = new Plane3D(noiseArray.length, noiseArray.length, 10, 10); + MeshView seaSurface = new MeshView(seaPlane); +// Box seaSurface = new Box(noiseArray.length, 0.1, noiseArray.length); + seaSurface.setMaterial(material); + //seaSurface.setRotationAxis(new Point3D(1, 0, 0)); + //seaSurface.setRotate(90); + + surface = new Subject3D(seaSurface); } /** @@ -61,10 +65,11 @@ public class SeaSurface { gray = clamp(gray, 0, 1); - Color lightBlue = new Color(0.2, 0.2, 1, 1); - Color lighterBlue = new Color(0.25, 0.225, 1, 1); + Color brightBlue = new Color(0.06, 0.5, .78, 1); + Color lightBlue = new Color(0.15, 0.68, .88, 1); + Color lighterBlue = new Color(0.28, 0.73, .91, 1); - Color color = lighterBlue.interpolate(lightBlue, gray); + Color color = Color.WHITE.interpolate(brightBlue, gray).interpolate(lighterBlue, gray).interpolate(lightBlue, gray); pw.setColor(x, y, color); @@ -92,7 +97,7 @@ public class SeaSurface { return value; } - public ImageView getSurface(){ + public Subject3D getSurface(){ return surface; } diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 7b7d9a77..2096e3e0 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -90,7 +90,7 @@ public class View3D extends Pane { /** * Default constructor for View3D. Sets up Scene and PerspectiveCamera. */ - public View3D() { + public View3D(boolean fill) { this.world = new Group(); this.selectionMap = new HashMap<>(); this.target = null; @@ -98,13 +98,18 @@ public class View3D extends Pane { scene.widthProperty().bind(this.widthProperty()); scene.heightProperty().bind(this.heightProperty()); - //scene.setFill(new Color(0.2, 0.6, 1, 1)); - + if (fill) { + scene.setFill(new Color(0.2, 0.6, 1, 1)); + } scene.setCamera(buildCamera()); this.getChildren().add(scene); } + public View3D(){ + this(true); + } + /** * Sets up camera view frustum and binds transformations * @return perspective camera diff --git a/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java index a5093b50..337dc656 100644 --- a/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java +++ b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java @@ -11,13 +11,13 @@ public class PerlinNoiseGenerator { * @param size * @return */ - public static float[][] createNoise( int size) { + public static float[][] createNoise( int size, double freq) { float[][] noiseArray = new float[(int) size][(int) size]; for (int x = 0; x < size; x++) { for (int y = 0; y < size; y++) { - double frequency = 20.0 / (double) size; + double frequency = freq / (double) size; double noise = ImprovedNoise.noise(x * frequency, y * frequency, 0); From 08ca42f786886a61e91c153caa7d39372a0c1631 Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Mon, 11 Sep 2017 01:05:58 +1200 Subject: [PATCH 13/59] Wrote some missing java docs #story[1261] --- .../main/java/visualiser/layout/Plane3D.java | 68 ++++++------------- .../java/visualiser/layout/SeaSurface.java | 44 ++++++++++-- .../main/java/visualiser/layout/View3D.java | 1 + .../java/visualiser/utils/GPSConverter.java | 5 +- .../utils/PerlinNoiseGenerator.java | 7 +- 5 files changed, 69 insertions(+), 56 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/layout/Plane3D.java b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java index 2589662c..b8e03157 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Plane3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java @@ -11,19 +11,19 @@ import java.util.Arrays; import java.util.List; /** - * Created by fwy13 on 10/09/17. + * 3D plane */ public class Plane3D extends TriangleMesh{ /** * Lenght is up down, and width is left right - * @param width - * @param length - * @param subdivisionsWidth - * @param subdivisionsLength + * @param width width of the plane + * @param length length of the plane + * @param subdivisionsWidth number of divisions along the width of the plane + * @param subdivisionsLength number of division along the length of the plane */ public Plane3D(float width, float length, int subdivisionsWidth, int subdivisionsLength){ - + //add texture points and vertex points float subWidth = width / (float) subdivisionsWidth; float subLength = length / (float) subdivisionsLength; @@ -47,47 +47,9 @@ public class Plane3D extends TriangleMesh{ this.getPoints().setAll(copyListToArray(pointsList)); this.getTexCoords().setAll(copyListToArray(textureCoord)); - + //connect points to make faces ArrayList faces = new ArrayList<>(); -// p0 1 2 t2 0 3 -// p2 1 3 t3 0 1 -// faces.add(2); -// faces.add(3); -// faces.add(0); -// faces.add(2); -// faces.add(1); -// faces.add(0); -// faces.add(2); -// faces.add(3); -// faces.add(1); -// faces.add(0); -// faces.add(3); -// faces.add(1); - -// faces.add(1); -// faces.add(1); -// faces.add(0); -// faces.add(0); -// faces.add(3); -// faces.add(3); -// faces.add(4); -// faces.add(4); -// faces.add(1); -// faces.add(1); -// faces.add(3); -// faces.add(3); -// faces.add(2); -// faces.add(2); -// faces.add(1); -// faces.add(1); -// faces.add(4); -// faces.add(4); -// faces.add(5); -// faces.add(5); -// faces.add(2); -// faces.add(2); -// faces.add(4); -// faces.add(4); + int listSize = pointsList.size()/3; int divsInRow = subdivisionsWidth + 1; for (int i = 0; i < listSize; i++){ @@ -128,6 +90,10 @@ public class Plane3D extends TriangleMesh{ } + /** + * Testing function to see if the points are correct + * @param index index that the points correspond to (remember 3 is a point) + */ private void printPointAtIndex(int index){ int i = index * 3; float x = this.getPoints().get(i); @@ -136,6 +102,11 @@ public class Plane3D extends TriangleMesh{ System.out.println(String.format("Point at %d is x:%f, y:%f, z:%f", index, x, y, z)); } + /** + * copies the list to a float array because java List.toArray isn't working + * @param list list to copy + * @return array + */ private static float[] copyListToArray(List list){ float[] res = new float[list.size()]; for (int i = 0; i < list.size(); i++){ @@ -144,6 +115,11 @@ public class Plane3D extends TriangleMesh{ return res; } + /** + * copies the list to an integer array because java List.toArray isn't working + * @param list list to copy + * @return array + */ private static int[] copyListToIntArray(List list){ int[] res = new int[list.size()]; for (int i = 0; i < list.size(); i++){ diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index 6da2e5e3..666503d6 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -13,12 +13,19 @@ import javafx.scene.shape.TriangleMesh; import visualiser.utils.PerlinNoiseGenerator; /** - * Created by fwy13 on 10/09/17. + * Creates a SeaSurface */ public class SeaSurface { private float[][] noiseArray; private Subject3D surface; + /** + * Sea Surface Constructor + * @param size size of the sea surface (has to be square for simplicity's sake) + * @param freq frequency the perlin noise is to be generated at + * @param x offset that the sea should be set at position-wise + * @param z offset that the sea should be set at position-wise + */ public SeaSurface(int size, double freq, double x, double z){ noiseArray = PerlinNoiseGenerator.createNoise(size, freq); createSurface(); @@ -26,6 +33,9 @@ public class SeaSurface { surface.setX(x); } + /** + * Creates the sea surface + */ private void createSurface(){ Image diffuseMap = createImage(noiseArray.length, noiseArray); @@ -45,9 +55,9 @@ public class SeaSurface { /** * Create texture for uv mapping - * @param size - * @param noise - * @return + * @param size size of the image to make + * @param noise array of noise + * @return image that is created */ private Image createImage(double size, float[][] noise) { @@ -56,6 +66,7 @@ public class SeaSurface { WritableImage wr = new WritableImage(width, height); PixelWriter pw = wr.getPixelWriter(); + //interpolate colours based on noise for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { @@ -65,13 +76,14 @@ public class SeaSurface { gray = clamp(gray, 0, 1); + //values to interpolate on Color brightBlue = new Color(0.06, 0.5, .78, 1); Color lightBlue = new Color(0.15, 0.68, .88, 1); Color lighterBlue = new Color(0.28, 0.73, .91, 1); - Color color = Color.WHITE.interpolate(brightBlue, gray).interpolate(lighterBlue, gray).interpolate(lightBlue, gray); + Color colour = Color.WHITE.interpolate(brightBlue, gray).interpolate(lighterBlue, gray).interpolate(lightBlue, gray); - pw.setColor(x, y, color); + pw.setColor(x, y, colour); } } @@ -80,12 +92,28 @@ public class SeaSurface { } + /** + * Nomalises the values so that the colours are correct + * @param value value to normalise + * @param min current min + * @param max current max + * @param newMin new min + * @param newMax new max + * @return returns normalised value + */ private static double normalizeValue(double value, double min, double max, double newMin, double newMax) { return (value - min) * (newMax - newMin) / (max - min) + newMin; } + /** + * clamps a value between a min and max + * @param value value to clamp + * @param min minimum value it can be + * @param max maximum value it can be + * @return result after clamp + */ private static double clamp(double value, double min, double max) { if (Double.compare(value, min) < 0) @@ -97,6 +125,10 @@ public class SeaSurface { return value; } + /** + * Get surface + * @return the surface so it can be drawn + */ public Subject3D getSurface(){ return surface; } diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 2096e3e0..9f080747 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -89,6 +89,7 @@ public class View3D extends Pane { /** * Default constructor for View3D. Sets up Scene and PerspectiveCamera. + * @param fill whether or not to fill the background of the view. */ public View3D(boolean fill) { this.world = new Group(); diff --git a/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java b/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java index a166b3cb..542b043f 100644 --- a/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java +++ b/racevisionGame/src/main/java/visualiser/utils/GPSConverter.java @@ -102,7 +102,10 @@ public class GPSConverter { } /** - * Get angle between two GraphCoordinates + * Gets the bearing between two coordinates + * @param coord1 coordinate 1 + * @param coord2 coordinate 2 + * @return return the bearing between the two. */ public static double getAngle(GraphCoordinate coord1, GraphCoordinate coord2){ return Math.atan2(coord2.getX() - coord1.getX(), coord2.getY() - coord1.getY()); diff --git a/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java index 337dc656..00167656 100644 --- a/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java +++ b/racevisionGame/src/main/java/visualiser/utils/PerlinNoiseGenerator.java @@ -1,15 +1,16 @@ package visualiser.utils; /** - * Created by fwy13 on 10/09/17. + * Perlin Noise Generator */ public class PerlinNoiseGenerator { /** * Create an array of the given size with values of perlin noise - * @param size - * @return + * @param size size of array that you wish to create + * @param freq frequency that the noise is to be generated at. + * @return noise generated */ public static float[][] createNoise( int size, double freq) { float[][] noiseArray = new float[(int) size][(int) size]; From ae75bb86d35b21bde619635e5a6eae2237a82da2 Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Mon, 11 Sep 2017 02:48:00 +1200 Subject: [PATCH 14/59] Resized models to a similar size of the collision detectors. #story[1261] --- .../Controllers/RaceController.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index d087ebaa..f382b5ff 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -218,20 +218,20 @@ public class RaceController extends Controller { for(Mark mark: race.getVisualiserRaceState().getMarks()) { MeshView mesh = new MeshView(importerMark.getImport()); Subject3D markModel = new Subject3D(mesh); - Subject3D markRadius = new MarkRadius(3); +// Subject3D markRadius = new MarkRadius(3); double x = gpsConverter.convertGPS(mark.getPosition()).getX(); double z = gpsConverter.convertGPS(mark.getPosition()).getY(); markModel.setX(x); markModel.setZ(z); - markModel.setScale(0.1); + markModel.setScale(3.5); - markRadius.setX(x); - markRadius.setZ(z); +// markRadius.setX(x); +// markRadius.setZ(z); viewSubjects.add(markModel); - viewSubjects.add(markRadius); +// viewSubjects.add(markRadius); } // Position and add each boat to view for(VisualiserBoat boat: race.getVisualiserRaceState().getBoats()) { @@ -242,12 +242,12 @@ public class RaceController extends Controller { mesh = new MeshView(importerBurgerBoat.getImport()); } Subject3D boatModel = new Subject3D(mesh); - Subject3D boatArrow = new BoatArrow(12); + //Subject3D boatArrow = new BoatArrow(12); - boatModel.setScale(0.1); + boatModel.setScale(1.5); viewSubjects.add(boatModel); - viewSubjects.add(boatArrow); + //viewSubjects.add(boatArrow); // Track this boat's movement with the new subject AnimationTimer trackBoat = new AnimationTimer() { @@ -261,9 +261,9 @@ public class RaceController extends Controller { boatModel.setX(x); boatModel.setZ(z); - boatArrow.setHeading(heading); - boatArrow.setX(x); - boatArrow.setZ(z); +// boatArrow.setHeading(heading); +// boatArrow.setX(x); +// boatArrow.setZ(z); } }; trackBoat.start(); From 0da6931f8fd0bc0465c470a65246afe2db581cc9 Mon Sep 17 00:00:00 2001 From: Joseph Gardner Date: Mon, 11 Sep 2017 18:24:21 +1200 Subject: [PATCH 15/59] Have structure for skybox, still need to play around with it a bit more to make it fit. #story[1261] --- .../Controllers/RaceController.java | 6 +- .../main/java/visualiser/layout/Plane3D.java | 4 +- .../main/java/visualiser/layout/SkyBox.java | 199 ++++++++++++++++++ 3 files changed, 203 insertions(+), 6 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/SkyBox.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index f382b5ff..381d02ba 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -14,9 +14,7 @@ import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; import javafx.scene.layout.GridPane; import javafx.scene.layout.StackPane; -import javafx.scene.shape.Box; import javafx.scene.shape.MeshView; -import javafx.scene.shape.Sphere; import javafx.scene.transform.Translate; import javafx.util.Callback; import network.Messages.Enums.RaceStatusEnum; @@ -26,7 +24,6 @@ import shared.model.Mark; import visualiser.app.App; import visualiser.gameController.ControllerClient; import visualiser.gameController.Keys.ControlKey; -import visualiser.gameController.Keys.KeyFactory; import visualiser.layout.*; import visualiser.model.*; import visualiser.utils.GPSConverter; @@ -207,7 +204,10 @@ public class RaceController extends Controller { //viewSubjects.add(new Subject3D(new MeshView(new Plane3D(50, 50, 1, 1)))); + SeaSurface sea = new SeaSurface(4000, 200, 250, 210); + SkyBox skybox = new SkyBox(4000, 200, 250, 0, 210); + //viewSubjects.addAll(skybox.getSkyBoxPlanes()); viewSubjects.add(sea.getSurface()); Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); diff --git a/racevisionGame/src/main/java/visualiser/layout/Plane3D.java b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java index b8e03157..bfdfdc22 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Plane3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Plane3D.java @@ -16,7 +16,7 @@ import java.util.List; public class Plane3D extends TriangleMesh{ /** - * Lenght is up down, and width is left right + * Length is up down, and width is left right. Drawn on the x-y plane with z kept at 0. * @param width width of the plane * @param length length of the plane * @param subdivisionsWidth number of divisions along the width of the plane @@ -86,8 +86,6 @@ public class Plane3D extends TriangleMesh{ } this.getFaces().setAll(copyListToIntArray(faces)); - - } /** diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java new file mode 100644 index 00000000..a4135bfd --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -0,0 +1,199 @@ +package visualiser.layout; + +import javafx.geometry.Point3D; +import javafx.scene.image.Image; +import javafx.scene.image.PixelWriter; +import javafx.scene.image.WritableImage; +import javafx.scene.paint.Color; +import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.MeshView; +import visualiser.utils.PerlinNoiseGenerator; + +import java.util.ArrayList; +import java.util.List; + +/** + * Creates a skyBox + */ +public class SkyBox { + private int size; + private double x; + private double y; + private double z; + private double freq; + private List skyBoxPlanes = new ArrayList<>(); + + public SkyBox(int size, double freq, double x, double y, double z) { + this.size = size; + this.x = x; + this.y = y; + this.z = z; + this.freq = freq; + makeSkyBox(); + } + + private void makeSkyBox() { + //addTop(); + //addFront(); +// addBack(); + addLeft(); +// addRight(); + } + + private void addTop() { + MeshView surface = makeSurface(); + + Subject3D top = new Subject3D(surface); + top.setX(x); + top.setY(y); + top.setZ(z); + skyBoxPlanes.add(top); + } + + private void addLeft() { + MeshView surface = makeSurface(); + + surface.setTranslateX(size/2); + surface.setTranslateY(size/2); + surface.setRotationAxis(new Point3D(0, 1, 0)); + surface.setRotate(90); + surface.setTranslateX(-size/2); + surface.setTranslateY(-size/2); + + surface.setTranslateX(x); + surface.setTranslateY(y); + surface.setTranslateZ(z); + + + Subject3D left = new Subject3D(surface); + skyBoxPlanes.add(left); + } + + private void addBack() { + MeshView surface = makeSurface(); + + Subject3D back = new Subject3D(surface); + back.setX(x); + back.setY(y); + back.setZ(z + size); + skyBoxPlanes.add(back); + } + + private void addFront() { + MeshView surface = makeSurface(); + + Subject3D back = new Subject3D(surface); + back.setX(x); + back.setY(y); + back.setZ(z); + skyBoxPlanes.add(back); + } + + private void addRight() { + MeshView surface = makeSurface(); + + surface.setTranslateX(size/2); + surface.setTranslateY(size/2); + surface.setRotationAxis(new Point3D(1, 0, 0)); + surface.setRotate(90); + surface.setTranslateX(-size/2); + surface.setTranslateY(-size/2); + + surface.setTranslateX(x); + surface.setTranslateY(y); + surface.setTranslateZ(z); + + + Subject3D left = new Subject3D(surface); + skyBoxPlanes.add(left); + } + + private MeshView makeSurface() { + Image diffuseMap = new Image(getClass().getClassLoader().getResourceAsStream("images/SailIcon.png")); + + PhongMaterial material = new PhongMaterial(); + material.setDiffuseColor(Color.BLUE); + //material.setDiffuseMap(diffuseMap); + material.setSpecularColor(Color.WHITE); + + Plane3D plane = new Plane3D(size, size, 10, 10); + MeshView surface = new MeshView(plane); + surface.setMaterial(material); + surface.setMouseTransparent(true); + return surface; + } + + + /** + * Create texture for uv mapping + * @param size size of the image to make + * @return image that is created + */ + private Image createImage(int size) { + float[][] noise = PerlinNoiseGenerator.createNoise(size, freq); + + WritableImage wr = new WritableImage(size, size); + PixelWriter pw = wr.getPixelWriter(); + //interpolate colours based on noise + for (int x = 0; x < size; x++) { + for (int y = 0; y < size; y++) { + + float value = noise[x][y]; + + double gray = normalizeValue(value, -.5, .5, 0., 1.); + + gray = clamp(gray, 0, 1); + + //values to interpolate on + Color brightBlue = new Color(0.06, 0.5, .78, 1); + Color lightBlue = new Color(0.15, 0.68, .88, 1); + Color lighterBlue = new Color(0.28, 0.73, .91, 1); + + Color colour = Color.WHITE.interpolate(brightBlue, gray).interpolate(lighterBlue, gray).interpolate(lightBlue, gray); + + pw.setColor(x, y, colour); + + } + } + + return wr; + + } + + /** + * Nomalises the values so that the colours are correct + * @param value value to normalise + * @param min current min + * @param max current max + * @param newMin new min + * @param newMax new max + * @return returns normalised value + */ + private static double normalizeValue(double value, double min, double max, double newMin, double newMax) { + + return (value - min) * (newMax - newMin) / (max - min) + newMin; + + } + + /** + * clamps a value between a min and max + * @param value value to clamp + * @param min minimum value it can be + * @param max maximum value it can be + * @return result after clamp + */ + private static double clamp(double value, double min, double max) { + + if (Double.compare(value, min) < 0) + return min; + + if (Double.compare(value, max) > 0) + return max; + + return value; + } + + public List getSkyBoxPlanes() { + return skyBoxPlanes; + } +} From 49cd19e1a8010b19bfc59edef2082555a94c0fc9 Mon Sep 17 00:00:00 2001 From: Joseph Date: Tue, 12 Sep 2017 01:55:24 +1200 Subject: [PATCH 16/59] Made and textured a skybox, still needs to be fixed on two sides. #story[1261] --- .../src/main/java/shared/model/Constants.java | 4 +- .../Controllers/RaceController.java | 6 +- .../java/visualiser/layout/SeaSurface.java | 2 + .../main/java/visualiser/layout/SkyBox.java | 100 +++++++++++------- .../main/resources/images/skybox/skyBack.png | Bin 0 -> 80371 bytes .../main/resources/images/skybox/skyFront.png | Bin 0 -> 84533 bytes .../main/resources/images/skybox/skyLeft.png | Bin 0 -> 87500 bytes .../main/resources/images/skybox/skyRight.png | Bin 0 -> 101380 bytes .../main/resources/images/skybox/skyTop.png | Bin 0 -> 40510 bytes 9 files changed, 67 insertions(+), 45 deletions(-) create mode 100644 racevisionGame/src/main/resources/images/skybox/skyBack.png create mode 100644 racevisionGame/src/main/resources/images/skybox/skyFront.png create mode 100644 racevisionGame/src/main/resources/images/skybox/skyLeft.png create mode 100644 racevisionGame/src/main/resources/images/skybox/skyRight.png create mode 100644 racevisionGame/src/main/resources/images/skybox/skyTop.png diff --git a/racevisionGame/src/main/java/shared/model/Constants.java b/racevisionGame/src/main/java/shared/model/Constants.java index 5dce72e6..26c56d11 100644 --- a/racevisionGame/src/main/java/shared/model/Constants.java +++ b/racevisionGame/src/main/java/shared/model/Constants.java @@ -39,14 +39,14 @@ public class Constants { * The race pre-start time, in milliseconds. 3 minutes (30 seconds for development). */ // public static final long RacePreStartTime = 30 * 1000; - public static final long RacePreStartTime = 30 * 1000; + public static final long RacePreStartTime = 6 * 1000; /** * The race preparatory time, in milliseconds. 1 minute. */ // public static final long RacePreparatoryTime = 60 * 1000; - public static final long RacePreparatoryTime = 60 * 1000; + public static final long RacePreparatoryTime = 6 * 1000; diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 381d02ba..02f9e749 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -206,9 +206,9 @@ public class RaceController extends Controller { SeaSurface sea = new SeaSurface(4000, 200, 250, 210); - SkyBox skybox = new SkyBox(4000, 200, 250, 0, 210); - //viewSubjects.addAll(skybox.getSkyBoxPlanes()); - viewSubjects.add(sea.getSurface()); + SkyBox skyBox = new SkyBox(500, 200, 250, 0, 210); + viewSubjects.addAll(skyBox.getSkyBoxPlanes()); + //viewSubjects.add(sea.getSurface()); Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); for (Subject3D subject3D: boundary3D.getBoundaryNodes()){ diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index 666503d6..7008ce3f 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -47,6 +47,8 @@ public class SeaSurface { MeshView seaSurface = new MeshView(seaPlane); // Box seaSurface = new Box(noiseArray.length, 0.1, noiseArray.length); seaSurface.setMaterial(material); + seaSurface.setMouseTransparent(true); + seaSurface.toFront(); //seaSurface.setRotationAxis(new Point3D(1, 0, 0)); //seaSurface.setRotate(90); diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index a4135bfd..cbb21160 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -23,8 +23,8 @@ public class SkyBox { private double freq; private List skyBoxPlanes = new ArrayList<>(); - public SkyBox(int size, double freq, double x, double y, double z) { - this.size = size; + public SkyBox(int edgeLength, double freq, double x, double y, double z) { + this.size = edgeLength; this.x = x; this.y = y; this.z = z; @@ -33,88 +33,107 @@ public class SkyBox { } private void makeSkyBox() { - //addTop(); - //addFront(); -// addBack(); + addTop(); + addFront(); + addBack(); addLeft(); -// addRight(); + addRight(); } private void addTop() { - MeshView surface = makeSurface(); + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyTop.png"))); + + surface.setTranslateX(x); + surface.setTranslateY(y - size); + surface.setTranslateZ(z); Subject3D top = new Subject3D(surface); - top.setX(x); - top.setY(y); - top.setZ(z); skyBoxPlanes.add(top); } private void addLeft() { - MeshView surface = makeSurface(); + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyLeft.png"))); surface.setTranslateX(size/2); surface.setTranslateY(size/2); - surface.setRotationAxis(new Point3D(0, 1, 0)); + surface.setRotationAxis(new Point3D(1, 0, 0)); surface.setRotate(90); surface.setTranslateX(-size/2); surface.setTranslateY(-size/2); surface.setTranslateX(x); - surface.setTranslateY(y); - surface.setTranslateZ(z); + surface.setTranslateY(y - size/2); + surface.setTranslateZ(z + size/2); Subject3D left = new Subject3D(surface); skyBoxPlanes.add(left); } - private void addBack() { - MeshView surface = makeSurface(); + private void addRight() { + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyRight.png"))); - Subject3D back = new Subject3D(surface); - back.setX(x); - back.setY(y); - back.setZ(z + size); - skyBoxPlanes.add(back); + surface.setTranslateX(size/2); + surface.setTranslateY(size/2); + surface.setRotationAxis(new Point3D(1, 0, 0)); + surface.setRotate(-90); + surface.setTranslateX(-size/2); + surface.setTranslateY(-size/2); + + surface.setScaleX(-1); + surface.setScaleZ(-1); + + surface.setTranslateX(x); + surface.setTranslateY(y - size/2); + surface.setTranslateZ(z - size/2); + + + Subject3D right = new Subject3D(surface); + skyBoxPlanes.add(right); } - private void addFront() { - MeshView surface = makeSurface(); + private void addBack() { + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyBack.png"))); + + surface.setTranslateX(size/2); + surface.setTranslateY(size/2); + surface.setRotationAxis(new Point3D(0, 0, 1)); + surface.setRotate(90); + surface.setTranslateX(-size/2); + surface.setTranslateY(-size/2); + + surface.setTranslateX(x - size/2); + surface.setTranslateY(y - size/2); + surface.setTranslateZ(z); Subject3D back = new Subject3D(surface); - back.setX(x); - back.setY(y); - back.setZ(z); skyBoxPlanes.add(back); } - private void addRight() { - MeshView surface = makeSurface(); + private void addFront() { + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyFront.png"))); surface.setTranslateX(size/2); surface.setTranslateY(size/2); - surface.setRotationAxis(new Point3D(1, 0, 0)); - surface.setRotate(90); + surface.setRotationAxis(new Point3D(0, 0, 1)); + surface.setRotate(-90); surface.setTranslateX(-size/2); surface.setTranslateY(-size/2); - surface.setTranslateX(x); - surface.setTranslateY(y); + surface.setTranslateX(x + size/2); + surface.setTranslateY(y - size/2); surface.setTranslateZ(z); - - Subject3D left = new Subject3D(surface); - skyBoxPlanes.add(left); + Subject3D front = new Subject3D(surface); + skyBoxPlanes.add(front); } - private MeshView makeSurface() { - Image diffuseMap = new Image(getClass().getClassLoader().getResourceAsStream("images/SailIcon.png")); + private MeshView makeSurface(Image diffuseMap) { PhongMaterial material = new PhongMaterial(); - material.setDiffuseColor(Color.BLUE); - //material.setDiffuseMap(diffuseMap); - material.setSpecularColor(Color.WHITE); + //material.setDiffuseColor(Color.BLUE); + material.setDiffuseMap(diffuseMap); + //material.setSpecularColor(Color.WHITE); Plane3D plane = new Plane3D(size, size, 10, 10); MeshView surface = new MeshView(plane); @@ -197,3 +216,4 @@ public class SkyBox { return skyBoxPlanes; } } + diff --git a/racevisionGame/src/main/resources/images/skybox/skyBack.png b/racevisionGame/src/main/resources/images/skybox/skyBack.png new file mode 100644 index 0000000000000000000000000000000000000000..390ff4e879b37d1a5bc69f74b9702c12e0af6309 GIT binary patch literal 80371 zcmV)VK(D`vP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 QU;qFB07*qoM6N<$f(F7b{{R30 literal 0 HcmV?d00001 diff --git a/racevisionGame/src/main/resources/images/skybox/skyLeft.png b/racevisionGame/src/main/resources/images/skybox/skyLeft.png new file mode 100644 index 0000000000000000000000000000000000000000..9ee2c8b7c408c15657f0292fdc4d2d66fbd994fc GIT binary patch literal 87500 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\q6f_A>I|`iI5U%(GCEB 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

; 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%0Dfes=BaFXO8 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 )4>*!cA>Qi9$u}S8w0`=IwXqae8{yMB2w69f#*Q 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

_>(1zfo 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%0DMyF*r2urXTW6?}+kV)enjALhwSF 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 IM6N<$g4EL_XaE2J literal 0 HcmV?d00001 diff --git a/racevisionGame/src/main/resources/images/skybox/skyTop.png b/racevisionGame/src/main/resources/images/skybox/skyTop.png new file mode 100644 index 0000000000000000000000000000000000000000..1f939f76daa691a0810c2c8d27f5fd05e8f23bb7 GIT binary patch literal 40510 zcmV)RK(oJzP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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�Dk8-D@qSNiAwsG}bB>)!95I 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 WIxsMX6(gqr0000 Date: Tue, 12 Sep 2017 11:46:57 +1200 Subject: [PATCH 17/59] Wrote possible fix for issue #50 (Composite command tries to remove non-existent element) --- .../java/mock/model/commandFactory/CompositeCommand.java | 8 ++++---- .../main/java/visualiser/Controllers/RaceController.java | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/racevisionGame/src/main/java/mock/model/commandFactory/CompositeCommand.java b/racevisionGame/src/main/java/mock/model/commandFactory/CompositeCommand.java index 74c5e95b..a931a85a 100644 --- a/racevisionGame/src/main/java/mock/model/commandFactory/CompositeCommand.java +++ b/racevisionGame/src/main/java/mock/model/commandFactory/CompositeCommand.java @@ -1,7 +1,7 @@ package mock.model.commandFactory; -import java.util.ArrayDeque; import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedDeque; /** * Wraps multiple commands into a composite to execute queued commands during a frame. @@ -10,15 +10,15 @@ public class CompositeCommand implements Command { private Queue commands; public CompositeCommand() { - this.commands = new ArrayDeque<>(); + this.commands = new ConcurrentLinkedDeque<>(); } public void addCommand(Command command) { - commands.add(command); + commands.offer(command); } @Override public void execute() { - while(!commands.isEmpty()) commands.remove().execute(); + while(commands.peek() != null) commands.poll().execute(); } } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index f4eacb5e..4af633e9 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -246,6 +246,11 @@ public class RaceController extends Controller { } }; trackBoat.start(); + + System.out.println(boat.getCurrentLeg().getEndCompoundMark().toString()); + boat.legProperty().addListener((o, prev, curr) -> { + System.out.println(curr.getEndCompoundMark().toString()); + }); } // Fix initial bird's-eye position view3D.updatePivot(new Translate(250, 0, 210)); From 7a8ea7fea7d352c0577d74e701bd5cda6c10b506 Mon Sep 17 00:00:00 2001 From: Joseph Date: Tue, 12 Sep 2017 12:37:25 +1200 Subject: [PATCH 18/59] Made seasurface overlay to enable skybox to be smaller. #story[1261] --- .../main/java/visualiser/Controllers/RaceController.java | 9 ++++++--- .../src/main/java/visualiser/layout/SeaSurface.java | 3 ++- .../src/main/java/visualiser/layout/SkyBox.java | 8 +++++++- .../src/main/java/visualiser/layout/View3D.java | 2 +- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 02f9e749..89af73db 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -8,8 +8,11 @@ import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; import javafx.collections.transformation.SortedList; import javafx.fxml.FXML; +import javafx.scene.AmbientLight; +import javafx.scene.PointLight; import javafx.scene.chart.LineChart; import javafx.scene.control.*; +import javafx.scene.effect.Light; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; import javafx.scene.layout.GridPane; @@ -205,10 +208,10 @@ public class RaceController extends Controller { //viewSubjects.add(new Subject3D(new MeshView(new Plane3D(50, 50, 1, 1)))); - SeaSurface sea = new SeaSurface(4000, 200, 250, 210); - SkyBox skyBox = new SkyBox(500, 200, 250, 0, 210); + SeaSurface sea = new SeaSurface(750, 200, 250, 0, 210); + SkyBox skyBox = new SkyBox(750, 200, 250, 0, 210); + viewSubjects.add(sea.getSurface()); viewSubjects.addAll(skyBox.getSkyBoxPlanes()); - //viewSubjects.add(sea.getSurface()); Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); for (Subject3D subject3D: boundary3D.getBoundaryNodes()){ diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index 7008ce3f..67ef6a19 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -26,10 +26,11 @@ public class SeaSurface { * @param x offset that the sea should be set at position-wise * @param z offset that the sea should be set at position-wise */ - public SeaSurface(int size, double freq, double x, double z){ + public SeaSurface(int size, double freq, double x, double y, double z){ noiseArray = PerlinNoiseGenerator.createNoise(size, freq); createSurface(); surface.setZ(z); + surface.setY(y); surface.setX(x); } diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index cbb21160..189c75dc 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -33,11 +33,12 @@ public class SkyBox { } private void makeSkyBox() { - addTop(); + //addTop(); addFront(); addBack(); addLeft(); addRight(); + addSeaOverlay(); } private void addTop() { @@ -142,6 +143,11 @@ public class SkyBox { return surface; } + private void addSeaOverlay() { + SeaSurface seaSurface = new SeaSurface(size * 3, 200, x, y - size/4 + 1, z); + skyBoxPlanes.add(seaSurface.getSurface()); + } + /** * Create texture for uv mapping diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 9f080747..4024d4b2 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -198,7 +198,7 @@ public class View3D extends Pane { target.getHeading().angleProperty().addListener(pivotHeading); this.setDistance(THIRD_PERSON_LIMIT); - this.setPitch(20); + this.setPitch(15); } public void setNearClip(double nearClip) { From 0f316afb3c298c46a94a2b765df7c8961b163e67 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Tue, 12 Sep 2017 13:36:31 +1200 Subject: [PATCH 19/59] Added colour indication to next mark - Colour is swapped with end mark in leg when mark is passed #story[1195] --- .../main/java/shared/model/CompoundMark.java | 2 +- .../Controllers/RaceController.java | 41 +++++++++++++++---- .../java/visualiser/layout/Subject3D.java | 11 ++++- .../main/java/visualiser/layout/View3D.java | 21 +++++++--- 4 files changed, 60 insertions(+), 15 deletions(-) diff --git a/racevisionGame/src/main/java/shared/model/CompoundMark.java b/racevisionGame/src/main/java/shared/model/CompoundMark.java index 4fa2599c..a9a84a2a 100644 --- a/racevisionGame/src/main/java/shared/model/CompoundMark.java +++ b/racevisionGame/src/main/java/shared/model/CompoundMark.java @@ -98,7 +98,7 @@ public class CompoundMark extends XMLCompoundMark{ * @return The second mark of the compound mark. */ public Mark getMark2() { - return mark2; + return mark2 == null? mark1 : mark2; } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 4af633e9..d00f8d96 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -15,12 +15,17 @@ import javafx.scene.input.KeyEvent; import javafx.scene.layout.AnchorPane; import javafx.scene.layout.GridPane; import javafx.scene.layout.StackPane; +import javafx.scene.paint.Color; +import javafx.scene.paint.Material; +import javafx.scene.paint.PhongMaterial; import javafx.scene.shape.MeshView; +import javafx.scene.shape.Shape3D; import javafx.scene.shape.Sphere; import javafx.scene.transform.Translate; import javafx.util.Callback; import network.Messages.Enums.RaceStatusEnum; import shared.dataInput.RaceDataSource; +import shared.model.CompoundMark; import shared.model.Leg; import shared.model.Mark; import visualiser.app.App; @@ -224,7 +229,7 @@ public class RaceController extends Controller { view3D.setItems(viewSubjects); // Position and add each mark to view for(Mark mark: race.getVisualiserRaceState().getMarks()) { - Subject3D subject = new Subject3D(new Sphere(2)); + Subject3D subject = new Subject3D(new Sphere(2), mark.getSourceID()); subject.setX(gpsConverter.convertGPS(mark.getPosition()).getX()); subject.setZ(gpsConverter.convertGPS(mark.getPosition()).getY()); @@ -233,7 +238,7 @@ public class RaceController extends Controller { // Position and add each boat to view for(VisualiserBoat boat: race.getVisualiserRaceState().getBoats()) { MeshView mesh = new MeshView(importer.getImport()); - Subject3D subject = new Subject3D(mesh); + Subject3D subject = new Subject3D(mesh, boat.getSourceID()); viewSubjects.add(subject); // Track this boat's movement with the new subject @@ -247,10 +252,11 @@ public class RaceController extends Controller { }; trackBoat.start(); - System.out.println(boat.getCurrentLeg().getEndCompoundMark().toString()); - boat.legProperty().addListener((o, prev, curr) -> { - System.out.println(curr.getEndCompoundMark().toString()); - }); + Material markColor = new PhongMaterial(new Color(0.15,0.9,0.2,1)); + CompoundMark nextMark = boat.getCurrentLeg().getEndCompoundMark(); + view3D.getShape(nextMark.getMark1().getSourceID()).setMaterial(markColor); + view3D.getShape(nextMark.getMark2().getSourceID()).setMaterial(markColor); + boat.legProperty().addListener((o, prev, curr) -> swapColours(curr)); } // Fix initial bird's-eye position view3D.updatePivot(new Translate(250, 0, 210)); @@ -300,8 +306,27 @@ public class RaceController extends Controller { }); } - - + /** + * Swap the colour of the next mark to pass with the last mark passed + * @param leg boat has started on + */ + private void swapColours(Leg leg) { + CompoundMark start = leg.getStartCompoundMark(); + CompoundMark end = leg.getEndCompoundMark(); + + Shape3D start1 = view3D.getShape(start.getMark1().getSourceID()); + Shape3D start2 = view3D.getShape(start.getMark2().getSourceID()); + Shape3D end1 = view3D.getShape(end.getMark1().getSourceID()); + Shape3D end2 = view3D.getShape(end.getMark2().getSourceID()); + + Material nextMark = start1.getMaterial(); + Material lastMark = end1.getMaterial(); + + start1.setMaterial(lastMark); + start2.setMaterial(lastMark); + end1.setMaterial(nextMark); + end2.setMaterial(nextMark); + } /** * Initialises the frame rate functionality. This allows for toggling the frame rate, and connect the fps label to the race's fps property. diff --git a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java index af76f4f4..6bcf60b2 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Subject3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Subject3D.java @@ -12,6 +12,10 @@ public class Subject3D { * Rendered mesh */ private Shape3D mesh; + /** + * Source ID of subject in game model + */ + private int sourceID; /** * Position translation updated by state listeners @@ -27,8 +31,9 @@ public class Subject3D { * Constructor for view subject wrapper * @param mesh to be rendered */ - public Subject3D(Shape3D mesh) { + public Subject3D(Shape3D mesh, int sourceID) { this.mesh = mesh; + this.sourceID = sourceID; this.position = new Translate(); this.heading = new Rotate(0, Rotate.Y_AXIS); @@ -39,6 +44,10 @@ public class Subject3D { return mesh; } + public int getSourceID() { + return sourceID; + } + public Translate getPosition() { return this.position; } diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 27fe6086..cc36f492 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -33,7 +33,11 @@ public class View3D extends Pane { /** * Map for selecting Subject3D from Shape3D */ - private Map selectionMap; + private Map shapeMap; + /** + * Map for selecting Shape3D from source ID + */ + private Map sourceMap; /** * Subject tracked by camera */ @@ -92,7 +96,8 @@ public class View3D extends Pane { */ public View3D() { this.world = new Group(); - this.selectionMap = new HashMap<>(); + this.shapeMap = new HashMap<>(); + this.sourceMap = new HashMap<>(); this.target = null; this.scene = new SubScene(world, 300, 300); @@ -140,17 +145,23 @@ public class View3D extends Pane { if (c.wasRemoved() || c.wasAdded()) { for (Subject3D shape : c.getRemoved()) { world.getChildren().remove(shape.getMesh()); - selectionMap.remove(shape.getMesh()); + shapeMap.remove(shape.getMesh()); + sourceMap.remove(shape.getSourceID()); } for (Subject3D shape : c.getAddedSubList()) { world.getChildren().add(shape.getMesh()); - selectionMap.put(shape.getMesh(), shape); + shapeMap.put(shape.getMesh(), shape); + sourceMap.put(shape.getSourceID(), shape.getMesh()); } } } }); } + public Shape3D getShape(int sourceID) { + return sourceMap.get(sourceID); + } + /** * Intercept mouse clicks on subjects in view. The applied listener cannot be removed. */ @@ -158,7 +169,7 @@ public class View3D extends Pane { scene.setOnMousePressed(e -> { PickResult result = e.getPickResult(); if(result != null && result.getIntersectedNode() != null && result.getIntersectedNode() instanceof Shape3D) { - trackSubject(selectionMap.get(result.getIntersectedNode())); + trackSubject(shapeMap.get(result.getIntersectedNode())); } }); } From 59bd22c2aa267d013298b0670ac07a26c00ca579 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Tue, 12 Sep 2017 13:52:29 +1200 Subject: [PATCH 20/59] Fixed mark rounding - Returning mark 2 as mark 1 breaks rounding calculations #story[1195] --- .../main/java/shared/model/CompoundMark.java | 2 +- .../visualiser/Controllers/RaceController.java | 18 +++++++++++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/racevisionGame/src/main/java/shared/model/CompoundMark.java b/racevisionGame/src/main/java/shared/model/CompoundMark.java index a9a84a2a..4fa2599c 100644 --- a/racevisionGame/src/main/java/shared/model/CompoundMark.java +++ b/racevisionGame/src/main/java/shared/model/CompoundMark.java @@ -98,7 +98,7 @@ public class CompoundMark extends XMLCompoundMark{ * @return The second mark of the compound mark. */ public Mark getMark2() { - return mark2 == null? mark1 : mark2; + return mark2; } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index d00f8d96..2d710e75 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -255,7 +255,10 @@ public class RaceController extends Controller { Material markColor = new PhongMaterial(new Color(0.15,0.9,0.2,1)); CompoundMark nextMark = boat.getCurrentLeg().getEndCompoundMark(); view3D.getShape(nextMark.getMark1().getSourceID()).setMaterial(markColor); - view3D.getShape(nextMark.getMark2().getSourceID()).setMaterial(markColor); + if(nextMark.getMark2() != null) { + view3D.getShape(nextMark.getMark2().getSourceID()).setMaterial(markColor); + } + boat.legProperty().addListener((o, prev, curr) -> swapColours(curr)); } // Fix initial bird's-eye position @@ -315,17 +318,22 @@ public class RaceController extends Controller { CompoundMark end = leg.getEndCompoundMark(); Shape3D start1 = view3D.getShape(start.getMark1().getSourceID()); - Shape3D start2 = view3D.getShape(start.getMark2().getSourceID()); Shape3D end1 = view3D.getShape(end.getMark1().getSourceID()); - Shape3D end2 = view3D.getShape(end.getMark2().getSourceID()); Material nextMark = start1.getMaterial(); Material lastMark = end1.getMaterial(); start1.setMaterial(lastMark); - start2.setMaterial(lastMark); + if(start.getMark2() != null) { + Shape3D start2 = view3D.getShape(start.getMark2().getSourceID()); + start2.setMaterial(lastMark); + } + end1.setMaterial(nextMark); - end2.setMaterial(nextMark); + if(end.getMark2() != null) { + Shape3D end2 = view3D.getShape(end.getMark2().getSourceID()); + end2.setMaterial(nextMark); + } } /** From bcc827b554948e19cdc84e4939031508f607df63 Mon Sep 17 00:00:00 2001 From: Joseph Gardner Date: Tue, 12 Sep 2017 18:16:08 +1200 Subject: [PATCH 21/59] Added lights and managed to get the orientation of one of the skybox walls correct. #story[1261] --- .../Controllers/RaceController.java | 13 +++ .../java/visualiser/layout/SeaSurface.java | 2 +- .../main/java/visualiser/layout/SkyBox.java | 109 ++++-------------- .../main/java/visualiser/layout/View3D.java | 14 ++- 4 files changed, 46 insertions(+), 92 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 89af73db..43ca391f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -17,6 +17,7 @@ import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; import javafx.scene.layout.GridPane; import javafx.scene.layout.StackPane; +import javafx.scene.paint.Color; import javafx.scene.shape.MeshView; import javafx.scene.transform.Translate; import javafx.util.Callback; @@ -177,6 +178,16 @@ public class RaceController extends Controller { private void initialiseView3D(VisualiserRaceEvent race) { viewSubjects = FXCollections.observableArrayList(); + AmbientLight ambientLight = new AmbientLight(new Color(1, 1, 1, 0.75)); + ambientLight.setTranslateX(250); + ambientLight.setTranslateZ(210); + ambientLight.setLightOn(true); + + PointLight pointLight = new PointLight(); + ambientLight.setTranslateX(250); + ambientLight.setTranslateZ(210); + ambientLight.setLightOn(true); + // Import boat mesh URL asset = HostController.class.getClassLoader().getResource("assets/V1.2 Complete Boat.stl"); StlMeshImporter importer = new StlMeshImporter(); @@ -197,6 +208,8 @@ public class RaceController extends Controller { view3D.setYaw(0); view3D.setPitch(60); view3D.enableTracking(); + view3D.addAmbientLight(ambientLight); + view3D.addPointLight(pointLight); canvasBase.add(view3D, 0, 0); // Set up projection from GPS to view diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index 67ef6a19..f1399b82 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -42,7 +42,7 @@ public class SeaSurface { PhongMaterial material = new PhongMaterial(); material.setDiffuseMap(diffuseMap); - material.setSpecularColor(Color.WHITE); + //material.setSpecularColor(Color.WHITE); Plane3D seaPlane = new Plane3D(noiseArray.length, noiseArray.length, 10, 10); MeshView seaSurface = new MeshView(seaPlane); diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index 189c75dc..4ca205ee 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -7,6 +7,7 @@ import javafx.scene.image.WritableImage; import javafx.scene.paint.Color; import javafx.scene.paint.PhongMaterial; import javafx.scene.shape.MeshView; +import javafx.scene.transform.Rotate; import visualiser.utils.PerlinNoiseGenerator; import java.util.ArrayList; @@ -35,17 +36,20 @@ public class SkyBox { private void makeSkyBox() { //addTop(); addFront(); - addBack(); - addLeft(); - addRight(); - addSeaOverlay(); + //addBack(); + //addLeft(); + //addRight(); + //addSeaOverlay(); } private void addTop() { MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyTop.png"))); + surface.setRotationAxis(new Point3D(0, 0, 1)); + surface.setRotate(180); + surface.setTranslateX(x); - surface.setTranslateY(y - size); + surface.setTranslateY(y - size + 0.01); surface.setTranslateZ(z); Subject3D top = new Subject3D(surface); @@ -95,13 +99,13 @@ public class SkyBox { private void addBack() { MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyBack.png"))); + surface.getTransforms().add(new Rotate(90, 0, 0)); - surface.setTranslateX(size/2); - surface.setTranslateY(size/2); - surface.setRotationAxis(new Point3D(0, 0, 1)); - surface.setRotate(90); - surface.setTranslateX(-size/2); - surface.setTranslateY(-size/2); + surface.setRotationAxis(new Point3D(1, 0, 0)); + surface.setRotate(-90); + + surface.setScaleY(-1); + surface.setScaleZ(-1); surface.setTranslateX(x - size/2); surface.setTranslateY(y - size/2); @@ -114,12 +118,13 @@ public class SkyBox { private void addFront() { MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyFront.png"))); - surface.setTranslateX(size/2); - surface.setTranslateY(size/2); - surface.setRotationAxis(new Point3D(0, 0, 1)); - surface.setRotate(-90); - surface.setTranslateX(-size/2); - surface.setTranslateY(-size/2); + surface.getTransforms().add(new Rotate(90, 0, 0)); + + surface.setRotationAxis(new Point3D(1, 0, 0)); + surface.setRotate(90); + + surface.setScaleY(-1); + surface.setScaleZ(-1); surface.setTranslateX(x + size/2); surface.setTranslateY(y - size/2); @@ -148,76 +153,6 @@ public class SkyBox { skyBoxPlanes.add(seaSurface.getSurface()); } - - /** - * Create texture for uv mapping - * @param size size of the image to make - * @return image that is created - */ - private Image createImage(int size) { - float[][] noise = PerlinNoiseGenerator.createNoise(size, freq); - - WritableImage wr = new WritableImage(size, size); - PixelWriter pw = wr.getPixelWriter(); - //interpolate colours based on noise - for (int x = 0; x < size; x++) { - for (int y = 0; y < size; y++) { - - float value = noise[x][y]; - - double gray = normalizeValue(value, -.5, .5, 0., 1.); - - gray = clamp(gray, 0, 1); - - //values to interpolate on - Color brightBlue = new Color(0.06, 0.5, .78, 1); - Color lightBlue = new Color(0.15, 0.68, .88, 1); - Color lighterBlue = new Color(0.28, 0.73, .91, 1); - - Color colour = Color.WHITE.interpolate(brightBlue, gray).interpolate(lighterBlue, gray).interpolate(lightBlue, gray); - - pw.setColor(x, y, colour); - - } - } - - return wr; - - } - - /** - * Nomalises the values so that the colours are correct - * @param value value to normalise - * @param min current min - * @param max current max - * @param newMin new min - * @param newMax new max - * @return returns normalised value - */ - private static double normalizeValue(double value, double min, double max, double newMin, double newMax) { - - return (value - min) * (newMax - newMin) / (max - min) + newMin; - - } - - /** - * clamps a value between a min and max - * @param value value to clamp - * @param min minimum value it can be - * @param max maximum value it can be - * @return result after clamp - */ - private static double clamp(double value, double min, double max) { - - if (Double.compare(value, min) < 0) - return min; - - if (Double.compare(value, max) > 0) - return max; - - return value; - } - public List getSkyBoxPlanes() { return skyBoxPlanes; } diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 4024d4b2..b82457cb 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -3,9 +3,7 @@ package visualiser.layout; import javafx.beans.value.ChangeListener; import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; -import javafx.scene.Group; -import javafx.scene.PerspectiveCamera; -import javafx.scene.SubScene; +import javafx.scene.*; import javafx.scene.input.PickResult; import javafx.scene.layout.Pane; import javafx.scene.paint.Color; @@ -198,7 +196,7 @@ public class View3D extends Pane { target.getHeading().angleProperty().addListener(pivotHeading); this.setDistance(THIRD_PERSON_LIMIT); - this.setPitch(15); + this.setPitch(20); } public void setNearClip(double nearClip) { @@ -263,4 +261,12 @@ public class View3D extends Pane { public void setPitch(double pitch) { this.pitch.setAngle(-pitch); } + + public void addAmbientLight(AmbientLight ambientLight) { + this.world.getChildren().add(ambientLight); + } + + public void addPointLight(PointLight pointLight) { + this.world.getChildren().add(pointLight); + } } From 771068966e83210fca60671068de445743cf0475 Mon Sep 17 00:00:00 2001 From: Joseph Date: Wed, 13 Sep 2017 11:45:49 +1200 Subject: [PATCH 22/59] Just rotated the images to make them look like the plane is rotated properly... #story[1261] --- .../main/java/visualiser/layout/SkyBox.java | 51 +++++++++--------- .../main/resources/images/skybox/skyFront.png | Bin 84533 -> 105067 bytes .../main/resources/images/skybox/skyTop.png | Bin 40510 -> 48863 bytes 3 files changed, 25 insertions(+), 26 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index 4ca205ee..80b60956 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -34,12 +34,12 @@ public class SkyBox { } private void makeSkyBox() { - //addTop(); + addTop(); addFront(); - //addBack(); - //addLeft(); - //addRight(); - //addSeaOverlay(); + addBack(); + addLeft(); + addRight(); + addSeaOverlay(); } private void addTop() { @@ -49,15 +49,15 @@ public class SkyBox { surface.setRotate(180); surface.setTranslateX(x); - surface.setTranslateY(y - size + 0.01); + surface.setTranslateY(y - size + 1); surface.setTranslateZ(z); Subject3D top = new Subject3D(surface); skyBoxPlanes.add(top); } - private void addLeft() { - MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyLeft.png"))); + private void addRight() { + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyRight.png"))); surface.setTranslateX(size/2); surface.setTranslateY(size/2); @@ -68,15 +68,15 @@ public class SkyBox { surface.setTranslateX(x); surface.setTranslateY(y - size/2); - surface.setTranslateZ(z + size/2); + surface.setTranslateZ(z + size/2 - 1); - Subject3D left = new Subject3D(surface); - skyBoxPlanes.add(left); + Subject3D right = new Subject3D(surface); + skyBoxPlanes.add(right); } - private void addRight() { - MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyRight.png"))); + private void addLeft() { + MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyLeft.png"))); surface.setTranslateX(size/2); surface.setTranslateY(size/2); @@ -90,11 +90,11 @@ public class SkyBox { surface.setTranslateX(x); surface.setTranslateY(y - size/2); - surface.setTranslateZ(z - size/2); + surface.setTranslateZ(z - size/2 + 1); - Subject3D right = new Subject3D(surface); - skyBoxPlanes.add(right); + Subject3D left = new Subject3D(surface); + skyBoxPlanes.add(left); } private void addBack() { @@ -107,7 +107,7 @@ public class SkyBox { surface.setScaleY(-1); surface.setScaleZ(-1); - surface.setTranslateX(x - size/2); + surface.setTranslateX(x - size/2 + 1); surface.setTranslateY(y - size/2); surface.setTranslateZ(z); @@ -118,15 +118,14 @@ public class SkyBox { private void addFront() { MeshView surface = makeSurface(new Image(getClass().getClassLoader().getResourceAsStream("images/skybox/skyFront.png"))); - surface.getTransforms().add(new Rotate(90, 0, 0)); - - surface.setRotationAxis(new Point3D(1, 0, 0)); - surface.setRotate(90); - - surface.setScaleY(-1); - surface.setScaleZ(-1); + surface.setTranslateX(size/2); + surface.setTranslateY(size/2); + surface.setRotationAxis(new Point3D(0, 0, 1)); + surface.setRotate(-90); + surface.setTranslateX(-size/2); + surface.setTranslateY(-size/2); - surface.setTranslateX(x + size/2); + surface.setTranslateX(x + size/2 - 1); surface.setTranslateY(y - size/2); surface.setTranslateZ(z); @@ -149,7 +148,7 @@ public class SkyBox { } private void addSeaOverlay() { - SeaSurface seaSurface = new SeaSurface(size * 3, 200, x, y - size/4 + 1, z); + SeaSurface seaSurface = new SeaSurface(size * 3, freq, x, y - size/4 + 1, z); skyBoxPlanes.add(seaSurface.getSurface()); } diff --git a/racevisionGame/src/main/resources/images/skybox/skyFront.png b/racevisionGame/src/main/resources/images/skybox/skyFront.png index 4baa0a428b97455cae7a46a997aae49aca527a1d..50769c3def5dd56a904943d793b67d9484178508 100644 GIT binary patch literal 105067 zcmW)nbySn@8^+%SEiK(3AT3DOMu|vwmvkfDj7E?W5NQOYOHhzTMM6Z7PMILx4TEhz zzQ3Kb^K9?V*&ln}=iYUHuIqlOqoqnrNKXg=0I}LrWjz1@-Ms_>_~5%`k_;w%w?Lf~ zG!+2gLmJVoEzaG0R=cNqng9^O1ptUx06^VcLTmwm|04j{u>k<-w*WxnUC^N`d-nl> z_fu0}03iAH-xDeSs3LHzTh(KhR zxssFX>XMU_lT|~N;r-7$M{Xo~`*e4KWqRtWrkL)$$jwNZc-x%esO zHzviLl-v!I?yxGxhiOvzIr@0Gt#0DL?0u@V+MsMQOWco2 z4;(uZDbnQ=uA`4RuR_-~+c&k2Kh~1uYFqklSiC>gYEPEudl1T6~O~ z5p{=70XC`gb>4Z_ZBYkQQ@sy zFPDGBzrY^#!-$+2^s}WK%0@St`cRq6h0dhEfk9jr%ZYA_{inYDt=&(zm-=$nWM&>c zQI;4(t2_`J<^CwZ8f!TcyzI8kl>9n1?iQ2%dYA9@0cV%cj^zw-V_;gh3*)?VN9Rk0 z!MRq?Er*frS-n*N9-3<$n(N$pD33BQNvPFS;!WxLhgW!iAmUm65WT+jC+mdU>boKz~bEK za|nmRWyimr*1B*Rqn0nalz56$`4;aExo`jd1w-2YHS$ z^In@xGVk@*ye;M6YEkd#%Ujv`CI#Ut);uWledY*!2!Qczk6fC2L0I&-D5j3uob}19~?J zGkV()SCE=}f>9Yo5*E!{j@33a&McYm9h!B8-B3x6d;40>$>%TJiXQG*7>$T(W8cQf zgU4yMijh1M+ApRrW3mD*niIypTR%Q=SyV!BQKNA^Qz8`*5E55*1lkI0a8SzfqT!5m zO9-WiXu)9xR^84vBjPZt=y_ zOV=WNIA$p*(|l?liRsMx;hfFVcDVhNoUTytABdu_{QN7^Lhh?*`Ega`8bKo0V+CF9BsVJp2%@os~VxygQr9mHyf!$4tH?wx(vM@T{+U6 z!W)OwIn$ya9$f2A-87tR2uaPhwxAM$#8-c2fBMQrA`3rzF|bfBh-XTRKale}vJ!8~ zoNmMUoE&15j5jO%bkBr3pa(i53=iP0yF6Ges)yJpY7IVrvMGBKVzt6cA$y|_?e%z* zvI-(|G5y{46C?O1>x_TuUV}x)2QH67hu>+5lc{B38=a{O+2*sN4_HHvm4JToMj@!= zUISJcST^1YoH*d@lYavQ7>45Od`QNeIz+-@tLiB1UyVPcD{OtU+bfE<#9NmGy+6Ma zegRQNZnJR@N64%qK!!10-#mjIzkKJ4h#Nw)_6d(skoAp!+Dfdv_1og~ZNRN&%4KfH z%Bs3iR-9|O`>D-vOeQ2rYl2Gxco7j?qqSPGJPK6f8$szPlM+HG90xf261B!=mdMT> zF}Q8g9ekB-he;V!dI?n6Y9aw%0KC1z+de4Ux+wB)mc3_%y5xZ zjpCL&tE4!~T$ade~wW?{e&4D#j0f~6ypywrwCJEF(4zObN`47nCo3lYM zMVoshB^Cf`=yF_&U&7}m64FB@k@z$?rg!}edk>6Y>*(xd&4HlZr4tyR$C0t7UQ#I? zigB>?C6#_@J7Itst=yUjKb?3w-v08^P~z?jp3<=C;F)ZckRTqb%!(7<%<_7({o+{}NjeQKz%Jk`AG zpepdYY3hLXxQ~1fxz^oJB?m`jlDk3;C=)>TWQ4E?p#dPcSu zj&7tn!$v=(>%S@XE9-r;e4Cr4aVUP20_6GLw56|I5b) zmMBONI~p>1cQc?^m6nJ2lsymW=fL2w1_Jl60XcXYf~LW2C zcl+fp!l+j{E-K0LzHg5Eu*9UDj?2jnDDy0JtEDPLhd~K-4caF#i(> ziO@t@7T*pEUawU_4y4kAcpZh~Nl6}tQ0ro3o1cGq^2kjng1NyWkk3N%w?{iouiuYQ zg7Fqq0=`ZwdH6a9UlbW_kRg_F@>z-T(iNS~6Ia#Lgay!N)6XsT@E0YA_t1G_M{!j6 zZ)C5?o8==oJ2z>Z9~eMxbxT0F?4bblZ46}JobEGozwnMoF+NwGyqNrsRa z0)F)^JNnl*<>4(M2!HIcOZ6*u?QGPRHi#|b(=EMw83>^~Y*?D_Iz8jSeMs~mVPW&J z^u~8%n$ysnFVL=G=TPRz;Me9@{4cA_Ebk&u7K^4Y8sA(Bs^vM_5I~8wZ6N&ule$R> zgE7)CffWfL@_l5$Bo;Oe`))lxHn##RVaY&Kf&RaN4s?dD)Ot45WeGK=U|a%eb5RAgz(wTVm?j2nsdlr zA{8;=Bq>lofCUbe;32s|%ePXN6I|YhpZ_}bE)+-E zMO+G&fCBqy=HifF7{dA`*piMM-rC@!yZdd3Aw39TUO-g)$))NPD4?Rs`H0*0(j2fH z?=GCgl0PRSVUG^~fQ2@9| zz02?!D?9`(zL%K`eHs-CnYEaN&+8U1DQN{iy}&Cx9sPEv9PTrb@`@Y_iJX*Qk1LU= z#2;|RANY)v@bUrD$^@gng0Cu6qps{g&tw|71bYuH{D`wiiNfa)W6(a@ZR}&vQ9Rvj z;p*!%JP<2-R8oNYgU4o&+=D1~8LcO+=BKO?&LU@ivd~$?PX>4$71iU?@+Cx0|G6d}fcxg(dvRW0{5SAj@Uw(JY)2dy?>|Q36mvnkMlN8@{1fkYAF1%5BTX6IIbGJS=#JG7gNw`8hjbH z{3)jn@2Os<+z~&mBVV7>*&$~i+bpUPzX=b01EWJg0*Zh4a-$>fHg*EGcep}{JUknV z%&Wu_?XZBrv^N{frz0_2m1l7)n?@Zc0rnmg?Jx$g~j)d;B%aG4rU%#C8vF zcq&M?JcCM+yS<(j5&R$+z-N1`RjDcRN+?TvYZ0oIh*CZ)40_UNL&%1PcDB7WD4XIPOEL-(rN3GZZnqqUaj@lc3Rs&U^sF|{b^9k zGY;xw{9DnoglDR={n+iWvwX*Y#?$pHcNO>$VpyS zAJT~NF(IK1US|x*WIP>#t?J=}X*-5V+W*l7XOK02HhI36aCrX<-ZxxY$!yx->|AJ; z(iX?0(&pRvs(FV-jv}fHnookmDew#3VnS*ZKT1={#7-xrm>!P|q(e;hB*HAS1otWH z)5zNLfXQ*k+H$Sahap9&Ze^}yi;-;mdBtZHV(T}|40mO?aP4xjVlt~L*zZv7fHjt^ zi3B`nzvRRn>8^6A05E)!bNl-?-%q66d8XH9##ENl;^dxVpOGX}l?kyyZ$Te5nErPkWI0~8JFUWIaegCZPW2(FVQmAF1 zFVoiSl7&}ir%Ej-X19Ay=A6Tx!iFGL;PJMAehLQzligzWvifthhSeZr)z{iWQG#vT z-`Ev#0FTMwrk4zviMjrTn(eKQ#3-P!+P;|H5{xOS4V}eTjra}P;0=c0e+-hk<3^+5jV@1s%P8EA{o5G`+_8n&`@QA4S*V9mc!?K2^R4Kp#=@2!fT8TWZd5?>$QXW;$(9f=iG~9wJ>88bp%QvB)XH+T zumAX)!U&jM#zd0fcjB}N`6Ohp^rNqEXSnI_UW=vf8aj(@`sHY9_DER_^*G*Yuz)X; z;7nU<&|P=a!r@TldO4nZr--Ho!-=%|-Of6tP4)5DJlC=$b(1=x8yA4uI7MNMuzS8b z;oNAB9u?RsC5n7Su{fo1|FF#)Yloi*{NyL20%al?$&e*>zt{$szBRNbFqX3-J{W_V zQ|Fv`!vl$n$z4H5-Zn%@^uxdHGlrXb>`SrfG<;g%F$N;GQh(}_YCg)Q;P)i+l z;w0x&S>n~XpHQN9OoY;9J#$smUg5C*A2w@3Y~kmJ7tPd4W| zyWGr&F6Yta6BvJk_~xQ#1IVG?)eJv_ z-(hzN#+T0<8}Id5e}vuEW3De9Ve@C&P{c_TsXY1XG=NS6l0+h3kcdI|SW*k0A_N3;-NK4U4q6bmJ1MYX{}4h3-o>Dbw_VJK2rZQ^X9#^O=QN`mXJUdE&ECB5@>Be`b}`*gD9OlZ5yd% zuyjj2M16^gZj54>68(KaWQ;wYs9$kCAlv#IvP~ohV%FzjLU3$7-tpBR;bS{hB)7-5m-nwbNpmI4qU3&99 z`c1Zaw_A2$?F8SLE6Rus^f#sLk}2vmiK|B=DT^m{*zS z5kY!xLN;y4cpf6dn0(ypU)iIJ7`l=$(mIax8}f1SS69{0gIuTg!QNEkq$H14%BK-) zY@#&w6y+e4wvSNpOKz}@JM|y%`Ir{;w=3MDO;bbwhm2CMW3;r2?W@tan-Hz+2nXLQ zLL2f>hze5Uq~15W(@5=-5hsmN`Cq&(E*#?a1={9bG?1%pi@U@*>G_(D;maE0_2za8 z1E+DDT(U8vuk}@}xDFItBXOJ6xHJ-&j)CmH1ilc%Dg&_K!x1e9@L8R}0HqNv%Ux%} ztc}mc^FxIuT*DI^w~lM!rGOP8le%O4LMiD|PsGSBF$O_}Miez(lzckW0D3?MrnGq` zS24iW6(#!mB9j1@C7ugb%Kx8}6ckOH*o7G_jS>hmAnk6TTQIVyRI$DS{kypXx3L>D zjym5bH)I+q&xokP8FD>D)qc2{k!{hO=I5N6y_ujdRzD+x_nP$bd*rIS7YwAurkv(# z5?yPmQ(5vEdwN(hhjC75TY^EnmHg~C{B|AMDwih8fgG1D+r{|Ed6Wy?mG*yncMmli zvBg4*usl07#iFRuiP~FjZ_qG}JKRT!wcu-D!3qe4Y7xW9AN zq~yn3jx1mp4@c!yN3MN9479wQy6+dw253BT2Moxfw{dn_wMu{KytPS;sI~7p^v$?8 z=X5U`z(0Lh0X|BoW@AS;)Z6^DdWzd;6}H0W^fT#l{Bh(2XR&m&4JkWYZ24qrDP8FA ztU5dM&~Q8+7V^@0`%_!-DY_AQ{XHcSDr9=M5S zIAeOsy2Y7=QyyF%@XxD+4zvV0{$aawuO1NgL=%p$rC<)UuSm*MpF87u?Ra5h>sD^? znUR|V<}4GPt)C=dTZdhSq}aEM$7bFRrb|6*w8Hl#xvcxER2o0 zV{WEGTPAAmCiq5LgD#Z{h@X5T*P47P0z&k7vko4$^QiTYe93TF1X0Gsqs%E$q0h4B zKK>t?)}*YpTS|2o5`OP|DBn?y&f`gV<<>e3;chRa*1bP~F$STv#cgr`YdS>ZIjI|P zVO_Og2VinB*O`U zM9Cc`TtIQCKwm@M4m1vX2*t01S7?(>;=o6NuWo+ib*>^ z(v^m7mzk_hxqqMPN}bV5hPnaBm~VoSu_y0bSR7Sed4RqG71URblTx_+XTk%sN3T83 z6`}_j!YGqiwuHKm8Tihk+{4&fw}~G_%#RkUbRR+sVM(C@h=@KWSbe)v2W)d8;K?8t zp~2+-We0-{C*-hv*}S=Dwy8_4gDT?mnaOlPuMh6uvLFfrv1HIl)Og-@?8sPqp3`&m zGoR(>-}^#J9fg~m#noCKcAT&)^=4W0K6E#EEiSMrDzquy{m|9?mzTL#dsq7O8GrK& z3UAf&?TWc<8|WhHLh4Ar0fmV>!%TiKwrs((Z2lX+C{J$FMzBhBCz0~8Q7Bc^N}D<& zG7E!^1wzlpR>mR-d)X0D$^AnDmq9kEF6sBFkZ-M-aasGwNw<&TbjleS#u!^;6Z-+& zN1k&-mFWc^yfRFkb6vc1KUfp|1f-A%A2{6?Lbeh{JL(mDz6M;;rqwFVZZQq(kFN#5 zj*J!D>`j=UaR*0oglwOh=Wg{7$>U!%Z1&mX4)lM9-$Z9-baP8~bF+u;KYn}Q{70-+ zj9#TLN!5egJ}x-0Zt}^OSl{iyF`~m@waUWxX$T6hdCJh=c9nHJa{w6-0hB(hvM1o0 zt9Qm}XQ4u_uFqEC-UAJ-fl>X?3L*UW2qxA!0-bwT%bgLx7as@@OEr^Zk6(fXs3+YQ zJ=>hIlFiYZj7lVhM{10`Y1(D#-7oyS%k)`S{Hnz#@y|C31lxCsKU5?=5IH?*iGQ>5 zHJ+IAo@2K9@XXr9M32(oG5GZ91GF@5?A6HF{Ld8ph9VXCSs6aG+EGt*aS z^_f*3*<-Gz)zp}#6%M;`{;EtipguZ$5!{W3#(&CsKMH*hL_&tbK1aK0 z-+aR|+^A>5tnr&xtbYDPZ!!mr;2!*a`7R6|b7!2S-@IC|HHO#^LZ05z2KRBU5lzwC z(_47Hl15s4Qu8{^KzZlYw9CVs!^7++VSnKN3OY^fhTEaq?v#r*|CB~>24kiwY+YL) zPxV{7F;~HYGq&*wd)?_~zly6qQbELyxBs(xg6#w8yQT9u1*-g13ftA7c+8R~4F#L@ zgV0J-bQ#h+oP~a5%W;g&YQ2H-9$&3Q4vZ!DjYZe;VQc21R63#%ZZdg*(19<=ly!g8uEEx2U_*H3Ghb<|&R zkUQY^r$-3Q{K-4Nqnsc4qI5|tY8{c(7U4qsSd$Pm&F4RFI$3NWN6G$y5ph?bgKVY6 ztL2Gzfv+0`UR^Woe((?qsuy~GmOPFs&WRO9e$rPZYdfX`YxLbo*t)&>vmb@2)o;@b zeyY}NDDf737yHG%wGlk6F8rzGxMq8ccZdNT(&f2R>L{y+zEW@QJ>y(&0iEGJe9~pF zbO-;!lDtBGcpgoq;pC}3`m5p2?G`tGhNZy;UJPZtiz+-}jZW(02H#rVe7i(NUX(}n z-!(K`JylpsFyryiyc4(dMvmP-l^=t$T|+~UN&n+`EQzYC5`M!nHbQb6#`w9)GT*yO zFhm;QB(?}0Xx%p;Fz#J`!Thy9fwu&K4%0c?Z_=}G1WnMUm-R|bLMh?X-ryjwZ!WT{ zD)Mu4+HQNscxcG@VtD|9z&=^X>O-Q(<78(=a>RNZDgp9D3_-0(-jui-Lw7XPv6dc2 zX*c(rtWPB4Wvp#^r0Vcn!v#wj@^j@m0vBVr&fmITckvD%dDE7+)1UV;VZ?^sR*!(31z9K}{hOAq*)0HmAf{v=MU+%{P&D-1A1JSeGHYh03NkHs6-iLpCcw%E|SvJur!8pF3!arofT%~zc) zvZW^mi1Q)TI{yB1gJoGAW*w_f zy>J}FN*v*9Q6Xyox*@z73iG1x;#%KlwAhYM>5HR*596>DZ=wgWCR>y0%RySZ8V*>! zJBsA6;**qG6^$>%u>K}3#F3QlCX>{$4HTyG-=AnS8v=#ISy#a0w1Z%t;~@X*RcB$L z<5;gd2L_M@d|=K16_n&{9NX^5(Q%?`!@JOfW7fQD5GRRL^qro0g(lP%X@Tn~R48x` z-acde>>uy>KEX06$Arf}XF_Il}sm$#}uE zwAWE=A(9|C3y1+u?mNw!%L#7_wojY??&*7A7$9>0bK5#`!lqmwEwm|-N%=sPTymt> zSALD8a*J&On_I5y-N);H|6$;34R*9D-{!LY}CE%;+*H^X+$f0{pTM0dQ{h88L{7u=QAx8)dtwCV5DMVmA%>BS$--dtxeK6bb zC+jOqmbm4qe?KP>`)+Um<+9wlKb|-yK)Po^CbNIKE@$V2>3VjByX*r>f z;cn3j)#YZcVE|{p=A;@irHg;29@@fy$`GPk~JP=lZygRMDO=Ap5D@k zpvE2qn5$kCzpVW9Xp5ynqG5$+pX*su@jvRCD3v8KzCS7Yzm-Jk@*-p!o=@nCxaLB+ zkC5&=at4U>)%pA9&vi$L=6Y^7KHYAdJFm;`AnI+tirYD_6A zAI-hwmQ5<2bCC5*e-+15>EMwZ$HXUvTJIXbF}%zx^&p4Ok~Ts!Ff5g(7S;t|&@5sJ1O<#h|cMo4r z8Firl54#QWt~(^{bhZIZ?i4K}Z#BuB;ep+6FOHSVY(i9NBxV;Ig+_~`v72g`UWC6l zprBuT1YnMUSWFCw-V|t(EH{H@Jz{}-n=J+!Ef{@J8E0D|@b$I%3t7ZYpDql?f9TqP zF+jfrOoj(`Hp;-G-FmL;a zaLbC(c%XF0Z1kkpi;R$Ra-ciY=3#r-#4DHAN(ykCM`^KaJ==X}DxLpQOy4hk(&`z@ z7@JFGX-_OBbju+$Gg2lV8P0n@agpO9rY=9>A~BrR?fgScL=~#z=|c}|ZibrrJ%&{$ZWd>r4GY{O@M$jxKdX@UWEb+o(VcsQbtqHTWRWzgS>p z#bq2SvBD)-Q&xowWbT5RkQ&(1DzVBuwkxU-2V@hVfO{VVoAu z%rw8%b<=S^^8`DmHHP*G9t7(}nC)jepPM{co>Z=2E#Kl2>*mXtw$s5Le_AW$)28&N zY{GNO?9hh#(}sxBg;0P<+GiL(&oI5HmD?-DLGcvG8zXq(#k|1VJ~Er$dhl2y!4VJo zaeglbfx+IjHlA-!Y@#0r67=yCWD+<^N5k*kk6lx^R_!KAKOdF)t}6SIpicPFSymK8 zRW9kLVlsc(v$PN;`e8Nvb{-(SJgod;O(A>m_FZ%ph(zP+6=p0d>4mtW-PfN9rQmdG zLNI72701$%55R{r;(H0N1;D{^SxfRc3!zEA)3RNZibEnj$?p|3w!=dsdL4fH&k#<& z_P*6LKuit?TKF)BtZOe2aRu#2-GveQasE;&jIw)^g7J4~i1LjkPo!wJ%TA-YwMt#8 zN)SIhdQX^Oqj)wshLZd!@+;cK+tc?MDX`TNldrk-5zz!phvai*V6R;O*!>RWlaT5Jp(R?c={{?_&JXvtemjV<q$B@Cl|# zAxTg4c$ufq>WwTd!G@(j4!;p{-1(b z;sPIJxG4!7-Qt4}1y&V+62@r&7m5EV@rMqSr2T#$0V`Swhl!N`8{$oD_zxfi&f-*I6pB0f)ATnSJs{zESJ(5caTht!3@+UjPp-Pb?L}`0> zjIujFNvu#V3;k7b)=AJHQ~s(zs|yz|O#DI|-$vlGN3Lv`Aleg-(NA0A8SCN+9scZu zDd(#P!HD&KTGSPc^)_2fG=r_5diZ`N$fhg9+*jR3#y*my0u#!ECvPf@1>~DcOw@iN(7Y?zu&zbL6RORYOixkQ< z{auZd+8?Q6JsG-M`eZ#375EK4n@iqHBbd!*^ip{YzSA(!<~$|0p7){n&s6X4q0YZe z4DYa?(|(O>CIiGhp^h)zr8J_wyyCjU_h_{>f6=tUpfVWKLAKzo7R4hhzc^_u7! zKW4=-AaezmXrs7G7^&{!MEIStY2%OkngB*BXHE0 zl?2#g&(ehJ2~|Jl##{SST&U74`;K`d9KpOgZdN4AqNK*k4s7Br*;9RTWx! ztQoXso{CYj9~q2o2o$cL0zcRb!K2Fhjn0U=3i$OY5bP+_<&GRo%AcZp$8@do_=K(Z zP++*cb#$xZe28yq>{JR`KSCAL7-u=6Yy1WxqzOW)X`Uh>y$%H0BDg8Ovis5M7>@Bf z1cQI8TA~j=8F+ZIU1okEciYxXlVsC9 zJJ^3d`H`v4LB7(3ei}Y5`F#?mRUKI{Bgyky+tT0R+bA?FUU%NA!q9PP80sRSp+8Kfla z;DWBX#IUq~psg4P9QO5=T_A~x)D@Pqz+~vNBDI!B+&e2bYyCc0cNlWZfK4?4({~YKCrTE8t(>hsB{arv*7{Xe^ZV z8?HY-L-ObPkZGd$By>P?F5~xy@&}eJNVZzwc&qPcopIp(RVA-#MHjz)Wl|vat~bC# zhF6nUW&VaS+2<$-+=e6`$X%t6w-zp42znvqd|*e!(w0n>zOhprEc0R35vO+FJX|B5 zFr}Y+1xQL* zZIG5nP%ICluk$SQV|tnW{pr3k@B8fq=Etmc&ir*gqDnHEW%(lw`ElbyhZcJNjUWGn z;1naO_N}K$>hRCCM>=SBQPxK1{K;pNFAVK*OQMewg8r@G*CG1pp=ac(%WkCYQ;OHX zF%rnfyo-KiF&*Eqqjd2j=7Q=W81EgXw+67@EH+BXvNS*pKStZL)&xr31lp$_ep#@-P249HBQA@_w~I`9C$rZ$!&Q;8 zpCI$gnQaOrJ6e`Es<@~%7!aHo@2vZ37IGIcmsUd!PS{sbdJUOEZx)@%Bfqhy=0zi8 z^bIEO%qM+ST|9&rv~n-k_^;jNQstwbi1&{_S}`!WH_o8nGv)3viOyKJn27`8XziBN6jOD+qjL>(tP4i8$42L zr1i6lOuawfI|n|aHd>?W=nm$Z;$tD9%}?&@qKy?Zy+@haitB4~+HDU#&3JdiI6cfp zCj@-lHWjDRVhr@JbYnf~ml7LuNeuN&n=~2ZasmeP0`vKLSk?Ia?qI2&UCGv28%fzeS`~ z#xx>;AymTKYZkJ;J~dy2H2ftna4;>30|n20fjq=C;q3k2C}uhCo*#oz!6M(HZ?iBj z0bIdcRas|t{8gvodgtEonJ6NPk`>X!rK6W*uIcgABE+RUtnmaYP2UH*k~MCVQo5ZD zuM%kzzX%fDFJomqWh1rOQ%5?+r90H6?qk|86AW!`SuP218=NFa5`cmH4VKLcz-_@r zK1jf2MbK5oX%Vglm`uL8^A1IMVhf@WpcORNYa63CLK)ni~nhvFZV&QOwqG@;(|k1X>$?w28nS z_F$njlkXP`M{c#=W_>*5SMD61_872;5O7Dc?xG)dc4ST*p`I_hsSV0}|3vyab^q2V zNfaFrHW^>C?yt4zSm(*1)k0Bi_O#A?_|QV=aK*Lj{7&8J&;2-)oZ?>>t*^mtJ#G&E z=W$2HS1YoI@|@%yD2r6=y!$eC29G;X=nsbLaGJE+l|FVObNJd3kzX>>z zjjJ+wlV6(0iAMnmmM-LoLdbVY6dtyWPDDpYRI+KM^|o<=g%*7K1=zcbDx3F5Qbvx$ z9ILJIz30S;DDW9=?6ogIcxIH6{|Y?l4FCaqYBO(k+Qdpay;l4_;^KQ{qryQGe(9l6 zY-=z765eHz|N3NsV>48TbsH%r$)1D7a9-Tapcphk8IKK}%k84>YJ>rVN)iA!anY(E ztGxDk1Y3lWnWRtp2=i4$3tzc^NZgkkJCw>9hv@q4u!|)ua4yMy+5e=m=SzOC2x(FF zVuE;q{>`I3HfI0qCI7M9qjb%JvNFYLs?w%l&U#0-+7~?)hg7_uOMN-@CA>Jo{$*hM z1#Vmrj8?(lKm8NKN4_f`y}PZ7>^<@$s4w(FeH9lQ3kIxjU8`vlH`LCRNo^(e3-Pwd zX&=5t+4i`-whzV%lVuGixul4u33yCOX_TcuN0|np6Ch|rM)iS0D&?PrARtg*?slNQ7`lz2~Zz!qG`ws|Q2H{u`j`^u%TTg2 zLV`P{Ccw8>qMouvG4Yi`A|X_g+$g-C$mc2EcnoCE6#%RBiI(R|!qKqhhUkdSe-R7( zV~29Z6Uk9xjfd`pw{X}!;diiYuCOL0)Ut22oz(;`8lm?4o_%;XMwDmm0E=IwF#Jl_uS$KedU?28zxGh~!DUrl09cif*07 z*=J}@)qKbvvBv&P!D_KXN83|GWN&Zb%$23^W|4OZ+c2Hfn1?D3078QBF9pR^mt3ocI@vBC ztMsXOYymgsm~PDGS0U)tVi~MgZ#%i{ph? zeZOwu*Nmh;D*dek=;j_D8YmM;B1$q_oGVS(7Mbz9yyxD}jpLlZE07ZhUy1uAaFz&& zup%;4zw46f+?k>`xMuj;nZUG~pk0R40td4hN2A%(NF=ig(wFBhP>1In`KaxiaS$aG zL2yB_0+-@q`B^~cnk`~8urJ3HTF8m`Z`|zfui(EB^W*T5ATxqiDlKKBU)16Ps=P%? z!s_NmZYT*?Jn`l;^{2%J%~HkSpmnL60%Ol4Qn)MxU5tzY`330S17#@9TVlz*NvkTq zMIXJ6lc5Du-Cwz&%t~w8oTUvy@EwxToXg-hCHnVO0pp6d7il!LYWw|LR=%PiiHSQN zzI&0sav`XoZI7Jt{4U|nxubUaV75WkS)z<#mU73+w!oyfz@#M}E`~G`0B>z~eEQfi zZNJ}K<=I}ksj0i0SGwk)dt>Ig`0RCv?ov}hRj#&yoVJlrxoa_@-xx<0rSOmHpnbpQ z0QROmwn}&KTR|^tTsp$D)9ajK?ivXp@S-tHY10=lvcjO zT?d(u@4pR{DYd`v&sy(Fk!rg1h{^DrwdIAhp0qpDpXWP^h({N7F~k7z+!E;-$MItg z9VQ>0i6yM{R`Fpac28&vdo#V#_`6pXeMkXFiW7}KK6%iugdYXD*@q(-IfMvGwDZ3! zZXM}BuR+etX}6iS-W}hoaA$Pa&*a}$#N3l}iJ4L^0M{2l|mvfNw7J@aOW zpg*wF;U2F2y$&Kz_G5ESjv+Ghev%?BR)#y6;J_R?$eTi<8U<~pN|RD63R0^Co%NNP z+Ag#6BD%umtj=Ytyx*9M(^yJ*6$|h3T0%hu4vpPH;b%1%I#3;C3E^c=`97Geo82Js^fSE^NeF8rFn1T{z#+Vmae?44h`2; zg`w^Gn3dhyu87Tf{26|ynE&3Hc0Q+&BwP7hP-UKCECfLpsGr&z`s(_hy)qc}<#qhL zKK9(8<#xg8<#cSQ!oF`JOONMoYvEBr66iy2@*amZ^6a(WHLCK>zpGA;?~8qkduCRt z%RaSS`=fSbTF&h*Hz?Jy9lyIf|7r5Y`XxKnFT^D84aZoLe@1l)ITymSu7HC=vBF`TRl7?2Oa3JJq=V2091`{bOo`eo|*e zc>T^&{Zi-lt3dx^FK#J^73gZLy)8^gT6$!odDU}E^h#)vFt4wGFp9Bw8SAEn^{ga= zk|z9x>y2oy9$3dQ!Cpf=LpB@P#v?a?Xb)c-jype&0yfkaQ7$}mluH^kc8gE(u;v9% zgDtTJfcgT0CT0X*XV)lcV5 zYIX=3UD^2qA3T*^&GH-NdN(NFz8JSc^CnP62@TB}n$W85G!FVi`S*L^URh)FT@iKM z?IS1-p*)nX0HWHyJC&A*k1al9UZTpry381V4R42V)%GUW39xm|=SX~YQK!Mc7%NbOtd+8}nI zHd+Td7xy>wFH>ddLY=;IX1V@AiO%EoERnkzDJehk2&CUvR<)9UzaK+N&X|4B%Z$S_1<4iQU9X1sx$rO>%FH9TbT`7)~pmJ zSX7WL{o1aTE;=T*)iOCkN=_~2QN;c9M|)T3OJ|;m#|>;XB$ooK9M3-QIG7KLE1p;!)h1=Q*5fw$CFx7e|L&z7 zzJPn!98FA~+oL`?5;ZFaIo*azw?KGendo8@Hoo8K)W?Ho^of^#g{1XE+|FE3H3xbco0>0ux{-=QdM^_(yrNEZH7-bO30V;&t)6S3;#wyxfVTEde~n5FBBAM!S38dMjG|U=DHk# zL*qAf>-Lt66pu-vL}#DU)K{AStLb0u1~gUB?opLv@Ao7WxY5sohIy zNA}{KC+;sS(12J#P9_dx#KPE9)`ZC9OV2&lK7z%p{~{50+mOxtkd+UC_7j3Qs;wIq z)6XOAoWIVG&8JS`z^008>9fDdho*Zir={;!Pc5<{EMudgPV(oG1aG>%@vVJECr3F; z+@^RNbSK(%c~18ShKDmB7P3Zhdi2fKy0Ol$|Dhx5R4Uq-^MSx(jCAnDh1bd@76Lu%;#|WGy5`y z4%gUw!9iZNe7fL~5qYF~@{RC;;H@T8SVIKJLl%|g!JsE_umYW#O?(krqk@E4W(spp-Sq)Dr-JpMbh?FXx{%oDmQ1vxn#X zt~wK?jBn&7h9mZMdAEro0!WSkxNYgC&hwhC#f&nYUF1W|w zDV-v%b6I@tkRfxkV3OuFE;(#-fHOE*2^UITvS$@SzRPnVabK{AgFq^UXZQIHuNt|1 z5eSSu$5@DU{J0YeD@Q#I-h1&a^L=K2xNE(95fKGRxPBP3UG=}rGCY*H5D8wYN+Cng zs(D2kFB4qgNizYUSHFK6Xd)zoVJquDLao&ZEUm5EC=)}X}=j@yf z9(g77CXy|l)P>Om4SE^HOHt}9H%Wn^_SQW{f_J<89mj2Pp+E>Dg0yZeeHYt9xJMT) z;`G^Y-KWxMi5l%#iA-V$d(9 z^kPzRlu*axZuhlY_kT2)v(q4-rB}-|KN2pg5^JH4T9(W4t#9m#zC~zGE!Eh70Vc+wc$xOLo?m z>Yu0$HF$a6KR=7|Oce5L9B|`X@=#iFTrQ~Gp|Vq{HWPlXM4)>&U2wGg1p#@GWumQF?&|68095#20~uOOXbj0a+&v2J z>kLD*Q?#f5BRf17BEA*vdbt#5B8u)W9j`#wNpslJ1kewlbwnZt%=GGrmOk_>bXMt) z?C0-ztk#o!C*u}R%_9X_oBQdS)mpzZN8(?1qlO>MaLug9<+E1;x#agJ0sTadp3E$_|3ukEl=po)4+($hYbCE#| zy14EhQ)lHS#3F8X1toAn4h+p{{A*AjJH!<+E!2OlQU8ukzxgU0-Kx&tFa;_`Uw=GR z90;y#d>81%wS^2g9bNAn$}%S*HaRi`*cZ7x8f+?0XD6FPR1U@3>4~ zv*Gn!0tbY!x}Pfj6<-|6zx;(NyeKR;6}DHBCx0-bn6l4Yz@`fPY!^B4golk#h+c9V$)aufpwpE$}`% zWq*-WMA(!j|2+hDFs?a1P%Jhq;Iqh@WQs(KNUU`34Nx0O$=-x&1>4cJtr<0p^c8Fy z@y@M4e<_(7;4J+nT0kZ+LQ;*lBY^Odt$4q$>N2@mrKE-$|Db4Aj#ZLVAg@v&6^`TZ zdcTIfm-S0#Cvd}N{1c4gF4H;?v($sITuWAsCRBLP+zZdq{5i)0n>?mG!?iEfX)sHE z(&jd)6U{56<fEFRZs3z_KW`>ydI#%1E8`xveDSilTXva z;Is@Q9Atp6y+it?cO)7B2uYJ8|5b!~a!hH`E?ADk4OQ=sMNYm@wb8tg9yveJ{JmVMkZ;LR^3#yK@ynQq?91`b zjWLlT=WwLb17TX_=m+`vX;$a*tqC+f%f)l4nRN5|&Nt=bwZvD6NnTSL7nOj@>O6bp zRfZiPDUdOq*!Fz*7h&N-;>wA|$-EcBg3Ax4y%A&K!}%J={>7^ubFLf;v0QJxEz z9d-Z^d)KvUyR9n8cHOD^36~um=NEO=hkP45Z2?hwucC*#&z3|TN0d`)$rc<%_wG4~ zi3p!rg*MDHdk*qpPq=HeQPlE(bLGhqdxggZp6^^c(T}AD{-#ezQ_J;s<>8zPze8#8 z#my85iz@t2$00)y)zjaLKS&?TM1l5)Tmm(ro~;YtbV?9yfE0ov3W5M9dP9OmR77|g z7#Jum_@=~B9x}n6@uG!LtmIQJU#9M7R(7-6Q(o?5u3eKrbUxJ86bX~iTwzx z5F-X86NBIM;;(xV;9;K&$@od)&zjjmfo|7huLT>YOq0VoDFaJ#Yh6M$3T5V-pWQ@r zzlsACP&`hbs3UC1#C_1MiFZTc2N1y+0>OM)*HVRS;X&=%kmL!!U9Z>I;~-!^t$p^y zepk|b8S0I^lnFtAqKyrwhouZ0f5jDDYDQb2xA;!T%_@#Dm#=i6)FL}pCa+zuBgakY zhYROvMgdu%Kt$VQ#Pl@=W^4U#>$2Vni4<_z(C^m8U7Z+`xWaBbuvB}SAxlcqgAaZ4 zJd@yT>JyA^iLEZ&u5Iz%UVr3|+FnnIH5)7rA~Ln)zjZg%N|E0ui6NGGe8{yIDsw?% zYy3lCGlfuo{PXtQ!=%f@-z9UUf!b2H-`WH3%Lj_`bR4FvD-DI)C< zcbhXchpF^J6GA>=xo2Vs{37Sa&0=u)*NxEqqV54SsowR3v~sy`JI0ER#u_{F--wJN zMyqPRj7i-}!F48@Kl@rME?0qC)$CGIr7_q>b>p$|z_Ab6zK6L2em=b5K~XZ`^+Fr# z2n_J9H#9j2dsze`57vX&^Hux4Q9wNTadhT>ryRIh=mSrdn<)K%FBJLxFZ_q^1<8}K zs32&P1eBT6fHVQ^rNX-md|VYF+fgvFa>)r_q$KZ)&++PWfM zr;U?7;l%u0H~8S7BMupsSQQj$sz9$W`bTtn>v3|=*UAkT_!}GHpD23hz(2Z8{Ld$5}$&>-5UiZ z8bQZ6mTnJo=dp9f$d7fdF%h;uNLEn4iAYadiy!C8Nt$ts5zI~1uQM(5V{r*Uq~1-o zN0u+;?fu)IQF*DH*Enrk`#Q+p!48T^N^JZZz82=r!A>x`@rP(*DjY4f$LQ)uh!?l) zhq%x6edXG(&31m)hWn@foDJj4b1(DafEm5dyG83{d!g!-_gZ1|W&XsMQIf9kMG@`e z#NIw5gHNRkvasety_{zUe^SB`M(VNgX||1iYl|Ts9Wgc-0WB593-vV?AN`HMMfuMi zESXOaVjyL5U`L6>Pm&{ZUyz{hdd-e%g2L|jdLUcb6LczAApqFPE<|34?ssr@U(%mn zy135t9*)GIq_ZHwVeyOTXH{G{3chbqw!j7M=fGi0r%3+uPb8W-#_cm!`wsvK9+G9vD0vG#rHZt$@ zc@sT%YLHpv-N|v9fl=%|^9~1EHterq+ZBDIBxo8XO{T5_0=w`J0XYTot3@kXu-S`_ z*^-DD#W_TH*^Pt#OIkBoF*O*bIN=yDkvsOMNZKVhb{J0>gf$usf0jMtbUu;pieOP( z;g2)je=g z;?!AWX=(}OL2Wxus8}O#mQZ60W+Hk_;PeT5)Bc%%bFkcQzCBP$AOc1g;ts@(vepaM z!uW7SOZ2w8_%%iynKHW>3J?Y|ZwVu+UopJ%_5Z>}P@XyRZ?xkTrI81(pS$~DOH(kN zuiDaJSR|1w?&l@aLok8^1*RAtd`1+}!Yeuo$!PI(RS##dX=L~f2<&zHREHPnGX|&L zJ-4TDfJ>K6qRU|u@6r?0SbD92&1l^;Uc6#OU+V97ED^kvpI)MLF6jYskv{};i4&L3 z=T$!H=G%ucOX#TlXLXX)5_&SP@>BA`-Z=Upx0-LLix{ez{kk&t7$Ks#FndaG~uJ`W7x z?XhOZ`uA_rbn}=wT1t&GGm8nnH_Phci`n_fO^C~MQrLY~%kF}!6a`1CTScA}6$&J! zf8sY#W}~T~oEha=kS`NyO~`X^X>k!yXARnZD?RkmT5hDW)?u{pM8aa3E{}J$eHbA0 zmRDc@SU%gOO6gFwYa_UiBxk7ZwPrt;3ZHsOp1;prkhB(2y?15rz!mAdj*@*rRh^Mh z!>o`ReoM;=2zDbP&B$&>!=4A&Uks5j3}|0ivo zP#DS*^af4@`O_QyTq)%W@|G0+3$y&(Zfu6H4F-aHj#;U>zYz1MRxlK1kCeQtszo2H z-^Q5iN=t|ziqD|eV{QC_YV)9UWFo^aM}l0 zZueM39~}7rB{FtCMhwW*_6HMipC@WbCx~OOg+lS!?c&H>So5soI=1Ni&{HojKNGvN zf5{peAs%%jv-*JW7g~x21CNagEC1B{U>G?lwVM0&vw&y8dlt0dx(w7tbTp%kal@3^ zgZC|K3@sy!O{RadM^x;9{0}y2716SDUyCb$3;-}e=gi00d#c^095YS+DROL3rlQA> zZtv;Au;G$)GebCUu{j_zM&}h#EslJxM0_6 ztYZth-?tPX5VDmkv)P~#fZ`&cNG9opew*GnAi}py>Q-d>Fg1BWWA2eM*YIb5VZ=-` zY;s82a>qZux)2j~DYeCE^fW6!0TQ~z30c#-C;m;T*Us=KO|djXVN5| zPRAgv%j&h*S@{Eyfg&MT0VCQqA_YefRQmjucl?=6fpH(IJ8tb9KYMHFgM$OUNGi7f%}+$+ z5;7#f31IF=_kUQMrn0i z*Kr_(%MPnporo%~PVWi82b*}Nct>G1a^%%Sky-dkP-N~-nV19&>LrYQ5+--T?~mVe z^a%D7!xv@(BiI5XESG;`h;3a6SGgCYyL+BFirl?*5J3e!U{nt_>B7k<4D344bxGWR zd_%T*bgT5CuX@JPxDlH@qme~$R`a~!p>^ELIA&eK|IUA@DsT?O)`M;=l`t4dMFpP* zlw2;jSFsUb*zw=JyIz4dZc~*@ZLip>()0%A>p}>coI`!EAfm1QZiD7}8#-Dlmz{sD z2EHZsD9S$uX^s4T)3Crk+@RMZ2|G84wm_d=DRz5pbjp%T&Rh7>oob(Hl2c->HGTfw z&HdYSi^|N)D{c_g$+tdRPh=^z`6|kytoIfv!90bBnz62EWaGpJ9@cyM0hO!a=2OS3rTc3iG1EQ@PQciPPw;9CKAQt=}D!-9;OTrmWFW>ixGyECS0bI>vQ~38% zK$3>z6%)9px>Dgm!fGl9I-;zL#hmV#G(u}W(>0)X`&#INQOmCmyc;va*<|iXga8rM zMF~;GmBnz5W5WIJt^7rz^aQ^M?_Sa2;vqS8rtj(ZjCm*}uz_qVC;8pX{=VFs;mu>T z)6YZ%vmK350Rx(kVo+qbx6c9L5QrB(4qYO|FUaP6zKf_qfZm+9X%NS|0LQ7UQ5#)? zNj4Lnf08OyF09ggB-(skUzGLKgpuxx9`pnVvdM3lnn%Bm^NorP2z;7~ioQK4FEvNj zjdx{HzbUK1wB6qeX>eXzWjcaeSie~G9z~2aYe(?te#EhzyevgM$m~}Cb!I`oiXs^6 z=?%$yn1enc-Q!*Vn?(0R*C!t{+y8Cs3dg-CGXp2zi?XSaI;*C56e=t+VY0?k)GW~W zJ%4+7G`@dXA$0Q*Lb^n`^p$&I)I-%@rGEFc!NR}!4*62+$#FKKE{Lpw(qw+45H%gO zKbXZN3}jCA&Sw@x_q0QS!z{QS9)fDNf35kQ zE1wiPzh3mYpy;;Ky28KkuE%^JrEVqC;j-sWX#5zEf=G+c?2p!lg=0r&9DlzCQG;}D zjRN7>=)N8nwnuc6#;~1D$T#&@H5Ud0S||SIre`Il&)@TXSk$YxwOZD*XRp=c4#Dx3 z$B)%7WE|gKvKB-W0pN)%-9# z4~n$lE^)Ze+1Fxz?l0ax#ff60oT$DA!DOoF4Pjn^_Jtlp&B-n$j#HD5>4m?A4prwX z8IC0QpR#YHCdQ;E`lNd^N}CQWX_qcipQlRxzL^BmauVh3>x`JEMliPGbmz)RTvqS8 z${)+Dn`(4uq8YuJL`6t;vxrzKF2b2ixc2?WD9YYOG!WJFN9o>7>CRkn>9q22@b#FU zGW3}i{CvQb2_#8(ircfUaPU^4t*fxyvA!=3V^m#ZirsclFZPN^YCC_v_ZjnnUXH{Z zD$S7U0CJDevgi+3IYNl=CskXoI6fiTys^H3u~D032nD+^xtdpZ?wG&!4~5{O_)Z++ zro=Z5@f2ryp{mLHCZ3>=Ktf_{oA}^%ySg$-QKE(t>aCzrVZ=`92%IAhKJMs#2sf)E zy7mW|q+=f>3m4CV)4F|#HXm+J29@k#3!ys zlMlHzeC_U2G^RlXI+zTpj{WZYpHF9X?kAaCk6Tvvkp3|%H?uaippn48w%fCMQ)oU3 z=Vji%1$hW|fGNrEQM{n^N(Z-S{le8xh@}tvF5d$WSC#^-v0DduNkfg|YFm#Fy z{(0oLJ24b?uC?;`W(=O|)>-WIN;CK#1^mOpl%}@%nOJ$3qL6Zxykq1>0%HxWySi8O zHYuW_fX|3aaLt_DbW$inU2yfiD#NjS`OvhkHcP|3f;)llm0QiaPszDY$R-^wPRGW` zg5t|_C-|L@D1~xbNS$LkVKF6{JtgkF3nlg)Y9pyY z6avr{5zPl5&nV|P-N%X!VR4=BMA69H!_Z~#Xlk9c~ zOLo6be)YGnb(}OtPa5E_xKri6s2K&v=*5}K_7?Ri6>s_kPl^?HFIO|pjGR4`;s-1D zjM=QO*dgiUhDYL(Cp@m8;Ez!LB;ad`Yu^@^wli(zK*eXvxXH9WnN$^kjGbZTp!#V1YlO93ukSz2JQ>=4 zv$2*O_^WwY&A1Y*jQ^sKkaj!jxKMP(vddBHd(Y#KNSuB-MLqn5sSxm2SpJN`u>N_c z0D`EEbzEct-mC*)nE3qPodNJq;;jZd?ulq(oC>aIMgo_FpW`-F0ka)Q`F0hb%AEm8 zMsO9&;VcNVlA>8tT87b|SUS@Qimr{K?`7~a29T_u>IPLoVP66ORSQ7BRv8Loeh>_2 z?)-zfG=TY?AYXVAwfhw)EW{pRYWq7s2c8KiY*$k>qB3eEc495ojR1l=B9Uq5^tD-m(jOKH^{pWN zaT!lxrTm7gf87knfua$2f1k_#qWpHnj?FiuO~IK`x<2l2iJdXm(Ywhb*86ouCC-dn z6~_&4sTJ){4-YkoM`lO-H9lf955U>6qS2~?^i}~a8q5|xKi#9D9_w^LWn7K7HQG3^ zgSXFjy{lYE=I8Q3zMi-!Ck{tqfINU4K-AW@qTrB1U%=>b*fjUZG-`bB?q|Xwr>H$2 z_lKPJ5B>Nb`VI)B+=b)IMP8Fn1?fh(#D>2I1|1#rwUezk+9Vo0uVq|{ExZ4`n)iqeQnG2mEF#R)osiMx~r_nsV=ltG<>f}8F?^Z^EWa&*_-t_c)gD- zL@;5CCqDt>?p)wDhdf<$qNo=+8FG)Eq;k?u|69`hzU39@r8Hi{Y|I)F{$*GvTJY80 z^mq-MxcttK_uE3ht0PmY%f{VjVrQ7aDv*{G56NScmP0 zB)u-2RT)@t-bHWn-wat39FT+HzUa4&1L7m~ut}?=#KmwpJ7nPzdQ#yi_LIf3hpc>4L$9-eev;+y$C2=> z!Lxb3NC))mq}=rEW8^EfJdaneP)&e^{yCMCmwB(a7t7K`LLmuJy+U}J3E+LZ`l`b; z5ZP0MjBBW%!WmPVv8|zm94g~qB`x7V4!YMxm7u=qP z&C~KCj%)_P7DYX(#y_eic(PN1yoKY_OvK?}_s!X|32!Pe8KWkmL4~c8&ZyD4)dAVn zcRw7VY+rrEp{Mss_e{Y2J_|=(j3&i{@s#}iF5pX48!NJ#x|1zcG#c*5O^Bf&OZB$^ z0TC*v9Kr%*2oxWBgN29F`1?8|tm((-5K_v|dN>*sWI|;A;a1IPbWYR7l9((7FwgeU z8FwqW?FeRhooYSn6svJ`pnbi-?ko!YgVaPXUyn+QMNc{2%3!V)sxj)hsgTQS#MAz( zv4;5T)nU$$5hX#q-yVDM?Z;|07b%F8Ape=m4XG#WNne0bY?-E5v!NxUfO&}`t5bFm z*f}*Xjf@FWin=UdzY;|FER*L;Ryv2Uh&Rxdaad<9HIvpvVr$_0K>jlQbXrin(O$ds z;%;`nvAS9QgfDUv*=pI`I^lkz)4N0_dC+$-PjUj#_51gFe>`|zld)l>sf!w_B4%L4 zlw@p7DfXu(zH4%K$>ynb;m8kDvd3U-Cn_bESdUT{4w(?%+}l<7&VNoJUg*qSyH;6a z&HeSMkI!+8HUW0R)PgpK_|$igD`GW6Z%fd99sYbhd+;`2@RVMtsfw7 zFK-q?d@Bf#>PI19;tmNw%)|8Kcn$~>%J-W4q5T#9%r7_?90s~uWgi!(0|)xVBN%3h zr|qH-Mxz_nf5vxh)PgR)gW62PvXIAJ*n#$*1Jv!?Zidp(`XD8F)BJ#0evp);Y5oHb z`IU7;^cZ2HbA}GOK2Pr~y{k6u*oV*>HsQ7z>ae;XExK#1?wbHm^s~#O0CuP9gF+MM zD2Mx{)qY{{W|7A71VfLN>VllqO)=o%FZ4AyqPB}uuYS#t)H zR_OJwcDL4hq!`0pn;G!-Z$P$ds`RmU8A_4Seo=i>K;~Py@@J&d7o8;E@*No;KUwceZ`cDXyvspB?AHqod;ofnge35@eq9)FeD9 z>zWl>u?I+~NJDxG=2r!~t&QiZGXPxX-RjbuA|7IOin%?n$uY#krfNUZQW{j47{2;b zEMIAdz5dYlCeVi)>d7sNsD5AFxFQI{+h2*~!wlaCZ9s>gW?3l{{AhB0zkih;8K7Y$ zFj-bWIxXbgSGOk?9*Zmjt(f~g7hH(^7h@^7-x)mI*?~e{RahFRhz09F*g-Oal0nDo zPuCCt8TI=NFDIBdbq$o{d){LwDv)tlrvn&cprZy1L1;K`T%idRfF zb94H?Lv8zuM0-+J(TNddX_}NNRm=}1g1f+HToi9%T-P%d8Z!Q%5(q!uH`mx)5j=ph zqpKTcPF7MB{F|P0%)IL&yAK94uQ!d->pJ3fAgV|(cmcgjlwRzfD#z~gM9LaL8K2(N zZbvPcCZ*V7 zuBtx<(Sn5iF-6_`DXsAlFU3GU2fdfqI7G#I7ilZ`uFvsv&s4<`m>;;5)ejcTmbhgU zv56Ui2|MLG5)|D>wbc;qIaR5F`ljOSa3BGa?KRF;uGe<)<@2C})k63>NjX#Sa-T>2 zz{8AulWv&69`$YKb8Y%aLKR8c6ptR(uXZW>G3@dg%oeq)af8H% zhNG^$d9*eU?pBj;g&FwMO1&I6Yv3omESvTVHj>bWOG;h7m^?Sko>4}ai`gy(;S;V% z-_zI=R9LtZ*(>pROb}IcMc88o2ZoS-I`xM4pH5*gF`DFclByVRqX6_w`3d@-cdX!3 z!MGc=rx&m1os%QBb!9ZrZrW`q?t?Y#8FkC($$j?7wEy;oYG$}_)1U9lAg#nXT* z)Dv=84!fdh4}C8R>=6x|1zHAe!|wO2Ot1QErCLR{YmP!vSI)~?exmy~$h66H?{fqG zPM~3c5v!c)Oe>AaYH?tHR`R%fzaTTD>X=2V*TntiKtABai0oi|yH@^bVc>Xp-!G!2 zZ7QCy={;M`wt2|?hXNOlsu=2ggZE7~)G>`)tPMW|CHdaurZ8A&!5$)0O&}VX@Al~& z=1mBe!hdEsjtS1O)aWaG$@!g2&gZIwbTgL$8sdhcJf}26PVq3KpA7!g-TeB6bu zgupKNxE|FEbeSC@ideiVJqYFJ%zB&Wi>pucge?g&z@ z*;G$mBdB7Oek8;c1&EvIzn;!Nq5d5I@SXudRD>ot408!RvVkBuIN_G=fGqc5R=!SA zkYMudW>0!F0n90UYEEh<<$k8ZTZ~SuCYV?Ox?;?O2)u-6g_&{SSo$*{fN={9`4tep zDN9XU6-~G3HYtS8*#6g`)$YS>KuiwhW47;>lHAFiMF*lRzazo-aGv*2!@u#0`65;te90iM2`HK$ug7Vuj&t!QAHc}+IzqN^*3CjWyL!0Vl zAAxPr2Mrf}P@a&;PVEU`wGa|9z(g2(Z~GF}qp=c_N)^0J`2?8HUs>`PPL}&KP1BYN z6e7E!sX`FU%1=_4Mo0Z4Gu9(Z{YPfjnV8-vGVQSpJ|@xv)mXQ5O(eX(onu;A*yKcp zk(V#hh{ns9(Mfg!5|jhfqGGSUfP^sYjXZ#X^hq@Z9s@$hK=X4|CA0*E{LKxSTP`u^ zM)t)G*(mb6Yzz3Z3t6QaQ33>+6j>d41=ar;$W7y~{u^FJmGhzGO996!yv}_kPZZ!CW+>n410@ zU}{5(vrv7YMXN4U`S|%l4GVirhoeSpXpCinS>f+4#eTAWlVm7pOr-bmTv5V^-amW| z>RO%;RY`rL{)o7NOzXg2b4N z6;G)A|*y(bV7I7@YIJO1jk z(3E#X&~DFHX#fV7RJ*SJr~Lblz%aJDYo)&KH==s%` ziWYd2=*y&(_{{gpi`cZ8pc3*jwQ-4Agma z_;mOa*MG8d-6a;!6k5ynNBP-#KZ1!ShXg#(Uv#A|&QT$4<)f ziW4Z=zbzmh4jprd(p*ZZke3AESRe`E<#SwTPmGr~e(T0#`=|rVkWFfFODaC8ATAIN zIDjC$1fRI!TrK^v3l6ChBdFOU_y$~zMj39y{J&4sNOg$x6BJrS84yg}Hz5e%XuWjZYUGD#+3NpwA8E=3oCL1v5sWvU;IB@L_AeuFN@M85c}e@i_`836KK| zBitM^<05SEZjS}m1br1WKMA*>ZSu&-{f5S>#bB08O*#25rXEc(yk8?x&SN^Em4r{{ zpt04GR*0>KtQzj2-YY0R%TI6asXo~X14g=Lo~+isk?T+|ijs!j8O5!dp+qOvcjozL zC&X&J2XP;U~Ap<}$6;@oTjH-lZefO~LGs^wQAbOK+>2Q|Lf%Ns-XN1Ff$(*WKthX^!X3SH%p>f+pv^dW)#I>RYJ z)la`iCglh7d?AkL)OjKk*Iu^>?$BJDZZHQh_RV$%HLnNk7@-s)y!J{(y5GTodjeHL z%f~X(FJ1xs11lW3<$wGp`aSpZAvJWw4y$XpC5*!3By&t@v}Zn z5H-hjKd>iygLo}7DYGeGZw^JaLx_GhWqUs)ZpPmirtK1xTM@3BfzDJP`Cf#qh<)e1 zB4Uc8BVxRaH`8#JnzXRfH$t*3;{1G0e{nc&5NPeHfQAI>GsrMc@(B{MXx#aUH6uYh zh&TQ^L`(8gOY)k(Up;X4*D!H1b!d9k#G59Vq!< zp1MdQWs4`ecE8M+sRJqkrpnZa=qe)Nb3R|%qq}p)%!|a~iGMmsqtF?%rgSN@+`pk(n>%TfcAxtEMiU334eTQA~_Xe|Ifx8Ny6m%a70y|NV z!=k9+nE{?d)rn#v8G$yNIr&q1ru$HKha6*l7zL^5u?!izQzAtTOAw%WMgd=I6M1oT zyx4(nDN22xuz+woCh3F{#I%Zwl2bpeZABeqifIm^f&kkcT(UEm^|=C*BsbJ&%#T$A z=~xwf8u*5HUoi~znOG~!zJC%Cxh`w(MIt=@h?N&&64oCX>co1>24zEt0 zFE3aP(TobhNh?>KL*KdAXZB0k&dgwz>UZ2%u|j0}#w6=k<^ja}pulJVI_|e?k~=gq zDo?uQewEqa!e3|f2vlS!-j{MR*3f~_jE3p)tumZO`JXbCJK|#Nh<*+a!u)bJe&)ND z?rnSMybPufVh}Oq$FUC67iXI8ZzpKXycf_ge7_C(c(DVS*y$;z1Th7|!8~*FdQ-*8 zgSJ4ATKUs^vnSNc9p|=Sf@`J%i6wEha>PG%r+DZnV<;ae6X94|4=(yu17OOQ;p9we2O&#Y*&?CY>L@l$-^OmZ>)G})3^q&GMY zXru7ZR8c&c@5$JxM8AuYkO5vy2KPSWJ?t6B>l@O7Z{2Ep$*g+F%g#N@8OyOqZ#&e} zh3+!idtOy}jrCYa5-RK=6@uy-&tYVTAR> z%HNK$^3YU3OU&^ZXe@uzs!3~|jeet)Ka1yt(Sn+f2eF}Uzsx<~O%R6h*umAnW;zNO zumxHt5by{w%}EnONTP#=<|QZ)%;i`K$3m(!QoE3i8#ZF8B7PLUT?T*@>r z{<3Yx-rg|>u3GjemebUxah>p;7T@m6xPjbO(oMcy{HXV!ooc&|F854mS)a0o(VaS_ z-IngADs~XeKM%eI#p8)}nf&q~pyRFI`nard+0x%s#n@Vvzwh~F@j0wO?^BuHP|JOe zgT6qc0bik$^mv2%xU_3q_}fIaR?GW^g$$f!?qwe)%Yq1#{@Md~7HzAF0yFRp1LgOg zbQOW9GpU{uk7=_9ZvG$!1WNdv z9W~tDMu5pPvSF&qG;6g#6Ii=TS#OtqI8*5YRa9r8nq?ZY{-Sp9zomMR_lB9C`+)9K zyxD(2<|UxM@-JSt&%s)t=e8%~4LworF`T!=-(?M3+2XD^iMJ&F)4ESTW4sC05eroa z0TfByS>M^zaDgjM#!h}qt?*PxJL0d6fdIOUKTi>e2i;fqTe}6^ z5KlZO&)S6VDosSQ0?xY~cOC>|S1$k!{(&-@kF9-Sn;~D2Pf64-WQym6mw|6U??p_R z=JHzToY4niHy4!>$n|3dkbLwmF0I$C>{yI!i1f?1UE;rLlfWjUh_GYSY>ci(*z+IC zSZW#mXGN`oa?Za@i1qjj94O4phGAA_B2?%=5GbY?(jXa;Wk0Won%O;%bqcofdm`Ze z%*0Uc^0Cc?;L49we1|04hNXDVSbT|EyhM+6Uu$%tUACja{CA0?;&fZip-<8A!XL85 z*qiq7*2jO1m)?OEOy6rG=KV#~=P%J;cXGDcydj{>d33Ldy~L3RsewfLdB;Ui;YtDX zv=LRD;z~uX`o1iUGee#Cl%6Hj9-}hFe9d&xe| zo&#zsJSZ*HT%R!Q_CpYucRR^^Gr<|I`-}HbPRn=2{X=ras8Xja%!tI+468Q9_PB`#ay#eZLgP&+wUi+l9ieVx{Tg8Kphr&;gPy{(_no*@o z?`Bxyr1cSDUZ*kI99wZBHW@CxbcUDAzC#~(`hh^A?Owd(%^p`^+1F_B9eK#i$|Asv zPU5smiZL8%;!O^@?+Dfr3=3?x*^Ows4Cr)oD%`~;T)ENhx&$iP-tzA|=@&qwdoY@o ztG@`HHmrR;5F=n~m79S>R>G3>V`SFC&8Fl5#Kwk3tQlOl>WW`;Aa?%y&+^RJea>JS zAfO;(V=>uPf8SKce|*f~S$E4KKj3H00qU|nr7Jh2mwfp5G|pyK{8@AA0Cx)*vfaEw zN!1Vo?LRX4Vs8bY<7$7h^detJ!-eWxBVegOtbWLxcF!^z&xQ%OZLfn+?NTQK^ru8R z!+>H8h-gKrZM4u(jq(+E8(V+h$Fa$1cOcI<2;_uIZ3PWKhm|gleF9$ZS9*`Z`uw6m z`8ECJ3m}}9ez_SJSqG><-{illKng8Cl#(G!LW%3D-~Ty8Ku&C1EcnvU=g0iJRYopA zN@6!)bnZQEP|rL8L#U>l12EcWYC_Vb*J>SQUuf&b&gE|I^Wp40aWdwPG~&DD z1lP5op{yB+PYGH{X!diqncy+1{}UsC*_&xk$p81BfIglVNQCXa!ty+ewcf634dh+T zb$e5&88Kr6-U3>&*2(!Hk-5wMBtZ>HbuH4~`cl}@84!7uN*}TFPNkOJ`1*C7a}M!Z zyziCd#qLNRvZ=b^S0q(+Gb-0CuD&JBXLSvR;RV{OlS3$srjGo&;uyx?eY7T9b;lcv zc9&ND$^r`CVL*jDYXK(@HEbO#41@~eU$X@yLGID#eCLgQ1AMrYwfB6et7*y*)V?=S z3^}>0P*0pS?}b|drN?I7PQ0|;>@VqH`H?Gps#cS1A$p1aXKI+g5~P0O?6QLkY(XGb zEgJn?a%*txmxpfGEoFSDi?us}7jj6-aOA5&Jj;Zwr$Wm6^7{p)(iHy`xW9`&`2u(N ze^;u0MJRh@rEIdZ9TW;t zWM>p1dqpyik_aJW@4fdr*7x=PeEo3z0ngj(`Mj>jbv+*UND{{chC@BTjm}O6#Pq$m zVfMn9DTqcyH!3xaFg1J8FgwBU8~3o;^WxWM{5`8)04nDXFtOA2tk~Zpg-^{>wMsqnZ*EWA*mM_ zmz31C{sP6A2Z24960NpV8uSV{_X_x>bvAr7+1{rvb&9L!J>3=lbsH!Q^gUHAd{yPbW3h%!M$CQwuI`>; z?IVyRPUWG=R;R;Kr`_Ph{Oq9TXPdzs40FAg>uz`LZr6G|IA@9It}GE>U>SWJ(X^lv zpR){!F9mH~@=9ZiD!Pt9lU z-yw?vi24fuQjeY)X5ecJUI@eY6}-T)jB8EeL-_}AY)}(76gBoun|$11EXsuSpyzrn zYY|8A@-BwW6_B=>7n1PEJ1{Jg8_#k7EzO20u>liRMz`z1ZQ#KyFYZuK))|Yv-Ip(0 z7+ZHd=ewMDTSZEi|HTwb9I$E|6CPwvef%-@hptur6+6u`c^CRa4%uKXotAD@^G&G# z2lCNR*7b7Af2oYxn(i1rR;=0y9$tW?DTqKMyXhsv*=S#uyfBdfA!hy&BL+ZP7y4R+`|S+L8tl8 z5rM*?()@pAd+Ag7F_V9GcitrH84m6fXozj_hwc9&#vg~D|ulIMrX>o6WN zH-baYQOj#6UZ-h2FM?ba3mBcd7Q>(!zi`F-M6y?{q_n{LHPOb~OG(VNiN);yu6C}g zuaMKEvz%5g42udNcST{`1Y7Z6jC?;x@eSel1e<;len*y(SAj}Eae?BU@|QIH;^e5e zx0B1L2>RAxpQ42a%AwWrj}jjeE8fe91)C~DisJKOVq^WB(j?iCVzu@0UD zZ_%qPivb3A-MyE88y>7$#hz~Lwoxh@!qeRL>A8J`#9x8IAX!+IKPv7&ZRlTPuhpc={ z?PBZL2ZGPv^$^_9i|#B;a#=;G&NBE(7WqUeOb;20Z|gULU{>PAG;pPswvld=4r4Wt-*c{1U^;+M+_wEtjV;Q>QO$> z3Gv?BPqTiVM>NHOD}@gdjQbP@W7;_QMjyQtc~5U>vzqPw*8R^%8qOYNr)ToC;kZYG zl+|#Jbk?^Wq5E9fUMdNHxw3hp--Ec|{YYIel~iI_>OQ!zb37`LWHU^4G8Oyt77oH5 zUzPK(y`D{CuBi3(PlaR(IceH|PHk&#*L)kNEn+WyEU~^`*TtseOoWp^2rD5R@WYAx z`0@Lh{R%-{X-#f2-`74sY&3Sg_Ba^3{ZrEhmKfO z#UMW07;0^OF7jk8moobnNM&QxOJIEeseaKT$tanN#1emU@>~R*_D=*5uBP{1w6KK( z;AVVCbY;bf8RV~WPq(g*0qg78XB^>8`9mA)eD9UF9fn(JuCsM6EWfo=<%gAYGXH00 z<_^7h3BxJGg3u31F6-vJm8Hl#z97@KjDw|8n{4Phl<4S+7CQ%$enTOs>xRpF6%ozUR@p%tkm99KB%*T2UdGTk>3<)`XdixqCYz z=CU&|3gCB}M>3V~(^es78oYMk-`xjqEnT9!xk- z;`p-^S$|kLj2BW?=@R;us-je>WYLO#pwexerfll80R5m-Re_EV?nY_d|$-dpT1-c>rN1d~rRE@d%T zE-N3Qi9Hk(a2fq@!wiZd|Msu)0F9P@IPPF_6j?^ymIaM(W3PZ*C116IJ+vcm_2$Z! zWmgLPazV3240|IE?bvTH<$fsN_*f2B~c^EciMm#`) zwwcdyU^Q~@VtI}rXE}i3y~(8)85(k>K}O6xhuk_xBu%cxkBe8N3d9u96LPHLfe%2o zh(R-N%7A0RA=H-2szb!K(G`nElj&+0G5feEg&rX}>K;taW@x^f7wQ$Y6##pEF`;{5 zTXLGY>6I3JdNnp=+n04-*}526!!8@!F_lk~-pKP{>O*PzHo3k}DXnA~qK@S55RJ%$ zaOIz}+-XIa$*?tD;f3p*=?8F?e1W3<% zEXii6BnOg_GkidJA$+-vRqCz4b@iD(XMc{rWm<>KSfRNFC$$e@Z_K|jLh8~7p!7f$cKnocLAktT=f6Jap|pxwOZmIJVhe&Y{ocN zN<;k8mz931XMa8aGe~D!c$2KbmX23!uMe$NVz(GcA-l|YeuK@YQ_eBRVO7h)jyo=RgKM4B zs%L56JldnAd?aoAIo&%&*FHsh3<<7;*Ui$UVGs36zB}2Kf4FOL^|7Y-WQu37ANlH! z5d$`=E&fwxEwwY?w@CMNt-R0dp9b$4zl689DXaRR67`%!2@muAKOGOg||v zDgYLY^?KNAZ@Sc7`6`uDL696n0O{p1nZcapOSy*=GGGZ$r-o#CPew{#^!utGym=Q} z^|_!Y%6Boeu~)yD#ab=i^Fv_cGF33;KOyd-oI>Gvg}GPhtNUixuY8T6ZSWd65MTpf zfKkU>_CFk-BK~3X&hv_6fbUhgu5U5-!C~_~Dh5ds_D6XXOq8I+9GrM$5gsZ}rjS88 z$<)dT@L!G*@4f`kqsIM$yVjQBuTK8~sQ(rfk>FOoQmfQ)F8f|sURVrpUz(^iK%8hD zPJtQBjbqe=%~Ombb6-#rv0|cpVD#g(vsBhj%N7lwsX4u*4k0MRrmEdKw8^OZ9&OJ- zKv-TY*YjLAE{QSl2E$j-N`IF^<_1e`DtMH?u#k`eK4_;O3Dgtt0y&Yl0T)7S&~X># zY%JyY&r3dXmZN{7k&SjOWTlj{jAPr`e%+G3I3Bll9shHm3zX&iUUtQt&-mEDMZq%*m3OuQ{yJ zXjApr^MP+|WswPGz7sF6`bF0U!$9ARIexf>I(5okCh(wuv0BJPhq0yrr-P$UY>3#X zfYoR+EKKny2UzSJRl~7x&as67C=-j{2$xM*cu)~arCt_p0Xdc_IsuciIdCU`ulZoR zPEa2T$Wc+~h!7JGDBN~cy zH$$p2qHmAIy0SlAI~_@hC(tT`p_v-Z-lS6n9f}0emfi_xzl#u~kjoyxljFLwhSV1~ zS{IiGu^=Nhg9@{ZO28=5gm=DaAca}(Z~ett+HD$jA8YSKC3HMbkGDtK(2e_r&$!Ue zBzRCweYux!M?GeSA{wy#759LDx)S6m5beR}2Yw_*+_IQHO>Y<3NEV?VNP7E^_7YXs z4hBOSO}WU##}=>4*zn~0OIpeFy+I%RNssdK=*ntBWmRisS8JuKKP>fUGnCmeX~8-y z7SzS5@8@cs5x7;Hkxe}84fMG*)*NoESf>@&&+;?quOwiPEA4x5CsMxi@_Up?BBt24 zB44lqax(jNWz#ACv?TB9MdQ*Tp1%JQ!ebD=UudP~bERiGX0Q{%r}$G(`pKZxi-e!P z2UMSRR>5~w5v~h6roU#`rQH=Pg}*BGk1}uj6c#onz#=?^*16)2|4t;gyPXTIgr7cy zV8JJ_^D=r$NDS`Sj_ZGa6*;(=z||Z2_NvMxL>b*1dPNIST+2}~z+CqO7ng*Z?bho# z&nplh{9Dw6d+Z0+Dn?|QL75=nQH0ip{Z#eNUl1&w=Y|kdCLGd#IMaWa{m4z2qU8}|z>!Zdxc#GcfeV<% zr7tRNh?|psiDC2WY+6ZIuuqk7e&;{JyVauoPr+=^D|!BI@Xyku#OiNJyAP_@Wpahw z%mth*)g=JNP6qKoR#me`9>>*W?Y{j(?YB`+O4_3xk{*y{pVHppbvF6BF5v;t0>hZm z2Blxjl5RYb13yO~!#=RbST8~2Z{ejBFaQmtW=+)+tp0Mb>M*MCx=oj>|G`k3L0Cub zpm?0eeT*e>-9)-q7pwfE{}}@nyRj(js9FyuGceVKj8by%hXZGn0GE5(i(?obVb}Uc4}=L}yT8Fb?C4q_ zwlZL0IV`*Gc#Vtqu&WlxDX0K1xIix;c-M=*|87)A{51*WwJcJgr~`8Y}Li{tlC$P;UNPv_)4XQK}odz$ag|8W0%xw4jqS|*h-zkG31)Z;g# zy)8V%Zwx)UTn(3Y$++u>?)PsTJW1JScK=?UxIX`=`_)df zz^qYi@w}$^<9(%nT?_Xw`te^=Q?<XCCFAd!9`?s9M-wIh?pF=kXDRHf&?mA|;F2fs;s38YI3L z_FF-N)m!sSe%Mk}LvoJ#%3)Xf5Jjq4{=*#(oV8GR2noKqis%yL35I&jPPcq z<dr9xvwlfPI6V6U=_? zm)uH(6@+==be*E#cLE@iRhli$TOQ*zs^%XfBNnTh;7!fy#R)|@hQ*2H=D4k@uc$FM z%-)UnL`0H&#ayt3Jt7*@FmQRm=7N8e=e6lC@`;Wac~;N(VRR63 zw-`zZ@mmRFI7-06t^$cyg^;_fL>Ck%n5)(-pg{VMKQ{6hj#r^S_2)dEh>3eR=jl|E zuja9Q))}13u4dC353F71st|hH({05;w%Z`9>~Wypvc;8KqvSCIHtlrKz!-FLfbSBbc=GQC_u6ww%b|FpHGk3=(#f+&tN@#>lZ7$})21d`E{p-dpH=RcK4=f&zx};Qz>?gG@{k zd}?p6<|d`dFcQQNL2|vTPbQu)%hGQWDBP?%S%Anf%s<3jR~ozwhZ){i6lu#Agt}JR z=Ozbi8w0u5MVaIM1=JWRFBrrxeOHHN@9*EM*%;nqrY$gy%E4gupW*Siyak6KH1`HL z{3gw-QQpgPH#{tC%<#E$hlVWZIjr&O&KY3rE--jV zFeTl4+_fYwK&TQ_tcf$b83WV}>ze+oR+uMgKh*^rQtAX!r%PSfvx8q7fh$_&|reHY_U2@-=L{5zA|8bme1; zB-7OI%_Dzq*wX+8oC_zK{?0`F4vO>PFV8IBw(J@dGCCfMgQ*;`kB``o^Z>aQ%Ua-q04k^vRu%1CMN2@%D0E&};EK$Di{47Ka zI!~kvT9&uM`#f*Rd+CHBjwlZ0K26Hd$hdYf=9}eKDjrl$+d*d1p?GC1I409W?$Y9^ ztQmp!>|41CaImJ!Szu?vCZqXqVCWM%?qm93-V_`sTdfH0tyV*LXSuq`f+4HFXk2Z{ z^$QjDqqBYzv8*G`kRsYY`97d{7RKO#XpS5<1-|l z;zZ~0XOCss2^1OdD^0uM8rxhCdIfR~{(VXNq)wMZk)*K4pH@vjDJR4bE0{wy+^b^F zZPE*M*c`9aM4SA*d?>aHqFjsyzL-99D|_N!Glvhn#5Gn26&!3EJN<&LV;gK`KW^XB zQ;6T~WcTLxx9R>C-JUa|m1@1}9{iPvS`V~fMEEJHs}$y)-poF|(dSP`)!Re@*6+G1 zMgBMLHPCNQ?{pWZEgS1<827yRy_faI%8HwOb-8-Oe(cQ5u;#{aP363kIZ=Z$o_Id` zy%O}$tOWN4?M?OfG5sM00((e7p7pZDcX?hXHb#l$59*LY8uuk4R0S)vcFj!Ws$toG zO$SlT`!A!9AA0eT7JDtOgJ++azw!<)0n0eo*21a;1}8Q`TxZf34N=xyL&hSMup3pa z>a23S=egVSV>D)oq-_X?sdr`=t9l%DlZB!8~dt1P{nz_Z#>pf>lg1C zq%ejq?a@0unf<~5JUu=yb<_B+JTsB?zvGIv^49#=r6|dD!hge4r$5n#woc%YjXvnPHqxnG#;<3EtEGmqH$>%9&e ze%c0WfB2zH*foiLBXX+x)24p{23WkZyrhwEWm9}iCuu{xN_3Qsuw@DlmOZAP<^S)} zb7h{q5{d9C`#jvxC(<`(Jki>P?;k8Q=v5+gQ$$C(ZTlBo)rp(7~{x zf@bg0eDp^?vhf&I^XZ4AXVbw~mB}#dw!QLuZ9z1a%-B#D@(~U$%=~YwbT_^p{#M0fB`}z$=%mI!G4Z|!4g=xDI%M2(YZOo_5LJVx&dW<@{}hXw~IGNvU0 zCaOyVIP?`=7}0^ebKxQQk2qzFhq_MyGKT1oYExfC6_FqF!A|F2Eu0pf8mHtmK@x6n zJ|s;91@L$4Xw2fh15D_|YHO^_C?=ouaS91KSaL{Z4JtRw-jd+QI6OM?igOmxlGu3w z=ES>7Mx_UW4_d*qE8@oa5gl2^`xo3wY6e$qXA6{eN(Ba;tCbKNd)Flv(+nf2=vD>o z`sDI}Y-0u1tZN21h5*M-TWlU<)LR3$aZnaQ@G1e{lB3Jl?(sYB7d=_5WOP{dcg(qq z@co_#z0Xy9;!a?bfpR2XC4v0sVGScs9wXdkg$DluF6t4xf`?JYYOi0pvX!C69D)9M3R01T9qc(&!Ci+U!sK%|)pJE!$nu#}&u6Z{>X<%JuiN6@ zNz9_%k4brEGrea)ZrAd5%{zS^k6eNUA@|dRePJ=12{j54-&rwGy#zBhK3UauWc&W9 za_gBE8Rvca$4v=5sr4u_n=c(R(p{|bv=TN+q1~MBt4%iW6r4`*jP|~&s#ue5j zumRJs`Cq1TFVTNSLUY4h=DHJmu5u5R;QvDZK~{~{cg}xKAH8-5d27AlzwMqXLwhU2 z$B{M?Koj9QPwtF46i*B_9Z2wiHw(5n!W~~eTmKGEn}FC5ViA~34yl1QN|tS0qlqwC zbRa>#&`jdqR6^}>P`SgDi22oBEucBF0Hz5DoR7TBhIXT$V4o-v zOrujO$OR8b^L5jk4S(Nwqk#*hC_;JQ?y6}bDiXb{Xlbdi!NTSIKh~S;bH=hlr=&jF z`nEH+!UI!+AHfg_6U>fK{|1NiA+}aWWd@|TX^B+A}c|7_v zvGFTV#2Q3;6z2)@b#{*R8s3~(Zz9830c4f$Pxl3fQN<@YBD|yJ$ZgvtEqc6=@ zGMeI}8Wg}2{@JsiaGE~MW8!Kqv4^h{Xj{ANM}t*AdauQtf&v4_?F+?oFi9t4vp_@I zGiz(RUVvm6Q-=Sg1w5edd36=`4F;B)4jPja-(SM);r;nRW%ZZ~%)zb%TQH861$SiO zC(SY?yc)^Y#IpGH&Y(*OZ(dFU@@&we192EZN&P0A^H-#^k`DnrE! z!dW{=HG~S##gZiwvrtlDeSamwpF7Fu61pRepOzb_i*I)}<;I~&*ae1jQrqiy=^gqp zs^)TU0f|WOAjxHgA=A-VG5sJv+C#UVfPK5r>(_7F`kStbBDwBQm|nFJg$!%j=<0bW zq0L@IIOLf{j_-@C#@Cv^RrrM8%h)(nC9^KHifvwnH=3H2JEpQ*h2e_q>5 zDoPEJF|S*LtW$pb8c*R*%j%!K{zg?8>_9?xZJ!QK4B;6Af9_OO#r&pX0GQ65(q2~t z5NKmoQjA-5OFy(lyG3X3++=@U9{grl*t6D`ID<@8p+$QlNrbAE?sClWGKfH z<|w>9n>6(C2P4^28Hnj44k*^JfzX0byjagwVHUHX;tXYIgp$7hJ34`F;Wn2i;t+?> zeGZQR{=Elu3$dyO{jYVfLh^+3BuE?c1~|7eIwCIzQ7OW$#8s|6{R zd~zZCbB-$pK|yuF72;->@~uPm4!GTxxD>_bH%YR3LVVkl?KuxRv-tXAn1hEu;_ivq zYLXsG)G-FR826P~y^?ni3LXv2t#Uqu`k=A-2?T0%o%m0w5D#YAv~);6i`TJp~U zTS^peJ;o*Y?Aj9Q5AWr|Ws%OdL*zJs?^GvWDD&8>aBSEY$XRKKEg#Uo`B}4#wp0D~ zY-}^b#v>?j0uRA!T0Gudr6}P+>!K9uRk)aQ53Z&#bUvl5yXkeycX8 zoUDvwyy?sEZowYIqRcjG&L9624kEaUa*gH$_wzSe@XVqMIz=c|&8tW<83p{`D~xx& z>_>i|r$Q-bZbU@&w1-dsun)1Zh1X&YJD;-D4<%e0D*q1JXmiMW5rY41l1V{ExOAeT zvca$6#l*|ut7Sfo35H#!m|y%>4gKM-ehoxBn7b5G z9ger2!`5W1_I%0ul&(^igL18AvPC+c=_$w{o0CWGX~?J=w#1c%A{A$eSEK2?p*UiS z?b~7G#+!GT<4XPiXqTrX3C;hGK3vkP-q7&UO<;2>nBx(+KFve{Z<%S0NUR7Q%#ex4 zk5vMNSP9<@EhH?V_uM^xTi$hLMpVkqFQ3RQCu1r74lR&2CE>EvxYwan5LFdQV`xki zrnQNv$pg6>ivSmPRe_3JpVv>*EQ?T9>vQ3JEZbRN#>lFYZ{Gbcf8}PaSn^|bSxZ>< z>CK>iwXz6+X_kYZ#&*s@7wd_0v3zr%y5QvlaB#x_w=vl$Vp+hx2Vsd#+5oh4T-U*A zZ;5?m=b2;|wMD^Qsre(MUQ%)y^UxdCwULR1rAX z#%NUQKCl)4^7eNA8`?fjaxxy4fI7vKyB><^;gzLVI%g`k>OLBk4f47FF}BK%xO~AI zeyA~B)F4}2!T3sm{ngE&C*@%zlLtzuS0p)FcOD$LSasB&xC@OQylPg|EOp%wcuM*lQG|#fQ+{7An04AmAPbX-)s$ z5CJW7&%V+w!)F7qGv05pfd4$BIK|!pj0N>}*VTsqt$u@x*VLu=)bQ8CH!*K^K8?9- zBnOmEJmmsY&Cr-Bk#NFCGCpY@eYcfy3XZtKs3xv842P`Vo$%?x+S^TLZ~fKMiJ`*e z+*8w8=QlS_`@dW$eu`PW49M7=#+J5FRzvhuj!#x{z<48lv9}MdiN*U(;_c#vWY7;n zotR3VF6Ired*=|Qo%`L0;7&?EN_v;-pe5A%SfW)_lAM`&)wfBGoZ^X8)3ljn)`&E% zwE|=*k~DGfLR+27EokIlkH;ECka;_~dnfv&?XPg8;eCI1I`Pq<<=(61^d>PMl!@Ag zYe#X{WYpdw&Bw;uS~{OHMjk&HHDtMhRUT`wG5&cPnC{^^YI^x$@q*ODdI0|^KY--{ zLfgZO^!kmbhSiQhUc6l?T$~vC+@1{nq`#^mW0CFac8mVZ3sThZqcc7jb~b3Pj3rG2 z8(&C=0#vS3scp)y&Xl17jzA1R;?t(Os!>Uf#Q@KYi0SQjYQ60y%@pG|TJ>3Y%pm z5WvKUNe@=~(2N?atFG#|@UqKn_b^Bamip=}+>+0ZCt|}mtr17^O&@rK{P{5(l8|@D zXZXk7J0U+d1_5cYY*R5f^0BOpalfc-X~2UJ-{sDwwdbGdGf&9N`T~em>9W#+NzgIg z{!cNXg1KLcRDGmHG|Rv4`g_lx-*a2=UrGimof%qvOlY91?QeUT%x*q? z@R7uuX@;#~mt$u$Gk@H3mYF;=tzY`R;U&KC?aH1}MP(wmiP*)y^@hG+rI4KCj&N!H zJyvP-gE2gz9)|gG-e>;7i>T_#Izx2kGpm zpYquS?#p)%kWZhLf(0{5b^j}f!zu~!1q!nSqPPgK_?`VE8BjEMs+B+r(6%1{g>4xg zOk|u=_a+Ee7ZFkt)bY|k=+tSUdXuu z_^r9wGc`XmX(>qR`-L_w%9E*LN#kHX-_?vZdge%y2v$1WKzs0Lq5|n9Z1rI9zTry+ zYPVGJt8DQvNf|&e7lRy$rYbhTQkWky8R;^IEz<$`A)yt7&OA8!6s+p1bt3rQx5NOP z;Fi&8%2xCubqo<0Ei7Q21957XpeVcCkj4khX0Jdjl+%6@ud=g|yPy?c<&5qeOkSAv zr8#l@2H%Wl&>QoAfT!_$fklXkoVg>yz?Fe+j7C4(<qQ714B_J%j&X4L=?}AN$GQP{t&b0dlJytggN22z7xF; z`a{Ns4V^oyHywCGbX?!`A}ueVPi(MXzF)95sKm$6^lQtVz)l@uvcSuulBJtV) zz^@e3JPeA2-UYf|rCfKUM%ncNA)2T(8%mq^OJh+Akrx80`^rcKOzShBLOs&=ghYoV z-nm)8L=ovaH_UVb*93pegG-f!WKjZhF+mo=NC+5*fC{G*2UG#_z*QD%<=URiHNsbj zQk$dudW0eL0iQE}t7Cm!`m0_UYxVG81#u8^&rq=u3PhU|Mri4e?*Y9uMp?6nfMb)3 z`i20qhY$C8%c#Zk&`RNn=o3IEaKpY^;@#e7@wxT!sZ@!(&kDxnRIzEVaYNfN-!(G5 z0`np;kw<4Cnoy;Hgh&$n$dhA@lsH$k=FY3h5%JL7i^Js);etGUeum9BiGuAX%f+5H z?=LVvy=U2|<<~ofLD(e=OGL4b^pR|fpTJs=OA*RoN}T<|2cZiv8oKu_$x|)aGO%W45g{O*OcB-%5j9d;0M))R z*>}&J;c!g5NegLr81nMKZkiHJd1sUqIaDGkZ%P|LkN+i99zvT5<%D7QaJ?KjPKo>c zkgR_gH636>SCb#oG7aHk$?H==;p7jwmR+HK+_-8Ki7hKzs&9+2Yc(Dsd4yd-VM}hu zBTzOWR+J)`s29x;6IDd+m;GIad>i@CO{{z^`oSZ)+47;ZKfHjw_`LJ zD(By4qw-?D(4M$dvqcc*ZI(*MY?l4(bDYN>FTdWt!}?Ny{ytmUFv&pQ#@<8J7FzD> zRzE6KYX7u*G(*IDVX-4(Wun^}g>)UiCM^kV3y6>tr|`KB*Umo=FdC91{k70prxyof zmmxZq(6Ni}bITGPdi`Jd2vtpO9kr5Wu{sXc`@!JL!K5zu%bG5WEmBf!n4Dg+m5}CD zMklGw)-Szop?ikbnTlR^#H)o{LOes}AfGn%lLRi1lQYRU$xu6n+x{0O65HM{BYvV;M8$!p-DC>`RL@!}DIg?cQ;{29M1Z63kUBcm&Pb7yhHIrccYG(#(U)i@RXjtM4-%AHMjust5O( zA*Ot$s}W-ZPkFGyM6x-6AIOnK-G-PUZPczG!B78kAacXPWn#XnE1 zdE0(9RjtS(Q7Qft%|eu&-Af4-4+7J*z24rRk>B{Eo+VTKG)z!u31Uo(M2p(Uie(3T zvG6NcFMF!pu);qKeTR7}1~e3ZJtHw~``B{n{ba)xzxFcglT`ChxD{+6Tq*1?npp*PCk+<`nR2fHd|M3%OZ4OXSnKB2ei**9{2u?F-a z0U}Z;{E2)dl3XiDVE70N{C@7P95!Uxz}1@OM~PLLkp(Mu`Zxz5ccu!tTfjJr*2KPG z5q@+BqPofl_Nz_vUxQVmOt51vtnVp_#lP|EPu}2t9r|!;5fhM+DIYJ5icu5OJsN)M>&H8At4zF%Gm40sHFb(tl&gyi*`m&rR0F&Xbmp)xqeOTVT zMJBjO^7|ufFw!fip?$_kCM|GZ?N71DY?r2u2HFEq5N`lBdR;2pIbM0E>9QaVY{PNB9$e0S~S)SiZ}{{0Ryw z##5Rjrr-7US7`Zit=uvNx8CP;9%fnJA-j(vM}fiknm8v)FrjL0luMSp;~eJDPeHk0niIIf(?9hAk)JKA5e7vfiX5r_G14%|<(uO0`4G@;5JBVwUt;q@G1e0anWuJPpv<2AEh%n<{EbDu5Ade<@|K zMkCdac6UxH$%4kzQvoOL&qE&(ba9YBgXc{$0nPES?+K;_ngY>T-YAzp4bNj>%G9&q zF5oQOLuJcWiNFkbzsk!%MilqiO%wXdc!zj}Mj4;37Xz|N;jSjRY3+LRm7 znhaSAYiLTC{q2%DU)LjH>&$04x!{1=*Px(mr{+&fmrJOFyMN8bF8@JseNcwtmeYkz zDFM%Phml@X>cII-yl+xa=CplI_Vgg8Fb9SY=Jjz{@>pK$g3&viNYq4PL5Z$G*dX-f zYwpjjAh0d8x+vhUp;X2gCX{|7B=n%9w1evA)qC2hm%fn$byO!D3deMrkI_2hGjJVCBQH#*N+xSeG_c#CLz??LcWJE$ji z5Cebqq(h!*lLI<>0Jv{jbT~>!&|uT<-(&vOiAguN2yS{Z8SYRZ# zZsIO?YdD)s%Xum-&{xGhQ+_Ri^X%17|7|g=ROSgoC#g$ncdesmd0~|oB}wd^NjoJy zQ_TB8@kT;YwEd@iGr=*L>?DMe%V=eLgb=8<@o2vSh)}-_Hmuc$NPkdsvvApcu3(QX zVtWCv7H?7TxS9$lVP_ggo2}2NCWBsG-ObyqDrw+D9e$jZeXIF!z!c49bRc>;lwV*g zTDa%tJY}f5qzRSwcnnu&4Jftx5&pQEDtU`q33leZ!U8TiR5W5dKvX0!TP<@ z2Y?Jz)09bm4xscEM%eG<#HbmH%ffuB|cqQrY6Po5o2#Cp(iPJ#1_nPB?6Aaeq z%`+3V{{2>ANLGFL)JPKSN(D|ijG^C*2(cssbEiPHphpcI!TP%U*Oa8_A-|3?;r)Kv zdmaY)%4Y!nA=TV%R3;Z2q}1XEEpK>IxEKVz#O`KlVurZXl|lJ+4Beqz30Ib)#J(?5 z8$lsB66bLHN8fct+F!AE2QN4`KQlUSXDiflyg;Tw-pzRxEji~F7`^v1vYq#|Ob?`y zYH7?=9H{3(vWjvY>d~j={#iv%pN#srN;kSPxHF8|s3_%xE&srlDyG?7Ak5iK5ZoB{ zNt`TMSXgwbLlWFt;mA`@X(5*4pQRphuWljN%$(INP{2LCOIqS3Ur^t@2#O%x z*BE@NmA`?X?d^&=+ERpZh$br{JHordxuUgKP9uIU%Ug)FPOnbm+))hklL3L{rc9RM zmXaUNC&NHJp{MQBC$E>`xl1#;0OYb&1>j?}$>YVbcLCN7RB`>+8c0gly?r7K@&xYw zUFsVrMZZevNxwXJ)lh4CJ}?i0N|Nse?ITOAqjJ2oK%WSeWf{fR)WAS)kjp z?FQA#p&Kor|fd>(4A*z)tnMzC)+ByT>5>K z#h{-y*;o6$A8P}JIP6j?x!A{@MMu4T>H*JG5}$8zk7c+_0_m`jt?ZA{af-v})Pcjc zrJwG4cdO2Kb#;7e-IBYe zYmr>&vGBgM82s9Gs6I{%JF@n_S_$dhX?s3|ADc`Wn_M3I?p<@*&>Fy7;wk%Ook#F` zNhO`kXJ4<^*V%R8ONCexfkQ{tu0iU_xP@b0wf0kT@q`^T`u*62eBKrEv7XP8iot@7 z?t$=!+<@BCza>2#D~;=ISz?EZJi34;%IvSfwc$RX&&q|lN1un@zoT&-3>6S1fZ+biO) z-&wH;xd*%(mxhjc=lhD5dEWf!IXWr*+!gDh)LpbUgqs$7Y9ovR7_eJEKQbNU4(+O@ zhy%z)<`WNJA9{IEleGU&srf)d1zOI;P=wRTUbv0EF`9S@C|2=B=sTj6?H$QQE#ETziMFpV z>vIPuG?kMW<-}F@(s)_~WyU3?yY%C*)|PcfLq(r3MhhZ`(O%|LeYg`5Sk_-(tsk+7WyG(3y{4 zW3~S6UPRmSfzPu;a!zPM-qyut7+sOA>DuzB(-`S1?z8k638c!}hc&;zZ(xuFi3G^O z(uEy7U=NA?6^5|JRB>T=Ay-BkKpu4YE%56U6dQH|LEwC=iCE+|Wk??T0-IVD;%|X2 z#4p;LL=;G%{nZ!DEy{+k znp(K3YyzK&J5&}1J!pD)SBED>%t&U|)u-3R;oIJf-p=H>GWgrZc-)g`2@13Nk7%B% zh+J534JnZ4{9y7;H^$##Z(V7h*POZ8o)|Pc_!Wrxeoq2V`qX`MTp<-@C;VUN7bVEo z|LRjUo-pNS6aVLB7?$$Oj*;>g3spbk+zW{qd*xpV!nJ1J4iAbggxl;678-wkA^#o4 zuboVbL;X29QSVW*BF@|Ky>=v*Dlh!IvAj6;vnh^VVF{ZqwX5Zou+r=B$?~bgl1E7T zP+?>-rWFoDjC1q>%mL@#DWGV;oj4>*Ew?Hy?Cd3YU=aBA580Xq9IB#W_d$vVJ02kW z_JbEFx9CGgV@WL^ocj~LkdF&gRG-)-feZd#QnI4h2A#j@a%p9yIR4JG02%Kj+<6K?+ znnEe6L0i^S^`&<+rbxYGAIW|Vd6ma;Kj)5Ui&(Z#Yn$~!Z*98FJKc+^8Um<%uU3HV zw6>PRwdX%%kX|X|^6rxwul=1~5?^om zQ9O-$0Po zCM#|~RoHnzKkI8QDj2B!{%q7>p5*@y0-&rw8Lv%jzJ_NV0PWB;g6o`5_H=VN;~XBr6h-Z0HMu;BmOjYc%RbWn@}ak-qHHV$;1h_KOin zyT6`qPRL;Bo>%M6su~^lt;BAh8fmsFe`XXKd-op`gYZ~<2weMQiqL@DT-21x_3*)q&N^S>%{M0!SPeem{G}US`4Bwo+L4GQm4nM00R$ zB1oBF3y9qmiTb1xMuR|B+E9VK=FbV-+!5aFC%}Hhk!1tq5pTQ&+I~aP0ZZ)SQHPB$DK-a&`^Q#r-{yx-Iwoitbdr#lm8#ST{UQm4Hrm*z0BiNsXg%`3 zeI!je3iJF?tLmz$6;voPFizX!FA;t@7FAU1sM>tTyz!20(|$oA!GFi3U1SOYAqeET zGIEe*iiu*WOy(f#okg4yGYe_e-IovNYy=_bfUV)w#1+x^h%EdqR*+xqc{<;5DM}c# zvRsMfn}cWlcWjh%v$#J+)W6~3ncS?h6SsVEUB0rMNtiu* z-5!IdMg;X;PBdO@`|PAocC6MH(#<`q8}Uk65=T9&Yn9`ZaJ4+qyKGjd`0#wNYQt#+ zAe$_y6r20FEN>5IbNujRK{(OS_Dl-Kz1n3bD`fzKp zBrx_uFaSz%cB#Kj13c*kmOxox`pVsE>7znUSSIS*tOT^xf#b~@o6+U%2We#N=~n&3nxt61Pwuc>3l(&yEf#+J zc0n-npy~u}w{~&wGxMMO-lJ#XIbcxk<+aDRM-=qtEi0>9&$o@-om40*2oaY8o!@k%ui1NmBFaCXPx+ehP95zj+#PPYC@o`YZ>BE*Q>P;CJI2#naoO9W*`?vY6h%+McvETmE;uxHZPS%j2 z2s5lew`OrvBV4Uw9>&u0fwb z8AgqBB6%OXxIVyNsZHICTnXnl^|<+^{bN=9HJMY;XD1-d&S_(4$)cA*TzH{W4U&ey zpw-rZ68M1^vX9OR*hD69fLdL|_u5nd>I*t{!Ywh}O&xhh9bkUZ)1dci+4esdDgc)S zZ(zTxpBub)pJ}s0>)d?;pnIJ&yoI2XR|KGG=4xOh`ny*K7f#~~}30B+czFf};x=3d(cee{rnpV`QT`*4I-#J~Ahk2DxI zxIG?K{npZa&hX0Z*Y{dc+=qsY{j>s0!B%syoN^E9PC2n0>)AP143~_p}p8#0Vk@xmH8Bst4U2ECHrpUBQ1bobDrYaMV zUiSPg+dVZ)uW-bB)E&AH4thrk$Wsqz8EbZO?zD$wZ0;Tmy(`LMn9;?@%&qE)d@sBB zS=T8u^|@!Y$%d#xAhRiWiNJgCI-KWLeVj>9_=-D&r|`(E5Kdou(483y%$}8_ISV-g z8$&oXT&~-+02^X}(8YE~5%@$@mlbx`qqE&{3DS!3XF*H1Et*yDgXUceV-RKF=MdIy zPc|H2<+4VKykZOTk$O8!s1Pbc+S33R>(V9<@B@fuqC3q*DG%VX-@W=t*LPm{SmHRaGh~&>~WGVWJ4^VG%%56eYLK4dJ za5Ia!12%o5L8YYzFE?sw7Vg1-HG3B>9zn#HU}b|x)K71^XZBq2=kX-`*E$~i?jxn? zYZ)rD`|IUjJ(hpA_kSZQKiG(x%0#g??16}p^}gI~zFv6A$8B}X9nHVDa{yzXd2$of zKheQ0tEz4si@)b*$2*$9Ym!FZHsAcMgG@{D+-OsV*Ev1U;CJfZ7Cw^ge=McrVRwXE z*$-Wq1sMRh%dLqNDJ$_ozs=z->c>5 zY}%~1OnUw{+^V??iCZyP=Y-8Hi?#JjioBypaL=HUmAjP_Z030lk$n^YAXn$_w1k_kp@0M7&zYY9l&=!ay5*)=k%Y-#uv>hGCRm zgrXNnO@2bE$I_;@SMeUu{LTUXbaeLgfK^c5#XZ7dpP1ogw zrSk{P?~k&x2A$8j+Ez?fYR%&3Z`6MLfv>;&eQ_b=xNZ2N(`t47Ir4VhS?{0tNlNFD z$skO5_j*kK5m_~}z5qKFdT)DjSdO z{~T*6IbXdX*EYRKdxqz4KF?km&|8c+<(ZZRm;M=_GcdW-8&;*2<4PsG_04qmA`309 zSrQ4lWpc@Pg)1rb`hGM*LE)-4-V=Lz&*g*LODm;6=JMO-lZ9_+#pjo_LV#YNL5?Q( z`j`$?JVp(=Robc3srw(M_&X&9IQla>cmOi$Q}NXogFmNOFa|$V#1IWZZuiKupl{V( zA=QjGdj79sG?hPn@D%-sv=mdy-Sp2FjRZEUhTjSQ32XY1M7z}utkDr3>mKQa%3p3I z7mf5t?&YRS4mJd+ff6`+av2#r?oeq=>w2r5v^u6mK>ZaG%&YMbwK7ZjWo9N}y3RtY znL=G~Mz6>dxMn+tqXAA(G}9AR)@pw7lY8&tlYd^1EGwz%<~%6WN<1*M^TaLyQL=7C zX_x^-(s6*nIc!-LhS|)!-^SE@%otEzvy)x84?#coSfmXQl#pY1Ov$+o$tAMmd(S4!zD&MO{BG_4|Hyb+qo~M=nQuA2a87wRxI<%i7jotxRN&-;T!0xS0ffWSsq^y|9`8?5`XSb37ucT$R-ZI)Dyp*nWdY^ zo3DqZ6ygE6NM-~Tq-~6osIlE40K&W~Dsreh1VSL5sj4~AOolCo)u%fgW#0NBfW6lr zzg>p}MRB{o0whJI`o+c*S+gJYE^vlpcwH|Z_3F`yJ4w?8KR>0Cl>KgoeDOyE!p+^L zoS?=xxZPCsrX1>}8tGcIEy6;2reWCba#TZ*|Lu28)n82AL&DDrXcsE4bbg=Quck7H zL7?aN>F-8p%K;a3EH}(g{an3*`!he(%UX$R?LW3VdSkGvyCg`gR5{$7dFIvAQMCWp zU8F)LC*&rDKOr5za{UPXE3T+n?ISB8Z?u~^@d)BSveE!vrR zmCx2>e}lP@ZU1;K@y`PG^WM~-Maq%2ubJxOHG97mJ)SXAV8>>f^CZ2Ok?0Z1i1nQ! zd4@0!ZY!CjyRd6?BX=z;4Q#|LWt5z1;f?ePbwm3C|1!u3%kO-TDYA$J6b^>f+RD1jD9j}=FY&1M4h{JAoy z-2T$#Xk(zA{OdQ3a%%!b)^xOCXwsv;lpU|+gl7(BZHsPudmo>fU>ZRuo35qq_>f6o z9?V63@e}%$2A4%qol9~Crv_?Zpc{7@*uFEuJkNok>jC~@-jPcCuv8Nphm(u+jjDci z1=wzLie#-HMv;^ikMJWW43k;PiMy6>)W}|247-q&*5xv`6CSGnd*YmNhs{BA?wnHVL~Piipc?wld(I?iuXORm!SeD!l9s}>)YNU4jVE1s zAzw1To#ZrKj>o>27HIGDzM}b@Qn26541YNJidwpE1Qa^ z0Ij|aJvdVZD|_4udKO?A;*A8NnjeuqNIuxDjz8nZ3+u`;;XZ|iw_%&@vVflnkJUK2 z;ZtmAcehZc{M^a)MisPG#N>_29e+irc_%gK+;ro5=e3U984LnwT{-TxJBz1OPCdPW zNFYp_U(-jvGa~Z10=VfVCU^PLSto zR(U6%X#II-CmM4Nj7`XT7#YV;HfypKsKykU@VvT=9eSnQ_ z2FPDwR%KYJLBBjkR1CFcYsG_|8Z-hiQ*~y0pGpr8)8pbbyiwUZXD;jQ#fLI&dh;2e z`!W3L$@L>f&68^PP^*tLUX8buH!6Gw7r6Y$DfCZKM`LDQ3AazhxFRsPA)CD5RN&-! zt^g0#Kqa>kdL|FY5JYCk)^GqT4nre9mN^nadNl1(mkc}rK9My!GDX$)<1Jiqe!^QF zkUJ5WE1c7uE6fm9qlaFikrzrb`=NsVxL#x>?qSU=G{^;@vtvW_jIeyi+`smH?9{A_(Vk_)laS7n8>Ze zM^|^SqbznWQ>AN^?AG)Vv`vYi+)yhtN~DV>uxjK;k#dFy&inTI^C-`V)!wI^k7*Z> zhhYl`o>UuZu6bLS;R^klwA%$)84IUKBTkt@Cj2$m3?ORf1*h0 zR|tXmLr^-kmNlK9_{}?uvs}LjN{Y~=P>C&zh3uOkDDL_x_|{b-#X_`7_Qjg3-9ia${{h;0LsOygVEgbRkcnqKp9#+J`r7}e$)uh~ahze)4i(R>K zUV;d;1t%CVHoD3K zS|1WEg`k7AiMc{3Cp#B_M`q74#L?LD;bX~y=kG>OLitH3$&BW9?S0K$7H8Z0bIL05 zZp#}z8JnM8_X)IBwVYG45MxfpF-GYkpk2Pioy;mxJ zr`Hm;eLNZ1*zX9w#tZdkIJ;ax|M;VYM60j(5McJUm0)==^HKow(#9JVP7js*aEE)gm!?m`jt2BdyLiqQE8pN zMHAW4Wu|k<$dqV`Sm}P{%mkZ=#~GK0>l%mE#pRc9rzbDt^@3TU*w0!}=pYH`3Uuvvm|HI`*FBO=3;Smi_wAQn-7l7=Gq2#^dVbeF zLBFk5l7FWBiXXqk2RZKH6~4i51j?_?!Ks8P8obWcyxvmB0QD)Yq3HjR^Dqq*qy?T7 z@4B+#)DGDsbO2~_BL3QQBG3*H(U(ubu%Wz+t{<#7xC;21ZV^cCAiQGcup2jYA^94zR$!v8p(nJ0%7S1)R26EV6EopuBEaoIc3jW>b z?IswG*v1qe9cBX|>EhJVkh68EdlDC(9>>4E@2L*XyI=K}ch_ zYoA}~>!VHgOa`GHE)MLAy*^#-sR2<|0V{?FHT#{Zb4jKdapgWAXC;D;E*vxuH#rQ7 znV(==w$%iA1ow`XP5Xu>_9ga%TBltt|yG z;|@V+!uF)H%_~FCu6K#EFlQW9L@GZ?7dR*YNYfz&P(F=|2k7?*cm&1iH+u9(O;(GD z+v_{-!oY2XRQr?0%R{=Ym8ZG`O((xSa8055(^P)DvJZxz9R}`;f-GzeY4vxRT~q4A z^KL-b$CHkE>Gjr;Mg%b0`e(MAu9EgfnCJSb!ozrERMLf$uY5h>O@9Mi(?crPE1bv$K=P|l}pkEKPgK?3ZEOU^rK zU{C}OPr&XZ@>v(7gP>nQW^<(f5ufpa_o{CzIMQP??(~uw@x=P}w1G&&KNj07?#ChMR zY1)S}X>*>OE1cg=K$M7vN3iy{p+-@I1H;el8`u}#UJr(C3P*y4>5oMIyLu>)Kz2rH zNRUlG0d`dW&_0dop($J2`nC4Op!)N^Qje~dW`@?g;&H8~nkCsd{dacpaY@E$McKgk zoR}x#;=a*(gG4V2BG+=w42@3)^#Mq1A<3vx*~{s6bCLI(bBg-v1Rv^WO;&=yhK^>T zUj(BM_Pyo@C6UvjZ}3WlsRm3UkwMz`mcnNzH*O1MZ9q`R=CFLJ4vwl6Bg7%Aed;a@ zQVD4Jr{!Y8uJP(PN3Sl>VaJpnhjuza4m%U_qcN#|RZ)+}J5fXAqPS((CyEzQ_1$2y z6z2!~v(GEz?Dl>SuSX*>qKn_UJy_O?>54ZpS_+Ip2kXU_>xiB^*$vbOd=uw#-KN=g zjAkWDieF?&3ATP&KeY$YqZ2U>0M(4a25SPZ>Xtr|0-hYHG|Hu%ZztKhw-n=V3MUdm zCX`4f$ii@t3v>D02x8?wt84*^ZUBi_@>{uV_oFakDXKUe8}&+o(8>}2=vJg%G^^UI z)m-Df?b4blMrT!{;@8ftWi3Mft(*Tw?42Lj6oUxW(x4-b>OHfqyb-=F0UW$Od;UO8 zXO;qWn;g#-o4!CKf)S*!;lbG6QFaKGaSX&@2-CO;_$Ps?)^xydTu|?|<5$o?7s0on zNRI_=$_Ha#aMlKf1gGPpz2SS|#vl&jRD}aY?-!$zV|I$*`z@L5@9GBBJ~)a{*YP3L z2`s`cF&02BuQpzg_!87p6d0c4wgWWeH4JHM`l1B(5H4B$`hGU;2Ax8u3oK&)ZO25p zW=pP$GZAIL-xr*udZhYABm0JYosJRfaici?;n}Cfp3Z|iVPps5MWB^P(;oAyrTHcJuM(`1D9Hs^j98ST;r3CG2evZ|J1d2-G(jf6Gt%!a%{}`Ze=t4ud(mtQ=wz zzACLcS?*&v8~|f4*{iR@AR4DP@}0$7h?DZ}$!{MNfhnpS8NN)LP<%90UV;bn2ofL! z+LE0(AC5Lt1{PP8soLjKc;xZ&+!Go^dvEsMF?QT-Z&?<&E*%~4u)b$^*zpCOH+58$VrF?6xm@gs9uPW7#RR_cc z@?@cZ$q6b7M)WJhJagi|3^Ix^_LncJ(6wj0`u2^BMxJ16P^L`%L~3xJh#>GFqos}^ zt6qL@zL$2Qwu7o0#b4u>dIJO5R_8FwEVp&!*jv!4!+`u6e<;n9j=+eU5a}8NDpvJ5 zpnHM(Ey$s!4;?6E&G#Oi6X}@22DYN&AjRIDAmCEApDH3a5@bAlf*1P(HI^g4YH8W; zf7;T&cr#9_WZJD4zbdLpFqIGzBr~{mv@|)#-o6rTl?^=os&U~?3I%K5#~in5Rx|H& zrLLbnee55r5f7_Xw2W`i{w)uUyS^-Y9yB;X7{pr0LL~yuixbz z`RRD8cbl?*?YRwjZTCLyV>uwXRgD48FjH_D?(b$2MN^3$C$&WWR=6b-DyqXR3#PyN zz^gaFMi`rHUq^3$1kFeuHQwn+MupI0515REh_4~#saZLaGZz-Yhi?m=R1G9s8(n$> zUh-9V(HN+0^WJ)@_$M};w$n2^xK=KQgg~@}0nxhN_?Q(`)ymiPPuT>#(oBcwLKQrr zQ9VAchJ4B;>ii}La^yR}f%!nOkOjb$z!GZU`39GANYBfeL;rBfP3b)-x<0VWdGU=I zn2lxVUU*DGtmqrM(6b`?g`j&&VX0H#qvpOfrTgP6@9*e*YAPGx|DuP$&_sCl-zBmI zP{^!`*jy@LEXZ5`Bi*3fvgNsw7-36a&>yyDjC~fBT1hHkMC+A$`|c4O|&$cZBs3D~R1-8#XJ@;?uVVqfHM5#i3$wfkNy>hW^hz~WpS zadEqe|H+k%ibtlg8m?#j7HRg#8C7~EEt^&@Lt;h*6BXM&wFFudnf~I(x3ITjiNh=} zpz14DYh9eA4Js6f%(&O!hyd~kbn|9PuOxKACX8Ph7$z6a zqRs8Q_7=umJ7{YHiIfwUtUQG4EqHqDBfU!5Ihi{Ia_qcdx41Mh1iu0R4;PFbBP{U6 zu8Gypoo^(_AIa;iP>E_i)gP=hD34GAGlltB6Z#OJ1<3+FtHU4Rv>HfA((bTdFBS41 z>Fl0bk@QwjNG&iw-C*{;l@}*f^V261X6`_x*-W*+%i_TJv0@agMw(1zH<8Dq??cFqzY7+7&8_BKvLYAV=pVSznS0AHR8xbdM&2=3 z8k6u^inGSCp@S<7=(*i`7NHM8zUKBj8m@e_0g2-A0ZCW zJR1f6Lbf|8<_@I~_R7K@icml5%vB6n;eF|TvzOBGkL?_?0O28c4xxzL%FUcCpdl2X zf9D~cSosPZEcpO$tz4-L4kQ9O@N{0wf~2z$XpaYdFQJBO*FbO<5RH;#db^TEhzi9% z?h%R-mZxwnKY~fID)L1aQ$eqj0;3*5Q!a+Bc!fK4Qb-UiNDSYfeiXBMu7-&4?|RTA zzefhUly>6R&``&uMS6e;{qX8Lb7YkN|I^cZAtC2;QdGXXkC&OB z{*r2E)cK`wddZcg%WaCewuaj7$2o;Sh%YSR$C0b`_;3GAOB(Ha=17dbvVyPKQldhB zo`&hL@=93nr&*1hftSdU~?I2NW9QAuaUl*_oZ4!2n?FA z;%&upB8C9BuTjF&3duz9g~DG(m6P?-xoE5CLqiO)Z<%~d$c?@cRplFAv#-s4S_Z|+ zB}&8z^ck3-ITGy*es&12Ze`_=lZf8YkK|*9{+yy`@E^BMUc--^2iGa*FL}GJ5YO&L z&wre5zIT1Iy46}S8Mp_@?cpXD>Oz&O5lwcc1V`-f;{^W9CED*QFF7rlR&MKUu$0jH zOOPZ*D)oJm^&}f4KQA606_t0|NX;y%Rfj4U3h7`>|0}o?c<@O!V!x(aTH7zEsb;Bj zpK%v%?B~94rRX*r+d+QR-P_9{@Zk6Z)tZtq!x{eb?iKS$+YOa9pb0n*Hb-|>iPMd| z`JO>xh4~k21>8j5y`0P)GvIUuBeQ6c6aN8EiE&r_AcP{J!4>q03inSa9?%rV9NNL| zn7N3RFt>^w9r_zn2ZYpz%y~JJ2YkE9zrP)R>s81aX#wc8IRUK(@_R14P5Nq=`4H34 zqrmW?D8j4@G$jJekVhb6)U}9GuGE)9tZ)2flCd&@oNCz5`O4sr8v$)5QO}(2J-_2& z{v*DyFZ#8wRg0F@!%dQ$RSm*dZ>&ismLC)!wG;0kXW>kuvKphH6N@A4Mw3RUEPe6s z_@n-Ch3nync#ad9xw05d~mL4`<c(%Bzbe~VIY=3MHw4C^&*?!UFR^P{#QnHyA;(-mbO z$(oYkuK-o)eN!V5T74n<=Z~9e5f>YUweY>J=frCWnE4=37lNB7Xx+eu_w&fDfa82< zf+RYpN1A{Fh63Fv!jXe9e=+q0iXcJ2liX)w^WZNRin9PhU**h#=1Ra-45BjVKXyzO zTI=6C)pw?=|y{c{5Q9-bK=QlkE`iuG*YsA)yOP`rN?Jcz|&kgS0gFs)rU<)b%`iR-t51N7p z8p-z|NjA)^^1#JZSbY8JQ3%i=kB1h^%)I}@XfV@OWufO?9qey9|4X_z&q=!7Ilb@F zlH7kKvJQ8|uW-IlSH6S$R>>?WqiWKuY7(MPa^17)XxPogp%*C{hLHTstR3^sLi6x)0(LVv!`nTXLmm;BcFX?L#zU!V8S z41M+UBfgUqAf$M&;h7q*Ps38zacnR)O-%3S^a`#ITZYCA3SY!KvaEm*09Fh&L_$Vm zNRh9Jr(sCHCnJBME~cc}{?d=(J)C<#pe|z+bt!VLE85*MU~w4Zj3n;dyG!e=YGFh~5}a&vQvVLBT(3e-^c)5cTeGn#FJ4f3`|ylvniGk@kl=Dw ziUy9fSLCUl$|H~dHQKw(HVZc_M{WN&h;~!4n#^!qnRl)?Dz82NU`a0?bNu()^MS3{^*2mOESxBzntnJsvU5ona+Tr0QUE##OIlBCD zYPiI*>cJpw?JS-VM@I_`j~;4S5sVXv+~ors_oX2mN~+H$_(A$AjdHfrHk3#9*!mwk z`*+Kx3Mj(#z0C)7EH(Bbh;S!5M4{9KGU}ls@BC=aGnVPAaZ zjgzo4@+C~;hsv>&&J^p`XXM&%TKY1o_B%^#D`X5w0150mh%?;KQsPIpX|1BvN`waZ zmc!%dqJq*p%T77*y>9T{R}r}ZLzpXP@txB-(~aiqJ#PySv9Zt98T!+<3U8eQXpi8+ z0Q;z$%*)`@lmY*YPe!0fsf{iv>ho})^0mAa67+e|fGkE9J5ea+S+3RC=Bp)O3&^@q zISg(P6Y?=FpQCz#wM{jWJ?nRimBI3iSr~3=riL=jhJvx#r(eK{gggpDCQcuY);97> z@F#WOPl7rTw+x=MZ}Vehav4A8j08cJp;Ir+xlhYAH{sJ#X|8TM29k3#`>n)53mxT! z7Gw=d#y;vQz+5Wr!d5}BzQ+wK;mLv_Ok|o@a0A`>>j~f~sv>oFc?>EIw6%negYLO- z{-0r$tRP(FF|RaT@PHH}`C=D|6vmV(5>Ml9E(ZqY>uTpC?OX?fREG3jTC+ycjzQ3F4t;ViFx%+T{i!R2|%bahHG|2V)U zk5<>)#_g|Vt8zOC!s4nKRe=E`7B?spx_su@KW0~AnrPPeC(b>B-#))}WV^TRwp4+( zaj~(Mu))?%6e#?yF&EH0%Ia z9X-b@g^K$Qs$w$V+KaV^tUbD@8%&|nco`+!YEsm)O*g$$TzLNaT`A9lGFBSa18$@v z@XOG8?XW;@)AYpw?Q^NgJs9|&L>o%5*dTqZ?2GiMAqz|6#lH5YdS|v-jKKGb?-v$E z!?r)NgF^v~tPMB|cm(ph(f@s}m01b5SUHC(~`w96-(2(S~h?BkN}LMEi;Z zf%zI*4@MJ@-6~*wMU%F|rS+CEA>;^7jnPcDRL`Zrenu}u)^bTlLFjk-WZYp`hEA4{ z#$b4a>lUP@)j z->50bwVl3}T1F2%J12kqAxj`JgVi6Zo?9}+xKfIYYeDIH5-Y$$g23o1>a2W-ZsE)y zGkPrlbxJ&a*J)@2U>&`fmQ!(5Chu#={E}w>eu64_e=%~PI5FzKdOGRpq-nh69PZ*M zhzkKv%~H2V8GjKyr)KW7eQBe^IgC3#2@FeR4fx!8ESu*iT}5E;=S;7@oK4N=h4M>Z zN#TYD0kC+oH~zWHy7&ZO3YI5^$q0twtTbRy!5ZPUd>TSz*Fu0Ac9qWM20n&TaiJP!Mx_t*Rbmyveo3$+n8OLJ~9X* zyElNLFlQy9fhDZ74IL!dG~d5V5>4z7mWFcJpG!76!6ROLkuI@%z7S%~*!L`4uL4%_ zg8td%?6av`&ePPy4CS+dlj2|W8G;`Pp2y92h>Xsxx(m>By|$21!`1L*dp z?DN1(cRwsBIw$%{>CK8({s~HxKbWj4%P;8)kSIXSoa$=+tK0J59Pmabr*+H?rc_dv znjkTc7mIYfjqdm>&`j6Oc^G_{S^k7>m9B0vM+aMZxVHm$&W@j7Z|Yp4Agu4KqrqmFe0Sk zE}YoV3LrOFljaPLz#43xg_G!jaPi5e@0BaePRIr!+n#r zr>bDo2zBGUGpdFA?^Z_1>YwHpXdqm4-Ooi;$x6;ydm|gETg=`lGcnUB^pzyH=OsKl zOrKS?+gK*tTDHmpT1j^bw5<1$(XkiA6Scv>o$mclG@VuScJUX{fHy?W|3rr+h7lBc+8PORL1MOTky0RbXGucd4djXigb)Ki5TwlW(gf_K20+)+t9h)8 z5;XNN(AzA?31{_PP{5N@v)jhh!v|UfSA%!hM~gB-v_i;7qF`m|eYN}t7J=;)`=CXe z7km+CD%tKnYgrh!SA;-RV6jWWTVp3C7aWfbwPuUB-$7LgduYO947wdo&>rP-;`Xk8 zahIOZya#Xs@dXB)Do5g@7h-R2UL`cj@UB!6axP?RKS;X@-4-@}gOw@+jY zU!|;H4|XY>^bqd>80J3VMceI=b@E{w{U+)M zGl6MZoMc}4%6QU7I*FoB6FDbr$wmZkLp9IpT~~s8yePEqNd;z}2lIzS>i+}x5eJha zmL00R3avI;`~lk|30n_BU{Zo1j8uimETY&yCLcQ_2{HT94-u4x#JR@p!US1Y2r0$2 zJjZ~E#lH5-?I@-%SmJ03z`tJXJ%-!HcTcuzA=J4uhHxSq@fkSE{=Kd9leGFJ?R&Hg zY@u`RHb#4+>YQhO?~N0s;H+WJa`1nZ_Ty?2T3SCrWe8cKbD!jI zjQ>5-q~j>7Z_b0?85^slaHBW6b3ph_Q_>uu_&QkrN37$Ip`)mrANukC=}E)q#*51s z)KHQ{N5y|MU*GR$S5xv%ZJBc0v+k-H?u{{Me8_rQf4!T*&jxW}#O*EQAknKof;q(l z{v)0+KC$@Se!6-12G|48cqXvnJk7c&WFRy0ti>eJOb)~TluIuya-l{LbOTA&4mTmX zh9fY|7WPkJAoxNmwA`Qfw?i(^Ec__}If(}S(2CG}ERw_k{?4RWidJO-)T>F^$}jl0 zy0eeql-)J5KrOg|%nd%UKb27LX5U_)8Iux`f+1j2{R+`jr8I}Uaojj# zY<+5Q{ciT=XS^Jsq3Z0@ZXWd8kidLKXV{=vn5O(}Z4Le?zZ~?j-EpyPKdc}zb3pMr zB#}x<+%=KBu)OIV3uQw9g#We@3tCk6ir{9|5*EOJphaHw_OQZRep|JX&WW$&JQ^f5 z7jMu1TB8U>2ov%qJ4Cyr!4eK+UuhSjlY!ghw?eb(!3cGt!2Ny0=qkeehr}8)?)`yc zx_A(foo6k}WR78sR)D?5tuwC=g@U;}qK^GmWyy|`6v#ZZwRBIOUW>5Sv!8_~vt=Wc%vd%t{K>rf)# zP!_S`Y5oh89fvG(YlkC<(YU;=dv}fnoPwSTYUCoGMXXxQ@n%fE$1?5X)d4k zSxdYz$ETG4N+=iO%)yO%m0vR~6%fXu{z~;vW=!>2IVIoEg|`1%DGuT;X4)GvTopQf zPFB|6kHym;f2g@_xq3nBe!U#erSR0+k~+$CWtLFuL%N5i0Vrdf@%;p3p5U^S6zK&v z22@DE(f=09onw?Fesw-4my4Lr69j+^EfqyMy;x^5S{r~7)U|}p55W<=0Ktkvv+ji6 z*=sj*hJ2;#&^!7ZHnVdb8kE&vaw3PHUGM#V8p%Q+(Z6W@Z5iSwXDgQ-r1hQ!LP-`Ve zA!a@d*pSgBB&&6?vSW9*-_%^1vttCQZ<%voXD9@t01pW=_!wocyBPI10Myz+JirAI z;)u4iZ$7(NlB0A&Vm%lCEr$N%jLMCrF`k5m>+kClo6li1HM*2uf1n1v?H7Gsen-*f z%@>A}hrPrNd~6{)DtH8maCnNK5{d(3gcg%npjV8t@+G44jkr}cVOZw?`CFX;g@Q%> zqQuqMODXuqO%l0`_umv7bSuDqYKYfc%}!=b*Oo45+6MXmDoxD)S}?WI`aP2R@QqC` zq^KaQ`GD1_dWK49zL*VnMwQ%ZdHB(3J5Qf+-)25JLLyCT^XSIWzdK|4zy52+zxVgzZnk)}oBsbO zC_u*6+%B!1a_lDbtMdR)(UFp^?%iw-k0mq1U67v(h87_7b;C`Grk?FHN@FjsIYX+i zIBwZ_@Z$)Fbx+9mg6(3CpdX^)?qF?!fea`i4xEh}GfTozLbK6D{D8pHG7-`bs5#Hf z!_6a}FhXu5K*m>R8ljAW4<9vLa5Z&wTyXi_(={oyA{=1akBm>MBUsmZ-jVxfO3T<- zQYX>pMo+K^1>~4jfc6#oNT9i#SUm(~_arI6`he-~26fsleHW~H5nIm|mFmn}eEKR% zPnZ!cLfs3%HXw@ieBZ?Nn;1ii#1I%;^9FjW4Gdd1O{IXp+w#G;x&xK&(tnW~H_Tin zjHg~0ifO7@wUV_?Ey6PSp+Cn?P5HukXfu{Sh+U(hP{_+cc%D*a8>ZSyn>74iv8L5* z=ohd}=)-#PcFRxmWK+NIJe#O#USK&;H=lx_0#o^Fl#GJS;>_HynPC8bwjf(drAgxgVjASNO0g1ta63M>MnCETC!iTj?9N^oa z?1ExB@lw~usV~OX`&M6_)Q#8exNli4*sQU`F}H=4xla&{;I-7@vGhg)ax(L>B=n-) z>lz}0Kz`SnmNBp55e8a>nyq|Y)`ba1HZ|~{dB=*&pi6pI1oAJtuH3k_t2pOVgLaaf zwKCzr>Hqq(s|VtuuV)!gytZb>8DFl?C3y~^3Qaz^@$}9#J|eM~e%HP&bx6j2*GZ!8 z=;_XSYQ#HB*B{rJUs*cj!?#+PGp1XGF2!0x@6}U^=RMy>OQ(G;Tz2xYJKc%-7`|~6 z-Wh1|+@xuwJq;3e@x`VnhRuEU@GWh@rtYPB?T7W^S0CcEIG??P93>VOAmkhVOKs_( zWZ&sEG+jFSS$CR%o;0|*bm<8W1DLKG+G%|V5%LQiryyVFws1l^!zmsHVp?6?ntrJm zfeazov)M4Tj0@$6@G}J{l8rMX#s~?K*lXvB`-mKSoq8tmzCGIu*p#^yZh$jS@BaJO zCYKXw&1i2ZHNY1$;rtVJz1MS;<%$_nk|6)mw$*U!KS*wl=1}&bj)k{pos=G8`}Qwy z_=J*kAB>oUkdO=0W*ZGPR7;x%a%NMn@~hZ+85Qd;6leGT%qFcltI$p_7foj*HD`?a zpTSBCguLwj$I)3hH1)o1{47{d8x2yUk&u*-8r|`wMS-cHprq2d(I_brDyb+2jUpj1 zLO`hrf=HJNh?F!8-t&9^g|oBs+|PYo*XMeuX4kDIkaIk_zpux)_Ta+G1F2B6SmvI@ zy`r1aF%$C@$KloEzWrXaPrgE??(~09?8?6a`Bm>tQ&5dGlEUGqwt8@|et-PkaHFuQ zn(L0y2l~2`%}?I?_Kyx_rKNP)ru|8?=;9aI`De!;irZ3Q*nv?eF=?xBx;xAW#YR5% z6ws)HhXseqOAPIqmDdnuP0e9m)?QY0*$eKM>G66UZQ|IL@RJ__DC-Fy*@Rt^dGeTW1Z6-$){XN) zE+R|(^3$s{s>B(AJjDeIA`5;8At&G{lTx4Xv(a-~1GXPtq021p#An8b$Kl0?fIz&K z${eph({iqXE9~esH#U;jm@Ib0PE51Knd8n;G&(ho$1NP{cfZP1^3HbImHa`Ot&Y2` zB+LAnb^g{YU3Tk+eNWi3xT)GVE!M9IDM5~)N%+X4s?n#qm^7>(@Riuz8#M5Tzc+CI zF!>|6GTMD_^EoiuvSAYlyd}^)R8&yIG9`8*?e9gF{P77B6`Ck>E7e z?{LNq=HqlWZHe6X6qpEoC6?f3jSKI|_f!}7s)D^9_$V82ouSiJ!QwgZvojG&?8)G= zEfJ{1f!~15creOyDl=+Jdeh% zOOSvr2t$ilg5WE^9|^HWP)Q~GyWIF`B5&Z^Af@YviL?s~NQcYxY`WhKTr%}$K}NyC z3v@6iWZ9)KB-b}2S8pU6S?CA#8eEPEXM7)!=sxo!W0)y_s`Y$DWNhP&8+^uRaf{T% z3n>m)3*+u3$%KkpF555j15}AfaCNQuWp^KD!*{c=@I_|gh{BK5x|dHre`|WYIV=}> zv4Dov?qdD(2viQRhdbJQwbB)Go9cG@0=$^5aoeJQ_Gz_2klPoi8Wmgjy1vq&=WY>@ zy8Qz953iUnr2}-k9pL-;mR1}2i<#_#cF)|``W5^8749z740H){Qn-*2HBBsID?-s0 zJHYy1{!k~s#koRmulX`{vgWoV9rsSnUfpV0q69-4*G#U14ii9yYI63qjUw++Zv>Oa z=2*1XyrlN=6P$Bwwq512uZ!Ke|7wnhJB+M4OK$>z#t=+>F1C>ty6)Z-L?O$}Gv?fi zFH~wX^?VziXl*Fw_W8$!5G?*NrNm^-c6FmtA<%nhopEx6>*0@@YnDCrC(T#r)W8sN z;gdVQcdCX;?Ni~`M=jUvxcH95cEuSmtZ2v6=91`d0S`^m+iE5qcfZ`dEm}cJ+maiz z*gnE|;q`uc=+&K{e9!lTShqe2C@^FbBcIcNzuoV2fw7_$W0Mr z$UIY`>LT942@)*@QxO2_AQot%IO`9hswQX6&fADhhjF5+G0=WTI|J{yxHt#78WC7| zy;zOmDHk62anBouSwgBEg@)&eLGCn2+NeJ|Zz^Jdk?;{6iq7tyO21BpA^Q{Nf3Xk; z%}bQyK~wy9{hUn+>}#A)jJ{@G6?Gw_%f%2;9NhC~(yeKdto#!)?HnkGwJg)3ut*!@ zqJ)xL2L2J{OEkv6)zlF$wNLKNU?2J)*QrO-b&q z6?;x=1Yty{9OOjB1Dz9us#xyK>N%L#-gtI->o;d$7xw6=X8DVpaNM(B%8$#+wq>Fb zNB?}NzF6WS-vV+!^n1L;X4;n_I(MM#pC1UW9H*^j!oRyXQ-W2@1yF*-x!B)!Ivn*7 z9~?RNEv{$!n(J*CRvqn!X6=;arGrZCmZUdKkbD@dO%}vXgepNaNO;4&jlS6DMU$?R z+f`=qx9{dYK7cfRguioRT>d05!A6eH7(N=44aY*J6g%i{9H_9aLDG2t^ zJXf#s-bbSHCXX3WVa&dDQ1y&!897CYnkyUu+R?>tseyM6Ik0#|#wBS%vV*P8U(Gxw zKrRqe7j@dvFdCY`QYDJOFrch2 zpMPPxbN4pA1};{|a(`9N=~z46oGaY}r--&(f4j3^Ql(Q@2>n@pp!+@L=tG8vIyytY zvdE+&`uW>)ma6|G@xC?8xFSyhIMdv=){Q%7wT&lLO3;H_=COc8Ujqyx{LB;epF+bx z4fE~D|A?tTn*)lu{u54}{V~dE9NCG;puH;$T;~HlWdCVD0IwuMkkgOdgk9hPVtHQT ztM%Os4{uAq7YpZYtm5uoja4h~sCozVPHh{eG2MnR5Ak>@#SoQ z*jW<_f(?R7sWV&?BY(69Ukea`KBbfKJ>O(m5bpO5QW}##P7I}dh%W$=X8CEE6Y&7_ zLr7o|#{slM_u0RU6;ilz2x2c%S?ci4WoDdc*YKlP6{nrCe_7@PzTtmteKn%NYgHD* z)$nP9m_S)rTAvo?_;O=C9#K5KwFC7&i`W}G(8(ht($C=mB%2%;k3Vht00e++ZPQJzKf|T;G`0SZq#F`V> z{zoyQ=;C~vDi&z}D#M3*{{ecPJwL%Q1-O^+j0*zi#tD)IHOGBm`AlSEWdejh z<-i(>W5*G7H)&i>nEZlsyTcDwdN0^qv-Rtbk;4V*O<#Y58^DN0B>{J@RmoPmNIU>f zDb4Y|*?vCeBhSO!AG4A|E~nnG64v^g)mBWkuW>W9;-v-cDWIznPPJl(LgF}n3BWcr zfj_ja4u2+=CY1CenysS~GZ@P6_})dPWPH_j_$I^h+_m!WX7b-h-Lu&}v#>`s_f4-~ z@>I24z77wm9{kpq6TJDYx^@?k?|D!QAdg@X`0{*`B&K}a;$2=a4Kum$%4{J3{IPetr8mL;JukKZhD**Of z@~D2Si8>h-9QET&{{JGX6Yuf&gBWCJ{|~NC^xU=`s84nxA{3(MkyF#cUV-~xn~pv$ z(sf*yNiJLcJ>d~7ns|`wt?hcxo^|2q)_L=fTvu1hudYUizOp7oS!Q!_ksr7u+}dhCZb}CJJv~y}Zg^_q&F!O@pe7NSC{Kzhij*A9WP2(2+6r~M?B?To=RykFU1oF| zwm^NiUz+3?)Ty&*7FeZ#}+Q(iv>SKQ92an> z4cz%joYr5OXUr=en|`TY>}&HU8FB6gxU{gz@k5$r)cgWGaONH(!htl^=hC`+XZW+m zUyu&I-eB9X?#?PL5hhZC1f>tU0t8Ko0^0`{tic84DX;~$EC=5+*uQiy*lH{`W#YG- ze!8+dUN6x5^SWfy=Ifo|p2*)bw-n8PzmIs;v~_1C{s(y6)tuNM#QBocPRB^VXO6Sv zr)zZ4eIBO_@VPoXXq41PktIuTWWfsJA>8j*Yyk^da&r?3cbr0Q&_Hr78AJaS`#w;G zAKbsbtemln-61Q_{Sg>#HeQ(Gnrc}Ji*Wk^MsLr}-RWaB2-eaF&^nGvd7xZXG|`y} zi$Vv;^9XDH12RrgQMxU%jbBs4pcGXr&37jXTA=&JpUBTM;BPr^ffTNlhD3-vwNqqJ zB|Mhqh2cQU`IL*X4{~X8YyFFbB$aHpe8?tuBmoEpm)??Q=UVZcevae2XmV?E#)?nh zjyElA-~{*R$Ra2rNpjM|?Fk zegxnHFh5o;rf}tb*eQmQcB~PNy>fqpfC?!<7!uqV&uI8xY4g9V|A0sVwhZ{fBKQh? zLnDqreV3u~M5)1~7dA#uzNM4xul(ZccRzjRVtb&jqg76sy5I|2SAUeO2T+KEN8hx! zbYBM_=|CYzSamBkr?A`DXr{OHpM-@&zH$@L*$J}v)aWj7*t&M0ut{8BV4E6O){Q)r}hk?qRG1bS@r zb+h0jA?5b^Qw}je{{f!3tFOpV@Nn#=2N{6JOQ1qvo;JyxTw7pYbQp1M5f z>S~4qS~kTp_8o?gQWOl2j68AdlgL zMA@A`M70p;-#8f?=Olk(7e+Eb!efq08FZ*}+xmafHGwMXF+_~K#zq)&{$&)hr|2FT z%@A{A$D3__)QImXzlwo9f-EOpwG4Auav7r~*x}rWbG6ymMyFs_i1CPF1Ay$zevd%{ zMM*^e$^itDo6p~J0@nm^s};~+O{>u9^?AW`qgIC6fhKp}g!#oI0r2`BWBQ6iRFs@+p}SW2oi@(_ zrK2JQO!CTj(N{AS$DnYpibJV{X4)r~M0G6rXF7*2$K&L@=P|En^@?*>YEFcz^TT_q zhySPxyG3hb9vTQ|U7yCYy(VoF^?sjMCdz{QR#$Bpyhi^SwJuorda`igjp^3Cf0-)h zQeT?O^30-6XN-dMXfT~GZs?7NfjSO3V6bN4|C@&&gM ztRiOLS$u^b)Kwe@f zFb>SnJ>i(A4e@3jPC^mY=gMG7D_$rgoDvmGL@O{gEEpEvSCk2C%AKHpNO*yS;Nps- z3FtM6Bx_JzXzo)`|M_G6iy0<94|dr{LIOg9fx8AS0x!xchQ8XX^V%~15~Rpm%)#r; zmBznI`;$XNKr_=8q0c<`$?Bo5oEJ{9-n?ME=E9*%@z%_xkw|yJQNQAdSH!IGim~9V z0`rD4iuN)KKUj&-slgszKl~t%*e05MGnTC;SXizhM%9S!Z;FD^d0ytfykS2JPt)qJ zEAH+zzw2IkWTOCrj~Zsy>NX@QsZM_L&Zj^28~A*Wuln!mu73U;cWwehXf@F-{)hq4 zdJ@YES}G7QN4#K9j)0Ppll$?>P7od{YO)eokM+)`fX5b;f31n8ynVxIz^9>yUhGv-+s+d(|`PKgnu9~YhvPa(&~TrgybO1 z;_suF8$RSe85>P8v~Rh8Nj)cE*Y&d(&l47Wcp)m|-U`2`ITWIlt>FjJ*Wp0}-N+z7&7ttuM?cIvCMdLLWiO;Y4)8 z={#jWwMinm^))4s(s=6TH%Vnsr2X=ed%f=(EMPyoyu?&AFV(ODLOj9>T>X6?aS}} z1kcFbkT5FujlX(6Ba>goehkz3roPV#AF}v;^^k6s0|Nu7FzB)j7C8rD7bK4O<8HyL z`B_?wL;`9^Nuin{Ol(Vx(D4Ey3}Qsn7-eTV?tf_lvcG`61t4t1`SD|P#Do!%MeaZK zIaX;)xQHHPLwdI%n6QfOutxgefrzYG%02cIG)*4C`QSW8c4zUv@Z3VKUW@FD9|bLP zKypX?>*)1_ifj69*|5@R+npw11Aqbu_>l*SZt7e{5GJq3oJUje@VC(a6jaI!S%`gn z4^LBIwGETsSWVXm6VyuADc-Pa)u1)D#`H!=@z>zD%d0cU2J-@m7f4c)?YtrGB)kB9eeyb=4~{Xjz$3MH-@M(aQ|YG znJlXMb(}C|W4FWOMroEkSsi*39*@&|oTvZ|d1Lxp2F&1CHm$}>KFp3N6_JP`+V!EjqjbOpMHK^WUC=o_~f3<>-GUPm%D z>bneSb}rc2(WkxV#X+pR_L-mKjn6$T84=1levAVEyB9g#Tv6Sr}^{Jbu*xxDY64 zOb*%jRsE8tFwEsYzs~4w#-8lFYIZjOA`YwGh*c$+mNsLg-Vb&v7it~KY@h}q%0cw- zQQaT!Ks&AZr^c^p0_f#lge;n(b@Ke8o)G@s$v?1VgpZL23=dy?#YTQ9fCox=yHQr{ zF5EUP@@v8m$(YG=-h5=S?I#RX0SnpdX%l|wG-FYBp{EJQieGZ@k*?9yNUgsbd0?Y; zQ+UMR-@OQA2p>_fgT>Pev^@%Ly(3C;*EVpttxrDDDzA8)T>eC^;7GM@Yq2%Q5^U+7 z!y7Cb+EBTzI;J)+lsu{L6rvAYToGIG-T;Hb0*QOdLt|5V-FdPu2hDi^3X7{)QE5&5o{e(YoWKVl?@`ui3~ooe&8uiEFCWB&?uIMYW8dg&_~7m^K=Jy{CAG%wS?4^bD4;P2}T_g zmLj-Ig8HCQ;C<00V9&}AS{<%-^jFj|iP$m+@M79k2)uMJrne+@-#SnoO_@FFD2y;j z#4{gY9|w3RT|;$CShQ3(1l42m4A`nSh0qk!Y8HU%^GfLTSY>FJ(s%X)8zWTt)3Nhk zXV9Nlr(I6KDgoL))hX|ri{bxPiZUT)Vz;vX%yO^Zyz#coe7A11-IIa;dV0$Xjdr%h z<3Xy|n*y`)bB1Jk!r|;?C9hX}L*9=;TXQ^Q4i4;S6P?S>T=D$viO+t6K4Jy|9~xXf zmh6PO`zr2I0qPkThaq3W*5onxfy_aKtmN8H*LPCYU6RGUef&8D3+B9A@ogVDn~V(U zwc*7g`Tl?`Ta5aJOo$?Gkq+wjv-1s=PmCI=K3nK+c733Nd^;w`f2%0$v>s6=m3L^U3mVZOWx9Mz>()i8m*+{w-G@Q? z26k4Qw_nOz4!K<%j8OoiO#NV;Rd&_;?5Y7Vv0&CV`azxrvFDqYao+#5@Wk;ZS5-&` zvH?_v$t&GPOpvDX-_KPZqn*2u(akHR*#OD_L?=L{2(VY&_;_4kNm=yQ?LZ_kidhGG zL<2qHHl7PE-&FSc$qtT_(kGAL3+g8Uw(|nsum(f_gN446gxPzV)w9>R2;T5K-NL+_ zXh9G;!;Na#o?WQvQsxs+gazp<6&HW_1RR-)e1q2A1pEk9o`wN)*+k7!#-5hAZQVqj^nkDDEtlyBSJI_;<6{z2NO@=(5qJJbH^GYe z8|{Zfhth4OMW9f$Ib$~xG~cr-733agOcdIoE6k&8=szEP zCJHD3>mS+3Xk1(@=4EQ85`X_q!SVI#)a;Yp*EsTh{y$*((!7@q=Omp0lYY+)61Y}P zI3&1tfNkZ>I?4O6RE-8GWjn;^Ty1^nqlFFmEIdp{;+0URMrw&oHkeZiIOg{FV(znw zz7SGdv38jDhGUYk1<#lC>gB$(ArEijmvk*THvgT9)|^L{I@3d$hBpNn+Y+>9>@MXv zsd>J6YOJE^>~}iSdXFEZckA+rdxg5*o!1?GZ`tE>YCWzqa<|dpltUgsfg<@joMhwpF6ZT$Q|^m&b6-=e&jS^6S(%*5ZJ%I{B+vwDpdhl{_ZAF1}88l z{o$`7*rVOKVL9!{E6w2kMh{+1Ly&&nAtJpbF|j?&l}EokQrhYoQI>M)`u@r8^zcEm zHE(uu>DJQ2n(?|pIa7}A#MC$~Ey})GijB3B zC_N@^6<#+Teoju?ZDd)TmcONPURLGu58)Bb8#Fv0&7g_%Br08@`+TXB6PK!&lfK}a zz|T1yNKkyX$}0wJ6Ek_~Zao-q->VY<<3lJdCP=wv!<7hixERo3L2OKP6HtNV#24Px z0X=zawh*Y}EkPa>p&*%@J#oz<$S5k1Ij_#pOO9=4fEj&dJF+wPfG~e+9~HE*%7Qi@ znxk{L#~6_Uv($`nd|i;e93wDI-N#$(;5MulO9QPo;N(WuG7)LD z0}KRt*#|x(`18|4DUu4D5FE)qv95ET^N4!A7lE?YtamQJ>kckKm|vgikEqo+ZZs2M z9>WSHrj>1FM#T@s;mmy)XWDc5FH6vkB@UiprDlJTkf7|3MwgW8%SbMPncvN-T4SFi zb|D*tzVu|!;)%V_>*jy@*5_JyN${j=9^ITI)s!}I^$HjBTL82YwGs4!5+Jx&(N{$= zSVi`REH2XO@f82NTPnL#vkma!4<|zP^Hm?25CW_&yOI&r;IzdJIjxJwooslD03GKc zST|VyYuq)_jxhT#5m1yd!9|zAx9&Z!!rMY%#zBEr@(Uo6Fdh8e`tt<`SBbyPhrcLUf_Bwx$JG$W26U5D57n%0_ zao{faZrIr;jntYu&f6M+f=|Oui|=Ms)!VSot`to@m)q;z4X7>aJ^+^Yl_|*>>&Wyt zHaieF>6WYk(!kd8R572 zbF1d$%=Qw4NnCEK5KPb3Oq=d;ar|vjJaH2y6I)m4+Z)E`!R1t>`fhMrN__Eh@!@$s zgTkZKV3?P?6+GG;@c{yMnH?KV<$_lAwGrHp0z? z?=r@yRlW^A_1v}aL(6+6?_Z#xhqff`<#9ACIh4?^=lcQ#*D?D@088X&ZoehiI{WqGrITj`Fj?4tJ1%!Z0IA=%HQ0_z z?!~pMEb5xe^X?P9@I99(=D9lQ%bCln>)~9GFcoC!QR24n5=k@rwU+QLw|nh<74b43 zING}Iwl=S2SKgj-RC{cF#t0UdtN5+twn!I|kwiX4JTp;$Q03p(i2H8VUZZdk((r#L znFUCLSotElc}72_(HC0Lk1rY^Ap>!!uG zKo?of!lw7h%8(nZl1I&brW6TffC^ zk)Rd6(Xmg8x<9IxjOb+^W)1dy@>FUxyLwQbNWaX%MBE#wp8H}*ZplU{L95NL*+W@n zuJ~%bO~Aa(O=`fzXRc1UusfVlyx#|Co;&Vl!om7g zff~hMWl7#5Ri5mxw(dDSF90Sbqkj3){?Arc=r+xHzA`TAvVcb`Efmtq5V#uqNg~M$ z=+JduZ6z{P7jj*4rTMB9+U4*H2l}N|ETJiYS?U~O{AcmfGBTzn|DOD2Vq74zj^b}v zBKfLz|HJp+m`o1r591MT}#A6 z6!rkuaE%7^pz;FmXd?IBNMu`B6d9_%*&{0#jVDGYt+F37M^ z^HixK(~?Ox#TIip0leuyO7}i=xH;So2Jfu;MTk!M5J!eb-Vd}L(~Vx!KpHRxeAO)E zRX7m&I_FZmX3aaQ!@1~OZ&WLC`Irg0-WLFm)QXhZ!Q|o_IuKZv9SwY&ZM197_&^pw zUn8-b4AucnsK-%CF^5-Nym~{?b#%}*brl26hTEdA*9%H~?1N9dLoRB}+RHOyiYqu{ z*U*D}-7?TED;vjC5Pb(4adWhXb#k-=B~&OMX5{n6Pq-=RM(T%L%NVWg|3VxdDnK2@ zV%FkuSUh+vVF~{HQne6!sEUm?>Xw9&9w4R!Z0$;*z_maJ6BXqKys@o)IhyanW+*mY zj!t9?x@;=K+wnn`2L4EQbM0;!f2QL0&VzYV&9hytiXSUFo+MVL#8$tb0gaG?+4~FfEjsW{)$p!>+-g_!I1UASM}Loo3z}q`N`{YD-3WWOm9vhgS5M6Q_sJQPBy8Vb`! z3;#PzSi6?W_4ZT&&mV!KX6?b1bloFTQr=ZWp*n;jD*@asGqgxJ1i$xvo5vjq|DhGW5a^^ksGh&XMUGLJXTi z4F!tRHsPXq)jk6-3ss_{gj|DhNzB1S`rABUW&I1iJ-z!yD}7OKM$xUTPl%HE;(~Tk zedM*1R{#4;%`LG9eRwUnBViS9(ka&W*mA;2kZk#Lr~YHSL`e+hmqN)i zoeUQK6ZgNenY2!?xQW%TaiF{8J?EFsWDL74_WHW!XMH=$MyftV98O6Nw9;d|(zr$)qkLcAJS=B`@lxbZ!%`Pe|f;}Gc`@ocke zRPBCs>&@Rq6<==E5Cykq7})d_i_eME%Yj+}jtW9P`;Ws8ep{`u>@PsY)wn*zrs_DN zts1|W(xbTqwiUL`I1iQ(s1J(qsH(Z~`d9h;%xhX!AoS>7QXu~fh z2y~bL5($@>$qL2&cNmXClTdhxq)uI)9grQ; zP0S^lq?=L8$@@NI{eq6+M%N#Yfz(rC;1cQQ@PThT1nmynfBzpyQ^V&=LAVl3v||zgN^^nrNN>8qcNJ8=0AaY#-Se;m z7RdPdMlWCCNzTvSfH7_ijR4tKdi|>6xoo;W{e$hA)JzJf<;c|-Pqn43{S4ZO_s%?u z^y@kR)eIV#j0Qe{^G1bi9i$5)deg;2DsBbrTlpWRgzZaW*0mcmrX<+f4g4=u7bfb# zG2yBR!iYW8?Jng%W2^YL|mK~{GbDrD{i=$-0hV^ zM=W-~EV!IY``r;J7$OU>Ro99N6gqWiW?EgWoUziDTNe($&h%}(miDR09Te4cY)!bU zZjHo!@~Cph@3*x*-CZ5nQ}zyqt39g)wz%!&vO}vU^yd59Jtn>&Yvl3zH^ksw2S5J& z0abEZ9B$Xrj6#vLX@QEv{{PoCE?(UjuO!-Cv8QG=;h>wuRYw`$nMHh5L6vs~PZoHXGuU(~{awRqnO{N`)NuUyPv|eOn;@*ZoA@#g zp+|+LylDp@SNq5Mit1=YTndREn7T2)udMaYGMx6({CzF%jBR0DAebs;Hp&{VGG0%w zh~mF&t~ve-;x&2w*D=8b{r+!iz-nytcSHu#Z-N1@B1Fu6`Ry_@HdSA|Bxdhx-n*BZ z$GiG2x7TSw*tm_h6l^Y`y7f^!@6j{AUGsZcPv&KF%L_)>PP=uPH_m^BjybLgBwqb) z5N@03`DeUlf*qd4nBPwji zEoQ}0g#-(qzId!Ydc3K{BLqmof9%Eo5XK6TZ?}U_zxue=cW2;z=2{YK&@=QT)ySz= zCaq0`Ift0Gvo#VV_d{3UJ7}lf>4IpjvZ=$7SQAb_14Rt!`csk*CsV5QjmCAn}mPFI_9fu4vlopiI4lR*LRL3Fd4pVTvOkxPp;UVQn!I=zRiTlSw&r zhDy>z09X_>GbaJKtDC7v5aB+FA*sw?VL`C7TL(nCHVC z`EZY#jpVWLVB?oCmYk!P;YQMYwe+&>pT1v+YbE8zr(FA^`1T~k5I@%0CZA+@kCGMt zli=KvbtjU{s_3_$79$;ucgxr5S8h2InfiM)&MVl2}W3ned#2 zVb{-a#HKXlQyEMWpmtJx@1Sj@#h(RUJU-LN17NuCH5KVP z`lvmkMdS8^me}H#GJU|^Y28v9A|DqhE5PsM1lER$gO)Zi(5EFBnJ2S{)!{j6_+5^V znp>S^@8UnX6!7SA6QLiDv6_``EIQTfM^JS!?#BC_j2|bjo<2UF16iHB?P>A2W`=5J z07RChAzu!G*L4%XT6;mdLy<+B$BKU^-xQEBNB>RULhhicr35Nn8|K2+58I|orEo<* zhjF`%0W_H75M+bzG|Me7u8KbGB)xbT5Uf>)+^Li59FXz;>;!J#@a2D;BrlYFdn|zX zQW8J)JqC>fr2k#-ov`;WWakVG8dm{^A)O~UQGnrc{nnkSo%AprctL%eAoE_`T z8RE743CWh_&Hc+3YVh*DwhkyY_I-3K)xA9n5F&~e@iW~L0XC3y%pUHXOaymF>IClq z50z0SWossq?Mw!V!~;u^P<8JtBr*dcyad10DEN$(N#+0|b>?`G4dSo&>V%166dhDN z>0)n6ddW9f@f>=!1o1<6_C#5{{Xj;~mtI28!^wXpc#R5||*;lZdX43UZ6^O5w!-vbnZ zqs;EyD#;y24HPtj!**$9D4vop3?2hhehBs`{Oq(ZW=@;^zbDClx$d?705xkcK}wD-^gKJlW!~mU;Te9J|3f1>SDe2^g8@!>;%;tY(SCc$f zcDbxC?bvK0G;2P1vI>%Hv6c7X*5ET%U1w4k5N8f&^OA~DhGW$+_(|DoLQ9Z1bLf1+ z(;F0+XkKgn=YHK^_r_gMXiyTXkf(gF&0*D$+csLo7^u~QbI{k@zyt z18W7x5CMi9BdDGp{(l)qg8F;4(La5&x>89XRM3-=u|Fu@yBt;@CV~Oz)#=d))u}%w}Wnjb3`Sm=oo$1cKr;Ls2c4_p9vK@C!Zy91TcA^gA=HN9-i>&{LB1nWS8%M<3y zg3C;9OddwSi>rpGZxle5iV0lFoW)_#F8hPjvliEFHPxDBEOJcy(Zx3Z#Kn2eE1WGvxeTJPaj( z`N4M+J)8+o0zw3DN%Sgz`Xsi?t-LY4-uhqpOEi@7lD(B)Az=7n|5JecD$!DLx+*p1 z$^N4*yb6g;xM<8^PR0-IM%5=NfW*Iay-ht*dKbf{+r^UnVY=fOGW;zAG4ZrcInw*{ z6BOn#$)9Kr-?A!g&XmOCQOOpcn01Vx9eRo}C_EQ&6u)&Q5CYUfdO<+P%)eQV?hfTu zi54~8;KVi+vllSPxM;AqSY3x6`Zm+@`uQDro1;On%-1pmG9`Uf^mgL;l$I~0 zhUZ3ZTmZ@bL|uX9^dmx?Gz{0OLvv^&oup&402Zy+1|rXcCrXtX@y{2APewG7vG+@& z@qim~V~kCn8wYkpnL?+~n>rZ}_zMK+&f#~2U{bq6SInTs2AZ6h&qxLCO@@+t-ombJ zs;8*d8QZa)3_Y6{vtqR5Pr(NaQ_!mrnDPx&WN2BgB704MG%4!5JL1G6vCm1E!GsB~ ziXsw}msqe}5CH+JVRF$6W6wSJ)3{1Ao5q9N&MSUFi}@{(H}n{(Gh57i-6FOazZ(NU zhf0QrgRnZWS~^dd5`0bUJZ$au{O`r>d$kdQGy+Q;kJbK|VF z#~!1)E^U!Yz~AdVj`l3JZw2?g*1bIiaS(l(@cDxP(xKy6o(f~ceLSI4fAo=4LNOr} zgkMaRUiOI!&zmaK!Cr>8nK^hO9uglE(eMy*aIpndW@e6G&}3PL<;3v2z_i#>|XYROTnT9LkT*pXJY~e1k!Vav* zDehGA;v){|{1XO6#wa|Nr1@}$T}p3>ZBv`6uc<>3W5^xPw#DnXZM^^QXOTq&Zbt#S zW4#>qEjj&>6wK(IqRLV(K6b=P8(jEQzvMKmL;YZVx2kXq%F2wJeg{tYBZYJE#U|qZ z$tVyL3pVVo@qFwiyJNmoec- z)3AFxc$a*!b0*I&`P~LlY_fdxj9=-I6lUD=H~)hO*$z7cI5}HIwhFjS$MJ>!5#(bY zCPBcZc5H_sThsFs%|c_QyQ%yG5v?^x+UX%;U#sqR_h`5>S1iA{1Lc0&T03DtoN0bt zH!Qh?r#O9E*qkN{&nwrR>U>c9Amet_QI*}(vy^BDE0gkx&-8FV38G#lS9`_fjLMytVF=DkpYi5m@iYf z6Fjm#)G2c$QJD|Rz@y}WwK*J{nxX|(tBLVNiJ@nR)c4)nmN z?wo}9DK+>pLLPYv1u=q7(>y~kD>*)cnd$ibjMolC_M-l{z4A~zH*ZE0N@FFBnn!C@ zuY+0eT6b^9^U( zd7X+K@W8G&Jt-;5julUp70@dd%Y-SL@e~WLto}7cAF0h7hv<-V+j&lB4Vt%CdS^nE zlV`GnP@7|%f6(H!)7kI#Wa!5KSG0p#!Y)XlP4v4Ypl4&GmdW%pEyga>Cf& zwjOxPsUIlG6~c{ZM5eM{G6QV?pPGF-FHDkP#QP_tH z4KE%s5epbd)t0)lP^qO@ZzaOl8j7k6!@)W3IY+u@!dR4mErKzEJIo^#D+#Z0;dH*J z4{l&NS1lxZHMx6K0qHI@S(TVqL`#U7{>;w8AdcxB1_cF$cB-q{B;co{xmle_!mZa$ zdjIvow0T^J!@#l7Z^pkADyLb>hnx-8CMPO zXjLlhuq-Tk&L=W#j%=f!Su~!K9*+GoG=iRbS{@o<9ulo)NCN|$_2$T}pV6TAfr#m5 zYm0Bgt3j-f?LMbxLPEkIJ75bsJPda+;C!lvR`!4n&5v%z+YT+xAO z|GaSop607!+;dvyA4D2kEdPUIA{(PPiOZ4Kes8+ldVv@%N5P==r04N>p|cf|+t{0n zYjAL~hKFddLfYsWI$=p)hdM`PrtNNTW!wrmKM(Iu0ifdgfU^p2z*ve}U63swA0yhw z77+iieV9>EA@%{#b?Dm7fH@MCKIzwub-wWE9*$hU$PqtFy~f>&lZ`w1KZ?#Wtf__% z<7WY*yK^AYNC<-D=ner9$q@q5f^>}zrNO`l7y{BMsl*6rq*H_eDnmM?ecueJ&i+dExg2*6K&$Cic~cF_4H zZ2L9Y3zP+@%8i?!ejo3X7l~`NlNIH^VA!G2z;RvJxjv^Xk~l~gOmr&Xx~{v*yu$qb z?t-CFsgXS>F#WMpQvCKKcc}d)y~AYhy(TfG29NYrmbe%y&J2goo>-IvJ$`Q;r6_VW ztCFUTBSZnSzw>9q87LjKtrPNfc)^Fu_wX>&2M9Hwg5+YdZv3~Mey0P3>bpfZ-7F8H zy%s}5h1uxW+0)k}dS05TssLI;tR4dRwH9Pskf@8b2frLcvNNOZcX7SZDW$~Z*be}e zXGHqoSO?on_5qCIO{%`_;~3d4rDfFu#1J>PX;{_QvvW^U8ibx= ze4}zzxd7sFgeY7;yTZkL+^guZBgE~|lKW2_&~E>-9!DLbrg5LppWb~<(%_0Yy^~Jt z1l@N&@_qmw&tvL>pa3gyBv8?u*Y_`e$GNTNLl?+16#t|xFo&Xv9ru#ki(eNCQi*JM zx5xOoZbcCyUh@>Zy+qCu(2mzkpF){}vxzCGdYQcez44!KH&V3r+<`J3hwQ8KCI7?hZ#&gffN#+9;NuG}W6+g{<>g9)L@-LG2 zps#KF6&x9uL$OGRTX&uMcJV@1!fOvtcIqx}Gbw<=Sk_L7QdRXmc#-XYNuqfNY=DoXmQa7fyX z-S|cl5!b7BWyqxIR7@UM%dlN2E$3kE37-Om-sY*{UsA1Ig8G6(=8J<|j%;eF#N|J7%pbICnie(Jta6yb^Zb4wcYQnnbX z3>41}EAr=0ITDZ+&A>qLBsq$LU{851q&eP8GW(hNLn58rTRPwy_h>}y-v=?9MDV=m z4>M7~iww!_ODk%Ro*EQ!!(Yoy3u>J$o4_kNC48}mToeC9N6J#8_Xx>NFJQ+}%)w7X zrGH40y(Bp*C|chsLjs3{XlHF?3J9g^)Ce!2MA#OxV)Gh%aC_q&_h-R{G-)~23TMq% zG_vVIv(LzXkSa5z6F1Rf?6?y`#iA~;=R37Cs}F?aH3`D-@;DJg@h2ZrRLg^?NXybmY_m&b34N}h zk}2W0(M5jBxbQxZoqE5;_eOFmck(5#^ZUNkS9e;v=GAXy!_#4kUoKJc>3NC`d?rRZ zO772Keq9Xx6YrCa+vD@|E|$R;RnYN$GNayQroj^BSbaN5Dr$e4E?cJc_RqvLE`EW- z<+l~5l)!iLcVp z;J`g%3VwWCr+ zdDI^U)#(4|RjJMB)f}jWi7UxOtm`@)pAo51=d$e38#M^0d3KO;OSj2;EA6FoG0~n> z5ee^`imUSs`yUl1QSpp-dw}lC?2|WQLLI1}r&8v@&#(Jb5pV1mUGr+D+}q+gCWA-9 z#P~sRz`?ZGC)?Ni=x+YV>{}u>j4f?=ZWawzx1~9XWB4H*UDa08rBcme++EIym2a$1 z38uki+-;#B+c2Py+~%;nZSSXFhkK+`mb*ZP+q9Ze+$+$4PRAzocR_$0sMZt(v{7q7 zk;6*V05ggf6ED@>atynuYYN({Zze!O&i>vjjNG_qx63Ki9(mCrPq)oOB*pL#`YAMx z-<C98WFcQPy$BQ2 zzGJKzNgxzOa;8v}{#I~oSZR#5n~5!L_l2(+>6$V#fcfW0bYlPcvSBiF8ToraO75XC zv&Q@1&)|KGxVS;qBGORkTKjxA<@ox;IrS{I1c(~(e&jU)jX_H!iM_sf!cA^d-~AFTNPJfHSSxZl#fj;@1fH9L;;J*h&_=%QXh+#m+rb*7Y%xr zTS;#XcP9Y;tYZBT4D@o_U1k5hktK81TvQ+jI&;b|H{RZAGB(|pH18Tp!>?5lACYw?NTNl;l!gX#!)q4EUGNA}@Xfy8+o_j@w& zl1Q4NB;qi@S`FoVoc=he<;%dmzp~Oqo_=p@u_vX*=Zxsrg6zTOkH@*82yBcER>6k<6c4L11Zh-IGArB=3HTeBgmmQ~o}MBsmR}OJH^+F7(s2Rte*NCC z&)c0B*|Mt`X)3YtEmXaA{8cUc);-UG?rPBY7E5};yzaR)(5(A6L5iiR*ATxhyqy*2 zJkHY$oW35x(&}4MAjB9N{#(DJ_LfrQ@Av~at5J&ReAH~n0LRigDa}=^mS`uFl`>Ov zqvN%BF-8I~rMfv? z4FYb3y40$ceEfgUY7~L5#@z7I6+S_ic2yBA$Jn`S5z8kAzRKIbJ%yyR&k;liJXqTp zd4LxG#+fY#{qFNZ+zVV+gx~DB?qh(3q(a-SG zpq!i*)3yz%K$TYSyA#|4$4WiHG>4_cm~67ZHD&%(@KQSu#)S@>0+jI=i^+B6?Z0pn z13{6k-Hc;)Z&$0h()@$gQpbZS%ODbJ6TYEcjJSTz*T)|xWVrz!x|@G@-J0-78ddYJ z!?F5#QO}orT7orO&udS=Ov;IDHWD6x0@J8xackYtKF$N3UnMVK6d09=sF3(>Rhy?> z_QMt@+Lq=U5tSc%R34Z{DZNcNMhdK}NG84$>8Op0N(Vvr4ROR`^3yyDYJ~VRg<&Vb zlkqB^b0{ugHI7LoiHNBguU)G$u zsYWVqa-Id6HQFS6fIvfq>@)nG3rQS3=G1C)t__4wTI|lEJ?$is{l()fW1rUMyA2mG zQ__o>e;+0gQF4aT4rtJzL*zj?Jnc1@<5zIiDNoFsU@w>@g6o74!BL*c%~yMCPz3*L zxUS?SaBV4m{ETKQvV!Y(4-rPNK#~@;6b+Fl-fuz~ z>akM66Yr8kY=`kDtFLW4#nUF5uWhR)blCvhD%G*VjUK7MzR+t3O&p)LJD&`YiGXRK zw1UxZvQkkuMT(f5?;*4qz#T-Km`MNQG$nQl7#}=K?R=0QNpJ(+7M*!Z!zoD1IYhR< zpavADS6ja7k0OoHDV?%;mkYQHPip{95Vjw7_${1UUYlUD>ti)rE7l3HNW)schBMT> zh#{s{`Wrr{fEpIXjNf=g>88QVK)YR`sphLmh|*hoDuC;!RUBq?=${(UVn_Mx-XW$O z`>~OgGBBPlQ=AClG!TvGHhfaGl1jH)JaCdWu`S7mAWKu@jz`_I;yV60i%4)7b&7uP ze$o}|E`%}=B&d*ko*_jYNQ5IDerWWHfTKM38DOz@cVgGOLT}&be1LWOqf%^VDn<;Udv$pq9NqP+;kx1j(T#rA(o{Z>WZiyZJy{Aw`dG=CFkESQ(Ue^}6L8(bQDYcAO1!XXCr)j##(O<1cA>eoVdokopF8oEn z-50%}ch8G&3P{`@@Mj%sjkbwqN=~z3lM;xK%#)6ar(;DBQw+%e9(PSleKZ$30)4hX zOnv17Uu1K4Y=Dx#RtP=cpmquR5^e{^5Drx0(J-GuzoOZ{fI;}mNVjvj_Die zx}7VbEH^qMk)lS*C`Do}Ts}Qlc12IQSq%66ta=fNyFw3)G|7Tc8Ne3o=pRQA${8ia z)!;@(ssyJHfmZs0sbCN2){;`8*M66wJrrxhHu&U(>4n|;5wH1jZG!NC6)oXOjN~|R zdQbFR=sp3KGK!UfftzC!j3~)|XWVrUGnbju_`@oEKBeY`{vPq>7(u%s4^B;;)#A^= zwRgY}$AF0C+e+^2#^ZQ)lwzCcZ_of&`MJ3X$m8+40SX+7lH?9prLEIr_-a+Hj_qVV zMzPun8sHpn6SE7JX4h`n5;%iv+W%F`olLUy!T$1KqDt)|_k zw>lNGJx<2O;`2XBZ^+XciI+X=-A@JodG}xxM6N37fzc^lg7Fv*M_?RIMJQeHAp-!f z;0Ywx(T+a09)So-+7NJZJ4m42{ID!J`%udvTe5Oc-LAQNngM=YDE?Viz~hqpRPQt5 zHAIW$SF}L9d=WkclE^#1;I?CFzDjGijv8qoI-&zu5+cm|RTA;gT~CA&O1(*@?7n+wAAO7a85 zY3BA9f8#ycMpC_uMH2pNZsfw;h{#9QZ+JU*O?Ps7NEe3K6PR7!+B!Jj{G1K54!NdG zCQSM0MDZ>m5erYs5HMH+G613|I1$B1$EQudxe`lcn+jz(=;U5l%~|ibS@rwTX=m|2 zJxu#l5oYc6@9n8!`6f zGlYzze{|Lgf4-;_%1|{x9si9US&WWstT|%Zb~bZPoPWd4QACt>aH$5VM4h?`x8%5hA<`wx&it z*Y`L87Bczk6$8{r@$FF=kp3hM0X2s$*gzeL32ogCl~&%I z*rd^P7Ah%R`+f{q^E13f=hp;cu^4(mRE}UTNDd(NP5f{EhX9&2BdRIYgd3Cp={yJ~Z^WJOszeihBo*8GSi@zBCP?0j@QX>CEDavo$>ht6~oO7A{1 zi{=K7P14ldxPdRrl4Rr;g4_uE-w!leYjnh0m0E&2Z?E#>?p*~TfA9uKck<@y&Su_- z-dJ9MpPY7)wDWIn-u|-drcwIa`GC2t>{NmoMnr~s5X(%yi?is+MHfM#XM6F2rL)Az zGmGdIJ_O#y2#~*uYNP$Txk8K}fNODkW9Jt%EB9~XNiv{+nSwuuY3a#?Yd{gC&wcgC zFQ63j1%?+&uNM@qE$k1SO#$PO4S|NyBM*V+VH_9$b#wNM^?j=?&0v}ID$o^{1iWy> zsf)xnl~oAni!B_o()_(aHh#(}P!4_&4+ynT(oVNZQysk~^0n6q2j@5(lJZY@Pt`^r0TIvYK` zLbC#fS7=)y8Q05HzuLE+uJ+$4{24)P$I8m3n%-xZDwe^Qy$clu-$Vh~H5i2!(Wd?Z z6;k>O%?R;v#^P{>Dyk*In%rmzoTp3=aPcHJe6VPYMF<6qXl?VH-5r(-%l5yLj|$fu`Is#9bM-XHlKQ36=YuM=mr4RR zpiY||BCuPzyc41W4J@KvL;$wrs|Q*HD99^UsDcxu4MqYZatA^&gver*`*N1(~sA44-XQL>4mE@K3@WGYD6Cz+-E*?Tl z2J&v-?;=L*!mc6bZg>+p@elz$0=zjQ6mp~SBO(@?gUWONJJI_lSePHSs&T&~ln1!$ zVsexoG_+(Ah8Cs~6(*BdA0hi8iLs+z~1Qj}HNYb-)7<-s`4#!0)N zu)b*uTaeX!LKF)h+3`h50f^0I%Ie)t$K3RXq}O)V5d{-)x7$aH?PW&`B3M9gUQ`0g zaE=IAUWsZ`YCwL}@(PXOxhxdY{C*|>D8p_?1mu}}RH)H$(z-%;?fUG^Gr~}jG^@xQ zC8pnU@<^q--}by_6Ka+SFX%vorofPv%3kJ@e&z1s5P^v@xt(5GW7S4@tZ-xzH7+2T zXG!{Ix=(sD8TNkkGLpP>Y3hJ#<}%EU+p@m?L&v_Yk{0j+8v;G+AP;Pj8(|=b43t3- zc=KWLrce~E3lAPl`a>CJC`DADX`05O9EeIW@j9#gU63xF`nv78SJ0*9c+HN)`?r+& zrjY4>?NdOms?EltLR9Vfb4?9iCSC-wr!44VV`Vcp5Tb|xL4);EA=CgU ztFpb%W0D!n<(zqTwP$kIVP6`9U)q-ZbAFuAR~%7`r9nQutT>zpeuS4T05?AJ#GNrD zh^I$>%;w%CZ@0L2`shYqf@$I+BU8GY${_l5$G;q3{R`fYTE6+2>%25;sUUtb+)+>Q z5IRe7@bcTNe9gyDs_Rp6z=Dbk99k@3V+mrxzYW#@!YIst*dI!NOtWLQhi+)~n+4DW z+FSWSQf7!q-VnCZp3w>>9H$>IfL?4$xkzzF-xl-H#s!k){k# zT-B0+rw+k29Q5(G(zy>jwLi3W0i_u##)0twpiDN8$Kao@zTT|es*oz9s>@P2gutf2 z+WzLLoWaZr`k;j*gP0?Tbjghn`|CqmWY_AHAh^kP`*%v$Th+oE&Aw$*AXrY4LPG2h z32a=Q3iI{juRy9jngq}o21GP2eMu^VVXq==)E8`G={J)G%szzBtZC2V{)7Dd%&R3? zeD^Gl!J=outnp>N7W+HZ9N1QzZvN0?h-ofoRduE`)^eZx@$sccBJ?&XGB1s-{zEWu zFA>7`Df!|3D{YGFFT^j1dkqf^_b-`C9~aXzmm>%AW^*W;>fyw_VRDVq^LE=T#K+C* zy6knvzUG@Nf~dwgl^`!Fg5jzy>Iyc6qhP}u-`sysJEl6rDYb%tO1+t!0)OHEUfmt% z>{EE#KsE3wJOC7?$7wgAFK26k+h7se>oxOon@ln#-<4*OxR`B5hGEw_DWfiRBk6Z5 zJP3HH3>2wA?t(}}4aM30XI+ArCq=i&c%GN)6xm*G&u}KUj9~fWF1%9gku4=76*lAn z`sfju3cccvai+r8@~oSn(kr>@_M?aug(L9?*aY_8omF-0Jb!fDLy#rI3*4{AA1FwZ zfJs{u5I(mOn$S}sKw94&Z_plmb?in3SNvz@z9y3KS!|Ddh-@WNRkGuxw_uqL4ZXm;$op^2PNcWC*yqZ(oY+{| zWH$SdIkEK*N4Vpzk-T$xqLO8l4lQFJ=xD1cyT9ST51`~S2t!ryYH~{4+z6^%dB=|{ zD|Xyo*IY=zqGy;44Rs*YjI&MrT~m0rh5xn!f~Y3c^STC+pz(AnGT|vV2EDyEzY41a z{)+6XB}p?QQh${McjNA6zapmxq4%cj zy4x)t^Twz}hYUV`y87!pA|eKed4eJY$LOT8z1yA0y?j!J-lGOsv5IGj|HkaV>hRCU zhUu+_M#_FdR?aFL^OwC{vLHPIWmF26Exah4-;9Y5fXT+K$opTo_780JyFX@oNYqQ~ z$M&`M1^5g*FJ^${%OW5Ss{rKR40ep7oVBh}!oA36h>;axvXF;RPs~RiIrNieajN?? zzh@)V&Vd(VFb3s2p63RZZw+8t~>u;V+aZEEUN0 z?Gli{aT0kut-nhDyT^rM1jQJYj1nUtoCwrzqMP+PQ2`;J*ggX;0PIa}rh$!yiT8Sa zOrW4>_g@>a)HJx=NuR3G=!@9hC+MeGTTX1oD6Hc1g$-^RhAkAVdJ1b~Em4Y;XPT~H zr2%B>CiKTDhwx20GjK6Lh7=i$%=jds^=JUvta*emLYq=fOT&&#GDFfgyP#2@#*U-; zK24}VQ5tH4y3>owWYb%c&SZ}VP7NSa2EG(w>wW(@jh;2jeuI?>-zxuN2FD4~iRlc=#+cF>jc(2x1k>K@tf7q5jWw@GW~@bbP~iMeEfsS#&U9zMVRp(e&^ z^lBy~aVF%s$m_3f%esxLjFPH$o${_~;$hH*j@sp+{9resk6ZDM3OcB*QuG%}-r8;h zKyM$h`8j>4^R;JqS2lulCKs3+*zWJ|kI-kwXWzPqMI{K(E+=zZw8NUU5 ztBig`QF8qVa|%Z&7KGdwt(XjE=Q^HOG(3Q$*;1>N1L8ZVi7ye9<7T?I_z;&|U507U zgsNFf!<`}v(FED?=FJK&v97rAtw0N1Q{A=WiKaL^!Z^{}{#ts_q>|xbbdKu$;S@C& z=4Vm;&0LuMrh*KW=*lOsk?-2fWki@DIuhtQ(IOgeJWC+o&n~b5!GQ}ryjsudOIJ2G zTEO2jkoCj02OY)humo7bSeP1hspV=<$r9l5m<=i;U%9(cH&LOf$rEYt--J7+j&E5; z;_!2iv(1*`rG~2p8!kV>Steq~@gTY&%HqG2=TVWDpjrcgeOK&KLSDA+pAJ&4cb{R% zh4SF4QV{2*oHLXiBHgNlN>AjL;HP97+Cp$j&lJ@eIxJ9L;p~QA%aybe!x}gxV%|-(eGp&^a&xSsYsfv_m%V= zS(k(0Tu55~C$Gj2;_bV%;6QsNokxUohJD3E$F}ZPj3P_x&=Il$2nLjCY+Eu-Iw=oG zB8nbC*XU#3m>PY$$hIPB1jDTEpgvxm`M{~sU4)n)edkE8xC>K&CINm5xn3yodhHqZ z{@zulQ>@3jpW{VyVyvOclps;v!b;58AS)_-1ZCDalLR=3#4@$AuzXz%o9%O6PBOTW zkUTKp3lBK{=lScVMfO9qZYRsr8|2I1b1|wbZs39HjSvwK%Z-5Nd=+>i>@VNXJEG^1 zasX?rdy-B&)IU`J>*sY^q~wZJV!8qqTNJn6oJmK4D@oeZC*e68Qk|r-9!f8gA>66@ zELv&a1pNbCevjI7T?MtyZCrI2ROBFZ#+I6hNSp)BoI3^qYC9j_-@Co<}E!p3&7wHQ{a#&kf=_t;AY)Q{Q`dbKGwV`tr(=mls7d2V3gs;nX$Mp)1lx)Z)H=Y| znwF=My+XB92)^za zci4(UYNK4SG(;@W*`W2U=?iI<2r+u^Ik_rSM~#o@=aX#rfXxR41SWWPd17aRVDIqdY_eOYO*;=fjET0;%hQmoU zcgM%Y;zu0Zu{|jt%IEfd#RPFA>p_pcv79=-Gh+yd^Vu8oj8HLxYHcjNujJf|sSmFsC^*AhDcC*NhFb~0F zIe|_gXG7e12#dlWtkTBv5Tqc_@HbWzEv->b^5W+4Tohq>OEpy&7U_|>*dfvQkazzu zj;hfE+@YTts?6R!PK52UBtett-07rsc`Hm&NUGWz*bJ7=jri z;;D2NyIZpKfoPFY-}ewgNsG(YwoJhtS8g(iUtVf2FtJJ+0tDYIH|a%aRfG%l)=qqa zEJq5b)*D(pRKMClUk>leGB8%!63v2FVN^=8Rul3l!M;Bb4qdOv@KFfA>0|#(e1Gk| zegjnUyTuu(5Y1+LZvG?q14>w)@#45ZZh;Bd0<}oySR zyLHDZdx81M-V#~wXHMrgH;LRx=vkHN_`p{`@N^F`RbHs5yq|soCoPDOVTE{f@m6%IQ@`jhpzL4{ObK`h-3`nCRhL-~q(wUKQw9Q!zm!FcemKV; zd23c960HQa<`o{H-M7SzM?rw}1z5L=PaTr1&JzwX`~pG@ znaHB#Hdk&4uMe;LOOSK{X9^eBvevp;kir46MwcE^3z9|4?Z37P5@~YNom3wLIOX0$ zW-nDuG~*a7?e9;N83)=w40Q@>Ivhz%S2-OxR6Cy>Uz;uXHCbnJ{-;!*=@sU_M`G)n zgcRRtz4zZztu+6QNS&sU9zXVNskPk&7jF002?zAHGDtmT7~)hoj}rbgtD=OaAT#X% zJHCJ1kY5pQ^`$sEO?SG(^svv=U)AqZ&Xl}XTRAUPS$0^%qG zoE$hlgZfLN@sUY_DNB?fr+c>fUtY3<)&3|dANziTnLsmI4OOQ)4V;un^ljwut4w2M zZ|w9;VabZ(Nw3^%aiCvgB@SYMnxFo9{c0{vcJmw`%zNzj4pk01USg{VjbVr)3w>$0 zz3_7oLtkm>ruC|rSPS93-=NkBPz!g4=iFDu=O zw2d3T-*P#BD2x>u2)N;zfz?ZR&yf&F83%Fv(V9H zEs3Q;4I!F)lM^F8W4OcBn{Ox6+jW`e(<6&@tD$aWKZ17$u-sWPCX4qJuGie2tXvO% z=xjNgbW;ji|GSu-uiN3z&4FBrOL$88^hD ziU!`j3?g45!&U4kowMUsi_xDFc2y}0 z@>#kAkHX#m`B%1OTFoqnUIwT~6Rqj9okbeBKrTdlZZF=E97<7pWBzn2%6$!E$1~kq zQcRWjuJQRyI-n%}+)GJ`BkC-o{7ba&c23P}Do~s{s<6P+qNhTI26p;n4YY`0=DPPf%YT>r^GeH)vsFm_`?6Np#Zc}Dd6OBcZEQI3J1^o zrT=t%mH|0&u2m6lW%E{=T%026Lzj?BHyNgbHuH+mX7$~t?i+2$J2d@ zQ?cLg$F6qI9{y&0kRS1EcXDbkbbs*2-tEus+3e&ETh^!Y5k)nDV(&{j8e{6??~|I6 z{RJlShLUI`dX>+@h`bTQpJy0dyDK%{NO4i!Yj_9ol%jBf^X+pV=HQxlkpBE>iQzx4 zvMpLG$i;P=?Z2^mb6S4M7GBoTru&&ff5RlY1br;OVrfc^$TxzP0#P@8(WWzu1kbB1 zgLMTHdRM&s5PPiEkAZ`NS^CDtmy{Efh5SV1o3|CqLpy;%n$d>_j!!qN-DE!oRs_&b zT~%?OpUn~Dn@N}Z)23O6IZj#WNe!X14rj0w z+)Czv%vL#jA6H=^X>kNBtwd8v7Ycmyl0ExxEU58#ev+{LNC74H?z39;iIN59+d=)_ z#5owEav66(Jo!KhO4=p*yuQ^gLqVzZ`=`Y48IlSS?>-OUwn0|KGo@XQZj}8sea?QR zg0H^CH`H&Le$D!?xL|u(MXS7@!NHgPHQA!Kj`sh`Onz6rEbwXad2ukAz4n{2C2v`# z^J@Cl%!aL?;*pAb{ZhIOFr*nz@;=tpy)r|f($Mr?u7FKKeudii>f>h>Fq2nZtSPK2 zd*L(F${b+Hct*;;S348NCj9Z+&q)~F{YO{|#kkCp7&{Obr&X>ZX?MffNwS20>ci?t zmlRItU{D&ZK6DH1flZn|DbJI=Vrhd@FJ-30J7CV$>p}N8sjq)m{ChAGdA^H5_!&s0>Tf7PJ5RWY$?F9mNr1 zs{sL3-=fL)ZN}dxiyGa|1LLU--L#jLVlB@2%Li#b&xVo{LhVyT*fwz)I%U;X28Oyh zm$h!^HMEF{*l^N2fuzhip(J~?jix(WVLMJRS#KEc^0 ztg!YP3@ueWojl2&6B@grTdGky^*JbGY%ys)oZ3FQ|Nfino?2`UMoQ7e ztH?yWc@?MamQ+o{mBRCHH0 zN1%rTonTS;t?*9G-6yr(l&J|l5Er5M2F44GJIDZ*0z(2cZ`utrG~oDw_)bm5Z9GvXNFpRn=S6p8U}^F1mkiY$C5_j)5A|Od1_?Hv8~L!S#@q@AJ>? z*0e-iH>j@Gf8E6!pQP_Ok13JD@`BI*#SV`-iONU!YF-Ju+a@NzRVn=aORspt{Y9nE zi^^li;4eu+z_If%qwkp2)1W{7zLsNZyif2!XQ#eYSm5^2INI6Yc1#!oYxkz)D$Egp z;PijSHhCW)-HY3sm(uxFqu*$Oc#WuJY3M!sj^<2qC_755kxhK>WYZ=|yBla}5(-0U zbd_Z;i2DrUj)!umhdj&MK6I%*;RKe*K7K3kB4kW3ffk*$IzX9%{zPo~bsOH6_^CHq z(gg3nE{RBrizs@BYp#mOtt?lSGP)LgIunEXuh|@SocNJ-Q4bk&yDc)Yq zPu0bY;ZxEjDQP(>8o&Tm?$tAQm915_3&eXA0AIdTS)WNIWL&=6vOZoyWW*g9x6y8* zMm;~}=)8@3_-t)AXnQYw>cFB1nX_E~^}ez!%scwgE&uV4FOsn4y{FXmZXQPe0m0Tm z){W}@`DmLFkelmM`G<;wN?kK5x!kP;JF&J!6#JjA?0$taC9rNL{Icj?_-=CkerNc4 zcqV;_A^M<-PqX=+o`(JxmTbF7nrz!C2 zT^)Q*x6DP!Jd03s|C1E5P8xwF-ctzm5l{~7LhX_4r6PL?5cRO>-0o!aRlpHquP_U_?B2~k|x;J?w^q7=&hPhn1jwCk@gr8@`R zBT77^S-Z3orz1Q3g!guSEqZn9r-tK$rsiHD~R-jC!ML(duN&_rL5AdxF35wGH zIOKwH$oG~XJnuPJaOms@4t$vmqX+1VDwR$YaeOgngQxcQIX_0gfnpSJ`s*JGLfeS~ zUgrXeRIsGZ!@)>d{3OF67U>E&2XY+00xsnmGub04hQjnIiV>vbr4U{pS940LF$W5> zJ{|`#5q2+K#q0rnWo6=ydgo&kK?y;yZwF>7Jn_5ywBhqZT@&)FmfGdQ9qZZOR*Fos ziujqQpo0gK!b`HV>CXFPRJeN7UH*D;CZNeC@NU2+$z+7*)>EofTBhas5$oWaLm{t9 z`Rny=ld&54%k^)sp41yEngrjdZ+?6=rq(|s@?u}%b7#Lz$kLt5t%B-Kb_!rOaW=uJ z-=alj+kDjsjNXv7*M&LYZd5G2Hj!Kq_QhH{6S)(*WENjwkD9m7%p`glueYF8HuOi{^!IEaBk7>C}Q-80nq^ zaVe13Ee6NrO>}@rAurghq*M)lTB}_?pH+*~TEQ_0<@CUg*usn>ELOWwE4BK1t_m zjO(t5x<~o2?HdKH|FWPe++vhC+F~zjLoMGYJyz)2x)T8m@f96ab0KI$DMXuG1k<`y zXd?_AsaYiB_s5@xC#4pJ%8avpm)3lRz}Ge~Z9-2XNu`X$mEhU9j|)|2naw8Q8gy=+jIeMF&h4Cex z#xf1)V)=!!DDBFc2F=&5=hQ6DN~LoA4~K?Q zoNmG}`udoO^7hQmILh7JEb{#v1g@ho4DrwaU_la|X{~wv0#YNx|3l#L$M>bfZjhR3FDgJNslm}ma4-7H=W3D;BM$Yp)%o^ecl%G)^n(V%NCbErj)`pj% zeMJgd&E%L!alV{$!zd+4@cft#oSl7KB|^(jK9e+GP5>S` zfi)B_)DwLA>re!IOlz-_E(?FO{I%SV#B~wZn^kk4;yQ=R%wPJ2;irDWmh0a-1pAd< zzII&}6MdX9>dz|xwZ)WS^(&qRt3CgE{5IwYwh{#qxSV4p9ybZG8@Xe*b|RFk+O*M7LJ}`UQo_@os0YIS<{DMeC|usyd9d6RE1Ydz*-F`;yr;Hg z{YoBgA2#Idv3m9WB_n6Qs}2^vr-MUrTEDp0g-YK}oB9Q=$~&F5&MgP;daYQrA7v%l6LX;IYJDR*Q;q`mve zFSV6Je>tV?C6h_?hFhqq3ME#i){~fy_g&Mm@sn;b0g>VV{5xH{bHlF={_dD>R{Nrz zARUIl0;=ECh~EurehH?Re4))I6LO>L&6$%)0=|ZFt}mn(fCfGhA)xW-|g$n}w5#}HtW6|mejI?d~0P#Q7D)yLK&;phfcT~j}4z84g!J{L#I-%cRCbu^6`E6@juK^T|#ctKsFzd3gK}|js^D~F<#Q!8miA%qVHfh22 zb^1Bqdb=jW1)YjrW&KQ&O}E$^pC5c9TZy`9@-|>8yR`Csd7*h0v)^41$R%mT{4{HP z%yEu{G2d1uf}q!#WJb+js&`)Mwlk!4KsVtK<7EVrCu4t=y$ZJ*q)a5_e3#P`tMs@y9w^AFZ-z7+&HLV`Iw;{2IG7rOcD(PN&rjG(3(Ib0dU3Z^TIxcBB-jv4jv z1IfE<^Ut8dxs=W6-GG$*FjjC26nrd?GW4bZZ2Q}v0LW2PYKvVyE%weCFFI*zJxhUd z$qxJmcqCbW$i%ueD(g#%_O znq$2_F03svs5+aChA*Y_Pc0WwS>@L_z zz9D3gmRz@N4Rk$_UyKXod~fkk{vBm)$FcryVjt~ltWj> z7YZHf`s*+}oh68N?u!B0y$Nbd!lC8;=c%ADZq00&9OLE)XQi_E%Gb`dVw|3fpt6q=IJOabURhnd`SyLue=GWquZz=S|z)RgwR!{@-vzNZ_ zW2Csztt>C@EB>i*k)W*!p3d1;6b@c@eT2VyJsSInL6Vm3zjxe9$(g&-OC@t0o-Vv_ z#CpG?RIF!Vg7I(5)$EXn1wyD`X&uqa@0;1KXGm{K*nSsToEbEja+=zcNeQ8h0!&fk z$C}htiQ|ge4dW9N&2`_FlyC7aCq4k~AKG8CQt<>5#XYWYV&?N#(-e&gFHA2YqzF8L+c&VGFmKlcv5 zwf(PLkzT=aQ{Gx$(MsO3L#F-3dG8=MMYgHPcAr)s0eX9Z<(Rf(rC6cfu^?5s_swFV zE+sLtg|AB$l6a$)V*7(-IMTgCL63(XnakITuXHJA5}U>AVKd)H77KbUH0{^-$4Rk@ z8BYd;SHOXSPlsb6j1c?f6K#-_ax@_md8v^f{_4pDW(92`tGlk_Zr zJx2dn)Fv9T`EZkS0~OB*9Ur?dzs+N($Bwr5UiqqOwHg&Vz(_oDyEtmomwRo8%nK| zCbHd+j<0K5WYnnF96@hdFZ>9dHMUeUP_2haU}f#OQLgHh<4d1$zBX5Ml4-0Dj1z%_ zj46zSf)kQivElTdbo}|nG-eExv5}18Lj^;c6e1U3 z5&oHVs!mEjp<>4H8erC|&HY~hn-FC0!#=R_Afv>uBmW1q)hjp#lmzcv1zZA2`CQPh zvD##?iUT)|FtX8b03yj$=nY~z(I{EjjcY#mwzQU=PN#!P*Y5SN?Pe->`zp5)LXnl- z$4-iVB+Ldprh>c~I#T_;>mQ#9P8Fp73C2Wn@zbO&h@b-WOnrEK?8DI1he(}7_9LM0 ztsy>2=M+AK00aXk00;)kJ}2OdBOLm!h&-GCu9q0AAQ(5W!u&X;07_5+r~`Wp{R&@k zS;uGtUhARxT?q5ox1?}yYjUMT@GW-;$sTL`yL|GjZ!r$LxVg7;@^ESqdDD4vIWk^~ zPnNfT{Myo`7h@KuXfFj^O%X}-8-i^bOQ~IxSrCAm3IRF~+zEfi zA3NSxA;)_liugzK=byKZkXUgzzS1+ix$(>^_>k!Idk7xq009A9@Oa15Cjp}Q>%x7# z8W;@{%Qr*-%xDD^>hxUDX|n-p;RD~H?LQ^;DlwtiQ#)9P556V>?<@POgHpazJ4jOj z-=%a!oK75qIq9nQ$6y19K3foxtlZ&BwITYdc37Qeqj%DkJDIgRgB!cCvf4p^nEwe^zYpwDk0^R1Y7TbG^4&U}@ z5o9~QMSvOy_)7eVVQnRZs0q3mFQNDy`hGON43 zcQHW!#Xt8c!GHJ2!9kMvdRa!lDIc{&FKEnts)YMs9!v9a>s!sKt$mfWtzkNct4am9 zlc?NIuHH$m?xt3EWk0G=4rhEfy-FRplPIef6sVxb(60!#I5*k=2oTHv9s(eNv_E+B z%gplcKtH$#^h4#(@WDf6ou8E{`~w6CpVQ_TNu5>EhO!Veh-Nch3~x9 zHTXC&`>u+>nAXg>1One&0ll|<>I)yZLYU0LJK{hg=nnZ;cmM;dt#w1&Xa?7IpZNXn z#p5Xd!SD$+2R&D*AeEP()a>gX$K#^%yGQa}!^I=K$9_0lfVmEnHV8boqwXMHg={jxF5){i&7P>GB;k2`VUqMn6w3 z|0cP1Ke_%5rd9_*2d`N5m+GN^Z0c95B(yusPS_0?qG#;=!6|eUR#;QZ>IH%RbmeZU za>q~RO0FXMcjBd+T=4+>wWy$2akqg0-(L_BRDebsKu7}F&S2tn^>c7fKmcymHw{Ar z2C?kl#j|q5R0F&+_Xn1OnKEB7N~#{M{6oEiNmA#kn^pusu$D+ny&Io;+mpSQ0tP(e z@$jb2p!v5Dz<ybtj*~n&1+~5DubYJuy#Eols8!CMwM^!CfF5Vgqgry zxWvL~90+So|K6^#jzs=ouXejPhqCRx3;WcG8t=$tk@(Z+RS*UX8`{bgrac1G)!r_ag9v^Z@ZKIw2y5bAU+A z+Nxh@>ZUlz1b6hVApLD4n0_akr)Rh_Ub=MgrPqG`?uP@jTPIEx=eC|LU4Gq~p1WLA zrMqYzNg(Y4yB^73x26B2{9BIxNbbuz4K)8s1t|V8Quq=)!31d`dxroXAYHvr=m_=7 z1HDmCJH_~DyCs1*uAp{cx_5zm{wwKkqPImvwvI^e4%3PtP5r9JYT`$8z-9wT{P$2k zeXF|z>vsn??q$~QCYQB5Nd)*yHo(yD(MW*M!sp4Npih8!VxSc4mv{6}T)a-c=i8LE zM15KShVT^+Fz(NP;@%e@3{nZ_02M%(&R-+PbJM|{&IW0ouV4rRLJYwe6f|Q%cs1ba zJmFgpoemA?J@ErsL=F%)pg)G`N2EV!u8;N69tP`b_|%p>=#G~0AgBcWeW8i=RJJuf z%^1F^?+(;L^Ed~%_oEY29er6qe`H`GKE672}|}MZy56}uD}y~d#}XI!FUmSMKC60TO(TA({QKI6j|_><)DsiVmODl z#$!N?4mCPe0sLV;@-K#ls>#u<)Wl|LZ1YH8WjKF+cKzAKXTH??U~C;|+Lk}~ng}2c zM6~S3;ocyGf;&q$Q>8!R0eD7F7QRfEb$F;X>9usHe?!N-B`RDAy^{}os{;55(%af0 z0PZOQ))@UWh8Qy-fwcK;dgEI@>RYI?c|WQBmS5R{=_&%fYqwLYl!Dz}RRH;K^@1Qk z^)6K?xuQxdV`ZA*Y7o`)d`aOcPQDL(QogVV(iV2kT0 zJh3EDqpI1bMyDpHY(dV9fAv>n4_~PT6f9nN7<;>9EnM?3ZjPNhdUBCCn3&gsh@N@9 zM65?ATk+#f;hFHn@{xhXV<+>WCsq(Vhx-f1Pc4!7n<9F}U2CjxK;oXnU!VvO+#$hp zQ`^!bc|0y;!1BU`R!j43v0|HAoKpV>ZOWG5N5m5|2K6v@i6>y);J$p&X2)cjDJH#z zju=#-0$49deqg1uUtNDb?(LpaaTr`q7b<7UZ`Po%H^C5U`D1+X1H$^v0NlAR>jWS` zzhn=Up>zY>GcXl&-6W9K1=;2mtqg?;dM{Ju>&(Uj61m=pDoY>_;JqM0-#u~dNR^5&KDC-DRMXQN@v-&jXtgz}<9EpMmhuTle-4Nrl3p*P`;R1LSb=qGRP$4s*)=_b zDB7oEpXX3Dp5wU&i0_3Gngz3Tjwdc@mcY6|ZPC15JrzzVH*!1AP%dTfG9o!`0#LaPd1%2~_|XVoo3m^hfm#(KuRs4d{yigTNg*v}P}5BK@!H<*M?yK0k0?txul{aP)ihllak5dUdwmBHUNK zpIE)?Ya&Fdb@}XisX+xL$~(3u;vRkgca9#5)ThJ#G69H20)!X!hP65Y$m`1b9-Ci) za#KgzDuDj+jlz7SV(=9-K>VmOSXb2NfJchbKY*C*lQD8+61ga2)PsdV4VOynLxC}M4{xwhPGC9PPa$r zJNo83hl-^3_INflx-?we8e6|OQrVi`e0r>M5jhb(v(}y@2bX=pQKn@|cEHkYWLKlI%7!uPqfExNWkJf4vz()s`kEDyCGv)N``pLD8Wa$gv_@dda z0QZ7BQByU4Fb-$~0Cz0e|IulH{^9Clp45!kiYCb7%M4Tm`gE`}2H-25od}MV{vTif z(i`8%8OsTLZRy_~u=V~mR}d5d2%y!}wzMvxHmGtxzfGq_*c&?36td~(!419PuMa0s zxieT*2{LnXODDOPerP(ZW`aHHDhLS#0TTAs4A7q{K2$zF;7T|*lC_NiQ~*ALeu9sV z{_xbbWL8rFfE8im9AMybpDV#v-r)C1uKGvDTp3dtR0LLkqp_6&KKfV_VGh>660*f7 zbW$Q%$22oO&^gm)hngUk8XUs75`WDcllxnGXUOy&kz7Y&q4RVBi4XKq_L;@C%t961 zj8&hUtUh&ip`1@w_MX12|fK*4!<8Xx55BvGaEyq$_&Wh0b`ZqT}^m_;^K!rcej4x!7NW{&%v)+7GGMhh^-o z@n|QVUTOzKs~rTFv;=X0UpN6W_U??4jUfFy^gRGNh|etjV{G=fE`j(sP*N`_vG7S`>Q|k%IR*~k1kn8e z7r0Xj7?9l=17gPDm;mdGPyfyl@716&c!1}j1Ya?Bo)CNfO4r{)U!ilbsz9H7?+Ze0 z?Sm$CtzR^5`)0;LzZZdy^jvdnsw16kjbz&*b3MbW$e!cFxf3IW&}gY|Zf$bo(i4^K z{)KhWe=@s$D7B2IJesN;Nmh=gtDxW36acvm52H2B6Elf#v%k$Doqa+<&};T|>aDiLKn5)t3NIW> zml9_;hGw_B2G+U<)Csk9(S<|3rR@1<7cM_LP+rHWkE~tOQfK9U_5PLkeIJaqfPgqC z;TqLpSb_aj>(l3eiQ0O&Bp_1}P+5q>iqcI|ZwhGIp(&oK3C-7{TdEIqYy{aFS#L*( za`hGv902;ZAsBUJ4b#f~RP~#bIHUCxUIfw={T?`wSl#Wd+)k8HK0YI6?>5$3%yzUI zqO_yGXQ?LMYAZW_kN`xT0KP7o@GUaXfW&`h;|n0($N^*zp=A-aO9n+0^h^u?5NaTR zYaXypP#L&_=`&?z`Z|W?w5(_?z`004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv0RI600RN!9r;`8xfB;EEK~#9!Ghp|JgB-m3 z6i9?bgt92>EN5m(i2;bHSv|bal!+-khzUUv9`5Z8rMSCI)r2W&%2_q#_68PBv#t|n zVF11t+P+u4<3{9OYCwQ80&steRMGAxuQg%+5B!7Gpe>Rg1pFQEB?9RGFEoJwB4*<6 z^WnBM-{*5q4iJb5ki^6yATVmJaB9*YfE}rpfJI0WlTeb}B?U16kI1k zlShPu7)`B9aZzHToV8Yph}?C;#LTr!%nX24gwRC4=>QA2*ZS5QI;erYO9=U$y8+$Q z1pAO`a9AyW5yNJzrD~TRob&+n9(N{y+)EAGZV&;FcRp#o;lA)*FX97f!adaBa47(k zcgpY|=+4konh5kgr1*!)eS7Z0%tXQgFqma$U@U-uMcgX-heNxr%PP!PD>1XEuvo1T z-hNM|x_Lx|J28h>D+qv?yPTV=BTz|6lDfH9OMUm?q&JIF%p-=e0Pt!e-1S+6hoPn< zdhdIby|dx(aEge)1oL-_(ZR>u3qI`^q;Q*ASQ|bDSRY)@vb;1CuIQn$D=m4-lgwC%9uSQI>Str6C!9*!Z%I~27ho{E( z3Xz5HZ%}Ffvp?y5;VmkGz1Q>s6@zJa!b9Swy`Vb<5ce|t-#4y(mm(2?h!7EO0YZ2H1SJL{ z>RW>=VHQ;)GV@M_iBv^c01!u#03bphk%U|9%S=uBPZqP2v(u#F5dl8VbEPCKTqYZ* zy4{Xe3g<+kZaxM2BrTS>SWn%%g5Y~T(|3gjOyK*f!Lg_Y(6&y0ZHM>(cI)u_hXo#V zB&o-H1SMM3QJ06Txo;vI`EU?ws% zrXXQZ649iIMLDOaH9R7mn94W;5EetYdsb%A-1SMt%!#QUZGbFXij7nCh~h!a-Ev{( zJ{9d!pAG?s937rJ31m@=0QM2+>|1@b~wRc5V-}5kn&8GnTg0F z-~fCwcMo@q2qH4yRh9vOI3;#>Vu!m|@A_QE0-)=2PAW{}q-H)XlZb3@H zBErlR0EuYBM=&#sw3@&;OiZ*qopo8=+$;c0Q(+>`$s+(z1OPV|k(|{mfL%%Wwjg*{ zQlTHL1~>{%>b?A;_&!D1qoA1y96-Pwf0*Jf-~DIcIuJfY^|V33R5EMVX_pm%S!~BLRR<6vLJ*?n2#x0RK40I;(GI}3i)PaS<`3Z)wJ-8_r(9@X zl=b)?Sw*_m2WIfT2H}4soWq-b6ut2R48l!^hW?;ecpO>Ko$q3PhiZUfa1CJwp-lBS z!jsqZhMAa;WId)@4i!jY_8NgO_!Llu5Xm0-!_1`?CQ7-Nq`e9YH|clt)lgbqNV=Su z4vzjX7LV8zkV;}gfq4j%dFbBNyIU>~;Q{a={36_|j`sd3quUm)B_p}jkVC!otGj=BxEst2+^ZhWu&C{)T`E_we9-wyL@-0B}ybI>2!% z@DAWWQ-izwBBJ-%A`W%5*z3bxyU^Y>djDAY%@Z9h_>J3qO&Q`w72?B)`ybMUf7j)F zNVz{!W@1o8M2&;(mz&?^Urx1RBxn(&W6zVDXI8!z4}_iexYzK0_S zM1Ugz5dw%>HLM}wn4t^;rKBQKyduCt%?d{Zai~yIHIF3RkfACJpp}Q4tbswq;qK;} zp|)hJS8JBO7OU)T-a=#mU7u^QhW{~-zSC9#NZqW~s&_BwThTbj8$tvD#2gX!ep|t7 zn#Dxf?5%a>Lki-Dc}M$m;ihE7%?iNla`Yd<@ty_XyW`sXAJOn{JBbl$J||HSTa%Q4 z@E+2^D5GVMQqo$hQ0Tr>#XWp4QKA~|4b`KxA7<}wJ0!pYL+f`5YOPv-W0 zF86>Cg5iNMNbEa}8phzD0|1y=loN}YdGminx|~$F+AeZk%o2c7yqYspRw34;l;^WP z>3op^H1QqHeJVsu`%06=nH+S<=tqjxd(T5YUTO9^? z@T_B1ZsCUoSv7b-Iw1pV@nC|RC#LxgQ5cfVHs z*ZNw1zwrIH$mp#W`n3|+?=!ggz4$rUV;|cM1R?zBP7gNl?q?PIt0MsJv7V+bt9wMi z-7G>_7@?X(T$<_zk$EM&e7Odbl^Pz+*RN(w0a$fT0u@ySF^8LZY^PR2=3XnY0Ek+v zN1Ao2GL@DOC4vYdG{W8Q?eo41PW*vOX}Fm$x*rnm5abi!?gwazn7zEV6zx5PX?Zo!gbcG9*_va)qJY% z5gt$`cVnWK>uVV#W{z+;+b~U~OqGR`SqST_OTx6BM1(RUb=vTu0SM7BR$@AxQ&v{y zVJy{!IDv%8mwmdUC6XBcMMwnP_}>^TEv0J@BWmE5prR$2jUg`wv3s zf#0Xx%iFswn}^H%7ONjkbBICM)uU>mlu)X*Bz+5o2?U2%u(B%G>Om|KaGNH8bdi{d z&10Obx_eA;&bjYrN-8!?B9tWnM6Emb+kHKv>v-1fkk6yJ6D6fmK?IK&r#enm_b8p) zin~N$ridMU4)>7|zHjmr_;5i2j_{|)1?GEx^eDQGo4rB)k3b=g0kgkfOON|^PV((| z&|MXkh<8arqMQ@~^8f`R%-o%eAh8t#EWl`;WF8nNBu4e{0{4=$WW{!L6&lI}uM9Zn z9R-U@8I6G~K}^I9=31O|CI?HlY(il>lk9 zUajJbdvZR++uBNQtt)?+g~YwU*l#he2jM$biQnHY!F!8v+zR}f#MAFX`uV*GC7Q{< zc_F*Kl!#fmf#HO>RA;7?M3@2CR1xGJ#7rU)QA(Hx5!mAh9*5$LK#c&Qc(~Q5CX_2` z&kW8TQ#aF`#H)q-YHZX%Ft5bgYvru8hy85UQ*|FJn8Teq-Cg>&gi4&wL*EdcyMtO0 z>;sv52MIU(d*2x(03XOTI_SW)F@Fyq=}winDS{r?l6okC$I(CDDz(Q-^?H_uUN;cG zM|=MsR1&wzJ&tz_5$UMO5llDY`uthdjm86}pM^twJ)u__|NRTYA9K){2TSz0G7ht;;Q3J|j>L|Fi`7DB-rHiV9 zp+xn!K_T9S2x>jd5#%mAy@unREK+>aB)>IC06ts_^%lDY;Al@U{Ks~@pL_FOa=-h7 zDP>7QAW~tEFhiN97T^}AK#&I~j$o1CaOXe>+?WMK#PA3w_3BpQ+Bzr;6Tqc<)Jm#C zDiqt%F*>n=SeYcx6OBn6Ksb}CikYF-J?$=$GBxSnj)kYnL@byprpnBr_j`^wGMsM+ zYs-N}usg>!+TP#ew0Fl8hi&2aq6s*%h=`0dd!*>Ih1jl2xNHuiQl6-Bqbi0l*_tmf{&G#X~5D!nMXYRRDTjvc0e2yhFT? zvccp|?gtK&_t6C0tC;Y?az}Sv%xjnQo@u2&w1I!^F}~k%fGynN;=k?8;bCqh8tz`b z?fxOeN)Eu_(J*mL%&cJM>IefTTITG`L*qPj27*K+X(En5HESeu#S8$!M-L{Ebp7p9 z36<(j!%$enjJkXf76xK7a-XfsT0F*ST`IfNI2qsv&I-M5gl{7CZcTWN!OicoB;<|= zj<`2N=K3z&QH-!{d&5PVxO*nzxvg+f2UPw@MuVQB;Ep zgkS+8;qV9}@m-2jSZUrdfFa=Snm990K&i!zP$~crr%oHgj|V0LoIIk@K9eA^<^%ww zJ;K8)fKt8Is*H#%no6zn8JNRN+)34g{Cr(X(OtMpoRT2C)LN?HItV`UWZqvB?hFzR zHk-_D^5DMnwD;H(j<5N{2hI1?in|WKsUG({mrX1aG$jz{6D2JlCx5+^@DsKzMiy#BVIp9v5^&8SX0(ekUlX z^*2P2JAI!$0dG^B*Y@wgksYJ}{B@E{O~`<}v` z2+@H8r7YqF~XwN#8`r00F#14GxJnX8!HMS3`r#=9)^ZkAr5RN5Ce5;r6UR^ zav>#FbBNHi!}>T8`3NF6b5&6h7A?+Zf=FIh#F~0dDtc6|@*5)6e!m}-jc<_K-da;@ z+I7es0oXg&?;0^f?>PCJJ5N&v|Bq$(#rF{UJyo;Zc$mj#<+g1|gqR}2s=cv61)M>= z2Rd9Y921CXa)dKt$B-K!I1SaKIs)d1*t0MMKuTZ^Cg!O+z%1Tv!BHo}K{^q3u}TY>I!w&>rVu+>iU; zTVsE`t{blvzupkmW5}#K8tCZgQNC*q$1$q*UAxF}UgHn#DgBXlo&6Kq%l&(1LW!b5 z862V#LAz+NkqX2fFe0ygGdJpzX!!FTnk^augqIyl6CXeLHpc~S=BOZIkQ0L;?nYpP zhdaQn-7o^&@=6X#8q^xWJjjK$G0BNY1kByMdLV1wkqCt+MxHH*8(6L}2(>KGE#h@Y z73_fWcgJp&jT19!y@#;gfh4+_z}#R#>JIF%nk^)}lW>}wWv_m` z5=`MRM7?dlZTmmH+5Q$cS93pnV7Dd_5j#0<%pi@UXYz?BcdBrP2a8HWaYA?}kRDMd ztJU3IL`2!DxAW+YQ7(5ra@-oV9-<*uRf3yWqPHOasnPQUj&hy+y36xgTJAtRAxwMQ zzu!P_{iZh?+uzyjNw0r(+vtu};t!@3$Gu|o2BFc-8~i{c0O+u1h>#?z6Is-K3KIa75!Ea9fVA)V&5j#ua(9IpAR;;P zd~Y1KCyHfZW`K4+lHZIb_Fp2Z!W62a!U(VCQw5O$iOU4yFlXlGMNi{cgH*xI^@_$V z3&OQB1~+LWgzua(Zke>BcuT-iA53v6-=o3JU~#veZD#J7PwcWiqeTIfMk{k~#pWW){IB z2#`lK9s#psMxi&EOzxt3y!qmIbNC~N#Xktm^S;))MO1rwL%WX6-fx?^36Z1N4~zK$ z7j_E*d*>LkD3dBPLsf-|MVQ#?RBCmv&XU0cT=Rr< zHi!P3Eo+(yfFJR`CJllb;=8gwLbuK^tB z_Xl&JoA8GCo@W025kYTYeA)o_*iCSLukR+=@eNb(F3U*o(vkO)``!N#u_h)YiAJCm z#95g&gE*{KsHiYSOU5z<02N|M%+&WiF-=ny*lgL7thQq?+CZ^Vl` zDNM>_ih#ShS0dUI=j~@b?Y1y~Q^5H)%lc-W!e3VjzWLsRHof-%;kOe+(+@qt`w9Kg zNeCdj=OygV!U#qLQDZ^8!`|P|eY#uj+vEXFDio?B!T|4Ce}EkwtpmscB5B>nweHwW z`ox-Zc$8`)Jey?^o~C-Ji0ivPFlY^|w$1eTeMNElDE!zEfwesRRPV6hRVn>k!v_ zWT%cZZ*=DjZ4&8}h>(Od<$ZRYLNvKAgWda2&)BvrbNVU?q1tyM*_G-2I2dx4MjMF;XxG4 zOpID;AlhiOl#+-@tEopl6iBM0g!7HAT_)vf9t>bt|-oa$Xy*O@(Aj0n9cCcz1@LF6`y{RGhI_-UVyC_1;;QmqVI66Vfr zAp%YGMTx*fF!SaYwP}AWOuS1@DF*;E64ltp2E6Bwua(W5xoMU1j#QN+oPxc$!$EN3 z2v~p<6Btyr7r2zMx;F-+H%r2JTL}AFn*TNS2jCwIaOgE*<~RTK2ZB%e*1?!}_sZOR zKt1+72aNl^8PW>C5z$OL6SMHFQ&kqxX&kD9nN&n|?(VhJBRl5IT*}UV?&eRr=RHq^ zmx)A46hJ1|cL>Kd#i!k7Qd>_vg5c)OvA4Qw_Kyf68dVkxGN3f{2LNs}Tql+H0){uVE0`O${uyzJZUx8;Sq7w%WY*;-Cg^seIi8 z2!2oTyT0bQ#&F`zV!(%0sXK)pw=~MUSKWCZ)ZSO_`R4R_qWw@XB2tx{g%D-3DM}4W zNrl18Znan>ArO~pOd+DH&Cqq7?2{vA#=(PmOMNylMa$qb-6!XD+<|pd6C5nETQsxS zWlxB#25GB+L5RA(;|i}+n`q$yO1TzqSyk2?ZXk;Q=giblrv7q)ghWM*!l1TFgUOqE~mYE2awbP(e{F8F2y;K` zws{@Lc3&5gYkh(egEN?d>w6F8- z+@X1&Qc3{2KIJTBvhZlzfFu@?u1_gxON@49G9xgHh+8f7S|mF4YBbh2Tp%Jj7_10; zrzQl*f;hgBvdW!pI@*iH<92}+azzm?{YNDi9t=C;7Bw3}TV#1R$%`Ys8R zs@7UJLt#F`?lNlEH!c}_@ zS0;j&sRS`a2uYi*=5KoEAB=?bmhkZpV(;&9U3>$(zaJZZ?=##b^!E)1ZmqUAfq93$ zXJTeCza*{s#>7&_${_@#scs3+TOXlX5 zm1`zqi-)M?L7~Z@MYpv;*yaUsw^}P^WjFPx;e?U^{a$;d+PP0DCVd>Z%lffNeEfw7?14x2ms8c1@Hb>RWsyk2stft0| zPUaH;VU4J_v_$TeVF!(Tt-RU-hNC->T5AY@_Qiw#w725@Nw;`7pIt%OzkR+Qr&^1( z2)mXV9^61kNvCmYb3t-WdDn94UZ=r!cbNs+{JA>yJ(cQaFtSoxrpRFqffs;azMu3R z$E)&I-k#S&)z`Y|k6$x?psnLQMe)tjEx+a+#qo8&ztFz{lfG|6KyP6hWxmtN@!*Eu zI+T`)BuI#Y7%I$~+Kkl9u1Rh)>4M*aEC{D z1d$ND7^*eyLLrJN0+4rdgEoo3kz9``07>HcX|jQS`ty&ctD!_}SL35ci=o!(vLfq8 zpFNtNbQhDo`eswd(Icuk)2_|Os)-1N4b}TDXO-Hb17;mYj}T4p!lFdP+}Cjw4GT*Y zEMykuR8a{5p>Qxa(&{(6){fWn-a+lHtuVKikUy+NkK^8eJK>>xQ;F{_^mmM}zn9P- zzlq*U?mhTm@0pws0RfRichbeA5{sGgE{S5yEF#Rr!Yraf;cgZbbs8rRxFajEidQR6 zX2pWsap-7wP^~sj*4oWp+lCI!YWgq#^H2U?fBh^Rac8jj2Aql#h<^OV;_QpXm%qM{ z1wEdhe0hE`U-G=q&wsP}Y(6hNJ-=FaEDs-bBJ}C&iNZ|6+B#{1BOC;H7<|WBjkmSM9Bslk-gv)M z5C7h1e{N$-|6V2Eci~3)K7kC~M8)1N^tdgF8KBlB-bAe-AcexwVK)}i5MVJkp3NjP z1?^hnrqCW9#O~2`5=3p(y9a7PF=mEPtS9op0cum=J))X1vo)g8U^fuww?8KRU;o#C z{>yLHFTUICa={VdxTUw9+K6M!dL5?969462eKB=ph~ctc`S9`MlZpLu7+yYG{g?mq z&jH#@wQlNs^u_T6+kI1qQK$G-V%JYW;GU)FaG8K_I#=r&xga!^|Ri? zX_tJZ0+P%`0U4@o-J~k2%}dsKV5bva1R?yX7c=UeU@gcGL@-LQw-}Z zm}QxINtdhPCto}shoRFV3=0B4A_SCT?$P@HBcfIt#&MXc*Rq|w)HtRIXrXJPAr%%? zp?$0UfwC+J!PF3^4e-aiEZi>Ek(=oaI`X}5{sX`9LwEe#DYp#;{^kc{_g@fzLA;x9 ziamwlo0lPXT+ERe^U>M)uEgc>`}F2%=}n<$CKeJQW(wj44mU^}W#ixgH{OCha)p_d zS%~;e6rCA)P}fmP2@qlyO(}_}6cc95vkRjbjg7w56R|A&&35|juV4LV|H&s`e)a07pPxN?u>9t` z%c+!yXY-$Z{&3!>zx&OzXx%YD5~P`$!}csgW;RT;&lnTIVYHigzi!KW{s3OQ3*hh1o5?eTSWH&i&B=Urxhg^NFaG?KUwwV~H@|)M z$Z3?uSWzSQ=!r(hlPNYS&8^9_MVu8Np9NvTVjBD%1@W`(?{KZ@t2?ex4-%7qX)C` z%kiU6mp}jX?Em_I`>Ig{aByo$dHLP?$>%4vMm|ZWDX(g|+ztRlxLW-9Y<>wLTz1gU zW+(q}^%6^v6CLwpQMH!0Rje?m3IROi@lEPW*oP!Uei@vyZ?Ml zK>$DUCRC$e5?PAseh=|QFjm5o&2l=hcN`zYR z&PE@;qenLov~LRCJz}6WT_1noC`{hb8T<8y@LCLgOmE7259=;(h(Cy<^t!~~mdLu* z#=pPBWB<-uSy-4_*rwRibfOeXY4^IhHvm*nEgyEKw;#d80PCAO0`DTM@S7BDyBpE5 z+F75+YQNoFEi}QfL0M^eIZU5CoIn1T{lEJ6UoB7cxBuhiyw9KiZOdHsHy0N_ zs%QWCr%yLSJ+I?X?V^tBVNl_#Y5NnL6f2MV{^jN7C!e3rdIj*=Cl4Q-H)Gvi%lS4rFo z{3f8of)IkJjd=K4k`4)>d-lHVwu}2iI$tZyzVrCKjRk0~-}P&{_vh$fYws=eyX3;1 zRRZOdDID&*`co-8S!cpH9i4?3#PM!yAH|Mjk>pMH@3r}Nbor9O7-@iOhLg$-dyB)tCtF5v@oT$;^rPZDDjU1yhRxR7o3SU<-99fjUqE-Iv@&JC$`U z08mlg$!XEc&rUx6*U!Hj2YWi7{qo!MoJ1)8>ZhN+z!t!&PV*$6pPjuNHdiP)KLqgj zWcJyESl@{u*LxGnmthP3J%}K+Rtvb7-aeBGKD_|C!7_dUD))d_>0FPb%D#DqW z-RryD13ubu->~4X)e2+J8-Bl?cNNN2|+}#{C?GXT$h#*$+cG=k1S9mx*L_vx>j@+ZS#! zdVxTdbFZ6Pucm>W7LxwOS`U-B3NK85J-j+$J6)!v{O#4a)Qk#n^eTx$6Z$R#NXj`0 z04fl|`PI<(>E-3{^rP8lXY*=ty6m1T`)5yPtLIyHWU*jWLs)H=PgDW)sb=+U;ccN# zy-n>1;y#l{0f-pk-Bca>kl+}=M|*2=fVCdQnE){vQiH-=qX47IKS}*$m1b%yjIcpg0~?5k*mLq3Q91ETtak7qM0ez_ht zEB~+liwA%64=>IZ-M8o4&mPUcxwu+w>U@>~Th3=E^S%_Hiodwn!u>~2mM>OAp6S2* zXP^DeFJArTtBaukyVO1>7LXt&QQiy=XI3twIjEYAqhasBmuYX#W7inc7MO^SSPh$e zzcKNEZeYLKUx!-bYwB^VBmms~K$CH=1-TPZca6i1BUbGXq&{~K#(PcN`ChHeI~#vL zi9fjVH_v>4cu*61p|$|}gR)~sMj>vt-lLWHydp$jO(iGQa0QRBXVdi0o<6!-Pjxba z1nPS75#`UHJpR|uU%VQ&?JN~u0VX=>x@AhAKb&tC-HWRdmGvY|o6$Kc*{{Dnzq%a% z=}#X8$UIQ-@HDCNFkzNcmk7WxnWcC%n-z=8Y5dbCkCwCa;~y=5^Sc*GrR?LAQVp=n z4YFdY>>lve$VP$2D_UBys~IW^v=Ib1fqisS!j4Hl55HRn9NpF;cMCM~u$1?y$$vk4 z|9zz#Z?o%%cON|X`$_z@nWy{tSGNc~9T%jzHA(Jvg0~3$wFxH}!tVIrTbh(1@$Y)qeKq!QY-gpJyG%Q9E6)$6@sCW-~jPFJ`*z zW&GB!7USrP$MgP^k50dNz5$I%!~*A6rIc`s&13+oxyNosSVV}#9x#|9YFL1YmAoGN zPJ0s`w?cUKzv)dnn_Do_hX@;gxT85g9N{-b{5?M)aM^PSpNNL*w$$= zlT6)<%Rxv0^pFA8LptbK{7-&z_TplIQO`V6`SF9ZX^Qm_L-nUmI)co51|Y&^EPbbs z9?Ykx#Y8lwV)J=-x!Sy3ulof*@$U0SOCfxBu{rI!#Y`_ZbvB!UsZ%@zhRLQ9)wq<9 z1ao%_A_}9imYh3xcL$Mj+Lxj-8Xu{Lp_Q~E!il6+{ddRpbTcB>n+=mhVeuwD{0?UpHD+Vn_gZaz$ggg<@y;BSBTQkYA{i_Ngiv#+0TJ~^9TTun~?K>M?0UuvDr z^Q%?KX?l4vP!NC_>m}PbdhRnj7W004x$cu*tjlE`hjm@f5|!A-6#ex0bUBpbhTL_z z!!+4?w5~I&J{Gd@HXThxEsR+Y0qX(!S0)e>>a}Q*HakiY4JFOBR93QT@y2wf{R8E= zS13$x{KoGQ5_(jxy}9=9caDhI4d0@BXN?Yy&GmzNUE+6o!0)p3cbNI+tm6$@5<33U zJFZt_Qg$%15(rj9b65cpx6$(|5^aFM7d>}iJ)6y+4bv!E$IVPSB+PSP-7f2}-cDb>ydtF+n{~%JNkHjpDnI+t*?OE*qzBwQ ztNiHc$-nvai(!}^p3ag|qqWEygm|><=9Gi+sO$gLmtXzQ9)9-AFJE1F{j<*>{`8}> z|L$Ku2ar1?rPI0223-vfcPVC0@H%Y0m4*EU{mTKeN}dAob_ zW;W)g#NWKfHVEjw(zz0*4X9p3RfWrc51lJ53NezbIUMy7GsA(k(Ps z4-dNBOv1Dt%139jUuPMoVjiD9T5N~9nXFWAlLnM^*$aRPwv{;T^2sbeJnbGo$geIZ zH;fiV;Eqlysm@(XjpEvO)8&;F4^?)HQkbRe9|keA3P)oe4U`g&XzIZcgP~>J8ibH@ z2f!>M0u5YubCv0xcKR^%dtbMGy?{#;7CX1(H3r2Gr8U>I4*WfnNC$D>N&KDSelYWG z3uAhV#J@W{z3oDFGaui%dvXwKC>&u)QH)4HAs)^`!3S1Qih%71Y*~lxbg>@Kg;z#f z#z{AuV!QAJUt|LgVD zFZ{wZE;g~~2*5P#h_7rDT|!ne$54gXGE+4oaRrqrvF@B8p&$w65LHBAj$s?x$K=Hw zVPPJ#PKd}F6KU+lNK_bh;8!t^sBxc~?)Aog;WZWU4!!EA3g5A+KxJuN_Fr7q91Gb;(QF&0;$pDl>yScvTHRk&x1kAcBB0dQ?Qx>VT7n zwb5q`2{KNa1+z|50uY-GCaWI1Y2pRckmZTQ)XMb6SloT%_s-P6UEpq`W_cTdGBLu5 z<%d)Q;!T^(jp>>}d%nzjvj5yF@z-JN?Iek}IyUc=avTeK3si`?jbG&(eX;CgwMm#r z8bx`uFVftIvAoT}HgiS1Bts;STM78ITf#o z0YWi%4`VnWS*_S{0C1x&`_9DN_kca`m@4T#q?~Zu5ccC*FWqa5%U;Zm9Gh!MY23{T zdXV_L9Ghmvy>$)m+fa8E$|KlF5I4OSvbb(=I~p$)h3dx1lc-fEVQ?TQ;#$>+Sd_v; zq-8x&YbYx*g>i)Grqt)d03Z|oVO5^a`_+2tl$U)vUvK~FlSlvd`Q<{pSEF~LXNg~J z=bX20n9BC^k58Yki$`4fYE$BJ+&r8w7f-vTVOxrrY{q(3&(CK4YM8cT-4;LV6B4Gd zu<4Oz06~H#Q(PvGn!{~j-!oVCLj6+>*t%bkLM1=5|oQctO6hYyjNozm=B@{;8u`@BG zwIdt(5%u|pJq{Fne24hZaXZ+XQusaVam|lEGSj>pcnZYZ34`uoz-z&?IB$E)dbgaX@fBA$>lCNSv9B7Ju?T)fhL;nl@1Z5;HY1v=z^ z`}M_YoGPX#r;F9rUarPk13)z!!=z(!o{Yv)fAnM##Dmqpefg?WQ8BXkyO$T$;^lV8 zy#k0CVT?`*2y+M{HJl*PEVm~DR%9o00^AH{SZ}@WI3*fJ7umIVcfD#-5e(Z#u88ok z2m#DtQ8@r1FELpt@9+qH(#E?q)d2LUHGDrwd>76hdctlN1CE=(=#61{cN^lP4}6$F zS&sBd=ry}8_o`XED{|dWt>fd3k#1nFuBYqW>#mMFd%|m30|kT<4kCqXmzdey4`b+d z&)X0l0aOrqO(Y0%cMn)Nf%LRb!=x*#nIdyo_#(^0S+0T8KD`{v9K8@O#?t3JR`*#5 zRCD?$bwlxwAI<(h-@F<}XYyL~@4qXbd=Yqv%TM1Pd0EQaE=#(T& z$~oM4u+66SiO|Vpu^C|I!?>>u>@A!b%)=Zha{|mmm`n9(42Qc@@d!{(Sf&J^RBvSO z)oiMfg*>pEImNV#lIggS;O-j0_n)Bm9v?V%k`F^1`PjSIZyg^>-09l6;#)4}Rzj9L zul{HUd$W%x!lw(bMU{oAV#mZ1(I$(cm@_lbk{MjQ?JXx`_7$TTk&tC$ml%)%Ya>>f#JZ!g)(1duRiiZ)kWcoziwA7gmHKL1D#Iv^(l z@+O!1I{S^{egX$pQNL@Z~E z{ICD+{OQ9k907g4suM}s_#?>|t7)z|PDnGKae6rnS}8MEL`q!Ysjqe0C6JMZp#nw{ zR^ixOImLFC*>wiDtqG=~&vMe6%$98=;C4Hy_;%zHOi|6LR3;Wi1*!$$DRpt8?y=h? z+-b9M2f4ctEQmSpgozMQal_2UYiQ62XWpTej_v0mcXZF(4ikI0ur>hFtxyPgUBvlq zf_}VN-DTR3W&N%3J-;dOhras{RNrW!S{bg$Z5JW|B19k$ccQuvJ|oX zl1lyj|9(8~B{r}Ncn^Yf3-UX9a<#Kpjad&)#XHE2^DQ0wZZ z)ExS1GyN;}aj4NNFlo~HgY?~&X55dH+2E3Nk^6`OqV-Tee$Z_vPIBQeIKI6sbL}VC z!$tb?{A!Z&Xt5ZFEBAOXpKr#>iEV3AwPOXa=(Rudamy;i+-)ZVuo~1Ir3R2pU=C3^ z?Fm?V8!1U}$!?ZrGZyLma_x73isKoZRO4E(-^p?iUciQ-a)AAwkuyVBd$Tcp@r|o6fkTn;t z97Iei(xwNgO7+^xmqsomNoD5_#cmKrg>w+1O=yGxN~FsAF!NmJAL+E-Y|kD4^wIpk z->$>3-j-UT&v8D~6me;u2!n?Jv)UEI#pUquG_&J;pfYUQIN#+A;WZ@XZZ_cx;O!L1 zbiTGHr@aDG^-n)uUTnwAT!&iwT9mTDQ}?25*Q+8bSF35!<)56L{qp&%Fn%~om(v8` z`Q`XmpDe$59taWghF?fB02m6bhhQeV9uPweH1-}9a*|pN0MAb!_OV@UIpuM5!32;v z`HrEH6ITF3jd`M8Y1WBV3^fK3b-wNc1`vL=E^QJx%vsny5JAde5gt3)lg5Vq!MbXW zV8yRP(B4E&+;m#-Zj1hQujUYpejw|9Ebhd_Ona~X+HDIPr_FgpouzJ?N_%Gw^J>Bx z91c&SZoy0%dy>q<3^YQ3Jd8j=jzBSI5D>LOmz{*!`8cf|0Om>m?9sz-w^OhA7wfBs z)}2qQpFfyajtZM4wiMgyb7(MkJ*UYpx9izVo9lVfbx1xlDMbb~LZmo}Ba-!_X;NL>aA;ZAL3wez?$=o6UM1 zDs?jzO+0J^qFHP*Ii00qQOstUn6d0zz{h1DoK_1&Fk>;7B+)4s(@oFq{x?(NFcR5p z%p6|piNymR9zjzf5W|dAh*=r#VLL8I!hWJRbHg3o8}iVk zxv@jN1qO4RX}KY;0Db>{*_|q}TzgSJz^*elp3s)RuX`yM_iOOxal!aa%&kwCw!M%b zCvIaG9Z=K)nY6)}fdmr?*zwbc;J^6Y%XK9>)`9rK(C=i`vZtp|8{k}tiydO2_x3qwThlPnhW z-IrJ`>yv)*{DncINlclLl)ne7=h!D&nM8!mv=72{OCV*Ch zumdc8MmUS|G`X4A5@rs{&BYlfZytgf5vYNwHK|K#^#ri1vhQggiJF}iP>4|MCs+pj zUgLB5Addn1z^yhr1n5o4X89fna?Oj7Bvfk1wlm^ zAfbh1vtXubUOgBPA>Jbuhgy48Vl8H7wYoD)qxw@OBChVi1P`5t@~rqLNlEIm>mSZL z07=EBX(76H4C|>|^fRA+GeF&v($&g7d6YEa@170Hi16yp4AT(yR~vqG#)QdgpJdz= zp3h)~-DxcK(Ney9UOxROZPuJqjwt{1lha?lT!Uw;GR{wWRlmS6SRH^<>%lPNp2({G z#h;#i{e1P8|K!0pS7kC$jbc#@!m-Rf3Bphe6X>Mf3ZBhI$1yecA7omUgg^|kjS&=SEr9uQ>qmr#vGd!c^yAFJDX~_`{xh( ztIOfzlkS`6YcpPSX|>&M(LI>xax(#tl=_a=Ywu^$B3;0~xhf0QT5NvG=ixaGG^wau z3`1VBGfsNG^blgxSXZx8lrCmqN~j)e+zX7uz)K>}`#QjpW8kryi`=8OTz;Rz9V)t+ z>XI2ipTZ(m1C<)HnFxbfg|+T@+j00RcN44sE#r0!WDoUPJ&=4G;2N12=Q4e3gKNGqZ9S zs5u>~3W2mpphT^qOU)OhR*K~EqqA;PO_;yi8h}wyC(5}y)%44Y^(Tvj2ZZFqCDuG{ z2C_n(W&mTI0ED}+Nz(I8d~-GABx*qDWJf$jspw!9+BLSm%@_bsY^=L^3}dBESt$IPQZXDj%q5?9J72wxB4DOR zr^<}g5Vc~MVwfU)*Lfq%Ia8?wXqQnc2tF0skzX@Z+hA9ocQTb23L~6|vSK@i`%dfV zLu6WrIow&&4T*nGDZg$eei!dcJ`Kvp8Vps%(MX zL^0oy8x^+zvw|abEGaAk_t+7KFel_hb#jD*EkZT%j#!p8rD+(Qf(Zf%GF?ZV=UmJl zFVo9yT?jpxbz1Muf7_DUF-aJ&(4<*I|^N#a9x3U z3<$G5Sk6`vv!shordo{avXie~4j(^Q78?Xw;TGJ9&e@9-fR2)Rorb#FVtInh%DQN6j~BfMJ?WBW{$@QG<{7@|J5b$njHZm5k~5Ph7%&-AgmUyu)ln^~1p&22 z(}%5xfihv%2|BR|18j0hyOFQH&meK)B;*m~AfZlqn5-?;{8J zD87dke}jVMohNCteXqU#gjohNP^XtKug+gwkw*}!D?^m2paw#SExeftbLU_pF$*Gc z1c5zVNhU8IHC)6gYu6?twV)y-U8A!Auvi!nN>sxbjl*3V2to-pAcTPGx|jwPw^O0V zOL=xt9`^P~`(I*{MAnmiank?d+2;TB*UujG-HQz?)0Y=h%~QYR^_Bhjp>BLEla+$p zA*b2XS%0E5KhN(XSATN)YO39)z`=De;#qx9} zgL2=K8LCA%rif|s?PRRFT>8_jwOUR*%WQ#hu$)CO_?xu!#b-NrNa`*De4s zV6&}*N#dAiFOHODp$J&vS3d8C& zUOr!4ZY*j9qFpql3@QK3|MIJ6|I42~J-z5yc}|uz zJvo{G=})?K#jEee^~V3}fByJ?`1%#O_Ddwe!{}d>^FMuh`kRaOr=oxU>Dlx1^>@Sc z=#jp7`_xvI=dhhjX5_*~pu4VLRc@^Jp$tm$gp{pwIG@=NBm9_4y_J z^Ur5!-6_h-`J*R&r=26srKpX?{XHk(&|cG9r}8z!CG= zj{Sn&0dfy!Y&P%VtHi!j{+>rGV!S5eZEWm54G_%eJ0W7>U>E?0OzW%FYO}q%1X^bz z1llZmL!%_2Acyk~4owbFkW(myI*h?Y9591};0S6VDxpp8fN;RTtSoh3??dqD=B2VS z5W-oMBMgLMm5D7li2$$)VppyK!qY{LsJ~g&XY1{0?p_W<*QEzpGRMnpo%Qg5of3(-!>u?#ESdOxa3}6kC{KwTWMJyKOjB8}x7F(BU!0Ca z6G1g8(=s~+O{0DC;6y}zcX4jvmTHftzC$EjANX&QsF2UtMi#B5H0%>`3sHa8{ro%p(w8%kq>lp{#? zyBaLt422IOzM~Jj4TG&3IYSvl5=hDuD3uz=mFXHD7DT!}e>Gj6PmOUI0T4qF2<*n} z2s2ab!{?zIfgMhyFrbafBSwV75kzvBR6?R^X2&;M-2q6rHa?*U5@t6D0ii7qt>i8q z=0;HO_WogolR!su0MFLbj5Tur*i6&68=|0XsUxx~uQvt2Z?>D+jAxy$tNr@LRuc`? zuZA+Lt2;HuxJ9oe7$J{NQzlxEF^=9%qlZgMFJG;h_+*wV*oc{_j?Tmt>Crqkm(3#9 z+^KL&HRfV?#45S}JZH*jGi(6-`A3hv`ZwpbEx^SV%Z@|@0o`L9i5P@U!R6?H?`Fpa z&oeG+mzk#Z#dohZXLFg&XIGnX80@>VDFwQ$W_~i$2)$TO;r=Ry1*I<@p8o3cq9fL& zJ~+wqr1P4juaEl8G|j4W18JjSsy$|z=6Tmtx#+oJQ4fiosggN51;Cesn8UihIyMDv zwHVd~A_%7>$QpIWZrz}c*bKfc+%Ez^DP$H_BO=0s^+0RK5x29synT9#Y6H6N5}l&l zXR1cnCw8mngD$Crasarz8rN4ZwyPDqwQC;eJ#QetmDn63yk~WQ*#IIF1bK7#$@i_& z4D#5IX>719K+Ga3)g1san8c!z!9hy2o0Y*(mg>PEC8^Y=&XDd=8y3N=fGYr&PEd*T z+x0r99BwZso@-5-*ORZt34}_KL@rn3EEEZ)dS0YyDwKIxncs~2xYBT2yV1iF|>bhQq zrl2m-C(Hh;^+cS{w=hRyKOa~nItdRKQGo+6aH#;;f=b6_H8s86y=^EQ z?(33k3?kGgR?)4%yZ{)6aDQ#i@ZEDlMRrhFKzD5cv0O?sf-2}!^U8g+sD?$i(eiNKEgK7jB zN$h9jX<`Q>LKBE~Wp{uYUQ|XVI@`ZUZ zdz`w9shswDSuwdW;X#)(r3xInxKR&%j4WdBBAL)&bimkraV92a-?;X zPx__P)uQV(kSHl@z($K_7uzR&8n^Du>oWSrr_ed)RnJ`cq{s7DHdf6048a!<`^k+& zgJUz6Bs`zb=c)UsGhfo>)`DnTr5dTk$N}(B7~s8SYJUQNT4Zd$e)008=ZA|#pPe$L z>U6R8*@?!*^y+deDR&Q(N(@uXJL>xcV7ngbV5?2}s9&z@WGa_FIee_OBL4etze$xo z`?&x0w_ncs?(}5-<3|sA75BK7`059_U-W#aA+eVsT5T->ho59+?A&e)G>ex)7 zjIqKx)Ihz8Bxz4A8p5<5yFU4{$55EbN{LwyYYk5=few_QM8OEAs0|{9m}hk9xMyc4 z<;tjr>KF@mDO3VLp9ny|1BY{;+=9M+zIyiC=aU&h84^IiI_*lStwX|Z3?>RDCT26U z;1C6>gTS<#$rjBysT>4Em%44;q9Hy=$ipcTCxDVjskA>QSwM(1Nu4Yyn>&M;p`hZP zG*f_tB0^|~%@_j=Zn5T^Q4=hu+@|(^ev%$me77CelO;JhRs8fp{|~QL!}fYh-4>6i z8{+{Lit}mu;z9n0XCrkqOH@aDw!TtL77lQqiJ0dzovzB$)9!Sx|N0*;4G8lU>TH&l z{j4~h4=x0E|K+QTzx?!J&zy5td~4)G_{$Nqgm2F;|77-PaQW;B|381TlchwlEjPDy z2Y?yxp8jc`#I6F9BOX1NXNg$~NqV(e&wK7O>lt5cs)}4*Zcmo8srtNQ0P9WdL{3j< z9(a1veY@%9qUZD1c)n(4Hi~_x zra6<>qhVv>IB=~}5Zu7Z0I63G_6AYTnTO)2#LUca0&_U}t{;X%!r>tzW;WTBrDLWp zC#$v1;ci%GH)o-UAP;3mpn9~5kRuR)!y=R@fHnhXCqS9f*11!?7`CMOYV;SyzgtgV zEKXN-9FUXHu=Q~hXOAU`6tjkg-%Jxv{OF@>W39D@yUgP2i%C1)IHvFiS?5X5H+Hg& z^$^8k-m$8F@+AF_&o(FX+2qr*=gQ$A5N`)0(I9)}^$X6k99_%-6fcw4ta+%hGUtNj zDSq@+e*4Utc{|$N2|!pd#YtBlbfZnvqN8o0)n(PB?tU@a)ntGEDQ~Cra#c=y&ONh4 zE!NGJW;PDvT4zb3>vf!b)=?5-qVx6Yv(wXO>&>dx4tm;kSF1XCB_%ET(+3a#?wgA_ zPai*A^inp)+o}L~GWVdawJZS$W_ZeM(@+Tz;ov~6jy5C_xEwImm}>Km0AMvlC051b zEaqX7TP~)Hsc{dRWB@R$j(MhuG`Y_f0CU+6!x+mB%FXZ2%7|K8g`zqX-sE2Q-9JVg znG2Atj*=7=ZE&aXitysu=KRZNK`gHdsw=N057O_a(vuX3QyqrTTRRD=n+3#!foTZPe%`_BW zS3@;UQdjo$!R%F;x*5;GKYeoc*V`8_H#S!~k2smCs{=wJm#Yz+RHC?~Y(CKWs#d@H`6tT`Tx>k)`^)VJi+SJIS^@mCk3LzI z`pwnVFqDT67OQc1JfAxvD?eUzGRotAc{yw!Mz>#YdArzDG zYC2?T`ZU`cWGg*mq(p5pqx+0-6SZi~^V(Ou8*jEJ@_m zxUNnMVj{KbfB9tg&6dq#p7r_V7U;HiJ!vab{(AGuLW1j~v*nrfk5Zq{JR+EBTsuy> z%k9(?KcDKfOMrM{yexP$&l`_LFOR#f%PBZsz1mE*44d-NqvgY#au%WZ?bT3Aqz;MG zX`1Q0JXy#%`eqo;az06Vbu-k{Y4vHhp2p#~FK{)DPv^70|N8usN6Tt4&*@?_oc6Ph z>sa)~R0KZjI3*nh1Mui1uRXSqh)_JZ2#<&*^8BLA{FHhlQOF^GcP(a(i-gU zsoRnGYSKOZvKY8nm;+WxycqX@3J=xMsloxDLfkbeFRM>>P4Ye&*FaJd3X8@HvpY)V zu{eMlP{J0BKnYA1``SWunK@#XI1wvh>qr6(|J|>?e)jAF;VpVe)F=oWf`LVa%trz% zxa<-?oE1~`9omf?%w$kdP{09cGTQnZ8=kZ2MzxAP|5s~q^wu2bAnbzOmW;|->r}Px zz&k>xHpe-LDZ;7;q1B8pJUF zm*m-%jnia|tIfD|`~1<#Cp~{RjK$0?ma0_gbjCefaoISND2a~bTZ(ZC0JFaP>QyNP z|K!1RSX$e>DqsEbqjY{YqcMU4r#UT8#F@Xk+Q8?=J ztue{RCqltry_~@M_-ygn*}`DIz1YwU2+t~gr|#To`kV6?$_!u~txJPDmicUvx^A?R z#8>O_moKk=dwJz`ea4&Ly?Xh4jLV5MDGQItyI^!*nG#K+iJ2D~%$yh}YENf=GEd7+ z&U)$+_lZt37MZ)O%#=Bjwv$j6&cebp83RzlT=(O1Mqh7jy|s&tU5vhUY<-6a0I>Dl z3qNWnnkC*kE)6d$wvLO{@QZ)*o0rd52xC$(aTafs3lW@z&1*H=(NaZZjij!D9hDU< zjz=g&P!KCKTcB1KLN#YnCh_Y;e_~<~M46f0T$EeuX`6v~C~mMw+lXR6`icq4R6!(+ zK(Q$9!&uFuxJ@>daBFZPLA@9QKo*cQ;HRqJ70gtM+4IRig)T&+^Y4J6*u2B~B8dH? zCrkcf++4_ZDo;+jjj`13)pq>Fv(0ig^B@J*1yTKErr*8-iG1;-n&lf}Q=R(JpC!F;ua1ry7c>v1S$woJRg!x%&}o+(8Zs#gB|BmL(5tBab- z=Hk_>^3iEGl?livS=WPIRa;E>;z9op=i6n{&(7v0=p=`xzL$7((wS9I7OEB!HoaKY zXJh({$5yNYd7RuzS#Rqn57MIRm|`g+;K}{*JWo~5w7*>2<9@NK!&v+z<+HwQrg)t5 zb_#L7m~ge(JXoHNH2wXrp8rms|LAO1$A=G2`;%o-@)|s2>r(|Vm~CAEwBG=X^pJNj zFc8JU9bvVCCujHTNoUM78HNJk$O0i+O=NN1CD*h<3Bt5P78O^*j8OxvI|9J01D=nn&8eHG^)zYL(~s0` z{A9NHW*9EE8=7)87?mz5xsNW}VH_-CN-S<3SCc$k%I{v)AncHv%A4ws7X8*^)@2qg zK6y2l84sH-^K4=SaquJIOBEX`^=Y1YRcuw_FTXg!Q2yV~(t1-artzc451dR`CM!|F z7VCi3IGLqIr|S`##I2sqbvwm&tY>pfQ=QFoy&9g(XD^0HG_fpJqd!or277v%H_#K% zVkSe8>h@_~BlG&234}V1kO8$K-}xp^F0);nF5(LwDHbed|y}OjFDEM=(c3pC!ymn5xCz_Opn` zZWuk>!DJqZse0LOJ0N&Vh&H+`W$Bc#O!-moUu|ov9ZqIRM5JTMHHNP@+shiuZt>(1 zmw`=j`h)?C!0OesIAs7|U979(TvZ<)r3ceZ3arvn6b@zu#{D zYI$16t9~YZ?XE`e2o0&nj`pGzoAeC|Ibq*a7K#Sq7;je4 z%wtt!^YZePr&zCt&CvJBBRXPY3ilRNsBp1HyN1?G6eI^8Afd)-NKV%iI0+O%@GvWl za*j!Zgvh)=l{ru&np#>w_v7B0d&bPMQ<~r;@Ce~jj0wbKwIU+iybXT{05MtJ%}Hd0 zIjgp&J|?QAD1ejH^%6<+Vt6%I8Kw>&%z z;67!0c(_54NZSDWEM%05NcOBpJi&KFcT z(^Z`oF=NsvC;h{d{@MBP^g%BaV~rQjIEz&$*yEP6Sc z>;L07S4-hqX*<;b9?xeEq|E1=ab)79UaU4hel$;s-2nH2wvYPm*W;)vLJ+2T$HHFB z0ojiAlLvX2@a$^yd}}8?{|~=-ac=%!{`{$=*EfM$%DllB;g5PM<2Z!^*tod+Y8U=c z4Oqx9dI{%173zeXA`z8}0qBL&Yv>0j0OtknQDj%LO@wJPb-8@~o9+2GFF$?SFF!dA zAZ3l#oV=qzq1OH%fe2y(A(*&$(2m6OAnvGs$d2yxqvWox#z zay}Gh8ACPAtxmhatj@XDF9K`#rPkT0JY3GQ*~Ne?^TeCDIeWc}c~Y9?L=0%vl53jg zF`FtcSx!le^2Npaxlh6=dkk6tJU+>%T^5ER9`@RGX_&Y%Q`1o}8^hCaXHLB2; z-+gm7J1wMH6~NiDYyQmTw0C<7%)6nOMVRkwb_r}EN&twIC}H=H1(*XRA_<)k0Bk(w zOl2Pql!yZaW2`ufZ6+G7u6mkIY1Th2zucsc&ho>h%zGvV6S)Tq)oRvCHlo#A9~Rqg zGS9B~-Nc<(l&D&3fNwGCA$?rqBBHM63JDmG?qpq4nhDd^qXmpFZq7_+nlD_Ul)d<5)YM zt>l~Y^3zY|pML(tD=ijTm{!}m9qMK~c^Mv@b<@WF{V$&NvrfA1^Cdoel#Ii z0X%)YSk<~rQY&6gv|RQ{FWOriA%-nqs-*BcF@03|tl~qMnQ6vbqAT7mgrJy2>i2@oW!NLFQ4PB-rq!x_J65AJSedf4BIn{4tT5I6^j8*$=< z59VfT{gzvs!ZaH*w{09p3c+)>ssOeZoWiY5vqdOU0Fy=B|y!Ckh!yAxh}L+I~&FbAUGsIGZ}n& z2Q_H`0ncXSz)BY4OxZGZzg4 z31T`op{Xt3u-_H>xT{J8ge>(7>GruYyE*OmE{(6&6r#CvU`z$ZK5NOYj8I4GyH=R` z6l%4%Y5kb(aGHe3y%iHQh)Zv4Kjc8ZeEO+O`!LWgSo2(A^Q1C zJRR(Zhq6SBti-GOeqRUE5W~Z+GSmHIWu~XyoQtN``*qwj&1$t8YVM+s)gMpRCNjhQ zKL6x(|2W;RYID7AhFPrugcxYMiNY8sFiX?W0-|z9(It4o&Ut*y%klrCtjHG8_H$J8 z63KBcjX=zB2T09h;3<1xF|`UTAA3?35x{d&;RTHYagXle%rVETB;KhRw4Xk)2>6^G;-14 z2L0+HemG&%d3CCmo3 zyMbJSu>0$6zfSo6q>&JWBhzWtRl}RUdA&|kvA=yk{`nW%-AOmCY?|=x{n&M}jod`U zn7-LfUtD#aaNF`cNsRJx8w0VL6LX+&%(e}&A(@J|4L;v?r{Zmrq3{` z+zs_7S7|pY4B2qME1z9<$Dt~D--P{K#?comLKEq5tZ=Iiw}mf{b1V}v5fc;4iO!%g z{3pm%CORMaBA-@&5LRC*a#~b?3svl#2IM5XTq5iMxhH6qNgb}l3>Ims(Yoc6`J}Xta+R8)`fvATR|9~jEFVtuA8oPi!wa!L z*mifPb55;RC2X~($bl(zO=^?}Q!^6slBKIgx_UbLVbW~4?D;g-d8DTk-44^XlSaH& zMxko)X5GELSjFgF3W1^K9MWIC-%oBA>wcLecCjNyHWCqzVVCX0Zn~SN!>mKD4~J>U zH4?8H0Z^UZUUftLG3Sdl5HFZWtWvr^&4bV1Kb>B*Ax66B+BcUCF;{3rn2!1|{l<;!*QN^G%Tg>~O}4R6FRIv#SpdptOp#P+$2M}L~9KX|c5 zpuTO)ZJum5*85{wHL^ceD|kHFQ`Q7~ebsDQ?%TB9HUM6)wrg&#dM5TZ#cdN(AObyU z{^4%?u$#Vpn%3(igxzUoqE*kAo3L)rw%fS^=G9;hcbNaU%4>DCA5Av@Ig1%F{eIXm zfv6fJ2$<%&bSoE4C^$T`;SBEXrfgN(_QnFf&fl0*R zfQy)$S+(joQA5!OI$Bx>3|q&}t7Y;(oBEw!e@T&p9o6g?|X{^V`n#CB<2J18(W zNq)B*@>II6OC-PeX8*(OQQ#%}>m~xY8|$y$A5`IpRY8?fLShOM+>FTYcGLTZ8G<=G z69S|aG4q=)E+mL;=-gvA%b+HB)7aCH1EM)1GqG1PEtQ35mf7g$i%650m+sHxa%XKnp z_H((p3}k-0KmDVhtgre=F>M>XxoB^XbZ62SxU&}UKJd0@BLNTrCmOSFSIL$cnUL90bW4D{;iqDg6Y(3m(h z0${t2uU>R*!xGN1s^@%n27tB+A&`?i!@>SDnR&IkfzLO?rxjx z99EeZw;0Tc9qyH%1r7j;)~aRU0)TjdlI7~o#BN%15)OrzNQ$bbbn^o+R6UA!zvLl91Ns_*b(o6JDYZ?2n0xK_X3#J1(qI~flOX_T4B+1VTE z5?nlPV|cZ0n@CLPL%QhWZpu+)!}9qi-Jh~4UvvTRHc1RnwHR!wRGdo&le8ghTDeN8 z0%=3-%16b-!Ijh??zvN{iOfdo4!x}vTqknjQy;x9)y^%ZP_H0Y^R#rH8w%!>Q)IX7hQO@3V;8_ z=F3<8G@4djH)MrC*bVvaSnu}Jrjzw50H{TU5d&Xr1l2BE32kgryx7RaItWt;A;jR2 zz^KpSH#I)D{E0av|1m1?_wIz>dkR0#9X7QuU8N>)h#X#a?LH3=GvDWV z(t10c9;RW;`sn)od^9_<_)|6j$BEZbCZ*3;v5o!WK1ssN6arC00EDHErltVCI}~w6(`>|yIYw0Mde;n#CD+}6&f4H4i4Lk63tWD&;;YCf^b34_VVg&GX)WP+#3Aus^+4*W6 z+r*b^xmxp8+pJ>qX4AY}rOQrQ3Ujexvh6B#iJ37f4wJvwa;@d6^J*&O|MGXIVQVt$ zKYYE36o{lDyXqtuoo4;RH>-Hpa~+w25+sGt7LoN$(D2Kh2MIFoI<{o(g~=+eIHb4%=1NcAX-$ z4U@!u0Y`s*v28*yhOv*X<7_c;jImTDmMFAdH(;uWk&KB~EpOJ$!jYYrS$KH^ROc9l zpJS)aj{}w;LoEOE&{7B7Y=f!VBO6;z-h%ughYDCOS_>#Jw z_1SI=Cp-JE0~46wR!UY=IsXqzt#~z>syj-{K5AXJp;&dZixgT3jl|-$ZDP~OMbk2M z%g$*fn9@q*Ws_d4WF4$($$}}{n+q{r#M2nWB4L#z3cp#0hSR2%D721znDnBf6zEf- zUUX56detgHdZxenb|)kkjXw=kwZ7YdSzWy#UT?eW6}?_>guw`H*9gl`FIJ_RYa%9& ze6fkSssl}=`+Ys0s?VsfPEr%oq6?U`tS|WWy6vOCxkxearVHy;yk1KR(x#ZC0YV=T z6F!c0teS$G)iG18IF2>Orb*3lCYHAA_~iER-B2T~yR@(R&Hahh-fo+pzUYO-iJSsJ z`=Jt9pJY0DFnV{KzrH>E=I(Hix$XF}i64j4PrtfsBmMHb{r~G<{PzF(&wp49R)MkU zfG?zvQfN|Y4?eBIEr>U@0 zo@|`0N#Sa_X>E@^h6>OnlxF zEP*Bbr+dIn-OLxl3>-@4Ud;hl(`wbKx-FhkA$L=$a5|ByMijp%FBJZZ>f$S=~&r3dt$fS{_gH505o5 zohF?oGvGMt{i${hFO%uPb02xlU6be{rT34yYvmWWlbZ@-cdF~er`gQxi<>3{Y9gB0 zq!^w``DVA@k9?f`em~!hwQHo5QgYs%bgp^RHp?^SXY18r7~ihKL)93hja(_X+cyuV z4^s^cbKkU~?_|pM-S=}+f3fZZhd;aA{^3>X8rrPnc0c{=zkJ*us{-GCn0|ftFy>Q} zxJ#U8JNWc)sQam`+Q5X}RE0P(-!w59XV;u<)ucg@#6CQjTb%3s*>zhX0ABU$yW`Y{ zcH4&(mgFFCq;EeSj-#H&+z1E4q(m`Fi0^h|HY>)9f^|`_RRuGP2s0Ma*|P3`lwcE| ze=HD+AGJc~NH2VHLjnwQ7+~%dex5S<+3gEeBc^57xH-IAQWs9lVQ+K-B=e+JuFnpayoU z;4Yn05!_uu*bg-cW>Yo)qt|U4Lg1uXocu8PDf_?t)v<3wV2KhW#8WA|Aq!bm&)MgS zqF&XfY)0HQ6dGps*-ITACJR}i*?tvv)1ARRmdeF^E@%JE}2R*$vAp_QyzibBvi5Q5`crt^Ocr!jH@>UzRs~S;Bx@ ztwQdLAM#1{Ztzv?CY^F+W^a>U zq*ZnL;dB`0FqCqgTq(4q(r{m;+AKX@*2%|}!=h{*eNzDDj({#0MTu2%hM7LGNB*hCpk=h;HbLq;D3?d!e)_QlBzkhckpr{IQ$+c@mT1<-le%6FEO`-DVZ`*l7zlnX~ zTD%E7SDO@h$ot8zw_$I2c1ucr>X6l+xsa*emu=>ib1q)#cpYlHgw60Qq{99^4$3mv8v4itvzc;P3@eevltp3 z%lJ&)&e)6PjIX9lV&~)kyaPC>6IAQ+YmC6|wv4;nn8e+yY2r}4az&5`h@%)xJTQr| z)>3M%OdMk%Le4p`@NPz6Z)M?OB3FH!^)UOX>Zns6(L|YwYptg-liT-uZBXr5LmSwy zQgRDJ$p9`oUkg%dz|y1$pk)fJH{{u|&p1{B@Y@I5Pi5V(6RcVjNSGc6|7I-rC%Zja zHKYIo4aL8{uVo-LAF|JxEQj@~xn9S0!-;Xxr{CSxhoSZ<2-8%QB~*jM*zC`K_96y0 z^OkYQnb_Z6Hf)9-}0-= z762Rd8ic41{Ok9lL!)pp{&*-CtJEcWzdJS5ZW$l;<50?K-L^5jy;)s!fdt!zx^+9} z(ytqCV5)7T%Py{^OJXb>0?n0TAZ9E<4a*0S%$~SF@6jH=)FyU#N!mI^AFS773_7g!ut)-eIs>=&Fw6!{-td3^p!v;O<Y*bkV2dlpXO`ABMNr-73=KslM8zs(2X2NY*8JI8K+FUTfVAwPoim#sM)T zVd`R7W(EwNN9|hPXPc^yWln2;v+B%4AF0-I(VBB=o45=kv+qb5q3>$KK-6L8(NaGRn$eHiln z$K$uZI$mD)Q9vv2!_AA$b|@sG&V8PSyMwM$cbq4)&^O_tS5gX1^pZ>0 z#vmjq@LWRRY4UOQ-}5a1z&QItx`tJ9Gn@epZp$%CfVrzxaG=Gt315`n5{asRqO&lb z?On_1&v1jY!_^7TId2XorX`+-0D>;v_vePH!$Ho=C1sS|RC5S{h~yvslmDB!eco?A zOec5iLU1ad_p9pM2fpfhH3(C6j)K2=7&kE*@pTtY#Rk7$wJXHu4Lp8tZB)DbfkH@@OwYAuB2Ekw5bO_;atWR@^(X-JoX%xQf zNDbdU>9&;+qPkzUV&JNFd$c~ut8Mu8!!YJN7J(DUgGk@Rp_J3CC97Kda^)ADbWO~P zLH$+RH;H2uCR9R~(#yUZfs z5``WQlQ3ua>&s5u4q2z!x4qnsmaDa?6+*4%u35RL4F$EDR-dc&O_*l8T7_)3pUUoJ zr4$%c4FP?dO0K59h-vyuK0N8m>wd`k`Dg1~ZIwb2sanV4Z?9KOXi`|jPr1tN!R*Gb>gJ00)72;&zPy0Du5VL_t&o43?$r zp#|Kzbn9z%CnHsdTQyg!s00v5&7d&%xM0&=0FFR$zlBM)5{y6P&zL)4t_yLFi9|%b zCJ{gcWbWKc2jIgv2f`Pd?aMw2+I1Uly0}gK8J&l$%7PH-q4~P7i=R9-C zaFVfjAA_0Q4zwSwR0nVx6bcmBK)>71-IhnI>Mn_T z_RTtx@=eEwe9j_yfADppE^@BANdiDb4wH5PW2Il+mRhtL&E`!Y2Ma;nH%;uCln~ow zpunL$PJTO#7b&DfyqKst0O&b{0IC5b(_Dj`i$Y>C&1ZIqgbMU2Xc@b}RV@V0igm+} zr+Tr9)PjZI@8%Etavc5DWh0XQ&Z~7Jvhd*?$jYVGVshQ1ZwLUJKOAQk#DJ%hohEyI zmHKt#1c?$TOk-W9LuBOUhey>}<2jNIAZJ{KX*I3xZd#XbTCPfjMZNR<4mQ_CD7sWLPDBJ} zB9Q7*9;ve$xoXZu)p9j0N|gX|7|hAlj1&aas%)sHs+GX-MWJB^Q&V5U*36lS$zurB z-Q9}TD9p3%0kBIK+N*|D(`B1Z+3ruiY3ONwGLM0YnTjF={robHs`s-3NR7pWUp(vw zn@^>F{bXbIU7k0Af3|H`frFt96av;x)8JM}h*m5vRu${Omx+G)ZZv1FWtwUoYG5D1 zokSwq5B7MNlHk`5riN?`AO#`DZy(Dl;^n3x=F?O@9tVXB7W0j{^KPnbkf}Nmw=FAb zbuulbmai_?fvp-v;lV1IT{dkt-?aTf>wYRtBTb--&FYh5Lsi+!_xp)}Y^4}W>i{Zv0Z&C{H#IirRczIwAwNtmhanl{POCXX>3O0Cr-auY(|g)GrrpPKb%gQ<^BEXFaGNO&;MlGh<3?}QE;11 z<6r&tJ9l%?_un1>G>tS(xZcY5AE(>Lp&C6M^_Rc={<{zFOD?(AtFApwxtg^pfTS8O z8tg|6QA9!;$edDGgq3xfJS>j0r5Wm`%lu1zq`^7N&+lLV)X@CYIwG%5Q?CRvuf>azFRx+&v4fn<&$upG6cN>lxN3FOAAzKF22TeebEvXbu<D3IR`s^;q;L&mxxH8Ay)=3}-c1>~kn|Nh;0NmL_qV#1cX9RK3n<1GkA~MNQxsxNpVPZfBQpj$704_4cD!$TLEy&)HiZp ztOgqC+cpt}Kv!K@^>P|@_n=R^*{g>T7AF-8 zyMqHUp=FrHyq|l;je#n>vWDbg|Hdi z(6#*HrhV9D=CDqZixK30f24BC9)#?oPhVcO!n{r})%{q^RMmH*?nY|@ycU~B*9uiL zs1v!G!?e2Te=7bVTUzq|$-(S?F7gR5b+;wSlf)~`RKZYaRj+VokSiQ;g)5>9!PyZ( ziF|1&osBgxAvqfi@LX@5^+TxcT1`#CuC7cJLr@T_A#h3|{dC(dSek5DHx$U#u}$f+ ziQnv}YG9&6&Qn1vu?buYGkY!UpvYLux@&kpJpsdBZEF7Y?F<-472TK;&4F z-Nis{n_}MtW>&*k{QbcKTNC9p13-4{Cc7WAss)n3XhVnuC%PSK6Qm8X0oHA7oAe__ zfl*b3F&Af(AaXa)*~{#BI_5TU6h6*6oIED}$u=g5m7=kv0n{=3}0*!g;BhfN{c<%12 z>p3XP!3Duo%`qvLYGycOnySB8k(!rkMKPluvu_)G+-Zndw|vTl*;#y(x43j$L6*{5UQc+N}Ps{^sfaaVB7zD;!47EF6e~nE5yxh&=oD zQUb@vU7bgmk+FRJ{%M*I_lJ2>8s-X)V=*S`Qf(7ZY%V#8qgG~ek~yDio}8uj4OH@9L|&P{(JUy5~hXNH?qwW^hzv@Q}0IFPl1VAbG-nP94JZcac9 zk#UYEdk&RdDk6r1KxSvd{&EixF%b(1gWQ+4D)GxE80qcFrs@FJ2~#cK96`imv30_x zp$lnFrH&PU^kTJ}b5<~e#T#lbQZS{HPKPqzAALVC6OAgv=oi-=x94pafXkIs!esvC zWfDTEblu1OV4BNl8QuaPKDbP` zMg7}{$;|r5>sE%WpI@avxQRELWZmsZ9VKN0v3^Am2+n#1yr9{s6 zhsn&Vnwsb8hsj8y8XAtLDu)xk*sl8+P6NQS?WJZ5Lc{EJ_IHnaS8dy*hFR+&*Zn*% zhX6BO_B<;!kwRbrM$==48;bdOwB6nghx+W8bvHBBQmZ@I$Q6mX>twrb6h2mCK!A_8 zd1?1$uXFLhuH@nZCp9JFl%!4M=0-%s0IdYuRrA082d|d43_Ei`J>ocxtVS{ObRRt!+U0<)Sf_re0?T23es8HhQ!yP7c;E(*+?K}((<0JF;H ztj$0~i$9asiOkc(O#5sVe0y@@Ium~VphDCqo~nPgNdu%2d%fnLUvD?bnSCYAIwfK1 zLL-doP}I59el58YH@rY;SUdnB(3A}g06b250A|Jahy1G1RuF(D$;Gx^uTql)z^R}b znkELpDiMGfc_Ad9Dql48IHL;^nevP>*J471V*X+i#!9CdyRl~Vr@*(89#6RxeX(gbeRHu&$JuJN zD6AyceS0W1h-^|Mi6J0LT1udlBm`~~t5cuoIpWfY-+r611#<2KHiq?vH zP7Q)H6APTscInkc|M_*NT4zT!A#vsk_f;oR@bwSJ#DSTEEa{Y})#mIA5$a;ip<%V~ z^*6&eA9k;sy!X+@qxd4cb@_XC6Jo??SeYJ>Z7_JRf<{_3e-f!1ZjYIn z)`>=Ci%qezt9lb?wT=>b%oYSwU7q|lSMEd&%(f*kusueuA(w%T-TLCo*uZ z5Lguc*^B1mLC5N=HdU*0sYmy(u4OkA5&7&g?572}LDg!K@UjhK_Q0s>Dd0F$KrxD4 zq$bd5u5-1UP3l?(@u^B{`J$KapR7>);cnjcyp9@!guuf*-}KUInrfM*1=pdqQV3kD z4b=nV<35KJW2oQXmbp?ObFB)PFFrc~Dj>{M%$MyLBb(>PU43_#w_WTSd3YK+nv9KF zd;Rw6CEXKa$;i5itmnF_RI2%&LKN ztyt!>KoDqAV^TE=E?`@v|1dLS7BgQS7}XJJKJgbl%}NoN2~U-d)l;B0(pPJ`Xyuf>IDYw5h9Z3u7Tiv}n@#{i3e|$U zF(a^m!DLGeRsc|-#e!qbR#V-Ov@u++R!yJ8YS-{8#3AFue*Wem6LD3n6AiOY6(5dv z$Q*?~?y6S(@K8S%9_b}+qCJ5v0g^XFJYIjHE%5Sz|+Y&Qh zuVg7%KkP>qR?{Xm)n&nifI_Y~O|wE4dA6Dlm1mPCP}jtQGkJ;C4TsQGgS?tb zRpHBtZwz15Z!o}3O{*!n!PV%TfJ{qsrpkhlOXIZZVriJ?eAn=cYXUi*t z9M9^Db9&9EN5b+pP}hYL#~c_W5RQ?Kv$m0vpeMSU>{y`&HXM}>O8;)>!ZcSeh7Tuy zvtlzd^ZkIvF%-+P7N&U)PBLmQ%rE;G1F8ifTg;sRwwvzYYJqE^-9$I5aGdAIAvawL zPOaEq-<_({MexsF^$I@D__))@%Bkh956VQuPbYnG5npX(+kmY8?!H8!t96L1i|VsF zZq_jhf7q2%@e}B2s+G`n5ybZ=8w!29t9M7+jdr`6KOP3=n3(z`%Ns5-F(bw{2ruik z8m>F~Y%8S{sNO#em#eN#avF;en9w!Sc5*5R$O3*3F%bEA@r z7T7eExjLE8Q$CM-&mzku_Do&1xH2mZw5E2W&2P0zb#4F)BXW%3(HP zpQ_y!TCjLa8{|boBvf?=581!G-~#k1#lY7MjfPjP12_V;T0R|?;r2yGU6AGYSLYqZ(2QxBJq#JFzelIWwkWx#~XSG?jn;FMcWGex7#; zB?Jyj4h8eNrC)wHxu26-(sQ0s6JweXxKl*a*?&b@72c`NF#2W&;Ir~ykn|VPs z_gbr|Dle5e>BGB+r>AKc%JEbWIVbliy8&t#^0S4-&Hb!rb~7tx>Swzy6lPF`Dw(Nj zsin^5MsmiQegY?+Gs03@)YI$>%+X;?DKa~oJ3ir1mzOmO2@}(D5fF%(ov30lg^~Xr zf&z5*}?|#4O+oX2h|c7eH#K} z)56TgY<(XnaL2gmcsY=^t!zdA^}qXO&ieB&H$S;(-tYFUKp4w(FNS8_#^_kN;U#blg1eSH~;9x=P$ahO{*9INbryQT=FE0r*U%EB`hLW2k>uyd)SXv zoj=t@1`Yxyl%iSL9JaK80A?vU11P03_&DTYmulWSVVmlx|*pMsKA*J9&g z{^h&7TJ=wUvRPifLC$YfGlQOwYdGKqOXHr-Idfnbe9l$Jayst%Uev)2W`lrMt(YNO zu5{MdEaqG-=V}Kqg+tG7ma}Tpj6O*_4Nef2z@eJvQp19=C7eZ|%w`@)L^u~)7Oya| zoGX1@<^is5R;#frvOzMysxG}z5b1LZbrHcWhP0*kWN_wa@aN<*=Eu=L@9C-d&fLh0 z<0Acdk(`{adv1~(m5TeX9_=_|HeQRd&}D)-$7*QM!RDm<5|jJeLk7>Q0} zx!$I)US9s}%{s82hOAXP;@OIT*O%?S&Y!()len9SKnNkQnNgtS+-9+Jfxt^N@25{- z=EU@HcRC!V$gpfAIF9*lpL6ypS1ZM>s+m=|e)6!Zd$n3ri$Mu)P=`4dbs7a>kQZCZ z76{l0rWS;mmadLq$+ZIsaS&2Ba}$!K0%Adu5FAxq4I<~R?()YkU4C1-oOGs6WLv5` zU*a$bIFE|m%#1;RF+Vr4ieo9r2FI4Hdw%K61`!zHG2>vkXi3eC1AyN>*}Icf;dP)@ z(?#IncpeZQOLgLg%8Rvh(N9Gy(8RQKv?x-orJn6@SaD;0#uxNK6Fd{9iq+)W7I zzk4{me`Kc@Uxlpob{H}=V{fW~(aO2urgnyNGyw`8vM-;0cpBbZ%VwLx82`>6tWvPM zqaMfMYL!wz!F)w?;XkJ-Qbc+AvLnU`SQ#Z9}^sltHir+KBg zle<-Aht{&ZAyG|y+#So!%Pxj+Jk4)kU+t*;^oy&*Oa%~O0q3zi%+t1yfA^0rg0QQD ziJ6I5)fYE8m?<=XF3(mxmnA7gW-7Txkq_VB-|dgbA=_+Ehw|ZeIvt1Usammm&Tcg` z1&m=Z=rbjjY)OW+Y87CjutW|EpAr5GQ?Z&Ep{f$ma@*2*kYFGLW&#nx+{M`qQDi|4 zFC2KHPmN9&5SWB86@@RMG7A?AMo^p^rosUfSa>OwK&%e=-~V6!X`iSVdSEmZpeH29 z;Iy#4vY)ru2>PQn_X(}=`-5FKG-N!?PL2pSpb0#iiSSYl60Bk3kmg#%{l#{D*@lPR z92;@-F{_cQ^G(~h)v2-zis|l&`W69vvxzY_$GNmoQl!|%-N_O(rl7?-abfOTX-UWI zACHKElb{i_0f!7CdbyTu3o^`^wk?V9hx`5hVb?|Z!_U@8mTS2y<3-=j*&xhdP zX-;*o%jWTO61Quq9wl9L%}R9gI8*a9l)K}6f@~T&ooZqUEY(7;$|1Se{ai~4-3nck ziUdiiOY-uvuOhkFal(4j04TYJfcFP=Hwkh-(sxI%27xiGI>utv@Nz9TD;_I#!ijA^ zmO%J;yL+(>Z(g;_ce%PfePpY=PX67~-ETfTe0&;Suld{K{*cEX^8R)>#vYqBDB*h3 ztya{h@L{ic(x1QVes;a-VGdEKPXwF*mQrDXr zpP#>0bx9RBl2e98cbLSygcr~R85Il&UYLPAW(%BRdq0UnOGDvBMOYPJefZ+S}5?Qp>Gdn=1L6U zGSZhF38QD~dTtp2Uah$Z4H;AQ`vCy%3qJAYV_1mTxNay#niX@QCh=1*RvkNYVm)>>fNNUrdgE5AGXI!Ls-4P4bLP^u@v-P1|u{PA%v@I-aBP7Z1q zfA(3^MgHc#0&t~2xTbx@#}l1q9J2-Xz{u5G!D+75DuCOE<7qeFKb07@N&axur^(-3 zho4^cNuq_+hM9T(_1%eKA9shR$MO2A5ehl`uYR}xs}B!%$6UR_?U3#J-8ky}#WfSj zRYy&rDeJ?reten<`exm~+NKnQVXrTmmm7f<0Cg^lPaHr|nv1(Td#wuqq!uv-P)ey* zd9m{WFbxbLiUCaO3@E!!KXngeI}XCDj6@ zXoV4+;GoKZ@q6IT^G;YQ2h%0fHwb&JFx9$@bp&qDwMYG=f57iaaXx))_KZR#PEn!= z;T*0ZM8ZTwk%9=*C$po&eDOY748mY%SG6;K!r%^KbTJUv&4rnWZBg9`x!N*&)*n;G z&V5o5VUCN9pJ}N&IWTzB@Tt0iv!Vc3!3T2y%g^lC2tHeLPxe&sVZv+%U>xjNy%zt( zcx1shCsXx~an*7kahPqWI7}KD8E(~%vpJEIG_b&^K(R0@es{0zg(JPZj7=AwDw!8X zA@{aPyM28qv=Rrf+h;YG6d^KreEp(buwiPLst1O`*NKHFs~=`N&Gm=<;nlX?wDQZ} z-fy-st*GB55jq|5lkMgYUagp@ZK7fR`n%G%_~~`?r*F1@{CcxVT^@Zn+Ax%wk=<4- zmtB0EZ9mnYT(7>r%lnaDZ^EWeL-x7i_Aq_>IH$l&zV5;>*L}v2^)T7$jP4<574j$^ z#k+^7z8tr3lo_e^Kx%c46&M? zMmY;-D~gi7_tg3+iCRExJwX#4ay zI+K~Zmtx?HuI-u#)j?|);%S;o1>D!GpcGb~cQtlgcY`@Wm=md2J&n5DX*NBI8e0@L+L{}THd7Q>$~}HzuP(Jv&-0}U{3C)hIhkG zOFT^ZX_!A8>wcdlGHE4(scKbItE#FBTOx*t&GpPkBbd9Fw=cUU@nNVJYl^WEktE)v z)V8sYeAs36TC)yCS)gihf$mNcB7u0nQ-DR7oE?iW6IC4!G88NSQ+O@Qv&e^yXer#) zYIO!!#0lj7sg3x&ZAb~UM9?urm{}H*^Z6Hu$fDeFP}Q=mU;y9vBB7;*ArW%$Gn<--P^#84&QE_kKm9uIewR<*zrA`K_D94E;U&9|&i5Og zr4xKNp*Yn1-RN$-%Rgpinqsc_ti?eg5v6z&VCDxUQ<&n#N~)n050U2CX7ydRHZn79 z1UC&&#aQU6_&$5b2!tO_)<)@Cd6?atg^WWwA*m!qW=7w|brkb@(zK4$ca0jqSOrh* zMMrZ*oA~LVqe_+ZFnCDv#ZBDJ_He8hEgGuBG^rMVj=2tXdYtod&bLovwVE1}b-3ta z*YX#a-OJ0BQmy94T8j!9HO$Q_501aMJ+6eVBt8xG?ZrAed3AE0s|x7iQo5Bl9Xy9k zFP3$hy^{X%+XT0#)4Ut;iyy{_Q22Dvkq~mtAv)EPv+1*vY?=8JC=Q{|L+f2?gRO+cF@HH}s^;q_V$npp&suu<3W^?KD-32t0H^DIoJX69gngUpu1 z2s53}dC&ZN>81Gn!=2rQjL79Yin3++`zdeC(E@Cwo2dLo_k%aAh<7q^C1LB#@&Ph+^P3WF_0+`P^w+E z=P&xVj}{^oN7L{;ThlOr!F`@BhO;fr4871r!uNy!YH!R)Ley>@?n<&Ohe{`sytP|?CLsh`w$2}+@Dq{qRy&* zwU*tC{mhZMPeDyr9i9eSH_gNS(W|DOa<)Hwy?HFt-+gl(Aw#w=R_$rD@16z-ZZ21W zd6QDbNV)qD?~gg#Y8z88cXzqE-;LUIah9-VYLE z$@AmW^zudfcHJN6l5GY6QhN?7 zq=u#;0DTDBcaKvk)q)T)rOc~!vma-wUS}8BTuitzGa{5?F`RiJA;>a60tn6w1E14L z7x#iynwV0nG=GB^wD1h^5i3xSl3AONZIvfo^d&vRKKhpMWZ5HoQQ0bHvg zoG0z(O2oF{Ye^XbEM*#j0^FA`GKgZN z*Nwc}RfDgaCeQVD&KnZIc9SuA8HeS2+mH!^U9(Ba^F=FDWkSuhW~+gz5B|H|1YiXj zGLEC7*bk3W3T*Ik))W}*o6wGv%~`>$xsG|Ba#h9MZFzbeFS;~LRitRCa|{odQ;4}1 zad>Iwst@;rIej=zDTL#cFB7d_$xuCsp2i_IAqZYH;kOSbW-hs=6xiI|35ZPU?gVuc z5Qxlc&c`79(=Rsbb^GDrPL15FC+^zNG*L?dFpTBfhhyV$b4Al!lzk>MMF?bt$kBRp zq^Z^tLo)ZsQ1#d_6e)4e&(IK9;Hb19RQ$)et+^|VO+ZSf&dkfGcexOpKt;qo)WkT?7GqE~VN^AMga{&LN@h&w zsNp*8_aA?ecVB~?*dix&OF~tR*+b;1@W1@GA5MApLNgWDf4S!Cz5dyvmu4dQv;V_C z1(N{_YPTm04pXrCD$+iqi##X}qbabgepPq4Fsb`A8{E%Y7ok9S(Qy~~m@Nh_#oW*K zs~0_gzLCI~tKMZQ)z^`}x)5_dRX0NvS|wRR1NYhYvlHl|kK4v)<)PTBZKkn&{(2M1 zPKtRhpReVr!^fk8P}Sz@bE#%F%zo3;kflX^-246gJ`nW{5qWIeKY6?9qKNRrpYdN@okFWPLHnBmy(i$^E*k58GRfqWG^D1!@=tWpEeVa!pQ5T#aiB4IXo5LQ#T zICRmDp4DWAAA{w531R2J!OavbMDTNuWr@6YB3eEMlsFK~jfl<9nO}TH=L!)ui5HMF zJwH`{2nZM+wP08XC7|%-~X$pAO3Y6??u9r+qcwj)ts4v zFu-nBb9wiE`r+N-@puT42fOW7_ocol9s*O)=R0E^a2e^g_{&JQa5fr?XUEq&jf8c( z=rq8L`T63`^OB;qI9j+%^tvT=`u+m|nH8W9$T8x=z$zq*lk_jva(U8e3APsi(3eD!jB zzZ-vc-5+K< zXWnO{Hvo%boWvDe<&xx`+bX&j!O-=1^tHq!uD0az`x%)T9`5DFhX;!re_++!hbL zGjr9Y1p_juqY++`7#9QY^0IvPxI>A^c^P{FY{txR=ku;NUREhnAc7h#d0|Wb(y|kb z>T#VC%UIpb7u}qy=Q1;gCW$bHiZ>VQ z@4uNTl$T#Ubm{+N+z! zF5Whh614;X7eaw))8PHd0E{!=Y^VwB?wwFJx@c+B$~O;oRBRgAG+Y&P@#=ID=x5j5 zMHk^!!;QF_ol0hxjJsX_?51<|5640QZQwE6Z|_dueLt_Z z&1aW*O8)*AH;kgro16aepqJZjnzecjg!jAC(^F{@o0cvnHM-oc`ov$p zSnW2LhCgt!N#{ijxNk%i3ijHFtP%ZKjt1ii({n!5w7s}OZbr<^Siq(A^d2*VHmt`6d=~R5(@IjFXuX^53o{Oi% zwDgCC8o{pMr0ZpKHBc|$?ky0RYQqZhE8q6pP9#0+u z5pxpZijQ~G?{4j|&-=l$>JRsIf68h;XFiqs?!L@f%Up*Er=w0&Js##~0;_|_)L?bh z$7!x_E~T;`XJfCcHmdu>Az!URQ9KPkWxrfShP~VA+f9r?=IW2b+)J#EbqbvL!%1KF zt&rVjY6v0VIBQFC|2Pw|n=Okt1u}!kIR}@>pGE0s^`$UX)oO}GKFN#mV8Ik9xiXyv z0wM5cFWXXabJ6^rKfIi@v`rAAsro!=h|;$$kt^wG@SlHm(IokBH$Og=Cg3<~sh0K3 zNPxSV5JQ-%sfZ9QDN?kwUE3y^x-gTIx&jaqW;PHJB(T{M`O6MxkVIZQ=iW?q)rgn2d7AVFP4$el$#RZ7sBAAk4H$NhWvxOyJJuFV`>SJ*Oes&?d86nVQxE5q5a~vmiM+{5ZM()@o+9V!|DbTjO7E-}+GD*}0 zPE1{7b^6PX^&--BFCkDDoQV#zw?gWe)pNnRpff~bl1U;g>!7q8lfLwcsrx

mqH*zyK7qAtVz-C^nGP9ey&2U?~fe!EchKPwFjFdv(BvZTGt{(Tr z3`*{bCeX)+{Mk*EHn97{Zrtt1T+F~Z*G1ak4tGz&O>9U|YoWzgP6#3_q>8|7PC*2W zs`~sr^daNY4_{^gn!G$}od{;>C}p2t~Ntwf=d;`6mU4mv4H^_}^3#K)5fk%OKJ z=4!jy-)tlXs)k`U68`XEdIrpM$vS5@BW6#@OGZkd1^eZw1*JF(x%qj{zw|L`?UH@@ zGTrW{u4$Tva`7h8{l0whdfhkN20qQI=D)npLb%=OFTWp8gMHkMPjjBC-Jj-K@v`rP z(;wfgt$Ih{ahm6>5_mt)Ns!%z?PA+LJmvE|hOn#vW}&6o|ExC-fkGfNxH>UdxKvdb zxd(x36?b9^ffq$rmuRz!+n$+l9P+A5!!WKWRtLP6;z{BW0__VZ@l9LA{;{^tE@ zm=@`Pm--)#tJDlkDWwIrsm26nArXc@`&1&I?*wyZ2FxIftAq%u#vnI_K;4$VDWl3c z!onN^hiYAVEG$gULU8wG$R*^pVmZSX#=k7N8Nwni#O7|~a1RoQ%$=sg5*7_)!9v)hBVLYwCad5FYJ7C8o95dhpYyvq<;92Mvzv0zqwvEf<0 zXMDG_3=*ag`7%-$y*N$1OV< z$Pt&)_RKUORwovuHV|>n)yzpDpgB+EX3&MALj(a6`{RC+AZBO+?e`~+;ltga=BqY- zzTGlo-N6)HircO!%5%1=R%*?q{@(2Ad1R~As5 zZcIo)f`sKNcFg2XW@H4-?A3t49AXL~I8;QKsn%NSWTY{oE`VGoRdUls06>Hw+$0vE zS_{nSY|>neW;zuekH_0z{l9A&nFE}v>Qrj2zKA^+fVLT?TwH6Eur#WeLJFx`HTSM< z>r7r_p0GbmArceHB)|COdz-;$vV|ZMeVjdzHNJpDc(V;GfN*T3IGE`oajlkTtHpZ) z3od*9Vng3O)#HpG4tB^cY^#<|)mIJwZl}z2tX|+(4f|+?*G*67m@F?6wX_Caq z+ZIe*)HB&W=f!ID_4mVRs^8va5D%F>hIJQT-bhxB9De>{JM7CkhP(Z!aB_`c0LNi| zIF2u)e0kX=rTg799buK)m4}2+WFNQ@%${x9W?pk$P=3W~MgfC?z;IY2$;pKTMob7X zaO7$BCWR)&W!ea!4a~tGj$;yOQaBEEKf(zq$;GO@J&x5#Rn7b?F!+!EQ?8DxsKSBS z&8iu>qnZVXfl74)q9kS(@<7x`T=2>{7ahNb0 z>}O3_}FFxG>kcT;3`ysLQ$3AUdRRHRM@#fwORx-8059; zbN$MKpkB2M)8lW{jn9GfASDkDHwGIxN?_um72*WTwUTp4l8dRAz_NI8p8qkF7Vjl7 z^KvfL(6R@n+k^dN6>f{aJJ93N`i?%%o&=YXO!2zqW3`G!8g*WpA=2rjcfg#D8OxS$ zgnoX--yE&$IM2rJ4|}qR(HG*cLG3um-+#;R4|>%~HTzg;&N>7C>Ia%enod9JQC!tk zV+w7e!?7@X&U>%9W&GLC`Y&$QDTd#?KYnvtx7!G-r)j9wQyW;CJY^yDNxDWH&d|0= zn=ZJ{MfK;`Yja#<-1QMa(@W7$i><(TW)Dh$eAO}pXE^SIbGYe|1 z+f~2rxfCaqi&YyKKio}b6e4%YFIKc4{m=ezwL6ZhUOw!O&c&svb2WlIw^;&awY_kQV~Q_ih;SBuR8ka=ND!s zfp71JbsIL@*re3A3FND;`K#aTP3dagp2BPcok|%8E!D`uyod|@*|rg@RyYtnaXWGAAVmXpH?AC5Q- zZe}rYE^Y=Uj5C5rilpi>uscNfakQt&LnKve;zEZ6fN`c;)g7~8nCMrx`r*T2e?Qb| ze%+LZyFKSJ?MK(L+mBREZ!YTbFn)Fwf(R^{e`KzgRC1%T3}J z8}1uQf!7V3ecSPAs?%h`=(_Obi^gGhd!Odqq_`XXrb|=BZ$BKL2K{iG$GJ8u*-ztW znTf79p=rbIF^?mSbBP|Ns*h8CxoQuk9I}dA)1;F9uIN`+>o*rMN&Mz%+#U0aw*A@b z6z*S&KKMA6!#puV)tMHO=8rnh5ZK`Y5s_sOt`+8*lDK+cs^%nI z&Ej$+5SgDrS|DR_k>F-Rit)`~tUaNtq)M9`sg0QL1Wip3IaF~+{ zvpa+&7X`Ui1utk@BGBRX7v=E&c}$_aXsaE7v4p?^_r>RsBoHsk4i}DKxVgwVnZ|q} zOhTXeTefIPfwq;98qN-_Q1cM@OdDOOG1+JL4=3Lr2%wuQ2t^PEQ+qJ#ETwT6d1@>I( zckkw}-`_SAzIfSAvq8}$;m&^cHmzGGr{CRAKY!CLl9XY_y7j~4|Ks28hogS+S>qgD zZm9{hZRzo-B6KRTE#3-Bt#^;PP1v2Z*cdw>=9wg<*l_T7_k|jM_cXBuCY8`+6nX}2V!vxoU-QST|@e#S;^o+ z#v~3CW|%IWE@pah89g*R znOW6pm7pRm1+pdnQ5D2Pu7ME+Mdvadi37mKA#el0+&YPc)y$TWuv-~!{|4tYq?rJ7 zBM%~EO0LB`2nTZo+zElhT&A-L#w^If*Ao!Tof*t*>eU?PV9zxNi4F>NiMsebZ`?dv z*GZ}Nkj)gP76ZkAc_tC0#HLF>)P*Sq05}fTM-)&OX`A@NNxM$Q(Vs>(wGd%N^UM;t z&8Irfm#gOXkmsC#^S!Miu2$jkXnoUO^%y7pxSNir+%~vg_s7XpZ9keBQgmY^@pn&k z+t;f;HIdEvFxAuSYWR!a4C3+SW&Fo~wB1eis~=9AKCC)^9HeMfv&W;4*_kkV9f}^G ztZ5@Bm|0?0=q9d<@rQ@~I>x{M<%PNZhi|60TVdi4r#w%kjr^3enU6KJgr{TPJ3FQQ zlv5+eNq_ZWAl4LRnrh@&&8oX==0$i(?o93;WeLl5A$Bra`tAfXV_|}Pd@>M%;OXch zp2RLMT4s#13pf}3cp4t|y6(Aa+HMnbt#|t(B%Vp4aTB5bANjTxVU57B%w$2J6e+9K zVoa>A3?g=e1_X!m8FXIYkcC&J>O|S>8P8S$1QCVST$f`naEd}^o=x2=+(1lV14Tv~ z15udf(Ljm4uAd*phZL$3@O;O zIx$W21V-S0*_xdhCw&lb0z5uFevoJMQ*# z*U;OWc)Qo{ALhV_LEc=Y`$K`-yNCL)FF!m^Zuoc@{`Bp-jQIF4w}C`7=koSyT}oy4 zo3%u-n^kwcrsJejF%~--9p`$HntjOwrBqYH^)}AMcVp=r5vJo%p60Rb z`Q@r>nh3((<3twJ%-P|_90H5E^I2!+i+3c55YaNYBBm5L2w@>9s4WU5Hz%SH7MzX~ zQ4BC85OT>)hzKq6kYFaL z)w$O4^!>kpF8WYcD+?u?h_S@R5Eq@7_zZu3<=B#u0bY8pOsKUI@q%MvqIs%LPQ(P~ zAZ-$23X}(?kTZttf#`A@j>oxj8-twyi9mM0PC%_p8XF8FwViWJfDTiL!Ag}FtWCBQ zPJeY*hLK`Gsa$7^5zb6z-9-qN$HQPl`JerKl`H=8cTW)A-<9n)yxq$Eaj0ym!#D4b zHCwG(t1;71tdH?>W%q|7jBI?f4r8|WPx-5x;B?jsMpi)K)y%%UNhxx!JeT^1uiIbV zW`<8{uCzbZ(_CL}60h;Udi~-T-;LkAKe=lg`Q~y>z@LBBe|;BTtkV5ye!c3S2K(FZ z=ON>mXDHlk6~f~VNi>PB#{ zSYj1jAp|-n{2+>`X^4TzN^uZMEp6LJ6Jzfa?ssK>w4Z*yo!bi9oA0H|S8BB@Yp{7gm!^~!$EjQAL@RIBJNup;UcZIu?FC(p~g7uRAh`oB!0dv|M&mTwW)vk+2DlZo&7)G-rOHm-T&6FuAW__k+m8A)pyJJMsAL^R{Q$R z^cTN47cT$wtNqn3CCKmI-5p{Aa0mdLGD}L@9O|2K_|5g+n`BNexABM92TSLYWS*)J z!{8L|J|?NjbwLKmIAHGmC5e(!Xa5eFlVDL5CMPn(X26+{nk;dwN==cOE?-`33Vril z3uU+m`7bXoe*f-ZD#|k=V;!a%$N*kFPM8=>2vc=-K)k0?h=ha4ntBrMBRnQBdD9S< z*$l3kG7)w6o(`dxBpwb+<~2MR6~bdq5nQb~48(Xy{1s`c4nimsnPDhtU7CoTvb!^L zRRwUo{X?IXskVUk@e0C{q;9tY2Xk_-ClP13dq}v2FnaGx1d7zT{zRc_9@>)=<~lRP zVTWl>ch#$6aqBt7AeX#)tka2#lt*HrB6N}2uBdA7*i9##Z}Rc39gj#wv>L~Oh^tbV z)uk6yJ`}G;fBE(Ozx-Z<(W)%NDVn=L-QN-5=!u-Ojs?QJa_f4Di^-n7}d5a%S` zJUssF%WZA->SFtTU-$c(2RR$$^Jl}{yySdysE0Y2aW=@uSHtyQlcdXSZpMH1s%NhOZ)BMBxr6tasJlc0RQIebEY?HseTV9=wL-4n^ z#~yUm4Tk4QH-(>Vw>NWrel@&%zue6H_rJXS{@7lONp<+sPjFoPn=>0cxgtor^8e^c zfyA!0=V~<}X`z|8YD*%*{QR7&0uw34R>ot+i)Zxi)`cOSa^fB$U=H&bq=YLCe*JE~ zyd3}H^B0HP?`Itk^O3+D$w{Nq$tWKkbb|D%!QDeZwJ9?I(Pkpj4NjJ-0U8opb9ZGx z-OVgfsE4XM0zmCVqnMc_IINpcxixzT2{;78Cin6$MD6V8&@g3T=YlscdY zn5CQ9gb2XP%K>KZCL0RRleIbW*agf~20l)9F(wMKLlENFz+zNzxH||-LM70UC}?t* z<)-H*w9Lt@Y8!v^`^lOT(b<)3ioCo?ce5TA9rAEr=kH%1#v#wu&&PBv%kfxd)i=jC z8y+^}n%4Mk-wsE0;;FXXZuiBrQQfAwA?Ws~iTzivHd*5Kph?nDSQy{EZ)*7KulMRf z#Q*hg_tw;5yWO}=`O9aihRhX0 zzV|=-<4YF%hSY z7%!g4}HUREiLwFgUqdFu*)7T9Py15s4#IyLDj%vye9Lq>kE} z@+w+DbO*bRm70ZO)f_~#2Ydb$p-jY_08d0rW`1+OFk_lsHO#C|K^$u;oIyB*JR&xOFt6Su zFV4pn+SJas`S#%Z{X&fMvm!|@w!GV=rCL)gjS|`A#rAB&H~R*oX;$-~;1?I=*cuCs z!Pm!X79IhHlL--m;40lp2S^EI(W<+*FiokLg$J^*B$}%+Nw`sOg)L^a?)%fp%n=P? z2t|O&=;UXGpZsBp07Rrmel#;8>gRpc&O}Teq3%P@>fZB|+I+Wv{oe&eABP2;;K7n5 z6LqS&c2kqpGG%ooLN{wcAWl+x5%JIfv9P(XCb<*{3Iu|}LqpT^%X@EivqJVz1RFq<~7|T5HS-RTiY=!c3MBe!QnY{&e^LV9(F^^kbuwe;%J|I5ER z9GB(SpKLyUmbO{;lXtCjN%Z%BJ^bdiRgJs-v9|d0FLv+taa>%g?3ZOb@Sz=xk0K5t z_k6dvFF)Hdg9#~`L*F0jZcNwr6)DcL+#NL~LSolYZ64TiS{7>yTev_;{IAtcwOkB9Z!xc_uGf^rf zho8L0!vVB9XUXa?5Sb^YrL`oYts1g++k4d{1HvQp;R~O-@SkiQz=V=guj7+QwH4J@ zGxhMW2i+zUwjv;|>K|V+ zi@d$pob`j}y=HLx^yRT42ZV!0ey-R1?RuvIt*oegB|POB}MaDP8*Qvnfq0Uehbt|ltY~6sz7Czq`J@sT*@10^nO@%LVAZLVGC@C>>1~-ShA$+MS!ihxSl1qScN=uy)5uvp;0K|ph&3P=u z{*bu!gizfl+0;(w>FOepIrmvxcyoZIm^YTPhV_Pb3$u6p2;Vlpa1@^Z-5>$2@>}3^uPc`cdJY4st%Eq;SmuI zch8aop1wcY0)o?KsoRa558PRazkV)%{ic3=&j0GQoo(pdK{e9h{rzEDv?+tn&m=Ly zakkz4(W~JvzdPLB`zN1`y1_?R`1oSG8TtL4Zin>M{o$ZKk^p$V8JOs=U*CRzlQPRR z#Ua{shmWu5Pd?d>DO&Kh@VEENH{aL&Y^4N5USHRtZ~|TCJY>Q)4H@6vx5KSgfGWMb zD&M?69$NkSdS*u9lqrM!lV`&(U!DC|-@Io|=bL_^TJ=`+d4^OA!6lSJVDD z=fX|v9n?KQa+Yv^m?X1J)m&{^NdZ}su~ltENFZaqotnFa0YW~_K}ppj0TD-40O!NV zMcmqEqszkNt(=SBTR2Xp%$#?sdy+&$0<$Am7$1-R$*<1$M?Eh3{$_u1HeBE9W)sM< zu>?^nri%HVOO{F18@wq(a&o0G_b`}Qw_Z6N%%1b$=1Hm~OxA z=Cukq8iJA}fSVneQ=(K`1Du06d(=4Iwdtz;^2=v`_}w)nardrVr$CF_klfAoX*9Y5X`r)=!qs3x3$WHA0_lJM+yW86Ie48$} zdAF5|^RgS{)n)nOMae=b<7}4;;nyFR?M80*Z8zp^$-6OcS$1Q7cE0)OV!TsLLVxn= zVj%wFS!&?>V|Y&o;?7zT#@Ut!k)hDiOpO6D z(!*r;$7a^F1rw-Ik)#TB{rdV|9m}luQ>z}&HwmC3@ztBTSqpE*c2#gt&ntb!r>3r? zb58^BG6Xbpzh=X5^^%5 z2-UjY8a>=Vo3(|!t(GS%zO<&>5w8UjfaUPM-hCb9An`CJN=PLahnZ^^?|WF05{$O2 zgsNvB?LPbL;+wDUhCG;?yEAc03DkpH(Wl)a545G|%qur*rie&3S2-Km?X#kbm*K+#P+c z?eZ*5i#Ll}L(Xx3z}x+u8a0dKu~m(;^K^GSz{m`FFya&vhhwFp%2H>7=&xRuyL~8*R~2Ap~_jBi!@IXE_D1+wgZcQJWTnGZ5~Jfo;t(M=%F* zv-CZkm{rx?hD0T!8gFwhDV%Y4r)OvM z$DeG563gu0yl(*gey>4D!2kDl{&Er-OZvQ zC{n@Qjh>IhIn7?Zu{JeQN+7~<2`pgn@4jzFEgUIJa=)K6yWO>BIq0v!$fmto5K#Ml@U2zSe^xfZAuRZnYaiuZ=KA zaD=V(%7;xcp5_JwqGu{Syt6Z$JCnyf%v|eHr)wwc=XS?&2<)~lYi5xUE-~$ugxstr zgq0%i4*Ng){KfSTU-jM>E4{;Dr&)pY$CQU{;I7^ABIhK3{J;FajDt{UTdJvP^ORc7 z?QD~G8%hi!=MW~mcsU#oR?Sk0lG3qyO6c*E@0WTw*4aE}9HS9@%sd_V?Y*kSILb7~ zVQz3X>!R<_7Lw_F7z~)I|Ne))Fs=_vI1X)jdq2Oq)wl0e5pVC*;m5h&->EkTnzf)x zrj)Wp#Pds;%&OC7SIip+tM}%KT-&fqmsiOdB9s!kS7WPM_inCrHcpWfU6lOg%VC+* z)vkPcUf!u$!|lD^-z{~X)qI=z7oT6&){vb=Q^qjLX2(um7qp{sA!||Zb$gl2VkdHO zmMHsfGdv%MJo1-UX9kr-jwpq~otZ-Dp4T8k}aeU6SB9 zO!Gn}6625(d2(86O)PN1N`H?Y%D!3-dW&%N*7tz9dRT;e-xA@y&N0_6>Lpc)h-w75 zo0)oNM0x~TzycPCZW`Km!-LB&6QZZItl1exsB3Nug3tgV^r#%~7SkSXX3OnY(1V5r zf+$uVbFg{?!4VWN`1T^5Uk!m?M^Q8k&yuNs_VNlT-n~6Upf~0ZRBaZH9>Glvz*=LG z2#W|1i6r^;|Lp(Vs)f6VfAKtBol8EWaiEXR%3N*SBvqtDyMgAa?+-ORM#))tQG2;d zDe+SMyEpBy52Z?w{UM(1@~=KRE8@44e|%A1U5!W8!!cSHh9DxS9c9{6HM_ZMx6=Yp zRk#r)Gi9(d$FD!$-rd`AX{t@KXQxgc|yLh{MfGmSISjm*dqo-|v_GQ8#D&#nt7sv}3JX;@e3b zZW?6}Z2`jDyL~p^AKY8$nVkrWkkQj(PxYe+*MBKFX z(nY-{7AAIEBK&8-%Lh!;gLnm~^@QErT>P)~(xnD0TO4uL2-TLCdY0R^MHf?KV$` zHkM&`kvF^iC!c)uFMszo3_U(rMBKbXrG0+}x*Dc~Nwl7u7=#VzdXy$35 z+e6HGiZ=q>@qQK59%J9WJ9KZ_S-`#l2Z(+km$?v&GWPTU;XAr z!|x9MhwrMh!AWZjTjB&&3a7IT4>^ttB)c1$5`a{C=q22-xc}u3cWtWfARq;Oc6DA` zJG#!TRik6_ZQ_ekuHPTt)uzo=%{_cZvzdgh#yo3GYRmQE4|C&$VJplWhDI(6Pu7-0 zO9Q7QxAQ~^bBn+Fc6xJnw8a2NSYjcG;mi?uzdtTji6R_BVk0th*Imj5M&aGoL0!#toAa?fNaKAalbsG=G7nk@TyR=h z(?p0$s6W~<+E1_5!w`aQAZKgjwOfxa^VGk^%B)UR^}=z!#sU`55CF&y(I>&%b>3;^oWTci-GG$Rk>-YbYhy3_Xr1 zB1Fh6k|bhDT*xW?tzTZeI7|P(uiwABo(|izDSUlbFGeY8m41gw;DlDdy z;jQ_yXdY5T)8?+yvphIQ5eo9J-rlj88(E9I0f6HaujhRv)bO@wgmX%HCl{%BqWh`V z+HB%9Vmy=Hk0uEgkr{_+fkYTnO7mRjV<$PvQ77;C2PmafiZpG{hqK>({XPT$(&%7b z)SvIh84f5Bsp1@k+{vrfddI{}Z(6+^F^t1^w}&)xsj%fVnQm*^-+iR&^e0J5nkPV2Wj0uq=^)7CxL#bq3Vt#H>-LS`ic{ z9U4^$S!K24JH&r|)zU1_OtxrC_S&kd%ZsW`X;~TSdV4 z&AoA*4WyFLG+8H9L6f*UOD5GwnYQPdoT=7(57#IgCWfj-xQOh*FxX-d;M{GF;uy*^ zH!~8>=N#el)IjW2TQIT0J#8SFtrOD7odxdR6y%Bd*^6D+a$KmHk<;t#`&03gw zI5EQ%5a&K@Cw4aiIXve`DO$5-(c^3gb2kKB!(Drbhw90zCJ(_wV6_7OqEi6tHDN7kr^|;^f6SyQw z11L+=`EF)&KOAq{QQOhWCJ2#v6y{~Q1u&b=$9ngENjX%50|=6WH8!|p<8XMLC!GNz zN$80~%S;iVaMxHCH48V3Xg~uD&@h7s+~J5t$rauR3Ri*?yr;So^;p5^nRDiDuFb4B z&~btffuOK82%a8#hV>Nh4|saaK>^yQRU^XDCACJcfMkE?IsmAZVzAvS0 zcPT919rhp}$8>g<<|Wi3tZF4|L4O!IniL<~X?!TUsVflEQ)$ zx3D%T38b({R`npwSyJL0a zJhB-AFb$DN8O!VuVfV;e`D8bgZTZ9ZH<{7e#(2JZdDfQs({ZD^e^cfBd}qyn`NhlM zeD(c3$z1Q|3bK?&En5Ikg*4l2__M8wGNjy80Zhx3S&D2l5=I50 z9>ELJfCmyndwn7&e5TjZy&w?~8&ULBNvP^--q_=>KRC?$ z>K6)o5+2rfNFeNkG22P(AKa&73!A?PpAYvhMGZIm4%;eT{ z1K<{C&+`6#>tWUgyVz|0`t6&m7uyJ2U2Kl`H4&d(m6W-Ughg_8vndc|8=mCoR&w`>sY5Cy^I@^e-QbLAo|?M{)p<#YQl{y?dcYi#g2mfW(}oe6 zC53BUD0#H%R9eoP_xH2Uw-*=N_jh+%@$uC;9qO3)H*de!Ik?c_eP!qRb;~Hr;h>7` z85~-d2P3L5pXN3nry3^{hE-`)u-PR^JTJ3k)>#CI9E zIWfYW*0UBT3zXK&bRrnQpblXYbxAIoITKMt&wYtd7*Xic78UGI-nLa9MH1Fd*iqjF z(e3#kV)J^^K%kxQ&<8#6!}ei3R84N=)q{FbBoGE0&FhG54X+P(Fw1;!L|6lWKmYQR zBI)1x^FJ+H`KSN zgdocWW^h9;0FZ}}R7@)i+A@#Go=T$`jxrQeRjuvF3|@Mj-w$PTcD$ zKNyAKC%4M!&S-}?P2Em+Lk|%{PDOq7aAy_}X?^gVjNg9!=IpZk-9I`XQ{I&Eo9}MU zFUE1mnDFA`@!M}!yY&bVNWs*7&NEv5SLmNsMl%kK}%+>v0q7>7Up?CkDX-`~wcYC14$J4-Ys3?4bUtU?bB)OgsdLK?; z3e^ZlZE<%zj-1ZRcxW?#?Eua(&%VsD*+i`naVDBa}E}Eqg=pANcb)k zEhJ?HTGQc7Y>E96GWz*>*~u{b{=V8Du8)%V;@R1dGA^X1BzyB{xJU)ST|L^O028H%8u17wh6P|xsuvFUnubar z^qmh4YlL>i)>@8uz!7YSQ_uS}3SQ$$4HN4e>gi-R*8i+VR6y|Qd>x6!DlY)_0|~ zdx=i+3BW-~b?THgTPfD!5#2n-!vK~HKv3}gySsz^_gfl<9ZM~*t}eP4{Ka-0hEyjb zh8sMrg_1?$WMN=&Ytgll5h;m${`dZmAidm;78dSX$#;i2dCDWFk}ikMH*fbF%GTI| zj!QL~OAw}5 zy)F#hLXa&>f~dPXDyJB>ZWdI-LrbCErX23upZ)6DUw?P=`rUkcSRz~(cm*d;86RDg zvrYc=YBL>!QavtOmmo4GR3+C2xGoC}st$4HU}j0)CIk@?v_%qy!)*ET<+C@}Q}sCy z5utU)G*?Nj>GJ+|s@6oXITubkPt_;2=Btj6P_lzPA~;1@lT6{T#l1z|gd{G+)r@kA z2vTDvvN#;(W_Gt6!IV|9;BGlY?J!_O7=gmE7B&uw06BpX1|kY3P*6LqUxx=yJwv!5 z9MLP==+#s7TK{RCa$+%b-j2bZz9$d{b39Ojf;}!`$>wK7RGp{`%$F+3PpQs~5vImz(3X z%Y!z*xm_3xVlyQM0y!0P?adI8s|7I;Aph=v{C~|!4t0s})_htTbLiR+#k9=ZG1n=M zON(qwgmClf)j@2{YgJp^o12?0=&ue5PRSwBha@mXaJ;gt=jGF^5)I`G#}ei%~afd*0wC}?$tZ)S?30*wd&SN zp|ee9ScC)B-BM_ccTz z93Gr3i8Nn`oq$gDIjvG(p~weEh*&F|KzAx!5AQApFj%K|_V;v-8ls=<{UGzxo>`^l zec_7}0o?1Ohz~O6d;7f>Ve#be13ZdYZo0*lkqg*-jR0CLt|E%$oC-jO5EhmMV0*!z zfBJlCZU25QyL@%F$s*hB@a^|E+p`|EK_6Y6|KZzfAQ4;V-Y~5jk(s(OCZb6y0h3?+ zPye&m*UR0$NrvP|LPVqu7Hb|bi^JW`!95WQx&$#eLrQQa8Q^dY)o@VMS#@bWtcH_w z;^dJsy|@^2W@8EuGuvz+nWUBo{`D`<@)pl`yLq;^w|j!elA8u=S|*(BvItMJ9``Zb zAv74&=7o*&Hki$I0k<$>mXva>)g8@1WB^p%=GJCYZDy*oS!=O)Xr#iQUtL~aoLz21 z=W>5@U#kM4Ri`6GST6YFYTRvy>u=v5j%~hm;)q5FcZ55132gyatEP)-wL01Ht{&&9 zTS1w64g}kNIkrjRy+8?K3UA%zvZ^h!nVOq|f&~Ocgw58Dp5f)3GGOeX5zQct6I+;h zq<&9XFXa(-qA{;Lg$Q&@Okd4-K?x~vLf739k(?-~GeG-SoPe6ZqwIaHY#vBNePZB< z0G~b$59|BMdq}v;>Yt3vT&>-A=R78|XdS8^^5||6o+ODBbrrA>gP1`PHjKGZ+`PHZ zxwOz1FV4avCI05yTfW5MU8`ANon0JbzIi(fa2$K*6koLD)258SJ z4|3HTG+&jClHMJw85}kgn)aq{i@WYQLTMoNCFPWNrk-@a z1i3Xt)C>w|izNcmBQu*ZQwYEjhOl@F$>|i|)O|{_%~91_t7xcG0AQ$&@QUxN!oXmw z&V+Et2p$rLA8(pBCHRVn14M~}_J@N;kTnWO!r|!HJBW!A$eWrOO~=-;6e4nSCU$Z- z%&jewh0B=I$c`9`i1Q33*RT3d20YvEj-xM z`8Wnex@g@3AP3zyH4A2spyQEK@|?rEqcxyP)Iu_+Oz-AH0`Hs0Y{S`b)T1&;d>A5$ zw3(_kA|^+~QZ~>T#4I}pm{D2CO(GhAW=p5D18}#XNMrJ9E*d|jtpmiADC*L@xq5w| zy!7lr907n2!65I$9S&(etH%MH6GNRmo<3}7fIFsIBE(4H4^$tfWMueI*xUSp z8%L*t2|v}2{g^pQKmU8wU1SnTt?%x8tHY^VQ{+Om64ni?*9v8_&|kc1+ArG`8Qre)sCL%@5xly7gk1 z55wlT%smT3r`#&_(7D$%4bt>kI-^W7tL-xX#wh4vU%VQqht0wk&A? zfa4xk%{AJg>8xgTNJ$1aG;0y7?SAJ4J$*@#IcZeD+;p{p`3beLTLQaV#O$FFp$}fJ zr#y=%2VL}|+JeF&4Bk4wcSSfJK0n+L#t1kFa;lhDQBqhK>$*JpyXmyHI;3va%WF8d z*51kzx4|xi`B8h*^;(l^ebn%<7 zzYd*v_a|KFkzD=3qxEG4fEe5hEQ&yTAJ$HvZV2xtxIL{VfF$V@6zH4H@cExyeEEwP zWV}BtMD+gd=GiA__c!w=pPX}|7rV1YR&q+7gypa-mz&Mad`!ge-t38p0^ZMvaDW8d zGgXC1-Q?rH_$Ph})3hbR8ARbkWS~mPnM2Czv4{vEjfis@zx?Rpvrl%PUY(zB(>J%% zJn3w0aZ@#2pp$~>lgsV@>VNXkv0X^e4Z5U z!#0oPNa2EY2t4{44DVcD zB4pusj5a-O1_IokX0QSg7OqSj-4rdz`*}($g)BUbK!#vqgE=DDR)D+*$bjR~K{nvV zNQ^`wC;k8}bv88$iVi>@BRn*$BiTT>MR;^@onqA_KjJzoH|EyKIJgDcfq%VrF> zTqG$;32M=n#);G-JW>WrWG=>4Q#^Q4GT`Cb%vo2tY6td~pI~#Ro0_12w+H=rKy78B z$KwEp@RTWVg0|g=S;K8z87p7rG{!&Se}X>lb~Z+Ez>!X*0XiWz(M2Supct@2dkf1D zXGPcF7zK3~{dK5nY9L-$9`#<#(9?+?Yn#Wdu&!G>T|RialuUy$z!PhXbx|6p$oL$-_Kiu{LlfmMjj!&HLFahk1}m zaXShVQ_3$d&$hW#s?a3h^RwY_Y#&{nU0)xjL!0mIPyh7gw_o3X|NUW=AQLs$RUSi7 zGbT=67f?bdai|)AGKge0jd6^5_M3Tf)!jCg?5X5qt=IdhR%fDVH57nIh@hlYGWOF1 z#3+20%F*KMZ{HAh{WgHNPLLg?=am4lD@014btC$T9P$uqHe+Ct27wi1t z$0gl24^EqN4X<(3h1SuROecLmw zj$0Pwrm(2sj+~>`8p}O+wd@2r5m`6~F$;qwr&tUW99_J-D!AIdIbde)#!dt-vEiNG z9p;yxo&k7$b6;4lHrsb^uFpRmK7W37dp8{qZK-;`+x~zfiI_QYC%`g59Ik*s4b76{X*bFe@sD~0obG6KMK z^cHQIe3_66ozxh8`F+UiqCRDQSUL5l2b(`l(jqWZH@7;K(SC}zdz_~d9JEHI(}#^B zJ+9Jl7@gV(b|!|g)58kxH3m6D2w*TcI8F`2V=dDssSg*|=?wm{RolM_!l4I%{=*+M z2*l*F%10g^j34-I^jIZ5R{PQOsX)ZU-a*nnLqq4@_A-8LJi;efVsQFS->0;jihf@!l)f$VneVzZ#7oW~ni^$b(`|ZswF}-^; zNydDDx<*)%B%E?e5e(winz_rL{LlYW4^0w8EaJ-qj$p#PKx=@QIkL#SP-h%OgIkvy zTMz%T25+#*Sh@`n2zqfg48qPv#Pzt?F-R;NZj)O}IZJ{Rri3&|TQrYss_r%)T5<~4 zv7}9=Y9Wke@^MJRxl4j7yh1A_5lY^dDa*PCB9^D6KD&5*tV{{@M_^Dhf3o^x<%&he z^;Qns6Po+OY~M~?D{!xhKP;jH?y%LaHG+f5;T+Km4|lME93FiIiA%pUjDxvD_*gyu zSNhFkMYb;e(>D4a)Wtr%4;|cwMMJ%0bi68OK}R1=9Ea(q2Zv-l?)qBnZj+zc{}o19-8{y z+l9a=frhXE#jqJY%v4P^+}$jdFf~M2izL_%Qpua?(t-%S(B~hWO-(I83=wdG6x13W zzfPq~B`8T3veMdF60AKXBs!3o(yE7g1VJ8NYNijHWvr_|J^+L$09ZVp_x_}gjuVdn z56x#F!XttDmwABu9Ezy_r9NU5Lf0rFt?vOt)?(nNpd|Hfn;tt<{M=4>+Sx|12?FSe z*F+o~IT={I>^J!0u+b)`Jeu`UzZ`hcz*Wg z{k^&$rZyC5)rXYsZtIKZ8-S~~x{wfA2Q2#L?;Pxp|K9(h4>ns3_oxdT>Q1eB&p2yl zOg@g`jywhk%t$#@rDTelLHhh<*^ZK!H3EcG=-B+-&9qc2BZ4ZFID@mM94u+xH{uW> zW|9=9V4-m%yHV0^cP9MNiz{BzZX7y*jzOxt+*e z%hRR1`Wgg;2@$To20ipxE{dQJE{9lIU8iH0DBPSp;Pil<@DsQLfS*WXPalRT&@Gus zdwFmIVE~|T4kvU%CIEtfJ8qaHhjo6Ntn`G3YUH6lc~IW^Y3B8a$evbzC-Zo~yTwEh zF$Fq;}Ob-+m2oHCi zI%AAPGP8LQLr6%vIAonp_aSj7{3S``F!yRTNp|Q;>OcdrQ{23pj`K3^%I7aH2T9+4 ze|K>{zIn5M@p3y&`q8uP!REuwLej};-OmVSPE1K8>Kx|I%;u32rJPI^&LySohW6@D z+rpl~A;L@~RlNAH%g>%~&ya)Z&CT(~j?=N3=hS6>p!oo%2vQi(ptYk$e7y7VEOF4V zOF5^{&a$fjI2#$T;Tcy=Kiu5h9x4lx5uavu(bD<0nED*EC@mIg1Kp%nTaW#DvXXsu zt?9fMccvw$VddYX)+Op|VB^Em zN}7{+{{-iLXZ;$M>nIgE;JBO^euGKE@Fjvh`{!k75Q}D zUwnkg~488dYth=a77j;{mYzTCBNj)1x$Jm6ppqU7vs_t)(>-K5}u`_I1k z>f4(?eE;tJVsm-6`Q2~7Kl{_tW=%PDd&L#}axjMnrEqU8TrqB)7`dR$O`V5ryn3Fe zYJ3PYGDAr;&!jcVmTD!=VWOK+K6!ce_U-0fC@I-@Ti4wj#tu+%X?Ph5*KMolI*bfHcen zwh)WCnztVn`5uuTO8xrl41fYkFJ{C7Y9Rr1nlLsp~_hLHwp?jJ=QBXkFOMo9*h82cfubmGOu#;n< zcD4ct(K9O7O?&#m=mB!-o>m+kbmGU6TA=p~58AO40CoCSj25QumH-Q-RfoVijS^uL z8kRx^86v{nM5K=hvSjr&tYwg~qgw?9L@k=TB7~B4E8K=gK&F(8|M0u(+qW|h{HxDi zyx$+DTBYFK-5$&zeNo@J}3o}kP>#6nUsT^Gv&f8UWSKj z6U=yZbv24>;A|}4y<4u|AH#x((uTpLHA2I~eb!Vk&q1`X8!|}>!ZIJ4&GDnvPiO=M zLMU~*x`lRHYdAcN;z{Qh_M_bsPu&2YEMi^7QgPB*$I2=2r!}`h>~U8-*67v~WKZLy zM=*yvZ4n;f%;M0MwdS$1&cfrw?CH;3C%Y3Q;wPJ;a zZejfuTj@ptW=WI+IMgGQB_WN%F3nX6ZMXUT`{VJhrIE*NYEv|GLUdbR4W``DfZZ8=EMSgS=?*>IhL;WE;* zi*wgW3oVA-X2X*1;~szrv}#Y0y4a0l$-n*P`?t3TSM63dLF9&%hj9n5lt#49ilMq5 zpgk!Da3ju-GcUsY^hHtkhl4h;B$mZ0MS%Fj*Y0$0JXS=0T5pdZ=fI;q?2j-OK3V7| zhtlJt(h~rOe}e>OH4(yPJ zh;-lFAqML|E;BqlJc+oQJE>dZL?E@Q_kUCYI0s$N#vy$F)Yx2%t66rPe7TEu5f6OwNKbq>i1L>U2Lj zxXqI;3XiL)s#<3^gD;T4@4mkN{kPZ0 zxw#C3Vde`#vqr1%`Zvb0Bq`#*NaDUqDK5U$Ru5%!$bCsX;r1m%}(~^g4%n*#rOJJdO_z+-~895F|6>(|%e9v8xLwJw2gM z3YBnZzaiu_<$9>=S2N`g&dh8$sTZkwDnUQ3b*XFN47j;_ zXy(#v*`yK7aDT+qR$+}x64Mp|5rG;@VoHwa%9bo8tO^Me16J}-mxV)|?Bdxr72dzo zufKlx@yDBa*7J)EXKc=rSxmJO6G51mm}XV^`0xC0hYKkqyN7VF01>G$5wUPCDG!;5 zL|ChaN1IGrMR=##byul8Jj|gW3^0wG&_={*hoPAbIsfvb-PH8vZo1#A2Vzl!<(%?> zazNG=M z8(&7(Gr%K^!ty;CMklhTg{E#@$aH#X_~F-bk7_kb4s|dQ z5i_})hJvD56-pY;LgTQj)9f5W*_iostR6AXHK%;>Z1d{X`Q7z0o+WMm*{jRz+vDb( zmwNytNrXZ^{k#7=)z+3ptAzy%<&s2rIaV_z;*MCgTD7UWGiP@-T^-k0=;6rk)JiVg zODQvg`pv#_3K71Y+nejd?akahmwSlk*+*G2w`DGHE`JY4b89KpCt( znUh?SL~uBWq8@B>nTZH+ZQ214Vwi=8KbUt@*vYCJ5k?{1`sMVqKNLJqFm=a+2K<9{ z?~X3QiU91i^dDH3^f;`g_;G*naMSdU2%xcQ)$t*%B5>LwzCtl4l{(gnBu?*%pY}07 z#j+k4O6v(93FPrJrIJ4|e*DP|=I+E!5MHNx0K8Li-PPJL^wI7`z-s}7q) zz_e(aeX7fTS%y)Xc|;uV+Qs>1nM|01NM8M0{|Jb1a_eY+xP_S#Qyxl6yc}Cw)RqXN zwm1uwaXmbkF^oOE26YY=0uu{K3T@;T(_v{_9fSPS7sbLU5ji;da?>~mb(6D2?d0^)2R^Hh z*NO;zXki)pz#0m(4<^Ebu<&q)(}{HU;SubQr)QV{(}%5aeBhSzbJcjPo6R0k84vIB z@Q32%!BmY_Qg)9y>BR{3ATZ{C0~5ke=k`;oQUKNsWKSRP4+wHkF9(7PsM7!$h@kc0 zFjXSBRcm{Ag$TkaoQVTq?y(?*y_v`5OMa=Gcd@s40Pn*~6JS zdBFpnJt2wvK8!>{M4WT0v$+cA2!L&w+kUDd{OoEs*S33B67$X5WjmH>3g!e*3MX%= zwG}hb%DZi8UWut57QoFM=)z2F&T+h}Za9CwY0C`YxL^HQ-9jw#IdclHSPspb@!*>s zUYzHzUQheU(}+BB8HIUlb^3OxhqmN`wxst``xDw`<&*+ZXAAc>B?Q@AhjDmyDPEk| zQ=+9=omDcIb0%iV;$~LS=C#>%4`u?KepI#hDWHe&L)k;8N|e^KU$N2|ezuM5O~TUx zJ5~UOgTjBVKmOoB?2(zguI+VDz+jxf)YbX4&!|`V$$H@g2tfuLphUg>&6Jv{h8J)*mljHDizHEP4w63T2oI2{ae}vnL5T`8g@?}Z z=@*w6gDY{O((+D*Z{OZ-&m|QKwg@32`Q_jJ$BVW+5HYz$9;DVq66L{$T>-J14;zvM zFzSpvP#$U8t2HcBZSxWiX33dl!`oC2$F>}+tHOyTT8rD;2}F5R5JbXFP1|Y%1ZCkq zj$LgMd!TevH)@qdg`^h2v#a6R^Yi1p+`O+<8z;^~N?ABbxP`;2f>)!=RiYR1lhv;$ zyfIE{sTG=B8&M*scwGIC;17N69~#p~{yaTs#3Sr)Mp62$^aRlC;;NJ%HC1bZ5SS$b zKrjUXiKVw>9XqiOQ&1mget;+aXvh7i3+{u}bzJ6@n3!n2!Gpr#)E;|;IN?InLyFb` zvU%55vxlnQ!)k!IKh;l01W9r?9ui9HC?UYaL}IZ1T7!{Dn50wP2xQ^vDwG}GOcOB) zcjJ_PX~gP489(CoJgi+ml`ehl_k$!NqCd+|@D}S-VL<;zvN4@(cK*f^#JXke z2UaD#wv^%R!^P{X8PDoy*{u)_=q{2c-9fC*JP* zB?QSktz4x4_AEgs5Y3Ge69G)p>W%x{&ES|$2q`E@Hdi8YM1%>Ex~`iK#*{(9A%-Sg zI!P(QDSEh)yP3LDk_b;djlQ#e!2oi~?%oxR!h)4u<1mG;VFkvP@3UI(r#e8~S-~s)7_uU1F(KX%Ll7}WkPtD`<gc(E}ehMsIUHK7aloCn5G5R;8K6naWYCAZc zHpWBaBjWDvM#SzWk^%Ji4V-kJ2IuY~M`W-88EZQq2J2|)3MCLhmrvi$CM$Ky0_UzBND=41UPu0>?C%ezf(E%tj&oMXGAI+K(* zT5}^HwmVjJtJaPd>(XI~pzLH(y$79R9LV80anq;^F(Hj`g9r#3Q4Tki;F2R3csRkQ zTg{sUppmu1z64hHYZi+#-EBz$(6jtA%J z@gNcIi1p(L)=vQ_emaYzN9l2}2RVO;S9bYdv=5LOf8xOwe}it2ep2r9ho2Z9zWt~g z>r({g_2@roH$AwUjjt&ZJ;{h4Nu_jJ;6FM36(H9hRDmAu$X$Ct+hkl~5W60z*8kR|gsjf)Km;jCq^32uQH@Qq4kJ6E<}fC&{S?6y+i>K0EvVceneS z`sp8CntRFF>^KfAfAR1BCqZax&(236*x93qdYMVQ?Yaw_QJK<39W-^t3w$@}vewwUeL_;oy4 z{iljQ+@*Uy!kIO{2}whn zR|<*%GXtdEw8w*pgcAp9R0LUtr1Z&)^AzR&ZXv_*P>1s@1()Z;53djM?C<Q|56;t;OY7IHg4=YfdDqgIxECNO_&&gMuQ|0R{;uIwRn8Uz|wGC(`VX0e<@* zu=K;9n8}`&uSbt82N}i5GvWbk@Ag=$01X6aID`1XeZd{8%h2hRCn9%nXG4VA5-XWL zRvWWZVYLnl91Jc)VUk|!#HmMOmc+SpkFl035gybpmFa+6rblH~9IFaERl$NBx;P0CybPZ_2l zGB>brtEw$}eOLyc4k0Nx#q)8K$x)WF<6Y*Qc&YHlEKN0rZGs02w?hy^67n{gMksAB z$FeCea$eLl>}Y0-zBx{m#MPQ>J@|4obx+xct*~G@7_?<#mq3>ib^1Uc)QFKXij>Rq zJZYV#o;KT!@YkghfX9Lp*FBCAJ(PN?`1+Kt zzl#tvvG6(#Xx21ZZ=(}E+|i64tnDErBy@5=4I=LCO4Z6F2A96KnV6{c{k)p)$VZ=^ zFH_s!A4@JEZi}5=4w85rlaycn`w zw&PZ@mu^LfCtl|)!pu$UgUoUrwDqwalR;0$ zVBN2u-NW>t-e}FiM(X4A_-W@uCstp0Czca+GdzHpQ-m?6)1lL4#R8%T7nWv?A&C?B zB#S4vCle=5bYgEfTu7QVVMf5hnAyTgD$SLdnOW5WCM*n|Yu%<%qrwDE6qGV+v~R+R&9$7JJIT#NOA&*$XKLvX~Mlt zA!&^$p6|UR3Gz>0Jo^WKYxDX(-s}%;F&c8XySXmT;5w--#)Q0y^YfuDM`4pPYE>DC z1fO1BotIKLDlN=$gA54K`Y-KCy7mn2$Oxw}=ZgjlpWBBh)q zxvQ;<)j>qWaHj}jW=QyI&`eI$-DWwm3}$NPOyty|Toz6NXJ%$Wz@P-S-Zp_8)_ub% zxX+uJ+1o*FX5v%UBRrxrCh^mjd)4ZAA1`+$6q7iVSeQ6*#>oafr4m5D2f$F%ph%KF zoIb7?2KQFs)b)203WqVXkPuTun7hylZuNAWE+B%_?fs!Ho>Box_Xuj$cH3chR^<7g z{cn~7)dK+_uA8$w?qt~T)gV{rgAk~C_15`GOwC%5K)B=$BS1{VB$5EQspRZtW|T() zz=_)uAe3!lAwh)8Z{FNH)&p<3uhtxjwzP=IqYOJ@;rTEzgIh7!SuR)O+4*Ms=||80 z`t9ogCGlT>^re~q^5v)JXJ>P@x5vXlr)6oYR7p>8Be|JAJ&E0&6Gi7pP>hlzz>Fju zZXJ>X|J2R?$??Bd8~v4v2Q#b>s-a%kgQ$lsKiL33x)`1|tc+8%3sF!odbTq=`Y4n= zVkO>j&trC2f}SJ zo0yo1JvuKxsQZw0HUEz~fi9hfbs{2j>LxRY2-hU3J7)XIy_bj+XD5${X01r+PKHE~ z)&69Kr~7?nZbYQ61X9z13lUjZHKFfrr8Dv6t&D;o zS42Y|W!UB(OJCjJT+j1j?iK_$_Xt-f4uo?eE>aIlFv;Nn7n5KBob76RR(;8!7guN3 zchl8o`}*$v-M-ztzk74PH>+911Ev9od1MjyaQBX%bdsebq}Qkxedc`VLrv@2I#}}{KU4WXWXqw@CbBOry>RbohZ$2P|L%y!QLiipgKI6cf0`pg&+L=r1PYVIz~ z0U|-~XUwfyW#Y`aH%LUR<^dNLk4PjM>J&YCHSqYV^(K3BnW-`gwOQr)-~NZ)H-L+l zLMabHW~%o`C#WQ7i&cac^z5qS!RKY^V+l!V^_D1-O6u`3BJ>xZfAa2n-zGde&x>gh z(JqQ3az>k!Gk3zQ9n8biD8rVmH6myBl*u)+=gYi39@WS=a8vL1$KyB*RV@jsE_IOv zWRissMCjhId59qH&OH&Vt?U zhQQQ|DoU|}$iyOGV0}pxIh@B*3u{}WM*#R zW)zwRPRYG`-lTC0Gh3z*6lK@u7u)e(=VfnTZe~kc+@WV3NK`9_MIJIr?<6(yN_5)PjSUz!AYh?ICWX*L2=F zP6CiHGoTqUGITLeF9D8gf z7!fGLP&Tq08kxNM?0kPer(7C1!9B={^W&YyB$>mF3%BY>lty7kNkgB%6vBR9wmHv$ z`zhUtXf{<35nzMf284$h>O7;1fR_d)oh^?9Sl%XPYP05DHjVk-JVFv%S`y0HMUK*_ zB7jzH*ugClCwBu#TO9JS?Yq+qZeQ#6N>Yis2MJIeoJ=2R&+*f;8=&UhO)*+LB{0}y z=}+`CpwPql*R)$M-r}lZ8%edpj%hcYz*@wG)@^}B&Whng|WfrZKh!F^P z77ll9K5R;_raU5&II~7HHvmghcO&jx5_Y#dj0j&2CYe|$9Br;`YOd;4t%AupAq|l- z#xpJ>+T2`GXVqrIPD0n6n32bGOjQAJ=Iw>_SIOMmoH#aRfU^v-O&bm6M4NLC4`NtF z1a*CS{8a9}9_MS#&Lo+0zh0k~#V1%J{$`q)KVm)}D^y31Hfj&!9DmFbbr8u17NY1v z=HCAHvL_DhuO;{|P0HNf30iEA zL{MF?CMJj@#1n$UqAiM`U;gT2G~T40JpYsbz|Dc+vXwu^iMR%E0c>SrNW_#%?BAh#)C+(c^n{12V=9r2$&W z4L#O38cPN-l_5BhHSYyLE>a{RC=FD-HtoJ*&>C(*M2A}^hFg?PDqA*p)emIpPb!*6 zVvnz8V<*O2oJemUU>$g{$c3x|dWUy~b$=!L41!kMa(|cwJXGWaq@M~TS5qLuLw`-^ z-i?k3SohlZ&f6dWNGW^gtM&UwLLkn5l9mJJYop?)9>)D)@YHt;_1ri#wB=+==tLxx znb|@a%*^V#0=s=@5|eO7W=;+}LH=&mlB9kY1t6R}OuB($tdRlz5wet1bw<6XV3Ew7 z93g;vn4BCU%q>ysgUiG@!ig!U8;vI>wlGJi)s6`D8E}tV6)>;zCGYnIDBS%0^&PR) zWs&E9@*fgIa*`y770X9Jm)0hiME#pd&M6mb^|Z&L&2wK6x~LS+;4nxbNyLIMP6Ksm zP`zvYbkf;4CkmAm-r{&`Bm}{B$9?sSbZ=%SMjrdDiBh4Ig{0?+qb{~o2b(po6I?Bn z1JDX$GF_+jd0>mMrlAx+8Qs(4YWzugqk*uFB>sf^@X)V5NnN4S-Qx5Bx^*T~B(H7*5C&PaPIzXPZq3Ie59|_=)X5q|$z6#_NW5=9 zh@Svcb8`gTIjCzd49?({_tBH$Sv=gsVpT#AcVd2ML{wk;WG3^_d?8Rtg+c1(=$09) z4{Vo~y2iLo5Fl7S`nUc8Go_NOSww_~HH&b`QZ^ZYH6=nBM|WGM=4uEhrse3kf^nC+9*qd80AN?NY92xyc@R@? zvn?~+T$fgcgrIJSX=c}nRP&P|1U*3@<1`=WjwYw}!B?-`l=JG6!w;hb zBEU>L0NP{1x;qt-{CLIxY&F;GG&5KWxNsuEYM4&qiH+XNEGUM(dO9=4PuZqsw(9NkUhF zg=?%%k3C~AlQ0Vjn_KUOeYHtiH!=llvxpeBDZxFbRNuG8o-!n-G{{Eye0%2JzQ5jc z5?7z@4xA(xCT5+z&DJL0>=FblWX&bBR+u4romMLnr;fTZ*Y(6qrKA#COV7s$N*Zypkbc^Vo}Al$X3l@I2YL#IuJK~s#~ch&toY>9j=Kjpq34)_fd)vR z1^SI21_h8&`hm~RjunFq2@5lIz$sXeJF3qt-K~TvLExqY;UsWJh^-bT@o(U+Y7aU` zlHS?{fJ6z@%dc)Htg;$iAdyHfInXpzIQfbGWL_VyS)wkx=#_$Svb8$rL}~TI2)9^s zBLmDLFzcE_MMu`dPVNu2bxd|WF_^ex=uAjlG^|rOn3A~>I%AeNrC!%rXqV5OM3w82 zW9qe5`NhBekB(Ebh?GeRKO2Yh?e>p9c`1(D+ruDfS*_w%q@Rc+OE?WXT8Gp*3A6e&~hiaM2G9EQR<%snhtA{;#)Ko7;k zPmllqe`RmdBT1H|iG8v>RWoysh^(xt?m`p80|(QXo*Q{-f*dwMo(JTQC%`ko9`sCi z*Af}wZl?O4EIi0lbMwfkg^oN#c%-|VtGz|!lW%#nE#Wuz0_A*5?^)8{p*hrHPDfOx zz`Q)IYUW8;pY`AW&2PMKr}OE<8vpnI^IszIFQ2z{RX)|`6&CR^N-?xNNe0Jew^v&~ zXnIPM(}@{xppRfLWKS7`eFKFc5;OtIvesrrM=7e!M5%IKwqmqP{LUC@V^7MjXfa%R*ixckk zy{atA8Am-C{S0o}n3T`D-)?|srf}6PG{PQcZueiuRTq>?;F3KGY6*2*8mrAf4<%J zq-W*->mPsjWgB}KD~1I!YHXdEq6%QY4ra1_=qm8+H)jrF4vX8@kv`5JWo)w^tj>N} z>(HXpGgtMozXmb4m4@5PPX#MYtCFG^6)D9H-o05{dpWvPp#Xj52kxsFu!ZE@5Urn zqoU$(&R7XXKKjny5&FB*lJYIfkqI>wVuBF7oSb8Vo8cbObaA)Czc4cExQj|Xqx+?n z!H29dGx-Qst;)r-YQ>ZyFcUmSwZe^bu00|qEZUGI*q;#W;WV58NSKi2k>+9Gn6vR2 zY?Gj}+CfPId~OL>?8L}3_)jHnxaW_Fv|2+40x8^>v~GMmTz7zk zpt1qxj00e5Ti=-3YzXJME!*%c4tD}>GZ|?1zoj&eb-na{BZ6@8$&yI{WVrba#O9&I zO6u7iUZF@UOCXRKHp$#3sI%v zyHF#-a8r^XuM$&r8P=QdiPi`kh{$ZDH33v`AbRXo)CtR)&4Hw;cPo|Z5$BT(QdRx* ze7zCJm{_U4*7z_JImeh464$4qn`gTi;?b>BkSZrTz87_;EvYtZNf|=R-#;i$< zX*BI|I?pVS(-T<_0=H+dOyENo%7~2EuK{QV!h?}u^}X95B7~Q6+Un{KbJl9Jdeip# zr`Li_#~v|QS1jkoOsX7?zHJeCH-fIMWw5)(mr4Wpr=(tapP9}w@@{E36;+26>%j_? zza2U!LjzVZ0s=J}Q~5iBuMlgIGwMkm=z;DgdPiSU|M4vwOH( z#1LW>4de*gMjgylq#^bgk`$Ck2t|SxS?h`tlI~-MX@d~1q6gWWYq}8APAn`&4L3Xo z01szTdho|N{!}r{6iCtk_J7)X|MBCefBLUK{o&=t3hwxLI(_`K?$N`do!jF=#QU-)??ya%7qI&S>~e2E{rF0{E3*RW@kWKigL_G4 z*$3vGk3AF7;>euCBhvCN%!|csB)q`mp!X0E9p>o|BauZG7M)Yo(q4iC9<|i6niuKO ziNK^vOBJR<90{iBNHtxqaxQNoR#9dqLPoe-q4+>XSi!8SEdkGI1YeF!4W-zZ?t9}_ zhC=18b#xd>tb`0i61rCiTrzPr!I_Bk8i6sXvKIezDv!YgYSfg)(+DCY@^AnC|M=nQ zhc7Q*diP)d;>^zLy8hliqKE%>Br~i%SpGfKmEX&+OHdd zdXET-J%`8nN!ClPei}RWmmp4-`1pJ}pBpKDb^7J)wn3vku{192B`a*0?U|XPM1qL0 zUP+43#%&d1%7Ct{3nQ^#b2(%C8sT|D02f+B~;Delss$=7Lya7}1 z4|D*+x-Ls(ly``dO!>j%j4uO|Uh($QiO|~0BnYpGV?_CG9sY$#rpfpcYE`}$(}JR| zh*oBAMIBh$De_SBAcyyeDCE$?4$g25V^QvIo^g-Ni1d+TP96}R^Mr0HLTu6R`ES;2hdI}Y_wHl^w9WnyAI0JD!mUM5f1N&$QZ$j(^-jWITL_>!+y1= zWqJNZ`}pzvH=lmBZ|3IR`|tkn(s$3~jPYT8?!H$ctqZ9vV+`vFTN#g-@OSKEFvJu3@9=$rc-w`tLeWZ_Bo|8DUU`7T!aj)C%h zEOsDAZ(_)(VXeGHD;@OV$E*wi!Xf-{4;+cV!Z3gM4B;CV$3tzE88zbY^eS)iO?r92 zok##$0j9?-wX~I4fwVN?a@m}{X6DgJA3ETI*(tyz!t7}(t%#hHkV>r5a&{L~+J4Nr zGJ_Fe#V#v$bD|8udC>(KMZ^*kA=#rxhA@k0x)W%`47(*}Ar8dCtu7xTYP`((moy^w zv?8k%b<=Zv<7gl0u39-O=FAa zkCzW}-eS{*w|zu-nRbNb*hhG_l|-4Cta}C#leQVvE=piJKhfoRwL#}6U7m=Ae)aK} zpMQE;PI@_=%uSTX-hB@+h{*Q2Y{NrW5+=7K5&G`Xl<1p~t$R4$-OBS@E8NLcc(cGQ zArcjlVZ%-%5orKHSFNJZ_Hc{SlZsY}A1n}^#_QYb0BG#iU!&h*eO9pl z>ccNywrd0ozFo(M=gW`lFMj{!3x?PT&~zRzokJ~bA5ro@5!aRS+fsLU-isXYcZxBU*&=^;8zewbR=l@pl)Gcxghaihy~j~X zMKn@bB0a47?6PTazY7XzUIIeOC{+M52ZJqf(iIS*Ecs4my3bSjfKYY#evH^2dYE$H zq9Pz#L@4VlvFa&j21+o=nW3soN@;j&5{h^X7>+ZWO zfAt^79za|^T|WLG(#Drpzg`DX*ex>xLgUcc=Z9a7u|f^*Mwx%MdLA zZA^q;o_}BnadIQK@NhH#`iGs@9TAuwtea0 zOcd)ySb4cf-$ptRJM}p; zydSQ(5E4;|bRsb8!b|xTrn^s-x@UT15;2IF#B0t*tgfimZ(sFrPmc$rween#-NZW!rPtVjxoG*NS5+d{+?%7{` zS>*gd!Xb*~M7P&igNS)#CVV~fdJ?zHpqG9d)`z8e^v&&-ZlMd?u)cX~ZNCl{EN9-Y zIX17UGl;Cm*dh#Wv7UuQZ(n-98WOC~RaChxH1-KX=t4G9S0bU|gM~kRxct>`*4HoH zkKlG@n{Xp-fWMVc*3Y6m=LWL$s&=BTci`ow@29VkczCK+*DV(u>Rre z6*1?m8D$L(R{roK1KGPFc)x}+w?zZFZ+^PWc2F5x8r)kGZPHe8kJryVlFm;WB}nx| zq%_h+BNEVx5I(Vt;rpxYFQF%5LBEdWthPsHUVc~zX(Mwtw;&-|n3Y6nzdC@hJbi55 zdqUfawv_Xtu20L~e7gL<|Mc3;3M|(XGAMeu2Z)$RFWe-F$@Zwyh=q*d{pZPcn9_0t z1s||z^84069(FrQ05=Uf@sfgB`lqq=jDxxBx#7vYP!@95-g+PXP0K+?z z6lFLOK?HLqjo2~cY}mtN`lEokMUDa}N9>szCbq6i}NS+DMq%h0tQRVWU{UI~B&Gc|PG_*Pje&#>EGvr&YwE(wNk|BB1OsKTVmY;Ov)hXyU?Yf8 z`B80^vAM2v{wT=Whx43Gk7AyBPuqRYsJtevAuZE~Hokl~XZk<>pGg*X^EC;bhSQAa;u+FTR$t28VQSN;pQZCn%Oc30? zW@Jq?XEDZsAf!bw$)unhXGYonSdJPn^DGM`BZv2-@~EpC@et0<=URR zF$grmmoqOXMv^Rt%OwK=^E^F)b=vt^&x{#B?C5UBobpU%@AGx z(EC0|un{gz`>nrz9xQN6Q4+;^Ru&>AQ9eB@v4n?pj4f<;Hzy)pX7+_Hyqr>3zIAehWL!6QaYJAZ;Ka0?qG3J}##ob(>d{g5`zuO1>sk(0rDbeV)B zsQmyVjw)z25H(-B=PAXJG+H%}d}BO%fc=GmGQSl|Oz+U4?_3CXo$t)OoO<;l_X9|u z4&${mY$TCLv$4;~L)j-Ctk0NWB9vHV@fJ?{Ao3L%*b9m%ATK4wvu zL{cJ`` zmQ~#+%g8N9A1ol^wsKp9g|?T@T5_#8Juk#Gwz0hgKoJn7<;06BFYFe&=-9(8L}hHV zEv`IPX_A?uE=o)zoZ5=9?GZC-VR>4m<@NK}uU5^U_oO5uTAmJ8a#4zz+QKXpkv<|l zb6S@`l!-wg>-El2Mp6(xBxn?FN%1a*_fGyfB)duUu=?*%68?zt*yG(QuUhDi$^WsB zZ!Ux~29_o7Yl7#p%YcWMAMT-|cXJE4ux2t40-fnglmJ*nARd#%Q8-y+6(S<3S&T57 zkJ+P(fZ%RSJiJeS=!|Nvwv|N|3!9K=S$KhkR9Oj#bSmFm5oDTs1zsFbz`HEJ`*3{@ zH*_r%u|zy9_cv7I!Rj82im?`^gu~Dfo~;oPNWh#vqP$8Yp$!P^FCK1@(iY;1kO7B9 zw*VtNz51afQcf7q_E%>HD_f8Aa%v}h`TPn{zd3?hqxLLe8J;+0xD&zl0VE6GzIFgU zq7)RwV%s=<;BW$^511!$M(DVX=U>S){rWn-07jha1!G6Q0RS(x6G%^0@YX~>ZA5sC zot6`M%jQrU#|L_f|hWhI1W1iSMm5 zzWvwlUIm#TW>#hDAyb)?h_ptYB1T$+9y_i$~)vE-Co=Vou0U9 zo$Hxt(o~CmogfMu7B1^k*$4+fO;-}=N*U}u!b_NjjMN`uSn4AEYD<$qf+3m&NJHg_ zwN)=4+vuZj;UmIx4#h#wzgU-L{rLR!U;g<&i=K$Fs$>{3MA~wq&3_LMw63Rq$8~2&Q8~ZIm1PfzkFMv30kwtak3_mh` zo0N}OOjJEVv@p!wYLwT*D9~6yx`>7wh$LyoodR_j6OqB_z@U*yER~^D6B4171!k6r zqIl=@4~XJw6Dlsl$tl9CQ3kX5Xwo9RT*C4l2@5!)K!1Khlqvj-e+vg({`&9!K@_YL zs~A1kGuny2{B}en3pjIsjlR2Rtn1n?#cKy~GC|hkb{#=PqD-2^N7Pzl7AiuXw9G)i zne8DeOSF+=xhONjk&&-Ijq`I;=Iz>9a%|CGkK;qYiqi*4+F!3<6P$G?Mug{nji*l) zrl|ea3j*H0M755jAYgsg<-DYKYP7xBauOC|rM7avMeK!Xq7<0S)K&@0GUZN7dSEb1 zbwzJhq3@KE2NFt&_Yv9jb_#uWIQhML=0J-6B0Ti11}ZH`e($STwHnsLbEvKa_H-nK z`K~(mFl0=qghiMl-HYEqMSn`B%!nwUrnVSCsZHZ5q(@Z*Z?CO!o9W9L!aDOgi5f4% zJF+bGh?1HvbDVIbHEIbgd?ZNA0%Z?~iX(e_e}Q!5G$dUk&GBVqRKm7QEn{U_t`n!I5*5Xd-QqI063$vDVfhQ0I^cO>>EaD@} z7xQRv6A9wE@bkUw{XPYwZxDL=Gs||aa^Wd_x&QSM6#5H3cq%l%AJ{6%M5MAXIMRuz z=~72Bd4dpO#2je^5KH40;eaPNXJS`If{V!Xpi2~P4Dsq?Dr=13HXcPkD(w)C1+fZE zaH(8UEIMJ@Ni|)Wm3ih0XE`ww2L*vWqH$vuBzYPo%>@SnrAjL`4SnySmwD)&6|0qq z5#eqgBP*eioa}Wz&I|*vt_TBo_ze*h9z?jkLt7GqFh+|9@NpmA=K_rMOy}LYZMDfoDmi zQX?i~^K|A`)CmGNSv|wE)A7V1iaoD&ba{d3|h1ihFp%@rw-G7hQXp z5+x`yh%_@t_Sv!{h&jTNYcvrAFjJ+?s48dKwMTdoagB)?>^1Jm96p3qfss-7!^0`W ze3(bf6X93?{(l*pu_OZ4C$?x71QsP}0gARz2D3&YS)h%GsLTm7sVo6Yn;{Cf++Mx7 z;F(;$O=Ax_!m-?@fAezE_0qy)x|JsrQ(G{0&me8!8Vj75$pLQbo)Lm&>|;5JuAB+C+`k$v)YekxO|C8rwUw8PjJ*b&7+cKz zq|93VbO=%20H1lo&XSZtlM3<2Zh&vxcI&XOway1qi1}S(@aGqQBt25M^BekwRxEiY zmnQHSvPQbQH&%;*62cQB$zvxZO0$-4K8y8UmUmsHZ`4s0$IU~GqA=Xq2lGg#iDw|u zNIX5$z><>*GV`3uJE(jFx)0?xlVpz^q)a$WD`5lhG!-q|Pymap)67c(wLD3frQ*1W z`2IR|`x?t7S=c&s4Umr>%Vml;eIN|G()aXlg!>XMvyWD>qW*MKC(pgHFa%g zNsGRLG$yGhATjHoJEm}`LJUADzx;6ze6#4kzk(mudR6~52Z+CH8{DVA#7qeH$8IDO z9+8RGlwz8Om#@0YDI^NbBo;<`j5<3#AqVzY_59<@_jHvetQj$4R3e*7iwtIqKqe7W zMj+GEM4Q`KNP-UMVbaIdPY_|vv`kneks!mv3#eXLLF5r5yAYSi&odaT)OOwwU@&Dy z22oXllR;D#l^*eq6(`M^;oZj`M8wI<2WqVm^Y!aBj1zeNxB>w(fPD~gTs|(5(QjVa zHS1;l`nxMYV*wus;P)?ANrdI{thb+rO!u8kWIGucx=iZG_GK_b z7A7J+>;3e+ejb;PnwjHj%ait3*OkLV8_Rkc*AeE2K?4Bj8%dM`<8eVMnmvAoj&ayG zyW!{|->g}P-u1-y|KTrc1Imhm%D43A`zyn>ojq;zt?7znB37afFpEbd?EdBC*k|5lZMj9cAdF6G)2sctDj(lfnjR+UkBETUN*lP{|(5k2MII>ZafTFyOL`IlO z%T!8=gr!A#Bi*An5++F^Pm2g9jkNB)E+vwgHOy0hpPB9t#i4xsH~*2Dw%4dZ{P`2L zb-BLua&}wK+*Z=laU+w6pweQ-?$!RBo=@9LzkPM#tov`o@hCM>cZ<&i{g2D znT^fjxQ^+3tM@1VUT4p{)yEHO`WwvWanV2iQ{mHA zk`h;KVBH2!z0798y6>ZXb>{-zPLAxdopi~5NDy6-QM=8zDUc9B}; zb(XCc-LDaz+K8B0f`#Hh5#2mJB84f4d4KhcltqNcej{CAoookFl6aDUjT_Y~9M>R% zdrD(&v@|fown)ov!JK+xX=O73V)7B;asFXlU|)V3%SGC%*1gu`-a}UgQ{N1Ljp;bz zyK^~Pr|3nc(Q;7`B0LOHo#3}%o7_oP?@FNi+KGEQ3q5+5ziSD8zA?T9^!{iYfTN*F zAP(UO(_0RxGtY&>yM<5|SVkIi=0fA_|GL2d0Mih@D)2YC0WDqjFNa#$$GGpu=ZU_L4 zR9Slrz{`1YI%+W#Gmi`p=adp7gGF+E(&fC^FcwWG>+fSQc zCaO}Lrwwej5dF_MUp#S<;+vH(ft zE5%2>M~HwBgcl|b-|B~|sGBRd*48}etNYk$%TbiCd@zfUhVN}z3NBDyN|~vo8R2vG z88bSG`H&TOCJ74@Mkdemc*;(zq*+CoB@@h~@Zp8OB@r?xBT`bR*+cS8l|cWaHeR3F za%tAPHqA&;(WcfnB9W$|%1jIC)8+E@_q&6|w+BY@>wot@uTM=^c8iQ4=H;{$Nh2y}fT(YSnYP>Z`+t2&r0sEf zYCeL6S$OPLN{NU-l=TCzPpzHT^}No&2)E4an`gw+r%QspU-zrszFG!{r!=^eTZV-; za-;P^=V#84u@7PrrT*2VQFw$Sda{yRMkEQfRqSfqxI(#?i;~dtp}FVjLkpvlq@6#s z8h$M&sivQpZaVQ4+G@G4nNN=58YRjTrG5 zcbo6(A9`SS-uV$ss%w-#&o^IktYS)hj~4e{37qL}Q`B?BPCj<7Z8;$`U~Xw<4q_m0RBIG z$lI6}{KWDA001R)MObuXVRU6WV{&C-bY%cCFflhRFgYzTF;p=#Ix{soF)=GJGCD9Y zclSly0000bbVXQnWMOn=I&E)cX=ZrszGdeRhIx#UTFfuwYFb1mq QU;qFB07*qoM6N<$f(F7b{{R30 diff --git a/racevisionGame/src/main/resources/images/skybox/skyTop.png b/racevisionGame/src/main/resources/images/skybox/skyTop.png index 1f939f76daa691a0810c2c8d27f5fd05e8f23bb7..90e33729349f1bea3cc1a6359b7a8ffb2e23852e 100644 GIT binary patch literal 48863 zcmX6^cRbbq_kUlPdl9aTGQvf&lI*hXwWYF0kq|Pn8uqwXwz3LI#kI2cjEpiPTzh0? z5*Js$Vo_v>}ed5&{lamI#v%#1vY001!G($_Wx01)+85I|2u zeHmj#$WUKsT{P}$06=xpxibek>fdljebc)D5Of6q(2)Q@q~1c~0KoS;0BqU=fN}-^ zT=eh&&iqTb|wp>ywrnfK!t{tnNa0Url9uNT+6oL|7@ zuU)?;qp0mxc?bY)*KcWSmze`Ur@y2SpB>=JX!y`-1~oD z2SQGOkWup>ORbh@MSo_s;_}Z9bu;F(b2bYe-1Bn?GRKa%=d7RK^z_Z9^pOsOYGVDI zLe;2zU4u(Nxo1eNt`{ z%!8BsY8Fm04)c{IZO|5?fFkoX1?H;?%{xm_AX&baMp~O_ z7@26Oo~Y0=3i_OV;7-!ZKIRJ?QTh9k^Wjd%Nl@>q?(omCtj=MGiyhNon?0Scq333K zVL)EO@`=1=2Tl7-1;Z@r!0)Y2yYp0$8= z>6NMS+9lY9QPVCql(P{J!`V!P-`jO6@*MrQ0$M< zmOml4?`kC-u}C+jTUzT`9wn$koJAi>z6`5{eSh6uQOrE)Q0M=L`xNNA8h}qU5Ww) zJiXCV`t_=NcCy?*Nv00+)tvUR*k15K=lGc4dk1j8TG`%VjZ>?e5BIW6$HNh6x!AB% zPJ)(`YI3bcKiHIolsYMi79oiCPs6p9Owhp(Ets)4NPP$>zfUzC@%}f+-A>-SS+q5F z+B(r;9%u`!w|M1SkZQ#qUjc4--?l7`oRzDq^AGsJ_C0Sh#o1m5ea%v$c-ubu9OL+Q!$F zJJN_NVAc(dkIq|tE9s-M1V=W%WRV_yx&yF^z{f}DihJ0jzJ4n`ywn38etOZ+7*ch4 zOtE1>F&<=@c}rS2%V=_sDZB6-pAetgPBd97|JB_$x~H^3FPV>$%HJ|x?`%7;etTkh z!8s0u&B{qjAKhF?=>xX_YUKA$;Ac8L;9m_I5&Y9({6!9E#>I*H>L9H?}(lU!#EBHd@vI9U@=aneuxiKTh}utU~qoSoI@fQz3>Ui#&zQ; z_xSoxan;6za{ZuUy<8N>9jmfS*3rIxaBtS_P?yqIgyo*rtKYo7rmPrBMSk<4G0fvy zxqr{aXj92 z8}Es`-7dY#X}adD9VR}EQxRQ>tQR_i7%VYm4iAr!?_<+3M;JJ*}io15){rC{8a zK>V)!)Jh=`{&@x|!`p|kn;TXY5oH=~l^AU8;Y}Coc){5;lf4~2{gNB7bxva1%h$VS zvwpp;!9Sy}wu|Lx*`3qp-0icDSNbJo7=$}N{TcshwWM@x3I|y{ndMt+nPzL(1?-~t zkMJXmX9yoSW3mr0uBg!q&tBHM&5fyRuKbGUMn_@<#MZ+fNb~{NDyS=i(53`V^x03L zsOv2>xG_d%tk2rp&vqi}w-rtQqE#w9d8}RHcr@*5qz#+&ex&XWy&7O#yKge{L}axk zQ=&<)U+|%h|NWZw7?cq`O)CY&@$xEMdA}n4P5L%GhDlmOuAUjhFD6*IORsSJc+teS zG@>_)y_|D}VYTPl!$+uxtnUNI4KYIunY7`zCD3kJhvpGltX?v(Jy9;*o8S1H1?|4P ze5X14Ql@H5Fe=2`FvvwLJ*x(9ae=elg^5vA?#^ZIj;2L9!n7y$PN$Z$LUSTBE~)j} za&P=2)GU}>`#3dRa3y?GaZeK*1wroq4u1`5IDeXlZ_rOw3yywDBcNtMiJWW6t^B!G zuWt9TZOmist;J5i`bfifYOafh8lr8CS@m2*#YTqjFxnr8ni%jpv6713lN`8Zm@ zMDO2)UqxzzmrKUr9}KN`oj(hm{kk!F&O+OrljHPvmTa+(r;@h|&mty-#{XIDNTsI! z3|b;KCjG+4Fi!oW-~yC^61p@R%HzRM5(IZdmynR?Hp%PA3k1yq-0`%Xn7Y?ia+V6n_fU9~`Zq!h!t@7|Be)>1W&I?-0i4{qt+*D~&bTsRTX zjfJVwYIobe!W&lAa#?75p+Rf$maJFLwc$4s$iha@#1gqH;639`b;dp8YZt56)oc2f zB3iXz_hpDPj>6SiW_`WTLA!)(UArZ*VtA@2ulPjZPTaBSCf~eXngn z9wE#dP@O+@$>i-IqalX%SqkXr-4wMro!{O^J_4S-^ssl-o)i(DDA=$Y8!<{fMD{>- zw?O9mNV<)(EGQwb3ow$5oidImqfg?uvjvYjTVbve3>;(G|7tFgw7EJAhI=BAFCUWlPPy{8pfK1Q2UKkzgtN@Kb2F?4FV=gg=cZGh(^S++5x<6ntqs{#vnb?J(!OW!>X_=lH4>EvsF*q^;BI2X=)zgs=+ zzG1J>xY`QsF+?EkD(&&OX4wn$NgpF~s{&h1xWciCN=_IuLZ5?J62kGP{KTnSLa3@i z@bNDkW0+-XwZ>ru=3DwwXAoQ#Nw?2qFk*M<)ND*7l3Y=qAyTL2 z^g$10h=RCq%}Fia#hH-^{LXgTJ(Ck9qBC%Ac!@p}bLAv<%u%9E_#spV`155Q_c!^| z@wtZvLtK`%h- zEGNPcqJP$56v6EAQQnl;JIK{xJ_yFajsVC>ay24Zl~v&HSUNqaKSQQ}@6#ItOwNt7 znADirnPZ=KZ#skX7DGi-xZ$(kn|U$Cl&t5w2Utl=Z<#SSdx*znIpki2x}PF=+Vnx@ zY_AoIVaWx}&A230oz=(&6CE$KmtZGh(fhmR*LnE+b$lZ3@7#=t)wHM#cv|nx+1olJ zTpy2jq;@+CM*!UF;?+|T?;dKo$BUqK6)>0x~Ekku+yywp1 z&N5z2K5ts*;46J35)+(zY0Isksq)Hx;hJsLl`~O@z3uAx5mB`^wjeiC!IK5Um3lX{ zs!w~Gd)u9aZ&@WTV~-grG1@b#HhC~+Cs!vjT=-hWLk|uuU99kr9!Vq za2(Dso+&PO>6LJGEGx$=``&)^N5GQ5`qAA)#A{uvA8eB%h%J?aJH6~>Hy0#J_wufu zf5P#!hR|}>c+NE3XLwXV+>FJ!&utDYNUDfd+q(t%uYSOCj8aL23R`fg7uuXOCPum@ zdF|D!u)DXgweh5e0^RQHPBoLn10GqTh^9(?JTEdLD?)p*0PJYaM{9L*g>?<(T1o_jEoARtP!zg+(ScJ&S$o|lTlahS)=A4>nX}G}`Z};h z`YWUFTmG*d(VP!sM80KxM8@3B9@J6?LTqNVu1>M0WA!4G-`ss{R;!+?VZ(U&0CEe> z)^{2_8;&k@r9TGF21(Iw50H`vR`d9f#wU?nX6@jhdKML+VeE``2U38gRs^##!Uu8@D6Mu zAUVJnH7u_HNsH!rv>TU`%>)O(R(<4>MkXBxM0J7ni!m`tPhah*ZUsX2A7+HdkQoVM zS6fAMCWR*K6(43N6%t*v85jv0p7LLBKXKqjqrNf2iBfL%ymuF?#Ce@y%-1w1aDobs z$XO!(+0HU$`TVFnF-|=mDgi0_17dzXDUYNJ6<=LQgJ-3WWt(J@(FY%e`nNa`*ve+a zKJv=hdaS=Q+RK>cniOmP4UK5b@--b6!Y{Fee*cChtvZ|CPh6HFj3vSc;5pvU1g3#$ zB-*f|;e*n&5bMN-E@bZ#4e3!Uth6^f=a}VEZQ(+$mG_9X_2|G$@`>Za1d&^}NIj`U z+tR^QcI&H8iffg?aNdoerQX`&m+~P_(5bT6(bvMK&j+6s7{P6)J&I0Z`er(O?A&?G zUzJ^(QAH|j*=nG}a*qi}{r1ukfHP9sc-~})ryx-h+A7)AT%n0)-+=?A z4d-X-3RwhjTAbM6k4Jpdax-?P#-CTh4}`hs^msW;9nm7JeUD%b^dwNXZ}53G`fga) zV!Y*>q><<6BKG~pb?~eYv#sDi?&UXHXXoc<@?#We2K>0A@gI$*{f#EtnJ}Evx%W(T zIF7+r(`L*!_Fqbti`<=hGI=jKEH)nM!78M=sH^WA+mXlyU(D!}p~v~Jsj>1b2?t;@ zL7O9XH@<-;@)qA&n13MClQs$Kn0GW~TN2+(D*&0LUq#Od-n+Qw!~0WryBJjh&OWnh zrZe(C0%Hp;jO#3mAZDB-i?|K? zt#~2%ZV@3im9m+6AwSOi@Mp=NIoVoB@xKXZ^p9kO9eDYq+F(XV@xpa!&g+;D%$L$X`qc5yYdK z3ORGKpZKuT&3PBk7F(}t_p>i%sH+9!6%Svn z*tVYEC*v6i9(6nKlkyYBHUEHy<(ve;)}N}GSd}j8LoZDCrk}<2q zrmP-`Y;D%>_25Cw+z!#JP$Axv4UORF7s(likz`F+h9=QA9LmTj$dM}`u8lD12G=w1 zfl|G6Q;J^h*w8+Q;IXv=EJllrDr_1QC7latL zB{v-2N)#0>TkSZFF7{X?Pnrq5mdX;ir`%h1&(-SM^3EKD3t3a4d|u^bsI3rI<^G`P z7(cWS8T>2D$2-j^^}^K!Q3yJ0fJqrMxgDyRPS$1)0z8MoJb^H*zXenBK5`Ne$Rq>) zDrFxIkg>rS9>RK)p5XFCDz$9i#rBN9}>|I!3;C<8vT&xvQ@|bHxAWb(#<|m*`_-z=AS#+y? zRE!FVlYmrhEGysk!lgtTl)~N+x8ur#;Q5Pba)3LJHEe_W#f-%xO(7?Jgc!!BMx_v< zYcS3V_Aj?Eqw4$hc8eWcvVw|Ug$N_SjHV=_fwhXnYO2(~E-NG3~GN%f; z@|Pi4nv9 zqD!s(B$(-oKOIhq?W8fft%>4;YtjCy+4crqy#=eM0~cL*1LD|qm^aANx1@K=`-v^3 z&AnJ>73({XxW3i!^Guq)Z15%>rA+a28}k#u37iSSBr%Gr_~fLFh2^&WQJ~6!tQ!*| zTUFMCzr|{OioGCWT*GF#EqFkX7&nR&W&AH@;IIskEMfgSs-yKuFk#9)FmJasmdr}R z@m6w@OEGrk<3CJK1z*g+kV+4*SW?xCX1EY3)h`1u(wFFDM~uJOB3VzAYDk`7Mt zW%QDl)=-dUNakt$#}U5A;KFQGfDjym$4kz;Z1CPqVV+(lY$>z^M7;*(!t7RQYc+6@ zb}EQ=JSW^Ik9~IA4|ZlkX~8F=DAp~EK&iM{~guOq{I9)2UJ6#KWrQdbxHXN zHe4UV^A3_4KS0MJRd^!{@>i4Y$6`Z}B1296TXsB#*xzy=lK6VV>bosCgD}&8iU+;I zl6pBrja3A6*mV;O*Fx;jiZ8ORGgT$@G|CVg*-vY6Qv#bmGr_?@wOZp6~zzYPCvt~(V^RgS1d>WhHymPvc~_3cZd z8H)KY5#a-ThA4u^&Qwx%dFgQ#h|XxBimAgOJuLMuorbNsFemkmAEOZq;4hkDGDrwX zlW1Z=e2%p;mpbaTV=TFgiVe1o`s8(D^QW((G!v)tl3R#(DlN6dGj1jHz}Uug%S|M^ zq+#=h;8_nV<_S*}pZe{#U#U=Ix}ckv>ok_aU&g!g2EuW1j^J^3NDV~n2ss3Rjw_f* zxX?$aHJhR+b;dZOQgxEeYvRNg>BKGtC#1iJ&IV%RtAXapo!!!Rx$?wqOoKUv>ByW2 zzF1Pi9AB&PI75saUCWPT*cT_}Nx8u|>bp%4#@pd#AR$;Xt!yA%26>mdPR7Rc4rtE{ z2*G{si6qjl28uDr>cH%MLu^=Lnzo>OU;#V~5t<$(KB@Dyyf)WFm>W~0g?H>?R7Y{H zsVT{x!7HX_^p<*kb>Z}7~H&Cz2$^#D`LiYc+U_!(};3l3u3fq!P;r4t- zzDg833FIkgH>fu|M-(Ev7rlHe-26aC7X3Q><&?DfUbx8~?1K0@$ov6^4&#Q=I2u~U zI$K`+jFZcKT=OO@VBCmPlN-#zCs>h5E5RSjY>XPGP$BQq+5`t1yj7IQkSEiWAoQV+ zqJ4lko?@6>k@~g>iGL{i@9Yao(YSm8{+HQ`BX>8xsTXjtxfF~P<>kV=@f+8x+Cz#~ zsP@n*bu)~gvK4V?#(~_&?7pPi=!aMf9>?XPd~FCW16dy5BA&%snc*AtIE`x?K|N@B4Q{1W9p1%fh^u`LR7WVEW95;7JCL32M9+S+m9J zMg9apL@_M{F?b}&lrR9iw-eF}%=vC-U2@?N9L>m?14D6=%z8zvg49UYXXFaUC8vy6 zX*s6h3;f&J`ol!jyHhqA3s0ta&*Z#Ci+!X6e{3r6#o0GdA@Du9WCfuAf~EyCt4O#J z8MC~uHMTfyY-I8!yDG~h@xvqMB{G~?SK^+jeGh7Qovx)|jpDXhda}KgM(EVO3B%C9 zwqu7a2X1u*v-PcpcYwPC;a2n$N60pIYE*Rb({H>>rM=#9I@VsGF$~#&VHY8!-@Dc# zo9jph5n8Z2BKjGG-rOnLU9srM$PMMMN%)jOWl#AZLB^|~4@Fl0q@EE(4LCL5nabelUP_28O{oAmbtMO(NBCr*bUy0@PWO1(t# -Dr$sfCMP#-5w?0v1= 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 S?4{=*;LF^^(zw*nIpTjTrYS)H literal 40510 zcmV)RK(oJzP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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�Dk8-D@qSNiAwsG}bB>)!95I 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 WIxsMX6(gqr0000 Date: Wed, 13 Sep 2017 12:25:52 +1200 Subject: [PATCH 23/59] Boats and marks are sized realistically in 3rd person - Changed SeaSurface to Subject3D to suppress scaling - Cameras can now be selected through View3D interface #story[1190] --- .../Controllers/RaceController.java | 47 +++++-------------- .../java/visualiser/layout/BoatArrow.java | 17 ------- .../java/visualiser/layout/MarkRadius.java | 17 ------- .../java/visualiser/layout/SeaSurface.java | 37 +++++---------- .../main/java/visualiser/layout/SkyBox.java | 7 ++- .../main/java/visualiser/layout/View3D.java | 45 ++++++++++++++---- 6 files changed, 64 insertions(+), 106 deletions(-) delete mode 100644 racevisionGame/src/main/java/visualiser/layout/BoatArrow.java delete mode 100644 racevisionGame/src/main/java/visualiser/layout/MarkRadius.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 43ca391f..ba35e08d 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -202,11 +202,10 @@ public class RaceController extends Controller { StlMeshImporter importerBurgerBoat = new StlMeshImporter(); importerBurgerBoat.read(alternateBoatAsset); - view3D = new View3D(false); + view3D.setItems(viewSubjects); view3D.setDistance(1050); - view3D.setYaw(0); - view3D.setPitch(60); + view3D.setBirdsEye(); view3D.enableTracking(); view3D.addAmbientLight(ambientLight); view3D.addPointLight(pointLight); @@ -216,14 +215,13 @@ public class RaceController extends Controller { RaceDataSource raceData = visualiserRace.getVisualiserRaceState().getRaceDataSource(); final GPSConverter gpsConverter = new GPSConverter(raceData, 450, 450); - view3D.setItems(viewSubjects); - - //viewSubjects.add(new Subject3D(new MeshView(new Plane3D(50, 50, 1, 1)))); - + // Set up sea surface + SeaSurface sea = new SeaSurface(750, 200); + sea.setX(250); + sea.setZ(210); + viewSubjects.add(sea); - SeaSurface sea = new SeaSurface(750, 200, 250, 0, 210); SkyBox skyBox = new SkyBox(750, 200, 250, 0, 210); - viewSubjects.add(sea.getSurface()); viewSubjects.addAll(skyBox.getSkyBoxPlanes()); Boundary3D boundary3D = new Boundary3D(visualiserRace.getVisualiserRaceState().getRaceDataSource().getBoundary(), gpsConverter); @@ -234,20 +232,11 @@ public class RaceController extends Controller { for(Mark mark: race.getVisualiserRaceState().getMarks()) { MeshView mesh = new MeshView(importerMark.getImport()); Subject3D markModel = new Subject3D(mesh); -// Subject3D markRadius = new MarkRadius(3); - double x = gpsConverter.convertGPS(mark.getPosition()).getX(); - double z = gpsConverter.convertGPS(mark.getPosition()).getY(); - - markModel.setX(x); - markModel.setZ(z); - markModel.setScale(3.5); - -// markRadius.setX(x); -// markRadius.setZ(z); + markModel.setX(gpsConverter.convertGPS(mark.getPosition()).getX()); + markModel.setZ(gpsConverter.convertGPS(mark.getPosition()).getY()); viewSubjects.add(markModel); -// viewSubjects.add(markRadius); } // Position and add each boat to view for(VisualiserBoat boat: race.getVisualiserRaceState().getBoats()) { @@ -258,28 +247,16 @@ public class RaceController extends Controller { mesh = new MeshView(importerBurgerBoat.getImport()); } Subject3D boatModel = new Subject3D(mesh); - //Subject3D boatArrow = new BoatArrow(12); - - boatModel.setScale(1.5); viewSubjects.add(boatModel); - //viewSubjects.add(boatArrow); // Track this boat's movement with the new subject AnimationTimer trackBoat = new AnimationTimer() { @Override public void handle(long now) { - double heading = boat.getBearing().degrees(); - double x = gpsConverter.convertGPS(boat.getPosition()).getX(); - double z = gpsConverter.convertGPS(boat.getPosition()).getY(); - - boatModel.setHeading(heading); - boatModel.setX(x); - boatModel.setZ(z); - -// boatArrow.setHeading(heading); -// boatArrow.setX(x); -// boatArrow.setZ(z); + boatModel.setHeading(boat.getBearing().degrees()); + boatModel.setX(gpsConverter.convertGPS(boat.getPosition()).getX()); + boatModel.setZ(gpsConverter.convertGPS(boat.getPosition()).getY()); } }; trackBoat.start(); diff --git a/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java b/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java deleted file mode 100644 index e682f6bd..00000000 --- a/racevisionGame/src/main/java/visualiser/layout/BoatArrow.java +++ /dev/null @@ -1,17 +0,0 @@ -package visualiser.layout; - -import javafx.scene.paint.Color; -import javafx.scene.paint.PhongMaterial; -import javafx.scene.shape.Box; -import javafx.scene.transform.Rotate; - -/** - * Created by cbt24 on 9/09/17. - */ -public class BoatArrow extends Subject3D { - public BoatArrow(double length) { - super(new Box(length/3, 0, length)); - this.getMesh().getTransforms().add(new Rotate(-90, Rotate.X_AXIS)); - this.getMesh().setMaterial(new PhongMaterial(new Color(1, 0, 0, 0.5))); - } -} diff --git a/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java b/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java deleted file mode 100644 index 1a7f3634..00000000 --- a/racevisionGame/src/main/java/visualiser/layout/MarkRadius.java +++ /dev/null @@ -1,17 +0,0 @@ -package visualiser.layout; - -import javafx.scene.paint.Color; -import javafx.scene.paint.PhongMaterial; -import javafx.scene.shape.Cylinder; -import javafx.scene.transform.Rotate; - -/** - * Created by cbt24 on 9/09/17. - */ -public class MarkRadius extends Subject3D { - public MarkRadius(double radius) { - super(new Cylinder(radius, 0)); - this.getMesh().getTransforms().add(new Rotate(-90, Rotate.X_AXIS)); - this.getMesh().setMaterial(new PhongMaterial(new Color(1, 0, 0, 0.5))); - } -} diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index f1399b82..57056556 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -9,51 +9,40 @@ import javafx.scene.paint.Color; import javafx.scene.paint.PhongMaterial; import javafx.scene.shape.Box; import javafx.scene.shape.MeshView; +import javafx.scene.shape.Shape3D; import javafx.scene.shape.TriangleMesh; import visualiser.utils.PerlinNoiseGenerator; /** * Creates a SeaSurface */ -public class SeaSurface { - private float[][] noiseArray; - private Subject3D surface; - +public class SeaSurface extends Subject3D { /** * Sea Surface Constructor * @param size size of the sea surface (has to be square for simplicity's sake) * @param freq frequency the perlin noise is to be generated at - * @param x offset that the sea should be set at position-wise - * @param z offset that the sea should be set at position-wise */ - public SeaSurface(int size, double freq, double x, double y, double z){ - noiseArray = PerlinNoiseGenerator.createNoise(size, freq); - createSurface(); - surface.setZ(z); - surface.setY(y); - surface.setX(x); + public SeaSurface(int size, double freq){ + super(createSurface(size, freq)); } /** * Creates the sea surface */ - private void createSurface(){ + private static Shape3D createSurface(int size, double freq){ + float[][] noiseArray = PerlinNoiseGenerator.createNoise(size, freq); Image diffuseMap = createImage(noiseArray.length, noiseArray); PhongMaterial material = new PhongMaterial(); material.setDiffuseMap(diffuseMap); - //material.setSpecularColor(Color.WHITE); Plane3D seaPlane = new Plane3D(noiseArray.length, noiseArray.length, 10, 10); MeshView seaSurface = new MeshView(seaPlane); -// Box seaSurface = new Box(noiseArray.length, 0.1, noiseArray.length); seaSurface.setMaterial(material); seaSurface.setMouseTransparent(true); seaSurface.toFront(); - //seaSurface.setRotationAxis(new Point3D(1, 0, 0)); - //seaSurface.setRotate(90); - surface = new Subject3D(seaSurface); + return seaSurface; } /** @@ -62,7 +51,7 @@ public class SeaSurface { * @param noise array of noise * @return image that is created */ - private Image createImage(double size, float[][] noise) { + private static Image createImage(double size, float[][] noise) { int width = (int) size; int height = (int) size; @@ -129,11 +118,9 @@ public class SeaSurface { } /** - * Get surface - * @return the surface so it can be drawn + * Prevent rescaling of sea surface + * @param scale ignored */ - public Subject3D getSurface(){ - return surface; - } - + @Override + public void setScale(double scale) {} } diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index 4ca205ee..2f40aa86 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -149,8 +149,11 @@ public class SkyBox { } private void addSeaOverlay() { - SeaSurface seaSurface = new SeaSurface(size * 3, 200, x, y - size/4 + 1, z); - skyBoxPlanes.add(seaSurface.getSurface()); + SeaSurface seaSurface = new SeaSurface(size * 3, 200); + seaSurface.setX(x); + seaSurface.setY(y - size/4 + 1); + seaSurface.setZ(z); + skyBoxPlanes.add(seaSurface); } public List getSkyBoxPlanes() { diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index b82457cb..bf4ee555 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -83,7 +83,11 @@ public class View3D extends Pane { /** * Distance to switch from third person to bird's eye */ - private double THIRD_PERSON_LIMIT = 100; + private final double THIRD_PERSON_LIMIT = 100; + /** + * Distance to stop zoom + */ + private final double FIRST_PERSON_LIMIT = 2; /** * Default constructor for View3D. Sets up Scene and PerspectiveCamera. @@ -162,11 +166,37 @@ public class View3D extends Pane { scene.setOnMousePressed(e -> { PickResult result = e.getPickResult(); if(result != null && result.getIntersectedNode() != null && result.getIntersectedNode() instanceof Shape3D) { + untrackSubject(); trackSubject(selectionMap.get(result.getIntersectedNode())); + setThirdPerson(); } }); } + /** + * Configures camera to third person view + */ + public void setThirdPerson() { + this.setDistance(THIRD_PERSON_LIMIT / 2); + this.setPitch(10); + + for(Subject3D item: items) { + item.setScale(0.1); + } + } + + /** + * Configures camera to bird's eye view + */ + public void setBirdsEye() { + this.setYaw(0); + this.setPitch(60); + + for(Subject3D item: items) { + item.setScale(1); + } + } + /** * Stop camera from following the last selected subject */ @@ -184,7 +214,6 @@ public class View3D extends Pane { * @param subject to track */ private void trackSubject(Subject3D subject) { - untrackSubject(); target = subject; updatePivot(target.getPosition()); @@ -194,9 +223,6 @@ public class View3D extends Pane { target.getPosition().yProperty().addListener(pivotY); target.getPosition().zProperty().addListener(pivotZ); target.getHeading().angleProperty().addListener(pivotHeading); - - this.setDistance(THIRD_PERSON_LIMIT); - this.setPitch(20); } public void setNearClip(double nearClip) { @@ -234,13 +260,12 @@ public class View3D extends Pane { public void updateDistance(double delta) { double distance = -this.distance.getZ() + delta; - if(distance <= 0) { - this.setDistance(0); + if(distance <= FIRST_PERSON_LIMIT) { + this.setDistance(FIRST_PERSON_LIMIT); } else if(distance > THIRD_PERSON_LIMIT) { - untrackSubject(); - this.setYaw(0); - this.setPitch(60); this.setDistance(distance); + untrackSubject(); + setBirdsEye(); } else { this.setDistance(distance); } From 253a16a6644d2b842de392d8043fea0a38689df1 Mon Sep 17 00:00:00 2001 From: Joseph Date: Wed, 13 Sep 2017 12:44:25 +1200 Subject: [PATCH 24/59] Made the sky box use sky box planes they cannot be scaled. #story[1261] --- .../src/main/java/visualiser/layout/SkyBox.java | 10 +++++----- .../main/java/visualiser/layout/SkyBoxPlane.java | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/SkyBoxPlane.java diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index 80b60956..6855b488 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -52,7 +52,7 @@ public class SkyBox { surface.setTranslateY(y - size + 1); surface.setTranslateZ(z); - Subject3D top = new Subject3D(surface); + Subject3D top = new SkyBoxPlane(surface); skyBoxPlanes.add(top); } @@ -71,7 +71,7 @@ public class SkyBox { surface.setTranslateZ(z + size/2 - 1); - Subject3D right = new Subject3D(surface); + Subject3D right = new SkyBoxPlane(surface); skyBoxPlanes.add(right); } @@ -93,7 +93,7 @@ public class SkyBox { surface.setTranslateZ(z - size/2 + 1); - Subject3D left = new Subject3D(surface); + Subject3D left = new SkyBoxPlane(surface); skyBoxPlanes.add(left); } @@ -111,7 +111,7 @@ public class SkyBox { surface.setTranslateY(y - size/2); surface.setTranslateZ(z); - Subject3D back = new Subject3D(surface); + Subject3D back = new SkyBoxPlane(surface); skyBoxPlanes.add(back); } @@ -129,7 +129,7 @@ public class SkyBox { surface.setTranslateY(y - size/2); surface.setTranslateZ(z); - Subject3D front = new Subject3D(surface); + Subject3D front = new SkyBoxPlane(surface); skyBoxPlanes.add(front); } diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBoxPlane.java b/racevisionGame/src/main/java/visualiser/layout/SkyBoxPlane.java new file mode 100644 index 00000000..b8824d1e --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBoxPlane.java @@ -0,0 +1,14 @@ +package visualiser.layout; + +import javafx.scene.shape.Shape3D; + +public class SkyBoxPlane extends Subject3D { + + public SkyBoxPlane(Shape3D mesh) { + super(mesh); + } + + @Override + public void setScale(double scale) { + } +} From 83e696b79e2c868a0cfd14968bc036adf865923c Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Wed, 13 Sep 2017 13:18:25 +1200 Subject: [PATCH 25/59] Committed merge-related bug fixes --- .../src/main/java/mock/app/Event.java | 39 ++++++++++++++++--- .../java/mock/model/SourceIdAllocator.java | 4 +- .../src/main/java/shared/model/Constants.java | 4 +- .../java/visualiser/layout/Boundary3D.java | 4 +- .../java/visualiser/layout/SeaSurface.java | 2 +- .../main/java/visualiser/layout/SkyBox.java | 10 ++--- 6 files changed, 44 insertions(+), 19 deletions(-) diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index 1ff92196..2c9785f1 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -18,6 +18,7 @@ import shared.exceptions.InvalidRegattaDataException; import shared.exceptions.XMLReaderException; import shared.model.Bearing; import shared.model.Constants; +import shared.xml.XMLUtilities; import javax.xml.bind.JAXBException; import javax.xml.parsers.ParserConfigurationException; @@ -70,6 +71,8 @@ public class Event { private Thread connectionThread; + private int mapIndex; + @@ -79,11 +82,29 @@ public class Event { * @param singlePlayer Whether or not to create a single player event. * @throws EventConstructionException Thrown if we cannot create an Event for any reason. */ - public Event(boolean singlePlayer) throws EventConstructionException { - - String raceXMLFile = "mock/mockXML/raceThreePlayers.xml"; + public Event(boolean singlePlayer, int mapIndex) throws EventConstructionException { + this.mapIndex = mapIndex; + String raceXMLFile; String boatsXMLFile = "mock/mockXML/boatTest.xml"; String regattaXMLFile = "mock/mockXML/regattaTest.xml"; + switch (mapIndex){ + case 0:raceXMLFile = "mock/mockXML/raceSixPlayers.xml"; + break; + case 1:raceXMLFile = "mock/mockXML/oMapLayout.xml"; + break; + case 2: raceXMLFile = "mock/mockXML/iMapLayout.xml"; + break; + case 3: raceXMLFile = "mock/mockXML/mMapLayout.xml"; + break; + case 4: + raceXMLFile = "mock/mockXML/raceTutorial.xml"; + boatsXMLFile = "mock/mockXML/boatTutorial.xml"; + regattaXMLFile = "mock/mockXML/regattaTutorial.xml"; + break; + default: raceXMLFile = "mock/mockXML/raceSixPlayers.xml"; + + } + if (singlePlayer) { raceXMLFile = "mock/mockXML/raceSinglePlayer.xml"; @@ -95,7 +116,9 @@ public class Event { //this.raceXML = RaceXMLCreator.alterRaceToWind(raceXMLFile, 90); this.raceXML = XMLReader.readXMLFileToString(raceXMLFile, StandardCharsets.UTF_8); this.raceXML = Event.setRaceXMLAtCurrentTimeToNow(XMLReader.readXMLFileToString(raceXMLFile, StandardCharsets.UTF_8)); - + if(mapIndex==4){ + this.raceXML = Event.setRaceXMLAtCurrentTimeToNow(XMLReader.readXMLFileToString(raceXMLFile, StandardCharsets.UTF_8), 1000, 5000); + } this.boatXML = XMLReader.readXMLFileToString(boatsXMLFile, StandardCharsets.UTF_8); this.regattaXML = XMLReader.readXMLFileToString(regattaXMLFile, StandardCharsets.UTF_8); @@ -178,9 +201,14 @@ public class Event { * @return String containing edited xml */ public static String setRaceXMLAtCurrentTimeToNow(String raceXML) { + return setRaceXMLAtCurrentTimeToNow(raceXML, Constants.RacePreStartTime, Constants.RacePreparatoryTime); + } + public static String setRaceXMLAtCurrentTimeToNow(String raceXML, long racePreStartTime, long racePreparatoryTime){ //The start time is current time + 4 minutes. prestart is 3 minutes, and we add another minute. - long millisecondsToAdd = Constants.RacePreStartTime + 1 * 60 * 1000; + + long millisecondsToAdd = racePreStartTime + racePreparatoryTime; + long secondsToAdd = millisecondsToAdd / 1000; //Scale the time using our time scalar. secondsToAdd = secondsToAdd / Constants.RaceTimeScale; @@ -190,7 +218,6 @@ public class Event { raceXML = raceXML.replace("RACE_CREATION_TIME", dateFormat.format(creationTime)); raceXML = raceXML.replace("RACE_START_TIME", dateFormat.format(creationTime.plusSeconds(secondsToAdd))); - return raceXML; } diff --git a/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java b/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java index fb0cfd5a..f590d9b7 100644 --- a/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java +++ b/racevisionGame/src/main/java/mock/model/SourceIdAllocator.java @@ -42,14 +42,12 @@ public class SourceIdAllocator { } List allocatedIDs = mockRace.getRaceDataSource().getParticipants(); - System.out.println(allocatedIDs); + List allIDs = new ArrayList<>(mockRace.getBoatDataSource().getBoats().keySet()); - System.out.println(allIDs); //Get list of unallocated ids. List unallocatedIDs = new ArrayList<>(allIDs); unallocatedIDs.removeAll(allocatedIDs); - System.out.println(unallocatedIDs.isEmpty()); if (!unallocatedIDs.isEmpty()) { diff --git a/racevisionGame/src/main/java/shared/model/Constants.java b/racevisionGame/src/main/java/shared/model/Constants.java index 26c56d11..7a5e2820 100644 --- a/racevisionGame/src/main/java/shared/model/Constants.java +++ b/racevisionGame/src/main/java/shared/model/Constants.java @@ -39,14 +39,14 @@ public class Constants { * The race pre-start time, in milliseconds. 3 minutes (30 seconds for development). */ // public static final long RacePreStartTime = 30 * 1000; - public static final long RacePreStartTime = 6 * 1000; + public static final long RacePreStartTime = 1000; /** * The race preparatory time, in milliseconds. 1 minute. */ // public static final long RacePreparatoryTime = 60 * 1000; - public static final long RacePreparatoryTime = 6 * 1000; + public static final long RacePreparatoryTime = 1 * 60 * 1000; diff --git a/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java b/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java index beb59914..6af7918b 100644 --- a/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/Boundary3D.java @@ -62,12 +62,12 @@ public class Boundary3D { double c = Math.sqrt(a * a + b * b); - Subject3D bound1 = new Subject3D(new Sphere(thickness * 2)); + Subject3D bound1 = new Subject3D(new Sphere(thickness * 2),0); bound1.setX(graphCoord1.getX()); bound1.setZ(graphCoord1.getY()); boundaryNodes.add(bound1); - Subject3D connector = new Subject3D(new Box(c, thickness, thickness)); + Subject3D connector = new Subject3D(new Box(c, thickness, thickness),0); connector.setX(avgCoord.getX()); connector.setZ(avgCoord.getY()); double angle = 90 + Math.toDegrees(GPSConverter.getAngle(graphCoord2, graphCoord1)); diff --git a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java index 57056556..31464705 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java +++ b/racevisionGame/src/main/java/visualiser/layout/SeaSurface.java @@ -23,7 +23,7 @@ public class SeaSurface extends Subject3D { * @param freq frequency the perlin noise is to be generated at */ public SeaSurface(int size, double freq){ - super(createSurface(size, freq)); + super(createSurface(size, freq),0); } /** diff --git a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java index 72c1e89d..23e8ccdc 100644 --- a/racevisionGame/src/main/java/visualiser/layout/SkyBox.java +++ b/racevisionGame/src/main/java/visualiser/layout/SkyBox.java @@ -52,7 +52,7 @@ public class SkyBox { surface.setTranslateY(y - size + 1); surface.setTranslateZ(z); - Subject3D top = new Subject3D(surface); + Subject3D top = new Subject3D(surface,0); skyBoxPlanes.add(top); } @@ -71,7 +71,7 @@ public class SkyBox { surface.setTranslateZ(z + size/2 - 1); - Subject3D right = new Subject3D(surface); + Subject3D right = new Subject3D(surface,0); skyBoxPlanes.add(right); } @@ -93,7 +93,7 @@ public class SkyBox { surface.setTranslateZ(z - size/2 + 1); - Subject3D left = new Subject3D(surface); + Subject3D left = new Subject3D(surface,0); skyBoxPlanes.add(left); } @@ -111,7 +111,7 @@ public class SkyBox { surface.setTranslateY(y - size/2); surface.setTranslateZ(z); - Subject3D back = new Subject3D(surface); + Subject3D back = new Subject3D(surface,0); skyBoxPlanes.add(back); } @@ -129,7 +129,7 @@ public class SkyBox { surface.setTranslateY(y - size/2); surface.setTranslateZ(z); - Subject3D front = new Subject3D(surface); + Subject3D front = new Subject3D(surface,0); skyBoxPlanes.add(front); } From e657a0cc99bcb256b8a377595009e8cf5b600d4d Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Wed, 13 Sep 2017 14:44:18 +1200 Subject: [PATCH 26/59] Added tracking for angle between third person boat and next mark #story[1195] --- .../Controllers/RaceController.java | 29 +++++++++++++-- .../main/java/visualiser/layout/View3D.java | 35 +++++++++++-------- 2 files changed, 47 insertions(+), 17 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 9fd35e2c..29fd50da 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -27,9 +27,8 @@ import javafx.scene.transform.Translate; import javafx.util.Callback; import network.Messages.Enums.RaceStatusEnum; import shared.dataInput.RaceDataSource; -import shared.model.CompoundMark; -import shared.model.Leg; -import shared.model.Mark; +import shared.exceptions.BoatNotFoundException; +import shared.model.*; import visualiser.app.App; import visualiser.enums.TutorialState; import visualiser.gameController.ControllerClient; @@ -304,6 +303,14 @@ public class RaceController extends Controller { // Fix initial bird's-eye position view3D.updatePivot(new Translate(250, 0, 210)); + view3D.targetProperty().addListener((o, prev, curr)-> { + if(curr != null && visualiserRace.getVisualiserRaceState().isVisualiserBoat(curr.getSourceID())) { + addThirdPersonAnnotations(curr); + } else { + removeThirdPersonAnnotations(); + } + }); + // Bind zooming to scrolling view3D.setOnScroll(e -> { view3D.updateDistance(e.getDeltaY()); @@ -349,6 +356,22 @@ public class RaceController extends Controller { }); } + private void addThirdPersonAnnotations(Subject3D subject3D) { + try { + VisualiserBoat boat = visualiserRace.getVisualiserRaceState().getBoat(subject3D.getSourceID()); + boat.bearingProperty().addListener((o, prev, curr) -> { + CompoundMark target = boat.getCurrentLeg().getEndCompoundMark(); + Bearing headingToMark = GPSCoordinate.calculateBearing(boat.getPosition(), target.getAverageGPSCoordinate()); + System.out.println(headingToMark.degrees() - boat.getBearing().degrees()); + }); + } catch (BoatNotFoundException e) { + e.printStackTrace(); + } + } + + private void removeThirdPersonAnnotations() { + } + /** * Swap the colour of the next mark to pass with the last mark passed * @param leg boat has started on diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 9adcaf32..4ae207ad 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -1,5 +1,7 @@ package visualiser.layout; +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleObjectProperty; import javafx.beans.value.ChangeListener; import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; @@ -39,7 +41,7 @@ public class View3D extends Pane { /** * Subject tracked by camera */ - private Subject3D target; + private ObjectProperty target; /** * Rendering container for shapes */ @@ -101,7 +103,7 @@ public class View3D extends Pane { this.world = new Group(); this.shapeMap = new HashMap<>(); this.sourceMap = new HashMap<>(); - this.target = null; + this.target = new SimpleObjectProperty<>(null); this.scene = new SubScene(world, 300, 300); scene.widthProperty().bind(this.widthProperty()); @@ -184,6 +186,10 @@ public class View3D extends Pane { }); } + public ObjectProperty targetProperty() { + return target; + } + /** * Configures camera to third person view */ @@ -212,11 +218,12 @@ public class View3D extends Pane { * Stop camera from following the last selected subject */ private void untrackSubject() { - if(target != null) { - target.getPosition().xProperty().removeListener(pivotX); - target.getPosition().yProperty().removeListener(pivotY); - target.getPosition().zProperty().removeListener(pivotZ); - target.getHeading().angleProperty().removeListener(pivotHeading); + if(target.get() != null) { + target.get().getPosition().xProperty().removeListener(pivotX); + target.get().getPosition().yProperty().removeListener(pivotY); + target.get().getPosition().zProperty().removeListener(pivotZ); + target.get().getHeading().angleProperty().removeListener(pivotHeading); + target.setValue(null); } } @@ -225,15 +232,15 @@ public class View3D extends Pane { * @param subject to track */ private void trackSubject(Subject3D subject) { - target = subject; + target.set(subject); - updatePivot(target.getPosition()); - setYaw(target.getHeading().getAngle()); + updatePivot(target.get().getPosition()); + setYaw(target.get().getHeading().getAngle()); - target.getPosition().xProperty().addListener(pivotX); - target.getPosition().yProperty().addListener(pivotY); - target.getPosition().zProperty().addListener(pivotZ); - target.getHeading().angleProperty().addListener(pivotHeading); + target.get().getPosition().xProperty().addListener(pivotX); + target.get().getPosition().yProperty().addListener(pivotY); + target.get().getPosition().zProperty().addListener(pivotZ); + target.get().getHeading().angleProperty().addListener(pivotHeading); } public void setNearClip(double nearClip) { From 0944e5729a3bdc360355fd508b2bc89310d70528 Mon Sep 17 00:00:00 2001 From: Joseph Gardner Date: Wed, 13 Sep 2017 15:18:27 +1200 Subject: [PATCH 27/59] Dimmed the ambient light and specular light. #story[1261] --- .../java/visualiser/Controllers/RaceController.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index ba35e08d..ffa0b21d 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -178,15 +178,15 @@ public class RaceController extends Controller { private void initialiseView3D(VisualiserRaceEvent race) { viewSubjects = FXCollections.observableArrayList(); - AmbientLight ambientLight = new AmbientLight(new Color(1, 1, 1, 0.75)); + AmbientLight ambientLight = new AmbientLight(Color.web("#CCCCFF")); ambientLight.setTranslateX(250); ambientLight.setTranslateZ(210); ambientLight.setLightOn(true); - PointLight pointLight = new PointLight(); - ambientLight.setTranslateX(250); - ambientLight.setTranslateZ(210); - ambientLight.setLightOn(true); + PointLight pointLight = new PointLight(Color.web("#AAAAFF")); + pointLight.setTranslateX(250); + pointLight.setTranslateZ(210); + pointLight.setLightOn(true); // Import boat mesh URL asset = HostController.class.getClassLoader().getResource("assets/V1.2 Complete Boat.stl"); From 5f96526fcc5a9f40bed3b72789d0053a9b7ee4a8 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Wed, 13 Sep 2017 15:34:02 +1200 Subject: [PATCH 28/59] Added "arrow" pointing to next mark on third person view #story[1195] --- .../Controllers/RaceController.java | 32 ++++++++++++++++--- .../java/visualiser/layout/Annotation3D.java | 24 ++++++++++++++ 2 files changed, 51 insertions(+), 5 deletions(-) create mode 100644 racevisionGame/src/main/java/visualiser/layout/Annotation3D.java diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 29fd50da..a9ba893a 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -3,6 +3,7 @@ package visualiser.Controllers; import com.interactivemesh.jfx.importer.stl.StlMeshImporter; import javafx.animation.AnimationTimer; import javafx.application.Platform; +import javafx.beans.value.ChangeListener; import javafx.collections.FXCollections; import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; @@ -20,6 +21,7 @@ import javafx.scene.layout.StackPane; import javafx.scene.paint.Color; import javafx.scene.paint.Material; import javafx.scene.paint.PhongMaterial; +import javafx.scene.shape.Box; import javafx.scene.shape.MeshView; import javafx.scene.shape.Shape3D; import javafx.scene.shape.Sphere; @@ -79,6 +81,9 @@ public class RaceController extends Controller { private View3D view3D; private ObservableList viewSubjects; + private Subject3D nextMarkArrow; + private ChangeListener pointToMark; + /** * The arrow controller. */ @@ -110,6 +115,7 @@ public class RaceController extends Controller { * Ctor. */ public RaceController() { + this.nextMarkArrow = new Annotation3D(new Box(1,3,0)); } @Override @@ -307,7 +313,7 @@ public class RaceController extends Controller { if(curr != null && visualiserRace.getVisualiserRaceState().isVisualiserBoat(curr.getSourceID())) { addThirdPersonAnnotations(curr); } else { - removeThirdPersonAnnotations(); + removeThirdPersonAnnotations(prev); } }); @@ -357,19 +363,35 @@ public class RaceController extends Controller { } private void addThirdPersonAnnotations(Subject3D subject3D) { + viewSubjects.add(nextMarkArrow); + try { VisualiserBoat boat = visualiserRace.getVisualiserRaceState().getBoat(subject3D.getSourceID()); - boat.bearingProperty().addListener((o, prev, curr) -> { + this.pointToMark = (o, prev, curr) -> { CompoundMark target = boat.getCurrentLeg().getEndCompoundMark(); Bearing headingToMark = GPSCoordinate.calculateBearing(boat.getPosition(), target.getAverageGPSCoordinate()); - System.out.println(headingToMark.degrees() - boat.getBearing().degrees()); - }); + + nextMarkArrow.setY(10); + nextMarkArrow.setX(subject3D.getPosition().getX()); + nextMarkArrow.setZ(subject3D.getPosition().getZ()); + nextMarkArrow.setHeading(headingToMark.degrees()); + }; + + boat.positionProperty().addListener(pointToMark); } catch (BoatNotFoundException e) { e.printStackTrace(); } } - private void removeThirdPersonAnnotations() { + private void removeThirdPersonAnnotations(Subject3D subject3D) { + viewSubjects.remove(nextMarkArrow); + + try { + VisualiserBoat boat = visualiserRace.getVisualiserRaceState().getBoat(subject3D.getSourceID()); + boat.positionProperty().removeListener(pointToMark); + } catch (BoatNotFoundException e) { + e.printStackTrace(); + } } /** diff --git a/racevisionGame/src/main/java/visualiser/layout/Annotation3D.java b/racevisionGame/src/main/java/visualiser/layout/Annotation3D.java new file mode 100644 index 00000000..eae706da --- /dev/null +++ b/racevisionGame/src/main/java/visualiser/layout/Annotation3D.java @@ -0,0 +1,24 @@ +package visualiser.layout; + +import javafx.scene.shape.Shape3D; + +/** + * Created by connortaylorbrown on 13/09/17. + */ +public class Annotation3D extends Subject3D { + /** + * Constructor for view subject wrapper + * + * @param mesh to be rendered + */ + public Annotation3D(Shape3D mesh) { + super(mesh, 0); + } + + /** + * Prevent rescaling of this subject + * @param scale ignored + */ + @Override + public void setScale(double scale) {} +} From de9f4e22ebcafc2250232ae509557625bfd413a3 Mon Sep 17 00:00:00 2001 From: cbt24 Date: Wed, 13 Sep 2017 16:10:41 +1200 Subject: [PATCH 29/59] Direction to mark arrow is now displayed relative to camera #story[1195] --- .../main/java/visualiser/Controllers/RaceController.java | 6 +++--- racevisionGame/src/main/java/visualiser/layout/View3D.java | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index a9ba893a..deaba17e 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -371,9 +371,9 @@ public class RaceController extends Controller { CompoundMark target = boat.getCurrentLeg().getEndCompoundMark(); Bearing headingToMark = GPSCoordinate.calculateBearing(boat.getPosition(), target.getAverageGPSCoordinate()); - nextMarkArrow.setY(10); - nextMarkArrow.setX(subject3D.getPosition().getX()); - nextMarkArrow.setZ(subject3D.getPosition().getZ()); + nextMarkArrow.setX(view3D.getPivot().getX()); + nextMarkArrow.setY(view3D.getPivot().getY()); + nextMarkArrow.setZ(view3D.getPivot().getZ() + 10); nextMarkArrow.setHeading(headingToMark.degrees()); }; diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 4ae207ad..c62fe22e 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -251,6 +251,10 @@ public class View3D extends Pane { this.farClip = farClip; } + public Translate getPivot() { + return pivot; + } + /** * Sets the coordinates of the camera pivot once. * @param pivot source of coordinates From b8c4582d2ac51f103ec65e4782f36da43b7510f4 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Thu, 14 Sep 2017 12:06:47 +1200 Subject: [PATCH 30/59] Replaced mark arrow listener with animation timer. #story[1195] --- .../Controllers/RaceController.java | 32 ++++++++----------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index deaba17e..8b75be1d 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -82,7 +82,7 @@ public class RaceController extends Controller { private ObservableList viewSubjects; private Subject3D nextMarkArrow; - private ChangeListener pointToMark; + private AnimationTimer pointToMark; /** * The arrow controller. @@ -367,17 +367,19 @@ public class RaceController extends Controller { try { VisualiserBoat boat = visualiserRace.getVisualiserRaceState().getBoat(subject3D.getSourceID()); - this.pointToMark = (o, prev, curr) -> { - CompoundMark target = boat.getCurrentLeg().getEndCompoundMark(); - Bearing headingToMark = GPSCoordinate.calculateBearing(boat.getPosition(), target.getAverageGPSCoordinate()); - - nextMarkArrow.setX(view3D.getPivot().getX()); - nextMarkArrow.setY(view3D.getPivot().getY()); - nextMarkArrow.setZ(view3D.getPivot().getZ() + 10); - nextMarkArrow.setHeading(headingToMark.degrees()); - }; + this.pointToMark = new AnimationTimer() { + @Override + public void handle(long now) { + CompoundMark target = boat.getCurrentLeg().getEndCompoundMark(); + Bearing headingToMark = GPSCoordinate.calculateBearing(boat.getPosition(), target.getAverageGPSCoordinate()); - boat.positionProperty().addListener(pointToMark); + nextMarkArrow.setX(view3D.getPivot().getX()); + nextMarkArrow.setY(view3D.getPivot().getY()); + nextMarkArrow.setZ(view3D.getPivot().getZ() + 10); + nextMarkArrow.setHeading(headingToMark.degrees()); + } + }; + pointToMark.start(); } catch (BoatNotFoundException e) { e.printStackTrace(); } @@ -385,13 +387,7 @@ public class RaceController extends Controller { private void removeThirdPersonAnnotations(Subject3D subject3D) { viewSubjects.remove(nextMarkArrow); - - try { - VisualiserBoat boat = visualiserRace.getVisualiserRaceState().getBoat(subject3D.getSourceID()); - boat.positionProperty().removeListener(pointToMark); - } catch (BoatNotFoundException e) { - e.printStackTrace(); - } + pointToMark.stop(); } /** From e354320d74c1af724eea5164b2036521e40a1932 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Thu, 14 Sep 2017 12:20:55 +1200 Subject: [PATCH 31/59] Replaced camera tracking listeners with animation timer - Documented animation timers and mark arrow #story[1195] --- .../Controllers/RaceController.java | 6 +++ .../main/java/visualiser/layout/View3D.java | 37 ++++++------------- 2 files changed, 18 insertions(+), 25 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 8b75be1d..51d9c451 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -81,7 +81,13 @@ public class RaceController extends Controller { private View3D view3D; private ObservableList viewSubjects; + /** + * Arrow pointing to next mark in third person + */ private Subject3D nextMarkArrow; + /** + * Animation loop for rotating mark arrow + */ private AnimationTimer pointToMark; /** diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index c62fe22e..f51eecff 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -1,5 +1,6 @@ package visualiser.layout; +import javafx.animation.AnimationTimer; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleObjectProperty; import javafx.beans.value.ChangeListener; @@ -71,21 +72,9 @@ public class View3D extends Pane { */ private Rotate pitch; /** - * Single listener for subject heading changes + * Animation loop for camera tracking */ - private ChangeListener pivotHeading = (o, prev, curr) -> yaw.setAngle((double)curr); - /** - * Single listener for subject position (x) changes - */ - private ChangeListener pivotX = (o, prev, curr) -> pivot.setX((double)curr); - /** - * Single listener for subject position (y) changes - */ - private ChangeListener pivotY = (o, prev, curr) -> pivot.setY((double)curr); - /** - * Single listener for subject position (z) changes - */ - private ChangeListener pivotZ = (o, prev, curr) -> pivot.setZ((double)curr); + private AnimationTimer trackBoat; /** * Distance to switch from third person to bird's eye */ @@ -219,10 +208,7 @@ public class View3D extends Pane { */ private void untrackSubject() { if(target.get() != null) { - target.get().getPosition().xProperty().removeListener(pivotX); - target.get().getPosition().yProperty().removeListener(pivotY); - target.get().getPosition().zProperty().removeListener(pivotZ); - target.get().getHeading().angleProperty().removeListener(pivotHeading); + trackBoat.stop(); target.setValue(null); } } @@ -234,13 +220,14 @@ public class View3D extends Pane { private void trackSubject(Subject3D subject) { target.set(subject); - updatePivot(target.get().getPosition()); - setYaw(target.get().getHeading().getAngle()); - - target.get().getPosition().xProperty().addListener(pivotX); - target.get().getPosition().yProperty().addListener(pivotY); - target.get().getPosition().zProperty().addListener(pivotZ); - target.get().getHeading().angleProperty().addListener(pivotHeading); + this.trackBoat = new AnimationTimer() { + @Override + public void handle(long now) { + updatePivot(target.get().getPosition()); + setYaw(target.get().getHeading().getAngle()); + } + }; + trackBoat.start(); } public void setNearClip(double nearClip) { From e3266c3b47805109f1d068e5797643211cc1f264 Mon Sep 17 00:00:00 2001 From: David Wu Date: Thu, 14 Sep 2017 12:27:07 +1200 Subject: [PATCH 32/59] Pane removed. --- .../main/java/visualiser/Controllers/InGameLobbyController.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java b/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java index 3366b790..31e6ee96 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java @@ -322,6 +322,7 @@ public class InGameLobbyController extends Controller { */ private void countdownText(long interval){ + countdownTenPane.setVisible(false); //Do nothing if 5 seconds or less to go if (interval <=5000){ countdownTenPane.setVisible(false); @@ -355,6 +356,7 @@ public class InGameLobbyController extends Controller { //10 seconds left. Display 5 seconds for countdown if (interval <=10000){ + countdownTenText.setText("5"); return; } From 8e6a72055853a8631ebe8e1f33ee28aff3db3136 Mon Sep 17 00:00:00 2001 From: fjc40 Date: Thu, 14 Sep 2017 12:39:41 +1200 Subject: [PATCH 33/59] Appears to fix wind arrow direction. --- .../src/main/java/mock/model/commandFactory/WindCommand.java | 2 +- .../src/main/java/visualiser/Controllers/ArrowController.java | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/racevisionGame/src/main/java/mock/model/commandFactory/WindCommand.java b/racevisionGame/src/main/java/mock/model/commandFactory/WindCommand.java index 85eec091..a0424f06 100644 --- a/racevisionGame/src/main/java/mock/model/commandFactory/WindCommand.java +++ b/racevisionGame/src/main/java/mock/model/commandFactory/WindCommand.java @@ -21,7 +21,7 @@ public class WindCommand extends ObserverCommand { public WindCommand(MockRace race, MockBoat boat, boolean upwind) { super(race, boat); race.addAngularCommand(this); - this.direction = upwind? -1 : 1; + this.direction = upwind? 1 : -1; } @Override diff --git a/racevisionGame/src/main/java/visualiser/Controllers/ArrowController.java b/racevisionGame/src/main/java/visualiser/Controllers/ArrowController.java index 739b2f6e..1e93923f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/ArrowController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/ArrowController.java @@ -93,7 +93,7 @@ public class ArrowController { */ private void updateWindBearing(Bearing bearing) { //Rotate the wind arrow. - arrowStackPane.setRotate(bearing.degrees()); + arrowStackPane.setRotate(bearing.degrees() + 180); } -} \ No newline at end of file +} From f2370485a0b127fc5178b4510c0f38145ebb3cb1 Mon Sep 17 00:00:00 2001 From: Connor Taylor-Brown Date: Thu, 14 Sep 2017 12:48:02 +1200 Subject: [PATCH 34/59] RaceController can now set up collision listeners on each boat. #story[1195] --- .../BoatCollisionCommand.java | 9 ++++++++- .../Controllers/RaceController.java | 5 +++++ .../java/visualiser/model/VisualiserBoat.java | 20 +++++++++++++------ 3 files changed, 27 insertions(+), 7 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java index c3046d18..48d19d09 100644 --- a/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java +++ b/racevisionGame/src/main/java/visualiser/Commands/VisualiserRaceCommands/BoatCollisionCommand.java @@ -3,6 +3,8 @@ package visualiser.Commands.VisualiserRaceCommands; import javafx.scene.media.AudioClip; import mock.model.commandFactory.Command; import network.Messages.YachtEvent; +import shared.exceptions.BoatNotFoundException; +import visualiser.model.VisualiserBoat; import visualiser.model.VisualiserRaceState; /** @@ -34,6 +36,11 @@ public class BoatCollisionCommand implements Command { sound.play(); } - //System.out.println("Collision command executed!"); + try { + VisualiserBoat boat = visualiserRace.getBoat(yachtEvent.getSourceID()); + boat.setHasCollided(true); + } catch (BoatNotFoundException e) { + e.printStackTrace(); + } } } diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java index 51d9c451..ba641ad4 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceController.java @@ -311,6 +311,7 @@ public class RaceController extends Controller { } boat.legProperty().addListener((o, prev, curr) -> swapColours(curr)); + boat.hasCollidedProperty().addListener((o, prev, curr) -> showCollision(boat)); } // Fix initial bird's-eye position view3D.updatePivot(new Translate(250, 0, 210)); @@ -368,6 +369,10 @@ public class RaceController extends Controller { }); } + private void showCollision(VisualiserBoat boat) { + System.out.println(boat.getSourceID() + " has collided"); + } + private void addThirdPersonAnnotations(Subject3D subject3D) { viewSubjects.add(nextMarkArrow); diff --git a/racevisionGame/src/main/java/visualiser/model/VisualiserBoat.java b/racevisionGame/src/main/java/visualiser/model/VisualiserBoat.java index 555def15..5e66c02a 100644 --- a/racevisionGame/src/main/java/visualiser/model/VisualiserBoat.java +++ b/racevisionGame/src/main/java/visualiser/model/VisualiserBoat.java @@ -1,6 +1,8 @@ package visualiser.model; +import javafx.beans.property.BooleanProperty; import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleBooleanProperty; import javafx.beans.property.SimpleObjectProperty; import javafx.scene.paint.Color; import network.Messages.Enums.BoatStatusEnum; @@ -62,6 +64,7 @@ public class VisualiserBoat extends Boat { private ObjectProperty positionProperty; private ObjectProperty bearingProperty; + private BooleanProperty hasCollided; /** @@ -74,6 +77,7 @@ public class VisualiserBoat extends Boat { super(boat.getSourceID(), boat.getName(), boat.getCountry()); this.color = color; + this.hasCollided = new SimpleBooleanProperty(false); } @@ -253,10 +257,6 @@ public class VisualiserBoat extends Boat { this.positionProperty.set(position); } - public ObjectProperty positionProperty() { - return positionProperty; - } - @Override public Bearing getBearing() { return bearingProperty.get(); @@ -270,7 +270,15 @@ public class VisualiserBoat extends Boat { this.bearingProperty.set(bearing); } - public ObjectProperty bearingProperty() { - return bearingProperty; + public boolean hasCollided() { + return hasCollided.get(); + } + + public BooleanProperty hasCollidedProperty() { + return hasCollided; + } + + public void setHasCollided(boolean hasCollided) { + this.hasCollided.set(hasCollided); } } From 87f3265640b65b81c2e6972601efeb47e1afad02 Mon Sep 17 00:00:00 2001 From: hba56 Date: Thu, 14 Sep 2017 13:06:39 +1200 Subject: [PATCH 35/59] pushed branch #story[1195] --- .../visualiser/scenes/newRaceView.fxml | 124 ++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml diff --git a/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml b/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml new file mode 100644 index 00000000..debda5da --- /dev/null +++ b/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

X=qS^a$C+A$@`l`X!1Ix|EQ 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