From bb6d8870364daa996dcbdb1ad6da949ad28fe6ff Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Wed, 3 Apr 2019 15:33:26 +0200 Subject: [PATCH 1/2] Added class Hints, including tests --- .../src/main/java/greenify/client/Hints.java | 68 +++++++++++++++++++ .../controller/CalculatorController.java | 5 +- .../controller/DashBoardController.java | 1 + src/Client/src/test/java/HintsTest.java | 29 ++++++++ 4 files changed, 100 insertions(+), 3 deletions(-) create mode 100644 src/Client/src/main/java/greenify/client/Hints.java create mode 100644 src/Client/src/test/java/HintsTest.java diff --git a/src/Client/src/main/java/greenify/client/Hints.java b/src/Client/src/main/java/greenify/client/Hints.java new file mode 100644 index 0000000..34aa3fb --- /dev/null +++ b/src/Client/src/main/java/greenify/client/Hints.java @@ -0,0 +1,68 @@ +package greenify.client; + +import java.util.ArrayList; +import java.util.Random; + +public class Hints { + public ArrayList hints; + + public Hints() { + this.hints = new ArrayList(); + initHints(); + } + + /** + * This method adds all the Strings to the arraylist. + */ + private void initHints() { + hints.add("Buying local produce will not only decrease your carbon " + + "footprint, but also help your local economy: A win-win!"); + hints.add("Did you know that a gas oven only uses 6% of its energy " + + "to cook? And an electric oven is not much better at 12%."); + hints.add("70% of the deforestation of the Amazon is to provide land for cattle ranches."); + hints.add("Research shows that reducing meat consumption can increase" + + " your life span by 3.6 years"); + hints.add("Vegetarians have a lower risk of getting heart disease, high blood pressure, " + + "diabetes and cancer than meat eaters."); + hints.add("Did you know? The carbon footprint of a vegetarian diet is about half " + + "that of a meat-lover’s diet!"); + hints.add("Cycling is good for the environment AND for your body, " + + "so why not grab your bike instead of your car?"); + hints.add("If we could capture all of the sun’s energy shining on the Earth for just one " + + "hour, we could power the entire world for one year!"); + hints.add("27,000 trees are cut down each day so we can have toilet paper."); + hints.add("A glass bottle made in our time will take more than 4,000 years to decompose."); + hints.add("Don't forget to turn off the lights and heating in rooms" + + " you're not using at the moment!"); + hints.add("Did you know that about 4.5% of the Dutch population does not eat meat"); + hints.add("Reuse your bags when you go grocery shopping. You will save plastic bags."); + hints.add("An estimated 250 million trees can be save each year " + + "if every published newspaper is recycled."); + hints.add("About 88,000 jobs were created in 2015 through the wind power sector."); + hints.add("You can use LED lights in your home to safe energy!"); + hints.add("If you isolate your home well, it will be warmer " + + "and you'll save energy as well!"); + hints.add("Do you have leftovers? Donate them to food kitchens. This way you won't waste " + + "food and help people at the same time."); + hints.add("A lot of coffee places give you a discount if you bring your own cup. " + + "Get rid of those disposable cups!"); + hints.add("When shopping, look for products with minimal to no packaging, " + + "or at least packaging made from recycled items. "); + hints.add("If you order food, you can ask the restaurant to not include " + + "utensils and napkins, it saves plastic and paper."); + hints.add("It takes about 66 days to form a new habit, keep going!"); + hints.add("Get yourself a nice reusable water bottle! It's cheaper and better for " + + "the environment to refill than to buy a new one every time it's empty."); + } + + /** + * This method returns a random hint from the list of hints. + * @return the random hint. + */ + public String randomHint() { + Random rand = new Random(); + int index = rand.nextInt(hints.size()); + return hints.get(index); + } + +} diff --git a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java index 5098636..a44e0ef 100644 --- a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java +++ b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java @@ -9,9 +9,7 @@ import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.fxml.FXML; -import javafx.fxml.FXMLLoader; import javafx.scene.Node; -import javafx.scene.Parent; import javafx.scene.control.Button; import javafx.scene.control.CheckBox; import javafx.scene.control.Label; @@ -338,7 +336,8 @@ public class CalculatorController { @SuppressWarnings("Duplicates") public void displayExtra(ActionEvent event) throws IOException { - // Parent extra = FXMLLoader.load(getClass().getClassLoader().getResource("fxml/extraActivities.fxml")); + // Parent extra = FXMLLoader.load(getClass().getClassLoader() + // .getResource("fxml/extraActivities.fxml")); // extraPane.getChildren().setAll(extra); getStartedPane.setVisible(false); travelPane.setVisible(false); diff --git a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java index 259ed42..b43433d 100644 --- a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java +++ b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java @@ -495,4 +495,5 @@ public class DashBoardController { } } + } \ No newline at end of file diff --git a/src/Client/src/test/java/HintsTest.java b/src/Client/src/test/java/HintsTest.java new file mode 100644 index 0000000..c0e2442 --- /dev/null +++ b/src/Client/src/test/java/HintsTest.java @@ -0,0 +1,29 @@ +import static junit.framework.TestCase.assertTrue; +import static org.junit.Assert.assertFalse; + +import greenify.client.Hints; +import org.junit.Test; + +public class HintsTest { + @Test + public void initHintsTest() { + Hints test = new Hints(); + assertFalse(test.hints.isEmpty()); + } + + @Test + public void hintsContainsTest() { + Hints test = new Hints(); + assertTrue(test.hints.contains("27,000 trees are cut down " + + "each day so we can have toilet paper.")); + } + + @Test + public void randomHintTest() { + Hints test = new Hints(); + String random = test.randomHint(); + assertTrue(test.hints.contains(random)); + } +} + + From d5af8816e9681994598a182e167ede4c03e73e2f Mon Sep 17 00:00:00 2001 From: Sem van der Hoeven Date: Wed, 3 Apr 2019 19:32:40 +0200 Subject: [PATCH 2/2] ADD::added extra activities section to calculator added section to calculator, and buttons to activities and dashboard to open it seperately --- .../controller/CalculatorController.java | 14 +- .../controller/DashBoardController.java | 24 ++- .../controller/ExtraActivityController.java | 138 +++++++++++++ .../src/main/resources/fxml/dashboard.fxml | 33 ++- .../main/resources/fxml/extraActivities.fxml | 190 +++++++++++++++++- .../icons/icons8-bicycle-filled-100.png | Bin 0 -> 825 bytes .../icons/icons8-solar-panel-filled-100.png | Bin 0 -> 12163 bytes .../icons/icons8-temperature-inside-64.png | Bin 0 -> 9273 bytes .../resources/icons/icons8-vegan-food-100.png | Bin 0 -> 14391 bytes .../resources/stylesheets/calculatorStyle.css | 1 - .../stylesheets/extraActivitiesStyle.css | 19 ++ 11 files changed, 396 insertions(+), 23 deletions(-) create mode 100644 src/Client/src/main/java/greenify/client/controller/ExtraActivityController.java create mode 100644 src/Client/src/main/resources/icons/icons8-bicycle-filled-100.png create mode 100644 src/Client/src/main/resources/icons/icons8-solar-panel-filled-100.png create mode 100644 src/Client/src/main/resources/icons/icons8-temperature-inside-64.png create mode 100644 src/Client/src/main/resources/icons/icons8-vegan-food-100.png create mode 100644 src/Client/src/main/resources/stylesheets/extraActivitiesStyle.css diff --git a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java index 5098636..d2ab3d3 100644 --- a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java +++ b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java @@ -1,5 +1,6 @@ package greenify.client.controller; +import greenify.client.Application; import greenify.client.rest.UserService; import javafx.animation.Interpolator; import javafx.animation.KeyFrame; @@ -9,9 +10,7 @@ import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.fxml.FXML; -import javafx.fxml.FXMLLoader; import javafx.scene.Node; -import javafx.scene.Parent; import javafx.scene.control.Button; import javafx.scene.control.CheckBox; import javafx.scene.control.Label; @@ -151,6 +150,7 @@ public class CalculatorController { @FXML private CheckBox solarPanelsCheckbox; + /** * initializes the window, performs some actions before loading all other things. * it sets the sliders to snap to the ticks. @@ -259,6 +259,7 @@ public class CalculatorController { */ @SuppressWarnings("Duplicates") public void displayGetStarted(ActionEvent event) { + getStartedPane.setVisible(true); travelPane.setVisible(false); homePane.setVisible(false); @@ -275,7 +276,7 @@ public class CalculatorController { */ @SuppressWarnings("Duplicates") public void displayTravel(ActionEvent event) { - addSlideInAnimation(travelPane); + getStartedPane.setVisible(false); travelPane.setVisible(true); homePane.setVisible(false); @@ -292,6 +293,7 @@ public class CalculatorController { */ @SuppressWarnings("Duplicates") public void displayHome(ActionEvent event) { + getStartedPane.setVisible(false); travelPane.setVisible(false); homePane.setVisible(true); @@ -307,6 +309,7 @@ public class CalculatorController { */ @SuppressWarnings("Duplicates") public void displayFood(ActionEvent event) { + getStartedPane.setVisible(false); travelPane.setVisible(false); homePane.setVisible(false); @@ -322,6 +325,7 @@ public class CalculatorController { */ @SuppressWarnings("Duplicates") public void displayShopping(ActionEvent event) { + getStartedPane.setVisible(false); travelPane.setVisible(false); homePane.setVisible(false); @@ -338,8 +342,8 @@ public class CalculatorController { @SuppressWarnings("Duplicates") public void displayExtra(ActionEvent event) throws IOException { - // Parent extra = FXMLLoader.load(getClass().getClassLoader().getResource("fxml/extraActivities.fxml")); - // extraPane.getChildren().setAll(extra); + extraPane.getChildren().setAll((Node) Application.load(this.getClass() + .getClassLoader().getResource("fxml/extraActivities.fxml"))); getStartedPane.setVisible(false); travelPane.setVisible(false); homePane.setVisible(false); diff --git a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java index 259ed42..ea61adc 100644 --- a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java +++ b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java @@ -155,20 +155,23 @@ public class DashBoardController { private Label snacks; @FXML private CheckBox localProduce; - @SuppressWarnings("CheckStyle") @FXML private CheckBox loweringTemp; - @SuppressWarnings("CheckStyle") @FXML private CheckBox bike; - @SuppressWarnings("CheckStyle") @FXML private CheckBox solarPanels; /** * Loads the the necessary things before anything else. + * @throws InterruptedException exception if interrupted */ public void initialize() throws InterruptedException { + //set the dashboardPane to visible + dashboardPane.setVisible(true); + userPane.setVisible(false); + activitiesPane.setVisible(false); + friendsPane.setVisible(false); //sets the text of the 'welcome back' text to include the username welcomebacktext.setText("Welcome back, " + userService.currentUser.getName() + "!"); //adds the slide transition to the menu bar @@ -314,8 +317,8 @@ public class DashBoardController { electricMiles.setText(inputMap.get("input_footprint_transportation_miles3")); electricMpg.setText(inputMap.get("input_footprint_transportation_mpg3")); publicTransportation.setText(inputMap.get("input_footprint_transportation_publictrans") - + " mi/yr"); - airPlane.setText(inputMap.get("input_footprint_transportation_airtotal") + " mi/yr"); + + " km/yr"); + airPlane.setText(inputMap.get("input_footprint_transportation_airtotal") + " km/yr"); goodShopping.setText(inputMap.get("input_footprint_shopping_goods_total") + " €/mo"); serviceShopping.setText(inputMap.get("input_footprint_shopping_services_total") + " €/mo"); meat.setText(inputMap.get("input_footprint_shopping_food_meatfisheggs")); @@ -397,6 +400,17 @@ public class DashBoardController { calcStage.show(); } + public void openExtraActivities(ActionEvent event) throws IOException { + Parent extra = Application.load(this.getClass().getClassLoader() + .getResource("fxml/extraActivities.fxml")); + Scene scene = new Scene(extra); + Stage extraStage = new Stage(); + extraStage.setScene(scene); + extraStage.setTitle("Add extra activity - " + userService.currentUser.getName()); + extraStage.show(); + + } + /** * method opend addFriend scene. * @throws IOException when file is not found diff --git a/src/Client/src/main/java/greenify/client/controller/ExtraActivityController.java b/src/Client/src/main/java/greenify/client/controller/ExtraActivityController.java new file mode 100644 index 0000000..ecb9ba3 --- /dev/null +++ b/src/Client/src/main/java/greenify/client/controller/ExtraActivityController.java @@ -0,0 +1,138 @@ +package greenify.client.controller; + +import greenify.client.rest.UserService; +import javafx.beans.value.ChangeListener; +import javafx.beans.value.ObservableValue; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.scene.control.Button; +import javafx.scene.control.Label; +import javafx.scene.control.Slider; +import javafx.scene.layout.AnchorPane; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; + +@Controller +public class ExtraActivityController { + + @Autowired + UserService userService; + + @FXML + private AnchorPane veganMealPane; + @FXML + private AnchorPane bikePane; + @FXML + private AnchorPane temperaturePane; + @FXML + private AnchorPane solarPanelPane; + @FXML + private Button displayVeganMealButton; + @FXML + private Button displayBikeButton; + @FXML + private Button displayTemperatureButton; + @FXML + private Button displaySolarPanelButton; + + @FXML + private Button addVeganMealButton; + @FXML + private Button addBikeButton; + @FXML + private Button addTemperatureButton; + @FXML + private Button addSolarPanelsButton; + @FXML + private Slider bikeSlider; + @FXML + private Label bikeLabel; + @FXML + private Slider temperatureSlider; + @FXML + private Label temperatureLabel; + @FXML + private Slider solarPanelsSlider; + @FXML + private Label solarPanelsLabel; + + /** + * initializes the sliders and labels before loading. + * sets the labels to display the outputs of the designated sliders. + */ + public void initialize() { + coupleSliderToLabel(bikeSlider, bikeLabel, " km", false); + coupleSliderToLabel(temperatureSlider, temperatureLabel, " Degrees", true); + coupleSliderToLabel(solarPanelsSlider, solarPanelsLabel, "", true); + + } + + /** + * Sets the label to display the value of the designated slider. + * sets the text to be displayed after the value of the slider. + * sets whether the slider should snap to ticks + * @param slider the slider to read the value from + * @param label the label to display the value of the slider + * @param string the string to be placed after the outputted value of the slider + * @param snapToTicks whether the slider should snap to ticks or not + */ + public void coupleSliderToLabel(Slider slider, Label label, String string, + boolean snapToTicks) { + slider.setSnapToTicks(snapToTicks); + slider.valueProperty().addListener(new ChangeListener() { + @Override + public void changed(ObservableValue observable, + Number oldValue, Number newValue) { + label.setText(newValue.intValue() + string); + } + }); + } + + /** + * displays the vegetarian meal section. + * @param event the click of the designated button + */ + public void displayVeganMeal(ActionEvent event) { + // System.out.println("display vm"); + veganMealPane.setVisible(true); + bikePane.setVisible(false); + temperaturePane.setVisible(false); + solarPanelPane.setVisible(false); + } + + /** + * displays the bike section. + * @param event the click of the designated button + */ + public void displayBike(ActionEvent event) { + // System.out.println("display b"); + veganMealPane.setVisible(false); + bikePane.setVisible(true); + temperaturePane.setVisible(false); + solarPanelPane.setVisible(false); + } + + /** + * displays the temperature section. + * @param event the click of the designated button + */ + public void displayTemperature(ActionEvent event) { + // System.out.println("display t"); + veganMealPane.setVisible(false); + bikePane.setVisible(false); + temperaturePane.setVisible(true); + solarPanelPane.setVisible(false); + } + + /** + * displays the solar panels section. + * @param event the click of the designated button + */ + public void displaySolarPanel(ActionEvent event) { + // System.out.println("display sp"); + veganMealPane.setVisible(false); + bikePane.setVisible(false); + temperaturePane.setVisible(false); + solarPanelPane.setVisible(true); + } +} diff --git a/src/Client/src/main/resources/fxml/dashboard.fxml b/src/Client/src/main/resources/fxml/dashboard.fxml index 36948f8..d14738f 100644 --- a/src/Client/src/main/resources/fxml/dashboard.fxml +++ b/src/Client/src/main/resources/fxml/dashboard.fxml @@ -1,5 +1,12 @@ + + + + + + + @@ -15,7 +22,7 @@ - + @@ -272,6 +279,18 @@ + @@ -420,6 +439,18 @@ + diff --git a/src/Client/src/main/resources/fxml/extraActivities.fxml b/src/Client/src/main/resources/fxml/extraActivities.fxml index f3e46b9..d1ab289 100644 --- a/src/Client/src/main/resources/fxml/extraActivities.fxml +++ b/src/Client/src/main/resources/fxml/extraActivities.fxml @@ -1,20 +1,188 @@ + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Client/src/main/resources/icons/icons8-bicycle-filled-100.png b/src/Client/src/main/resources/icons/icons8-bicycle-filled-100.png new file mode 100644 index 0000000000000000000000000000000000000000..8fd71e4bc3522006d84f8497d736aa35a45eef1b GIT binary patch literal 825 zcmeAS@N?(olHy`uVBq!ia0vp^DIm*OWv$YSo^j1|KF;;T(V4$dUX6O z&nYUqSolY5eJiu8*Ewr#K5uf$3&}iHZ|z+sJ-d{;w+E+A54o=zye{~cV}Gy!ljj89 z4uPBZ{B~_}SwCIoVx-bMwtwI1x6Ip|%74=0sf&ZsDW=UW+Fwn2_s&_6vP|d z%k3o`vn{;Cx)^o^O#Q5vsUfMo++8K==ajj;a|7jG$R*{jx%km`jyeZh-wdYz>32@7 zt^fS^;{L9!GLN2am}Z=2?Bsk-+v@DZwBXg7Y>v;9^mmg>i*=q@)?_-*GI{f9=M6qL z6BoX>P3zysn&|aIb&Ily2o&_l<`)HoEWUmzs;8ewQTgR39@Xgeq)YwVYOg@XM-Mmjs)VX-Bhr=cM zz={`}Zy8*fC%TQvM}RLQZSnVMvB_24o6ahqxOq`n=UQ<1dxj}IPFa%IiymLt)1LBD zb~T^O#PiPLpR*lS3of~7aq-l(;O$Ybt9N%7Wjz0US~c5Eams3wiLcd++f#G}cgNhj zw4d7LV*iBFrI^78YuE;RZ3{rSoDWRq%S)@!}U z>$j37y*S}`lexL7SxYO+uex%%`i~`|6T_U`<|Vt_sd_29y{E?Wbbv;?S6oq#P5O_% zRY$o*x0buS$g10Zy~t;M(4&>wPu`Y4Ny}TS{p7czwZ6de`}`jTgbK4&qV5Z+YW%XB zx@@2Fu3d81)9&bexpw`l?bkPRmT04;Lq(OQ_&mRgV2AKu%YliU!PC{xWt~$(699<4 Ba>xJx literal 0 HcmV?d00001 diff --git a/src/Client/src/main/resources/icons/icons8-solar-panel-filled-100.png b/src/Client/src/main/resources/icons/icons8-solar-panel-filled-100.png new file mode 100644 index 0000000000000000000000000000000000000000..58fb479373f6f6a814f3446dba061563136fc1b6 GIT binary patch literal 12163 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 Q+W~--n7nAUutC880lVQ{%m4rY literal 0 HcmV?d00001 diff --git a/src/Client/src/main/resources/icons/icons8-temperature-inside-64.png b/src/Client/src/main/resources/icons/icons8-temperature-inside-64.png new file mode 100644 index 0000000000000000000000000000000000000000..d548a779fc2667a17fad088012177cdb5d1b3143 GIT binary patch literal 9273 zcmaKSRZJWV6YTT9$qw zcTcyE4$ih9?*MmOkgdPNM*zToy*AImmr^h#`t5+o3wSo+(a<9(n0+uqQpqScM&y!1 z?2_uJr;pGf`+>f3>R<1h_)*y7LP;BAxt7<&+BH+_YA`I;u~2fx&+g#$<=@!Vo#?~O z>Cr1m!574x!BgxPpAgvH?E&_0pKc1tUf1#9t%@Gk+vnj8?5KjXr#&CjkS*p%n9sv= zn?wD>-J_*w{Tr;Ot>N5f!TgO1^Or#!Nt9qHsu}E}x&o+&XLKC=`N55Pk}aapdh{Xl zZ^xg>m(RVV7q1oO&UP=Scb82piBt8M*IWXD-RJYL)=uK*cG`!7G09ge8=A8bNg8Lr z>1x=SouBwe_RJ|KZ8zf%Nsqn0jJ+O?8{J3AE3Xdor227UCTe4UuS@>1;}4YW7tl8kW_}62opRIa97WyJ=fOuLp*Rq_5Lmx zcHqw8itTD$Pvk_oNskIu1d8W95c$>LjY)DLaR||-(ju>G%fIQ&Bi_-_FH$d`g?897Gs9*rUT5>cgy8L zrY7HgUy-TM6Yfya8}#S*QepQ|=+)+mnHN|6nDv#JeyD%a7v+G?PlR9TpRhhZ9bfvV zqN3Sz6|TXpZm+)vf6QZINgHwE921@xv-an9g)Mko^t|kKaJ_!i`b*dQv=cBr>htyq zmT2;Dy=ne>AGe~{`;Nf`l?BsQn*yir7jmbsd8gyN)Yn*sHT z5qS8Q17Pcn?7+;=AP)9sIW@JpMM-K5SfA6Z8to83+r)~omp^~9$?D4*#V z%2BOnsBJ!)6KZR2+*?(E>$ycw;9khYUj(V%{3#nd#T{@}7L1w^XSJC8*t>!@TEjO! zZM`0|Id^4|Bdp7tNhGES3g&+QG}lZ@qTYWPaAvBIqMDp>a*3JXivvqOQJ#@VLZ-!C zshqA!Fdp8+lJM(Urj}Q0s@04eO#d0&z$ex4xiF-#9Tki>LS1#2>4(Etm}|(-(-fz& z3f=f&QP1bq7Ixf$yE7%((GYOSji1uu8ahxa+@=%4o?KC}tmksnn2FubN|#wMjdhwL zVe6tkev_;_`q~m{9%A)dr-F@s&Xwu&u{Kq=Rjd8;k8cEjM2TFSzeLG>-eO8R5KCry z{h;838I6FT2cr0zIFo;oS9&r`(yG@)+@e?>I=X){eJ3DERNZ16(U^B+Vu9LEd3kJT z=Y1+O#%6aBuU_kFeRZo4z*Xdj{~-ZJtv9#n@H1^h?JtI=fhl8@Y$kEJ58DdQ2zjbJ zN88kPMU!)xzqsq!rf+km4sKs6*V5Dnr2%@Ejnbjj9%{W+wXXogD^-jP&&HFW8HoYs zZpQr~d~ToQZM52~U4@bRr6W$Ka5l>zlOO7F-K7nG;{xRwRDXhHo<&#|yRVS(z8I}O zPOT6r0*yb=A;6L`?Ts7OGdF$+x`?A2Tn^~O=d3mON^DzyYh+3|GbsBAsGtP71*)vH z1CR4F`%r$4t2l{nVfFf6Gkvzsm82`@nZ9(IKB7zsI)d7I%50cSrL1Idhgf+G{SwaH zM7DpO4rN*B&x&3NUsIyQvB>)Uo>{Xj9@bBlPBBqFpD3Y>gy z`E1DoPKQN^?=2UMc@$u7Yu1&ke(&T(<7?~+7xclVtqo@%VgoHJe?3$-M{!a?ED4Vi z(|OtMjL=W023zDD`ZLyVu^F-OfbQehRM`<-cr3Jo27F==vIwI6sml6G1RsrK zO!$>$UQ@^jv-{$W(li*7HE*^9bugD77 zk})*Pm7e-*%l$~&7D2lyIy{kh^w6fC2#q=pjn+u~-8+%s&Lyl-Nb!p0UNI7jtxpZH zWB%DE2)Bee@BC5G@?FHcO28J4@+43uIL!&R>m}obbmaGVcC})_r%GlqNbceZX ziqT*AJHU+FpMsP~V<4yHF-I+Oc0-n5pZJ%s;sv^8thauOO$R>ODD`)RCyR#!NP&Av za@4vf$e=1Im@6_Mn390jW~!yi1s$3S0v!i7J&_Xi+b7c!S1}cL1YCqu#k@zLtmf*sl9>`i7GpSaaP6lU`;Y3hAs6CZs2_yue)gv$ZqCV{>#gff zW-LSyIoVD;>hAo$){^HCiOJMnUzFt3lxzgs$?fzgdvI)RZaRj&GA-oO zLY$Nw<_mNhyRAXx0fK8n@i7iDe;TzFh#z%TF22yyaU4@j;JWOrso;X_80br{fg;bn zvc_zJsLYVHX}IJU$<$~45DqxVANS>D=Ol%%M%aZ<6ZQ0~1LgfVkP&QBUyA<_!Vi39 z_TGI}N5e}gD2=u26D2gD#lPcWnGey&Sl%>*eaKj_Hi;2Oo^MIoR>;O)WSEV7ta zT8cD8IFtD$z)+1{y|I+oEbNbEN^W_eFLBbQgpYFy^HI_UsMHaOQmA-!s49>T09K$P z{cJ1Jaj72YXUs8^LEL@x1WTeep8S+0A4L?2oa-+>)aP*P22KwY{eB)Y#0BQ)(oC)B zS9uT8uNJ?_Ko%H~;E4XoALzpbYeV5Wcnvm?LnXKoM6O*^Q@bI_K^jSmfUULD67z@T zBe9sXbgAq;=WmewuEs7|HTw`^g_Pe7(j3_KJdnGmLH8KNA6t>}0;Ez+q)J0ok6-!eW|7ETnyg6GQ>*gmc4jbT4?vn zOx)3FHrUR2HN`0r3q)no0F8}GL`@AR#Xk!D-*%1TBx-(zwDXwJ`K7RDC;hv^wYH?4woR?FsJv>7h$1O*3RG&1ys3c@)yv`z0fvR@(RDa7gBk^*xVI z)}2-0F9B)0=~%d2%Gc;vIC7;~OgLve(L12XLS@gT0TEiW0%BD_T6k`w1}kS?G+$gP zl}S3mL5pRznwcqI`9_s*W6B5~6+y=DOWllZ3A3cQrJVLI z9Y`}+x{%d8#L^H5Pp&B==t71uZYx|GYx#BBi2W|)35=}Te|HZ%0NEc9NW=z zS>u@eD$D}?i+ib-&LtBKWtqFHg!&fPT=5zl8tPEmaV^^kD`iJx5V2k?5JcnH6Yve+^y~PsUVVgil+r_Tg!F7vhVi)>0y^elvC0(c#f=`OO z2Rufo%Yv-A3>>H2^R#gZS>E5kq*Ur|R} zK(8Res=DiK#lAY6EF=SnUjdI+lZ)|Evbv-YACTMXrqh@v;V!;ude7CNGbW=Yi8qD; z&cc9nI2oR#Xffzit@P@5-(_>l{<}zIpWtGz57C|xnQ6iwCo2nJLKdRyTAs5XJ+@Wg zEgNUvi(#pbCxN^bSgbFNBx4lsXfOb`q=Gs(k@G6GlUa)SkR!Sk_;dqsNLN%r|BEGJ z%CMfuWBYXRe0|`EfIN-?SJ34>w5vi-9T;G? zlY6y43@NR-Q;kj-|NdJ}3Gs}Ym=n7)My7n1Wph@j!(XP-W}*>brjYPV>%bz&oTN+6 znt&8HNuah5O>Qv_*jqEzodJA^?c&yGq!SP_8m5SY8fbg(4h~BKIjX4H8CCSv$F%s=t3)L=28& zt3gVHoTJ&PYd*yNOmx~Wx|}r4rH6dd2i*{sW?l}ZJGJJfe9&A>jYT(4!9&y6l0!?M z`zp~^LQJuS()D%XZhRWh#~3Mf2>8^GNq<_6N9=v5WBMT5D*Ljaw`w){$n?0O8{SyT z`{xfUK*?X<6q(-NyO&mY2Rmj>ySvaUMC$`8^J9XnXS>l7Zm1|25dENrTIi2~j~@|- zh6^Q?Xc?miz*%K2Z@-cx^GVB#%XM8}DmZXDx{DM1tI!5osy$FiK;vqEVhhPtp;`8t zpd$gf$@d1^gb+mc-aN(7C44a<@lrdQST<9~i_FBNiiG- zG*Avk9hbw_VvB3{ods*rtTirif5K2di%gH>bH|&XTk5ivBTHm)*N^nANf$9w*nNP8 zQ{7=hN1X}T3)Ly4_cB_Khr3V_pJ~3OHS3rm#=e08bH9<6DerLab!0%eg56w%6H`S| zs90P9{>|V=Hfa$B6%7z!4T821&{Qvw7~P)g3D`dBz>U|3zS>=lo(sgor(Z;5!3-MO z=nIItHagQ%%^kG1k4jK$`5t^~kCpO^LtkI6l zqasr}#_{67*eprSWY&>+grR-}8no@4g*D@$N+jrCi~+p-m*HCl*o01a(#DkU$EO^d z_n~C5+z*gh!n=RFvUhbfXHrmrzWX@xBc0>Tx8Lf>OW&?j8Vpfd%bUL3QPz&mw{*ja zmo|UKy6FEnLfaP(56~S)$`D{|A-6O+h)^u1nK>LrYE3vsVS<*?#nL=} zw!Hhc$uSCbN2G%M3@zZto0}ou?{O+Zv8gDZFb{PpfSq8N@NEZ3==HMiWWvPul773* z`7~PdKYbNVq5#T7sgR}_TvJ7F6!-AQE?V6li>aAqiIG@?w#ppiC6OjO4I&WZuBVj4G{9yR(w3_|*_ z0LFI)Y6#Fy}&=DaBM zT!x2I%!EZ|bLrMMq62bia`RI<6s{yrHSg6qUwMsApGN%MY(##8Az!i>U7xXnM8V>a z*+Ru2@}E9SOYXRR(P>w68mI)3Kz}%HjQSI4bp(|F|4l;%Rfp+hj*;57XpJW`huY@G z(PtMcWt|nLA&M2I_-u=QE{&>k*c8o<)4#nu8Wn@Wxmj4}9IhJa74m0F5ln_Cu2sQ! zDg-oEQ0VYqYG=NBT|9*UfaLd1#ANX8=kZ0|p59d7$QNwfVoP1jZ)Y^&=}z#Hr$v|Aq_ls@?>SG!V=e#EjL5;5mIYW2tdd-g05 zk-sdNNBOUMd+dvxyq{mZO?13j9|4gD(w)x`D_gQ-SFJAq%4=bW_rN3$yNn--4|g$f zb+*l@&gELX-hgw4+p4oOJV>JkjDN{O#Z-N>R}dgmaZsBU!FN}?D6j1ska}L`5K)q4 zkmX+17fDrVahQb-Em#LuLOO!g%c&Gg`ZDeDen+?Rp4Q$? zS)Ho($x$PqnlG-Ym`NSW5Bj&^pv~>|DgS7tttWnW$NL;zw$|J&=y#%FTSm`(d8Hk1 z%bndeP)@PCh!>9vGA})+;32)*?fr8{0>$I<%);6IvT~0TW8$~}X~-DwzpWbR$;4v= zPtL!3{Ty}91K%FU>eFK0LGdLjf%v8n^^ndh?q0#|SdU533%bIvz>CxT#)*-Ke-=qJ z3UqpWxNeCy1xG>@=(VnR*D1<)BrI#P5bFu$-P$Ht4D zs&E{eo)91*AnfI{UtZYrJ%!a%8zITa@vK^I>Z4J=w%+dj~A(UkuDN7LFb=y+3b%Y%O;#G=dW{jVwPP($nz_c4avyy{cU_ia;_ zXEBBh$BPU529*{*LcC?CSg28U=u%A<;rm+q@0gJS3A00m!T>w`M#w5n$?)BYMSpx| z2e2|=dtvl6v?7kR!F7;D+7Pcp(|^;Q{F}+FfQ>{nmFbcWe}E{$R4yT<3da&+Cl-7q zT1hP7t99V~yK5G$Gky`Mc4^r;BvF*!-y}2+EE1~^= zpVivGr<+JCW357SIpM>@Mw$|j;b%f#{j7Th2YTEYcv$DWNLF;Q`fGK#2#WY85#!69 zEIn$C5u^>yc9FEcf2MuEiQFOJXDd=bm7GNQs!aM(>9ekmD3c7Up@v*L_bokxrZ1iQ%$auz7RvvW5b9O6>BB`>j5KO$>`OObOjK40q z`eO?rw5t5?r+PC>3)*kj`2GP%?#N$i$>mr7ez#M_mSMmfAu_!iD_=;rB$eyd$WfZ& zfh<+;go|J}9!Re(u~|v_Oci1*@L)$~o&)pgsISZ);J?E9X(jB?kF?_Ivwy+Z_dTH$ zJ6yz;+rZ&EkYD519ay}$8hD8fPtpH7m(20~Al7E`ZSM0{AluI^uMm&B*c75FjllPl(7W_9 zyFTO~bvr~sp8FFofhiTr`x)x*_36Q1^G-R3+*+CQy(c zH-s7S>mcQaj(T0C2*9_otj>TQ%U`Ws*DjJT+9Vi3^9}rHKN_NNcv17Vo&kH@5kFgA z>%gN-##)<_OKi6pES=p!yp=YH>UNTqRW`7?I!6ODrVglW^{3RCa82faD$i&D{PT3x zJG9>lIMtgL2m$@o#i&+ah)(;|(A^9OZ2c@pKk6Od8%fElTO0r(-mNuPQyp`1YDow_ zDA!%3`h$oihL##32oL3&tc`{1^;rUp_xi*&cEOdI2K*{TF^qUw=iCVKsE-Wb)<9VY zJsOUTQyf5!s4C>JWHtH2uhUB+qQ~>a42&Upva$4Exzz3zkttkICN{ODp&GR~WD8N< z*i2fe9AO8Ti!_cA;mbI*S6o_?hK&~A@VY7~1L^{hc$BA<;=JAC`;Yys5IzG6 zhoh`gsEDGa36xiJ-qynr!1ln?8T z3!+Mr{f4+0?Qql!;0LEa{g=r8*mFLPRYkcw)HD4}i}OJn3?HOxYuM6Ib^DfA!xtmt z!*B#A8>I~)keRPqDc-}oK*&@$Vn5E17(g{MVumO@1MYO}^7hRWWBhOT(065IytB2m zedRfxC6>&W1q!@|Lm+cytu$itfiRr6_J)FOG+|@`rPZp;g*mi@SG@SmnYCKn$jHu_ zF{`EbMZQ?bkn?qnVsD)t?3r@{cEF*RNf_)rj*QpfUnX_`@t&h&K4po{61J9_1U}f{?CLMb!ZN+UUOx*!fdy@hKzhqKa5&*x?bC zly)Te+opTHDBJwN(qMhl8Sb7{4;=kfQF%0YiSRi+E9I%0>6VEDe50#=tZpQI^dMgB z7G`jH@jOK_qR&xRwnvIHVL|Ht2{rqxEN;+cG(j(Szn*cI9hic5-XHl z)QqfXKJJls-gcrFwHNU}tm6Uo^@B^klGzlajG{JhpR2?w4{Jd`;%Zda;*K02D>vD; znG;f9z_q&t_X`&4T;7NI6zoX!F1VfZ+;}DbeQ5JPx9AB=fZ-gy{QpDRn^$8oKkl90 zVK3AhU(A$89Q34>QR4*#7@uN5XTPIHzp+%}WuihcALHHGbZ6PgB*W=v(q{rl^7wb7 zgit|88o>7LkA6fXH`;v0nc^JzQMm~UVzoOQwVUdPY~+x?%^`bPy%tk0t6R&aOQhY3 z_1mViM7=m7Zl~w>p>C(HwkZK{?E<&K?LS@EL4~4cTe=lp9W<;Fe>J!ZEiVEJEHADp z|5hgj1xTff`0sLjv0F9PCRJdwCr4Y88{j{yy`SNeAs7h74mx#*;RIEPp1m3^ZKo8u+3?KRGBqxmdxp_1YID6B4sGAg&b= zJM=J9($hpV)cX_$Yt-Ot3*6uNPkn)6r7SNCc>A9fbyuYSmqB+|F!TZda0dSegb}yO z|4B7ay%kmEP!E7en4BoOfH)%n08w30R!YZz{ZGDOS`;^yEM2^^``e&L;^c~sW)9#Z z_bf;Ezpo5Jfz1qD*(;df<~n!RzhW~NGli-PL;(DVR0JiPs68A;-bnWtf*eaBX)@lv zRm?}SY@tJ7VpiYxP6iXH8srr!C7Z~(raYukFxoRo%(p{)w3A>F%T;sG4$Fzhp$N-gEdJ#b$w{ z)2R=tE~%^ITGpax6tG2g!nl+P2@Hu@Ks}8dJW&kXchmpj(D^6z_J3U`cOZ zmIcZ{34Z|s)WCz6AebY`7+ZgaE%~!tSi))J6rD8&$Cs?r#zj*(EfTgT1X{*$K(to2 z2UOEAQ3enRK*R&$g@eKYhr*`(y`?>+8uQ?BjhIOUFO!2Go}*!iUH6jJoMfh(bAhe< zZMFPDhthV<+iMfO2iXQ`K{%kG(=BF@G@#bq2gPp>Nn7d8`#+c$l(dq38djR9DN5>Wl|RF~xioj0XB& zbu>gY2p*&we%Y7OMCO48NnyrQ%jq;X#W|37*+-E_14rWpDoMh`ey!}@* zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3^wmK?dVod07LZwY}JSPsT>v;!?)pLt{z*<_EB zn(wlTS(T9yfV;Vw4|wkU@Bek(|NPJY_)uzaDc4qdDG&dpo_ZL3)1LRg_p5)B{cZo1 z^!b_p#9tU5O{mlpS zO5}U}Z17$F^R;u|-~O_A-{1YRcF*{{9{;!$?kS&ND8H=H=XIa|eC=$7e!e6ByLe1esPN_oKX21!V1w|Yq5qNmTgMXAAdt-d$x;>{aEZ;v zFWx@4+vhFc_~h;R&EUD1=N-TOaewyW|IMH83*9Tz_5Nw!YsGy986dZzozvg^78~O4 zXHB!Mul;d9+0FCQ#zuB9+cGyEa6I$9#LWJOZAIJX$nWJRx#x8aU-#z%ED@ibxfvhX zfv5PGeeq8Xp?c3cHuh(5=OLyr*#Vz(*xp_CCdR_%w4l%CJ=NRqh8*6PffhC*#}X@B zg9EWyDP`=ZriKlT9CLCx=aOq~x#v-0NhOz3Y7s__8f&V#mRf78y^a=JYPpqGTWh_I z9(n}AaxcBQ-g@t2@S%fC58gfajWK4Jai*DPnRT|==UAA}N-M9j>T0X6vBQoV_upk# zx7+S}9DgvSlTJS6)YDEs<6>(!-gNUVx88R99pAh5+0{Spn*U|z{(jf|XV{v*i9k1E}3_57fp5{{u+Bxmn(}O@NuxmbRbGFxxv4iROkgxyV zyB|CExBKRD`cL~7{%Yr(w(kGO&N*$}XXk$3w?EmnJuIR`+aP(N*7S)NVB;4~8=(!w zr1$ITk>5T3&IC~1wrjfEmpf7)k^Ad6#yXQO*!J`@3fRKa&fv$n?&?QA{raNil)X;E z$V{rS?W(~&0lj5ZmADe)}O*>vv|GEx=$|L{+(g#$!Cmx$>^eM1a#Jfo6#+T?D+&1 z4J+qn41asoPq?UlJi@H?9^Bya7`(op>Bp|u5$2M4tV|#=32V_73-r7%DAG#J$T-8b33Pa7PyU*+G^|&i;?`PdyJ9AUo!vqmtWmK{lf2G zGp2r5ygSEq-@DGGx&7q6G5pQLl{spjA+J=QwZ`H3YbRu50kP-UpW5PS7))Y`%DTI= z4`qjE&h0ASaDi5$4C&5zyMHE+7TJ@84^OsaO(2dSvf*`c*SQM*v#u<$uE1^%qR1Zi zta(e{T;|}XYq7I==X(yjS>xmab#BaT=3BYWT2O>mm!G8`kJFF+9M>ksuZPMB`~fNQ z!diXrZKmGyJ}X_WoZ%R=pBAGG?Z!IJUq7*HphPgKI>f$cM4Su&dQ0LS(*XaYaIsuHEho{6U!YYvGTyL!)Slhet z3o>P3hONUvHuwuv)|-ZFG0h#YZaC0+HZHJOkUk4$6&9NoK(@e3Z1Qs-J{0#N9(C-i z0s?16TVmHY&r%PVRrj7++H;8xz`O?}fmxQPX1~i#9phg-0LYro8hH6$SF18+ODuK; znDD$qSiz#%v<%GL)_Hy6`>h_9X6(p2Q*SjV45F5@uo1YjpCPUB6c`(EX+K<+4H^fNfEQ-pi8X%cvlDK<&dS#jpz55gOgoiTJ{ScbY=*zRea%5` zoD)DcGd_a55{h0>=c5waTkCcMBoeH*2H2|ENLyG_-KB|i`8P>LmLf@jldm+MWA9$h=Ewo zoo+TFGzj1M;l*-RCM*YJ!0G|(s$7U&4|6=SXnrR@JJ??Z_jq<9Xr8gSqk*|U;>c#Vbb$?5f8I6dy0Vgh>1>C_r_R^kiesXRsa?XY! ztea0HtboN{_FACuyChJM$jpA1lysAY3*lb@_ST=s^BfV3wJ@xBEBg+3+tO9W#0t53yJj2JRH1Jn-Ql>mG0g`hT-3}`MJJ9${VofZb3@q~q*5Om}SYQ)LE z3+oFw;g#heA9*)`0oVx6iI6u}*8->xGa<$n{N$qD;71SFWK+O3$PpNaWuxj~Tm+8} zzZ2IE&@Jvo#CH>pB2N()9$Yp)Ip_65o|JbgMIsThh;{Kad-A`TLet3z@K!-*HC#X4425Ve=P8EXi98Z>t$oE-e`&}y_RD3`Dz zpHRbr7{LDm;V)sQW*}GvH}w$4SwpvQYK$KwRgmB!K494}m0I&)BX1;30;)%04=Oo; zgF=w)&=*!GU@f|6bpi?aD%`G!i-XAgZwL^swvA7_;iTPQ0%C7iL^QOGdw@0AAOgQO zLbmZVq68ns#(cfI601-RIb%j;45A9?5ZNBqP6&e=o*WcO@j_fNK(xR`kP@!5Pz-$h z;%1PB-Axe?0@>kU2%xKGXCj->X17D(~G-t z6=>}ylF3`S%_Wp-JDbU{lb^5d*BAcHSM~w&K8Y(Yfn{5UgD#aedA`a{$2|=MV9vyl zI&ibCP4nXT9R|@Xghmi;ssnR9)|>3mPhuaJm6+Trk&=4gowZ)8lh+54Br(#f32rL zs*TOmBoe=2dyuLrehDdCY)8Rr`nl}(lJ4gQ&@ydc?NXTnr$+D~WWh%5LUT{7%;b3 zSQOOpI9MyYhJo=YEj?&K#XT09B!lx>Cd9){fgJzR=MPZWykvrAO{2H zNr45#B{2pD)7`uoI}Xr#BA@g1>(S7Hr<_JRdCgh z+-47a0jj(M^eguq0K7P47J6W07wiiTEN%kk`G{EFxKzdZH@=`pj=OOOsAuu{>v)ba z2$D+q!d?Jv9%m7pSoMSEd#u(=TI9rm?&_jdI_8I1>gUx2>c-iUCvTmm;`Q&E8*MA z4~W-dNeC_w7qmgTh*uOV{#aNdu&`y80bO*4j9bA*2GsjaY;4 zV!xmn#2DXAgrV$&UrL&Xu>qVQA&Z3UxMc$p2@M3U@l52E@+QCsI}vln^OIsmlI@{W z(Q6ywl0BGsVSM=R!sNmE*&#Dg!YrH@l+GJpoAKMe2_gU*5fA5KIS5CX0zr)Dks9W% zilQa{*s%z#YWja=+fHeMUu>JTs2Mmu?z4@dx9@n-qo-k8vp7%IKf`SQaiNZ*PEtW+7Q~Yny8d?Z0*N;IK<%%BgpTM&T*`j;+IIJ0n zLFeLJyrbte*ar*GzUwlM6G`S;->RnIB%%CiS78|8|CNMA{oa8Vp*r9eyx%EZHj z`vH%pY47F5q$l6z(H7)}wPJ->4p&#=p8D`XF9uJ*i0lR-ldz1pXYK*Tg##QT5U8YM zz5+dfL?BR$+#8+^NP)`RZ(Ct(xk!uvtdkl?O>u83vhDmeWglCpo1lXZWdlof?%uObQ9&?yvZlK40o8D=k8V zZO=4WkB^aC1_X%k#Z$xzzm+H65AF!cPba9B&U`K`k8L@$jacI zf4pz_Jkdp{&vNap5Tx8QR^4l|*g-t;fKLZWiAy)KW?t&Q@LNlZ!}hO3D9~mo9tKbi zYd%^4q{%AW7uK4FQV@ZgOUen3GYgL~;3lg_!Z2=Z=9H}C1P%92tX#3x)-4w9c&fU|GJ^8*Yb{5BMw8_G{7bgNDT34pL}7}Imv zwgGl11r48tE8h+IR@*!35G05mtS(w>l?f!H5VBXfwKsorSV+{Y za&-cl#7b^xHo8L$(7~Qi-rT5K5%4oE3DGq6&_34xuZ-Ve{Yrf&Hn?QTF$ARQW3Yqb z*=@ofZZHj?3kcmLDuEZG5vY&lddqutC*^qI$%HN#^$x~eRE7cn3T9~a9-wG0{O16@ zI1)5KN{j$|h)Fl9l3=>OW!*cEu4`*G(lN)lD~n^Pl7(>w3^QVw=p;zW#T?KGS_?nd z+;~3WIPP8#7Qym1#Ny=|s&FYud%u&kT|_WR zVnI95v_YkbH%VI$=ztAHC25t)su%=e9xa10OCF+x*g|EukaWe1v++liB_jNi*78x= zN;yoeDJxrKw>*4<`+nAxT@X4dfo)3)kVX7ZOUg@b0~Dvl|Mcnahv&G729Qm-A(7S- zbyz~|B8tBfY_n(uYZb3d4tgdg4jG6-+vQoga>YKJl%bKIbx=)Nt=2gEU<9FdDp?C*%H-u z-lzvwbsh=O0$H$hctufp?7H_d#A2w(g{6p3vef~cR5n!ww++K6tl}h`H_>LHl*|fT z$8oXQnZ1KtA@^|&Re2|FxA+|;xPw-PU&9o6i{zy(4CYNx(#GgE_sCqGu$P?}6gL>9 z!Zt8dg)vt;4Nya3qOny?fgyf0N&JF^k0uEvD@r;OCA=?vA;WiYZfGtFY2_zZ+GF7I!plZSH zhmTwNdR7=?yT>*gDGw2yMXCKy0edNsUvCBMZg<1)78c%F&IVf`QlMLJWAj=0qEZ-Y z1J_onAL8{CHi4V-11#l}5j-g1`l#Zpq8cju%%ut``X3+?2E6iV*RQHoXNj`?1=%n`@2U`fqh|p|`?{MgYK@*8iH!c~l>;h|6QAXVr5VJZIuioy8sw%Sf zQQZ~zSTOyND!&u6(s;1Tg`W_FSZr1q4&IXzMhLci8;^!ohV;P>N`BTvhx3ZI8*5&E z5nl105PwoTu7WPGJ6I>&`VOL|I2FzU5vzDgP!B3ck>jJ2aDwOfDz-U-uj zQq|o=3!bX-q45q6jAXq|+*hQ)zGqeR!z@uIMRmA4rI8?f>*6lXJXEP}xX=n{AO6DS zSB8&ng9T((A`T^Nv8p)(e}su1XdJ|%;EOm*Ixv5~a6eEBTCoXM+#Gg}t>cLeUV^Gz zg3q~>mL#SioI!w-K{#Ap1!Yv4Dt`EX@J9Qnb%GVbQ=!@HSPcYZbP6E`6j0f8D?^o)h7V^( zhiq6{PxZbg_~{FN$50>2r5=~5 z|2yF4j`uTS6xHcUsYowF z;THS=siCM__R7lDKDblk7J?G$N-h(VVWX@)ydv+_4@Ln&Neb>fWi5bzNa`O^(iK$* zMR5xC1)ouGj#98^1!$r=+qxEcsfq!9WRgwk-=qmgo!^(8wK3MZo0!xAJyEKSaDA%RAN;{4Jda@P=`pLaaB*t$YS7AWi)iU z(vM2<^dL!FRiUR#0~Y7vF`oRzm@3p^o%N;$f)6O#9>FS1wO{`&20@^;iKpkWp}??Zk6$ z=?0t+qO0P+@=}*qRf*1G!>v0jc&OFtO0pJkVuut>%1c-52aeXz;kY?Q2oAAQMNM}7 zn-AGn_k<1Dq2vc32K|9F!%X*9CUzks2T{I5VoR7^MRlcNe1Bq-9LFM*h=D2vcWYLA zz(w4PV1}h$*b(82W2+~sr~v{Q)gW2rnUaHQv}tc@;heWTj_`vM5e-zcOB?UrYb$kv zVLVtUV5a^ZYxf#N{|u1^o(Q~4{qT~)xBb?DlI`*l?0|bijNmD!G$jN#->HKL{Tx7Z z^{T^YU>2Tbc-DgbFSk4v)71U5YXE%jQr8N2u&r$r;)OwUt^y%>AUDFasZ1u$X1zRZ zStq39{liLeY#vL2;{@w(+WURF#A|wF_r3L9 zsbM`M5LM`&YOVl1{rDsmRSrk1SON?*8yNYG0rg$f0RVsSekz?2l%!U2g)mTisyKj) zl1%Cr?by>*iovT>2&;>YU+}6!MN`Hs9)Mo6x)3YN96<^t7O$2J|P$OnfUJM6VtphU!SHTN$P}aG5c!dQ6!2w>pJikcz;SFFc~Z)wU8Pfw3O7SMUUE zW4#}wI%-wQ``sH@k;v=u4pNNX&+1T8Bp=y`iQLg1h((*I8ilR{28@ffDc$)tX|Sk# zo-L|_GQyzFiC?Q)xVNO76|0JJD{m7`9r*TRAC7OR=hKqXnwaP z_1+z`ucu4Vpdp9lkRTsfbY~tV7+L3h<=~R*@j|G0G#ne_>*|YLe7Ddbx}T)-a5_@B z+zmIpRJ+V7qX7R(e5JJVch%BCI(AZ#l4tKPDr=&JJ8zpI9S3Wn~NiXqp@R&uDU0hkYg6Ndo76OxCR zMr12fB^ac&%=@X?y4_skIf#li;c-jdRm30&J`Nvs4B?1sELGMY16BFs2g--WU?~xrHWo6v!>$W@=~$D4f~wcRH4Q# zlMILkWv`(1ds|X(DJ8s=z{{${VAVYHc46Vq+~QA#a02s2D?CvNEbQv2EeB0IrJ|NS ztW@i^9(5~(5?3wl1L=C(%hd~!tnTfv#CoWr=}FJ4;w4(JaM7WXn%c~FAcnTc%6n9H zeg^>jG4|4c2j#C#2f|&@INjPA)Rz`P`SR&wxCGA|R{P10f>n;Kir(KA$afY&U9%H< zWdi{oe8)-cd;2MlE*)r$LptA;3!MbZ3H^9)1Mop0q(?_e2uN15mSoRk7weexolgwK zJ~5zNn|AFP4ug4;we&v^GEU0R&vDa&P>CU7j_R;Wy9x8vo1`%eqGx~zWJ2^%j{k{{ zpaxA$MGYBTy=ZPkJuYIOJsPo7YaK?6Y2=bLufv1p`8qi$4ry-PyQAMV&TZQ|OL--i zXjYTsfvD^eF~FKU>tns%@D`Ogt4fWqtSh30QdQZ> z-n)ZZ6WMaq0Gw5$!sWENP(M(rwxLpv(s1)liA)f-b(KpR@CsykrQz~-a$c2A)!V;& zw%o5xTmRIvr2>~l?52%|q$GmR4o6KoJZKeP9Z%NiKu65LSXrRi!LUT+T3wBr2vD{@ z>rfOB5P9aT#-8wP`XV? zMC*synoV7*CE%3m9!dF?c?7~bNuBnhx=`sV~1|N+v_te_8B0P zy!sv?(*W5CNH^4_+Ue4nPM!AisGn{ZjGmoij~j?Sl#kW8m~Ph#=AqTl>!|Rcr zyv(ScolzWXUAIbrb+JdVtU!pslYG)hfu``|%R*G-SHb7X03u*);oHWLf#SCa#UsJe zd{W1@!r2pzr(s7H>wLA^|5L2F^eWMk^LKM8h#PPN_jZ@6;a*)O)qn)xo$AW4HJU^n z>=4gAZ##+r{5GpM!&WtV2Csu3;g0H`Nm4{poi0TL0iNR}ik_}JUD(7{JD0`OnF1GzlRhIXrgWdAg&s8NSWGuZ^ zoGT1#+|dBxqZK0Bf(P@N4mV|m;{G5xYtb|XR+?65fgq8es~_o|$=3?iKl^a^)2ILC zZ9gdRx17JK;PJ8$kxzF{rpL2Lz}^>yTIt+J1i##fSMC)Kzy{Z1w=&7|xno+=Tm6&e8S{#n6Dl-iaP*QDmi=TO6Kz&V* zN5G|FCfRb+Tva(W_^YONq2fs?A5~(p>^36~P(lWo`i^4fkcq6!7SVw_&8;2fF1Wc_ zbT3O?|JEYbL)o86T!(i+U{Y4+W)N@FOeryIcCcMA?wfhX&1YC~J!srpr3X}uTJw9F z3(rPn`>f=I{?T<9MbwZ0v9^I;9^$8VI;lzxXn4z+BsF)<3n)i0aH5bjRic#^`G)|rxK2O3=c7kND=fLY>1NP z;S_H>^i?NNE?8-up~1=ujbR1SQuhaXO{8F&)In>0bu}+7r;P@_KI-$rF{uI?&E) z3S@<>2Mg31$1B5dz2kwS?ptpc3KXSMy4p+eq_yHu^F|fxeqcD>W}jM63{>?95;X|L zM11G#J1NjL8AhxrpHTtsA&Ee@cUS;mMGAbn<>bH`@Ws}E-C@lTglue?PYPBtMokde zmr4ssC4ZBtumz+pZ$bdvP*{1iEHVu)uFfDIRZW6tCpF4xZeI|SP&W4h!^}TF=IKZ_^~2aDTVYlclo!ru83*PT|`%v7Vf9DYuYfxQ7>@Qq>`qavyFJF=%&`L zW%?R2!}V1wz=r)3j@s1O4Opg(L5c_Fko6e7YP>|A*R88w^#E&odYdn+`U#5-&zjuW z>bHTma5Du>#J=JYUC9^}M9>5>Y!a(=O@=Obv`juBV&ZIOR`9cPB=1p`vs-PmG~#YM z%Hs*Z)SeM!l`S;KySIn|^zbWLfMlBnW6i$e z8GGdglf;vA8bf`&Rh`gk*yf3WUSZeEzuvU-iW2x-$M6&70sZLGx!y8p-`d zQxSe|yir>li)x`lE!y*w-T&UqudRGHQjeSMan;TAl8E7zc6%rNRDr%K8$j4pKe%r- zO!FO|6ByQ2g+lEGI)EV?eRyw-UE{vK!l2!lmhbD!v@q%mYKSFy~_(J<}hay*M3H@;Q-0_p6qZXeUxM z>vz)^042S3&HK%g-loS7OR_ckB1+;(9}@oINuReV1DoF58~jMLe~b1{gc6Ra#?1@N zB&RW_!Yvm?PD^TZ4RS3NAargN7^s41uwGJro9LS&=~sp={g@@N2v*$NKv*qtG1TQ+MPS6yRDlob8`L>GrKlZO zq)PJ`cBV{LN!eOfP|m?wxRF0EsM}jpR?kY&DgjkT!#kC0ec;H2AHdYh~)xKU++$KT1!_*flk)o;Vqodf{u+ zkko7$k7|}|cfx3S0kWah(f$4q>OYpe|M{!?FK+;U)Gid>vhq8J8^VICYB2X5#BKRO z&%A@UDq&SSenm|XA**L?YclfD2`ent0~=TW-s}Cz`o2*|0A&tpBuwhdZU-Qon=Jx+ zrj9oOe|J!RN)1cw6Pp9mWJ5mtq?WDLoVSg7)CLVw!3Z=96y9x8hTE74i=3=cmJioi zacWAfj}D{Lz{7mbO-^S+%oLVj(plBdpYzz-X{Sf-r|^z=_bNK{oL=EmIYPyvBF^aY@W96BXPO2At6 zR5~ZDX*`o(6S_5J(wC)yc2zlAP;}?pYVtx6Ay=vI?!KVN&K=q9g(B`z-ByAko7PA# zr+lQhkJq^^LDN|?^udE5Es$9?MmsTKsZ;(T5M)#s@bCct&ztZ6wQ1!~zqE7XXJJlk61 zqqKHbzpo9ZiE67BCvq0-&UC!Q7okTzK})g`dbh;DiOI(3)!h8HE^L-#0Y->+o$7aZ zHDJz%&3gOAEdQyV@Tx)Qp4{XI9>H8v&{R;@eR``kwZ8g^UPm6FgS@6(w+7QfQw{H^ zIYH7BNeGed4qn0U!WczT|gPL~is23fipfT!M?Wh+hW^8WR zu^T%Eb+oGqZ(+2J@DF9N!3I1oX`+mPlGW_dbo9+^QgCRk<+q^AUk8+NR>8Lw9V!rzr#d{x>)bEpP+;@Gw$AZtA|V}_ zWmDZbEgb;J?{G7<6Dn_gbmmV1`+XxC=*Y3H)Tn02qsn&HwNzVH%{)35N{zbe(}iem z>xi5>DlFc;mno*ADXyWejoOCtn@N+{IhfK6DzAWFF00fY^^dAUWRKDjap^?BD^-iB z`4l~}OUXR1&UGC$s_K$XN)@?$u-!2o;*hrx=;Xvtgt`oI?iJKOgyJtcJgh6Q>likT z%4_yQBOc=}o!X}Hbr#WSK)q|oJ=y#&A!=~}3_}^WS9)WfPt>U4)*KP5?A6Dz5N=>? zSA+7I{T=i8lY={c%*q~h!V+j^(sZ0UVc(k0A-d?qPpj!X4x6{4PP3v;BYYCVJkF#+ zApIS$lEONwfyGQ!r?Il2Gc6so#f2dk>SS|jbwv2Al}=UHIY0!e{P*LFoDFzkGudjp zn#Mmm^8yD8BJoEjT49zT$LAp{_0>i9S^X4RZbTAscel3sw~99 zezBG2OAu;9?O?L{ub^U2eu7uN1IBTxcL-`V7aso(nZA`i4S-GMnVXIZw&n)QF?$WI zE9oUgkH*3}Ls73WvHwmh(YJTzRX2vb^$58BGJfbj^43t&7bxsX0~Mos-%uoZG@piP zWtUWHe%|AdR8kiW%B3m!s3gSFa1C2@HNRE72EnE^Gzlw-TRKKigIm|_tAoB4(JE)U$0V64zW+S3??CZ>}8iI0cQzhW85^$7u-%6swFT{+k0<0q^R18sI)_vb3tP>rhM`!>7{|j!i~!ALl(B!n1`yJUd^og5lJ9 zjPeoX)LWL0Owoy;$>_{G6!k@Cpie_hFh*xQoWbktGviauY4bJy``CE-rx^6zLh-2u zr2q%X?-7Z1lA$^+gUw4E9X14kaK*-H%F)=wv=T(oLR4dScj7RYnd@#F+aWuvX1{ZGb<+&|3~DMw?VhvZ8t zaOs4)xvT>p*oHg&0unVjZZT)ESh@8Z*@9qcW(NladoUAenm#$`Y5WyvWKr zIA!+b>_`!83T4F=W>CAPy8A6zcJ-xOCet$dQwIW<1RvX)ZC%|60`ELJOJnEHi2D$q zzIL{5uoL9pb2UDP>%QF))|`$ryhB_eyuA^`LZ_0q|6C#7ub#hXJ%2XH>Sbtep&Dvs zM_A}A(zj5LO$1^Mi0p8Rq0%GNN5yhNq)1`c98(a12<&78x-?N0bp~6q6AtmK`rUb` zn{dB(9tzOyC{WdVV=d;e@upj}RSM9AKhal7Y8A?Lh+foCT97Ug zAYc@rM5$^X_@Dd(v?;N;CoRMalI7uB)rNXRoti z%M&C8?~l=!_kfO8xp~#TrJtt4P(ahFty{D4^000SaNLh0L01m?d01m?e$8V@)00007 zbV*G`2jc_-3lt+et%GC$00XZ{L_t(|+U=cNZtO4!hKrR=c>jx=WwcKtMbkF%1%7@A zeml~c1oN4z?Nq)t$Lsa_KL5M-E?+g4N7IB+!x>180+N1g`}@D#R>hIBkTm095Mnkt z$ZUZ}BoLp!%LqoSlzOKu&6GJ47_nOES4y&~UowC(3+n$VeH2FTU1k-Wp->e|<$o&l zPGKVeW`I5x$Ox1xMXo4s1WZIIkUB&ghPE}Ov=GmFLc>9>Y$W$NI@|Kvg3vdiZYOqiL#`k z>`+Y8-tz=mvL26p8YqyN9m5Dv9#-(;azaRiLY;q1OQht#|Jn`rDOBtc3GOQBhD^;S{uSz zc4EnnT%s{qw3VR1%*;z`w^UXiI(o951fv2-7iwqdR6m?ana;0ZC5$Ef@c?bKL#dLMZP8)XZ7l z@ubxmA(d{K6%cVW4XQQPt>e=W>hFgzTL{~o?I+eRWg#TN{8t^a;_qtc#g4KN(ji)8 zYv|~(X}zR|aUD{YfVYlY3#l~NKC4m->IFro?wAHrt_$O;rYxjf7tU)m1|hP;nDH{h zK-fP(964?*TS!5%pL?}VNL2!jv>V-rY0v75i?8KWm2RM?%funYJk7%D(Uvy8}K zkn@B8$)iYMJm%zfr7Qa9G_2-9adwvh4vWl`w`o~E3Fsjo^~86T;rVV_AXdsj4x~$U x@!b*Nc*V7F!89WTDj=SK7*p?%)pO>~zz+~2ggWgaP0#=U002ovPDHLkV1k!|tN;K2 literal 0 HcmV?d00001 diff --git a/src/Client/src/main/resources/stylesheets/calculatorStyle.css b/src/Client/src/main/resources/stylesheets/calculatorStyle.css index c3c3665..1877abb 100644 --- a/src/Client/src/main/resources/stylesheets/calculatorStyle.css +++ b/src/Client/src/main/resources/stylesheets/calculatorStyle.css @@ -29,7 +29,6 @@ .slider { -show-value-on-interaction: true; - -fx-text-fill: red; } .km-yearBox { diff --git a/src/Client/src/main/resources/stylesheets/extraActivitiesStyle.css b/src/Client/src/main/resources/stylesheets/extraActivitiesStyle.css new file mode 100644 index 0000000..e30c77a --- /dev/null +++ b/src/Client/src/main/resources/stylesheets/extraActivitiesStyle.css @@ -0,0 +1,19 @@ +.navButton { + -fx-background-color: #6a7a6d; +} + +.slider .track { + -fx-background-color: #d3d3d3; +} + +.slider .thumb { + -fx-background-color: transparent; + -fx-background-image: url('../icons/leaficon.png'); + -fx-padding: 12; +} + +.textHolder { + -fx-background-color: #89a888; + -fx-background-radius: 5px; + -fx-border-radius: 5px; +} \ No newline at end of file